@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Sans:wght@400;500;600&display=swap";:root{font-family:IBM Plex Sans,sans-serif;line-height:1.5;font-weight:400;color:#0b1220;background-color:#f3f5f9;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--accent: #0ea5a4;--accent-strong: #0b4d57;--accent-warm: #f97316;--accent-cool: #2563eb;--surface: #ffffff;--surface-soft: rgba(255, 255, 255, .72);--surface-elevated: rgba(255, 255, 255, .9);--border: rgba(15, 23, 42, .1);--text: #0b1220;--muted: #606a7a;--shadow: 0 18px 36px rgba(15, 23, 42, .1);--shadow-strong: 0 24px 60px rgba(15, 23, 42, .16)}*{box-sizing:border-box}html,body{min-height:100%}@supports (-webkit-touch-callout: none){html,body{height:-webkit-fill-available}}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 12%,rgba(14,165,164,.2),transparent 48%),radial-gradient(circle at 88% 8%,rgba(37,99,235,.16),transparent 46%),radial-gradient(circle at 88% 86%,rgba(249,115,22,.16),transparent 46%),#f3f5f9}body.new-session-recording-lock{overflow:hidden;overscroll-behavior-y:none;height:100svh}body.new-session-recording-lock #root{height:100%}#root{max-width:1240px;margin:0 auto;padding:0 1.5rem}h1,h2,h3{font-family:Space Grotesk,sans-serif;color:var(--text)}p{margin:0}input:autofill,input:autofill:hover,input:autofill:focus,textarea:autofill,textarea:autofill:hover,textarea:autofill:focus,select:autofill,select:autofill:hover,select:autofill:focus,input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{-webkit-text-fill-color:var(--text)!important;caret-color:var(--text)!important;box-shadow:0 0 0 1000px #fff inset!important;-webkit-box-shadow:0 0 0 1000px #ffffff inset!important;transition:background-color 99999s ease-out 0s!important}.app-shell{display:flex;flex-direction:column;gap:1rem;min-height:100dvh}.app-shell:has(.session-page.minimal.recording-layout){gap:.55rem}.top-bar{position:sticky;top:0;z-index:100;width:100vw;margin-left:calc(-50vw + 50%);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.6rem 1.25rem;border-radius:0;background:#ffffffeb;border-bottom:1px solid var(--border);box-shadow:0 14px 28px #0f172a14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:inline-flex;align-items:center;gap:.8rem;font-weight:700;letter-spacing:.01em;color:var(--text);text-decoration:none}.brand:visited,.brand:hover,.brand:active{color:var(--text);text-decoration:none}.brand-mark{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--accent),#38bdf8);box-shadow:0 12px 26px #0ea5a459;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.brand-mark img{width:100%;height:100%;object-fit:cover}.top-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.top-actions-clinic{flex-wrap:nowrap}.top-nav-dropdown{position:relative;display:inline-flex}.top-nav-trigger{min-width:110px}.top-bar-clinic .brand{min-width:0}.top-bar-clinic .brand span{white-space:nowrap}.top-nav-menu{position:absolute;right:0;top:calc(100% + .5rem);z-index:30;min-width:220px;display:grid;gap:.3rem;padding:.5rem;border-radius:16px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.top-nav-menu-item{display:inline-flex;align-items:center;justify-content:space-between;gap:.45rem;width:100%;padding:.48rem .7rem;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--text);text-decoration:none;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer}.top-nav-menu-item:hover{background:#0f172a0f;border-color:#0f172a14}.top-nav-menu-logout{color:#b91c1c}.nav-link-with-count{display:inline-flex;align-items:center;gap:.4rem}.nav-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;font-size:.72rem;font-weight:700;line-height:1;color:#92400e;background:#eab30833;border:1px solid rgba(234,179,8,.35)}button,.link-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem 1.2rem;font-size:.95rem;font-weight:600;font-family:inherit;border-radius:14px;border:1px solid transparent;background-color:var(--surface);color:var(--text);cursor:pointer;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}button:hover{transform:translateY(-1px);border-color:#0f172a1a;box-shadow:0 8px 18px #0f172a1f}button:disabled,.link-button:disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}button:disabled:hover,.link-button:disabled:hover{transform:none;box-shadow:none}button.primary{background:linear-gradient(135deg,var(--accent),#38bdf8);color:#f8fafc;box-shadow:0 14px 30px #0ea5a459}button.ghost{background:#fff9;border-color:var(--border)}button.small{padding:.35rem .9rem;font-size:.85rem}button.icon-button{padding:.35rem .5rem;gap:0;border-radius:12px}button.icon-button .icon{width:16px;height:16px}button.icon-button.danger{color:#b91c1c;border-color:#dc262633;background:#dc26260f}button.icon-button.disabled-action{border-color:#94a3b84d;background:#94a3b829}.lang-dropdown{position:relative;display:inline-flex}.lang-trigger{width:42px;height:38px;padding:.2rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:none}.lang-menu{position:absolute;right:0;top:calc(100% + .5rem);display:grid;gap:.35rem;min-width:160px;padding:.5rem;border-radius:16px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);z-index:20}.lang-menu button{justify-content:flex-start;border-radius:12px;border:1px solid transparent;background:transparent;box-shadow:none;padding:.45rem .75rem;font-size:.9rem;gap:.6rem}.lang-menu button.active{background:#0b1220;color:#f8fafc}.flag{width:22px;height:14px;border-radius:4px;display:inline-block;border:1px solid rgba(15,23,42,.15);object-fit:cover}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.8rem;align-items:center;animation:fadeUp .8s ease}.hero-content h1{font-size:clamp(2.4rem,3.2vw,3.2rem);margin-bottom:1rem}.hero-content p{font-size:1.05rem;color:var(--muted);max-width:42ch}.hero-actions{display:flex;gap:.9rem;margin-top:1.6rem;flex-wrap:wrap}.status-pills{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.4rem}.status-pills span{padding:.4rem .95rem;border-radius:999px;background:#0f766e1a;font-weight:600;font-size:.8rem}.hero-panel{display:grid;gap:1.2rem}.panel-card{background:var(--surface);border-radius:22px;padding:1.6rem;box-shadow:var(--shadow)}.panel-card.muted{background:var(--surface-soft);border:1px solid var(--border)}.panel-controls{display:flex;gap:.6rem;margin-top:1rem;flex-wrap:wrap}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.4rem}.cards article{background:var(--surface-soft);border-radius:18px;padding:1.4rem;border:1px solid var(--border);box-shadow:0 12px 26px #0f172a14;animation:fadeUp .9s ease}.cards h2{margin-top:0;font-size:1.1rem}.cards p{color:var(--muted);font-size:.95rem;line-height:1.5}.dashboard{display:flex;flex-direction:column;gap:2rem}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.dashboard-hero p{color:var(--muted)}.dashboard-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:1.5rem}.dashboard-grid{display:grid;gap:1.5rem}.admin-page{display:flex;flex-direction:column;gap:2rem}.admin-hero p{color:var(--muted)}.admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.admin-hero-actions{display:flex;gap:.7rem;flex-wrap:wrap}.admin-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.admin-stack{display:flex;flex-direction:column;gap:1.5rem}.admin-dashboard-layout{display:grid;gap:1.5rem;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr)}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem;margin-bottom:1.5rem}.admin-overview-stats{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.5rem}.admin-overview-panel{padding:1.1rem}.admin-overview-panel .panel-header{margin-bottom:.6rem;gap:.6rem}.admin-overview-panel .panel-header h2,.admin-overview-panel .panel-header p{margin:0}.usage-section{margin-top:2rem}.usage-section:first-of-type{margin-top:1.5rem}.usage-section-title{margin:0 0 .8rem;font-size:1.1rem;font-weight:600;color:var(--text)}.admin-filter-toggle.active,.admin-filter-toggle[aria-pressed=true]{background:#0b1220;color:#f8fafc;border-color:#0b1220;box-shadow:0 8px 18px #0f172a33}#approvals-panel{padding:1.2rem 1.25rem}#approvals-panel .panel-header{margin-bottom:.55rem;gap:.65rem}#approvals-panel .panel-header h2{margin:0;font-size:1.03rem;line-height:1.2}#approvals-panel .panel-header p{margin:.12rem 0 0;font-size:.86rem;line-height:1.25}#approvals-panel .dashboard-actions{margin-bottom:.6rem;gap:.5rem}#approvals-panel .table-controls{margin-bottom:.55rem;gap:.65rem}#approvals-panel .table-search{min-width:240px}#approvals-panel .pagination{gap:.45rem}#approvals-panel .page-info{min-width:88px}#approvals-panel>.muted-text{margin-bottom:.55rem}#approvals-panel>.alert{margin:.4rem 0 .55rem}.admin-feedback{display:grid;gap:.6rem}.admin-priority-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.admin-priority-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:12px;border:1px solid rgba(15,23,42,.08);background:#ffffffe6;padding:.6rem .8rem}.admin-priority-item span{color:var(--muted);font-size:.9rem}.admin-priority-item strong{font-size:1rem;color:var(--text)}.admin-form-note{margin:0;font-size:.85rem}.admin-action-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:120}.admin-action-dialog{width:min(520px,100%);max-height:calc(100dvh - 2rem);overflow:auto}.admin-modal-actions{display:flex;justify-content:flex-end;gap:.6rem;flex-wrap:wrap}button.ghost.danger-action{color:#b91c1c;border-color:#dc26264d;background:#dc26260f}button.ghost.success-action{color:#15803d;border-color:#22c55e52;background:#22c55e1a}@media(max-width:1000px){.admin-dashboard-layout{grid-template-columns:1fr}}.stat-card{background:#ffffffd9;border-radius:18px;padding:1.2rem 1.4rem;border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 24px #0f172a14}.stat-label{margin:0 0 .4rem;font-size:.8rem;line-height:1.35;min-height:2.7em;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.stat-value{margin:0;font-size:2rem;font-weight:700;color:var(--text)}.admin-form{display:grid;gap:1rem;margin-bottom:1rem}.admin-form label{display:grid;gap:.4rem;font-weight:600}.admin-form input,.admin-form select{padding:.7rem .85rem;border-radius:12px;border:1px solid rgba(15,23,42,.15);font-family:inherit;color:var(--text);background:#fffffff2}.admin-form input[aria-invalid=true],.admin-form select[aria-invalid=true]{border-color:#dc262680;box-shadow:0 0 0 3px #dc26261f}.checkbox-row{display:flex;align-items:flex-start;gap:.6rem;font-weight:500}.checkbox-row input[type=checkbox]{margin-top:.22rem}.terms-content{display:grid;gap:.5rem}.terms-content h2{margin:.6rem 0 .2rem;font-size:1rem}.terms-content p{margin:0;color:var(--muted)}.session-page{display:flex;flex-direction:column;gap:1.4rem}.session-page.minimal{flex:1;min-height:0}.session-header{display:flex;align-items:center;justify-content:space-between;gap:.9rem;flex-wrap:wrap}.session-header.minimal{justify-content:space-between;align-items:center}.session-status{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .9rem;border-radius:999px;background:#ef444424;color:#b91c1c;font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.08em}.session-status.success{background:#10b98129;color:#0f766e}.session-status.warning{background:#f9731629;color:#c2410c}.status-dot{width:8px;height:8px;border-radius:999px;background:#ef4444;box-shadow:0 0 0 4px #ef444433;animation:status-pulse 2.8s ease-in-out infinite}.session-status.success .status-dot{background:#22c55e;box-shadow:0 0 0 4px #22c55e33}.session-status.warning .status-dot{background:#f59e0b;box-shadow:0 0 0 4px #f59e0b33}.session-status.success .status-dot,.session-status.warning .status-dot{animation:none}@keyframes status-pulse{0%,to{box-shadow:0 0 0 4px #ef44442e}50%{box-shadow:0 0 0 5px #ef444438}}.session-header p{color:var(--muted)}.recorder{display:flex;flex-direction:column;align-items:center;gap:1.05rem;padding:1.1rem 1rem 1.6rem;position:relative}.recorder-core{display:grid;grid-template-rows:auto auto auto auto;align-items:center;justify-items:center;gap:.75rem;width:100%}.title-field{display:grid;gap:.4rem;width:min(380px,100%);font-weight:600;text-align:center}.title-field input{padding:.7rem .9rem;border-radius:14px;border:1px solid rgba(15,23,42,.15);font-family:inherit;background:#ffffffe6;text-align:center;margin-bottom:.35rem}.timer{font-family:Space Grotesk,sans-serif;font-size:clamp(2.2rem,4.5vw,3.2rem);letter-spacing:.05em}.session-code{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--muted);padding:.25rem .75rem;border-radius:999px}.session-code-value{display:inline-flex;align-items:center;gap:.1rem;font-variant-numeric:tabular-nums}.session-code-suffix{position:relative;display:inline-flex;min-width:4ch;justify-content:flex-end}.session-code-skeleton{position:absolute;inset:0;height:100%;border-radius:999px;background:linear-gradient(90deg,#94a3b833,#94a3b880,#94a3b833);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}.wave{display:grid;gap:.35rem;background:transparent;--level-mult: 1;height:108px;position:relative;margin-top:0}.wave-layer{grid-area:1 / 1;display:flex;gap:.35rem;align-items:center;justify-content:center;position:relative;z-index:1;padding:.4rem 0}.wave-layer span{width:8px;height:72px;border-radius:999px;background:#3b82f659;transform-origin:center;transform:scaleY(calc(var(--level, 2) * var(--level-mult)));opacity:.4;transition:transform .12s ease-out,opacity .2s ease-out,background .2s ease-out}.wave:not(.active) .wave-layer span{opacity:.35}.wave.active .wave-layer span{height:88px;opacity:.7}.wave.active{--level-mult: 1.45}.wave.paused .wave-layer span{background:#94a3b880;opacity:.35}.wave-layer-back span{--level-mult: 2.2;background:#93c5fd59;opacity:.35}.wave-layer-bloom{filter:blur(12px);opacity:.22}.wave-layer-bloom span{--level-mult: 1.7;background:#fbbf2459;transition-duration:.26s,.26s,.26s}.wave-layer-front span{--level-mult: 1.2;background:#2563eb99;opacity:.65}.wave.paused .wave-layer-back span,.wave.paused .wave-layer-front span{background:#94a3b873;opacity:.28}.wave.paused .wave-layer-bloom span{background:#94a3b859;opacity:.2}.wave:not(.active) .wave-layer-back{display:none}.wave:not(.active) .wave-layer-bloom{display:none}.wave:not(.active) .wave-layer-front span{animation:idle-wave 3.4s ease-in-out infinite;opacity:.45;transition-property:opacity,background;transition-duration:.2s,.2s;transition-timing-function:ease-out,ease-out;animation-fill-mode:both;animation-delay:0s}@keyframes idle-wave{0%,to{transform:scaleY(calc(var(--level, 2) * (.55 + (var(--idle-weight, 1) * .15))));opacity:.32}50%{transform:scaleY(calc(var(--level, 2) * (.8 + (var(--idle-weight, 1) * .5))));opacity:.58}}.mic-button{width:84px;height:84px;border-radius:999px;background:#ef4444;color:#fff;border:none;box-shadow:0 26px 46px #ef444452;display:inline-flex;align-items:center;justify-content:center;position:relative;transform:translateY(-2px);transition:transform .18s ease,box-shadow .2s ease}.mic-button:hover{transform:translateY(0);box-shadow:0 18px 34px #ef444447}.mic-button:active{transform:translateY(1px);box-shadow:0 14px 28px #ef44443d}.mic-button:not(.live):not(:disabled),.mic-button.paused:not(:disabled){animation:mic-jump 2.1s ease-in-out infinite}@keyframes mic-jump{0%,60%,to{transform:translateY(-2px) scale(1);box-shadow:0 26px 46px #ef444452}72%{transform:translateY(-2px) scale(1.03);box-shadow:0 32px 54px #ef444457}86%{transform:translateY(-2px) scale(1.01);box-shadow:0 20px 36px #ef44444d}}.mic-button.live{box-shadow:0 0 0 12px #ef44442e,0 20px 40px #ef444459;animation:live-pulse 2.2s ease-in-out infinite}@keyframes live-pulse{0%,to{transform:translateY(-2px) scale(1);box-shadow:0 0 0 10px #ef444429,0 20px 40px #ef444459}50%{transform:translateY(-2px) scale(1.05);box-shadow:0 0 0 18px #ef444442,0 26px 52px #ef444473}}.mic-icon{width:28px;height:28px;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;fill:none;display:block}.pause-icon,.play-icon{width:28px;height:28px;fill:currentColor;display:block}.hint{color:var(--muted);margin:0;line-height:1.2}.stop-button{display:inline-flex;align-items:center;gap:.6rem;border-radius:999px;border:none;padding:.45rem 1.1rem;background:#ef4444;color:#fff;box-shadow:0 12px 28px #ef444440}.stop-icon{width:14px;height:14px;background:#fff;border-radius:4px}.overlay{display:flex;justify-content:center;align-items:center;position:absolute;inset:0;background:#f6f7fbe0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:24px;z-index:5}.overlay-card{width:min(520px,100%);background:#ffffffeb;border-radius:18px;padding:1.5rem;border:1px solid rgba(15,23,42,.08);box-shadow:var(--shadow);text-align:center}.loading-shell{position:relative;width:160px;height:160px;margin:0 auto .4rem}.loading-ring-shell{position:absolute;inset:0}.loading-ring-shell:before,.loading-ring-shell:after{content:"";position:absolute;inset:0;border-radius:50%}.loading-ring-shell:before{border:12px solid rgba(15,118,110,.12)}.loading-ring-shell:after{border:12px solid rgba(15,118,110,.2);border-top-color:#0f766ed9;animation:ringSpin 1s linear infinite}.loading-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--accent-strong);animation:iconBounce 1.6s ease-in-out infinite;z-index:1}.loading-icon svg{width:44px;height:44px;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;fill:none}.loading-icon svg path,.loading-icon svg circle,.loading-icon svg rect{vector-effect:non-scaling-stroke}@keyframes ringSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.progress-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:1.2rem}.progress-bar span{height:6px;border-radius:999px;background:#94a3b866}.progress-bar span.active{background:var(--accent)}.results{display:flex;justify-content:center}.results-card{width:min(720px,100%);display:grid;gap:1.1rem}.results-tabs{display:inline-flex;gap:.4rem;background:#0f172a0f;padding:.25rem;border-radius:16px;align-self:flex-start}.results-tabs button{border-radius:12px;padding:.35rem .85rem;border:none;background:transparent;box-shadow:none;font-size:.85rem}.results-tabs button.active{background:#0b1324;color:#f8fafc}.results-block{padding:.8rem .9rem;border-radius:16px;border:1px solid var(--border);background:#fffc}.results-copy{margin-top:.6rem}.results-block h3{margin-top:0}.results-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:stretch}.results-actions button{min-height:44px;margin-top:5px}.results-actions .results-copy{margin-top:5px}.notes-editor-actions{flex-wrap:nowrap}.session-form{display:grid;gap:1rem;margin-top:1rem}.session-form label{display:grid;gap:.4rem;font-weight:600}.session-form input,.session-form textarea{padding:.8rem .9rem;border-radius:12px;border:1px solid rgba(15,23,42,.15);font-family:inherit}.session-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:.5rem}.meta-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.3rem}.meta-value{font-weight:600}.record-controls{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}.record-status{display:grid;gap:.8rem;margin-bottom:1rem}.notes-preview{background:#0f172a0a;border-radius:12px;padding:1rem;color:var(--muted);min-height:120px;margin:1rem 0}.notes-actions,.finalize-actions{display:flex;gap:.6rem;flex-wrap:wrap}.session-detail{display:flex;flex-direction:column;gap:1.5rem}.session-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.session-detail-header p{color:var(--muted)}.session-detail-body{display:grid;gap:1.5rem}.detail-meta{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.detail-grid{display:grid;gap:.6rem 1.4rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.detail-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.2rem}.session-report-block{display:grid;gap:.65rem}.session-report-block textarea{width:100%;padding:.7rem .8rem;border-radius:10px;border:1px solid var(--border);font-family:inherit}.session-report-actions{display:grid;gap:.5rem;justify-items:start}.session-notes-editor{display:grid;gap:.5rem}.session-notes-editor textarea{width:100%;padding:.7rem .8rem;border-radius:10px;border:1px solid var(--border);font-family:inherit}.session-report-dialog{display:grid;gap:.7rem}.session-report-dialog textarea{width:100%;padding:.7rem .8rem;border-radius:10px;border:1px solid var(--border);font-family:inherit}.session-report-dialog .checkbox-row-invalid{color:#b91c1c}.session-report-dialog .checkbox-row-invalid input[type=checkbox]{outline:2px solid rgba(220,38,38,.55);outline-offset:2px}.panel{background:#ffffffd9;border-radius:22px;padding:1.6rem;box-shadow:var(--shadow);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:0}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-header p{color:var(--muted)}.panel-count{background:#0f766e24;color:#0b1324;font-weight:600;border-radius:999px;padding:.2rem .75rem}.table-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem;flex-wrap:wrap}.table-search{flex:1;min-width:220px;padding:.5rem .95rem;border-radius:999px;border:1px solid var(--border);background:#fffffff2;font-family:inherit;font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease}.table-search:focus{outline:none;border-color:#0f766e80;box-shadow:0 0 0 3px #0f766e26}.pagination{display:inline-flex;align-items:center;gap:.6rem}.page-info{min-width:96px;text-align:center;font-size:.8rem;color:var(--muted)}.table{display:grid;gap:.6rem;--table-columns: 90px 1.6fr 1fr .9fr 120px;--table-min-width: 620px;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.table-row{display:grid;grid-template-columns:var(--table-columns);align-items:center;gap:.6rem;padding:.45rem .6rem;font-size:.85rem;line-height:1.2;border-radius:14px}.unfinalized-sessions-table{--table-columns: 90px 1.35fr 1fr .95fr 240px;--table-min-width: 760px}.unfinalized-sessions-table .record-controls{justify-content:flex-start;margin:0;flex-wrap:nowrap}.finalized-sessions-table{--table-columns: 90px 1.5fr 1fr .95fr 120px;--table-min-width: 640px}.trash-sessions-table{--table-columns: 90px 1.5fr 1fr 1fr 240px;--table-min-width: 840px}.trash-sessions-table .record-controls{justify-content:flex-start;margin:0;flex-wrap:nowrap}.approvals-table{--table-columns: 1.1fr 1.2fr 1.1fr .9fr .9fr .8fr .8fr 220px;--table-min-width: 1120px}.reported-sessions-table{--table-columns: 1.7fr 1fr 1.1fr 1.25fr .95fr 1.4fr;--table-min-width: 0px}.reported-sessions-table .table-row{gap:.55rem}.reported-sessions-table .table-row.table-row-selectable{cursor:pointer;font-weight:400}.reported-sessions-table .report-cell-wrap{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3}.approvals-table .record-controls{display:inline-flex;align-items:center;gap:.45rem;justify-content:flex-start;flex-wrap:nowrap}.approvals-table .table-row{gap:.7rem;padding:.5rem .65rem}.admin-users-table{--table-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, .9fr) minmax(0, .65fr) minmax(0, .95fr) max-content;--table-min-width: 860px}.admin-users-table .table-row{gap:.38rem;padding:.35rem .45rem;font-size:.8rem}.admin-users-table .record-controls{justify-content:flex-start;margin:0;flex-wrap:nowrap;white-space:nowrap;gap:.3rem}.admin-users-table .record-controls .icon-button{padding:.24rem .34rem;border-radius:9px}.admin-users-table .record-controls .icon-button .icon{width:13px;height:13px}.admin-users-table .table-row.header{font-size:.68rem}.admin-users-table .role-badges{gap:.25rem}.admin-users-table .role-badge{font-size:.7rem;padding:.2rem .45rem}.clinics-table{--table-columns: 1.5fr .9fr .8fr .8fr .8fr .9fr;--table-min-width: 760px}.clinic-team-table{--table-columns: minmax(160px, 1.2fr) minmax(220px, 1.3fr) minmax(120px, .9fr) minmax(110px, .7fr) minmax(160px, .6fr);--table-min-width: 780px}.clinic-team-table .table-row>span{text-align:left}.clinic-team-table .table-row.header{text-align:left}.clinic-team-table .record-controls{justify-content:flex-start;margin:0;flex-wrap:nowrap;white-space:nowrap;gap:.4rem}.table-row,.table-row.header{min-height:36px;width:max(100%,var(--table-min-width))}.table-row>span,.table-row>button{min-width:0}.table-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-row.header{font-size:.7rem;font-weight:600;text-transform:none;letter-spacing:.04em;color:var(--muted);background:#0f172a0a}.table-row:not(.header){background:#fffffff5;border:1px solid rgba(148,163,184,.18);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}.table-row:not(.header):hover{border-color:#0f766e4d;box-shadow:0 12px 24px #0f172a14;transform:translateY(-1px)}.table-row.table-row-selectable{width:100%;text-align:left;box-shadow:none}.table-row.table-row-selectable:hover{box-shadow:0 12px 24px #0f172a14}.table-row.table-row-selectable.selected{border-color:#0f766e8c;box-shadow:0 0 0 3px #0f766e29}.table-empty{padding:.9rem;color:var(--muted);text-align:center;border-radius:12px;border:1px dashed rgba(15,23,42,.12)}.tag{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;background:#eab3082e;color:#92400e}.tag.success{background:#22c55e33;color:#15803d}.tag.invited{background:#eab3082e;color:#92400e}.tag.danger{background:#dc262614;color:#b91c1c}.role-badges{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.role-badge{white-space:nowrap}.role-badge-super-admin{background:#dc262614;color:#b91c1c;border:1px solid rgba(220,38,38,.2)}.role-badge-clinic-admin{background:#eab3082e;color:#92400e}.role-badge-clinic-user{background:var(--surface-soft);color:var(--text);border:1px solid var(--border)}.role-badge-default{background:var(--surface-soft);color:var(--muted);border:1px solid var(--border)}.auth-page{display:flex;justify-content:center;padding:2.5rem 0 3.5rem}.auth-card{width:min(420px,100%);background:var(--surface-elevated);border-radius:24px;padding:2.2rem;border:1px solid var(--border);box-shadow:var(--shadow-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1.6rem}.auth-brand-mark{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--accent),#38bdf8);box-shadow:0 12px 22px #0ea5a447;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.auth-brand-mark img{width:100%;height:100%;object-fit:cover}.auth-brand-text{font-weight:600;font-size:1rem;color:var(--text)}.auth-header h1{margin-bottom:.4rem}.auth-header p{color:var(--muted)}.auth-form{display:grid;gap:1rem;margin-top:1.7rem}.auth-form label{display:grid;gap:.4rem;font-weight:600}.auth-form input:not([type=checkbox]){padding:.8rem .95rem;border-radius:14px;border:1px solid var(--border);font-size:.95rem;font-family:inherit;background:#ffffffe6;transition:border-color .2s ease,box-shadow .2s ease}.auth-form input:not([type=checkbox]):focus{outline:none;border-color:#0ea5a499;box-shadow:0 0 0 3px #0ea5a42e}.auth-form label.checkbox-row{display:flex;align-items:flex-start;gap:.6rem;font-weight:500}.auth-form label.checkbox-row input[type=checkbox]{margin-top:.22rem}.auth-footer{display:flex;gap:.5rem;margin-top:1.6rem;color:var(--muted)}.alert{padding:.7rem .9rem;border-radius:14px;font-size:.9rem;border:1px solid transparent}.alert.error{background:#dc262614;border-color:#dc262633;color:#b91c1c}.alert.success{background:#0ea5a41f;border-color:#0ea5a438;color:var(--accent-strong)}.text-link{color:var(--accent);font-weight:600;text-decoration:none}.text-link:hover{text-decoration:underline}.full{width:100%;justify-content:center}.muted-text{color:var(--muted)}.error-text{color:#b91c1c;font-weight:600}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}@media(max-width:720px){.app-shell{min-height:100svh}#root{padding:0 .75rem}.top-bar{flex-direction:column;align-items:stretch;justify-content:space-between;gap:.65rem;padding:.5rem .75rem}.top-bar-clinic{flex-direction:row;align-items:center;justify-content:space-between;gap:.55rem}.top-bar-clinic .brand{min-width:0;gap:.5rem}.top-bar-clinic .brand span{font-size:.88rem;overflow:hidden;text-overflow:ellipsis}.top-bar-clinic .brand-mark{width:34px;height:34px;border-radius:11px}.top-actions{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:.4rem}.top-actions-clinic{width:auto;margin-left:auto;justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:.45rem}.top-actions-clinic .top-nav-dropdown{flex:1;min-width:0}.top-actions-clinic .top-nav-trigger{width:auto;min-width:86px}.top-actions-clinic .top-nav-menu{left:auto;right:0;min-width:0;width:220px}.top-actions .nav-link{font-size:.76rem;padding:.3rem .55rem;border-radius:10px}.logout-button{padding:.3rem .55rem;font-size:.74rem}.top-actions .auth-links{display:none}.panel{padding:1rem;border-radius:16px;overflow-x:clip}.admin-page,.dashboard{gap:1.15rem}.admin-hero,.dashboard-hero,.session-detail-header{gap:.7rem}.admin-hero h1,.dashboard-hero h1,.session-detail-header h1{margin:0;font-size:1.35rem;line-height:1.2}.admin-hero p,.dashboard-hero p,.session-detail-header p{font-size:.86rem}.admin-hero-actions,.dashboard-actions{width:100%;gap:.45rem}.admin-hero-actions .link-button,.dashboard-actions button{flex:1;min-width:0;justify-content:center}.admin-stats,.admin-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.stat-card{padding:.75rem .8rem;border-radius:14px}.stat-label{font-size:.68rem;letter-spacing:.06em}.stat-value{font-size:1.25rem}.table-controls{align-items:stretch;gap:.5rem;margin-bottom:.6rem}.table-search{min-width:0;width:100%;font-size:.82rem;padding:.45rem .75rem}.pagination{width:100%;justify-content:space-between;gap:.4rem}.pagination button{min-width:70px}.page-info{min-width:0;font-size:.72rem}.table{display:block;width:100%;max-width:100%;overflow-x:auto;padding-bottom:.2rem}.table-row{display:grid;grid-template-columns:var(--table-columns);justify-items:stretch;gap:.45rem;padding:.38rem .45rem;font-size:.78rem;width:max(100%,var(--table-min-width, 620px));min-width:100%}.table-row.header{display:grid;position:sticky;top:0;z-index:2;background:#f1f5f9f2}.table-row>span{white-space:nowrap}.record-controls{flex-wrap:nowrap;gap:.35rem}.admin-action-overlay{padding:.55rem}.admin-action-dialog{width:100%;max-height:calc(100dvh - 1.1rem)}.admin-modal-actions{width:100%}.admin-modal-actions button{flex:1;min-width:0}.auth-page{padding:1rem 0 1.6rem}.auth-card{border-radius:18px;padding:1.1rem}.auth-header h1{margin:0 0 .25rem;font-size:1.3rem}.auth-header p,.auth-footer{font-size:.84rem}.auth-form{gap:.75rem;margin-top:1rem}.auth-form input:not([type=checkbox]){font-size:1rem;padding:.7rem .8rem}.results-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap}.results-tabs button{white-space:nowrap;font-size:.8rem;padding:.32rem .62rem}.results-block{padding:.65rem}.detail-grid{grid-template-columns:1fr;gap:.45rem}.overlay{border-radius:16px}.overlay-card{padding:.95rem;border-radius:14px}.loading-shell{width:126px;height:126px}.loading-icon svg{width:32px;height:32px}.session-header{align-items:flex-start}.session-page{gap:1rem}.session-page.minimal.recording-layout{display:grid;grid-template-rows:auto minmax(0,1fr);flex:1;min-height:0;gap:.96rem;overflow:hidden}.session-page.minimal.recording-layout>.recorder{min-height:0;justify-content:flex-start;overflow-x:hidden;overflow-y:hidden;overscroll-behavior-y:contain}.recorder{gap:.98rem;padding:.98rem .8rem 1.12rem}.session-code{margin-bottom:2rem;padding:.22rem .68rem}.recorder-core{gap:.78rem}.title-field{gap:.44rem;margin-bottom:2rem}.title-field input{padding:.58rem .76rem;margin-bottom:0}.timer{font-size:clamp(1.92rem,7.6vw,2.45rem);line-height:1}.wave{height:90px}.wave-layer span{width:7px;height:58px}.wave.active .wave-layer span{height:72px}.mic-button{width:74px;height:74px}.mic-icon{width:24px;height:24px}.pause-icon,.play-icon{width:20px;height:20px}.hint{margin:.22rem 0 0;font-size:.8rem;line-height:1.2}.stop-button{padding:.4rem .9rem;font-size:.84rem;gap:.45rem}.stop-icon{width:12px;height:12px}@supports (-webkit-touch-callout: none){.app-shell{min-height:-webkit-fill-available;height:100svh}.session-page.minimal.recording-layout>.recorder{padding-bottom:max(.95rem,env(safe-area-inset-bottom))}}}@media(max-width:720px)and (max-height:780px){.session-page.minimal.recording-layout{gap:.54rem}.session-page.minimal.recording-layout>.recorder{padding-top:.58rem;padding-bottom:.68rem;gap:.5rem}.session-code{margin-bottom:2rem;font-size:.8rem;padding:.12rem .48rem}.title-field{gap:.22rem;margin-bottom:2rem;font-size:.92rem}.title-field input{padding:.56rem .72rem;border-radius:12px;font-size:.92rem}.timer{font-size:clamp(1.68rem,6.9vw,2.12rem)}.wave{height:74px}.wave-layer span{width:6px;height:48px}.wave.active .wave-layer span{height:60px}.mic-button{width:64px;height:64px}.mic-icon{width:22px;height:22px}.pause-icon,.play-icon{width:18px;height:18px}.hint{font-size:.75rem}.stop-button{padding:.34rem .8rem;font-size:.78rem}}.app-chrome{position:sticky;top:0;z-index:120;display:flex;flex-direction:column;gap:0}.app-chrome .top-bar{position:relative;top:auto;z-index:1}.impersonation-banner{width:100vw;margin:0;margin-left:calc(-50vw + 50%);display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.62rem 1.25rem;border-radius:0;border-top:0;border-bottom:1px solid rgba(127,29,29,.55);background:linear-gradient(90deg,#b91c1cf7,#991b1bf2);box-shadow:0 10px 20px #7f1d1d47;position:relative;overflow:hidden}.impersonation-banner:before{content:"";position:absolute;left:0;top:0;height:100%;width:6px;background:#ffffffe6}.impersonation-banner-copy{display:grid;gap:.15rem;min-width:0;padding-left:.35rem}.impersonation-banner-copy strong{font-size:.86rem;line-height:1.2;color:#fff}.impersonation-banner-copy p{font-size:.8rem;line-height:1.25;color:#ffffffeb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.impersonation-exit{flex-shrink:0;border-color:#ffffffa6;background:#ffffff29;color:#fff}.impersonation-exit:hover{border-color:#ffffffe6;background:#ffffff3d}@media(max-width:720px){.impersonation-banner{align-items:stretch;flex-direction:column;gap:.45rem;padding:.5rem .7rem}.impersonation-banner-copy{padding-left:.2rem;gap:.1rem}.impersonation-banner-copy strong{font-size:.76rem}.impersonation-banner-copy p{font-size:.7rem;white-space:normal;overflow:visible;text-overflow:clip}.impersonation-exit{width:100%;font-size:.75rem;padding:.35rem .7rem}}
