:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--shell-topbar-height:58px;--shell-sidebar-width:238px;--shell-main-max-width:none}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:color-mix(in srgb, var(--color-panel-background) 96%, var(--color-text-primary) 4%);color:var(--color-text-primary);font-family:var(--font-body);overflow:hidden}a{color:inherit;text-decoration:none}.clinic-shell{background:color-mix(in srgb, var(--color-panel-background) 96%, var(--color-text-primary) 4%);grid-template-rows:var(--shell-topbar-height) minmax(0, 1fr);height:100vh;max-width:var(--shell-main-max-width);width:100%;min-height:0;display:grid;overflow:hidden}.clinic-body{grid-template-columns:var(--shell-sidebar-width) 1fr;min-height:0;display:grid;overflow:hidden}.clinic-topbar{background:var(--color-action-primary);border-bottom:1px solid var(--color-action-primary-hover);color:var(--color-text-inverse);align-items:center;gap:var(--space-4);grid-template-columns:var(--shell-sidebar-width) 1fr auto;padding:0 var(--space-4);z-index:50;display:grid;position:sticky;top:0}.topbar-brand{align-items:center;gap:var(--space-2);min-width:0;display:flex}.topbar-logo-mark{background:color-mix(in srgb, var(--color-text-inverse) 14%, transparent 86%);border:1px solid color-mix(in srgb, var(--color-text-inverse) 22%, transparent 78%);border-radius:var(--radius-md);color:var(--color-text-inverse);font-family:var(--font-display);font-size:.625rem;font-weight:var(--font-weight-bold);letter-spacing:.08em;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.topbar-brand-text{gap:2px;min-width:0;display:grid}.topbar-product-name{color:var(--color-text-inverse);font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);letter-spacing:0;text-transform:none;line-height:1}.topbar-clinic-name{color:color-mix(in srgb, var(--color-text-inverse) 86%, transparent 14%);font-family:var(--font-body);font-size:.6875rem;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;line-height:1.15;overflow:hidden}.topbar-search{background:color-mix(in srgb, var(--color-text-inverse) 12%, transparent 88%);border:1px solid color-mix(in srgb, var(--color-text-inverse) 18%, transparent 82%);border-radius:var(--radius-md);color:color-mix(in srgb, var(--color-text-inverse) 82%, transparent 18%);align-items:center;gap:var(--space-2);max-width:420px;height:34px;padding:0 var(--space-3);transition:border-color var(--motion-fast) ease, background var(--motion-fast) ease;justify-self:start;width:100%;display:none}.topbar-search:focus-within{background:color-mix(in srgb, var(--color-text-inverse) 20%, transparent 80%);border-color:color-mix(in srgb, var(--color-text-inverse) 46%, transparent 54%);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-text-inverse) 18%, transparent 82%)}.topbar-search-icon{color:color-mix(in srgb, var(--color-text-inverse) 76%, transparent 24%);flex-shrink:0;align-items:center;display:flex}.topbar-search-input{color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--font-size-sm);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0}.topbar-search-input::placeholder{color:color-mix(in srgb, var(--color-text-inverse) 70%, transparent 30%);opacity:1}.topbar-search-kbd{background:color-mix(in srgb, var(--color-text-inverse) 14%, transparent 86%);border:1px solid color-mix(in srgb, var(--color-text-inverse) 24%, transparent 76%);border-radius:var(--radius-sm);color:var(--color-text-inverse);font-family:var(--font-mono);letter-spacing:.04em;padding:2px 6px;font-size:.6875rem}.topbar-right{align-items:center;gap:var(--space-2);justify-self:end;display:flex}.topbar-signin-link{color:var(--color-text-inverse);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.topbar-signin-link:hover{color:color-mix(in srgb, var(--color-text-inverse) 78%, transparent 22%)}.user-menu{position:relative}.user-menu-trigger{border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-1);transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease;background:0 0;border:1px solid #0000;display:flex}.user-menu-trigger:hover{background:color-mix(in srgb, var(--color-text-inverse) 12%, transparent 88%);border-color:color-mix(in srgb, var(--color-text-inverse) 20%, transparent 80%)}.user-menu-avatar{background:color-mix(in srgb, var(--color-text-inverse) 92%, transparent 8%);color:var(--color-action-primary);font-size:.75rem;font-weight:var(--font-weight-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.user-menu-identity{text-align:left;gap:1px;max-width:160px;display:grid}.user-menu-name{color:var(--color-text-inverse);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;line-height:1.1;overflow:hidden}.user-menu-role{color:color-mix(in srgb, var(--color-text-inverse) 72%, transparent 28%);letter-spacing:.06em;text-transform:uppercase;font-size:.6875rem;line-height:1}.user-menu-dropdown{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--color-text-primary);min-width:220px;right:0;top:calc(100% + var(--space-2));z-index:200;position:absolute;overflow:hidden}.user-menu-header{padding:var(--space-3) var(--space-4);gap:2px;display:grid}.user-menu-header-name{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.user-menu-header-role{color:var(--color-text-secondary);font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase}.user-menu-divider{background:var(--color-border-subtle);border:none;height:1px;margin:0}.user-menu-item{color:var(--color-text-primary);cursor:pointer;font-family:var(--font-body);font-size:var(--font-size-sm);align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);text-align:left;transition:background var(--motion-fast) ease;background:0 0;border:none;width:100%;display:flex}.user-menu-item:hover{background:color-mix(in srgb, var(--color-action-primary) 8%, transparent 92%)}.user-menu-item--danger{color:var(--color-danger)}.user-menu-item--danger:hover{background:color-mix(in srgb, var(--color-danger) 8%, transparent 92%)}.clinic-sidebar{background:var(--color-panel-background);border-right:1px solid color-mix(in srgb, var(--color-border-subtle) 86%, var(--color-text-primary) 14%);color:var(--color-text-primary);grid-template-rows:1fr auto;display:grid;overflow:hidden}.sidebar-nav{gap:var(--space-5);padding:var(--space-3) var(--space-4) var(--space-5);flex-direction:column;display:flex;overflow-y:auto}.sidebar-section{gap:var(--space-1);display:grid}.sidebar-section-label{color:var(--color-text-secondary);font-family:var(--font-body);font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:.12em;padding:0 var(--space-2);text-transform:uppercase}.sidebar-section-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sidebar-nav-link{border-radius:var(--radius-md);color:var(--color-text-primary);align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease;background:0 0;border:1px solid #0000;display:flex}.sidebar-nav-link:hover{background:color-mix(in srgb, var(--color-action-primary) 7%, var(--color-panel-background) 93%);border-color:color-mix(in srgb, var(--color-action-primary) 14%, transparent 86%)}.sidebar-nav-link.is-active{background:color-mix(in srgb, var(--color-action-primary) 14%, var(--color-panel-background) 86%);border-color:color-mix(in srgb, var(--color-action-primary) 24%, var(--color-panel-background) 76%);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.sidebar-nav-link.is-active .sidebar-nav-icon{color:var(--color-action-primary)}.sidebar-nav-icon{color:var(--color-text-secondary);background:0 0;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.sidebar-nav-icon svg{width:16px;height:16px}.sidebar-nav-label{font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-user-card{background:var(--color-panel-background);border-top:1px solid var(--color-border-subtle);align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:0;margin:0;display:flex}.sidebar-user-avatar{background:var(--color-panel-muted);color:var(--color-action-primary);font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.sidebar-user-text{gap:2px;min-width:0;display:grid}.sidebar-user-name{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-user-role{color:var(--color-text-secondary);letter-spacing:.06em;text-transform:uppercase;font-size:.6875rem}.clinic-main{min-width:0;padding:var(--space-6) var(--space-6) var(--space-8);align-content:start;gap:0;width:100%;display:grid;overflow-y:auto}.clinic-breadcrumbs{color:color-mix(in srgb, var(--color-text-primary) 52%, transparent 48%);font-size:var(--font-size-sm);align-items:center;gap:var(--space-2);justify-self:center;width:min(100%,1180px);display:none}.clinic-breadcrumbs a{color:var(--color-text-secondary);transition:color var(--motion-fast) ease}.clinic-breadcrumbs a:hover{color:var(--color-action-primary)}.clinic-breadcrumbs span[aria-current=page]{color:color-mix(in srgb, var(--color-text-primary) 78%, transparent 22%);font-weight:var(--font-weight-semibold)}.clinic-surface{justify-self:stretch;width:100%;display:grid}.dashboard-surface{gap:var(--space-4);width:100%;max-width:1120px;margin:0 auto;display:grid}.dashboard-page-header{align-items:center;gap:var(--space-4);flex-wrap:wrap;justify-content:space-between;margin-bottom:0;display:flex}.dashboard-page-header h1{color:var(--color-text-primary);font-family:var(--font-display);font-size:clamp(1.6rem,2.2vw,1.95rem);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}.dashboard-page-header p{color:var(--color-text-secondary);font-size:var(--font-size-xs);margin:var(--space-1) 0 0}.dashboard-page-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.dashboard-kpis{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));display:grid}.dashboard-panels{gap:var(--space-5);display:grid}@media (min-width:1080px){.dashboard-panels{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-widget-shell{min-width:0}.dashboard-metric-card,.dashboard-panel-card{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);box-shadow:0 6px 16px color-mix(in srgb, var(--color-text-primary) 4%, transparent 96%)}.dashboard-metric-card{gap:var(--space-1);min-height:118px;padding:var(--space-4);display:grid;position:relative}.dashboard-metric-card:before{content:none}.dashboard-metric-card.is-emphasis{border-color:color-mix(in srgb, var(--color-action-primary) 18%, var(--color-border-subtle) 82%)}.dashboard-metric-card.is-emphasis:after{content:none}.dashboard-metric-eyebrow{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase}.dashboard-metric-value{color:var(--color-text-primary);font-family:var(--font-display);font-size:clamp(1.45rem,1.9vw,1.85rem);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.dashboard-metric-footer{color:var(--color-text-secondary);font-size:var(--font-size-xs);align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.dashboard-metric-delta,.dashboard-status-chip{border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;align-items:center;line-height:1;display:inline-flex}.dashboard-metric-delta{padding:.35rem .7rem}.dashboard-metric-delta--positive{background:color-mix(in srgb, var(--color-success) 14%, var(--color-panel-background) 86%);color:var(--color-success)}.dashboard-metric-delta--negative{background:color-mix(in srgb, var(--color-danger) 12%, var(--color-panel-background) 88%);color:var(--color-danger)}.dashboard-metric-delta--neutral{background:var(--badge-neutral-background);color:var(--badge-neutral-foreground)}.dashboard-panel-card{grid-template-rows:auto 1fr;min-height:408px;display:grid;overflow:hidden}.dashboard-panel-header{border-bottom:1px solid color-mix(in srgb, var(--color-border-subtle) 78%, transparent 22%);align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);justify-content:space-between;display:flex}.dashboard-panel-header h3{color:var(--color-text-primary);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.dashboard-panel-header p{color:var(--color-text-secondary);font-size:var(--font-size-xs);margin:var(--space-1) 0 0}.dashboard-panel-body{padding:var(--space-3) var(--space-4) var(--space-4)}.dashboard-appointment-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.dashboard-appointment-item{background:color-mix(in srgb, var(--color-panel-muted) 58%, transparent 42%);border:1px solid color-mix(in srgb, var(--color-border-subtle) 58%, transparent 42%);border-radius:var(--radius-sm);align-items:center;gap:var(--space-4);padding:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.dashboard-appointment-time{color:var(--color-action-primary);font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.dashboard-appointment-main{gap:2px;min-width:0;display:grid}.dashboard-appointment-main strong,.dashboard-appointment-main span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-appointment-main strong{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.dashboard-appointment-main span{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.dashboard-encounters-table{border-collapse:separate;border-spacing:0 var(--space-2);font-family:var(--font-body);font-size:var(--font-size-sm);width:100%}.dashboard-encounters-table thead tr{color:var(--color-text-secondary);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase}.dashboard-encounters-table tbody tr{background:color-mix(in srgb, var(--color-panel-muted) 58%, transparent 42%)}.dashboard-encounters-table tbody td{border-bottom:1px solid color-mix(in srgb, var(--color-border-subtle) 48%, transparent 52%);border-top:1px solid color-mix(in srgb, var(--color-border-subtle) 48%, transparent 52%)}.dashboard-encounters-table tbody td:first-child{border-left:1px solid color-mix(in srgb, var(--color-border-subtle) 48%, transparent 52%);border-radius:var(--radius-sm) 0 0 var(--radius-sm);padding-left:var(--space-4)!important}.dashboard-encounters-table tbody td:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-right:1px solid color-mix(in srgb, var(--color-border-subtle) 48%, transparent 52%);padding-right:var(--space-4)!important}.dashboard-status-chip{padding:.45rem .7rem}.dashboard-status-chip--accent{background:var(--badge-accent-background);color:var(--badge-accent-foreground)}.dashboard-status-chip--danger{background:var(--badge-danger-background);color:var(--badge-danger-foreground)}.dashboard-status-chip--neutral{background:var(--badge-neutral-background);color:var(--badge-neutral-foreground)}.dashboard-status-chip--success{background:color-mix(in srgb, var(--color-success) 14%, var(--color-panel-background) 86%);color:var(--color-success)}.dashboard-status-chip--warning{background:color-mix(in srgb, var(--color-warning) 16%, var(--color-panel-background) 84%);color:color-mix(in srgb, var(--color-warning) 82%, var(--color-text-primary) 18%)}.dashboard-empty-state{color:var(--color-text-secondary);gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;display:grid}.dashboard-empty-state strong{color:var(--color-text-primary);font-family:var(--font-display);font-size:var(--font-size-lg)}.dashboard-empty-state span{font-size:var(--font-size-sm)}.sidebar-overline,.header-overline{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.14em;text-transform:uppercase}.support-copy{color:var(--color-text-secondary);margin:0}.hero-copy{color:var(--color-text-primary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin:0}.module-grid-2{gap:var(--space-5);display:grid}@media (min-width:960px){.module-grid-2{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr)}}.button-row{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.error-shell,.loading-shell{min-height:100vh;padding:var(--space-8) var(--space-4);place-items:center;display:grid}.clinic-auth-shell{min-height:100vh;padding:var(--space-6) var(--space-4);place-items:center;display:grid}.clinic-auth-main{gap:var(--space-5);width:min(100%,32rem);display:grid}.clinic-auth-brand,.clinic-auth-copy,.clinic-auth-form,.clinic-auth-footer,.clinic-form-field{gap:var(--space-3);display:grid}.clinic-auth-card{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);gap:var(--space-5);padding:var(--space-6);display:grid}.clinic-auth-card h1,.clinic-auth-brand h1{font-family:var(--font-display);margin:0}.loading-card{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6)}@media (max-width:900px){:root{--shell-topbar-height:auto}body{overflow:auto}.clinic-shell{min-height:100vh}.clinic-body{grid-template-columns:1fr}.clinic-topbar{gap:var(--space-3);min-height:72px;padding:var(--space-4);grid-template-columns:auto 1fr auto}.clinic-topbar .topbar-search,.clinic-sidebar{display:none}.clinic-main{padding:var(--space-4)}.clinic-breadcrumbs,.clinic-surface{width:100%}.dashboard-appointment-item{grid-template-columns:1fr;align-items:start}.dashboard-panel-header,.dashboard-panel-body,.dashboard-metric-card{padding:var(--space-4)}}@media (max-width:560px){.topbar-brand-text,.user-menu-identity{display:none}.dashboard-kpis{grid-template-columns:1fr}}.feedback-list-view,.feedback-detail-view{gap:var(--space-6);display:grid}.feedback-list-section{gap:var(--space-4);display:grid}.feedback-list-empty{padding:var(--space-6);border:1px dashed var(--color-border-subtle);border-radius:var(--radius-xl);background:var(--color-panel-background);color:var(--color-text-secondary);text-align:center}.feedback-pill{font-size:var(--font-size-xs);border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-weight:600;line-height:1.4;display:inline-flex}.feedback-pill--sky{background:color-mix(in srgb, var(--color-action-primary) 12%, white 88%);color:color-mix(in srgb, var(--color-action-primary) 80%, var(--color-text-primary) 20%);border-color:color-mix(in srgb, var(--color-action-primary) 30%, white 70%)}.feedback-pill--teal{background:color-mix(in srgb, var(--color-success) 12%, white 88%);color:color-mix(in srgb, var(--color-success) 75%, var(--color-text-primary) 25%);border-color:color-mix(in srgb, var(--color-success) 30%, white 70%)}.feedback-pill--warn{background:color-mix(in srgb, var(--color-warning) 15%, white 85%);color:color-mix(in srgb, var(--color-warning) 70%, var(--color-text-primary) 30%);border-color:color-mix(in srgb, var(--color-warning) 32%, white 68%)}.feedback-pill--danger{background:color-mix(in srgb, var(--color-danger) 12%, white 88%);color:color-mix(in srgb, var(--color-danger) 75%, var(--color-text-primary) 25%);border-color:color-mix(in srgb, var(--color-danger) 30%, white 70%)}.feedback-pill--muted{background:var(--color-panel-muted,color-mix(in srgb, var(--color-text-primary) 5%, white 95%));color:var(--color-text-secondary);border-color:var(--color-border-subtle)}.feedback-avatar{color:#fff;letter-spacing:.02em;font-weight:700;font-family:var(--font-display);border:2px solid var(--color-panel-background);box-shadow:var(--shadow-sm);-webkit-user-select:none;user-select:none;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.feedback-avatar--sm{width:28px;height:28px;font-size:11px}.feedback-avatar--md{width:36px;height:36px;font-size:13px}.feedback-avatar--lg{width:44px;height:44px;font-size:15px}.feedback-avatar--admin{background:linear-gradient(135deg, var(--color-text-primary), color-mix(in srgb, var(--color-text-primary) 70%, #000 30%))}.feedback-avatar--doc{background:linear-gradient(135deg, var(--color-success), color-mix(in srgb, var(--color-success) 70%, var(--color-text-primary) 30%))}.feedback-avatar--rec{background:linear-gradient(135deg, var(--color-action-primary), color-mix(in srgb, var(--color-action-primary) 70%, var(--color-text-primary) 30%))}.feedback-avatar--patient{background:linear-gradient(135deg, color-mix(in srgb, var(--color-text-primary) 40%, white 60%), var(--color-text-secondary))}.feedback-avatar--system{background:linear-gradient(135deg, var(--color-text-tertiary,#8a94a6), var(--color-text-secondary))}.feedback-avatar--provider{background:linear-gradient(135deg,#7c3aed,#5b21b6)}.feedback-avatar--overflow{background:var(--color-panel-muted,color-mix(in srgb, var(--color-text-primary) 8%, white 92%));color:var(--color-text-secondary);border:1px solid var(--color-border-subtle);box-shadow:none;font-size:11px;font-weight:600}.feedback-avatar-stack{align-items:center;display:inline-flex}.feedback-avatar-stack .feedback-avatar{margin-right:-8px}.feedback-avatar-stack .feedback-avatar:last-child{margin-right:0}.feedback-notice{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);border:1px solid #0000;display:flex}.feedback-notice--info{background:color-mix(in srgb, var(--color-action-primary) 8%, white 92%);border-color:color-mix(in srgb, var(--color-action-primary) 30%, white 70%);color:var(--color-text-primary)}.feedback-notice--warning{background:color-mix(in srgb, var(--color-warning) 10%, white 90%);border-color:color-mix(in srgb, var(--color-warning) 32%, white 68%);color:var(--color-text-primary)}.feedback-notice--danger{background:color-mix(in srgb, var(--color-danger) 10%, white 90%);border-color:color-mix(in srgb, var(--color-danger) 32%, white 68%);color:var(--color-text-primary)}.feedback-notice--success{background:color-mix(in srgb, var(--color-success) 10%, white 90%);border-color:color-mix(in srgb, var(--color-success) 32%, white 68%);color:var(--color-text-primary)}.feedback-filters{gap:var(--space-3);padding:var(--space-4);background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);grid-template-columns:1fr repeat(3,minmax(140px,180px));display:grid}.feedback-filter{font-size:var(--font-size-xs);color:var(--color-text-secondary);gap:4px;display:grid}.feedback-filter__label{text-transform:uppercase;letter-spacing:.06em;font-weight:600}.feedback-filter input,.feedback-filter select{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-page-background);width:100%;color:var(--color-text-primary);font:inherit;padding:8px 10px}.feedback-filter input:focus,.feedback-filter select:focus{border-color:var(--color-action-primary);outline:none;box-shadow:0 0 0 3px #2fa8d826}.feedback-tabs{border-bottom:1px solid var(--color-border-subtle);gap:2px;display:flex}.feedback-tab{appearance:none;font:inherit;font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:10px 16px;display:inline-flex}.feedback-tab:hover{color:var(--color-text-primary)}.feedback-tab--active{color:var(--color-action-primary);border-bottom-color:var(--color-action-primary)}.feedback-tab__count{background:color-mix(in srgb, var(--color-action-primary) 15%, white 85%);min-width:20px;height:18px;color:var(--color-action-primary);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.feedback-ticket-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.feedback-ticket-card{gap:var(--space-3);padding:var(--space-4);background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);grid-template-columns:56px 1fr;transition:box-shadow .15s,transform .15s;display:grid}.feedback-ticket-card:hover{box-shadow:var(--shadow)}.feedback-ticket-card--unread{border-left:3px solid var(--color-action-primary)}.feedback-ticket-card--closed{opacity:.72}.feedback-ticket-card__vote{justify-content:center;align-items:flex-start;display:flex}.feedback-ticket-card__body{appearance:none;text-align:left;cursor:pointer;color:inherit;font:inherit;background:0 0;border:none;gap:8px;padding:0;display:grid}.feedback-ticket-card__body:focus-visible{border-radius:var(--radius-md);outline:none;box-shadow:0 0 0 3px #2fa8d826}.feedback-ticket-card__tags{font-size:var(--font-size-xs);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.feedback-ticket-card__ref{color:var(--color-text-tertiary,var(--color-text-secondary));font-family:var(--font-mono,var(--font-body));margin-left:auto;font-size:12px}.feedback-ticket-card__title{font-family:var(--font-display);font-size:var(--font-size-md);color:var(--color-text-primary);margin:0}.feedback-ticket-card__preview{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.feedback-ticket-card__footer{font-size:var(--font-size-xs);color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:14px;display:flex}.feedback-ticket-card__meta{align-items:center;gap:6px;display:inline-flex}.feedback-ticket-card__meta--muted{color:var(--color-text-tertiary,var(--color-text-secondary));margin-left:auto}.feedback-vote{color:var(--color-text-secondary);flex-direction:column;align-items:center;gap:2px;display:flex}.feedback-vote__btn{appearance:none;border-radius:var(--radius-md);width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.feedback-vote__btn:hover{background:color-mix(in srgb, var(--color-action-primary) 8%, transparent 92%)}.feedback-vote__btn--active{color:var(--color-action-primary);background:color-mix(in srgb, var(--color-action-primary) 12%, transparent 88%)}.feedback-vote__score{font-weight:700;font-size:var(--font-size-sm);color:var(--color-text-primary)}.feedback-detail-view__toolbar{display:flex}.feedback-detail-grid{gap:var(--space-5);grid-template-columns:1fr 320px;align-items:start;display:grid}.feedback-detail-main{gap:var(--space-4);min-width:0;display:grid}.feedback-detail-aside{top:calc(var(--shell-topbar-height) + var(--space-4));gap:var(--space-3);flex-direction:column;display:flex;position:sticky}.feedback-detail-header{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm);gap:var(--space-2);display:grid}.feedback-detail-header__tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.feedback-detail-header__ref{color:var(--color-text-secondary);font-family:var(--font-mono,var(--font-body));margin-left:auto;font-size:12px}.feedback-detail-header__title{font-family:var(--font-display);font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0}.feedback-detail-header__meta{font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:8px;display:inline-flex}.feedback-timeline{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin:0;padding:8px 0;list-style:none;position:relative}.feedback-timeline__rail{background:var(--color-border-subtle);border-radius:2px;width:2px;position:absolute;top:22px;bottom:22px;left:40px}.feedback-timeline__item{padding:var(--space-4) var(--space-5) var(--space-4) 72px;border-bottom:1px solid var(--color-border-subtle);position:relative}.feedback-timeline__item:last-child{border-bottom:none}.feedback-timeline__dot{border:3px solid var(--color-panel-background);width:18px;height:18px;box-shadow:0 0 0 1px var(--color-border-subtle);border-radius:999px;position:absolute;top:22px;left:32px}.feedback-timeline__dot--open{background:var(--color-success);box-shadow:0 0 0 1px var(--color-success)}.feedback-timeline__dot--comment{background:var(--color-action-primary);box-shadow:0 0 0 1px var(--color-action-primary)}.feedback-timeline__dot--status{background:var(--color-warning);box-shadow:0 0 0 1px var(--color-warning)}.feedback-timeline__dot--resolve{background:var(--color-success);box-shadow:0 0 0 1px var(--color-success)}.feedback-timeline__dot--close{background:var(--color-text-tertiary,var(--color-text-secondary))}.feedback-timeline__dot--system{background:var(--color-panel-background);box-shadow:0 0 0 1px var(--color-border-strong,var(--color-border-subtle))}.feedback-timeline__dot--provider{background:#7c3aed;box-shadow:0 0 0 1px #7c3aed}.feedback-timeline__comment--provider{background:#7c3aed0f;border-left:2px solid #7c3aed;border-radius:6px;padding-left:12px}.feedback-timeline__reply--provider{border-left:2px solid #7c3aed99;padding-left:8px}.feedback-timeline__badge{letter-spacing:.04em;text-transform:uppercase;border-radius:4px;align-items:center;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:600;line-height:1.2;display:inline-flex}.feedback-timeline__badge--provider{color:color-mix(in srgb, #7c3aed 80%, var(--color-text-primary) 20%);background:#ede3fc;border:1px solid #d1baf9}.feedback-timeline__head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.feedback-timeline__head-text{font-size:var(--font-size-sm);color:var(--color-text-primary);flex-direction:column;display:flex}.feedback-timeline__meta{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:500}.feedback-timeline__body{color:var(--color-text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);white-space:pre-wrap}.feedback-timeline__status,.feedback-timeline__system{font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:8px;display:inline-flex}.feedback-timeline__status-text em{color:var(--color-text-primary);font-style:normal;font-weight:600}.feedback-timeline__replies{border-left:2px solid var(--color-border-subtle);flex-direction:column;gap:14px;margin:14px 0 0;padding:0 0 0 14px;list-style:none;display:flex}.feedback-timeline__reply{gap:4px;display:grid}.feedback-timeline__reply-head{font-size:var(--font-size-sm);align-items:center;gap:8px;display:flex}.feedback-timeline__reply-body{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:var(--line-height-relaxed);padding-left:36px}.feedback-timeline__expand{appearance:none;color:var(--color-action-primary);font-weight:600;font-size:var(--font-size-xs);cursor:pointer;text-align:left;background:0 0;border:none;padding:4px 0 0 36px}.feedback-composer{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-sm);gap:var(--space-3);display:grid}.feedback-composer__textarea{resize:vertical;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);width:100%;min-height:96px;font:inherit;color:var(--color-text-primary);background:var(--color-page-background);padding:10px 12px}.feedback-composer__textarea:focus{border-color:var(--color-action-primary);outline:none;box-shadow:0 0 0 3px #2fa8d826}.feedback-composer__bar{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.feedback-composer__hint{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.feedback-admin-card{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-sm);gap:var(--space-3);display:grid}.feedback-admin-card__title{font-family:var(--font-display);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin:0}.feedback-admin-card__actions{flex-direction:column;gap:8px;display:flex}.feedback-admin-card__empty{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.feedback-admin-action{appearance:none;border-radius:var(--radius-md);border:1px solid var(--color-border-subtle);background:var(--color-page-background);color:var(--color-text-primary);font:inherit;cursor:pointer;text-align:left;padding:10px 14px;font-weight:600}.feedback-admin-action:hover:not(:disabled){border-color:var(--color-action-primary);color:var(--color-action-primary)}.feedback-admin-action:disabled{opacity:.55;cursor:not-allowed}.feedback-admin-action--primary{background:var(--color-action-primary);border-color:var(--color-action-primary);color:var(--button-primary-foreground,#fff)}.feedback-admin-action--primary:hover:not(:disabled){color:var(--button-primary-foreground,#fff);filter:brightness(1.05)}.feedback-admin-action--muted{color:var(--color-text-secondary)}.feedback-admin-segment{grid-template-columns:1fr 1fr;gap:6px;display:grid}.feedback-admin-segment__btn{appearance:none;border-radius:var(--radius-md);border:1px solid var(--color-border-subtle);background:var(--color-page-background);color:var(--color-text-primary);font:inherit;font-weight:600;font-size:var(--font-size-sm);cursor:pointer;padding:8px 10px}.feedback-admin-segment__btn:hover:not(:disabled){border-color:var(--color-action-primary)}.feedback-admin-segment__btn--active{background:color-mix(in srgb, var(--color-action-primary) 12%, white 88%);border-color:var(--color-action-primary);color:var(--color-action-primary)}.feedback-admin-segment__btn--muted{opacity:.55;cursor:not-allowed}.feedback-admin-segment__btn--proposed-outgoing,.feedback-admin-segment__btn--proposed-outgoing:disabled{background:color-mix(in srgb, var(--color-warning) 14%, white 86%);border-color:color-mix(in srgb, var(--color-warning) 65%, transparent);color:color-mix(in srgb, var(--color-warning) 85%, black 15%);opacity:1;cursor:help;border-style:dashed}.feedback-admin-segment__btn--proposed-incoming,.feedback-admin-segment__btn--proposed-incoming:disabled{background:color-mix(in srgb, var(--color-action-primary) 10%, white 90%);border-color:color-mix(in srgb, var(--color-action-primary) 55%, transparent);color:var(--color-action-primary);opacity:1;cursor:help;border-style:dashed}.feedback-admin-segment__kind{font-weight:500;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.feedback-admin-card__hint{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0 0 8px}.feedback-pending-proposal{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--color-action-primary) 40%, transparent);background:color-mix(in srgb, var(--color-action-primary) 8%, white 92%);color:var(--color-text-primary);gap:8px;padding:12px 14px;display:grid}.feedback-pending-proposal__header{font-size:var(--font-size-sm);flex-direction:column;gap:2px;display:flex}.feedback-pending-proposal__header em{font-style:normal;font-weight:600}.feedback-pending-proposal__note{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.feedback-pending-proposal__actions{flex-wrap:wrap;gap:8px;display:flex}.feedback-pending-proposal__error{font-size:var(--font-size-xs);color:var(--color-status-danger,#b42318);margin:0}.feedback-admin-kv{gap:0;margin:0;display:grid}.feedback-admin-kv__row{border-top:1px dashed var(--color-border-subtle);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.feedback-admin-kv__row:first-child{border-top:none}.feedback-admin-kv dt{color:var(--color-text-secondary);margin:0;font-weight:500}.feedback-admin-kv dd{color:var(--color-text-primary);text-align:right;margin:0}.feedback-admin-participants{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.feedback-admin-participant{font-size:var(--font-size-sm);align-items:center;gap:10px;display:flex}.feedback-admin-participant__role{font-size:var(--font-size-xs);color:var(--color-text-secondary);display:block}.feedback-modal-overlay{padding:var(--space-6);z-index:50;background:#173f6352;place-items:center;display:grid;position:fixed;inset:0}.feedback-modal{background:var(--color-panel-background);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:560px;padding:var(--space-6);gap:var(--space-4);display:grid}.feedback-modal__header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.feedback-modal__header h2{font-family:var(--font-display);font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0}.feedback-modal__close{appearance:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;width:32px;height:32px;font-size:24px;line-height:1}.feedback-modal__close:hover{background:color-mix(in srgb, var(--color-text-primary) 6%, transparent 94%)}@media (max-width:1080px){.feedback-detail-grid{grid-template-columns:1fr}.feedback-detail-aside{position:static}.feedback-filters{grid-template-columns:1fr 1fr}}@media (max-width:720px){.feedback-filters{grid-template-columns:1fr}.feedback-ticket-card{grid-template-columns:48px 1fr}}
