:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e2e8f0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg-base:#07111f;--panel:#080f1cd1;--surface-soft:#0f172ab8;--surface-elevated:#0f172af5;--border-soft:#94a3b82e;--text-primary:#e2e8f0;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--accent-soft:#2563eb2e;--accent-strong:#93c5fd;--shadow-card:0 22px 50px #02061738;background:#07111f;font-family:Segoe UI,Inter,sans-serif;font-weight:400;line-height:1.5}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#0f172a;--bg-base:#fff;--panel:#fffffff5;--surface-soft:#0077b60f;--surface-elevated:#fffffffa;--border-soft:#0077b624;--text-primary:#0f172a;--text-secondary:#1f4f68;--text-muted:#5c7b8b;--accent-soft:#0077b61f;--accent-strong:#0077b6;--shadow-card:0 18px 45px #0077b61f;background:#fff}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select{outline:none}button{cursor:pointer}input::placeholder{color:var(--text-muted)}.prescription-sheet-card{background:var(--surface-soft);border:1px solid #6366f140}.prescription-sheet{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:14px;gap:.85rem;padding:1rem;display:grid}.prescription-sheet-header{border-bottom:1px dashed #94a3b8;justify-content:space-between;align-items:flex-start;gap:.85rem;padding-bottom:.65rem;display:flex}.prescription-sheet-header h5{letter-spacing:.03em;margin:0;font-size:1rem}.prescription-sheet-header p{color:#475569;margin:.25rem 0 0;font-size:.82rem}.prescription-sheet-meta{text-align:right;gap:.2rem;font-size:.82rem;display:grid}.prescription-sheet-patient{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.45rem .75rem;font-size:.85rem;display:grid}.prescription-table-shell{border:1px solid #cbd5e1;border-radius:10px;overflow:hidden}.prescription-table{border-collapse:collapse;width:100%;font-size:.86rem}.prescription-table th,.prescription-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:.55rem .65rem}.prescription-table th{color:#0f172a;letter-spacing:.04em;text-transform:uppercase;background:#f1f5f9;font-size:.75rem}.prescription-sheet-footer{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.45rem .65rem;font-size:.84rem;display:grid}.prescription-sheet-notes{margin:0;font-size:.84rem}.prescription-sheet-contact{color:#334155;border-top:1px dashed #94a3b8;gap:.2rem;padding-top:.65rem;font-size:.82rem;display:grid}.prescriptions-module-heading{margin-bottom:12px}.prescriptions-module-stats{margin-top:10px}.prescriptions-module-list{margin-top:12px}@media print{body *{visibility:hidden}.prescription-sheet,.prescription-sheet *{visibility:visible}.prescription-sheet{color:#0f172a;width:100%;box-shadow:none;background:#fff;border:1px solid #cbd5e1;position:absolute;top:0;left:0}.prescription-table th{color:#0f172a;background:#f1f5f9}}.app-shell{height:100vh;min-height:100vh;color:var(--text-primary);background:radial-gradient(circle at top left, #2563eb3d, transparent 28%), radial-gradient(circle at bottom right, #38bdf82e, transparent 24%), var(--bg-base);overflow:hidden}:root[data-theme=light] .app-shell{background:radial-gradient(circle at top left, #0077b629, transparent 26%), radial-gradient(circle at bottom right, #0077b61a, transparent 22%), linear-gradient(180deg, #0077b608, #fff0), var(--bg-base)}.login-shell,.portal-shell{min-height:100vh}.login-shell{isolation:isolate;grid-template-columns:minmax(0,1fr) minmax(420px,560px);align-items:center;height:100vh;display:grid;position:relative;overflow:hidden}.brand-panel,.login-panel{padding:48px}.login-shell-modern{box-sizing:border-box;background:linear-gradient(102deg, #0208127a, #02081233), var(--login-wallpaper,radial-gradient(circle at top right, #0ea5e93d, transparent 24%), linear-gradient(135deg, #031525, #0f172a 54%, #164e63));background-position:50%;background-size:cover;align-items:stretch;gap:0;min-height:100vh;padding:clamp(18px,2vw,28px)}.login-shell-modern:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle at 15% 20%,#22d3ee29,#0000 20%),radial-gradient(circle at 85% 70%,#3b82f633,#0000 24%);position:absolute;inset:0}.boot-restore-shell{grid-template-columns:minmax(0,1fr);place-items:center stretch}.boot-restore-shell .brand-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#030f1c61;border-radius:32px;max-width:720px;margin:0 auto;padding:56px 48px;box-shadow:0 24px 56px #02081247}.boot-restore-logo-wrap{width:clamp(190px,24vw,280px);margin:0 auto}.boot-restore-logo{width:100%;height:auto;display:block}:root[data-theme=light] .boot-restore-shell{background:linear-gradient(120deg, #030f1c8a, #030f1c4d), var(--login-wallpaper,radial-gradient(circle at top right, #0ea5e933, transparent 24%), linear-gradient(135deg, #34506a, #5f7487 54%, #6c8796));background-position:50%;background-size:cover}:root[data-theme=light] .boot-restore-shell .brand-panel,:root[data-theme=light] .boot-restore-shell .brand-panel h1,:root[data-theme=light] .boot-restore-shell .brand-panel p{color:#f8fbff}:root[data-theme=light] .boot-restore-shell .brand-panel{background:#07182770;border:1px solid #ffffff29}.brand-panel{color:#eff6ff;flex-direction:column;justify-content:flex-start;gap:24px;display:flex}.brand-badge,.panel-tag,.status-pill,.eyebrow{border-radius:999px;align-items:center;width:fit-content;display:inline-flex}.brand-badge,.panel-tag{background:#ffffff1f;border:1px solid #ffffff29;padding:8px 14px}.highlights{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.highlights article,.stat-card,.panel,.module-card,.login-panel{border:1px solid var(--border-soft);box-shadow:var(--shadow-card)}.module-card.compact{min-height:0}.highlights article{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff14;border-radius:24px;padding:18px}.highlights span,.stat-card span,.finance-grid span,.stack-item span,.table-row span,.sidebar-footnote span{color:var(--text-muted);font-size:.92rem;display:block}.highlights strong,.stat-card strong,.finance-grid strong,.stack-item strong,.table-row strong,.module-card strong{margin-top:6px;display:block}.login-panel{-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);background:#0b1426bd;flex-direction:column;justify-content:center;gap:24px;display:flex}:root[data-theme=light] .login-panel{background:#fffffff0}.login-shell-modern .login-panel{-webkit-backdrop-filter:blur(18px);background:linear-gradient(#09111d61,#09111d38);border-radius:36px;place-self:center end;width:min(100%,560px);min-height:min(720px,100vh - 56px);margin:0;box-shadow:0 28px 70px #0000004d}:root[data-theme=light] .login-shell-modern .login-panel{background:linear-gradient(#ffffff6b,#f5f9fd3d)}:root[data-theme=light] .login-panel,:root[data-theme=light] .login-panel h2,:root[data-theme=light] .login-panel strong{color:#0f172a}:root[data-theme=light] .login-panel .eyebrow{color:#fff;background:#0077b624;border:1px solid #0077b62e}:root[data-theme=light] .login-panel label,:root[data-theme=light] .login-subtitle,:root[data-theme=light] .login-brand-stack span,:root[data-theme=light] .theme-toggle,:root[data-theme=light] .password-toggle{color:#0f172ac7}:root[data-theme=light] .login-form input,:root[data-theme=light] .password-toggle{background:#ffffffb8;border-color:#0f172a14}.brand-panel-modern{color:#eff6ff;background:0 0;justify-content:center;align-items:flex-start;min-height:min(720px,100vh - 56px);padding:20px 20px 20px 28px}.brand-panel-modern .login-hero-credit{margin-top:8px;padding-top:0}.login-subtitle{color:var(--text-muted);margin:8px 0 0}.login-brand-stack{background:linear-gradient(135deg,#38bdf824,#0f172a29);border:1px solid #94a3b82e;border-radius:22px;gap:8px;padding:18px 20px;display:grid}.login-brand-stack span{display:block}.login-brand-stack span+span{margin-top:4px}.login-brand-company{color:var(--text-primary);font-weight:600}:root[data-theme=light] .login-brand-stack span,:root[data-theme=light] .login-brand-company{color:#fff}.login-hero-copy{gap:18px;max-width:min(1100px,100%);margin-top:8px;display:grid}.login-hero-logo-wrap{width:clamp(160px,20vw,220px);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.login-hero-logo{width:100%;height:auto;display:block}.login-hero-copy h1{color:#fff;letter-spacing:-.07em;text-transform:uppercase;text-wrap:balance;text-shadow:0 14px 30px #0000004d;margin:0;font-size:clamp(4rem,12vw,10rem);font-weight:800;line-height:.88}.login-hero-credit{color:#ffffffeb;text-shadow:0 8px 18px #00000047;margin:12px 0 0;font-size:clamp(.92rem,1.2vw,1rem);font-weight:500}.panel-top,.portal-header,.panel-heading,.table-row,.stack-item,.sidebar-brand{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-top h2,.portal-header h2,.panel-heading h3{margin:4px 0 0}.eyebrow{background:var(--accent-soft);color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;font-size:.8rem}.theme-toggle,.ghost-button,.primary-button,.demo-user,.nav-item,.branch-select select,.profile-chip{border:1px solid var(--border-soft);font:inherit;border-radius:16px}.theme-toggle,.ghost-button,.nav-item,.demo-user,.profile-chip{background:var(--surface-elevated);color:var(--text-primary);padding:12px 16px}.login-theme-toggle{width:52px;min-width:52px;height:30px;box-shadow:none;background:#ffffff1a;border-color:#ffffff2e;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.login-theme-toggle-track{border-radius:inherit;align-items:center;width:100%;height:100%;padding:3px;display:flex}.login-theme-toggle-thumb{background:#f8fafc;border-radius:50%;width:22px;height:22px;transition:transform .2s,background .2s;transform:translate(0);box-shadow:0 6px 14px #0f172a47}.login-theme-toggle.is-light .login-theme-toggle-track{justify-content:flex-end}.login-theme-toggle.is-light .login-theme-toggle-thumb{background:#0f172a}.primary-button{color:#fff;background:linear-gradient(135deg,#2563eb,#38bdf8);padding:14px 18px;font-weight:700}:root[data-theme=light] .primary-button{background:linear-gradient(135deg,#0077b6,#0096c7);border-color:#0077b638}:root[data-theme=light] .theme-toggle,:root[data-theme=light] .ghost-button,:root[data-theme=light] .profile-chip,:root[data-theme=light] .demo-user,:root[data-theme=light] .branch-select select{background:linear-gradient(#fffffffa,#f5fafdf0);border-color:#0077b629;box-shadow:0 12px 24px #0077b614}:root[data-theme=light] .login-theme-toggle{background:#ffffffd1;border-color:#0f172a14;box-shadow:0 10px 22px #0f172a14}:root[data-theme=light] .primary-button:hover{transform:translateY(-1px);box-shadow:0 16px 28px #0077b633}.login-form{gap:16px;display:grid}.login-form label,.branch-select{color:var(--text-secondary);gap:8px;display:grid}.login-form input,.branch-select select{color:var(--text-primary);background:#ffffff1a;border:1px solid #ffffff29;border-radius:999px;padding:16px 20px}.login-form input::placeholder{color:#e2e8f0b8}:root[data-theme=light] .login-form input::placeholder{color:#0f172a80}.password-field{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.password-toggle{min-width:76px;color:var(--text-primary);font:inherit;background:#ffffff1f;border:1px solid #ffffff24;border-radius:999px;padding:12px 14px;font-weight:600}.field-hint{color:var(--text-muted);margin-top:8px;font-size:.82rem;line-height:1.4;display:block}.form-error{color:#fda4af;margin:0}.optometrist-action-card{background:var(--surface-elevated);width:100%;color:var(--text-primary);border:1px solid var(--border-soft);cursor:pointer;text-align:left;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon title""icon copy";align-items:start;gap:6px 14px;min-height:0;padding:18px;display:grid}.optometrist-action-card:hover{transform:translateY(-3px)}.optometrist-action-card .module-card-icon{grid-area:icon;width:44px;height:44px;margin:0}.optometrist-action-card strong{grid-area:title;margin:0;font-size:.98rem;line-height:1.3}.optometrist-action-card p{grid-area:copy;margin:0;font-size:.8rem;line-height:1.35}.optometrist-quick-actions-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch;gap:14px;margin-top:18px;display:grid}.top-gap{margin-top:16px}.portal-shell{grid-template-columns:280px 1fr;height:100vh;display:grid;overflow:hidden}.sidebar-overlay{display:none}.sidebar{-webkit-backdrop-filter:blur(18px);background:linear-gradient(#09111d61,#09111d38);border:1px solid #ffffff1f;border-radius:32px;flex-direction:column;height:calc(100vh - 32px);margin:16px 0 16px 16px;padding:28px 20px;display:flex;overflow-y:auto;box-shadow:0 28px 70px #00000038}:root[data-theme=light] .sidebar{background:linear-gradient(#eef4f8,#f7fbfd);border:1px solid #fffffff0;box-shadow:inset 12px 12px 26px #cdd9e2eb,inset -12px -12px 26px #fffffffa,14px 14px 32px #c6d3dc70,-10px -10px 24px #fffffff0}.brand-mark{background:#0f172ad1;border:2px solid #38bdf847;border-radius:999px;place-items:center;width:92px;height:92px;display:grid;overflow:hidden;box-shadow:0 14px 32px #02061738}:root[data-theme=light] .brand-mark{background:#ffffff1f;border-color:#ffffff57;box-shadow:0 14px 28px #03598133}:root[data-theme=light] .sidebar .brand-mark{background:linear-gradient(145deg,#f9fcfe,#e6edf2);border-color:#fffffffa;box-shadow:inset 6px 6px 14px #fffffffa,inset -6px -6px 14px #c7d4ddb3,10px 10px 22px #c7d3dc47,-8px -8px 16px #ffffffe6}.brand-logo{object-fit:cover;width:100%;height:100%}.sidebar-brand{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;position:relative}.sidebar-brand-copy{justify-items:center;gap:4px;display:grid}.sidebar-brand-copy strong{color:#f8fbff;max-width:180px;line-height:1.15}.sidebar-brand span{color:#e2e8f0d1;max-width:190px;font-size:.92rem}.sidebar-mobile-close{color:#f8fbff;background:#ffffff14;border:1px solid #ffffff24;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:none;position:absolute;top:0;right:0}:root[data-theme=light] .sidebar-brand-copy strong,:root[data-theme=light] .sidebar-brand span,:root[data-theme=light] .sidebar-nav-title{color:#0f172a}:root[data-theme=light] .sidebar .sidebar-brand-copy strong{color:#12374b}:root[data-theme=light] .sidebar .sidebar-brand span{color:#6f8796}:root[data-theme=light] .sidebar .sidebar-nav-title{color:#7a909d}.sidebar-nav{gap:18px;margin-top:28px;display:grid}.sidebar-nav-section{gap:10px;display:grid}.sidebar-nav-title{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;margin:0;padding:0 10px;font-size:.72rem;font-weight:700}.sidebar-nav-group{gap:10px;display:grid}.nav-item{text-align:left;isolation:isolate;background:#ffffff14;border-color:#ffffff14;align-items:center;gap:12px;display:flex;position:relative;overflow:hidden}.nav-item>*{z-index:1;position:relative}:root[data-theme=light] .sidebar .nav-item{color:#335264;background:linear-gradient(145deg,#f7fbfd,#e8eff4);border-color:#fffffff5;box-shadow:inset 4px 4px 10px #ffffffeb,inset -6px -6px 12px #c9d5de9e}.nav-item.active{color:#fff;background:linear-gradient(#2563eb,#0f4f71);border-color:#2563eb66;transform:translateY(2px)scale(.992);box-shadow:inset 14px 14px 24px #07183385,inset -10px -10px 18px #5eaeff2e,inset 0 3px 5px #ffffff14,inset 0 -4px 6px #04112657,1px 1px 3px #07183314}.nav-item.active:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff0d,#0510241f);position:absolute;inset:3px;box-shadow:inset 16px 16px 24px #0718336b,inset -12px -12px 18px #6cbaff29,inset 2px 2px #ffffff1a,inset -2px -3px #06142b57}:root[data-theme=light] .nav-item.active,:root[data-theme=light] .sidebar .nav-item.active{color:#fff;background:linear-gradient(#2563eb,#0f4f71);border-color:#2563eb66;box-shadow:inset 14px 14px 24px #07183375,inset -10px -10px 18px #6cbaff38,inset 0 3px 5px #ffffff1a,inset 0 -4px 6px #0411264d,1px 1px 3px #2563eb14}:root[data-theme=light] .nav-item.active:before,:root[data-theme=light] .sidebar .nav-item.active:before{background:linear-gradient(#ffffff0f,#06142b24);box-shadow:inset 16px 16px 24px #0718336b,inset -12px -12px 18px #76c2ff2e,inset 2px 2px #ffffff24,inset -2px -3px #06142b57}:root[data-theme=light] .nav-item.active .nav-icon,:root[data-theme=light] .nav-item.active span{color:#fff}:root[data-theme=light] .sidebar .nav-item .nav-icon,:root[data-theme=light] .sidebar .nav-item span{color:inherit}:root[data-theme=light] .sidebar .nav-item.active .nav-icon,:root[data-theme=light] .sidebar .nav-item.active span{color:#fff}.nav-icon,.module-icon,.widget-icon{flex:none;width:18px;height:18px}.stat-card .widget-icon{width:20px;height:20px}.nav-item span{flex:1}.sidebar-footnote{background:#ffffff14;border:1px solid #ffffff14;border-radius:20px;margin-top:32px;padding:18px}:root[data-theme=light] .sidebar-footnote{background:#ffffff8f;border:1px solid #0f172a14}:root[data-theme=light] .sidebar .sidebar-footnote{background:linear-gradient(145deg,#f6fbfd,#e8eff4);border-color:#fffffff5;box-shadow:inset 5px 5px 12px #fffffff0,inset -6px -6px 12px #c9d6de99}.sidebar-footnote-head{align-items:center;gap:8px;display:flex}.sidebar-footnote-icon{width:18px;height:18px;color:var(--text-primary)}.sidebar-footnote strong{color:var(--text-primary);margin-top:6px;display:block}.sidebar-signout{justify-content:flex-start;width:100%;margin-top:14px}:root[data-theme=light] .sidebar-footnote strong,:root[data-theme=light] .sidebar-footnote span,:root[data-theme=light] .sidebar-footnote-icon{color:#d9f1ff}:root[data-theme=light] .sidebar .sidebar-footnote strong{color:#0f4f71}:root[data-theme=light] .sidebar .sidebar-footnote span,:root[data-theme=light] .sidebar .sidebar-footnote-icon{color:#6e8694}:root[data-theme=light] .sidebar-footnote strong{color:#0077b6}:root[data-theme=light] .sidebar-footnote span,:root[data-theme=light] .sidebar-footnote-icon{color:#8bd3f7}.portal-main{min-width:0;height:100vh;padding:28px;overflow-y:auto}.database-fullscreen-shell{grid-template-columns:1fr}.patient-form-fullscreen-shell{background:var(--bg-base);grid-template-columns:1fr}.database-fullscreen-main{padding:28px}.patient-form-fullscreen-main{padding:0}.patient-form-fullscreen-main .patients-section{min-height:100vh;padding:20px 24px 24px}.patient-form-fullscreen-main .optometrist-form-page-full{min-height:calc(100vh - 112px)}.portal-header{width:100%;display:block}.sidebar-toggle{color:#f8fbff;background:#0f172a29;border:1px solid #ffffff1f;border-radius:14px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:10px;display:none}:root[data-theme=light] .sidebar-toggle{color:#0f4f71;background:#ffffffd6;border-color:#ffffffeb}.portal-hero{box-sizing:border-box;background:linear-gradient(112deg, #02081299, #02081247), var(--portal-hero-wallpaper,radial-gradient(circle at top right, #0ea5e93d, transparent 24%), linear-gradient(135deg, #031525, #0f172a 54%, #164e63));background-position:50%;background-size:cover;border:1px solid #ffffff24;border-radius:32px;width:100%;max-width:100%;padding:28px 30px;display:block;position:relative;overflow:hidden;box-shadow:0 28px 70px #0003}.portal-hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 16% 20%,#22d3ee29,#0000 20%),radial-gradient(circle at 85% 70%,#3b82f62e,#0000 24%);position:absolute;inset:0}:root[data-theme=light] .portal-hero{background:linear-gradient(112deg, #233a569e, #3a5b7a61), var(--portal-hero-wallpaper,linear-gradient(135deg, #dbeafe, #e0f2fe));border-color:#0f172a14;box-shadow:0 24px 56px #0f172a1a}.portal-hero-main{z-index:1;justify-content:space-between;align-items:flex-start;gap:24px;display:flex;position:relative}.portal-hero-copy{gap:14px;max-width:min(780px,100%);display:grid}.portal-hero-copy h2{color:#fff;letter-spacing:-.05em;text-shadow:0 12px 26px #0000003d;margin:0;font-size:clamp(2rem,4vw,3.5rem);line-height:.95}:root[data-theme=light] .portal-hero-copy h2{color:#f8fbff;text-shadow:0 12px 26px #0f172a2e}.portal-hero-meta{flex-wrap:wrap;gap:10px;display:flex}.portal-hero-branch,.portal-hero-role{color:#fffffff0;background:#ffffff1f;border:1px solid #ffffff29;border-radius:999px;align-items:center;padding:8px 14px;font-size:.9rem;font-weight:600;display:inline-flex}:root[data-theme=light] .portal-hero-branch,:root[data-theme=light] .portal-hero-role{color:#f8fbff;background:#ffffff3d;border-color:#ffffff38}.portal-hero-page{gap:6px;display:grid}.portal-hero-page strong{color:#fff;letter-spacing:-.03em;font-size:clamp(1.35rem,2vw,1.9rem)}.portal-hero .header-copy{color:#e2e8f0e6;max-width:72ch}:root[data-theme=light] .portal-hero-page strong,:root[data-theme=light] .portal-hero .header-copy{color:#f8fbff}.portal-hero-actions{align-items:flex-start}.portal-hero .theme-toggle,.portal-hero .profile-chip,.portal-hero .branch-select select{color:#f8fbff;box-shadow:none;background:#ffffff1f;border-color:#ffffff29}.portal-hero .branch-select{color:#e2e8f0e0}.portal-hero .branch-select select option{color:#0f172a;background:#f8fbff}:root[data-theme=light] .portal-hero .theme-toggle,:root[data-theme=light] .portal-hero .profile-chip,:root[data-theme=light] .portal-hero .branch-select select{color:#dff4ff;background:#fff3;border-color:#fff3}:root[data-theme=light] .portal-hero .profile-chip-copy span,:root[data-theme=light] .portal-hero .profile-chevron{color:#fff}:root[data-theme=light] .portal-hero .branch-select{color:#dff4ffeb}:root[data-theme=light] .portal-hero .branch-select select{background:linear-gradient(#091e356b,#13314f4d);border-color:#ffffff3d}:root[data-theme=light] .portal-hero .branch-select select option{color:#0f172a;background:#fff}:root[data-theme=light] .portal-hero .eyebrow{color:#f8fbff;background:#fff3;border:1px solid #ffffff2e}.notes-workspace{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:start;gap:20px;display:grid}.notes-editor-panel,.notes-list-panel,.notes-editor-shell{gap:18px;display:grid}.notes-editor-shell label{color:var(--text-muted);gap:8px;display:grid}.notes-editor-shell input{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);background:#0f172abd;border-radius:16px;padding:13px 14px}:root[data-theme=light] .notes-editor-shell input{color:var(--text-primary);background:#fffffff5}.notes-rich-editor{gap:10px;display:grid}.editor-toolbar{flex-wrap:wrap;gap:10px;display:flex}.editor-tool{justify-content:center;min-width:52px}.notes-editor-surface{border:1px solid var(--border-soft);min-height:380px;color:var(--text-primary);background:linear-gradient(#ffffff0a,#fff0),#0f172abd;border-radius:22px;padding:18px;line-height:1.7;overflow-y:auto}.notes-editor-surface:focus{border-color:#7dd3fc6b;outline:none;box-shadow:0 0 0 1px #7dd3fc29}:root[data-theme=light] .notes-editor-surface{background:linear-gradient(#fffffffa,#f4f9fff0),#fff}:root[data-theme=light] .notes-editor-surface:focus{border-color:#0077b647;box-shadow:0 0 0 1px #0077b61a}.notes-editor-surface:empty:before{content:attr(data-placeholder);color:var(--text-muted)}.notes-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.danger-outline{color:#fca5a5;border-color:#ef44443d}:root[data-theme=light] .danger-outline{color:#b91c1c;border-color:#dc262633}.notes-search{gap:8px;display:grid}.notes-search input{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);background:#0f172abd;border-radius:16px;padding:13px 14px}:root[data-theme=light] .notes-search input{color:var(--text-primary);background:#fffffff5}.notes-list-shell{gap:14px;max-height:720px;padding-right:4px;display:grid;overflow-y:auto}.note-list-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:22px;gap:14px;padding:16px;display:grid}.note-list-card.active{border-color:#3b82f659;box-shadow:0 16px 36px #0f172a29}:root[data-theme=light] .note-list-card.active{border-color:#0077b642;box-shadow:0 16px 28px #02547a1f}.note-list-open{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:8px;padding:0;display:grid}.note-list-open strong,.note-list-open span,.note-list-open p,.note-list-open small{margin:0}.note-reminder-chip{color:#7dd3fc;background:#0ea5e924;border-radius:999px;align-items:center;width:fit-content;padding:6px 10px;display:inline-flex}:root[data-theme=light] .note-reminder-chip{color:#075985;background:#0284c71a}.note-list-open p{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.note-list-actions{flex-wrap:wrap;gap:10px;display:flex}.note-modal-panel{width:min(860px,100%)}.note-modal-reminder{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;margin:18px 0 0;padding:16px 18px}.note-modal-reminder strong,.note-modal-reminder p{margin:0}.note-modal-reminder p{color:var(--text-muted);margin-top:6px}.note-modal-body{border:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff08, #fff0), var(--surface-soft);border-radius:22px;margin-top:18px;padding:20px 22px;line-height:1.8}.note-modal-body p:first-child,.note-modal-body ul:first-child,.note-modal-body ol:first-child{margin-top:0}.note-modal-body p:last-child,.note-modal-body ul:last-child,.note-modal-body ol:last-child{margin-bottom:0}.report-cover-sheet,.report-sheet{background:linear-gradient(180deg, #ffffff05, #fff0), var(--panel)}.report-stack{gap:20px;margin-top:20px;display:grid}.report-command-panel{gap:20px;display:grid}.report-snapshot-bar{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.report-snapshot-card{border:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff0a, #fff0), var(--surface-soft);border-radius:18px;padding:16px 18px}.report-snapshot-card strong{margin:8px 0 6px;display:block}.report-snapshot-card p,.report-summary-card small,.report-export-box p{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.45}.report-type-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.report-type-card{border:1px solid var(--border-soft);background:var(--surface-elevated);color:var(--text-primary);text-align:left;border-radius:20px;gap:8px;padding:18px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.report-type-card:hover{border-color:#38bdf859;transform:translateY(-2px);box-shadow:0 18px 34px #0f172a2e}.report-type-card.is-active{background:linear-gradient(180deg, #2563eb29, #38bdf814), var(--surface-elevated);border-color:#38bdf88c}:root[data-theme=light] .report-type-card.is-active{background:linear-gradient(#0077b61f,#ffffffeb);border-color:#0077b666}.report-type-card p,.report-type-card span{margin:0}.report-toolbar-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.report-toolbar-grid>label,.report-toolbar-grid>.report-export-box,.report-toolbar-grid>.report-config-box{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;align-content:start;gap:8px;min-height:100%;padding:16px 18px;display:grid}.report-toolbar-grid select{width:100%}.report-config-box strong,.report-export-box strong{font-size:1rem;line-height:1.35}.report-options-list,.report-section-list{flex-wrap:wrap;align-content:flex-start;gap:10px;margin-top:4px;display:flex}.report-section-list{max-height:none;padding-right:0;overflow:visible}.report-check{border:1px solid var(--border-soft);background:var(--surface-elevated);border-radius:14px;flex:220px;align-items:flex-start;gap:10px;min-height:56px;padding:10px 12px;display:flex}.report-check input{margin-top:2px}.report-check span{color:var(--text-primary);line-height:1.4}.report-export-box{grid-column:span 3}.report-export-box .filter-actions-row{flex-wrap:wrap;gap:10px;display:flex}.report-export-box .filter-actions-row>button{flex:180px}.extract-bulk-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.extract-layout{gap:20px;margin-top:20px;display:grid}.extract-command-panel,.extract-table-panel{width:100%}.extract-filter-grid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:14px;display:grid}.extract-filter-grid label,.extract-filter-actions{color:var(--text-secondary);gap:8px;display:grid}.extract-filter-grid input,.extract-filter-grid select{border:1px solid var(--border-soft);background:var(--surface-soft);width:100%;color:var(--text-primary);font:inherit;border-radius:14px;padding:13px 14px}.extract-filter-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.extract-toolbar,.extract-auditor-actions{flex-wrap:wrap;gap:10px;display:flex}.extract-table-toolbar{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.extract-select-all{color:var(--text-secondary);align-items:center;gap:10px;display:inline-flex}.extract-select-all input,.extract-table input[type=checkbox]{width:auto}.extract-table th,.extract-table td{vertical-align:top}.extract-table th{white-space:nowrap}.extract-table td{min-width:0}.extract-table select,.extract-table textarea{border:1px solid var(--border-soft);background:var(--surface-elevated);width:100%;color:var(--text-primary);font:inherit;border-radius:12px;padding:10px 12px}.extract-table textarea{resize:vertical;min-height:74px}.extract-cell-subtext{color:var(--text-muted);margin-top:6px;font-size:.9rem}.extract-declared-amount{gap:8px;display:grid}.extract-preview-banner{border:1px solid var(--border-soft);background:var(--surface-soft);color:var(--text-secondary);border-radius:16px;padding:14px 16px}.extract-report-preview-panel{margin-top:20px}.extract-report-preview-frame{border:1px solid var(--border-soft);background:#fff;border-radius:18px;width:100%;min-height:760px}.extract-salary-modal{gap:18px;width:min(760px,100vw - 32px);max-width:760px;display:grid}.extract-table-panel .table-shell{width:100%;overflow-x:auto}.extract-table{width:100%;min-width:1420px}:root[data-theme=light] .extract-table select,:root[data-theme=light] .extract-table textarea,:root[data-theme=light] .extract-table select option,:root[data-theme=light] .extract-filter-grid input,:root[data-theme=light] .extract-filter-grid select,:root[data-theme=light] .extract-filter-grid select option{color:var(--text-primary);background:#fff}.report-export-box strong,.report-type-card strong{margin:0}.report-layout-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);align-items:stretch;gap:18px;display:grid}.report-filters-panel{min-height:100%}.report-sheet{gap:18px;display:grid}.report-sheet-meta,.report-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.report-sheet-meta div,.report-summary-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:14px 16px}.report-sheet-meta span,.report-summary-card span{color:var(--text-muted);font-size:.85rem;display:block}.report-sheet-meta strong,.report-summary-card strong{margin-top:8px;display:block}.report-row-copy{gap:4px;display:grid}.report-row-copy small{color:var(--text-muted);font-size:.82rem;line-height:1.35}.report-note-input{border:1px solid var(--border-soft);background:var(--surface-elevated);width:100%;min-height:64px;color:var(--text-primary);resize:vertical;font:inherit;border-radius:12px;padding:10px 12px}.report-editor-modal{gap:18px;width:min(1400px,100vw - 32px);max-width:1400px;display:grid}.report-preview-modal{width:min(1280px,100vw - 32px);max-width:1280px}.report-editor-shell{max-height:min(68vh,760px);overflow:auto}.report-editor-table{min-width:980px}.report-editor-check{align-items:center;gap:8px;font-size:.92rem;display:inline-flex}.report-editor-input,.report-editor-textarea{border:1px solid var(--border-soft);background:var(--surface-elevated);width:100%;color:var(--text-primary);font:inherit;border-radius:12px;padding:10px 12px}.report-editor-textarea{resize:vertical;min-height:64px}.report-balance-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 22px;display:grid}.report-balance-strip div{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:14px 16px}.report-balance-strip span{color:var(--text-muted);font-size:.85rem;display:block}.report-balance-strip strong{margin-top:8px;display:block}.report-page-header{border:1px solid var(--border-soft);text-align:center;background:var(--surface-soft);border-radius:20px;gap:6px;margin-bottom:18px;padding:18px;display:grid}.report-page-header strong{letter-spacing:.08em;font-size:1.1rem}.report-table{width:100%}.report-table td,.report-table th{font-size:.92rem}.report-simple-table{min-width:760px}.report-detail-table{min-width:980px}.report-detail-table td:nth-child(2),.report-detail-table td:nth-child(6){white-space:normal}.report-monthly-table th,.report-monthly-table td{white-space:nowrap}.report-monthly-table{min-width:720px}.report-section-row td{background:var(--accent-soft);color:var(--accent-strong);font-weight:700}.report-positive{color:#22c55e;font-weight:700}.report-negative{color:#f87171;font-weight:700}.memo-list-card{text-align:left;width:100%}.memo-page-flow{grid-template-columns:1fr;gap:18px;display:grid}.memo-filter-bar{grid-template-columns:minmax(260px,1.8fr) repeat(3,minmax(160px,1fr)) auto;align-items:end;gap:14px;display:grid}.memo-filter-bar label{border:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff0a, #fff0), var(--surface-soft);border-radius:20px;gap:8px;min-height:100%;padding:16px 18px;display:grid;box-shadow:inset 0 1px #ffffff08}.memo-filter-search{background:linear-gradient(180deg, #2563eb14, #38bdf808), var(--surface-soft)}.memo-filter-bar input,.memo-filter-bar select{border:1px solid var(--border-soft);width:100%;min-height:46px;color:var(--text-primary);font:inherit;background:#0f172a2e;border-radius:14px;padding:12px 14px}:root[data-theme=light] .memo-filter-bar label{background:linear-gradient(#fffffff0,#f5fafde6);border-color:#0077b61f;box-shadow:0 14px 24px #0077b60f,inset 0 1px #ffffffdb}:root[data-theme=light] .memo-filter-bar input,:root[data-theme=light] .memo-filter-bar select{background:#ffffffeb;border-color:#0077b624}.memo-filter-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;height:100%;display:flex}.memo-upload-field{gap:10px;display:grid}.memo-upload-label{color:var(--text-secondary);font-size:.95rem;font-weight:600}.memo-upload-trigger{background:linear-gradient(180deg, #2563eb14, #38bdf808), var(--surface-soft);cursor:pointer;border:1px dashed #38bdf857;border-radius:20px;gap:6px;padding:16px 18px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}.memo-upload-trigger:hover{border-color:#38bdf88a;transform:translateY(-1px);box-shadow:0 18px 34px #0f172a29}.memo-upload-trigger strong,.memo-upload-trigger span{display:block}.memo-upload-trigger span{color:var(--text-muted);font-size:.9rem;line-height:1.45}.memo-file-pill-list{flex-wrap:wrap;gap:10px;display:flex}.memo-file-pill{color:var(--text-primary);word-break:break-word;background:#38bdf81a;border:1px solid #38bdf838;border-radius:999px;align-items:center;max-width:100%;padding:8px 12px;font-size:.86rem;display:inline-flex}:root[data-theme=light] .memo-upload-trigger{background:linear-gradient(#0077b614,#fffffff5);border-color:#0077b638}:root[data-theme=light] .memo-upload-trigger:hover{box-shadow:0 16px 28px #0077b61f}:root[data-theme=light] .memo-file-pill{background:#0077b614;border-color:#0077b629}.memo-detail-flow{gap:16px}.memo-read-modal{width:min(1120px,100%)}.memo-detail-meta{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.memo-detail-chip{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;gap:6px;padding:14px 16px;display:grid}.memo-detail-chip strong{margin:0}.memo-body-card,.memo-signature-block,.memo-file-list{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;gap:10px;padding:16px 18px;display:grid}.memo-signature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.memo-body-card p{white-space:pre-wrap;color:var(--text-secondary);margin:0}.memo-signature-preview{border:1px solid var(--border-soft);object-fit:contain;background:#fff;border-radius:14px;max-width:240px;max-height:120px;padding:8px}.memo-file-list{align-items:start}.memo-status-pill{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:999px;align-items:center;padding:6px 10px;font-size:.82rem;display:inline-flex}.memo-status-pill.is-approved,.memo-status-pill.is-sent{color:#22c55e}.memo-status-pill.is-pending,.memo-status-pill.is-pending_approval{color:#f59e0b}.memo-status-pill.is-rejected{color:#ef4444}.memo-checkbox{align-items:center;gap:10px;display:flex}.memo-checkbox input{width:auto}.memo-decision-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;display:grid}.memo-decision-form label{gap:8px;display:grid}.memo-decision-field{border:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff0a, #fff0), var(--surface-soft);border-radius:20px;padding:16px 18px}.memo-decision-form select,.memo-decision-form textarea{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);font:inherit;background:#0f172a2e;border-radius:14px;padding:12px 14px}.memo-decision-form textarea{min-height:120px}.memo-decision-form button{align-self:end}:root[data-theme=light] .memo-decision-field{background:linear-gradient(#fffffff0,#f5fafde6);border-color:#0077b61f;box-shadow:0 14px 24px #0077b60f,inset 0 1px #ffffffdb}:root[data-theme=light] .memo-decision-form select,:root[data-theme=light] .memo-decision-form textarea{background:#ffffffeb;border-color:#0077b624}.payroll-controls-layout{grid-template-columns:minmax(0,1.45fr) minmax(320px,.95fr);align-items:start;gap:18px;display:grid}.payroll-filter-grid{align-content:start}.payroll-controls-side{gap:16px;display:grid}.payroll-control-summary{gap:14px;display:grid}.payroll-control-summary-card{background:linear-gradient(180deg, #ffffff0f, #fff0), var(--surface-soft);border:1px solid #94a3b82e;border-radius:18px;padding:16px 18px;box-shadow:0 18px 34px #0f172a1f}.payroll-control-summary-card span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:700;display:block}.payroll-control-summary-card strong{margin-top:10px;font-size:1.32rem;display:block}.payroll-control-summary-card p{color:var(--text-secondary);margin:8px 0 0;font-size:.88rem;line-height:1.45}.payroll-bulk-bar{background:linear-gradient(180deg, #ffffff0a, #fff0), var(--surface-soft);border:1px solid #94a3b82e;border-radius:18px;grid-template-columns:minmax(220px,1fr);align-items:start;gap:14px;margin-top:0;padding:16px 18px;display:grid;box-shadow:0 18px 34px #0f172a1f}.payroll-bulk-bar label{gap:8px;display:grid}.payroll-bulk-bar .filter-actions-row{justify-content:stretch}.payroll-bulk-bar .filter-actions-row .primary-button{width:100%}.payroll-row-actions{flex-wrap:wrap;justify-content:flex-start}.payroll-employee-cell{gap:8px}.payroll-staff-id{color:#7dd3fc;letter-spacing:.02em;background:#0ea5e91f;border:1px solid #38bdf833;border-radius:999px;align-items:center;width:fit-content;padding:6px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.payroll-salary-modal{max-width:760px}.payroll-salary-modal input[readonly]{opacity:.9;cursor:default}.payroll-process-modal{max-width:860px}.payroll-process-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0;display:grid}.payroll-process-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:16px 18px}.payroll-process-card span{color:var(--text-muted);font-size:.84rem;display:block}.payroll-process-card strong{margin-top:10px;display:block}.payroll-process-toggle{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:16px;min-height:52px;padding:14px 16px}.payroll-process-total{background:#0ea5e914;border:1px solid #38bdf833;border-radius:18px;margin-top:18px;padding:16px 18px}.payroll-process-total span{color:var(--text-muted);display:block}.payroll-process-total strong{margin-top:8px;font-size:1.2rem;display:block}.payroll-advance-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px}.payroll-advance-field{border:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff08, #fff0), var(--surface-soft);color:var(--text-secondary);border-radius:18px;gap:10px;padding:14px;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s;display:grid;box-shadow:0 14px 30px #0f172a1f}.payroll-advance-field:hover{border-color:#7dd3fc38;transform:translateY(-1px);box-shadow:0 18px 34px #0f172a29}.payroll-advance-field>span{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.8rem;font-weight:700}.payroll-advance-field input,.payroll-advance-field select,.payroll-advance-field textarea{width:100%;color:var(--text-primary);font:inherit;background:#0f172aad;border:1px solid #94a3b838;border-radius:14px;padding:14px 16px;transition:border-color .18s,box-shadow .18s,background .18s}.payroll-advance-field textarea{resize:vertical;min-height:120px}.payroll-advance-field input::placeholder,.payroll-advance-field textarea::placeholder{color:var(--text-muted)}.payroll-advance-field input:focus,.payroll-advance-field select:focus,.payroll-advance-field textarea:focus{background:#0f172aeb;border-color:#7dd3fc80;outline:none;box-shadow:0 0 0 4px #38bdf81a}.payroll-advance-toggle{align-items:center;gap:10px;min-height:60px;padding:0 2px;display:flex}.payroll-advance-summary{background:linear-gradient(135deg,#2563eb24,#38bdf814);border:1px solid #38bdf82e;border-radius:20px;padding:18px 20px}.payroll-advance-summary p{margin:6px 0 0}.payroll-advance-submit{justify-self:start;min-width:220px}:root[data-theme=light] .payroll-advance-field{background:linear-gradient(180deg, #fffffff2, #f0f9ffe6), var(--surface-soft);box-shadow:0 16px 28px #94a3b829}:root[data-theme=light] .payroll-control-summary-card,:root[data-theme=light] .payroll-bulk-bar{background:linear-gradient(180deg, #fffffff7, #f0f9ffeb), var(--surface-soft);box-shadow:0 16px 28px #94a3b829}:root[data-theme=light] .payroll-advance-field:hover{border-color:#0077b633;box-shadow:0 20px 34px #94a3b833}:root[data-theme=light] .payroll-advance-field input,:root[data-theme=light] .payroll-advance-field select,:root[data-theme=light] .payroll-advance-field textarea,:root[data-theme=light] .payroll-advance-field select option{color:var(--text-primary);background:#fff}:root[data-theme=light] .payroll-advance-field input:focus,:root[data-theme=light] .payroll-advance-field select:focus,:root[data-theme=light] .payroll-advance-field textarea:focus{border-color:#0077b64d;box-shadow:0 0 0 4px #0096c71f}.app-credit-footer{text-align:center;color:var(--text-muted);margin-top:28px;padding:18px 24px 24px;font-size:.92rem}.login-shell .app-credit-footer{grid-column:1/-1;margin-top:0;padding-top:0}.login-shell-modern .app-credit-footer{color:#f1f5f9f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-shadow:0 2px 12px #00000038;background:#0208177a;border:1px solid #ffffff2e;border-radius:999px;justify-self:center;width:fit-content;max-width:min(92vw,720px);margin:0 auto 28px;padding:12px 20px;box-shadow:0 16px 32px #02081733}:root[data-theme=light] .login-shell-modern .app-credit-footer{color:#0f172ae6;background:#ffffffd6;border-color:#0e749029;box-shadow:0 16px 30px #0f172a14}.header-copy{color:var(--text-muted);max-width:72ch;margin:8px 0 0;font-size:.88rem;line-height:1.45}.header-actions{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.icon-button{place-items:center;width:48px;height:48px;padding:0;display:inline-grid}.profile-chip{text-align:left;align-items:center;gap:12px;min-width:220px;display:flex}.profile-menu-shell{position:relative}.profile-chip-avatar,.settings-avatar-frame{background:linear-gradient(135deg,#2563eb4d,#38bdf829);border:1px solid #38bdf83d;border-radius:999px;place-items:center;display:grid;overflow:hidden}.profile-chip-avatar{flex:none;width:48px;height:48px}.profile-chip-image,.settings-avatar-image{object-fit:cover;width:100%;height:100%}.profile-chip-copy{gap:2px;display:grid}.profile-chip-copy strong{font-size:.95rem}.profile-chip-copy span,.settings-avatar-copy span{color:var(--text-muted);font-size:.88rem}.profile-chevron{width:16px;height:16px;color:var(--text-muted);transition:transform .18s}.profile-chevron.open{transform:rotate(180deg)}.profile-dropdown{z-index:20;border:1px solid var(--border-soft);background:color-mix(in srgb, var(--surface-elevated) 92%, black 8%);border-radius:18px;gap:6px;min-width:210px;padding:10px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 24px 48px #02061742}:root[data-theme=light] .profile-dropdown{background:#fff;border-color:#0077b624;box-shadow:0 24px 48px #0077b61f}.profile-dropdown-item{width:100%;color:var(--text-primary);font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;display:flex}.profile-dropdown-item:hover{background:var(--surface-soft);border-color:var(--border-soft)}.profile-dropdown-item.danger{color:#fda4af}.profile-dropdown-item.danger:hover{background:#f43f5e14;border-color:#f43f5e29}.profile-chip-icon{width:20px;height:20px}.stats-grid,.content-grid,.module-grid,.finance-grid{gap:18px;display:grid}@keyframes cardRiseIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:24px}.dashboard-stats-grid{gap:22px}.dashboard-intake-cta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin-top:0;margin-bottom:8px;display:flex}.dashboard-intake-cta-copy h3{margin:4px 0 0;font-size:1.25rem}.dashboard-intake-cta .header-copy{max-width:42ch;margin:6px 0 0}.stat-card,.panel,.module-card{background:var(--panel);border-radius:26px;padding:22px;animation:.45s both cardRiseIn}:root[data-theme=light] .panel,:root[data-theme=light] .stat-card,:root[data-theme=light] .module-card,:root[data-theme=light] .login-panel{background:linear-gradient(180deg, #fffffffc, #f8fcfff5), var(--panel);border-color:#0077b61f;box-shadow:0 20px 40px #0077b614,inset 0 1px #ffffffe6}.stat-card,.module-card{transition:transform .18s,border-color .18s,box-shadow .18s,background .18s;position:relative;overflow:hidden}.stat-card>*{z-index:1;position:relative}.stat-card strong{margin:14px 0 8px;font-size:2rem}.stat-card p,.module-card p{color:var(--text-muted);margin:0;font-size:.86rem;line-height:1.45}.stat-card:before,.module-card:after{content:"";position:absolute}.stat-card:before{opacity:.8;z-index:0;background:radial-gradient(circle,#38bdf81f,#0000 68%);border-radius:999px;width:96px;height:96px;transition:transform .22s,opacity .22s;inset:-24px -24px auto auto}.module-card:after{opacity:.78;background:radial-gradient(circle,#38bdf81f,#0000 68%);border-radius:999px;width:110px;height:110px;transition:transform .22s,opacity .22s;inset:auto -30px -34px auto}.stat-card:hover,.module-card:hover{border-color:#38bdf857;transform:translateY(-6px);box-shadow:0 24px 52px #080f1e42}.stat-card:hover:before,.module-card:hover:after{opacity:1;transform:scale(1.1)}.stat-card-icon,.module-card-icon{color:#7dd3fc;background:linear-gradient(135deg,#2563eb3d,#38bdf81f);border:1px solid #38bdf838;border-radius:15px;place-items:center;width:46px;height:46px;margin-bottom:10px;transition:transform .18s,background .18s,color .18s,border-color .18s;display:inline-grid}:root[data-theme=light] .stat-card-icon,:root[data-theme=light] .module-card-icon{color:#035981;background:linear-gradient(135deg,#0077b61f,#0077b60a);border-color:#0077b629}:root[data-theme=light] .widget-icon,:root[data-theme=light] .module-icon{color:#035981}:root[data-theme=light] .stat-card:hover,:root[data-theme=light] .module-card:hover{border-color:#0077b638;box-shadow:0 24px 44px #0077b61f}:root[data-theme=light] .stat-card:hover .stat-card-icon,:root[data-theme=light] .module-card:hover .module-card-icon{color:#fff;background:linear-gradient(135deg,#0077b6,#0096c7);border-color:#0077b63d}.stat-card:hover .stat-card-icon,.module-card:hover .module-card-icon{color:#bae6fd;background:linear-gradient(135deg,#2563eb4d,#38bdf82e);border-color:#7dd3fc6b}:root[data-theme=light] .stat-card,:root[data-theme=light] .module-card,:root[data-theme=light] .patient-record,:root[data-theme=light] .table-row,:root[data-theme=light] .stack-item,:root[data-theme=light] .manager-metric-card,:root[data-theme=light] .expense-summary-card,:root[data-theme=light] .finance-chip,:root[data-theme=light] .patient-form-section,:root[data-theme=light] .patient-lookup-panel{transition:transform .22s,box-shadow .22s,border-color .22s,background .22s}:root[data-theme=light] .stat-card:hover,:root[data-theme=light] .module-card:hover,:root[data-theme=light] .patient-record:hover,:root[data-theme=light] .table-row:hover,:root[data-theme=light] .stack-item:hover,:root[data-theme=light] .manager-metric-card:hover,:root[data-theme=light] .expense-summary-card:hover,:root[data-theme=light] .finance-chip:hover,:root[data-theme=light] .patient-form-section:hover,:root[data-theme=light] .patient-lookup-panel:hover{border-color:#0077b633;transform:translateY(-4px);box-shadow:0 20px 38px #0077b61f,inset 0 1px #ffffffe6}.content-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.content-grid>*,.module-grid>*,.stats-grid>*,.patient-records>*{animation:.48s both cardRiseIn}.content-grid>:nth-child(2),.module-grid>:nth-child(2),.stats-grid>:nth-child(2),.patient-records>:nth-child(2){animation-delay:50ms}.content-grid>:nth-child(3),.module-grid>:nth-child(3),.stats-grid>:nth-child(3),.patient-records>:nth-child(3){animation-delay:.1s}.content-grid>:nth-child(4),.module-grid>:nth-child(4),.stats-grid>:nth-child(4),.patient-records>:nth-child(4){animation-delay:.15s}:root[data-theme=light] .stats-grid .stat-card{background:linear-gradient(#eef4f8,#f8fbfd);border:1px solid #ffffffe6;box-shadow:inset 10px 10px 22px #ccd8e0f2,inset -10px -10px 22px #fffffff5,10px 10px 24px #c7d3dc7a,-8px -8px 18px #ffffffeb}:root[data-theme=light] .stats-grid .stat-card:before{opacity:1;background:linear-gradient(145deg,#ffffffa8,#d7e4ed33);border-radius:22px;width:82px;height:82px;inset:auto 18px 14px auto;box-shadow:inset 6px 6px 14px #ffffffbd,inset -6px -6px 14px #c1ced861}:root[data-theme=light] .stats-grid .stat-card:hover{border-color:#fffffffa;transform:translateY(-2px);box-shadow:inset 12px 12px 24px #cdd9e2eb,inset -12px -12px 24px #fffffffa,14px 14px 26px #c7d3dc6b,-10px -10px 20px #fffffff0}:root[data-theme=light] .stats-grid .stat-card .stat-card-icon{color:#5f7f92;background:linear-gradient(145deg,#f8fbfd,#e7eef3);border:1px solid #fffffff0;border-radius:18px;width:54px;height:54px;margin-bottom:14px;box-shadow:inset 4px 4px 10px #fffffff0,inset -5px -5px 10px #c8d4dda3}:root[data-theme=light] .stats-grid .stat-card .widget-icon{color:#4f7388}:root[data-theme=light] .stats-grid .stat-card span{color:#6f8796;letter-spacing:.02em;text-transform:uppercase;font-size:.8rem;font-weight:700}:root[data-theme=light] .stats-grid .stat-card strong{color:#10364c;letter-spacing:-.04em;font-size:clamp(1.9rem,2.3vw,2.5rem)}:root[data-theme=light] .stats-grid .stat-card p{color:#6d8392}:root[data-theme=light] .stats-grid .stat-card:hover .stat-card-icon{color:#4f7388;background:linear-gradient(145deg,#f8fbfd,#e7eef3);border-color:#fffffffa;box-shadow:inset 5px 5px 12px #fffffff5,inset -5px -5px 12px #c7d4ddb3}.panel-wide{grid-column:span 2}.table-list,.stack-list{gap:14px;margin-top:18px;display:grid}.chart-track{background:var(--border-soft);border-radius:999px;width:100%;height:12px;margin:10px 0 8px;overflow:hidden}.chart-bar{background:linear-gradient(135deg,#38bdf8,#2563eb);border-radius:999px;height:100%}.chart-bar.tone-success{background:linear-gradient(135deg,#34d399,#059669)}.chart-bar.tone-info{background:linear-gradient(135deg,#60a5fa,#2563eb)}.chart-bar.tone-warning{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.chart-bar.tone-danger{background:linear-gradient(135deg,#f87171,#ef4444)}.trend-card{margin-bottom:18px}.trend-hero{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.trend-hero-stat{background:#ffffff0a;border-radius:18px;padding:12px 14px}.trend-hero-stat span{color:var(--text-muted);font-size:.85rem;display:block}.trend-hero-stat strong{margin-top:6px;font-size:1.05rem;display:block}.trend-hero-stat p{color:var(--text-secondary);margin:6px 0 0;font-size:.88rem}.trend-svg{width:100%;height:auto;margin-bottom:12px;display:block}.trend-axis{stroke:var(--border-soft);stroke-width:2px}.trend-line{stroke:#0ea5e9;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.trend-point{fill:#0284c7}.trend-labels{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:12px;display:grid}.trend-label{background:var(--surface-soft);border-radius:16px;padding:12px 14px}.trend-label strong{word-break:break-word;margin-top:0;font-size:.98rem;line-height:1.35;display:block}.trend-label span{color:var(--text-muted);margin-top:6px;display:block}@media (width<=1100px){.expense-visual-grid{grid-template-columns:1fr}}.category-manager-inline details{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:14px 16px}.category-manager-inline summary{cursor:pointer;font-weight:600}.category-manager-inline details[open] summary{margin-bottom:14px}.expense-history-layout{grid-template-columns:minmax(0,1fr);align-items:start}.expense-visual-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.expense-trend-panel{margin-top:18px}.visual-card{border:1px solid var(--border-soft);background:radial-gradient(circle at top right, #38bdf81f, transparent 32%), linear-gradient(180deg, #ffffff08, transparent), var(--surface-soft);border-radius:22px;padding:18px}.visual-card-head{justify-content:space-between;align-items:start;gap:12px;margin-bottom:14px;display:flex}.visual-card-head h3{margin:4px 0 0}.chart-value{color:var(--text-primary);font-weight:700}.table-row,.stack-item{background:var(--surface-soft);border-radius:18px;padding:16px 18px}:root[data-theme=light] .table-row,:root[data-theme=light] .stack-item,:root[data-theme=light] .patient-record,:root[data-theme=light] .expense-summary-card,:root[data-theme=light] .finance-chip,:root[data-theme=light] .manager-metric-card,:root[data-theme=light] .patient-form-section,:root[data-theme=light] .patient-lookup-panel,:root[data-theme=light] .sidebar-footnote,:root[data-theme=light] .message-banner{background:linear-gradient(#fffffff5,#f5fafde6);border-color:#0077b61f;box-shadow:0 14px 28px #0077b60f,inset 0 1px #ffffffe0}:root[data-theme=light] .portal-table th{color:#0b5f8a;background:#0077b60f}:root[data-theme=light] .portal-table tbody tr:hover,:root[data-theme=light] .table-row-active{background:#0077b60d}.status-pill{background:#94a3b829;padding:8px 12px;font-size:.82rem}.status-pending{color:#fbbf24}.status-paid{color:#4ade80}.status-claimed{color:#38bdf8}.status-seen{color:#22c55e}.status-checked-in{color:#38bdf8}.status-completed{color:#4ade80}.finance-grid{margin-top:18px}.module-section{margin-top:22px}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px}.stack-meta{text-align:right}.patients-section{gap:20px;display:grid}.patients-header h3{margin:8px 0 0}.message-banner{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:14px 18px}.audit-log-details{min-width:240px}.audit-log-details summary{cursor:pointer;color:var(--accent-strong)}.audit-log-payload{white-space:pre-wrap;word-break:break-word;max-width:420px;color:var(--text-secondary);background:var(--surface-soft);border:1px solid var(--border-soft);border-radius:14px;margin-top:10px;padding:12px;font-size:.8rem}.message-banner.error{color:#fecdd3;border-color:#f43f5e3d}.message-banner.success{color:#86efac;border-color:#22c55e3d}.success-toast-stack{z-index:3000;pointer-events:none;gap:12px;width:min(420px,100vw - 28px);display:grid;position:fixed;top:22px;right:22px}.success-toast{color:#dcfce7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#16a34a38,#15803d1f),#071810f5;border:1px solid #22c55e57;border-radius:18px;padding:16px 18px;animation:4.2s forwards success-toast-popup;box-shadow:0 18px 42px #04120a47}.success-toast strong,.success-toast span{display:block}.success-toast strong{letter-spacing:.08em;text-transform:uppercase;color:#86efac;margin-bottom:6px;font-size:.74rem;font-weight:700}@keyframes success-toast-popup{0%{opacity:0;transform:translateY(-14px)scale(.98)}12%,78%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.98)}}@media (width<=640px){.success-toast-stack{width:calc(100vw - 28px);top:auto;bottom:14px;right:14px}}.patient-stats-grid{margin-top:0}.patient-stat-card.pending{border-top:4px solid #f59e0b}.patient-stat-card.seen{border-top:4px solid #22c55e}.patient-stat-card.today{border-top:4px solid #38bdf8}.patient-stat-card.total{border-top:4px solid #94a3b8}.patients-grid{grid-template-columns:minmax(320px,.92fr) minmax(420px,1.08fr);gap:20px;display:grid}.patient-manager-shell{gap:20px;display:grid}.optometrist-patient-layout{grid-template-columns:1fr;gap:20px;display:grid}.optometrist-form-page{gap:20px;display:grid}.optometrist-patient-directory,.optometrist-patient-focus{gap:18px;display:grid}.optometrist-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.optometrist-patient-list{gap:12px;display:grid}.optometrist-patient-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:20px;gap:12px;padding:16px 18px;display:grid}.optometrist-patient-card.is-selected{background:linear-gradient(145deg, #2563eb1f, #38bdf80f), var(--surface-soft);border-color:#38bdf875;box-shadow:inset 0 0 0 1px #38bdf82e}.optometrist-patient-card-main{text-align:left;width:100%;color:var(--text-primary);background:0 0;border:0;gap:12px;padding:0;display:grid}.optometrist-patient-card-actions{flex-wrap:wrap;gap:10px;display:flex}.optometrist-patient-card-actions .ghost-button{border-radius:14px;padding:10px 14px}:root[data-theme=light] .patient-management-action-button{color:#0f5f96;background:linear-gradient(#fffffffa,#f4fafff5);border-color:#0f5f9657;box-shadow:0 10px 20px #0077b614,inset 0 1px #fffffff0}:root[data-theme=light] .patient-management-action-button:hover{color:#0b4f7d;background:linear-gradient(#ebf7fffa,#f8fcfffa);border-color:#0077b66b;box-shadow:0 12px 22px #0077b61f,inset 0 1px #fffffffa}.optometrist-patient-card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.optometrist-patient-card-top strong{margin-bottom:4px;display:block}.optometrist-patient-card-top span:not(.status-pill){color:var(--text-muted);font-size:.88rem}.optometrist-patient-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.summary-tile,.optometrist-workspace-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:20px;padding:16px 18px}.summary-tile span,.optometrist-checklist span{color:var(--text-muted);font-size:.84rem;display:block}.summary-tile strong,.optometrist-checklist strong{margin-top:8px;display:block}.optometrist-workspace-stack{gap:16px;display:grid}.optometrist-note-sheet{border:1px solid var(--border-soft);background:#0f172a2e;border-radius:18px;padding:16px 18px}:root[data-theme=light] .optometrist-note-sheet{background:#0077b60a}.optometrist-note-sheet pre{white-space:pre-wrap;font:inherit;color:var(--text-secondary);margin:0;line-height:1.6}.optometrist-modal-search-results{gap:10px;margin-top:14px;display:grid}.optometrist-modal-search-card{border:1px solid var(--border-soft);background:var(--surface-soft);width:100%;color:var(--text-primary);text-align:left;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.optometrist-modal-search-card span{color:var(--text-muted);font-size:.88rem}.optometrist-modal-search-card:hover{border-color:#38bdf86b;box-shadow:0 12px 28px #0f172a24}.optometrist-management-form,.optometrist-exam-body,.optometrist-exam-footer,.optometrist-workspace-card{position:relative}.optometrist-management-form input,.optometrist-management-form select,.optometrist-management-form textarea,.optometrist-exam-body input,.optometrist-exam-body select,.optometrist-exam-body textarea,.optometrist-exam-footer textarea{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);background:#0f172a38;border-radius:14px;margin-top:8px;padding:13px 14px;transition:border-color .2s,box-shadow .2s,background .2s}:root[data-theme=light] .optometrist-management-form input,:root[data-theme=light] .optometrist-management-form select,:root[data-theme=light] .optometrist-management-form textarea,:root[data-theme=light] .optometrist-exam-body input,:root[data-theme=light] .optometrist-exam-body select,:root[data-theme=light] .optometrist-exam-body textarea,:root[data-theme=light] .optometrist-exam-footer textarea{background:#fffffff5}.optometrist-management-form input:focus,.optometrist-management-form select:focus,.optometrist-management-form textarea:focus,.optometrist-exam-body input:focus,.optometrist-exam-body select:focus,.optometrist-exam-body textarea:focus,.optometrist-exam-footer textarea:focus{border-color:#38bdf8a6;outline:none;box-shadow:0 0 0 3px #38bdf824}.optometrist-management-form label,.optometrist-exam-body label,.optometrist-exam-footer label{color:var(--text-secondary);font-size:.94rem}.optometrist-prescription-history{gap:14px;display:grid}.optometrist-prescription-card{border:1px solid var(--border-soft);background:#0f172a29;border-radius:18px;gap:12px;padding:16px 18px;display:grid}:root[data-theme=light] .optometrist-prescription-card{background:#0077b60a}.medical-report-toolbar{margin-top:18px}.medical-report-sheet{gap:20px;margin-top:18px;display:grid}.medical-report-header{border-bottom:1px solid var(--border-soft);grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding-bottom:14px;display:grid}.medical-report-logo{object-fit:cover;border:1px solid var(--border-soft);border-radius:50%;width:72px;height:72px}.medical-report-header h2{margin:0;font-size:1.25rem}.medical-report-header p{color:var(--text-muted);margin:2px 0}.medical-report-date{text-align:right;color:var(--text-secondary)}.medical-report-block{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:16px;gap:12px;padding:16px;display:grid}.medical-report-block h3{margin:0;font-size:1rem}.medical-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;display:grid}.medical-report-grid p{color:var(--text-secondary);margin:0}.medical-report-tags{flex-wrap:wrap;gap:10px;display:flex}.medical-report-version-list{gap:12px;display:grid}.medical-report-footer{border-top:1px solid var(--border-soft);padding-top:12px}.medical-report-footer p{color:var(--text-muted);margin:4px 0}.optometrist-prescription-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.optometrist-records-split{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px;margin-top:18px;display:grid}.optometrist-exam-modal{width:min(1680px,100vw - 24px);max-width:1680px;max-height:calc(100vh - 24px);overflow:hidden}.optometrist-exam-workspace.is-page{gap:16px;min-height:calc(100vh - 240px);display:grid}.optometrist-exam-workspace.is-page .optometrist-exam-tabs{flex-wrap:nowrap;padding-bottom:6px;overflow-x:auto}.optometrist-exam-workspace.is-page .optometrist-exam-body{min-height:0;padding-right:4px}.optometrist-exam-workspace.is-page .optometrist-exam-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.optometrist-exam-workspace.is-page .optometrist-eye-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.optometrist-exam-workspace.is-page .optometrist-exam-nav,.optometrist-exam-workspace.is-page .optometrist-exam-footer{margin-top:14px}.optometrist-form-page-full{padding:0}.patient-records-modal,.patient-management-modal{width:min(1680px,100vw - 24px);max-height:calc(100vh - 24px);overflow-y:auto}.patient-name-link{appearance:none;color:var(--accent-strong);font:inherit;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.patient-name-link:hover,.patient-name-link:focus-visible{color:var(--text-primary)}.patient-modal-overview-grid,.patient-payment-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.patient-name-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.patient-payment-summary div,.patient-payment-row{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:12px;justify-content:space-between;gap:14px;padding:12px 14px;display:flex}.patient-payment-summary div{gap:4px;display:grid}.patient-payment-summary span,.patient-payment-row span{color:var(--text-muted);font-size:.86rem}.patient-payment-list{gap:10px;display:grid}.patient-payment-row>div{gap:4px;min-width:0;display:grid}.patient-payment-row>div:last-child{text-align:right}.optometrist-exam-tabs{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.optometrist-exam-tab{color:#506273;font:inherit;background:linear-gradient(#fff,#eef3f8);border:1px solid #94a3b82e;border-radius:16px;padding:12px 16px;font-weight:600;transition:transform .14s,border-color .14s,box-shadow .14s,background .14s,color .14s;box-shadow:inset 8px 8px 16px #d2dce6c7,inset -8px -8px 16px #fffffffa,6px 6px 16px #0f172a14}.optometrist-exam-tab.is-active{color:#fff;background:linear-gradient(#2563eb,#0f4f71);border-color:#2563eb52;transform:translateY(1px);box-shadow:inset 2px 2px 8px #ffffff1f,10px 10px 20px #2563eb38,-3px -3px 8px #ffffff80}.optometrist-exam-body{gap:16px;margin-top:18px;padding-right:6px;display:grid;overflow-y:auto}.optometrist-exam-nav{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:18px;padding:16px 18px;display:grid}.optometrist-exam-nav-status{text-align:center;gap:4px;display:grid}.optometrist-exam-nav-status span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.84rem}.optometrist-exam-nav-status strong{color:var(--text-primary);font-size:1rem}.optometrist-exam-save-state{gap:4px;display:grid}.optometrist-exam-save-state span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.optometrist-exam-save-state strong{color:var(--text-primary);font-size:.96rem}.form-feedback{margin:0;font-size:.9rem;font-weight:600}.form-feedback.success{color:#22c55e}.form-feedback.error{color:#f87171}.optometrist-exam-footer{border-top:1px solid var(--border-soft);gap:16px;margin-top:18px;padding-top:18px;display:grid}.optometrist-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.optometrist-exam-grid-wide{grid-template-columns:1fr}.optometrist-exam-stack{gap:16px;display:grid}.optometrist-eye-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.optometrist-eye-grid.is-compact{gap:12px}.optometrist-workspace-card.is-compact,.refraction-compact-card{padding:14px 16px}.refraction-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}:root[data-theme=light] .optometrist-exam-tab.is-active{color:#fff;background:linear-gradient(#2563eb,#0f4f71);border-color:#2563eb47;box-shadow:inset 2px 2px 8px #ffffff24,10px 10px 20px #2563eb33,-3px -3px 8px #ffffff94}:root[data-theme=light] .optometrist-exam-nav{background:#f8fbff;border-color:#94a3b83d}.optometrist-check-option{background:linear-gradient(#fbfdff,#edf3f8);border:1px solid #94a3b82e;border-radius:16px;align-items:center;gap:12px;min-height:54px;padding:14px 16px;display:flex;box-shadow:inset 8px 8px 16px #d2dce6b8,inset -8px -8px 16px #fffffff5}:root[data-theme=light] .optometrist-check-option{background:linear-gradient(#fbfdff,#edf3f8)}.optometrist-check-option span{color:#526475;font-size:.98rem;font-weight:700}.optometrist-check-option input[type=checkbox]{accent-color:#2563eb;flex:none;width:22px;height:22px}.optometrist-prefill-card{background:linear-gradient(#fffffffa,#f0f6fbf2)}.optometrist-prefilled-field{color:#456173;font-weight:600}.preliminary-table-shell{overflow-x:auto}.preliminary-tests-table th,.preliminary-tests-table td{vertical-align:top}.preliminary-performed-stack,.preliminary-select-column{gap:10px;display:grid}.preliminary-tests-table label{margin-bottom:0}.optometrist-exam-workspace input,.optometrist-exam-workspace select,.optometrist-exam-workspace textarea{color:#243746;background:linear-gradient(#fff,#f0f5fa);border:1px solid #94a3b829;border-radius:14px;width:100%;min-height:54px;padding:14px 16px;font-size:1rem;line-height:1.5;box-shadow:inset 7px 7px 14px #d4dee8b8,inset -7px -7px 14px #fffffff5}.optometrist-exam-workspace input:focus,.optometrist-exam-workspace select:focus,.optometrist-exam-workspace textarea:focus{border-color:#0e749042;outline:none;box-shadow:inset 7px 7px 14px #d4dee8b8,inset -7px -7px 14px #fffffff5,0 0 0 3px #7dd3fc33}.optometrist-exam-workspace select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#5b7082 50%),linear-gradient(135deg,#5b7082 50%,#0000 50%),linear-gradient(#fff,#f0f5fa);background-position:calc(100% - 20px) calc(50% - 3px),calc(100% - 14px) calc(50% - 3px),0 0;background-repeat:no-repeat;background-size:6px 6px,6px 6px,100% 100%;padding-right:44px}.optometrist-exam-workspace textarea{resize:vertical;min-height:110px}.optometrist-exam-workspace label{font-size:.98rem}.optometrist-workspace-card h4{font-size:1.08rem}.optometrist-upload-list{gap:10px;display:grid}.upload-action-panel{background:linear-gradient(180deg, #2563eb14, #38bdf808), var(--surface-soft);border:1px dashed #38bdf857;border-radius:18px;gap:12px;padding:16px 18px;display:grid}:root[data-theme=light] .upload-action-panel{background:linear-gradient(#0077b614,#fffffff0);border-color:#0077b63d}.upload-action-copy{margin:0}.hidden-file-input{display:none}.optometrist-upload-item{border:1px solid var(--border-soft);background:#0f172a29;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}:root[data-theme=light] .optometrist-upload-item{background:#0077b60a}.optometrist-upload-meta{gap:4px;min-width:0;display:grid}.optometrist-upload-meta strong,.optometrist-upload-meta span{overflow-wrap:anywhere}.optometrist-upload-remove{flex:none;padding:10px 14px}.optometrist-inline-actions{flex-wrap:wrap;gap:10px;display:flex}.optometrist-checklist{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.optometrist-checklist>div{background:#0f172a2e;border-radius:16px;padding:12px 14px}:root[data-theme=light] .optometrist-checklist>div{background:#0077b60d}.optometrist-bullet-list{color:var(--text-secondary);gap:8px;margin:0;padding-left:18px;display:grid}.optometrist-form-preview{gap:12px;display:grid}.optometrist-form-preview section{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:20px;grid-template-columns:auto 1fr;gap:14px;padding:16px 18px;display:grid}.optometrist-form-preview strong{margin-bottom:4px;display:block}.optometrist-form-preview p{color:var(--text-muted);margin:0}.optometrist-form-step{color:#dbeafe;background:linear-gradient(135deg,#2563eb4d,#38bdf824);border-radius:12px;place-items:center;width:38px;height:38px;font-size:.82rem;font-weight:700;display:inline-grid}.empty-state-panel{text-align:center;place-content:center;gap:8px;min-height:320px;display:grid}@media (width<=920px){.optometrist-patient-layout,.optometrist-details-grid,.optometrist-patient-summary,.optometrist-checklist,.optometrist-exam-grid,.optometrist-eye-grid,.optometrist-prescription-grid,.optometrist-records-split{grid-template-columns:1fr}.optometrist-inline-actions{flex-direction:column;align-items:stretch}.optometrist-form-preview section{grid-template-columns:1fr}.medical-report-header{text-align:left;grid-template-columns:1fr}.medical-report-date{text-align:left}.medical-report-grid{grid-template-columns:1fr}}@media print{.sidebar,.header-actions,.no-print-area{display:none!important}.portal-shell{grid-template-columns:1fr!important}.portal-main{padding:0!important}.report-print-area{box-shadow:none!important;background:#fff!important;border:0!important}}.patient-manager-panel,.patient-database-panel{gap:18px;display:grid}.patient-manager-hero{background:radial-gradient(circle at 100% 0,#3b82f629,#0000 28%),linear-gradient(155deg,#0f172ae6,#1e293ba3);border:1px solid #60a5fa2e;border-radius:24px;gap:16px;padding:22px;display:grid}:root[data-theme=light] .patient-manager-hero{background:radial-gradient(circle at 100% 0,#0077b61f,#0000 28%),linear-gradient(155deg,#fffffffa,#eff8fceb);border-color:#0077b629}.patient-manager-insights-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.patient-insight-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:22px;gap:14px;padding:18px;display:grid}.patient-insight-card.tone-blue{background:linear-gradient(145deg, #3b82f624, #0f172a14), var(--surface-soft)}.patient-insight-card.tone-amber{background:linear-gradient(145deg, #f59e0b1f, #0f172a0f), var(--surface-soft)}.patient-insight-card.tone-slate{background:linear-gradient(145deg, #94a3b81f, #0f172a0f), var(--surface-soft)}.patient-insight-card.tone-teal{background:linear-gradient(145deg, #14b8a61f, #0f172a0f), var(--surface-soft)}.patient-insight-card.tone-violet{background:linear-gradient(145deg, #6366f11f, #0f172a0f), var(--surface-soft)}.patient-insight-card-header strong{font-size:1rem}.patient-insight-card-body{gap:10px;display:grid}.patient-insight-metric{background:#0f172a3d;border-radius:16px;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}:root[data-theme=light] .patient-insight-metric{background:#ffffffd1}.patient-insight-metric span,.patient-breakdown-row div span,.patient-table-primary span{color:var(--text-muted);font-size:.86rem}.patient-insight-metric strong,.patient-breakdown-row strong,.patient-table-primary strong{font-size:.95rem}.patient-breakdown-list{gap:10px;display:grid}.patient-breakdown-row{background:#0f172a33;border-radius:16px;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}:root[data-theme=light] .patient-breakdown-row{background:#ffffffc7}.patient-breakdown-row div{gap:4px;display:grid}.patient-manager-chip-row .finance-chip{min-width:180px}.patient-database-table td{vertical-align:top}.patient-table-primary{gap:4px;min-width:140px;display:grid}.patient-table-actions{gap:8px;min-width:180px;display:grid}.patient-table-actions select,.patient-table-actions input{border:1px solid var(--border-soft);background:var(--surface-soft);width:100%;color:var(--text-primary);font:inherit;border-radius:12px;padding:10px 12px}.patient-form-panel,.patient-list-panel{gap:18px;display:grid}.patient-form-panel{align-content:start}.patient-reception-shell,.patient-reception-panel{gap:18px;display:grid}.patient-reception-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.patient-reception-hero,.patient-reception-lookup{margin-bottom:2px}.patient-reception-searchbar{margin-bottom:6px}.patient-reception-filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end}.patient-table-summary{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.patient-table-summary span{color:var(--text-muted);font-size:.92rem}.patient-history-table-shell{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:22px;overflow-x:auto}.optometrist-records-directory-panel{gap:18px;display:grid}.optometrist-records-table-shell{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:22px}.optometrist-records-table td{vertical-align:middle}.patient-history-table td{vertical-align:top}.patient-table-stack{min-width:120px;color:var(--text-muted);gap:4px;font-size:.9rem;display:grid}.patient-table-assignment{gap:8px;min-width:210px;display:grid}.patient-table-assignment select,.patient-table-assignment input{border:1px solid var(--border-soft);background:var(--surface-elevated);width:100%;color:var(--text-primary);font:inherit;border-radius:12px;padding:10px 12px}:root[data-theme=light] .patient-table-assignment select,:root[data-theme=light] .patient-table-assignment input{background:#fff}.patient-intake-hero{background:radial-gradient(circle at 100% 0,#38bdf824,#0000 34%),linear-gradient(160deg,#0f172aeb,#080f1cb8);border:1px solid #7dd3fc29;border-radius:24px;gap:16px;padding:20px;display:grid}:root[data-theme=light] .patient-intake-hero{background:radial-gradient(circle at 100% 0,#0077b61f,#0000 34%),linear-gradient(160deg,#fffffffa,#ecf7fceb);border-color:#0077b624}:root[data-theme=light] .patient-intake-kicker{color:#0077b6;background:#0077b61f}:root[data-theme=light] .patient-intake-hero strong{color:#0f172a}:root[data-theme=light] .patient-intake-highlights span{color:#0b5f8a;background:#0077b60f;border-color:#0077b61f}.patient-intake-kicker{color:#bae6fd;letter-spacing:.08em;text-transform:uppercase;background:#3b82f62e;border-radius:999px;width:fit-content;padding:7px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.patient-intake-hero strong{margin-top:12px;font-size:1.08rem;line-height:1.45;display:block}.patient-intake-highlights{flex-wrap:wrap;gap:10px;display:flex}.patient-intake-highlights span{color:var(--text-secondary);background:#0f172a85;border:1px solid #94a3b82e;border-radius:999px;padding:10px 14px;font-size:.84rem}.patient-lookup-panel{background:radial-gradient(circle at top left, #38bdf829, transparent 30%), linear-gradient(145deg, #2563eb1f, #0f172a14), var(--surface-soft);border:1px solid #38bdf82e;border-radius:24px;gap:16px;padding:20px;display:grid;box-shadow:inset 0 1px #ffffff08}.patient-lookup-header{justify-content:space-between;align-items:start;gap:14px;display:flex}.patient-lookup-status{color:#bbf7d0;white-space:nowrap;background:#22c55e14;border:1px solid #22c55e38;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-size:.84rem;display:inline-flex}.patient-lookup-status-live{color:#166534;background:#16a34a24;border-color:#16a34a57}.patient-lookup-status-offline{color:#991b1b;background:#dc26261f;border-color:#dc262642}.patient-lookup-status-dot{background:#4ade80;border-radius:999px;width:8px;height:8px;box-shadow:0 0 0 6px #4ade801f}.patient-lookup-status-live .patient-lookup-status-dot{background:#16a34a;box-shadow:0 0 0 6px #16a34a24}.patient-lookup-status-offline .patient-lookup-status-dot{background:#dc2626;box-shadow:0 0 0 6px #dc26261f}.patient-search-shell{background:linear-gradient(135deg, #0f172ab8, #1e293b94), var(--surface-elevated);border:1px solid #7dd3fc2e;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 16px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}:root[data-theme=light] .patient-search-shell{background:linear-gradient(135deg, #fffffffa, #f0f9fdf0), var(--surface-elevated);border-color:#0077b629;box-shadow:0 14px 28px #0077b614,inset 0 1px #ffffffeb}.patient-search-shell:focus-within{border-color:#7dd3fc85;transform:translateY(-1px);box-shadow:0 18px 34px #0206173d}:root[data-theme=light] .patient-search-shell:focus-within{border-color:#0077b661;box-shadow:0 18px 34px #0077b624,0 0 0 4px #0077b614}.patient-search-icon{color:#e0f2fe;background:linear-gradient(135deg,#2563eb57,#38bdf82e);border-radius:14px;place-items:center;width:40px;height:40px;font-size:1.05rem;display:inline-grid}:root[data-theme=light] .patient-search-icon{color:#fff;background:linear-gradient(135deg,#0077b6,#0096c7);box-shadow:0 10px 20px #0077b62e}.patient-search-shell input{min-width:0;color:var(--text-primary);font:inherit;background:0 0;border:0;font-size:1rem}.patient-search-shell input::placeholder{color:#94a3b8eb}:root[data-theme=light] .patient-search-shell input::placeholder{color:#5c7b8be6}.patient-search-shell input:focus{outline:none}.patient-search-hint{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;background:#0f172abf;border-radius:999px;padding:8px 10px;font-size:.75rem}:root[data-theme=light] .patient-search-hint{color:#0b5f8a;background:#0077b614;border:1px solid #0077b61f}.patient-form-grid,.patient-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.patient-form-grid-nested{margin-top:14px}.patient-form-section{background:linear-gradient(180deg, #0f172a52, #0f172a14), var(--surface-soft);border:1px solid #94a3b824;border-radius:24px;padding:18px}.patient-form-section-header{align-items:start;gap:14px;display:flex}.patient-form-section-step{color:#dbeafe;background:linear-gradient(135deg,#2563eb52,#38bdf824);border-radius:14px;place-items:center;width:42px;height:42px;font-size:.85rem;font-weight:700;display:inline-grid}:root[data-theme=light] .patient-form-section-step{color:#0b4f71;background:linear-gradient(135deg,#0077b633,#0ea5e91a);border:1px solid #0077b633;box-shadow:0 10px 20px #0077b61f,inset 0 1px #fffc}.patient-form-section-header strong{margin-bottom:4px;font-size:1rem;display:block}.patient-form-section-header p{color:var(--text-muted);margin:0;font-size:.84rem;line-height:1.4}.patient-form-grid label,.patient-filter-grid label,.assign-grid label{color:var(--text-secondary);gap:8px;font-size:.92rem;font-weight:600;display:grid}.patient-form-grid input,.patient-form-grid select,.patient-form-grid textarea,.patient-filter-grid input,.patient-filter-grid select,.assign-grid input,.assign-grid select{border:1px solid var(--border-soft);background:var(--surface-soft);color:var(--text-primary);font:inherit;border-radius:14px;padding:13px 14px;transition:border-color .18s,background .18s,box-shadow .18s}.patient-form-grid input:focus,.patient-form-grid select:focus,.patient-form-grid textarea:focus,.patient-filter-grid input:focus,.patient-filter-grid select:focus,.assign-grid input:focus,.assign-grid select:focus{background:#0f172aeb;border-color:#7dd3fc6b;box-shadow:0 0 0 4px #38bdf814}:root[data-theme=light] .patient-form-grid input:focus,:root[data-theme=light] .patient-form-grid select:focus,:root[data-theme=light] .patient-form-grid textarea:focus,:root[data-theme=light] .patient-filter-grid input:focus,:root[data-theme=light] .patient-filter-grid select:focus,:root[data-theme=light] .assign-grid input:focus,:root[data-theme=light] .assign-grid select:focus{color:var(--text-primary);background:#fff;border-color:#0077b647;box-shadow:0 0 0 4px #0096c71f}:root[data-theme=light] .patient-form-grid select,:root[data-theme=light] .patient-filter-grid select,:root[data-theme=light] .assign-grid select,:root[data-theme=light] .patient-form-grid select option,:root[data-theme=light] .patient-filter-grid select option,:root[data-theme=light] .assign-grid select option{color:var(--text-primary);background:#fff}:root[data-theme=light] .expense-filter-grid-horizontal input,:root[data-theme=light] .expense-filter-grid-horizontal select{background:#fff}.full-span{grid-column:1/-1}.filter-actions-row{align-items:center;gap:12px;display:flex}.patient-records{gap:14px;display:grid}.patient-record{background:var(--surface-soft);border:1px solid var(--border-soft);border-radius:20px;gap:14px;padding:18px;display:grid}.patient-record.today-pending{border-color:#f59e0b66;box-shadow:inset 0 0 0 1px #f59e0b1f}.patient-record-top,.patient-record-actions,.pagination-bar,.pagination-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.patient-record-meta{color:var(--text-muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;font-size:.92rem;display:grid}.mini-action{border:1px solid var(--border-soft);background:var(--surface-elevated);color:var(--text-primary);border-radius:12px;padding:9px 12px}.table-actions-inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mini-action.success{color:#86efac}.mini-action.danger{color:#fca5a5;border-color:#f8717159}.pickup-status-chip{cursor:default;justify-content:center;align-items:center;display:inline-flex}.assign-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;display:grid}.assign-button{width:100%}.patient-comment,.patient-assignee,.muted-copy{color:var(--text-muted);margin:0;font-size:.84rem;line-height:1.4}.report-snapshot-card p,.report-summary-card small,.report-export-box p,.memo-body-card p,.billing-workflow-step p,.billing-summary-note p,.payment-summary-total p,.medical-report-header p,.medical-report-grid p,.medical-report-footer p,.optometrist-form-preview p,.debt-workspace-copy p,.payroll-advance-summary p{font-size:.84rem;line-height:1.4}.pagination-bar{margin-top:8px}.patient-intake-modal{width:min(980px,100%)}.billing-section{gap:20px;display:grid}.manager-billing-shell,.manager-billing-panel{gap:18px;display:grid}.manager-billing-table td{vertical-align:top}.finance-section{gap:20px;display:grid}.finance-tabs{flex-wrap:wrap;gap:12px;display:flex}.finance-tab{min-width:120px}.finance-layout,.insurance-layout{grid-template-columns:1fr;gap:20px;display:grid}.sales-daily-layout{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.sales-daily-breakdown-table th,.sales-daily-breakdown-table td{white-space:nowrap}.sales-daily-breakdown-table__sales-column{color:#1d4ed8;font-weight:800}.sales-daily-breakdown-table__insurance-column{color:#0f766e;font-weight:700}.sales-daily-breakdown-table__combined-column{color:#7c3aed;font-weight:800}:root[data-theme=light] .sales-daily-breakdown-table__sales-column{color:#1d4ed8}:root[data-theme=light] .sales-daily-breakdown-table__insurance-column{color:#0f766e}:root[data-theme=light] .sales-daily-breakdown-table__combined-column{color:#6d28d9}.insurance-report-strip,.insurance-report-filters{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:18px;display:grid}.insurance-provider-manager,.insurance-provider-list{gap:14px;display:grid}.insurance-provider-manager{margin-bottom:18px}.insurance-report-section-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.insurance-report-section-option{border:1px solid var(--border-soft);background:#0f172a3d;border-radius:16px;align-items:center;gap:10px;padding:14px 16px;display:flex}.insurance-report-section-option input{width:16px;height:16px}.finance-layout-expenses{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.expense-page-toolbar{justify-content:flex-start;width:100%;display:flex}.expense-add-button{min-width:180px}.expense-filters-panel,.finance-layout-expenses-editable>.panel:first-of-type{width:100%}.ceo-expense-review{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.ceo-expense-hero,.ceo-expense-panel{gap:18px;display:grid}.ceo-expense-hero{background:radial-gradient(circle at top right, #38bdf824, transparent 32%), linear-gradient(180deg, #0f172a38, #0f172a14), var(--surface);border-radius:28px}.ceo-expense-highlights,.ceo-expense-stat-list,.ceo-expense-filter-form{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.ceo-expense-highlight,.ceo-expense-stat-card{border:1px solid var(--border-soft);background:linear-gradient(180deg, #0f172a2e, #0f172a0d), var(--surface-soft);border-radius:22px;padding:18px 20px}.ceo-expense-highlight span,.ceo-expense-stat-card span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.86rem;display:block}.ceo-expense-highlight strong,.ceo-expense-stat-card strong{margin-top:8px;font-size:clamp(1.25rem,2vw,1.7rem);display:block}.ceo-expense-highlight p,.ceo-expense-stat-card p{color:var(--text-secondary);margin:8px 0 0}.ceo-expense-filter-form label{border:1px solid var(--border-soft);background:linear-gradient(180deg, #0f172a2e, #0f172a0d), var(--surface-soft);color:var(--text-secondary);border-radius:20px;gap:10px;padding:16px 18px 18px;font-size:.92rem;font-weight:600;display:grid}.ceo-expense-filter-form input,.ceo-expense-filter-form select{min-height:50px;color:var(--text-primary);font:inherit;background:#0f172ab8;border:1px solid #7dd3fc29;border-radius:16px;padding:14px 16px}.ceo-expense-filter-form input:focus,.ceo-expense-filter-form select:focus{background:#0f172aeb;border-color:#7dd3fc6b;box-shadow:0 0 0 4px #38bdf814}.ceo-expense-filter-form .filter-actions-row{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.ceo-expense-filter-form .filter-actions-row button{justify-content:center;width:100%}:root[data-theme=light] .ceo-expense-hero{background:radial-gradient(circle at top right, #0ea5e91f, transparent 34%), linear-gradient(180deg, #fffffffa, #f5f9fcfa), var(--surface)}:root[data-theme=light] .ceo-expense-highlight,:root[data-theme=light] .ceo-expense-stat-card,:root[data-theme=light] .ceo-expense-filter-form label{background:linear-gradient(180deg, #fffffffa, #f5f9fcfa), var(--surface-soft);box-shadow:0 14px 32px #0f172a0d,inset 0 1px #ffffffd1}:root[data-theme=light] .ceo-expense-filter-form input,:root[data-theme=light] .ceo-expense-filter-form select{background:#fff;border-color:#0077b629}:root[data-theme=light] .ceo-expense-filter-form input:focus,:root[data-theme=light] .ceo-expense-filter-form select:focus{background:#fff;border-color:#0077b647;box-shadow:0 0 0 4px #0096c71f}.expense-page-stack,.finance-layout-expenses .expense-summary-grid,.finance-layout-expenses .expense-entry-form{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.expense-premium-panel{background:radial-gradient(circle at top right, #38bdf81f, transparent 32%), linear-gradient(180deg, #0f172a33, #0f172a0d), var(--surface);border-radius:26px;padding:24px}.expense-premium-form{gap:18px}.expense-premium-form label{background:linear-gradient(180deg, #0f172a2e, #0f172a0f), var(--surface-soft);border:1px solid #94a3b82e;border-radius:20px;gap:10px;padding:16px 18px 18px;box-shadow:inset 0 1px #ffffff08}.expense-premium-form input,.expense-premium-form select,.expense-premium-form textarea{background:#0f172ab8;border:1px solid #7dd3fc29;border-radius:16px;min-height:50px;padding:14px 16px}.expense-premium-form textarea{resize:vertical;min-height:112px}.expense-premium-filter-form .filter-actions-row,.expense-entry-premium-form .primary-button{margin-top:4px}.expense-premium-filter-form .filter-actions-row{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.expense-premium-filter-form .filter-actions-row button,.expense-entry-premium-form .primary-button{justify-content:center;width:100%}.expense-entry-premium-panel .panel-heading .muted-copy{max-width:660px;margin:6px 0 0}.expense-summary-grid-premium{gap:14px;margin-top:6px}.expense-summary-grid-premium .expense-summary-card,.expense-summary-grid-premium .stat-card{border-radius:20px}.expense-readonly-banner-premium{background:linear-gradient(135deg, #0ea5e91f, #2563eb0f), var(--surface-soft);border-radius:20px;margin-top:6px;padding:18px 20px}:root[data-theme=light] .expense-premium-panel{background:radial-gradient(circle at top right, #0ea5e91f, transparent 34%), linear-gradient(180deg, #fffffff5, #f4f8fbf5), var(--surface)}:root[data-theme=light] .expense-premium-form label{background:linear-gradient(180deg, #fffffffa, #f5f9fcfa), var(--surface-soft);border-color:#0077b624;box-shadow:0 14px 32px #0f172a0d,inset 0 1px #ffffffd1}:root[data-theme=light] .expense-premium-form input,:root[data-theme=light] .expense-premium-form select,:root[data-theme=light] .expense-premium-form textarea{background:#fff;border-color:#0077b629}:root[data-theme=light] .expense-create-modal-form-premium label{background:linear-gradient(180deg, #fffffffa, #f5f9fcfa), var(--surface-soft);border-color:#0077b624;box-shadow:0 14px 32px #0f172a0d,inset 0 1px #ffffffd1}:root[data-theme=light] .expense-create-modal-form-premium input,:root[data-theme=light] .expense-create-modal-form-premium select,:root[data-theme=light] .expense-create-modal-form-premium textarea{background:#fff;border-color:#0077b629}:root[data-theme=light] .expense-create-modal-form-premium input:focus,:root[data-theme=light] .expense-create-modal-form-premium select:focus,:root[data-theme=light] .expense-create-modal-form-premium textarea:focus{background:#fff;border-color:#0077b647;box-shadow:0 0 0 4px #0096c71f}.expense-filter-grid-horizontal{grid-template-columns:minmax(0,1fr);align-items:end;gap:16px 14px;margin-top:18px}.finance-layout-expenses-editable .expense-filter-grid-horizontal{grid-template-columns:minmax(280px,1.8fr) repeat(3,minmax(170px,1fr))}.finance-layout-expenses-editable .expense-filter-grid-horizontal label:first-child{grid-column:1/-1}.expense-filter-heading{align-items:flex-start;gap:16px}.expense-filter-heading-copy{gap:6px;display:grid}.expense-filter-heading-copy h3,.expense-filter-heading-copy .muted-copy{margin:0}.expense-filter-heading-copy .muted-copy{max-width:620px}.expense-filter-grid-horizontal label{border:1px solid var(--border-soft);background:linear-gradient(180deg, #0f172a14, #0f172a05), var(--surface-soft);border-radius:18px;min-height:100%;padding:14px 16px 16px}:root[data-theme=light] .expense-filter-grid-horizontal label{background:linear-gradient(180deg, #fffffff0, #f7fafcf0), var(--surface-soft);box-shadow:inset 0 1px #ffffffb8}.expense-filter-grid-horizontal input,.expense-filter-grid-horizontal select{box-sizing:border-box;background:#0f172ad1;width:100%}.expense-filter-grid-horizontal .filter-actions-row{flex-flow:wrap;justify-content:flex-start;align-items:center}.finance-layout-expenses-editable .expense-filter-grid-horizontal .filter-actions-row{grid-column:1/-1}.expense-entry-form{grid-template-columns:minmax(0,1fr);margin-top:18px}.expense-create-modal-form-premium label{background:linear-gradient(180deg, #0f172a2e, #0f172a0f), var(--surface-soft);color:var(--text-secondary);border:1px solid #94a3b82e;border-radius:20px;gap:10px;padding:16px 18px 18px;font-size:.92rem;font-weight:600;display:grid}.expense-create-modal-form-premium input,.expense-create-modal-form-premium select,.expense-create-modal-form-premium textarea{box-sizing:border-box;width:100%;min-height:52px;color:var(--text-primary);font:inherit;background:#0f172ac2;border:1px solid #7dd3fc29;border-radius:16px;padding:14px 16px;transition:border-color .18s,background .18s,box-shadow .18s}.expense-create-modal-form-premium textarea{resize:vertical;min-height:120px}.expense-create-modal-form-premium input:focus,.expense-create-modal-form-premium select:focus,.expense-create-modal-form-premium textarea:focus{background:#0f172aeb;border-color:#7dd3fc6b;box-shadow:0 0 0 4px #38bdf814}.expense-create-modal-form-premium .filter-actions-row{justify-content:flex-start}.expense-create-modal-form{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.expense-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.expense-summary-card{border:1px solid var(--border-soft);background:linear-gradient(135deg, #2563eb1f, #38bdf80f), var(--surface-soft);border-radius:18px;padding:16px 18px}.expense-summary-card span{color:var(--text-muted);font-size:.9rem}.expense-summary-card strong{margin-top:8px;font-size:1.2rem;display:block}.finance-chip-row{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.payment-filter-chip-row{margin-top:16px}.finance-chip{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;flex:180px;min-width:140px;padding:14px 16px}.finance-chip strong{word-break:break-word;margin-top:6px;line-height:1.4;display:block}.receipt-results-banner{border:1px solid var(--border-soft);background:linear-gradient(135deg, #0ea5e914, #3b82f60a), var(--surface-soft);border-radius:18px;gap:6px;margin-top:14px;padding:14px 16px;display:grid}.receipt-results-banner strong{font-size:.98rem}.receipt-results-banner span{color:var(--text-muted);font-size:.92rem}.receipt-search-bar{border:1px solid var(--border-soft);background:linear-gradient(180deg, #0f172a2e, #0f172a0d), var(--surface-soft);border-radius:22px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;margin-top:16px;padding:16px 18px 18px;display:grid}.receipt-search-bar label{color:var(--text-secondary);gap:8px;font-size:.9rem;font-weight:600;display:grid}.receipt-search-bar input{width:100%;min-height:50px;color:var(--text-primary);font:inherit;box-sizing:border-box;background:#0f172ac2;border:1px solid #7dd3fc29;border-radius:16px;padding:14px 16px}.receipt-search-bar input:focus{background:#0f172aeb;border-color:#7dd3fc6b;box-shadow:0 0 0 4px #38bdf814}.receipt-search-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}:root[data-theme=light] .receipt-search-bar{background:linear-gradient(180deg, #fffffffa, #f5f9fcfa), var(--surface-soft);box-shadow:0 14px 32px #0f172a0d,inset 0 1px #ffffffd1}:root[data-theme=light] .receipt-search-bar input{background:#fff;border-color:#0077b629}:root[data-theme=light] .receipt-search-bar input:focus{background:#fff;border-color:#0077b647;box-shadow:0 0 0 4px #0096c71f}.expense-record{border-left:4px solid #38bdf875}.payment-record-active{border-color:#38bdf88f;box-shadow:inset 0 0 0 1px #38bdf833}.payment-workspace,.finance-stack{gap:16px;display:grid}.modal-overlay{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a99;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-panel{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--surface) 92%, white 8%);border-radius:24px;width:min(1080px,100%);max-height:calc(100vh - 48px);padding:24px;overflow:auto;box-shadow:0 28px 80px #0f172a52}.insurance-claim-modal{width:min(920px,100%)}.insurance-claim-modal__summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px;display:grid}.insurance-claim-modal__actions{justify-content:space-between}.customer-service-sms-modal{width:min(760px,100%)}.customer-service-template-modal{width:min(720px,100%)}.customer-service-sms-modal__summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.customer-service-sms-modal__message{color:var(--text-muted);gap:8px;margin-top:14px;font-size:.92rem;display:grid}.customer-service-sms-modal__message textarea{resize:vertical;min-height:150px}.customer-service-template-modal__message{gap:8px;display:grid}.customer-service-template-modal__message textarea{resize:vertical;min-height:190px}.customer-service-template-modal__actions{justify-content:space-between}:root[data-theme=light] .modal-panel{background:#fff;border-color:#0077b624;box-shadow:0 28px 70px #0077b61f}.payment-modal{position:relative}.payment-modal .payment-workspace{background:color-mix(in srgb, var(--surface-soft) 90%, var(--surface) 10%);border:1px solid #94a3b824;border-radius:20px;padding:18px}:root[data-theme=light] .payment-modal .payment-workspace{background:#fff;border-color:#0077b61f}:root[data-theme=light] .payroll-staff-id{color:#0f4c81;background:#e0f2fef5;border-color:#0077b61f}:root[data-theme=light] .payroll-process-card,:root[data-theme=light] .payroll-process-toggle{background:#fffffff5}:root[data-theme=light] .payroll-process-total{background:#e0f2fecc;border-color:#0077b624}.bank-register-layout{grid-template-columns:minmax(320px,.95fr) minmax(320px,1.05fr);gap:20px;display:grid}.bank-register-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.bank-register-form-grid label{color:var(--text-secondary);gap:8px;display:grid}.bank-register-form-grid input,.bank-register-form-grid select,.bank-register-form-grid textarea{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);font:inherit;background:#0f172a38;border-radius:14px;padding:13px 14px}.bank-register-form-grid textarea{resize:vertical;min-height:120px}.bank-ledger-badge{border-radius:999px;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.bank-ledger-badge.deposit{color:#86efac;background:#22c55e24}.bank-ledger-badge.withdrawal{color:#fca5a5;background:#f8717124}.bank-ledger-badge.adjustment{color:#7dd3fc;background:#38bdf824}:root[data-theme=light] .bank-register-form-grid input,:root[data-theme=light] .bank-register-form-grid select,:root[data-theme=light] .bank-register-form-grid textarea{background:#fffffffa}:root[data-theme=light] .bank-ledger-badge.deposit{color:#166534;background:#dcfce7f5}:root[data-theme=light] .bank-ledger-badge.withdrawal{color:#991b1b;background:#fee2e2f5}:root[data-theme=light] .bank-ledger-badge.adjustment{color:#0f4c81;background:#e0f2fef5}.modal-actions{align-items:center;gap:10px;display:flex}.thermal-modal-overlay{z-index:60}.thermal-modal{width:min(760px,100%)}.thermal-preview-shell{place-items:center;padding:12px 0 4px;display:grid}.thermal-preview-paper{color:#000;background:linear-gradient(#fffffffc,#f9fafbfa);border:1px solid #94a3b83d;border-radius:18px;width:min(320px,100%);padding:20px 18px 22px;box-shadow:0 24px 50px #0f172a24}.thermal-preview-brand,.thermal-preview-center,.thermal-preview-foot{text-align:center;justify-items:center;display:grid}.thermal-preview-brand{gap:4px}.thermal-preview-brand strong{letter-spacing:.08em;text-transform:uppercase;color:#000;font-size:1rem;font-weight:800}.thermal-preview-brand span,.thermal-preview-center p,.thermal-preview-center span,.thermal-preview-foot span{color:#000;font-size:.78rem;font-weight:700}.thermal-preview-divider{border-top:1px dashed #9ca3af;margin:14px 0}.thermal-preview-center p{letter-spacing:.16em;text-transform:uppercase;margin:0}.thermal-preview-center strong{letter-spacing:-.04em;color:#000;margin-top:8px;font-size:2rem;font-weight:800}.thermal-preview-summary,.thermal-preview-meta{gap:10px;display:grid}.thermal-preview-summary div,.thermal-preview-meta div{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.thermal-preview-summary span,.thermal-preview-meta span{color:#000;font-size:.78rem;font-weight:700}.thermal-preview-summary strong,.thermal-preview-meta strong{color:#000;text-align:right;font-size:.85rem;font-weight:800}.thermal-preview-balance{border-top:1px dashed #9ca3af;padding-top:8px}.thermal-preview-foot{gap:4px;margin-top:16px}.finance-queue-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.table-shell{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;overflow-x:auto}.portal-table{border-collapse:collapse;width:100%;min-width:860px}.inventory-table-wide{min-width:1160px}.portal-table th,.portal-table td{text-align:left;border-bottom:1px solid var(--border-soft);padding:14px 16px}.portal-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:#94a3b80f;font-size:.85rem}.portal-table tbody tr:hover,.table-row-active{background:#38bdf814}.payment-form-grid{margin-top:6px}.payment-mode-toggle{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.payment-mode-toggle strong,.payment-entry-header strong{display:block}.payment-mode-toggle span,.payment-entry-header span,.payment-split-summary span{color:var(--text-muted)}.payment-split-switch{cursor:pointer;align-items:center;display:inline-flex;position:relative}.payment-split-switch input{opacity:0;pointer-events:none;position:absolute}.payment-split-slider{background:#94a3b859;border-radius:999px;width:58px;height:32px;transition:background .18s;position:relative}.payment-split-slider:after{content:"";background:#fff;border-radius:999px;width:24px;height:24px;transition:transform .18s;position:absolute;top:4px;left:4px;box-shadow:0 8px 18px #0f172a38}.payment-split-switch input:checked+.payment-split-slider{background:linear-gradient(135deg,#0f766e,#0891b2)}.payment-split-switch input:checked+.payment-split-slider:after{transform:translate(26px)}.payment-entry-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;gap:14px;padding:18px;display:grid}.payment-entry-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.payment-entry-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.payment-split-summary{border:1px dashed var(--border-soft);color:var(--text-primary);background:#0ea5e914;border-radius:16px;padding:14px 16px}.inventory-inline-input{border:1px solid var(--border-soft);background:var(--surface-soft);width:120px;color:var(--text-primary);border-radius:12px;padding:10px 12px}.inset-panel{background:var(--surface-soft);padding:18px}.compact-records .patient-record{background:linear-gradient(#0f172a47,#0f172a14),#0f172a85;padding:14px}.insurance-record{border-left:4px solid #8b5cf66b}.insurance-claims-table{min-width:1320px}.insurance-claims-table td{vertical-align:top}.insurance-empty-state{padding:20px}.debt-management-layout{align-items:start}.debt-control-panel,.debt-register-panel,.debt-history-panel,.debt-workspace-panel{gap:18px;display:grid}.debt-register-panel,.debt-history-panel,.debt-workspace-panel{grid-column:1/-1}.debt-alert-panel{gap:16px;display:grid}.debt-alert-stack{gap:12px;display:grid}.debt-alert-card{color:#f8fafc;cursor:pointer;text-align:left;background:linear-gradient(135deg,#0f766e,#0891b2);border:1px solid #0000;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:16px 18px;display:flex}.debt-alert-card.overdue{background:linear-gradient(135deg,#be123c,#e11d48)}.debt-alert-card.upcoming{background:linear-gradient(135deg,#b45309,#f59e0b)}.debt-alert-card strong,.debt-alert-copy strong{display:block}.debt-alert-card span,.debt-alert-copy span{color:#f8fafcd1;font-size:.88rem}.debt-alert-copy{text-align:right}.debt-register-table{min-width:1240px}.debt-register-table td{vertical-align:top}.debt-register-panel .panel-subcopy{max-width:52rem;margin:8px 0 0;font-size:.88rem}.debt-register-panel .panel-subcopy code{font-size:.82em}.debt-servicing-cell{vertical-align:middle;white-space:nowrap}.debt-record-payment-btn{border-radius:12px;padding:8px 14px;font-size:.82rem}.debt-record-payment-btn:disabled{opacity:.45;cursor:not-allowed}.debt-progress-cell{gap:8px;min-width:140px;display:grid}.debt-progress-cell span{color:var(--text-muted);font-size:.84rem}.debt-progress-bar{background:#94a3b82e;border-radius:999px;height:8px;position:relative;overflow:hidden}.debt-progress-paid{border-radius:inherit;background:linear-gradient(90deg,#22c55e,#06b6d4);height:100%;display:block}.debt-workspace-copy{gap:12px;display:grid}.debt-workspace-copy p{margin:0}.debt-modal-panel{max-width:1080px}.debt-details-modal{max-width:1180px}.debt-form-grid{margin-top:8px}.debt-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.debt-detail-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:20px;gap:12px;padding:18px;display:grid}.debt-detail-card h4{margin:0}.debt-detail-card.full-span{grid-column:1/-1}.debt-detail-row{justify-content:space-between;align-items:start;gap:12px;display:flex}.debt-detail-row span{color:var(--text-muted);font-size:.9rem}.debt-detail-row strong{text-align:right}.summary-metric{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:16px 18px}.summary-metric span{color:var(--text-muted);font-size:.9rem}.summary-metric strong{margin-top:8px;font-size:1.15rem;display:block}.inline-metric,.inline-metric-card{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.inline-metric-card{row-gap:8px}.inline-metric span,.inline-metric-card span{color:var(--text-muted);font-size:.92rem}.inline-metric strong,.inline-metric-card strong{margin-top:0;font-size:1rem;line-height:1.35;display:inline}.inline-metric-card small{flex-basis:100%}.payment-workspace textarea{border:1px solid var(--border-soft);background:var(--surface-soft);width:100%;color:var(--text-primary);font:inherit;resize:vertical;border-radius:14px;padding:13px 14px}.settings-layout{grid-template-columns:minmax(360px,1.1fr) minmax(320px,.9fr);gap:20px;display:grid}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-grid label{color:var(--text-secondary);gap:8px;display:grid}.settings-grid input{border:1px solid var(--border-soft);background:var(--surface-soft);color:var(--text-primary);font:inherit;border-radius:14px;padding:13px 14px}.settings-profile-panel,.settings-security-panel{gap:18px;display:grid}.settings-operations-panel{grid-column:1/-1}.settings-catalog-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.settings-catalog-card{border:1px solid var(--border-soft);background:linear-gradient(180deg, #ffffff08, #fff0), var(--surface-soft);border-radius:22px;gap:16px;padding:18px;display:grid}.settings-catalog-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.settings-catalog-head h4{margin:6px 0 0}.settings-inline-form{gap:14px;display:grid}.settings-inline-form label{color:var(--text-secondary);gap:8px;display:grid}.settings-inline-form input{border:1px solid var(--border-soft);color:var(--text-primary);background:#0f172ac7;border-radius:14px;padding:13px 14px}:root[data-theme=light] .settings-inline-form input{color:var(--text-primary);background:#fffffff5}.settings-catalog-list{gap:12px;display:grid}.settings-catalog-item{border:1px solid var(--border-soft);background:#0f172a52;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.settings-catalog-item strong,.settings-catalog-item span{display:block}.clickable-table-row{cursor:pointer}.clickable-table-row:hover{background:#3b82f614}.expense-editor-modal{width:min(760px,100vw - 32px)}.messenger-fab{z-index:45;color:#fff;cursor:pointer;isolation:isolate;background:linear-gradient(135deg,#14b8a6,#0891b2);border:0;border-radius:22px;justify-content:center;align-items:center;width:64px;height:64px;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 22px 46px #0891b266}.messenger-fab-icon{width:28px;height:28px}.messenger-fab-badge{color:#fff;background:#dc2626;border:2px solid #0f172aeb;border-radius:999px;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 7px;font-size:.75rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-6px;right:-6px;box-shadow:0 4px 12px #dc262673}.messenger-panel{z-index:44;background:radial-gradient(circle at top right, #14b8a61f, transparent 34%), linear-gradient(180deg, #080f1df5, #080f1df0), var(--surface-base);border:1px solid #14b8a647;border-radius:28px;width:min(960px,100vw - 32px);max-height:min(78vh,760px);padding:20px;position:fixed;bottom:102px;right:24px;overflow:auto;box-shadow:0 32px 70px #0f172a70}.messenger-panel-head{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.messenger-search-row{margin-bottom:18px}.messenger-search-row label{color:var(--text-secondary);gap:8px;display:grid}.messenger-search-row input,.messenger-compose textarea{border:1px solid var(--border-soft);color:#f8fafc;caret-color:#5eead4;width:100%;font:inherit;background:#0f172ae0;border-radius:16px;padding:13px 14px}.messenger-compose textarea::placeholder,.messenger-search-row input::placeholder{color:#e2e8f09e}.messenger-picker-grid{gap:12px;display:grid}.messenger-picker{position:relative}.messenger-picker-toggle{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:#0f172ae0;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.messenger-picker-toggle span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.messenger-picker-caret{color:var(--text-secondary);flex:none;font-size:.82rem}.messenger-picker-menu{z-index:8;background:#080f1dfa;border:1px solid #14b8a652;border-radius:18px;gap:8px;max-height:260px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 20px 42px #0f172a57}.messenger-picker-option{border:1px solid var(--border-soft);width:100%;color:inherit;text-align:left;cursor:pointer;background:#0f172ae0;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.messenger-picker-option-text{flex:1;gap:2px;min-width:0;display:grid}.messenger-picker-option-text strong{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);overflow:hidden}.messenger-picker-option-text span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.messenger-picker-toggle-inner{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.messenger-picker-toggle-text{text-align:left;gap:2px;min-width:0;display:grid}.messenger-picker-toggle-text strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.messenger-picker-toggle-text small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.messenger-picker-option span,.messenger-picker-empty{color:var(--text-secondary)}.messenger-picker-empty{padding:10px 12px}.messenger-layout{grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:18px;display:grid}.messenger-sidebar,.messenger-conversation{background:#0f172a9e;border:1px solid #94a3b82e;border-radius:24px;gap:14px;padding:16px;display:grid}.messenger-section-head{color:var(--text-secondary);justify-content:space-between;align-items:center;display:flex}.messenger-section-head-secondary{margin-top:6px}.messenger-people-list,.messenger-thread-list,.messenger-message-stream{gap:10px;display:grid}.messenger-thread-empty{border:1px dashed var(--border-soft);color:var(--text-secondary);background:#0f172a59;border-radius:18px;padding:14px 16px}.messenger-avatar{color:var(--text-primary);background:linear-gradient(145deg,#38bdf838,#14b8a624);border:1px solid #94a3b838;border-radius:14px;flex:none;justify-content:center;align-items:center;font-size:.82rem;font-weight:800;display:inline-flex;overflow:hidden}.messenger-avatar-lg{border-radius:16px;font-size:1rem}.messenger-avatar img{object-fit:cover;width:100%;height:100%}.messenger-thread-body{flex:1;gap:2px;min-width:0;display:grid}.messenger-unread-pill{letter-spacing:.02em;background:#dc2626f2;border-radius:999px;padding:3px 10px;font-size:.72rem;font-style:normal;font-weight:800;box-shadow:0 2px 8px #dc262659;color:#fff!important}.messenger-thread-status{font-size:.78rem;font-style:normal;font-weight:600;color:var(--text-muted)!important}.messenger-person,.messenger-thread{border:1px solid var(--border-soft);width:100%;color:inherit;text-align:left;cursor:pointer;background:#0f172ad1;border-radius:18px;padding:12px 14px}.messenger-thread{align-items:flex-start;gap:12px;display:flex}.messenger-person.active,.messenger-thread.active{background:#0891b23d;border-color:#14b8a680}.messenger-person{align-items:center;gap:12px;display:flex}.messenger-person-avatar{width:42px;height:42px;color:var(--text-primary);background:#38bdf829;border-radius:14px;flex:0 0 42px;justify-content:center;align-items:center;font-weight:800;display:inline-flex;overflow:hidden}.messenger-person-avatar.large{border-radius:16px;width:52px;height:52px}.messenger-person-avatar img,.messenger-toast-avatar img{object-fit:cover;width:100%;height:100%}.messenger-person-copy,.messenger-toast-copy{gap:3px;display:grid}.messenger-person-copy span,.messenger-thread p,.messenger-thread-meta span,.messenger-thread-meta em,.messenger-toast-copy span,.messenger-empty-state span,.messenger-conversation-head-text span,.messenger-bubble-time{color:var(--text-secondary)}.messenger-thread-top,.messenger-thread-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.messenger-conversation-head{border-bottom:1px solid #94a3b824;justify-content:flex-start;align-items:center;gap:14px;margin-bottom:4px;padding-bottom:14px;display:flex}.messenger-conversation-head-text{flex:1;gap:4px;min-width:0;display:grid}.messenger-conversation-head-text strong{font-size:1.05rem}.messenger-thread p{margin:8px 0}.messenger-thread-meta em{color:#5eead4;font-style:normal;font-weight:700}.messenger-conversation{min-height:520px}.messenger-message-stream{scroll-behavior:smooth;min-height:320px;max-height:420px;padding:8px 8px 8px 4px;overflow:auto}.messenger-bubble-row{align-items:flex-end;gap:10px;width:100%;margin-bottom:14px;display:flex}.messenger-bubble-row.is-mine{flex-direction:row-reverse}.messenger-bubble{background:#0f172aeb;border:1px solid #94a3b829;border-radius:18px 18px 18px 6px;max-width:min(82%,420px);padding:12px 15px;box-shadow:0 4px 14px #0f172a33}.messenger-bubble.mine{background:linear-gradient(160deg,#0891b26b,#14b8a638);border-color:#14b8a66b;border-radius:18px 18px 6px;margin-left:0;box-shadow:0 4px 16px #0891b22e}.messenger-bubble p{white-space:pre-wrap;word-break:break-word;margin:0 0 6px;line-height:1.45}.messenger-bubble-time{opacity:.82;font-size:.72rem;display:block}.messenger-compose{border-top:1px solid #94a3b824;margin-top:8px;padding-top:14px}.messenger-compose label{color:var(--text-secondary);gap:8px;display:grid}.messenger-compose textarea{resize:vertical;min-height:96px;max-height:200px}.messenger-empty-state{text-align:center;place-content:center;gap:10px;min-height:420px;display:grid}.messenger-empty-icon{width:48px;height:48px;color:var(--text-muted);margin:0 auto}.messenger-toast-stack{z-index:46;gap:10px;width:min(360px,100vw - 32px);display:grid;position:fixed;bottom:102px;right:24px}.messenger-toast{width:100%;color:inherit;text-align:left;cursor:pointer;background:#080f1df0;border:1px solid #14b8a657;border-radius:18px;align-items:center;gap:12px;padding:12px 14px;display:flex;box-shadow:0 16px 30px #0f172a3d}.messenger-toast-sent{cursor:default;background:linear-gradient(135deg,#0891b233,#0f172af0);border-color:#14b8a673}.messenger-toast-sent-icon{color:#5eead4;background:#14b8a659;border-radius:14px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.15rem;font-weight:800;display:inline-flex}.messenger-toast-incoming{animation:.35s ease-out messenger-toast-in}@keyframes messenger-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.messenger-toast-excerpt{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;margin-top:4px!important;font-size:.86rem!important}.messenger-toast-avatar{color:#fff;background:#ffffff2e;border-radius:14px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;font-weight:800;display:inline-flex;overflow:hidden}:root[data-theme=light] .messenger-panel{background:radial-gradient(circle at 100% 0,#14b8a624,#0000 34%),linear-gradient(#fffffffc,#f8fafcfa),#fff}:root[data-theme=light] .messenger-search-row input,:root[data-theme=light] .messenger-compose textarea,:root[data-theme=light] .messenger-picker-toggle,:root[data-theme=light] .messenger-sidebar,:root[data-theme=light] .messenger-conversation,:root[data-theme=light] .messenger-person,:root[data-theme=light] .messenger-thread,:root[data-theme=light] .messenger-bubble,:root[data-theme=light] .messenger-toast{background:#fffffff5}:root[data-theme=light] .messenger-compose textarea,:root[data-theme=light] .messenger-search-row input{color:#0f172a;caret-color:#0891b2}:root[data-theme=light] .messenger-compose textarea::placeholder,:root[data-theme=light] .messenger-search-row input::placeholder{color:#0f172a75}:root[data-theme=light] .messenger-picker-menu,:root[data-theme=light] .messenger-picker-option{background:#fffffffa}:root[data-theme=light] .messenger-avatar{background:linear-gradient(145deg,#38bdf81f,#14b8a614);border-color:#94a3b859}:root[data-theme=light] .messenger-bubble:not(.mine){background:#f8fafcfa;border-color:#94a3b859;box-shadow:0 4px 14px #0f172a0f}:root[data-theme=light] .messenger-toast-sent{background:linear-gradient(135deg,#0891b21f,#fffffff5)}:root[data-theme=light] .messenger-fab-badge{border-color:#fff}.settings-catalog-item span{color:var(--text-muted);margin-top:4px;font-size:.9rem}:root[data-theme=light] .settings-catalog-item{background:#ffffffe0}.settings-avatar-block{background:var(--surface-soft);border:1px solid var(--border-soft);border-radius:20px;align-items:center;gap:18px;padding:18px;display:flex}.settings-avatar-frame{flex:none;width:108px;height:108px}.settings-avatar-fallback{color:#dbeafe;font-size:2rem;font-weight:700}.settings-avatar-copy{gap:8px;display:grid}.settings-avatar-copy strong{font-size:1.15rem}.settings-upload-field{margin-top:6px}.settings-wallpaper-block{align-items:stretch}.settings-wallpaper-preview{border:1px solid var(--border-soft);background:linear-gradient(135deg,#080f1ddb,#0e7490ad);border-radius:20px;flex:none;width:min(320px,42vw);min-height:180px;overflow:hidden}.settings-wallpaper-image{object-fit:cover;width:100%;height:100%;display:block}.settings-wallpaper-fallback{color:#e0f2fe;background:linear-gradient(#0f172a1a,#0f172ab8),radial-gradient(circle at 100% 0,#38bdf84d,#0000 34%);align-content:end;gap:8px;min-height:180px;padding:20px;display:grid}.finance-section .panel,.insurance-layout .panel{position:relative;overflow:hidden}.finance-section .panel:before,.insurance-layout .panel:before{content:"";background:linear-gradient(90deg,#38bdf880,#0000 72%);height:1px;position:absolute;inset:0 0 auto}.billing-grid{grid-template-columns:minmax(340px,.95fr) minmax(420px,1.05fr);gap:20px;display:grid}.billing-ledger-stack{gap:20px;display:grid}.billing-workflow-panel{gap:16px;display:grid}.billing-workflow-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.billing-workflow-step{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:20px;padding:16px 18px}.billing-workflow-step strong{margin-bottom:8px;display:block}.billing-workflow-step p{color:var(--text-muted);margin:0}.billing-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.billing-form-grid label,.billing-search-inline{font:inherit}.billing-form-grid label{min-width:0;color:var(--text-secondary);gap:8px;display:grid}.billing-field-note,.billing-field-warning{font-size:.84rem;line-height:1.4}.billing-field-note{color:var(--text-muted)}.billing-field-warning{color:#c1121f;font-weight:600}.billing-form-grid input,.billing-form-grid select,.billing-search-inline{border:1px solid var(--border-soft);background:var(--surface-soft);width:100%;min-width:0;color:var(--text-primary);border-radius:14px;padding:13px 14px}.billing-form-grid .billing-field-error{background:#c1121f0f;border-color:#c1121f;box-shadow:0 0 0 1px #c1121f2e}.billing-line-items-block{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;gap:12px;padding:14px;display:grid}.billing-line-items-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.billing-line-items-header p{margin:4px 0 0}.billing-line-items-list{gap:12px;display:grid}.billing-line-item-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.billing-line-item-row-frame{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) auto}.billing-line-item-row .full-span{grid-column:1/-1}.billing-line-items-total{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.billing-breakdown{background:var(--surface-soft);border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.billing-breakdown div{gap:4px;display:grid}.billing-breakdown span,.payment-summary-row span{color:var(--text-muted);font-size:.92rem}.billing-row-actions{flex-wrap:wrap;gap:8px;display:flex}td.billing-balance-due,.stat-card strong.billing-balance-due,.billing-summary-metric strong.billing-balance-due{color:#f87171;font-weight:700}.stat-card strong.finance-profit{color:#4ade80;font-weight:700}.stat-card strong.finance-loss{color:#f87171;font-weight:700}:root[data-theme=light] td.billing-balance-due,:root[data-theme=light] .stat-card strong.billing-balance-due,:root[data-theme=light] .billing-summary-metric strong.billing-balance-due{color:#dc2626}:root[data-theme=light] .stat-card strong.finance-profit{color:#15803d}:root[data-theme=light] .stat-card strong.finance-loss{color:#dc2626}.billing-summary-modal{max-width:980px}.billing-summary-stack{gap:18px;display:grid}.billing-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.billing-summary-metric{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:16px 18px}.billing-summary-metric span{color:var(--text-muted);font-size:.9rem}.billing-summary-metric strong{margin-top:8px;font-size:1.2rem;display:block}.billing-summary-note{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:18px;padding:16px 18px}.billing-summary-note strong{margin-bottom:8px;display:block}.billing-summary-note p{color:var(--text-muted);margin:0}.payment-summary-row{flex-wrap:wrap;gap:18px;margin-bottom:14px;display:flex}.payment-summary-row>div{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:16px;flex-wrap:wrap;align-items:baseline;gap:6px;padding:14px 16px;display:flex}.payment-summary-hero{grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);gap:16px;margin-bottom:18px;display:grid}.payment-summary-total,.payment-summary-grid>div{border:1px solid var(--border-soft);background:var(--surface-soft)}.payment-summary-total{border-radius:22px;align-content:start;gap:8px;padding:20px 22px;display:grid}.payment-summary-kicker{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.86rem}.payment-summary-total strong{font-size:clamp(2rem,4vw,2.8rem);line-height:.95}.payment-summary-total p{color:var(--text-secondary);margin:0;font-size:.96rem}.payment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.payment-summary-grid>div{border-radius:18px;padding:16px 18px}.payment-summary-grid strong{margin-top:8px;font-size:1.18rem;display:block}.manager-dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,.75fr) minmax(320px,.75fr)}.accountant-dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.78fr) minmax(300px,.78fr)}.manager-overview-grid,.manager-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.accountant-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.manager-metric-card{border:1px solid var(--border-soft);background:var(--surface-soft);border-radius:20px;padding:18px}.manager-metric-card span{color:var(--text-muted);font-size:.9rem;display:block}.manager-metric-card strong{margin:10px 0 6px;font-size:1.4rem;display:block}.manager-change{margin:0;font-size:.85rem}.manager-change.positive{color:#86efac}.manager-change.negative{color:#fca5a5}.accountant-method-list{gap:14px;margin-top:20px;display:grid}.accountant-method-row{gap:10px;display:grid}.accountant-method-row strong{display:block}.accountant-method-row span{color:var(--text-muted);font-size:.9rem}.manager-metric-card.tone-success{border-left:4px solid #22c55e}.manager-metric-card.tone-info{border-left:4px solid #38bdf8}.manager-metric-card.tone-warning{border-left:4px solid #f59e0b}.manager-metric-card.tone-danger{border-left:4px solid #ef4444}.manager-performance{background:var(--surface-soft);border-radius:20px;align-items:end;gap:12px;margin-top:18px;padding:18px;display:flex}.manager-bar{flex:1;justify-items:center;gap:8px;min-width:0;display:grid}.manager-bar-column{color:#fff;background:linear-gradient(#38bdf8f2,#2563eb99);border-radius:16px 16px 8px 8px;justify-content:center;align-items:start;width:100%;min-height:18px;padding-top:8px;font-size:.75rem;font-weight:700;display:flex}.manager-bar strong,.manager-bar small{text-align:center}.manager-link-card{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);font:inherit;text-align:left}.manager-action-row{flex-wrap:wrap;gap:8px;display:flex}.database-workspace{gap:24px}.database-page-header{align-items:start}.database-browser-panel,.database-main-panel,.database-admin-modal{gap:18px;display:grid}.database-sidebar-search{gap:8px;display:grid}.database-sidebar-search input,.database-subtoolbar input,.database-toolbar select,.database-subtoolbar select,.database-filter-row input,.database-edit-grid input,.database-edit-grid select,.database-edit-grid textarea{width:100%;color:var(--text-primary);background:#0f172a70;border:1px solid #94a3b83d;border-radius:16px;padding:13px 14px;transition:border-color .2s,box-shadow .2s}.database-sidebar-search input:focus,.database-subtoolbar input:focus,.database-toolbar select:focus,.database-subtoolbar select:focus,.database-filter-row input:focus,.database-edit-grid input:focus,.database-edit-grid select:focus,.database-edit-grid textarea:focus{border-color:#60a5fa80;outline:none;box-shadow:0 0 0 3px #60a5fa1f}.database-main-heading{align-items:start}.database-toolbar{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.database-toolbar label{gap:8px;min-width:120px;display:grid}.database-table-select{min-width:260px}.database-table-search{min-width:240px}.database-tab-strip{gap:12px;padding-bottom:6px;display:flex;overflow-x:auto}.database-tab{min-width:200px;color:inherit;text-align:left;cursor:pointer;background:linear-gradient(135deg,#0f172ad1,#1e293bb8);border:1px solid #94a3b82e;border-radius:22px;padding:16px 18px;transition:transform .18s,border-color .18s,background .18s}.database-tab:hover,.database-tab.active{background:linear-gradient(135deg,#082f49e0,#0e749099);border-color:#38bdf87a;transform:translateY(-1px)}.database-tab-label,.database-tab-meta{display:block}.database-tab-label{font-weight:700}.database-tab-meta{color:var(--text-muted);margin-top:6px;font-size:.8rem}.database-notice-row{flex-wrap:wrap;gap:10px;display:flex}.database-explorer-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;display:grid}.database-schema-panel,.database-records-panel{background:#0f172a33;border:1px solid #94a3b829;border-radius:28px;gap:16px;padding:20px;display:grid}.database-subtoolbar{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.database-subtoolbar label{gap:8px;min-width:160px;display:grid}.database-filter-row{gap:14px;display:grid}.database-schema-shell,.database-grid-shell{overflow:auto}.database-schema-table{min-width:760px}.database-grid{min-width:1680px}.database-grid tbody tr{cursor:pointer}.database-selection-cell{text-align:center;width:54px}.database-selection-cell input{width:18px;height:18px}.database-cell{gap:5px;display:grid}.database-cell strong{font-size:.95rem}.database-cell span,.database-record-card small{color:var(--text-muted);font-size:.76rem}.database-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.database-record-modal{width:min(1220px,100%)}.database-record-grid,.database-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.database-record-card{background:#0f172a4d;border:1px solid #94a3b82e;border-radius:20px;gap:6px;padding:16px;display:grid}.database-record-card span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.73rem}.database-record-card strong{word-break:break-word;font-size:.98rem}.database-delete-copy{gap:16px;display:grid}.database-delete-options{gap:12px;display:grid}.database-delete-option{background:#0f172a42;border:1px solid #94a3b82e;border-radius:16px;align-items:center;gap:10px;padding:12px 14px;display:flex}.database-delete-option input,.database-delete-item input{flex:none;width:18px;height:18px}.database-delete-list,.database-live-summary,.database-live-grid{gap:12px;display:grid}.database-delete-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.database-delete-item,.database-live-card,.database-inline-banner{background:#0f172a57;border:1px solid #94a3b82e;border-radius:18px;padding:14px 16px}.database-delete-item,.database-live-card{gap:4px;display:grid}.database-delete-item{grid-template-columns:auto 1fr;align-items:center;column-gap:12px}.database-live-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.database-live-card span,.database-inline-banner span,.database-label-row small{color:var(--text-muted)}.database-live-card strong{font-size:1rem}.database-live-card.emphasis{background:linear-gradient(135deg,#082f49a6,#0e749052);border-color:#38bdf859}.database-inline-banner{gap:6px;display:grid}.database-inline-banner.danger,.database-risk-field input,.database-risk-field select,.database-risk-field textarea{border-color:#f8717170}.database-inline-banner.danger{background:#7f1d1d47}.database-derived-field input,.database-derived-field select,.database-derived-field textarea{background:#1e293bb3}.database-label-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.database-duplicate-groups{gap:16px;display:grid}.database-draggable-column{cursor:grab;-webkit-user-select:none;user-select:none}.database-draggable-column.is-dragging{opacity:.55}.database-header-chip{gap:4px;display:grid}.database-header-chip span{color:var(--text-muted);font-size:.72rem;font-weight:500}.database-duplicate-card{background:#0f172a57;border:1px solid #94a3b82e;border-radius:18px}.database-duplicate-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.database-duplicates-modal{width:min(1320px,100%)}.database-duplicate-card{gap:14px;padding:16px;display:grid}.database-duplicate-table{min-width:760px}.danger-button{background:linear-gradient(135deg,#dc2626,#f97316)}:root[data-theme=light] .database-sidebar-search input,:root[data-theme=light] .database-subtoolbar input,:root[data-theme=light] .database-toolbar select,:root[data-theme=light] .database-subtoolbar select,:root[data-theme=light] .database-filter-row input,:root[data-theme=light] .database-edit-grid input,:root[data-theme=light] .database-edit-grid select,:root[data-theme=light] .database-edit-grid textarea{color:var(--text-primary);background:#ffffffeb;border-color:#0e749024}:root[data-theme=light] .database-tab{background:linear-gradient(135deg,#f8fafcfa,#e2e8f0eb);border-color:#94a3b838}:root[data-theme=light] .database-tab:hover,:root[data-theme=light] .database-tab.active{background:linear-gradient(135deg,#e0f2fe,#f0f9ff)}:root[data-theme=light] .database-schema-panel,:root[data-theme=light] .database-records-panel,:root[data-theme=light] .database-record-card{background:#fff}:root[data-theme=light] .database-delete-item,:root[data-theme=light] .database-live-card,:root[data-theme=light] .database-inline-banner,:root[data-theme=light] .database-duplicate-card{background:#f8fafcfa}:root[data-theme=light] .database-live-card.emphasis{background:linear-gradient(135deg,#e0f2fe,#f0f9ff)}:root[data-theme=light] .database-inline-banner.danger{background:#fef2f2}.staff-directory-panel{gap:18px;display:grid}.staff-directory-table{min-width:1080px}.staff-directory-row{cursor:pointer}.staff-row-trigger{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.staff-row-trigger strong,.staff-row-trigger .muted-copy{display:block}.staff-directory-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.staff-profile-modal{width:min(1160px,100%)}.staff-profile-modal-body,.staff-quick-chips,.staff-profile-detail-grid,.staff-profile-modal-grid{gap:14px;display:grid}.staff-profile-modal-body{gap:18px}.staff-profile-hero{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:start;gap:18px;display:grid}.staff-profile-avatar{width:132px;height:132px}.staff-photo-upload{border:1px dashed var(--border-soft);background:var(--surface-soft);border-radius:20px;gap:8px;padding:18px;display:grid}.staff-photo-upload input{width:100%}.staff-quick-chips,.staff-profile-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-profile-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.staff-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.staff-edit-grid label{gap:8px;display:grid}.staff-edit-grid input,.staff-edit-grid select{border:1px solid var(--border-soft);width:100%;color:var(--text-primary);font:inherit;background:#0f172a2e;border-radius:14px;padding:12px 14px}.staff-edit-grid-span{grid-column:1/-1}.staff-edit-actions{justify-content:flex-end}:root[data-theme=light] .staff-photo-upload,:root[data-theme=light] .staff-edit-grid input,:root[data-theme=light] .staff-edit-grid select{background:#fffffff0;border-color:#0077b624}.manager-staff-layout{grid-template-columns:minmax(340px,.95fr) minmax(420px,1.05fr);gap:20px;display:grid}.manager-profile-stack{gap:18px;display:grid}.accountant-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.accountant-calendar-heading,.accountant-calendar-day{border-radius:16px;place-items:center;min-height:42px;display:grid}.accountant-calendar-heading{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.accountant-calendar-day{border:1px solid var(--border-soft);background:#0f172a6b;font-weight:600}.accountant-calendar-day.is-today{color:#f8fbff;background:linear-gradient(135deg,#2563eb47,#38bdf83d);border-color:#38bdf85c}.accountant-calendar-day.is-blank{opacity:.35;background:0 0;border-style:dashed}.sales-type-pill{color:var(--text-primary);background:#38bdf824;border:1px solid #38bdf838;border-radius:999px;align-items:center;padding:6px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.sales-type-pill.is-loan{background:#f59e0b24;border-color:#f59e0b38}@media (width<=1160px){.stats-grid,.content-grid,.module-grid,.optometrist-quick-actions-grid,.highlights,.patients-grid,.patient-manager-insights-grid,.billing-grid,.settings-layout,.manager-dashboard-grid,.accountant-dashboard-grid,.manager-staff-layout,.manager-overview-grid,.accountant-summary-grid,.report-layout-grid,.report-sheet-meta,.report-summary-grid,.report-balance-strip,.report-toolbar-grid,.payroll-controls-layout,.payroll-bulk-bar,.memo-filter-bar,.memo-detail-meta,.memo-decision-form,.bank-register-layout,.bank-register-form-grid,.manager-profile-grid,.staff-quick-chips,.staff-profile-detail-grid,.staff-profile-modal-grid,.staff-edit-grid,.finance-layout,.expense-summary-grid,.finance-queue-grid,.billing-breakdown,.billing-workflow-grid,.billing-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-wide{grid-column:span 2}.finance-layout-expenses,.expense-page-stack,.finance-layout-expenses .expense-summary-grid,.finance-layout-expenses .expense-entry-form{grid-template-columns:1fr}.finance-layout-expenses .panel-wide{grid-column:span 1}.database-explorer-grid{grid-template-columns:1fr}}@media (width<=920px){.app-shell{height:auto;overflow:auto}.login-shell,.portal-shell{grid-template-columns:1fr;height:auto;min-height:100vh;overflow:visible}.sidebar{z-index:30;opacity:0;visibility:hidden;will-change:transform, opacity;border-bottom:0;border-right:0;width:min(320px,100vw - 32px);height:auto;max-height:calc(100vh - 32px);margin:0;transition:transform .28s,opacity .24s,visibility .24s;position:fixed;top:16px;bottom:16px;left:16px;overflow-y:auto;transform:translate(calc(-100% - 24px))}.sidebar.is-open{opacity:1;visibility:visible;transform:translate(0)}.sidebar-overlay{z-index:20;background:#0208177a;border:0;display:block;position:fixed;inset:0}.portal-main,.brand-panel,.login-panel{padding:22px}.sidebar-mobile-close{display:inline-flex}.login-shell-modern{align-items:stretch;padding:18px}.portal-hero{border-radius:24px;padding:22px}.portal-hero-main{flex-direction:column}.sidebar-toggle{display:inline-flex}.portal-hero-copy h2{font-size:clamp(1.8rem,8vw,2.7rem)}.portal-hero-actions{width:100%}.login-shell-modern .login-panel{border-radius:28px;place-self:stretch stretch;width:100%;min-height:auto;margin:0}.brand-panel-modern{justify-content:flex-start;min-height:auto;padding:10px 8px 18px}.brand-panel-modern .login-hero-credit{margin-top:12px;padding-top:0}.login-hero-logo-wrap{width:min(100%,260px)}.login-hero-copy h1{font-size:clamp(2.8rem,13vw,5.2rem)}.portal-main{height:auto;overflow:visible}.staff-profile-hero{grid-template-columns:minmax(0,1fr)}.staff-directory-footer,.staff-edit-actions{align-items:stretch}.staff-directory-footer .modal-actions,.staff-edit-actions{justify-content:stretch;width:100%}.staff-directory-footer .ghost-button,.staff-edit-actions .primary-button{width:100%}.panel-top{align-items:center}.login-theme-toggle{width:48px;min-width:48px;height:28px}.login-theme-toggle-thumb{width:20px;height:20px}.stats-grid,.content-grid,.module-grid,.optometrist-quick-actions-grid,.highlights,.patients-grid,.patient-manager-insights-grid,.billing-grid,.settings-layout,.manager-dashboard-grid,.accountant-dashboard-grid,.manager-staff-layout,.finance-layout,.expense-summary-grid,.finance-queue-grid,.patient-form-grid,.patient-filter-grid,.billing-form-grid,.settings-grid,.settings-catalog-grid,.manager-overview-grid,.accountant-summary-grid,.report-layout-grid,.report-sheet-meta,.report-summary-grid,.report-balance-strip,.report-snapshot-bar,.report-type-grid,.report-toolbar-grid,.payroll-controls-layout,.payroll-bulk-bar,.memo-filter-bar,.memo-detail-meta,.memo-decision-form,.notes-workspace,.bank-register-layout,.bank-register-form-grid,.manager-profile-grid,.payroll-advance-form,.extract-bulk-actions,.extract-filter-grid,.billing-breakdown,.billing-workflow-grid,.billing-summary-grid,.patient-record-meta,.assign-grid,.patient-table-actions,.patient-modal-overview-grid,.patient-payment-summary,.patient-name-edit-grid{grid-template-columns:1fr}.expense-filter-grid-horizontal,.expense-filter-grid-horizontal label:first-child{grid-column:auto;grid-template-columns:1fr}.panel-wide{grid-column:span 1}.portal-header,.panel-heading,.patient-lookup-header,.table-row,.stack-item,.sidebar-brand,.patient-record-top,.patient-record-actions,.pagination-bar,.pagination-actions,.filter-actions-row{flex-direction:column;align-items:flex-start}.modal-overlay{padding:12px}.modal-panel{border-radius:20px;max-height:calc(100vh - 24px);padding:18px}.patient-payment-row{display:grid}.patient-payment-row>div:last-child{text-align:left}.messenger-panel{width:auto;padding:16px;bottom:92px;left:16px;right:16px}.messenger-layout{grid-template-columns:minmax(0,1fr)}.messenger-conversation{min-height:0}.messenger-message-stream{max-height:300px}.messenger-toast-stack{width:auto;left:16px;right:16px}.messenger-fab{bottom:16px;right:16px}.modal-actions{justify-content:space-between;width:100%}.payment-summary-hero,.payment-summary-grid,.patient-search-shell{grid-template-columns:1fr}.patient-search-icon,.patient-search-hint{display:none}.patient-form-section-header{flex-direction:column}.settings-wallpaper-preview{width:100%}.password-field,.database-record-grid,.database-edit-grid{grid-template-columns:1fr}.database-subtoolbar,.database-toolbar,.database-footer{align-items:stretch}}@media (height<=900px){.login-shell-modern{padding:16px}.brand-panel-modern,.login-shell-modern .login-panel{min-height:min(640px,100vh - 32px)}}
