:root{--color-primary: #0F766E;--color-primary-hover: #115E59;--color-primary-active: #134E4A;--color-accent: #0F766E;--color-accent-hover: #115E59;--color-gold: #C7E9E2;--color-bg: #F5F9F8;--color-nav-active-bg: #E6F4F1;--card: #FFFFFF;--line: #E3E8EE;--color-card: #ffffff;--color-border: #DCE7E4;--color-border-light: #EEF5F3;--color-border-input: #A7BDB7;--color-text: #16324F;--color-text-heading: #16324F;--color-text-secondary: #526477;--color-text-muted: #526477;--color-text-placeholder: #526477;--color-text-status: #526477;--color-error: #DC2626;--color-warning: #92400E;--color-success: #15803D;--color-badge-success-bg: #DCFCE7;--color-badge-success-text: #15803D;--color-badge-warn-bg: #FEF3C7;--color-badge-warn-text: #92400E;--color-badge-error-bg: #FEE2E2;--color-badge-error-text: #B91C1C;--color-badge-neutral-bg: #F1F5F9;--color-badge-neutral-text: #475569;--sidebar-width: 260px;--header-height: 64px;--radius: 12px;--radius-sm: 8px;--shadow-card: 0 4px 16px rgba(22, 50, 79, .04);--shadow-dialog: 0 40px 90px rgba(10, 18, 28, .35);--shadow-rx-paper: 0 24px 48px rgba(24, 34, 47, .12);--shadow-rx-beam: 0 0 8px rgba(15, 118, 110, .6);--shadow-legal-topbar: 0 6px 24px rgba(24, 34, 47, .08);--shadow-legal-pill: 0 1px 3px rgba(24, 34, 47, .18);--shadow-legal-topbtn: 0 10px 24px rgba(24, 34, 47, .25);--shadow-legal-search-focus: 0 0 0 4px rgba(20, 128, 110, .14);--shadow-landing-nav-scrolled: 0 6px 24px rgba(24, 34, 47, .06);--shadow-landing-card: 0 22px 44px rgba(24, 34, 47, .1);--shadow-landing-btn-dark: 0 10px 24px rgba(15, 95, 85, .25);--shadow-landing-btn-teal: 0 10px 26px rgba(63, 179, 154, .35);--shadow-landing-btn-cta: 0 12px 28px rgba(15, 95, 85, .28);--shadow-landing-paper: 0 26px 50px rgba(24, 34, 47, .12);--shadow-landing-paper-hover: 0 34px 60px rgba(24, 34, 47, .16);--shadow-landing-sheet: -30px 0 80px rgba(10, 18, 28, .25);--shadow-landing-mini-ui: 0 20px 40px rgba(24, 34, 47, .1);--shadow-landing-note: 0 14px 30px rgba(24, 34, 47, .1);--shadow-landing-focus: 0 0 0 4px rgba(20, 128, 110, .14);--shadow-landing-pulse-0: 0 0 0 0 rgba(20, 128, 110, .4);--shadow-landing-pulse-1: 0 0 0 6px rgba(20, 128, 110, 0);--shadow-soft: 0 6px 14px -8px rgba(14, 42, 59, .35);--shadow-teal: 0 8px 18px -8px rgba(20, 128, 110, .6);--shadow-card-hover: 0 14px 28px -16px rgba(14, 42, 59, .35);--shadow-btn-hover: 0 6px 14px -8px rgba(14, 42, 59, .35);--shadow-btn-primary: 0 8px 18px -8px rgba(20, 128, 110, .6);--shadow-btn-dark: 0 8px 18px -8px rgba(14, 42, 59, .6);--shadow-avatar-ring: 0 0 0 5px #FFFFFF, 0 0 0 6px #E3E8EE;--text-2xs: 11px;--text-md-sm: 15px;--text-2xl: 32px;--text-3xl: 40px;--text-4xl: 48px;--text-5xl: 64px;--text-landing-h1: clamp(42px, 5.2vw, 64px);--text-landing-h2: clamp(32px, 4vw, 44px);--text-landing-h2-sub: clamp(28px, 3.4vw, 38px);--text-landing-h2-purpose: clamp(32px, 3.6vw, 46px);--text-landing-demo-h3: 18px;--text-landing-faq-q: 18px;--text-landing-faq-a: 16px;--text-landing-note-title: 30px;--text-landing-note-sub: 24px;--text-landing-step-num: 15px;--text-landing-initials: 13px;--text-landing-footer-logo: 18px;--text-landing-logo: 20px;--text-landing-statement: clamp(28px, 3vw, 36px);--text-landing-h3: 20px;--text-landing-role-h3: 30px;--text-landing-signin-h2: 34px;--text-landing-rx: 48px;--text-landing-med-name: 32px;--text-landing-med-sig: 24px;--text-landing-doc-name: 26px;--text-landing-doc-sig: 21px;--text-landing-qty: 40px;--text-landing-hero-p: 19px;--text-landing-sec-p: 18px;--text-landing-safeguard: 17px;--text-landing-body: 16px;--text-landing-btn: 15px;--text-landing-sub: 14px;--text-landing-meta: 13px;--text-landing-tag: 12px;--text-legal-hero: 56px;--text-legal-h2: 25px;--text-legal-plain: 18px;--text-legal-intro: 19px;--font-serif: "IBM Plex Serif", Georgia, serif;--text-xs: 12px;--text-login-foot: 13px;--text-modal-muted: 13px;--text-sm: 14px;--text-modal-tab: 15px;--text-modal-bullet: 15px;--text-base: 16px;--text-md: 16px;--text-lg: 20px;--text-rx-dose: 26px;--text-modal-h3: 26px;--text-xl: 28px;--text-modal-lead: 28px;--text-login-h1: 34px;--text-rx-name: 36px;--text-rx-symbol: 64px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--ease-out-smooth: cubic-bezier(.16, 1, .3, 1);--transition: .2s cubic-bezier(.16, 1, .3, 1);--transition-fast: .14s cubic-bezier(.16, 1, .3, 1);--transition-smooth: .24s cubic-bezier(.16, 1, .3, 1);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-login: "IBM Plex Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-handwriting: "Caveat", cursive}::selection{background:var(--color-nav-active-bg);color:var(--color-text)}html{scrollbar-color:var(--color-border-input) var(--color-bg)}input,textarea{caret-color:var(--color-primary)}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{text-underline-offset:3px}button:disabled{cursor:not-allowed}input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;transition:transform var(--transition-fast)}input[type=checkbox]:hover{transform:scale(1.15)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font);font-size:var(--text-base);font-weight:400;line-height:1.5;color:var(--color-text);background:var(--color-bg);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.page{display:none;min-height:100vh}.page.active{display:block}.landing-page{min-height:100vh;width:100%;background:#fff;font-family:var(--font-login);color:#18222f;overflow-x:clip}.landing-page button:focus-visible,.landing-page a:focus-visible,.landing-page input:focus-visible{outline:3px solid #3B8FC2;outline-offset:2px}.wrap{width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box;padding:0 clamp(20px,4vw,48px)}@media(min-width:1600px){.wrap{max-width:1320px}}.landing-header{position:sticky;top:0;z-index:30;width:100%;background:#fff;border-bottom:1px solid #E3E8EE;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.landing-header.is-scrolled{background:#ffffffe0;backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid #E3E8EE;box-shadow:var(--shadow-landing-nav-scrolled)}.landing-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:16px}.landing-header-row1{display:flex;align-items:center;gap:16px}.login-logo-mark{width:36px;height:18px;flex-shrink:0}.landing-hamburger-btn{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #D5DCE4;border-radius:8px;background:#fff;color:#18222f;cursor:pointer;transition:background .15s ease,border-color .15s ease}.landing-hamburger-btn:hover{background:#f1f5f9;border-color:#94a3b8}.landing-mobile-menu{display:flex;flex-direction:column;gap:8px;padding:14px 16px 18px;background:#fff;border-top:1px solid #E3E8EE;border-bottom:1px solid #E3E8EE;box-shadow:var(--shadow-landing-nav-scrolled)}.mobile-nav-item{display:block;width:100%;text-align:left;padding:10px 14px;border:0;border-radius:6px;background:transparent;font:inherit;font-size:var(--text-landing-btn);font-weight:500;color:#2d3a4b;cursor:pointer}.mobile-nav-item:hover{background:#f0f4f5;color:#0d2842}@media(max-width:860px){.landing-desktop-cta{display:none!important}.landing-hamburger-btn{display:inline-flex!important}}.menu-toggle{display:none;width:44px;height:44px;border:1px solid #C9D1DA;border-radius:12px;background:#fff;color:#18222f;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,transform .2s ease}.menu-toggle:hover{background:#f0f4f5;border-color:#9aa7b4}.menu-toggle svg{transition:transform .25s cubic-bezier(.22,1,.36,1)}.menu-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.lbl-short{display:none}.play-ico{transition:transform .25s cubic-bezier(.2,.8,.2,1),color .2s ease}.btn-ghost:hover .play-ico{transform:scale(1.1);color:#14806e}.sm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f16208c;display:flex;align-items:center;justify-content:center;padding:24px 16px;overflow-y:auto;animation:lsHero .3s ease both}.sm-dialog{width:100%;max-width:500px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);background:#fff;border-radius:18px;box-shadow:var(--shadow-dialog);overflow:hidden;display:flex;flex-direction:column}.sm-dialog>.modal-body{flex:1 1 auto;min-height:0;overflow-y:auto}.about-dialog .modal-body{padding:0!important}.required-star{color:#dc2626!important;font-weight:700;margin-left:2px}.landing-nav{display:flex;align-items:center;gap:6px}.nav-btn{position:relative;min-height:42px;padding:0 16px;border:0;border-radius:999px;background:transparent;font:inherit;font-size:var(--text-landing-btn);font-weight:500;color:#3d4a5a;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .15s ease}.nav-btn:hover{background:#f0f4f5;color:#18222f}.nav-btn:active{transform:scale(.96)}.nav-btn:after{content:"";position:absolute;left:16px;right:16px;bottom:7px;height:2px;border-radius:2px;background:#14806e;transform:scaleX(0);transform-origin:center;transition:transform .3s cubic-bezier(.3,.7,.2,1)}.nav-btn.is-sel{color:#18222f;font-weight:600}.nav-btn.is-sel:after{transform:scaleX(1)}.btn-dark{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border:0;border-radius:999px;background:#18222f;font:inherit;font-size:var(--text-landing-btn);font-weight:600;color:#fff;cursor:pointer;text-decoration:none;transition:background-color .2s ease,transform .15s ease,box-shadow .2s ease}.btn-dark svg{transition:transform .2s ease}.btn-dark:hover{background:#0f5f55;box-shadow:var(--shadow-landing-btn-dark)}.btn-dark:hover svg.arrow-right{transform:translate(3px)}.btn-dark:hover svg.arrow-down{transform:translateY(2px)}.btn-dark:active,.btn-ghost:active{transform:scale(.97)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border:1px solid #C9D1DA;border-radius:999px;background:#fff;font:inherit;font-size:var(--text-landing-btn);font-weight:600;color:#18222f;cursor:pointer;text-decoration:none;transition:border-color .2s ease,background-color .2s ease,transform .15s ease}.btn-ghost svg{transition:transform .2s ease}.btn-ghost:hover{border-color:#14806e;background:#f2f8f6}.btn-ghost:hover svg.arrow-down{transform:translateY(2px)}.landing-section{min-height:calc(var(--vh, 100vh) - var(--header-h, 72px));box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,5vw,64px) 0}.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:48px;align-items:center}.hero-left{display:flex;flex-direction:column;gap:20px;animation:landingRise .7s cubic-bezier(.2,.7,.2,1) backwards}.hero-h1{margin:0;font-family:var(--font-serif);font-size:var(--text-landing-h1);font-weight:600;line-height:1.02;letter-spacing:-.03em;color:#18222f}.hero-p{margin:0;font-size:var(--text-landing-hero-p);line-height:1.5;color:#3d4a5a;max-width:480px}.hero-buttons{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.hero-buttons .btn-dark,.hero-buttons .btn-ghost{min-height:52px;padding:0 24px;font-size:var(--text-landing-body)}.hero-note{margin:0;font-size:var(--text-landing-sub);color:#6a7685}.hero-scanner-wrap{animation:landingRise .7s cubic-bezier(.2,.7,.2,1) .15s backwards}.dots{background-color:#f3f6f7;background-image:radial-gradient(#D3DCE2 1px,transparent 1px);background-size:22px 22px}.paper{background:#fff;border-radius:6px;box-shadow:var(--shadow-landing-paper);transform:rotate(-1.5deg);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s ease;padding:28px 24px 24px;position:relative;overflow:hidden}.paper:hover{transform:rotate(-.5deg) translateY(-2px);box-shadow:var(--shadow-landing-paper-hover)}.medbox{position:relative;padding:12px 14px;border-radius:8px;border:2px dashed #C9D1DA;background:transparent;display:flex;flex-direction:column;gap:4px;transition:border-color .3s ease,background-color .3s ease}.medbox.is-scanned{border:2px solid #14806E;background:#14806e12}.pulse{animation:landingPulse 1.6s ease-in-out infinite}.pop{animation:landingPop .35s cubic-bezier(.3,1.6,.5,1) both}.card,.how-grid .card{background:#fff!important;border:1px solid #E3E8EE!important;border-radius:24px!important;box-shadow:var(--shadow-soft);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,border-color .3s ease!important}.card:hover,.how-grid .card:hover{transform:translateY(-4px)!important;box-shadow:var(--shadow-landing-card);border-color:#d5dce4!important}.messy-note{position:relative;background:#fff;border:1px solid #E3E8EE;border-radius:8px;padding:20px 24px;transform:rotate(-1.5deg);box-shadow:var(--shadow-landing-note);overflow:hidden;transition:border-color .3s ease,box-shadow .3s ease}.messy-note.is-scanning{border-color:#14806e;box-shadow:var(--shadow-landing-paper-hover)}.messy-note.is-scanned{border-color:#3fb39a}.note-scan-beam{position:absolute;left:0;right:0;bottom:-20%;height:64px;background:linear-gradient(to top,rgba(20,128,110,.32) 0%,rgba(63,179,154,.16) 45%,rgba(20,128,110,.04) 80%,transparent 100%);border-top:2.5px solid #14806E;box-shadow:var(--shadow-rx-beam);pointer-events:none;animation:noteScanSweep .95s cubic-bezier(.4,0,.2,1) forwards}.note-scan-beam:after{content:"";position:absolute;top:-2.5px;left:0;right:0;height:2px;background:#3fb39a;box-shadow:var(--shadow-rx-beam)}@keyframes noteScanSweep{0%{bottom:-25%;opacity:0}15%{opacity:1}85%{opacity:1}to{bottom:110%;opacity:0}}.demo-result-box{animation:demoFadeUp .4s cubic-bezier(.2,.7,.2,1) backwards}@keyframes demoFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.faq-accordion-item{border-top:1px solid #E3E8EE}.faq-accordion-item:last-child{border-bottom:1px solid #E3E8EE}.faq-btn{width:100%;min-height:64px;padding:16px 0;border:0;background:transparent;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;font:inherit;font-size:var(--text-landing-faq-q);font-weight:600;color:#18222f;transition:color .2s ease}.faq-btn>span:first-child{transition:transform .25s cubic-bezier(.22,1,.36,1)}.faq-btn:hover{color:#0f5f55}.faq-btn:hover>span:first-child{transform:translate(3px)}.faq-icon-circle{flex:0 0 36px;width:36px;height:36px;border-radius:50%;border:1px solid #C9D1DA;background:#fff;color:#3d4a5a;display:flex;align-items:center;justify-content:center;transition:transform .35s cubic-bezier(.2,.7,.2,1),background-color .35s ease,border-color .35s ease,color .35s ease}.faq-btn:hover .faq-icon-circle{border-color:#14806e;color:#14806e;transform:translateY(2px)}.faq-btn[aria-expanded=true] .faq-icon-circle{transform:rotate(180deg);background:#14806e;border-color:#14806e;color:#fff}.faq-btn[aria-expanded=true]:hover .faq-icon-circle{transform:rotate(180deg) translateY(-2px)}.faq-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1)}.faq-panel.is-open{grid-template-rows:1fr}.faq-panel-inner{overflow:hidden}.faq-panel-text{padding-bottom:24px;font-size:var(--text-landing-faq-a);line-height:1.6;color:#3d4a5a;transition:opacity .3s ease;opacity:0}.faq-panel.is-open .faq-panel-text{opacity:1}.faq-panel-text a{color:#0f5f87;text-decoration:underline;font-weight:500;transition:color .2s ease}.faq-panel-text a:hover{color:#0a3f5a}.stagger-item{opacity:0}.is-in .stagger-item{animation:landingStaggerIn .8s cubic-bezier(.2,.7,.2,1) backwards;opacity:1}.is-in .stagger-slide-right{animation:landingSlideRight .8s cubic-bezier(.2,.7,.2,1) backwards;opacity:1}@keyframes landingStaggerIn{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes landingSlideRight{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes landingRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes landingPulse{0%,to{box-shadow:var(--shadow-landing-pulse-0)}50%{box-shadow:var(--shadow-landing-pulse-1)}}@keyframes landingPop{0%{transform:scale(0)}to{transform:scale(1)}}.signin-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0f162073;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:opacity .35s ease,visibility .35s ease}.signin-drawer{position:fixed;top:0;right:0;bottom:0;z-index:60;width:min(460px,100%);box-sizing:border-box;overflow-y:auto;background:#fff;padding:28px 36px max(24px,env(safe-area-inset-bottom));display:flex;flex-direction:column;box-shadow:var(--shadow-landing-sheet);transition:transform .45s cubic-bezier(.2,.8,.2,1),visibility .45s ease;transform:translate(100%);visibility:hidden}.signin-drawer.is-open{transform:none;visibility:visible}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:var(--text-landing-sub);font-weight:600;color:#3d4a5a;transition:color .2s ease}.field:focus-within label{color:#0f5f55}.inp,.signin-drawer input.inp{width:100%;box-sizing:border-box;height:52px;padding:0 16px;font:inherit;font-size:var(--text-landing-body);color:#18222f;background:#fff;border:1px solid #C9D1DA;border-radius:12px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.signin-drawer input#password{padding-right:48px}.inp::placeholder{color:#7a8693}.inp:hover{border-color:#9aa7b4}.inp:focus{border-color:#14806e;box-shadow:var(--shadow-landing-focus)}.inp[aria-invalid=true]{border-color:#dc2626!important}.sm-err{margin:0;padding:10px 14px;border-radius:12px;background:#fdf2f2;border:1px solid #F4CCCC;color:#991b1b;font-size:var(--text-landing-sub);line-height:1.5}.eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:8px;background:none;color:#556273;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .2s ease,color .2s ease}.eye:hover{background:#f0f4f5;color:#18222f}.eye svg{width:20px;height:20px;display:block;flex-shrink:0}.ulink{font-weight:600;color:#0f5f87;text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-size:0% 1.5px;background-repeat:no-repeat;background-position:0 100%;padding-bottom:1px;transition:background-size .25s ease,color .2s ease}.ulink:hover,.ulink:focus-visible{background-size:100% 1.5px;color:#0a3f5a}.cta{width:100%;height:54px;border:0;border-radius:12px;background:#18222f;color:#fff;font:inherit;font-size:var(--text-landing-body);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background-color .25s ease,transform .15s ease,box-shadow .25s ease}.cta:hover{background:#0f5f55;box-shadow:var(--shadow-landing-btn-dark)}.cta:active{transform:scale(.985)}.cta.is-done{background:#14806e}.spin{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:landingSpin .8s linear infinite}@keyframes landingSpin{to{transform:rotate(360deg)}}.x-btn{width:44px;height:44px;border:0;border-radius:50%;background:#f0f2f5;color:#3d4a5a;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,transform .2s ease}.x-btn:hover{background:#e3e8ee;transform:rotate(90deg)}.landing-caps-warning{font-size:var(--text-landing-tag);color:#b42318;margin:4px 0 0}.landing-error-banner{padding:10px 14px;border-radius:8px;font-size:var(--text-landing-sub);line-height:1.4;margin:0;border-left:4px solid var(--color-error);background:#fee4e2;color:#b42318}.landing-error-banner[data-kind=info]{border-left-color:#14806e;background:#e3f1ee;color:#0f5f55}.landing-footer a{color:#6a7685;text-decoration:none;transition:color .2s ease}.landing-footer a:hover{color:#18222f}@media(max-width:860px){.landing-header-inner{flex-direction:column;align-items:stretch;gap:12px;padding-top:14px;padding-bottom:12px}.landing-header-row1{display:flex;justify-content:space-between;align-items:center;width:100%}.landing-nav{display:flex;width:100%;overflow-x:auto;white-space:nowrap;scrollbar-width:none;-ms-overflow-style:none;gap:4px}.landing-nav::-webkit-scrollbar{display:none}.faq-sticky-left{position:static!important;top:auto!important}}@media(max-width:640px){.hero-grid{grid-template-columns:minmax(0,1fr)!important}.hero-buttons{flex-direction:row!important}.scanner-dots{padding:28px 14px!important}.paper{padding:22px 20px!important}.medbox span:first-child{font-size:var(--text-landing-doc-name)!important}.medbox span:nth-child(2){font-size:var(--text-landing-med-sig)!important}.signin-drawer{width:100%!important;padding:24px 20px max(24px,env(safe-area-inset-bottom))!important}.tbl th,.tbl td,.inventory-table th,.inventory-table td{padding-left:12px;padding-right:12px}.tbl td:first-child,.inventory-table td:first-child,.data-table td:first-child{min-width:170px}.tbl td.empty,.inventory-table td.empty,.data-table td.empty{white-space:normal;min-width:0}.xlabels span:nth-child(2n),.chart-x-labels span:nth-child(2n){display:none}.topbar{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px;padding-top:14px;padding-bottom:14px}.topbar h1{font-size:var(--text-lg)}.topbar p{font-size:var(--text-login-foot)}.top-actions{grid-column:1 / -1;justify-content:flex-start;gap:8px}.top-actions .btn{flex:1 1 auto;justify-content:center}.top-actions .av,.top-actions .user-avatar{display:none}.card-h{padding:16px 16px 0}}@media(prefers-reduced-motion:reduce){.rise,.stagger-item,.stagger-slide-right,.pulse,.pop,.spin,.note-scan-beam,.demo-result-box{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}.nav-btn:after,.btn-dark,.btn-ghost,.card,.paper,.faq-icon-circle,.faq-panel,.faq-panel-text,.ulink{transition:none!important}}.login-page-footer{padding:20px 56px;border-top:1px solid #E3E8EE;font-size:var(--text-login-foot);color:#556273;background:#fff}.login-wrap{display:grid;grid-template-columns:44% 56%;min-height:100vh}.login-left{background-color:#0a1e34;color:#fff;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;position:relative;overflow-y:auto;padding:var(--space-12)}.login-left:before{content:none}.login-left:after{content:none}.brand-header{display:flex;flex-direction:column;gap:var(--space-2)}.brand-title-wrap{display:flex;align-items:center;gap:var(--space-3)}.brand-title-wrap .brand-mark{width:56px;height:28px;flex-shrink:0}.login-left .portal-title{margin:0;font-size:var(--text-xl);line-height:1.2;font-weight:700;color:#fff;text-align:left}.login-left .brand-scan{color:#2dd4bf}.login-left .portal-tagline{margin:0;font-size:var(--text-sm);color:#94a3b8;line-height:1.5;max-width:380px}.clinical-spec-card{margin:var(--space-8) 0;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);padding:var(--space-6);width:100%;max-width:440px}.spec-badge{display:inline-block;font-size:var(--text-xs);font-weight:700;color:#93c5fd;text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-4)}.spec-list{display:flex;flex-direction:column;gap:var(--space-4)}.spec-item{display:flex;flex-direction:column;gap:2px}.spec-title{font-size:var(--text-sm);font-weight:600;color:#fff}.spec-desc{font-size:var(--text-xs);color:#cbd5e1;line-height:1.45}.spec-notice{margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid rgba(255,255,255,.12);font-size:var(--text-xs);color:#94a3b8;line-height:1.5}.portal-foot{position:static;font-size:var(--text-xs);color:#94a3b8;margin-top:var(--space-4);line-height:1.5}.login-right{background:var(--color-bg);display:grid;place-items:center;padding:var(--space-8)}.login-card{width:min(460px,100%);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-12)}.terminal-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:999px;background:var(--color-nav-active-bg);color:var(--color-primary);font-size:var(--text-xs);font-weight:600;margin-bottom:var(--space-4)}.terminal-dot{width:8px;height:8px;border-radius:50%;background:var(--color-primary);flex-shrink:0}.field-label-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-2)}.field-label-row label{margin-bottom:0}.field-label-row .link-btn{font-size:var(--text-xs)}.password-input-wrap{position:relative}.password-input-wrap input{padding-right:calc(var(--space-8) + var(--space-3))}.demo-accounts-bar{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.demo-bar-label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.demo-pills{display:flex;flex-wrap:wrap;gap:var(--space-2)}.demo-pill{border:1px solid var(--color-border-input);background:#fff;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-family:var(--font);font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);cursor:pointer;min-height:44px;transition:background var(--transition),border-color var(--transition),color var(--transition)}.demo-pill:hover{background:var(--color-nav-active-bg);border-color:var(--color-primary);color:var(--color-primary)}.demo-help-note{margin:var(--space-3) 0 0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.4}.login-card input{height:44px}.password-toggle{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background-color var(--transition-smooth),color var(--transition-smooth),transform var(--transition-fast)}.password-toggle:hover{background:var(--color-border-light);color:var(--color-primary);transform:translateY(-50%) scale(1.08)}.password-toggle:active{transform:translateY(-50%) scale(.95)}.password-toggle .eye-closed,.password-toggle[aria-pressed=true] .eye-open{display:none}.password-toggle[aria-pressed=true] .eye-closed{display:block}.caps-warning{margin-top:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--color-badge-warn-text)}#loginError{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid #FECACA;border-left:4px solid var(--color-error);border-radius:var(--radius-sm);background:var(--color-badge-error-bg);color:var(--color-badge-error-text);font-size:var(--text-sm);font-weight:500}#loginError[data-kind=info]{border-color:var(--color-border);border-left-color:var(--color-primary);background:var(--color-nav-active-bg);color:var(--color-primary)}.login-title{font-size:var(--text-xl);font-weight:700;color:var(--color-text-heading);letter-spacing:-.01em}.login-sub{margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--text-base)}.field-group{margin-top:var(--space-6)}label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-2)}input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date]{width:100%;height:44px;border:1px solid var(--color-border-input);background:#fff;border-radius:var(--radius-sm);padding:0 var(--space-3);font-family:var(--font);font-size:var(--text-base);color:var(--color-text);transition:border-color var(--transition),outline var(--transition)}input::placeholder{color:var(--color-text-placeholder)}input:focus{border-color:var(--color-primary)}textarea{width:100%;border:1px solid var(--color-border-input);background:#fff;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-family:var(--font);font-size:var(--text-base);color:var(--color-text);resize:vertical;transition:border-color var(--transition),outline var(--transition)}textarea:focus{border-color:var(--color-primary)}select{height:44px;border:1px solid var(--color-border-input);background:#fff;border-radius:var(--radius-sm);padding:0 var(--space-3);font-family:var(--font);font-size:var(--text-base);color:var(--color-text)}.remember-row{margin-top:var(--space-4);display:flex;justify-content:space-between;align-items:center;color:var(--color-text-muted);font-size:var(--text-sm)}.remember{display:flex;align-items:center;gap:var(--space-2)}.remember input{width:18px;height:18px;border-radius:4px;accent-color:var(--color-primary)}.link-btn{border:none;background:transparent;font-family:var(--font);font-size:var(--text-sm);color:var(--color-primary);cursor:pointer;font-weight:600;text-decoration:underline;transition:color var(--transition)}.link-btn:hover{color:var(--color-primary-hover)}.auth-switch{margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.primary-btn,.ghost-btn,.minor-btn,.pill-btn,.scan-btn{border:none;border-radius:var(--radius-sm);font-family:var(--font);font-weight:500;font-size:var(--text-base);cursor:pointer;transition:background-color var(--transition-smooth),border-color var(--transition-smooth),color var(--transition-smooth),transform var(--transition-fast),opacity var(--transition-smooth),filter var(--transition-smooth);line-height:1;will-change:transform}.primary-btn{margin-top:var(--space-6);width:100%;padding:var(--space-3) var(--space-6);background:var(--color-accent);color:#fff;font-size:var(--text-base);font-weight:600}.primary-btn:hover{background:var(--color-accent-hover);transform:translateY(-1.5px);filter:brightness(1.02)}.primary-btn:active{background:var(--color-accent-hover);transform:translateY(.5px) scale(.99)}.ghost-btn{padding:var(--space-3) var(--space-6);border:1px solid var(--color-border-input);background:#fff;color:var(--color-primary)}.ghost-btn:hover{background:var(--color-bg);border-color:#94a3b8;transform:translateY(-1.5px)}.ghost-btn:active{transform:translateY(.5px) scale(.99)}.minor-btn{background:#fff;border:1px solid var(--color-border-input);padding:var(--space-3) var(--space-6);color:var(--color-primary)}.minor-btn:hover{background:var(--color-bg);border-color:#94a3b8;transform:translateY(-1.5px)}.minor-btn:active{transform:translateY(.5px) scale(.99)}.pill-btn{background:var(--color-accent);color:#fff;padding:var(--space-3) var(--space-6);font-weight:600}.pill-btn:hover{background:var(--color-accent-hover);transform:translateY(-1.5px);filter:brightness(1.02)}.pill-btn:active{transform:translateY(.5px) scale(.99)}.scan-btn{padding:var(--space-4) var(--space-8);background:var(--color-primary);color:#fff;font-weight:600;font-size:var(--text-base)}.scan-btn:hover{background:var(--color-primary-hover);transform:translateY(-1.5px);filter:brightness(1.02)}.scan-btn:active{transform:translateY(.5px) scale(.99)}.primary-btn:disabled,.ghost-btn:disabled,.minor-btn:disabled,.pill-btn:disabled,.scan-btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important;filter:none!important}.extracting-dots{display:inline-flex;margin-left:2px;letter-spacing:1px}.extracting-dots span{display:inline-block;animation:extract-dot-pulse 1.4s infinite ease-in-out both}.extracting-dots span:nth-child(1){animation-delay:0s}.extracting-dots span:nth-child(2){animation-delay:.2s}.extracting-dots span:nth-child(3){animation-delay:.4s}@keyframes extract-dot-pulse{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.extracting-dots span{animation:none;opacity:1;transform:none}}.primary-btn:disabled,.ghost-btn:disabled,.minor-btn:disabled,.pill-btn:disabled{opacity:.45;cursor:not-allowed}.app-layout{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh}.sidebar{background:var(--color-card);border-right:1px solid var(--color-border);color:var(--color-text);padding:0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-head{display:flex;align-items:center;justify-content:flex-start;min-height:96px;gap:var(--space-4);padding:var(--space-6) var(--space-4);border-bottom:1px solid var(--color-border)}.sidebar-head .brand-mark{width:56px;height:28px}.sidebar-head h1{max-width:130px;font-size:var(--text-lg);line-height:1.2;font-weight:700;color:#0d2842}.nav-group{margin-top:var(--space-6)}.nav-label{padding:var(--space-2) var(--space-4) var(--space-1);font-size:var(--text-xs);font-weight:600;text-transform:none;letter-spacing:0;color:var(--color-text-status)}.nav-link{display:flex;align-items:center;gap:var(--space-2);width:calc(100% - var(--space-4));margin:0 var(--space-2);color:var(--color-text-muted);padding:0 var(--space-3);min-height:48px;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;transition:background-color var(--transition-smooth),color var(--transition-smooth),transform var(--transition-fast)}.nav-link svg{flex-shrink:0;transition:transform var(--transition-smooth)}.nav-link:hover{background:var(--color-border-light);color:var(--color-text);transform:translate(4px)}.nav-link:hover svg{transform:scale(1.12)}.nav-link:active{transform:translate(2px) scale(.99)}.nav-link.active{background:var(--color-nav-active-bg);color:var(--color-primary);font-weight:600;transform:none}.sidebar-user{margin:auto var(--space-3) var(--space-3);padding:var(--space-3);border:0;border-top:1px solid var(--color-border);border-radius:0;background:var(--color-card)}.sidebar-user .name{font-size:var(--text-base);font-weight:600}.sidebar-user .role{font-size:var(--text-sm);margin-top:2px;color:var(--color-text-muted)}.sidebar-user .nav-link{width:auto;margin:var(--space-2) 0 0;padding:0;min-height:44px;font-size:var(--text-sm);color:var(--color-primary);text-decoration:underline}.sidebar-user .nav-link:hover{background:none}.sidebar-version{padding:var(--space-2) var(--space-4) var(--space-3);font-size:var(--text-xs);color:var(--color-text-placeholder)}.main{background:var(--color-bg);min-height:100vh;display:flex;flex-direction:column}.main-header{background:#fff;height:var(--header-height);border-bottom:1px solid var(--color-border);display:flex;align-items:center;padding:0 var(--space-8);flex-shrink:0}.main-header .page-title{font-size:var(--text-lg);font-weight:600;color:var(--color-text-heading);margin:0}.main-content{padding:var(--space-8);flex:1;width:100%;max-width:1280px;margin:0 auto}.screen{display:none}.screen.active{display:block}.section-title{font-size:var(--text-xl);font-weight:700;color:var(--color-text-heading);margin-bottom:var(--space-6)}.panel{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-6)}.card-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-4)}.card-title{margin:0 0 var(--space-3);font-size:var(--text-md);font-weight:600;color:var(--color-text-heading)}.card-head .card-title{margin:0}.trend-summary{margin:0;font-size:var(--text-sm);color:var(--color-text-muted)}.chart-grid line{stroke:var(--color-border);stroke-width:1;vector-effect:non-scaling-stroke}.trend-days{display:flex;justify-content:space-between;gap:var(--space-2);margin:calc(-1 * var(--space-2)) 0 var(--space-4);font-size:var(--text-xs);color:var(--color-text-muted)}.trend-days span{display:flex;flex-direction:column;align-items:center;min-width:0}.trend-days strong{font-size:var(--text-sm);color:var(--color-text)}#outbreakAlert[data-kind=calm]{border-color:#bbf7d0;border-left-color:var(--color-success);background:var(--color-badge-success-bg);color:var(--color-badge-success-text)}#outbreakAlert[data-kind=info]{border-color:var(--color-border);border-left-color:var(--color-primary);background:var(--color-nav-active-bg);color:var(--color-primary)}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.stat{position:relative;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4)}.stat-warn{border-left-color:var(--color-warning)}.stat-danger{border-left-color:var(--color-error)}.stat-icon{position:absolute;top:var(--space-4);right:var(--space-4);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--color-nav-active-bg);color:var(--color-primary)}.stat-warn .stat-icon{background:var(--color-badge-warn-bg);color:var(--color-badge-warn-text)}.stat-danger .stat-icon{background:var(--color-badge-error-bg);color:var(--color-badge-error-text)}.stat .stat-label{padding-right:var(--space-8)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.page-head .section-title{margin-bottom:var(--space-1)}.page-sub{margin:0;font-size:var(--text-base);color:var(--color-text-muted)}.page-head .pill-btn{white-space:nowrap}.table-wrap>table{border:0;border-radius:0}.inventory-table th{white-space:nowrap}.inventory-table th:nth-child(6),.inventory-table td:nth-child(6){text-align:right}.expiry{font-size:var(--text-sm);color:var(--color-text-muted)}.expiry-soon{color:var(--color-badge-warn-text);font-weight:600}.expiry-expired{color:var(--color-badge-error-text);font-weight:600}.stat-label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);margin-bottom:var(--space-2)}.stat-value{font-size:var(--text-xl);font-weight:700;line-height:1;color:var(--color-text-heading)}.stat-sub{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.command-alert-strip{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:10px 18px;margin-bottom:var(--space-4);background:#dc2626;border-radius:var(--radius-sm);color:#fff}.command-alert-left{display:flex;align-items:center;gap:10px;font-size:var(--text-sm);font-weight:500}.command-alert-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#ffffff38;font-weight:700;font-size:var(--text-xs);flex-shrink:0}.command-alert-text{font-size:var(--text-sm);line-height:1.4;color:#fff}.command-alert-btn{display:inline-flex;align-items:center;background:transparent;border:none;color:#fff;font-size:var(--text-sm);font-weight:600;cursor:pointer;white-space:nowrap;padding:0;transition:opacity .15s ease}.command-alert-btn:hover{opacity:.85;text-decoration:underline}.dashboard-header-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.dashboard-header-title{margin:0;font-size:var(--text-xl);font-weight:700;color:var(--color-text-heading)}.dashboard-header-sub{margin:4px 0 0;font-size:var(--text-sm);color:var(--color-text-muted)}.dashboard-header-actions{display:flex;align-items:center;gap:var(--space-3)}.dashboard-header-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:8px 16px;font-size:var(--text-sm);font-weight:600;color:var(--color-text-heading);cursor:pointer;transition:background .15s ease,border-color .15s ease}.dashboard-header-btn:hover{background:#f8fafc;border-color:#cbd5e1}.dashboard-header-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;padding:0}.dashboard-header-bell:hover{background:#f8fafc}.dashboard-bell-badge{position:absolute;top:-4px;right:-4px;background:#dc2626;color:#fff;font-size:var(--text-xs);font-weight:700;border-radius:999px;padding:1px 6px;line-height:1.2}.dashboard-user-pill{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#dcfce7;color:#166534;font-size:var(--text-xs);font-weight:700;border:1px solid #BBF7D0}.dashboard-charts-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.dashboard-bottom-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.command-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:20px 24px;display:flex;flex-direction:column}.command-chart-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);gap:var(--space-2)}.command-chart-title{margin:0;font-size:var(--text-base);font-weight:600;color:var(--color-text-heading)}.command-chart-sub{margin:4px 0 0;font-size:var(--text-xs);color:var(--color-text-muted)}.forecast-highlights{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin:var(--space-4) 0}.forecast-mini-card{padding:var(--space-3);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.forecast-mini-card.danger{background:#fef2f2;border:1px solid #FEE2E2}.forecast-mini-card.info{background:#eff6ff;border:1px solid #DBEAFE}.forecast-mini-label{font-size:var(--text-xs);font-weight:600}.forecast-mini-card.danger .forecast-mini-label{color:#dc2626}.forecast-mini-card.info .forecast-mini-label{color:#2563eb}.forecast-mini-val{font-size:var(--text-lg);font-weight:700;line-height:1.2}.forecast-mini-card.danger .forecast-mini-val{color:#991b1b}.forecast-mini-card.info .forecast-mini-val{color:#1d4ed8}.forecast-mini-sub{font-size:var(--text-xs);color:var(--color-text-muted)}.forecast-caption{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:6px;line-height:1.4}.forecast-action-btn{width:100%;margin-top:var(--space-4);padding:10px 16px;background:#0f766e;color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background .15s ease}.forecast-action-btn:hover{background:#0d9488}.forecast-calc-note{text-align:center;font-size:var(--text-xs);color:var(--color-text-muted);margin-top:8px}.activity-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600}.activity-badge.system{background:#f1f5f9;color:#475569}.activity-badge.pharmacist{background:#dcfce7;color:#166534}.activity-badge.admin{background:#e0e7ff;color:#3730a3}.stat-trend{display:inline-block;font-weight:600;margin-right:4px}.stat-trend.good{color:#0f766e}.stat-trend.warn{color:#d97706}table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}th,td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);font-size:var(--text-base);vertical-align:middle}th{background:var(--color-border-light);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}thead th{position:sticky;top:0;z-index:1}th.number,td.number{text-align:right}tbody tr{transition:background var(--transition)}tbody tr{transition:background-color var(--transition-smooth)}tbody tr:nth-child(2n){background:var(--color-bg)}tbody tr:hover{background:#e8f5f2}tbody tr:focus-within{background:var(--color-nav-active-bg)}.toolbar{display:grid;grid-template-columns:1fr 140px;gap:var(--space-3);margin-bottom:var(--space-4)}.archive-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:none;place-items:center;padding:var(--space-6);background:#0f172a6b}.archive-overlay.active{display:grid}.archive-dialog{width:min(440px,100%);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-card);padding:var(--space-6);box-shadow:var(--shadow-dialog)}.archive-dialog-head,.archive-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.archive-dialog h3{margin:0;color:var(--color-text-heading);font-size:var(--text-md)}.archive-dialog p{margin:var(--space-3) 0 var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.5}.archive-dialog label span{color:var(--color-text-muted);font-weight:400}.archive-close{border:0;background:transparent;color:var(--color-text-muted);cursor:pointer;font:inherit;font-size:var(--text-sm);transition:color var(--transition-fast),transform var(--transition-fast)}.archive-close:hover{color:var(--color-text);transform:scale(1.1)}.archive-message{color:var(--color-error)!important;font-weight:500}.archive-actions{justify-content:flex-end;margin-top:var(--space-4)}.archive-confirm{border:1px solid var(--color-error);border-radius:var(--radius-sm);background:var(--color-error);color:#fff;cursor:pointer;font:inherit;font-size:var(--text-base);font-weight:600;padding:var(--space-2) var(--space-4);transition:background-color var(--transition-smooth),transform var(--transition-fast)}.archive-confirm:hover{background:#b91c1c;transform:translateY(-1.5px)}.archive-confirm:active{transform:translateY(.5px) scale(.99)}.archive-confirm:disabled{cursor:wait;opacity:.65}.search{position:relative}.search input{padding-left:calc(var(--space-8) + var(--space-1))}.search span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-placeholder);font-size:var(--text-base)}.pill{border-radius:999px;padding:2px var(--space-3);font-size:var(--text-xs);font-weight:600;display:inline-block;line-height:1.6}.pill.good{background:var(--color-badge-success-bg);color:var(--color-badge-success-text)}.pill.low{background:var(--color-badge-warn-bg);color:var(--color-badge-warn-text)}.pill.none{background:var(--color-badge-error-bg);color:var(--color-badge-error-text)}.pill.expired{background:var(--color-badge-neutral-bg);color:var(--color-badge-neutral-text)}.patient-strip{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-card);padding:var(--space-4) var(--space-6);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-6)}.patient-strip .meta{grid-column:1}.patient-edit-btn{display:inline-flex;align-items:center;gap:var(--space-2);grid-column:2;grid-row:1 / span 2;align-self:start;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--color-primary);text-decoration:underline;cursor:pointer;font-family:var(--font);transition:background-color var(--transition-smooth),border-color var(--transition-smooth),color var(--transition-smooth),transform var(--transition-fast)}.patient-edit-btn:hover{background:var(--color-nav-active-bg);transform:translateY(-1.5px)}.patient-edit-btn:active{transform:translateY(.5px) scale(.98)}.patient-edit-btn.editing{background:var(--color-primary);color:#fff;border-color:var(--color-primary);text-decoration:none}.patient-edit-btn.editing:hover{background:var(--color-primary-hover);transform:translateY(-1.5px)}.patient-edit-btn.editing:active{transform:translateY(.5px) scale(.98)}.patient-strip .meta{display:flex;gap:var(--space-3) var(--space-8);font-size:var(--text-base);font-weight:600;line-height:1.4;flex-wrap:wrap;color:var(--color-text)}.meta-item{display:flex;flex-direction:column;gap:2px;min-width:0}.patient-strip .meta .muted{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.patient-strip .meta .patient-edit-input{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);padding:2px var(--space-2);font-size:inherit;font-weight:600;font-family:var(--font);color:var(--color-text);width:auto;min-width:60px;max-width:200px;line-height:1.3;height:auto}.patient-strip .meta .patient-edit-input:focus{border-color:var(--color-primary)}.dispense-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:var(--space-6);align-items:start}.scanner-box{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-6)}.step-title{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-md);font-weight:600;color:var(--color-text-heading)}.step-title-section{margin-top:var(--space-6)}.step-num{display:inline-grid;place-items:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:var(--color-primary);color:#fff;font-size:var(--text-xs);font-weight:700}.count-pill{margin-left:var(--space-1);padding:2px var(--space-2);border-radius:999px;background:var(--color-nav-active-bg);color:var(--color-primary);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.scan-hint{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);text-align:center}.scanner-drop{margin-top:var(--space-3);min-height:240px;border:2px dashed var(--color-border-input);border-radius:var(--radius);position:relative;display:grid;place-items:center;overflow:hidden;background:var(--color-bg);color:var(--color-text-status);text-align:center;font-weight:500;font-size:var(--text-base);padding:var(--space-2);transition:border-color var(--transition-smooth),background-color var(--transition-smooth)}.scanner-drop:hover{border-color:var(--color-primary);background:#eef8f6}.scanner-drop.is-scanning{border-color:var(--color-primary)}.scanner-laser-beam,.beam{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--teal, #0F766E) 20%,#5EEAD4 50%,var(--teal, #0F766E) 80%,transparent 100%);box-shadow:var(--shadow-rx-beam);pointer-events:none;z-index:5;animation:rx-scanner-sweep 2s ease-in-out infinite alternate}.scanner-laser-beam:before,.scanner-laser-beam:after{content:none!important}@keyframes rx-scanner-sweep{0%{top:0;transform:translateY(0)}to{top:100%;transform:translateY(-100%)}}#scannerPlaceholder{text-align:center;font-size:var(--text-sm)}#scannerPlaceholder svg{display:block;margin:0 auto var(--space-2)}.scanner-drop img{max-width:100%;max-height:400px;object-fit:contain;border-radius:var(--radius-sm);display:none}.scanner-drop canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:none;cursor:crosshair;z-index:2}.capture-reset-btn{position:absolute;top:10px;right:10px;z-index:7;width:32px;height:32px;border:1px solid rgba(30,41,59,.2);border-radius:50%;background:#fffffff0;color:#334155;font-family:var(--font);font-size:var(--text-lg);line-height:26px;cursor:pointer;display:none;box-shadow:var(--shadow-dialog)}.capture-reset-btn{transition:background-color var(--transition-smooth),color var(--transition-smooth),transform var(--transition-smooth)}.capture-reset-btn:hover{background:#fff;color:#b42318;transform:scale(1.14) rotate(90deg)}.capture-reset-btn:active{transform:scale(.96) rotate(90deg)}.scanner-tooltip{position:absolute;z-index:6;display:none;max-width:260px;background:#fff;color:var(--color-text);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);font-size:var(--text-xs);line-height:1.5;pointer-events:none;border:1px solid var(--color-border)}.scanner-tooltip.pinned{pointer-events:auto;display:block}.scanner-tooltip strong{display:block;color:var(--color-text-muted);margin-bottom:var(--space-1);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.scanner-tooltip .tip-text{font-size:var(--text-base);font-weight:600;color:var(--color-text);word-break:break-word}.scanner-tooltip .tip-conf{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.scanner-tooltip .tip-conf .conf-val{font-weight:600}.scanner-tooltip .tip-conf .conf-high{color:var(--color-success)}.scanner-tooltip .tip-conf .conf-mid{color:var(--color-warning)}.scanner-tooltip .tip-conf .conf-low{color:var(--color-error)}.scanner-tooltip .tip-close{position:absolute;top:4px;right:8px;background:none;border:none;color:var(--color-text-placeholder);font-size:var(--text-md);cursor:pointer;line-height:1;padding:2px var(--space-1);font-family:var(--font)}.scanner-tooltip .tip-close:hover{color:var(--color-text)}.ocr-badge{position:absolute;top:8px;right:8px;z-index:5;background:var(--color-primary);color:#fff;font-size:var(--text-xs);font-weight:600;padding:var(--space-1) var(--space-3);border-radius:999px;display:none;pointer-events:none}.camera-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:none;flex-direction:column;background:#000;border-radius:var(--radius);overflow:hidden}.camera-layer.active{display:flex}.camera-layer video{width:100%;height:100%;object-fit:cover}.camera-controls{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:var(--space-3);z-index:9}.camera-snap-btn{width:52px;height:52px;border-radius:50%;border:3px solid rgba(255,255,255,.6);background:#fff;cursor:pointer;box-shadow:var(--shadow-dialog);transition:transform var(--transition)}.camera-snap-btn:hover{transform:scale(1.06)}.camera-close-btn{width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:#0006;color:#fff;font-size:var(--text-md);cursor:pointer;display:grid;place-items:center;font-family:var(--font);transition:background var(--transition)}.camera-close-btn:hover{background:#0009}.scan-actions{margin-top:var(--space-4);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.scan-actions-full{margin-top:var(--space-3)}.scan-actions-full .scan-btn{width:100%;display:block}.scanner-status{margin-top:var(--space-3);background:var(--color-border-light);border-top:1px solid var(--color-border);padding:var(--space-3) var(--space-4);border-radius:0 0 var(--radius-sm) var(--radius-sm);font-size:var(--text-sm);color:var(--color-text-status);font-weight:500;min-height:24px}.scanner-status.error{color:var(--color-error)}.alert{margin-bottom:var(--space-4);border-radius:var(--radius-sm);border:1px solid #FDE68A;border-left:4px solid var(--color-border);background:#fffbeb;color:var(--color-badge-warn-text);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);line-height:1.5;font-weight:500}.alert[data-kind=error]{border-left-color:var(--color-error)}.alert[data-kind=warn],.alert[data-kind=alert]{border-left-color:var(--color-warning)}.alert[data-kind=info]{border-left-color:var(--color-primary)}.alert[data-kind=calm]{border-left-color:var(--color-success)}.rx-card{border:0;border-bottom:1px solid var(--color-border);border-radius:0;background:var(--color-card);padding:var(--space-4) 0;margin-bottom:var(--space-3);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center}.rx-drug{font-size:var(--text-md);font-weight:700;margin-top:var(--space-1);color:var(--color-text-heading);overflow-wrap:anywhere}.rx-small{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:400}.tag{border:1px solid transparent;border-radius:999px;padding:2px var(--space-3);background:var(--color-badge-neutral-bg);font-size:var(--text-xs);color:var(--color-badge-neutral-text);font-weight:600;text-align:center;white-space:nowrap}.tag.ok{background:var(--color-badge-success-bg);border-color:#bbf7d0;color:var(--color-badge-success-text)}.tag.warn{background:var(--color-badge-warn-bg);border-color:#fde68a;color:var(--color-badge-warn-text)}.tag.bad{background:var(--color-badge-error-bg);border-color:#fecaca;color:var(--color-badge-error-text)}.rx-generic-suggest{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #FECACA;color:#991b1b;font-size:var(--text-xs);font-weight:500;line-height:1.5}.rx-shelf-info{margin-top:var(--space-1);font-size:var(--text-xs);font-weight:600;color:var(--color-success)}.rx-stock-info{margin-top:var(--space-1);font-size:var(--text-xs);font-weight:500}.rx-stock-info.in-stock{color:var(--color-success)}.rx-stock-info.no-stock{color:var(--color-error)}.rx-card-edit{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light);display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.rx-edit-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);margin:0}.rx-edit-name{flex:2 1 180px}.rx-edit-qty{flex:0 1 80px}.rx-edit-dosage{flex:1 1 110px}.rx-edit-field input{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:#fff;padding:0 var(--space-2);width:100%;font-family:var(--font);font-size:var(--text-sm);color:var(--color-text);min-height:44px}.rx-edit-field input:focus{border-color:var(--color-primary)}.rx-card[data-confidence=low] .rx-edit-field input{border-bottom:2px solid var(--color-badge-warn-text)}.rx-more-details{margin-top:var(--space-2)}.rx-more-summary{cursor:pointer;font-size:var(--text-xs);font-weight:600;color:var(--color-primary);padding:var(--space-1) 0;-webkit-user-select:none;user-select:none}.rx-more-grid{margin-top:var(--space-2);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.rx-meal-grid{margin-top:var(--space-2);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2)}.rx-edit-meal input{text-align:center}.table-wrap{margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);overflow:auto;background:#fff}.parsed-table{min-width:1400px;border:none;border-radius:0}.parsed-table input{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:#fff;padding:0 var(--space-2);width:100%;font-family:var(--font);font-size:var(--text-sm);color:var(--color-text);height:32px;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.parsed-table input:hover{border-color:#94a3b8}.parsed-table input:focus{border-color:var(--color-primary)}.rx-ambiguous{color:var(--color-warning);font-weight:500}.scan-candidates{margin-top:var(--space-3);padding:var(--space-3);border:1px dashed var(--color-border-input);border-radius:8px;background:var(--color-bg)}.scan-candidates-note{margin:0 0 var(--space-2);color:var(--color-badge-warn-text);font-size:var(--text-sm)}.scan-candidates ul{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2)}.scan-candidates li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.scan-candidates-title{margin:0 0 var(--space-1);font-size:var(--text-base);color:var(--color-text-heading)}.scan-candidates-none{color:var(--color-text-muted);font-size:var(--text-sm)}.scan-candidates-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-weight:600}.scan-candidates-read{color:var(--color-text-secondary);overflow-wrap:anywhere}#addMedicine{margin:0}.review-panel{margin-top:var(--space-4);display:grid;gap:var(--space-2)}.review-acknowledgement{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text)}.review-panel textarea{width:100%;padding:var(--space-2);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font-family:var(--font);font-size:var(--text-sm);color:var(--color-text);background:var(--color-card);resize:vertical}.footer-actions{margin-top:var(--space-4);padding:var(--space-4) var(--space-6);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);position:sticky;bottom:0;z-index:5}.footer-actions .step-title{margin-right:auto}.rx-verify-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.rx-verify-header .minor-btn{white-space:nowrap}.parsed-table .meal-times th{font-weight:500;text-transform:none;letter-spacing:0}.parsed-table thead tr:first-child th[colspan]{text-align:center;border-bottom:1px solid var(--color-border)}.parsed-table th{white-space:nowrap}.parsed-table td:nth-child(4){min-width:80px}.parsed-table td:nth-child(5){min-width:110px}.parsed-table td:nth-child(n+6):nth-child(-n+11){width:64px}.parsed-table td:nth-child(n+6):nth-child(-n+11) input{text-align:center}.parsed-table td:nth-child(2){min-width:240px}.parsed-table td:nth-child(3),.parsed-table td:nth-child(12){min-width:140px}.stat-value.warning{color:var(--color-warning)}.stat-value.danger{color:var(--color-error)}.patient-history-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-6)}.patient-history-card h3{font-size:var(--text-lg);font-weight:700;color:var(--color-text-heading)}.patient-history-card>p{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-1)}.patient-history-card hr{margin:var(--space-4) 0;border:none;border-top:1px solid var(--color-border)}.patient-history-card h4{font-size:var(--text-md);font-weight:600;color:var(--color-text-heading);margin-bottom:var(--space-3)}.line-chart{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);height:230px;margin-bottom:var(--space-4);position:relative;overflow:hidden}.line-chart svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.analytics-bottom{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-4)}.analytics-bottom+.analytics-bottom{margin-top:var(--space-4)}.line-chart .chart-area{fill:var(--color-primary);fill-opacity:.12}.line-chart .chart-node{stroke:var(--color-primary);stroke-width:8;stroke-linecap:round;vector-effect:non-scaling-stroke}.bar-head{display:flex;justify-content:space-between;gap:var(--space-2)}.bar-head span:first-child{overflow-wrap:anywhere}.bar-head span:last-child{white-space:nowrap}.bar-list>div{margin-bottom:var(--space-2);font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.bar{margin-top:var(--space-1);height:8px;border-radius:999px;background:var(--color-border);overflow:hidden}.bar span{display:block;height:100%;background:var(--color-text-muted);border-radius:inherit}.bar-list .bar span{background:var(--color-primary)!important}.placeholder-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.placeholder-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-card);padding:var(--space-6);min-width:0;overflow-x:auto}.placeholder-card p{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.5}.report-toolbar{display:flex;align-items:center;gap:var(--space-3)}.report-toolbar label{margin:0;white-space:nowrap}.report-toolbar .pill-btn{white-space:nowrap}.report-custom-range{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.consumption-report{display:block;max-width:820px;margin:0 auto;overflow-x:hidden;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-8)}.screen[data-screen=consumption-reports]{min-width:0;overflow-x:hidden}.consumption-report>.report-header,.consumption-report>.report-summary,.consumption-report>.report-stale,.consumption-report>.report-status,.consumption-report>.report-table,.consumption-report>.report-footer{width:100%}.report-header{display:flex;justify-content:space-between;gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:2px solid var(--color-primary)}.report-header p{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--text-sm)}.report-header h3{margin:var(--space-1) 0;color:var(--color-text-heading);font-size:var(--text-lg)}.report-office{color:var(--color-primary)!important;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.report-meta{min-width:195px;text-align:right}.sample-label{display:inline-block;border:1px solid #d97706;border-radius:var(--radius-sm);padding:3px var(--space-2);color:#92400e;font-size:var(--text-xs);font-weight:700;text-transform:uppercase}.report-meta dl{margin:var(--space-3) 0 0}.report-meta dl div{display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--text-xs)}.report-meta dt{color:var(--color-text-muted)}.report-meta dd{margin:0;color:var(--color-text);font-weight:600}.report-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin:var(--space-6) 0}.report-summary div{border-left:3px solid var(--color-primary);background:var(--color-bg);padding:var(--space-3)}.report-summary span{display:block;color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.35}.report-summary strong{display:block;margin-top:var(--space-2);color:var(--color-text-heading);font-size:var(--text-xl);line-height:1.1}.report-table th{background:var(--color-border-light);color:var(--color-text-secondary);font-size:var(--text-xs);text-transform:uppercase}.report-table tfoot th,.report-table tfoot td{border-top:2px solid var(--color-primary)}.number{text-align:right;font-variant-numeric:tabular-nums}.report-status{margin:0 0 var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}.report-status.error{color:var(--color-error);font-weight:600}.report-footer{margin-top:var(--space-8)}.report-footer>p{color:var(--color-text-muted);font-size:var(--text-xs);font-style:italic}.signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8);margin-top:var(--space-12)}.signature-grid div{border-top:1px solid var(--color-text);padding-top:var(--space-2)}.signature-grid span,.signature-grid small{display:block;color:var(--color-text-muted);font-size:var(--text-xs)}.signature-grid strong{display:block;margin:var(--space-3) 0 2px;font-size:var(--text-sm)}@media(max-width:900px){.overview-tab-features,.overview-how-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.overview-col-left{width:100%}.overview-preview-panel{min-height:auto;padding:var(--space-4)}.overview-about-lead{font-size:var(--text-lg)}.overview-comparison-table td{font-size:var(--text-sm)}.consumption-report{overflow:visible;padding:var(--space-6)}.report-toolbar{flex-wrap:wrap}.report-header{flex-direction:column}.report-meta{min-width:0;text-align:left}.report-summary{grid-template-columns:repeat(2,1fr)}.signature-grid{grid-template-columns:1fr;gap:var(--space-8)}.report-table{display:block;overflow-x:auto}}@media print{@page{margin:12mm;size:A4 portrait}body,.main{background:#fff}.sidebar,.mobile-head,.no-print,.section-title{display:none!important}.screen:not([data-screen=consumption-reports]){display:none!important}.app-layout,.main,.main-content,.screen[data-screen=consumption-reports]{display:block!important;margin:0;padding:0;width:100%;max-width:none}.consumption-report{display:block;max-width:none;overflow:visible;border:0;border-radius:0;box-shadow:none;padding:0;color:#000}.report-header{flex-direction:row;border-bottom-color:#000}.report-meta{min-width:195px;text-align:right}.report-summary{grid-template-columns:repeat(4,1fr)}.report-summary div{background:none;border-left-color:#000}.signature-grid{grid-template-columns:repeat(3,1fr)}.report-office,.report-header h3,.report-summary strong{color:#000!important}.report-header p,.report-meta dt,.report-summary span,.report-footer>p,.signature-grid span,.signature-grid small{color:#333}.report-table{display:table}.report-table th{background:none;color:#000;border-bottom:1px solid #000}.report-table tfoot th,.report-table tfoot td{border-top-color:#000}.report-table{font-size:11px}.report-table th,.report-table td{padding:7px 8px}.report-summary{break-inside:avoid}.noprint{display:none!important}.legal-hero{background:#fff!important;color:#18222f!important}.legal-hero-title{color:#18222f!important}.legal-hero-intro{color:#3d4a5a!important}.legal-hero-meta{color:#556273!important}.legal-row{break-inside:avoid;animation:none!important}.legal-det{background:#fff!important;border:1px solid #D5DCE4}}.stock-form-panel{max-width:880px}#addStockForm{display:block}.stock-form-panel h3{font-size:var(--text-md);font-weight:600;color:var(--color-text-heading);margin-bottom:var(--space-4)}.stock-form-msg{margin-top:var(--space-3);font-size:var(--text-sm);font-weight:500}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.toast{width:320px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4) var(--space-4);font-size:var(--text-base);color:var(--color-text);pointer-events:auto;animation:toast-in .15s ease forwards}.toast.toast-success{border-left:4px solid var(--color-success)}.toast.toast-warning{border-left:4px solid var(--color-warning)}.toast.toast-error{border-left:4px solid var(--color-error)}.toast.toast-info{border-left:4px solid var(--color-primary)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:50;border-radius:var(--radius)}.spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.mobile-head{display:none;position:sticky;top:0;z-index:11;background:#fff;border-bottom:1px solid var(--color-border);padding:0 var(--space-4);height:56px;align-items:center;justify-content:space-between;gap:var(--space-3)}.mobile-mark{width:56px;height:28px}.mobile-menu{border:1px solid var(--color-border-input);background:#fff;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-weight:500;cursor:pointer;font-family:var(--font);color:var(--color-text-secondary);transition:background-color var(--transition-smooth),border-color var(--transition-smooth),transform var(--transition-fast)}.mobile-menu:hover{background:var(--color-bg);border-color:#94a3b8;transform:scale(1.04)}.mobile-menu:active{transform:scale(.97)}.skip-link{position:fixed;top:-100px;left:16px;z-index:200;background:var(--color-primary);color:#fff;padding:16px;border-radius:var(--radius-sm)}.skip-link:focus{top:8px}.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-8);border-bottom:1px solid var(--color-border);background:var(--color-card);font-size:var(--text-sm);color:var(--color-text-heading)}.workspace-context{color:var(--color-text-muted)}.workspace-role-pill{margin-left:var(--space-3);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--color-nav-active-bg);color:var(--color-primary);font-size:var(--text-xs);font-weight:600;text-transform:capitalize}.portal-badge{display:inline-block;align-self:flex-start;margin-top:var(--space-6);padding:var(--space-1) var(--space-3);border:1px solid rgba(225,242,237,.4);border-radius:var(--radius-sm);color:#e1f2ed;font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.main,.screen,.panel,.scanner-box,.stock-workspace>*{min-width:0}.sidebar-user .name,.sidebar-user .role{overflow-wrap:anywhere}.drawer-close,.nav-scrim{display:none}.mobile-brand{font-size:var(--text-md);font-weight:700;text-align:center;line-height:1.2}.mobile-route{display:block;font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted)}.sidebar-user-id{display:flex;align-items:center;gap:var(--space-3);min-width:0}.sidebar-user-id>div{min-width:0}.user-avatar{flex-shrink:0;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--color-nav-active-bg);color:var(--color-primary);font-size:var(--text-sm);font-weight:700}.workflow-strip{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-6) 0 0;padding:var(--space-4) 0 0;border-top:1px solid var(--color-border);counter-reset:step;font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.workflow-strip li{counter-increment:step;display:flex;align-items:center;gap:var(--space-1)}.workflow-strip li:before{content:counter(step);display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--color-nav-active-bg);color:var(--color-primary)}button.stat{display:block;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color var(--transition-smooth),background-color var(--transition-smooth),transform var(--transition-fast);will-change:transform}button.stat>span:not(.stat-icon){display:block}button.stat .stat-icon{transition:transform var(--transition-smooth),background-color var(--transition-smooth)}button.stat:hover{border-color:var(--color-primary);transform:translateY(-2px)}button.stat:hover .stat-icon{transform:scale(1.1)}button.stat:active{transform:translateY(.5px) scale(.99)}button.stat[aria-pressed=true]{border:2px solid var(--color-primary);padding:calc(var(--space-4) - 1px);background:var(--color-nav-active-bg);transform:translateY(-1px)}button.stat[aria-pressed=true] .stat-icon{transform:scale(1.08)}.filter-status{margin:calc(-1 * var(--space-4)) 0 var(--space-4);font-size:var(--text-sm);color:var(--color-text-secondary)}.filter-status:empty{display:none}.login-intro{max-width:420px}.login-intro h2{font-size:var(--text-xl);line-height:1.25;letter-spacing:-.025em;font-weight:600;margin:var(--space-6) 0 var(--space-4)}.login-intro p{color:#e1f2ed;line-height:1.7}.login-sub{line-height:1.6}.primary-btn,.ghost-btn,.minor-btn,.pill-btn,.scan-btn,.patient-edit-btn,.link-btn,.password-toggle,.archive-close,.mobile-capture-close,.capture-reset-btn,.mobile-menu{min-height:44px}.password-toggle,.archive-close,.mobile-capture-close,.capture-reset-btn{min-width:44px}.password-toggle{right:2px}.workflow-state{color:var(--color-primary);background:var(--color-nav-active-bg);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:600}.workflow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:0 0 var(--space-6);border-bottom:1px solid var(--color-border)}.workflow-steps li{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted);border-bottom:2px solid transparent}.workflow-steps li>span{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;border:1px solid var(--color-border-input);border-radius:50%;font-size:var(--text-xs)}.workflow-steps .current{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.workflow-steps .current>span,.workflow-steps .complete>span{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.screening-pending{background:var(--color-border-light);border-color:var(--color-border);color:var(--color-text-muted)}.review-reason-label{margin-top:var(--space-4)}.review-acknowledgement input{min-width:20px;min-height:20px}.review-panel{background:var(--color-nav-active-bg);border:1px solid var(--color-border);padding:var(--space-4);border-radius:var(--radius)}.parsed-table input{min-height:44px}.parsed-table tr[data-confidence=low] input{border-bottom:2px solid var(--color-badge-warn-text)}.low-conf-badge{display:block;margin-top:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-badge-warn-bg);color:var(--color-badge-warn-text);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.rx-conf-bar{height:6px;max-width:180px;margin:var(--space-1) 0 var(--space-2);border-radius:var(--radius-sm);background:var(--color-border-light);overflow:hidden}.rx-conf-bar>span{display:block;height:100%;border-radius:var(--radius-sm);background:var(--color-primary)}.rx-conf-bar.low>span{background:var(--color-badge-warn-text)}.rx-dose-chips{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.dose-chip{padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-nav-active-bg);color:var(--color-primary);font-size:var(--text-xs);font-weight:600;transition:background-color var(--transition-smooth),transform var(--transition-fast);cursor:default}.dose-chip:hover{background:#c4e9e2;transform:translateY(-1px)}.dispense-summary{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--color-nav-active-bg);color:var(--color-primary);font-size:var(--text-xs);font-weight:600}.table-empty{text-align:center;color:var(--color-text-muted)}.table-wrap{overscroll-behavior-x:contain}table{font-variant-numeric:tabular-nums}.inventory-table td{font-size:var(--text-sm)}.inventory-table td:nth-child(6){font-weight:600}.table-note{margin:0 0 var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted)}.chart-note{margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm)}.chart-frame{display:flex;gap:var(--space-2);align-items:stretch;margin-bottom:var(--space-4)}.chart-frame>.line-chart{flex:1;min-width:0;margin-bottom:0}.chart-scale{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:34px 0 14px;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.report-stale{margin:0 0 var(--space-4);padding:var(--space-2) var(--space-3);border-left:4px solid var(--color-warning);border-radius:var(--radius-sm);background:var(--color-badge-warn-bg);color:var(--color-badge-warn-text);font-size:var(--text-sm);font-weight:600}.report-summary div{border-left:1px solid var(--color-border-input)}.stock-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--space-8);align-items:start}.stock-head-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.stock-back,.stock-return-rx{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.field-expiry-hint{margin:var(--space-1) 0 0;font-size:var(--text-xs)}.form-intro{color:var(--color-text-muted);font-size:var(--text-sm);margin:0 0 var(--space-6)}#addStockForm fieldset{border:0;padding:0;margin:0 0 var(--space-6);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-4);min-width:0}#addStockForm legend{float:left;width:100%;grid-column:1 / -1;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-heading);font-weight:600;font-size:var(--text-md)}#addStockForm .primary-btn{margin-top:var(--space-3)}.stock-form-msg.success{color:var(--color-badge-success-text)}.stock-form-msg.error{color:var(--color-badge-error-text)}.stock-preview{padding:var(--space-6) 0}.preview-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.preview-heading h3,.receiving-checklist h3{font-size:var(--text-md);color:var(--color-text-heading)}.preview-medicine{font-size:var(--text-lg);font-weight:600;overflow-wrap:anywhere;margin-top:var(--space-6)}.preview-dosage{color:var(--color-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere;margin-top:var(--space-1)}.batch-details{margin:var(--space-6) 0;font-size:var(--text-sm)}.batch-details>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3);border-bottom:1px solid var(--color-border);padding:var(--space-3) 0}.batch-details dt{color:var(--color-text-muted)}.batch-details dd{margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}.receiving-checklist{padding-top:var(--space-3)}.receiving-checklist ul{margin:var(--space-3) 0;padding-left:var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.7}.receiving-checklist li{margin-bottom:var(--space-2)}.stock-fefo-note{font-size:var(--text-sm);color:var(--color-text-muted);padding-top:var(--space-4);border-top:1px solid var(--color-border);line-height:1.6}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.login-submit-btn:hover:not(:disabled),.login-submit-btn:active:not(:disabled){transform:none}.rx-scan-beam{display:none!important}.overview-modal-window,.overview-modal-backdrop,.overview-tab-content{animation:none!important;transition:none!important;transform:none!important}.preview-scanner-beam{display:none!important}.scanner-laser-beam,.beam{top:50%!important;transform:translateY(-50%)!important;animation:rx-scanner-reduced-pulse 2.5s ease-in-out infinite alternate!important}.rx-med-box{border:2px solid #14806E;background-color:#14806e12}.rx-med-check{transform:scale(1)}}@media(max-width:1200px){.overview-modal-window{height:auto;max-height:90vh}.portal-title{font-size:var(--text-xl)}.patient-strip .meta{font-size:var(--text-sm);gap:var(--space-4)}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.workspace-header,.login-intro{display:none}.login-page-header{padding:20px 24px;flex-wrap:wrap}.login-page-main{padding:32px 24px}.login-columns{flex-direction:column;gap:48px}.login-form-col,.login-scanner-col{flex:1 1 auto}.login-page-footer{padding:16px 24px}.stock-workspace{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.dashboard-center-grid,.dashboard-charts-grid,.dashboard-bottom-grid{grid-template-columns:minmax(0,1fr)}.stock-preview{padding:var(--space-4)}.nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#16324f73;z-index:19}.drawer-close{display:block;margin:var(--space-3) var(--space-4) 0}.sidebar:not(.open){visibility:hidden}.login-wrap{grid-template-columns:1fr;grid-template-rows:auto 1fr}.login-left{min-height:0;padding:var(--space-8) var(--space-6) var(--space-4);align-items:center}.clinical-spec-card,.login-points,.portal-tagline{display:none}.login-card{padding:var(--space-6)}.portal-foot{position:static;margin-top:var(--space-2);z-index:1}.login-right{align-items:start;padding:var(--space-8) var(--space-6)}.portal-title{font-size:var(--text-xl);text-align:center}.logo-row{align-items:center;text-align:center;margin-bottom:var(--space-4)}.app-layout{grid-template-columns:minmax(0,1fr)}.mobile-head{display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:min(84vw,280px);transform:translate(-102%);transition:transform .25s ease;will-change:transform;z-index:20;height:100vh;box-shadow:var(--shadow-dialog)}.sidebar.open{visibility:visible;transform:translate(0)}.main-content{padding:var(--space-4)}.stats{grid-template-columns:1fr 1fr;gap:var(--space-3)}.toolbar{grid-template-columns:1fr}.dispense-grid,.analytics-bottom{grid-template-columns:minmax(0,1fr)}.placeholder-grid{grid-template-columns:1fr}.scan-actions{grid-template-columns:1fr 1fr}.footer-actions{flex-direction:column}.footer-actions .minor-btn,.footer-actions .pill-btn{width:100%;text-align:center}.patient-strip .meta{font-size:var(--text-sm);gap:var(--space-3)}.rx-card{grid-template-columns:minmax(0,1fr)}.legal-body{flex-direction:column;align-items:stretch;gap:16px}.legal-aside{position:static;max-width:none;flex:none;width:100%;gap:10px}.legal-nav{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding-bottom:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.legal-nav::-webkit-scrollbar{display:none}.legal-nav-link{white-space:nowrap;border:1px solid #E3E8EE;border-radius:999px;padding:7px 12px;font-size:var(--text-landing-meta);flex:none}.legal-row{grid-template-columns:1fr;gap:14px;padding:28px 0}.legal-nav-link:not(.active):hover{translate:0 -1px}}@media(max-width:480px){.overview-modal-header{padding:16px 16px 0}.overview-modal-tabs{padding:0 16px;gap:16px}.overview-tab-features,.overview-tab-how,.overview-tab-about{padding:16px}.overview-stepper{flex-wrap:wrap;gap:8px}.overview-step-line{display:none}.preview-doctor-wrapper{flex-direction:column}.overview-safeguard-strip{flex-direction:column;text-align:center}#addStockForm fieldset{grid-template-columns:minmax(0,1fr)}.workflow-steps li{flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-1)}.workflow-state{align-self:flex-start}.patient-strip{grid-template-columns:minmax(0,1fr)}.patient-edit-btn{grid-column:1;grid-row:auto;justify-self:start}.rx-verify-header,.step-title{flex-wrap:wrap}.footer-actions{position:static}.rx-paper{padding:24px 20px 28px}.page-head{flex-direction:column;align-items:stretch}.stats,.scan-actions{grid-template-columns:1fr}.login-title{font-size:var(--text-lg)}.legal-topbar-inner{padding:12px 16px}.legal-hero-inner{padding:32px 16px 40px}.legal-body{padding:24px 16px 64px}.legal-footer-inner{padding:16px}.legal-hero-title{font-size:var(--text-login-h1)}}.mobile-capture-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;align-items:center;justify-content:center}.mobile-capture-overlay.active{display:flex}.mobile-capture-modal{background:var(--color-card);border-radius:var(--radius);padding:var(--space-8);max-width:420px;width:90%;box-shadow:var(--shadow-dialog);position:relative;text-align:center}.mobile-capture-modal h3{font-size:var(--text-lg);font-weight:700;color:var(--color-text-heading);margin-bottom:var(--space-2)}.mobile-capture-desc{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-6);line-height:1.5}.mobile-capture-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:var(--text-lg);color:var(--color-text-muted);cursor:pointer;line-height:1;font-family:var(--font);transition:color var(--transition)}.mobile-capture-close:hover{color:var(--color-text)}.mobile-capture-qr{display:flex;align-items:center;justify-content:center;min-height:200px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-4);margin-bottom:var(--space-4)}.mobile-capture-qr img{max-width:260px}.mobile-capture-status{font-size:var(--text-sm);font-weight:500;color:var(--color-text-status);min-height:20px}.mobile-capture-preview{margin-top:var(--space-4);max-width:100%;max-height:200px;object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--color-border)}.login-footer-sep{margin:0 8px;color:#8a98a7}.login-footer-link{color:#556273;text-decoration:none;font-weight:500;transition:color .15s ease}.login-footer-link:hover{color:#18222f;text-decoration:underline}.legal-page{min-height:100vh;width:100%;background:#fff;font-family:var(--font-login);color:#18222f}.legal-topbar{position:sticky;top:0;z-index:30;background:#18222f;color:#fff;border-bottom:1px solid #18222F;box-shadow:none;transition:background-color .3s ease,color .3s ease,box-shadow .3s ease,border-color .3s ease}.legal-topbar.scrolled{background:#fffffff0;color:#18222f;border-bottom:1px solid #E3E8EE;box-shadow:var(--shadow-legal-topbar);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}.legal-topbar-inner{max-width:1180px;margin:0 auto;box-sizing:border-box;padding:12px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.legal-brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.legal-brand-name{font-size:var(--text-legal-intro);font-weight:700;color:inherit}.legal-back-link{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:999px;font-size:var(--text-modal-tab);font-weight:600;color:#fff;background:#ffffff1f;border:1px solid rgba(255,255,255,.22);text-decoration:none;cursor:pointer;box-shadow:var(--shadow-legal-pill);transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease;will-change:transform}.legal-back-link .legal-back-arr{transition:transform .2s cubic-bezier(.2,.8,.2,1)}.legal-back-link:hover{background:#ffffff38;border-color:#fff6;color:#fff;text-decoration:none;transform:translate(-3px);box-shadow:var(--shadow-legal-topbtn)}.legal-back-link:hover .legal-back-arr{transform:translate(-3px)}.legal-back-link:active{transform:translate(-1px) scale(.96);box-shadow:var(--shadow-legal-pill)}.legal-topbar.scrolled .legal-back-link{background:#f0f4f5;border:1px solid #D5DCE4;color:#18222f;box-shadow:none}.legal-topbar.scrolled .legal-back-link:hover{background:#e3f1ee;border-color:#14806e;color:#0f5f55;transform:translate(-3px);box-shadow:var(--shadow-soft)}.legal-topbar.scrolled .legal-back-link:hover .legal-back-arr{transform:translate(-3px)}.legal-topbar.scrolled .legal-back-link:active{transform:translate(-1px) scale(.96);box-shadow:none}.legal-progress-bar{position:absolute;left:0;bottom:0;height:3px;background:#3fb39a;border-radius:0 3px 3px 0;transition:width .1s linear}.legal-switch{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;border-radius:999px;background:#ffffff1a;transition:background-color .3s ease}.legal-topbar.scrolled .legal-switch{background:#eef2f5}.legal-switch-pill{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:#fff;box-shadow:var(--shadow-legal-pill);transition:transform .4s cubic-bezier(.3,.7,.2,1),background-color .3s ease;pointer-events:none}.legal-switch-btn{position:relative;z-index:1;min-height:40px;padding:0 18px;border:0;background:none;font:inherit;font-size:var(--text-modal-tab);font-weight:600;white-space:nowrap;cursor:pointer;color:#d5dee7;transition:color .3s ease;border-radius:999px}.legal-topbar.scrolled .legal-switch-btn{color:#3d4a5a}.legal-switch-btn.selected{color:#18222f}.legal-hero{background:#18222f;color:#fff}.legal-hero-inner{max-width:1180px;margin:0 auto;box-sizing:border-box;padding:40px 32px 56px;display:flex;flex-direction:column;gap:18px}.legal-hero-fade{animation:lsHero .45s ease-out both}@keyframes lsHero{0%{opacity:0}to{opacity:1}}.legal-hero-title{margin:0;font-family:var(--font-serif);font-size:var(--text-legal-hero);font-weight:600;letter-spacing:-.02em;line-height:1.05;color:#fff}.legal-hero-intro{margin:0;max-width:680px;font-size:var(--text-legal-intro);line-height:1.55;color:#c9d3dd}.legal-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;font-size:var(--text-sm);color:#a9b6c3}.legal-meta-bold{color:#fff;font-weight:600}.legal-meta-sep{color:#a9b6c3}.legal-print-btn{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:none;font:inherit;font-size:var(--text-sm);font-weight:600;color:#fff;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.legal-print-btn:hover{background:#ffffff1f;border-color:#ffffff73}.legal-body{max-width:1180px;margin:0 auto;box-sizing:border-box;padding:32px 32px 96px;display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px 56px}.legal-aside{flex:1 1 240px;max-width:300px;position:sticky;top:84px;display:flex;flex-direction:column;gap:14px}.legal-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.legal-search-wrap{position:relative}.legal-search-icon{position:absolute;left:14px;top:13px;pointer-events:none}.legal-search,.legal-search-wrap input.legal-search{width:100%;box-sizing:border-box;height:44px;padding:0 40px 0 42px;font:inherit;font-size:var(--text-modal-tab);border:1px solid #C9D1DA;border-radius:10px;background:#fff;color:#18222f;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.legal-search::-webkit-search-decoration,.legal-search::-webkit-search-cancel-button,.legal-search::-webkit-search-results-button,.legal-search::-webkit-search-results-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:none}.legal-search:focus{border-color:#14806e;box-shadow:var(--shadow-legal-search-focus)}.legal-search::placeholder{color:#7a8693}.legal-search-clear{position:absolute;right:2px;top:2px;width:40px;height:40px;border:0;border-radius:8px;background:none;color:#556273;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.legal-search-clear:hover{color:#18222f}.legal-search-count{font-size:var(--text-login-foot);color:#6a7685;padding:0 4px}.legal-nav{display:flex;flex-direction:column;gap:2px}.legal-nav-link{display:block;padding:9px 12px;border-radius:8px;font-size:var(--text-sm);text-decoration:none;color:#3d4a5a;font-weight:500;transition:background-color .2s ease,color .2s ease}.legal-nav-link:hover{background:#f0f4f7;color:#18222f}.legal-nav-link.active{background:#e3f1ee;color:#0f5f55;font-weight:600}.legal-main{flex:999 1 560px;min-width:0}.legal-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px 48px;padding:40px 0;border-top:1px solid #E3E8EE;scroll-margin-top:96px}.legal-row-enter{animation:lsIn .5s cubic-bezier(.2,.7,.2,1) both}@keyframes lsIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.legal-col-summary{display:flex;flex-direction:column;align-items:flex-start}.legal-question{margin:0 0 10px;font-family:var(--font-serif);font-size:var(--text-legal-h2);font-weight:600;letter-spacing:-.01em;line-height:1.25;color:#18222f;display:flex;align-items:flex-start;gap:6px}.legal-plain{margin:0;font-size:var(--text-legal-plain);line-height:1.55;color:#18222f}.legal-anchor-wrap{position:relative;display:inline-flex;flex:none;margin-top:-4px}.legal-anchor{width:40px;height:40px;border:0;border-radius:10px;background:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;transform:translate(-4px);transition:opacity .2s ease,transform .2s ease,background-color .2s ease,color .2s ease}.legal-row:hover .legal-anchor,.legal-anchor:focus-visible,.legal-anchor.is-on{opacity:1;transform:none}.legal-anchor:hover{background:#eef2f5;color:#18222f!important}@media(hover:none){.legal-anchor{opacity:.7;transform:none}}.legal-tip{position:absolute;left:50%;bottom:calc(100% + 4px);transform:translate(-50%) translateY(4px);white-space:nowrap;padding:5px 10px;border-radius:6px;background:#18222f;color:#fff;font-family:var(--font-login);font-size:var(--text-xs);font-weight:600;letter-spacing:0;line-height:1.4;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.legal-tip.is-on{opacity:1;transform:translate(-50%) translateY(0)}.legal-det{background:#f6f8fa;border-radius:12px;padding:20px 22px;transition:background-color .25s ease}.legal-row:hover .legal-det{background:#f0f4f7}.legal-det p{margin:0 0 12px;font-size:var(--text-modal-tab);line-height:1.65;color:#3d4a5a}.legal-det>:last-child{margin-bottom:0}.legal-det strong{font-weight:600;color:#18222f}.legal-inline-link,.legal-inline-switch-btn{color:#0f5f87;text-decoration:underline;text-underline-offset:3px;font:inherit;background:none;border:0;padding:0;cursor:pointer;display:inline}.legal-inline-link:hover,.legal-inline-switch-btn:hover{color:#0a3f5a}.legal-empty-state{padding:48px 0;border-top:1px solid #E3E8EE;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.legal-empty-title{margin:0;font-size:var(--text-lg);font-weight:600;color:#18222f}.legal-empty-suggest{margin:0;font-size:var(--text-base);color:#556273}.legal-empty-btn{min-height:44px;padding:0 18px;border:0;border-radius:8px;background:#18222f;color:#fff;font:inherit;font-size:var(--text-modal-tab);font-weight:600;cursor:pointer;transition:background-color .2s ease}.legal-empty-btn:hover{background:#2a3849}.legal-bottom-switch{margin-top:8px;padding:28px 0 0;border-top:1px solid #E3E8EE;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.legal-bottom-prompt{font-size:var(--text-base);color:#3d4a5a}.legal-bottom-btn{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border:1px solid #18222F;border-radius:999px;background:#fff;font:inherit;font-size:var(--text-modal-tab);font-weight:600;color:#18222f;cursor:pointer;transition:background-color .2s ease,color .2s ease}.legal-bottom-btn:hover{background:#18222f;color:#fff}.legal-footer{border-top:1px solid #E3E8EE;background:#fff}.legal-footer-inner{max-width:1180px;margin:0 auto;box-sizing:border-box;padding:20px 32px;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:var(--text-login-foot);color:#556273}.legal-to-top{position:fixed;right:24px;bottom:24px;z-index:40;width:48px;height:48px;border:0;border-radius:50%;background:#18222f;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-legal-topbtn);transition:opacity .25s ease,transform .25s ease;opacity:0;transform:translateY(12px);pointer-events:none}.legal-to-top.visible{opacity:1;transform:none;pointer-events:auto}.legal-to-top:hover{background:#2a3849}.legal-page a:focus-visible,.legal-page button:focus-visible,.legal-page input:focus-visible{outline:3px solid #3B8FC2;outline-offset:2px}@media(prefers-reduced-motion:reduce){.legal-hero-fade,.legal-row-enter{animation:none!important}.legal-switch-pill,.legal-to-top,.legal-topbar,.legal-progress-bar{transition:none!important}}.btn,.btn-dark,.btn-ghost,.workspace-btn,.primary-btn,.minor-btn,.pill-btn,.scan-btn{font-weight:500}.btn,.icon-btn,.icon-act,.x,button.kpi,.seg button,.nav a,.nav-link,.side-foot a,.banner button,.brand,.legal-switch-btn,.legal-print-btn,.legal-search-clear,.legal-nav-link,.legal-anchor,.legal-empty-btn,.legal-bottom-btn,.legal-to-top{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .25s ease,opacity .2s ease,translate .25s cubic-bezier(.22,1,.36,1),scale .18s cubic-bezier(.22,1,.36,1)}.btn:not(:disabled):not(.link):hover,.minor-btn:not(:disabled):hover{translate:0 -1px;box-shadow:var(--shadow-btn-hover)}.btn.primary:not(:disabled):hover,.primary-btn:not(:disabled):hover,.pill-btn:not(:disabled):hover,.scan-btn:not(:disabled):hover{box-shadow:var(--shadow-btn-primary)}.btn.dark:not(:disabled):hover,.btn-dark:not(:disabled):hover{background:#18222f;box-shadow:var(--shadow-btn-dark)}.btn:not(:disabled):active,.btn-dark:not(:disabled):active,.btn-ghost:not(:disabled):active,.primary-btn:not(:disabled):active,.minor-btn:not(:disabled):active,.pill-btn:not(:disabled):active,.scan-btn:not(:disabled):active,.icon-btn:active,.icon-act:not(:disabled):active,.x:active,.seg button:active,.banner button:active{translate:0 0;scale:.95;transition-duration:80ms}.btn:disabled,.primary-btn:disabled,.minor-btn:disabled,.pill-btn:disabled,.scan-btn:disabled{translate:none!important;scale:none!important;box-shadow:none!important;cursor:not-allowed}.icon-btn[aria-label=Alerts]:hover svg,.bell-icon-btn:hover svg{animation:bellRing .7s ease}@keyframes bellRing{0%,to{transform:rotate(0)}20%{transform:rotate(14deg)}40%{transform:rotate(-12deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-4deg)}}.nav a:not(.active):not(.on):hover,.nav-link:not(.active):hover{translate:3px 0}.nav a:hover svg,.nav-link:hover svg{scale:1.12}.nav-link.active:hover,.nav a.on:hover{translate:none}button.kpi,.kpi.clickable,.stat-card.clickable{cursor:pointer;transition:background-color .2s ease,border-color .2s ease,box-shadow .25s ease,translate .25s cubic-bezier(.22,1,.36,1),scale .18s cubic-bezier(.22,1,.36,1)}button.kpi:hover,.kpi.clickable:hover,.stat-card.clickable:hover{translate:0 -2px;border-color:#cfe5df;box-shadow:var(--shadow-card-hover)}button.kpi:active,.kpi.clickable:active,.stat-card.clickable:active{translate:0 0;scale:.985;transition-duration:80ms}.kpi-i,.stat-card-icon{transition:color .2s ease,scale .35s cubic-bezier(.34,1.56,.64,1)}button.kpi:hover .kpi-i,.kpi.clickable:hover .kpi-i,.stat-card.clickable:hover .stat-card-icon{color:var(--color-primary);scale:1.15}.icon-act:not(:disabled):hover,.table-action-btn:not(:disabled):hover{scale:1.08}.seg button:not([aria-pressed=true]):not(.active):hover{color:var(--color-text);background:#ffffffa6}.pg-arr{display:inline-block;transition:transform .35s cubic-bezier(.22,1,.36,1)}.btn:hover:not(:disabled) .pg-l,.minor-btn:hover:not(:disabled) .pg-l{transform:translate(-3px)}.btn:hover:not(:disabled) .pg-r,.minor-btn:hover:not(:disabled) .pg-r{transform:translate(3px)}.btn:not(:disabled):active .pg-l,.minor-btn:not(:disabled):active .pg-l{animation:pgL .45s cubic-bezier(.22,1,.36,1)}.btn:not(:disabled):active .pg-r,.minor-btn:not(:disabled):active .pg-r{animation:pgR .45s cubic-bezier(.22,1,.36,1)}@keyframes pgR{0%{transform:translate(3px)}40%{transform:translate(7px)}to{transform:translate(3px)}}@keyframes pgL{0%{transform:translate(-3px)}40%{transform:translate(-7px)}to{transform:translate(-3px)}}.lo-arr{transform:translate(0);transition:transform .4s cubic-bezier(.22,1,.36,1)}.side-foot a:hover .lo-arr,.side-foot a:focus-visible .lo-arr,.sidebar-user a:hover .lo-arr,.sidebar-user a:focus-visible .lo-arr,.logout-btn:hover .lo-arr,.logout-btn:focus-visible .lo-arr{transform:translate(3px)}.legal-switch-btn:active,.legal-print-btn:active,.legal-search-clear:active,.legal-anchor:active,.legal-empty-btn:active,.legal-bottom-btn:active,.legal-to-top:active,.legal-nav-link:active{scale:.94;transition-duration:80ms}.legal-print-btn:hover,.legal-empty-btn:hover,.legal-bottom-btn:hover{translate:0 -2px;box-shadow:var(--shadow-btn-hover)}.legal-bottom-btn svg{transition:translate .3s cubic-bezier(.22,1,.36,1)}.legal-bottom-btn:hover svg{translate:3px 0}.legal-to-top:hover{translate:0 -3px;box-shadow:var(--shadow-btn-hover)}.legal-nav-link:not(.active):hover{translate:3px 0}.legal-switch-btn:not(.selected):hover{color:#fff}.legal-topbar.scrolled .legal-switch-btn:not(.selected):hover{color:#18222f}.legal-anchor:hover{scale:1.08}.legal-search-clear:hover{scale:1.1}select.select,.ms select,.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:36px!important;background-image:none!important;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.sel-wrap{position:relative;display:inline-grid;min-width:0;vertical-align:middle}.sel-wrap>select,.sel-wrap>.select{width:100%}.sel-chev{position:absolute;right:11px;top:50%;margin-top:-8px;color:var(--color-text-muted);pointer-events:none;transform:translateY(0) rotate(0);transition:transform .4s cubic-bezier(.22,1,.36,1),color .2s ease}.sel-wrap:hover .sel-chev{color:var(--color-primary);transform:translateY(2px) rotate(0)}.sel-wrap:focus-within .sel-chev{color:var(--color-primary)}.sel-wrap.is-open .sel-chev{color:var(--color-primary);transform:translateY(0) rotate(180deg)}.sel-wrap.is-picked .sel-chev{animation:chevPick .45s cubic-bezier(.22,1,.36,1)}@keyframes chevPick{0%{transform:rotate(180deg)}60%{transform:translateY(3px) rotate(360deg)}to{transform:translateY(0) rotate(360deg)}}input[type=date]{cursor:pointer;position:relative}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:18px;height:18px;padding:5px;margin-right:-4px;border-radius:8px;opacity:1;color:transparent;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235F6E7E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16.5' rx='2.5'/%3E%3Cpath d='M3 9.5h18M8 2.5v4M16 2.5v4'/%3E%3Cpath d='M7.5 13.5h.01M12 13.5h.01M16.5 13.5h.01M7.5 17h.01M12 17h.01'/%3E%3C/svg%3E") center/18px no-repeat;transition:background-color .2s ease,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease}input[type=date]:hover::-webkit-calendar-picker-indicator{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2314806E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16.5' rx='2.5'/%3E%3Cpath d='M3 9.5h18M8 2.5v4M16 2.5v4'/%3E%3Cpath d='M7.5 13.5h.01M12 13.5h.01M16.5 13.5h.01M7.5 17h.01M12 17h.01'/%3E%3C/svg%3E");background-color:#e3f1ee;animation:calFlip .55s cubic-bezier(.34,1.56,.64,1) 1}input[type=date]:focus::-webkit-calendar-picker-indicator{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2314806E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16.5' rx='2.5'/%3E%3Cpath d='M3 9.5h18M8 2.5v4M16 2.5v4'/%3E%3Cpath d='M7.5 13.5h.01M12 13.5h.01M16.5 13.5h.01M7.5 17h.01M12 17h.01'/%3E%3C/svg%3E");background-color:#e3f1ee}input[type=date]:active::-webkit-calendar-picker-indicator{transform:scale(.88)}@keyframes calFlip{0%{transform:scale(1) rotate(0)}30%{transform:scale(1.15) rotate(-10deg)}60%{transform:scale(1.12) rotate(6deg)}to{transform:scale(1.08) rotate(0)}}.kpi,.stat-card{display:flex;flex-direction:column;align-items:stretch}.kpi-v,.kpi-value,.stat-card-value{margin-top:auto;padding-top:6px}.grid-2,.grid-21,.dispense-grid,.analytics-bottom,.panel-row-2{align-items:stretch}.card-h>.seg,.card-header>.seg{margin-top:-9px;margin-bottom:-9px}.card-h>.btn.sm,.card-h>.sel-wrap,.card-h>.legend,.card-header>.btn.sm,.card-header>.sel-wrap,.card-header>.legend{margin-top:-6px;margin-bottom:-6px}.filters:has(.field label),.report-filters{align-items:flex-end}.field>.btn,.report-filters .action-btn{min-height:0;height:40px;align-self:stretch}.tbl-wrap,.table-wrap,.inventory-table-wrap,.parsed-table-wrap{overflow-x:auto;width:100%}@media(min-width:1600px){.main-content{max-width:1600px}.landing-page .wrap,.landing-wrap{max-width:1320px}}@media(max-width:1024px){.tbl td:not(:first-child),.inventory-table td:not(:first-child),.data-table td:not(:first-child){white-space:nowrap}}@media(max-width:1000px){.hero-grid,.feature-grid,.features-grid,.three-steps-grid,.demo-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:960px){.landing-header-inner{position:relative;flex-direction:row!important;flex-wrap:wrap;align-items:center!important;gap:10px!important;min-height:64px;padding-top:12px;padding-bottom:12px}.landing-header-row1{display:contents}.landing-header-row1>.landing-brand,.landing-header-row1>a{order:1;margin-right:auto}.landing-header-inner .header-cta{order:2;align-self:center!important;min-height:40px!important;padding:0 16px!important;font-size:var(--text-sm)}.menu-toggle{display:inline-flex;order:3}.landing-nav{display:none!important;order:4;width:100%;flex-direction:column;align-items:stretch;gap:2px}.landing-nav.open{display:flex!important}.landing-nav .nav-btn{text-align:left;border-radius:10px}.landing-nav .nav-btn:after{display:none}.landing-nav .nav-btn.is-sel{background:#e3f1ee;color:#0f5f55}.landing-header-inner .signout-link{display:none!important}.landing-nav.is-desktop{display:none}}.foot-row{opacity:1!important;padding:22px 0 14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 32px}.foot-brand{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.foot-name{font-size:var(--text-base);font-weight:700;color:#18222f}.foot-sep{width:1px;height:16px;background:#d5dce4}.foot-tag{font-size:var(--text-landing-sub);color:#556273}.foot-links{display:flex;gap:20px;font-size:var(--text-landing-sub)}.foot-legal{border-top:1px solid #EDF1F4;padding:12px 0 16px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;font-size:var(--text-landing-meta);color:#6a7685}@media(max-width:560px){.page-head{flex-direction:column;align-items:stretch;gap:var(--space-3)}.page-head>div:first-child{width:100%}.page-head>div:last-child:not(:first-child),.top-actions{width:100%;display:flex;flex-direction:column;gap:var(--space-2)}.page-head>div:last-child:not(:first-child) button,.top-actions button{width:100%}.report-custom-range{margin-left:0!important;width:100%}.topbar .av,.page-head .av,.page-head .user-avatar,.page-head .dashboard-user-pill{display:none!important}.legal-copied-tip{right:0;left:auto}.legal-tip{left:auto;right:-4px;transform:translateY(4px)}.legal-tip.is-on{transform:translateY(0)}.foot-sep{display:none}.foot-tag{width:100%}}@media(max-width:400px){.xlabels span:not(:first-child):not(:last-child):not(:nth-child(4)),.chart-x-labels span:not(:first-child):not(:last-child):not(:nth-child(4)){display:none}.header-cta .lbl-long{display:none}.header-cta .lbl-short{display:inline}.landing-header-inner .header-cta{padding:0 12px!important}.landing-header-inner .header-cta svg{display:none}.landing-header-inner{gap:8px!important}}@media(prefers-reduced-motion:reduce){*,:before,:after{translate:none!important;scale:none!important;animation:none!important}.pg-arr,.lo-arr,select.select,.sel-chev,input[type=date]::-webkit-calendar-picker-indicator{transition:none!important;animation:none!important}.icon-btn[aria-label=Alerts]:hover svg{animation:none!important}}.landing-page.is-booting .hero-left,.landing-page.is-booting .hero-scanner-wrap{animation-play-state:paused}.boot{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;background:radial-gradient(120% 90% at 50% 40%,#fff,#f2f8f6 55%,#e3f1ee);cursor:pointer;transition:opacity .6s ease,visibility .6s ease,filter .6s ease}.boot.is-out{opacity:0;visibility:hidden;filter:blur(6px)}.boot.is-out .boot-inner{transform:scale(1.06);opacity:0}.boot-glow{position:absolute;width:520px;height:520px;max-width:120vw;max-height:120vw;border-radius:50%;background:radial-gradient(circle,rgba(13,133,141,.16),transparent 65%);animation:bootPulse 2.4s ease-in-out infinite}.boot-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px;text-align:center;transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .5s ease}.boot-mark-wrap{position:relative;width:132px;height:66px;margin-bottom:6px}.boot-mark{width:100%;height:100%;display:block;overflow:visible}.bm-l{animation:bootLidL .7s cubic-bezier(.22,1,.36,1) both}.bm-r{animation:bootLidR .7s cubic-bezier(.22,1,.36,1) both}.bm-p{transform-box:fill-box;transform-origin:center;animation:bootPupil .55s cubic-bezier(.34,1.56,.64,1) .45s both,bootLook 1.6s ease-in-out 1.05s 1}.bm-glint{opacity:0;animation:bootGlint .4s ease .8s both}.boot-beam{position:absolute;left:-14px;right:-14px;top:0;height:3px;border-radius:3px;background:linear-gradient(90deg,transparent,#14806E 20%,#7FD3C1 50%,#14806E 80%,transparent);box-shadow:var(--shadow-rx-beam);opacity:0;animation:bootBeam 1.3s cubic-bezier(.45,0,.55,1) .7s 1 both}.boot-word{display:flex;font-size:var(--text-login-h1);font-weight:700;letter-spacing:-.02em;color:#18222f;line-height:1}.boot-word span{display:inline-block;opacity:0;transform:translateY(14px);animation:bootLetter .5s cubic-bezier(.22,1,.36,1) both}.boot-word span:nth-child(n+5){color:#0d858d}.boot-tag{margin:0;font-size:var(--text-md-sm);color:#556273;opacity:0;animation:bootFade .5s ease 1.15s both}.boot-bar{width:180px;height:4px;margin-top:10px;border-radius:999px;background:#0e2a3b14;overflow:hidden;opacity:0;animation:bootFade .3s ease .3s both}.boot-bar span{display:block;height:100%;width:100%;border-radius:inherit;background:linear-gradient(90deg,#0d2842,#14806e,#7fd3c1);transform-origin:left center;animation:bootFill 1.75s cubic-bezier(.65,0,.35,1) .3s both}@keyframes bootLidL{0%{transform:translate(-26px);opacity:0}to{transform:none;opacity:1}}@keyframes bootLidR{0%{transform:translate(26px);opacity:0}to{transform:none;opacity:1}}@keyframes bootPupil{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes bootLook{0%,to{transform:translate(0)}30%{transform:translate(-7px)}65%{transform:translate(7px)}}@keyframes bootGlint{0%{opacity:0}to{opacity:.9}}@keyframes bootBeam{0%{top:0;opacity:0}12%{opacity:1}50%{top:calc(100% - 3px)}88%{opacity:1}to{top:0;opacity:0}}@keyframes bootLetter{to{opacity:1;transform:none}}@keyframes bootFade{to{opacity:1}}@keyframes bootFill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes bootPulse{0%,to{transform:scale(.92);opacity:.7}50%{transform:scale(1.05);opacity:1}}@media(min-width:961px){.landing-header-inner{justify-content:flex-start!important;gap:16px}.landing-nav{margin-left:auto;margin-right:auto}}.signout-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 14px!important;border:1px solid rgb(213,220,228)!important;border-radius:999px;background:#fff!important;color:#3d4a5a!important;font-size:var(--text-md-sm);font-weight:600!important;text-decoration:none!important;white-space:nowrap;position:relative;overflow:hidden;isolation:isolate;transition:color .25s ease,border-color .25s ease,box-shadow .3s ease,translate .3s cubic-bezier(.22,1,.36,1),scale .16s ease}.signout-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,#fdecea,#fff5f4);z-index:-1;transform:scaleX(0);transform-origin:left center;transition:transform .4s cubic-bezier(.22,1,.36,1)}.so-ico{flex:none;transition:transform .35s cubic-bezier(.22,1,.36,1)}.so-arr{transition:transform .35s cubic-bezier(.22,1,.36,1)}.signout-link:hover,.signout-link:focus-visible{color:#b42318!important;border-color:#f4b8b0!important;translate:0 -1px;box-shadow:var(--shadow-soft)}.signout-link:hover:before,.signout-link:focus-visible:before{transform:scaleX(1)}.signout-link:hover .so-arr,.signout-link:focus-visible .so-arr{transform:translate(3px);animation:soNudge 1s ease-in-out .35s infinite}.signout-link:active{translate:0 0;scale:.95}@keyframes soNudge{0%,to{transform:translate(3px)}50%{transform:translate(5px)}}.nav-signout{display:none;align-items:center;gap:10px;color:#b42318!important}.nav-signout:hover{background:#fdecea!important}.nav-signout:hover .so-arr{transform:translate(3px)}@media(max-width:960px){.landing-nav .nav-signout{display:flex!important}}.signout-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1001;display:flex;align-items:center;gap:10px;padding:10px 18px;background:#18222f;color:#fff;border-radius:999px;font-size:var(--text-sm);font-weight:500;box-shadow:var(--shadow-dialog);animation:toastPop .3s cubic-bezier(.22,1,.36,1) both}@keyframes toastPop{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.demo-card.glow-teal{animation:demoGlow 1.2s ease 1}@keyframes demoGlow{0%,to{box-shadow:var(--shadow-landing-card)}40%{box-shadow:var(--shadow-teal)}}.about-dialog{max-width:720px;animation:pop .28s cubic-bezier(.2,.8,.2,1) both}.ab-hero{position:relative;overflow:hidden;padding:40px 32px 34px;text-align:center;background:radial-gradient(120% 140% at 50% 0%,#e3f1ee,#f5faf8 45%,#fff);border-bottom:1px solid #EDF1F4;display:flex;flex-direction:column;align-items:center;gap:10px}.ab-mark{position:absolute;width:300px;right:-70px;bottom:-60px;color:#14806e;opacity:.06;pointer-events:none}.ab-h{margin:0;font-family:var(--font-serif);font-size:var(--text-landing-h2);font-weight:600;line-height:1.08;letter-spacing:-.02em;color:#18222f;position:relative}.ab-lede{margin:0;font-size:var(--text-landing-safeguard);line-height:1.5;color:#3d4a5a;font-style:italic;position:relative;max-width:580px}.ab-team{list-style:none;margin:0;padding:28px 32px 32px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:16px;perspective:1000px}.ab-card{--rx: 0deg;--ry: 0deg;--mx: 50%;--my: 30%;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:26px 16px 22px;border:1px solid #E3E8EE;border-radius:16px;background:#fff;overflow:hidden;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .3s ease,opacity .35s ease,filter .35s ease;will-change:transform;outline:none;cursor:default}.ab-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--c);transition:height .35s ease}.ab-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s ease;background:radial-gradient(220px circle at var(--mx) var(--my),color-mix(in srgb,var(--c) 16%,transparent),transparent 70%)}.ab-card>*{position:relative;z-index:1}.ab-avatar{position:relative;width:64px;height:64px;border-radius:50%;background:var(--c);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);font-weight:700;box-shadow:var(--shadow-avatar-ring);transition:transform .45s cubic-bezier(.34,1.56,.64,1)}.ab-ring{position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border-radius:50%;background:conic-gradient(from 0deg,var(--c),#14806E,#7FD1C2,var(--c));opacity:0;transform:scale(.85);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px))}.ab-photo{position:relative;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 30%;display:block}.ab-ini{position:relative}.ab-name{margin-top:4px;font-size:var(--text-base);font-weight:600;color:#18222f;background-image:linear-gradient(var(--c),var(--c));background-size:0% 2px;background-repeat:no-repeat;background-position:50% 100%;padding-bottom:3px;transition:background-size .4s ease,color .3s ease}.ab-role{display:inline-flex;align-items:center;justify-content:center;text-align:center;max-width:100%;gap:6px;padding:5px 12px;border-radius:999px;background:#f2f8f6;color:#0f5f55;font-size:var(--text-xs);font-weight:600;line-height:1.3;transition:background-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}.ab-role svg{flex:none}.ab-links{display:flex;gap:8px;margin-top:6px;transition:transform .4s cubic-bezier(.2,.8,.2,1) 50ms}.ab-card:hover,.ab-card:has(:focus-visible),.ab-card:focus-visible{z-index:3;transform:translateY(-14px) scale(1.07) rotateX(var(--ry)) rotateY(var(--rx));border-color:color-mix(in srgb,var(--c) 45%,#E3E8EE);box-shadow:var(--shadow-dialog)}.ab-card:hover:after,.ab-card:has(:focus-visible):after,.ab-card:focus-visible:after{opacity:1}.ab-card:hover:before,.ab-card:has(:focus-visible):before,.ab-card:focus-visible:before{height:6px}.ab-card:hover .ab-avatar,.ab-card:has(:focus-visible) .ab-avatar,.ab-card:focus-visible .ab-avatar{transform:translateZ(30px) scale(1.1)}.ab-card:hover .ab-ring,.ab-card:has(:focus-visible) .ab-ring,.ab-card:focus-visible .ab-ring{opacity:1;transform:scale(1);animation:abSpin 3.2s linear infinite}.ab-card:hover .ab-name,.ab-card:has(:focus-visible) .ab-name,.ab-card:focus-visible .ab-name{background-size:100% 2px}.ab-card:hover .ab-role,.ab-card:has(:focus-visible) .ab-role,.ab-card:focus-visible .ab-role{background:var(--c);color:#fff;transform:translateZ(18px)}.ab-card:hover .ab-links,.ab-card:has(:focus-visible) .ab-links,.ab-card:focus-visible .ab-links{transform:translateZ(12px) translateY(-2px)}.ab-team:has(.ab-card:hover) .ab-card:not(:hover),.ab-team:has(:focus-visible) .ab-card:not(:focus-visible):not(:has(:focus-visible)):not(:hover){opacity:.55;transform:scale(.94);filter:saturate(.4)}@keyframes abSpin{to{transform:scale(1) rotate(360deg)}}@media(hover:none){.ab-team .ab-card:not(:focus-visible):not(:has(:focus-visible)){opacity:1!important;transform:none!important;filter:none!important}}.ab-link{--brand: #181717;position:relative;overflow:visible;isolation:isolate;width:36px;height:36px;border-radius:10px;border:1px solid #E3E8EE;background:#fff;color:#556273;display:flex;align-items:center;justify-content:center;transition:color .3s ease,border-color .3s ease,transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease}.ab-fb{--brand: #1877F2}.ab-link:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:var(--brand);z-index:-1;clip-path:circle(0% at 50% 100%);transition:clip-path .45s cubic-bezier(.22,1,.36,1)}.ab-link:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;border:2px solid var(--brand);opacity:0;transform:scale(1);pointer-events:none}.ab-link svg{transition:transform .45s cubic-bezier(.34,1.56,.64,1)}.ab-link:hover,.ab-link:focus-visible{color:#fff!important;border-color:var(--brand)!important;transform:translateY(-4px);box-shadow:var(--shadow-btn-hover)}.ab-link:hover:before,.ab-link:focus-visible:before{clip-path:circle(140% at 50% 100%)}.ab-link:hover:after,.ab-link:focus-visible:after{animation:abRipple .5s ease-out both}.ab-gh:hover svg,.ab-gh:focus-visible svg{animation:ghWiggle .55s cubic-bezier(.34,1.56,.64,1) both}.ab-fb:hover svg,.ab-fb:focus-visible svg{animation:fbPop .45s cubic-bezier(.34,1.56,.64,1) both}@keyframes abRipple{0%{opacity:.8;transform:scale(.95)}to{opacity:0;transform:scale(1.35)}}@keyframes ghWiggle{0%{transform:rotate(0) scale(1)}25%{transform:rotate(-18deg) scale(1.15)}55%{transform:rotate(14deg) scale(1.15)}80%{transform:rotate(-14deg) scale(1.15)}to{transform:rotate(-12deg) scale(1.15)}}@keyframes fbPop{0%{transform:scale(1)}45%{transform:scale(1.32) translateY(-1px)}to{transform:scale(1.18)}}@media(prefers-reduced-motion:reduce){.ab-card,.ab-card:hover,.ab-card:has(:focus-visible){transform:none!important;transition:opacity .2s ease,border-color .2s ease}.ab-card:hover .ab-ring,.ab-card:has(:focus-visible) .ab-ring{animation:none}.ab-team .ab-card{transform:none!important}.ab-card:hover .ab-avatar,.ab-card:hover .ab-role,.ab-card:hover .ab-links{transform:none}.ab-link,.ab-link svg,.ab-link:before{transition:none!important;animation:none!important}.ab-link:hover,.ab-link:hover svg{transform:none!important}.ab-link:hover:after{animation:none}}.wel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:var(--space-4);overflow:auto;background:#f4f7f7f5;color:var(--color-text);animation:welIn .4s ease both;cursor:default}.wel.is-out{animation:welOut .45s ease both}.wel.is-out .wel-card{transform:translateY(-10px);opacity:0;transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .35s ease}.wel-card{width:auto;min-width:min(440px,100%);max-width:600px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-8) var(--space-6);border-radius:20px;background:#fff;border:1px solid var(--color-border);box-shadow:var(--shadow-dialog);animation:welCard .55s cubic-bezier(.22,1,.36,1) .05s both}.wel-icon{width:72px;height:72px;border-radius:20px;display:grid;place-items:center;background:var(--color-nav-active-bg);margin-bottom:var(--space-1);animation:welPop .5s cubic-bezier(.34,1.56,.64,1) .2s both}.wel-icon svg{width:44px;height:44px;overflow:visible}.cap-l{animation:capL .6s cubic-bezier(.34,1.56,.64,1) .4s both}.cap-r{animation:capR .6s cubic-bezier(.34,1.56,.64,1) .4s both}.spark{display:none}.draw{stroke-dasharray:140;stroke-dashoffset:140;animation:welDraw .9s cubic-bezier(.65,0,.35,1) .4s forwards}.draw.check{animation-delay:.95s}.pin{opacity:0;transform-box:fill-box;transform-origin:center;animation:welPop .4s cubic-bezier(.34,1.56,.64,1) 1.15s both}.wel-hello{margin:0;font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);animation:welUp .45s ease .4s both}.wel-title{margin:0;font-size:var(--text-landing-h2-sub);text-wrap:balance;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--color-text);animation:welUp .5s ease .46s both}@keyframes welIn{0%{opacity:0}to{opacity:1}}@keyframes welOut{to{opacity:0;visibility:hidden}}@keyframes welCard{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes welPop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes welUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes welDraw{to{stroke-dashoffset:0}}@keyframes capL{0%{transform:translate(-10px,10px);opacity:0}to{transform:none;opacity:1}}@keyframes capR{0%{transform:translate(10px,-10px);opacity:0}to{transform:none;opacity:1}}.workflow-stepper-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 var(--space-6);padding:18px var(--space-2) 16px;background:#fff;border:1px solid var(--color-border);border-radius:14px}.step-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);min-width:0;text-align:center}.step-item .step-connector{position:absolute;top:15px;left:calc(-50% + 24px);right:calc(50% + 24px);height:2px;border-radius:2px;background:var(--color-border);transition:background-color .3s ease}.step-item .step-connector.active{background:var(--color-primary)}.step-item .step-circle{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:var(--text-sm);font-weight:700;line-height:1;background:var(--color-border-light);color:var(--color-text-muted);transition:background-color .25s ease,color .25s ease}.step-item.complete .step-circle{background:var(--color-primary);color:#fff}.step-item.current .step-circle{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-teal)}.step-item .step-label{display:block;font-size:var(--text-xs);font-weight:600;line-height:1.2;color:var(--color-text-muted)}.step-item.current .step-label,.step-item.complete .step-label{color:var(--color-text)}.dispense-grid>.scanner-box,.dispense-grid>.panel{height:100%;display:flex;flex-direction:column}.dispense-grid>.panel #rxCards{flex:1 1 auto}.kpi-v,.stat-value{white-space:nowrap}.ms{--navy: #0E2A3B;--navy-2: #163A4F;--navy-line: rgba(255, 255, 255, .08);--teal: #14806E;--teal-d: #0F5F55;--teal-l: #E3F1EE;--mint: #7FD3C1;--ink: #16324F;--ink-2: #3D4A5A;--muted: #5F6E7E;--line: #E3E8EE;--line-2: #EEF2F5;--bg: #F4F7F7;--card: #FFFFFF;--red: #B42318;--red-l: #FEE4E2;--amber: #92400E;--amber-l: #FEF3C7;--green: #15803D;--green-l: #DCFCE7;--blue: #0F5F87;--blue-l: #E0F0FA;font-family:Inter,-apple-system,Segoe UI,sans-serif;color:var(--ink);font-size:var(--text-sm);line-height:1.5;-webkit-font-smoothing:antialiased;background:var(--bg);min-height:100vh}.ms button,.ms input,.ms select,.ms textarea{font:inherit;color:inherit}.ms a{color:inherit;text-decoration:none}.ms :focus-visible{outline:2px solid var(--teal);outline-offset:2px}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.side{position:sticky;top:0;height:100vh;background:var(--navy);color:#d6e3e8;display:flex;flex-direction:column;overflow-y:auto;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:22px 22px 20px;color:#fff;font-size:var(--text-landing-hero-p);font-weight:700;letter-spacing:-.01em;cursor:pointer;text-decoration:none;transition:opacity .18s ease,transform .18s ease}.brand svg{width:40px;height:20px;flex:none}.brand:hover{opacity:.92;transform:translateY(-.5px);text-decoration:none}.brand:focus-visible{outline:2px solid var(--teal, #0F766E);outline-offset:2px;border-radius:6px}.me{display:flex;align-items:center;gap:12px;margin:0 14px 14px;padding:14px;border-radius:12px;background:var(--navy-2)}.av,.user-avatar{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--teal-l);color:var(--teal-d);font-weight:700;font-size:var(--text-login-foot)}.me-name{color:#fff;font-weight:600;font-size:var(--text-sm);line-height:1.25}.me-role{display:inline-block;margin-top:4px;padding:1px 8px;border-radius:6px;background:#7fd3c129;color:var(--mint);font-size:var(--text-2xs);font-weight:600}.nav{display:flex;flex-direction:column;gap:2px;padding:6px 14px;flex:1}.nav a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 14px;border-radius:10px;color:#c9d8de;font-weight:500;font-size:var(--text-sm);transition:background-color .15s,color .15s}.nav a:hover{background:#ffffff0f;color:#fff}.nav a.on,.nav a.active{background:var(--mint);color:var(--navy);font-weight:600}.nav .badge{margin-left:auto;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:#e5484d;color:#fff;font-size:var(--text-2xs);font-weight:700;display:grid;place-items:center}.nav a.on .badge,.nav a.active .badge{background:var(--navy);color:#fff}.side-foot{padding:14px;border-top:1px solid var(--navy-line)}.side-foot a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 14px;border-radius:10px;color:#c9d8de;font-weight:500}.side-foot a:hover{background:#ffffff0f;color:#fff}.scrim{display:none}.content{min-width:0;display:flex;flex-direction:column}.banner{display:flex;align-items:center;gap:10px;padding:10px 32px;background:var(--red);color:#fff;font-weight:600;font-size:var(--text-sm)}.banner .grow{flex:1}.banner button{border:0;background:none;color:#fff;font-weight:600;cursor:pointer;padding:6px 8px;border-radius:8px}.banner button:hover{background:#ffffff24}.topbar{display:flex;align-items:center;gap:16px;padding:18px 32px;background:#fff;border-bottom:1px solid var(--line)}.topbar h1{margin:0;font-size:var(--text-lg);font-weight:700;letter-spacing:-.01em;color:var(--ink)}.topbar p{margin:2px 0 0;color:var(--muted);font-size:var(--text-sm)}.topbar .grow{flex:1;min-width:0}.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.icon-btn{position:relative;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--ink-2)}.icon-btn:hover{border-color:#c9d1da;color:var(--ink)}.icon-btn .dot{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#e5484d;color:#fff;font-size:var(--text-2xs);font-weight:700;display:grid;place-items:center;border:2px solid #FFFFFF}.menu-btn{display:none}.page{padding:28px 32px 48px;width:100%;box-sizing:border-box}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:600;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background-color .15s,border-color .15s}.btn:hover{border-color:#c9d1da;background:#fafbfc}.btn.primary{background:var(--teal);border-color:var(--teal);color:#fff}.btn.primary:hover{background:var(--teal-d);border-color:var(--teal-d)}.btn.dark{background:var(--navy);border-color:var(--navy);color:#fff}.btn.danger{background:#fff;border-color:#f1b4ae;color:var(--red)}.btn.danger:hover{background:var(--red-l)}.btn.sm{min-height:34px;padding:0 12px;font-size:var(--text-login-foot);border-radius:8px}.btn.link{border:0;background:none;padding:0;min-height:0;color:var(--teal-d);text-decoration:underline;text-underline-offset:3px}.btn:disabled{opacity:.55;cursor:not-allowed}.ms .card,.card{background:var(--card, #FFFFFF);border:1px solid var(--line, #E3E8EE);border-radius:14px}.card-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 20px 0}.card-h h2{margin:0;font-size:var(--text-base);font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px}.card-h .grow{flex:1}.card-b{padding:16px 20px 20px}.stack{display:flex;flex-direction:column;gap:20px}.kpis{display:grid;grid-template-columns:repeat(var(--n, 4),minmax(0,1fr));gap:16px}.kpi,.kpis button.stat{position:relative;padding:18px 20px;text-align:left;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:default}button.kpi,.kpis button.stat{cursor:pointer}button.kpi:hover,.kpis button.stat:hover{border-color:#c9d1da}.kpi-l{color:var(--muted);font-size:var(--text-sm);font-weight:500;padding-right:28px}.kpi-v{margin-top:6px;font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em;color:var(--ink);line-height:1.15}.kpi-v.warn{color:var(--amber)}.kpi-v.bad{color:var(--red)}.kpi-s{margin-top:4px;color:var(--muted);font-size:var(--text-xs)}.kpi-i{position:absolute;top:18px;right:18px;color:#8a98a6}.grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.grid-21{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:20px;align-items:start}.filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:16px 20px}.filters .grow{flex:1}.input,.select{height:40px;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:#f7f9fa;min-width:0;box-sizing:border-box}.input:focus,.select:focus,textarea.input:focus{outline:none;border-color:var(--teal);background:#fff;box-shadow:var(--shadow-landing-focus)}.search{position:relative;flex:1 1 260px;max-width:420px}.search svg{position:absolute;left:12px;top:12px;color:#8a98a6;pointer-events:none}.search .input{width:100%;padding-left:38px}textarea.input{height:auto;padding:10px 12px;resize:vertical;width:100%}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-size:var(--text-login-foot);font-weight:600;color:var(--ink-2)}.field .help{font-size:var(--text-xs);color:var(--muted)}.req{color:#dc2626;font-weight:700;margin-left:2px}.seg{display:inline-flex;padding:4px;border-radius:10px;background:var(--line-2);gap:2px}.seg button{min-height:32px;padding:0 14px;border:0;border-radius:8px;background:none;font-weight:600;font-size:var(--text-login-foot);color:var(--muted);cursor:pointer}.seg button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:var(--shadow-soft)}.seg.solid button[aria-pressed=true]{background:var(--teal);color:#fff;box-shadow:none}.tbl-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.tbl th{text-align:left;font-weight:500;font-size:var(--text-login-foot);color:var(--muted);padding:12px 16px;border-bottom:1px solid var(--line);white-space:nowrap;text-transform:none;background:transparent}.tbl td{padding:14px 16px;border-bottom:1px solid var(--line-2);vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr:hover td{background:#fafcfc}.tbl .num{text-align:right;font-variant-numeric:tabular-nums}.tbl .sub{display:block;color:var(--muted);font-size:var(--text-xs);margin-top:2px}.tbl .empty{text-align:center;color:var(--muted);padding:36px 16px}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.chip.ok{background:var(--green-l);color:var(--green)}.chip.warn{background:var(--amber-l);color:var(--amber)}.chip.bad{background:var(--red-l);color:var(--red)}.chip.info{background:var(--blue-l);color:var(--blue)}.chip.mute{background:var(--line-2);color:var(--ink-2)}.chip.teal{background:var(--teal-l);color:var(--teal-d)}.exp-soon{color:var(--amber);font-weight:600}.exp-gone{color:var(--red);font-weight:600}.pager{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--text-login-foot)}.pager .grow{flex:1}.pager .select{height:34px;background:#fff}.icon-act{width:34px;height:34px;border:1px solid transparent;border-radius:8px;background:none;display:inline-grid;place-items:center;color:var(--muted);cursor:pointer}.icon-act:hover{background:var(--line-2);color:var(--ink)}.icon-act.bad:hover{background:var(--red-l);color:var(--red)}.muted{color:var(--muted)}.note{color:var(--muted);font-size:var(--text-login-foot);margin:0}.chart{position:relative;height:220px;margin-top:8px}.chart svg{width:100%;height:100%;display:block}.chart .grid line{stroke:#e8edf1;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.chart .area{fill:#14806e14}.chart .line{fill:none;stroke:var(--teal);stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-linejoin:round}.chart .dots{fill:none;stroke:var(--teal);stroke-width:7;stroke-linecap:round;vector-effect:non-scaling-stroke}.chart .line.prev{stroke:#9aa7b4;stroke-width:2;stroke-dasharray:6 6}.legend{display:flex;gap:16px;font-size:var(--text-login-foot);color:var(--muted)}.legend i{display:inline-block;width:18px;height:0;border-top:2.5px solid var(--teal);vertical-align:middle;margin-right:6px}.legend i.prev{border-top:2px dashed #9AA7B4}.xlabels{display:flex;justify-content:space-between;color:var(--muted);font-size:var(--text-xs);margin-top:6px}.ylab{position:absolute;left:0;top:0;bottom:0;display:flex;flex-direction:column;justify-content:space-between;font-size:var(--text-2xs);color:#8a98a6;pointer-events:none}.bars{display:flex;align-items:flex-end;gap:14px;height:200px;margin-top:12px;padding:0 4px;border-bottom:1px solid var(--line)}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:6px}.bar-col .v{font-size:var(--text-xs);font-weight:600;color:var(--ink-2)}.bar-col .b{width:100%;max-width:72px;border-radius:8px 8px 0 0;background:var(--teal)}.bar-labels{display:flex;gap:14px;padding:8px 4px 0}.bar-labels span{flex:1;text-align:center;font-size:var(--text-xs);color:var(--muted)}.hbar{display:flex;flex-direction:column;gap:14px}.hbar-h{display:flex;justify-content:space-between;font-size:var(--text-sm);margin-bottom:6px}.hbar-t{height:8px;border-radius:999px;background:var(--line-2);overflow:hidden}.hbar-t span{display:block;height:100%;border-radius:999px;background:var(--teal)}.attn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.attn div{padding:14px;border-radius:12px}.attn .r{background:#fef1f0}.attn .b{background:#eaf4fb}.attn small{display:block;font-size:var(--text-xs);font-weight:500}.attn strong{display:block;font-size:var(--text-lg);margin:2px 0}.attn .r small,.attn .r strong{color:var(--red)}.attn .b small,.attn .b strong{color:var(--blue)}.report-doc{padding:32px}.report-top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:20px;border-bottom:2px solid var(--ink)}.report-top svg{width:60px;height:30px}.report-top h3{margin:6px 0 2px;font-size:var(--text-lg)}.report-meta{display:grid;grid-template-columns:auto auto;gap:4px 16px;font-size:var(--text-login-foot);align-content:start}.report-meta dt{color:var(--muted)}.report-meta dd{margin:0;font-weight:600}.report-sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.report-sum div{padding:12px 14px;border:1px solid var(--line);border-radius:10px}.report-sum span{display:block;font-size:var(--text-xs);color:var(--muted)}.report-sum strong{font-size:var(--text-lg)}.sign{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}.sign div{border-top:1px solid var(--ink);padding-top:8px;font-size:var(--text-login-foot)}.sign strong{display:block}.sign small{color:var(--muted)}@media(max-width:1200px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2,.grid-21{grid-template-columns:1fr;gap:16px}}@media(max-width:900px){.shell{grid-template-columns:1fr;width:100%;overflow-x:hidden}.side{position:fixed;left:0;top:0;bottom:0;width:272px;transform:translate(-100%);transition:transform .25s ease}.shell.menu-open .side{transform:none}.shell.menu-open .scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0e2a3b73;z-index:15}.menu-btn{display:grid}.topbar,.page,.banner{padding-left:20px;padding-right:20px}.topbar{flex-wrap:wrap;padding-top:14px;padding-bottom:14px;gap:12px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-sum,.attn,.form-split{grid-template-columns:1fr;gap:14px}.content{width:100%;min-width:0;overflow-x:hidden}}@media(max-width:640px){.form-grid{grid-template-columns:1fr;gap:12px}.topbar{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px;padding:12px 14px}.topbar h1{font-size:var(--text-landing-hero-p)}.topbar p{font-size:var(--text-login-foot)}.top-actions{grid-column:1/-1;justify-content:flex-start;gap:8px;width:100%}.top-actions .btn{flex:1 1 auto;justify-content:center;min-height:38px;padding:0 10px;font-size:var(--text-xs)}.page{padding:16px 14px 36px}.stack{gap:14px}.kpi{padding:14px 12px}.kpi-l{font-size:var(--text-xs);padding-right:18px}.kpi-v{font-size:var(--text-lg)}.kpi-s{font-size:var(--text-2xs)}.tbl th,.tbl td{padding-left:10px;padding-right:10px}.xlabels{white-space:nowrap;font-size:var(--text-2xs)}.xlabels span:nth-child(2n){display:none}.tbl td:first-child{min-width:170px}.tbl td.empty{white-space:normal;min-width:0}.top-actions .av,.top-actions .user-avatar{display:none}.report-doc{padding:16px 14px}.report-top{flex-direction:column;gap:12px}.report-meta{grid-template-columns:auto 1fr;gap:4px 12px}.report-sum{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}.report-sum div{padding:10px}.bars,.bar-labels{gap:6px}.bar-labels span{min-width:0;font-size:var(--text-2xs);overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.card-h{padding:14px 14px 0;gap:8px}.card-b{padding:14px}.banner{font-size:var(--text-login-foot);flex-wrap:wrap;gap:6px 10px;padding:10px 14px}.banner .grow{flex:1 1 100%;line-height:1.35}.filters{padding:12px 14px;gap:8px}.filters .search{flex:1 1 100%;max-width:100%}.filters .sel-wrap{flex:1 1 calc(50% - 6px);min-width:120px}.filters .sel-wrap .select{width:100%}.cta-card{padding:16px 14px;gap:12px;border-radius:12px}.cta-card .grow{min-width:100%}.cta-card h2{font-size:var(--text-base)}.cta-card .btn{flex:1 1 auto;width:100%;justify-content:center;min-height:40px}.steps{padding:12px 6px 10px;margin-bottom:14px;border-radius:12px}.steps .step-item{font-size:var(--text-xs);gap:4px}.steps .step-circle{width:28px;height:28px;font-size:var(--text-xs)}.steps .step-item:not(:first-child):before{top:14px;left:calc(-50% + 18px);right:calc(50% + 18px)}.patient{grid-template-columns:1fr;gap:10px}.drop{min-height:280px;height:320px;padding:12px}.rx-medicine-actions{flex-direction:column;align-items:stretch;gap:10px}.btn.medicine-action-btn{width:100%;justify-content:center}.actionbar{flex-direction:column;align-items:stretch;gap:10px;padding:14px}.actionbar .btn{width:100%;justify-content:center;min-height:42px}.sign{grid-template-columns:1fr;gap:20px;margin-top:24px}.ovl{padding:12px 8px}.dlg{max-height:calc(100dvh - 24px);border-radius:12px}.dlg-h,.dlg-b{padding:14px 16px}.dlg-f{padding:12px 16px;flex-wrap:wrap}.dlg-f .btn{flex:1 1 auto;width:100%;justify-content:center}}@media(max-width:480px){.page{padding:14px 12px 32px}.card-h{padding:12px 12px 0}.card-b{padding:12px 10px}.card-h h2{font-size:var(--text-sm)}.kpi{padding:12px 10px}.kpi-l{font-size:var(--text-2xs);padding-right:14px}.list-row{grid-template-columns:1fr;gap:8px;align-items:flex-start;padding:10px 0}.list-row>div:last-child{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;flex-wrap:wrap}.steps{padding:10px 4px 8px}.steps .step-item .step-label{font-size:var(--text-2xs)}.steps .step-circle{width:24px;height:24px;font-size:var(--text-2xs)}.steps .step-item:not(:first-child):before{top:12px;left:calc(-50% + 14px);right:calc(50% + 14px)}.filters .sel-wrap{flex:1 1 100%;width:100%}.med{padding:10px 0}}@media(max-width:400px){.kpis{grid-template-columns:1fr;gap:8px}.report-sum{grid-template-columns:1fr!important}.page,.topbar,.banner{padding-left:10px;padding-right:10px}.xlabels span:not(:first-child):not(:last-child):not(:nth-child(4)){display:none}}.ovl{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#0e2a3b8c;display:flex;align-items:center;justify-content:center;padding:24px 16px;overflow-y:auto;animation:fade .2s ease both}.dlg{width:100%;max-width:520px;background:#fff;border-radius:16px;box-shadow:var(--shadow-dialog);display:flex;flex-direction:column;max-height:calc(100vh - 48px);overflow:hidden;animation:pop .28s cubic-bezier(.2,.8,.2,1) both}.dlg.lg{max-width:980px}.dlg-h{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.dlg-h h3{margin:0;font-size:var(--text-lg);flex:1;display:flex;align-items:center;gap:10px}.dlg-b{padding:20px 22px;overflow-y:auto}.dlg-f{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--line);background:#f9fafb}.dlg.err .dlg-h{background:#fef3f2;border-color:#fecdca}.dlg.err .dlg-h h3{color:var(--red)}.err-list{margin:10px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.form-split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px}.preview{padding:18px;border-radius:12px;background:#f7f9fa;border:1px solid var(--line)}.preview h4{margin:0 0 2px;font-size:var(--text-lg)}.preview dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:14px 0 0;font-size:var(--text-sm)}.preview dt{color:var(--muted)}.preview dd{margin:0;font-weight:600;text-align:right}.preview ul{margin:14px 0 0;padding-left:18px;color:var(--ink-2);font-size:var(--text-sm);display:flex;flex-direction:column;gap:4px}.field.invalid .input,.field.invalid input{border-color:#dc2626}.field.invalid label{color:#b91c1c}.activity{list-style:none;margin:0;padding:0}.activity li{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:11px 0;border-top:1px solid var(--line-2)}.activity li:first-child{border-top:0}.activity time{color:var(--muted);font-size:var(--text-sm)}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.med{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 0;border-top:1px solid var(--line-2)}.med:first-child{border-top:0}.cta-card{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:22px 24px;background:var(--navy);color:#fff;border-radius:14px}.cta-card h2{margin:0;font-size:var(--text-lg);font-weight:700;color:#fff}.cta-card p{margin:4px 0 0;color:#b9cdd5;font-size:var(--text-sm)}.cta-card .grow{flex:1;min-width:240px}.cta-card .btn{border-color:#ffffff40;background:transparent;color:#fff}.cta-card .btn:hover{background:#ffffff1a;color:#fff}.cta-card .btn.primary{background:var(--mint);color:var(--navy);border-color:var(--mint);font-weight:600}.cta-card .btn.primary:hover{filter:brightness(.95)}.list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line-2)}.list-row:first-child{border-top:0}.list-row strong{display:block}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0 0 20px;padding:18px 8px 16px;background:#fff;border:1px solid var(--line);border-radius:14px}.steps .step-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;text-align:center;font-weight:600;font-size:var(--text-sm);line-height:1.2;color:var(--muted)}.steps .step-item:not(:first-child):before{content:"";position:absolute;top:15px;left:calc(-50% + 24px);right:calc(50% + 24px);height:2px;border-radius:2px;background:var(--line)}.steps .step-item .step-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1;font-size:var(--text-sm);font-weight:700;font-variant-numeric:tabular-nums;background:var(--line-2);color:var(--ink-2);border:2px solid transparent;box-sizing:border-box}.steps .step-item.cur{color:var(--ink)}.steps .step-item.cur .step-circle{background:var(--teal);color:#fff;outline:4px solid var(--teal-l)}.steps .step-item.done{color:var(--ink-2)}.steps .step-item.done .step-circle{background:var(--teal-l);color:var(--teal-d);border-color:var(--teal)}.steps .step-item.done:before,.steps .step-item.cur:before{background:var(--teal)}.patient{display:grid;grid-template-columns:2fr 1fr 1.5fr 1.4fr;gap:14px;align-items:end}@media(max-width:900px){.patient{grid-template-columns:1fr 1fr}}@media(max-width:640px){.patient{grid-template-columns:1fr}}.drop{position:relative;min-height:420px;height:clamp(420px,52vh,520px);border:1.5px dashed #C9D1DA;border-radius:12px;background:#f7f9fa;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;color:var(--muted);box-sizing:border-box;padding:14px;transition:border-color .2s ease,background-color .2s ease}.drop.has-photo{border-style:solid;border-color:#cbd5e1;background:#f7f9fa}.drop.is-scanning{border-color:var(--teal);background:#f0fdf4}.drop-img-wrap{position:relative;width:100%;height:100%;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px}.drop-img-wrap img,.drop img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;image-orientation:from-image;background:transparent;border-radius:8px;box-shadow:var(--shadow-rx-paper);cursor:zoom-in;display:block;margin:auto;transition:transform .2s ease}.drop img:hover{transform:scale(1.008)}.drop-remove-btn{position:absolute;top:12px;right:12px;width:34px;height:34px;min-width:34px;min-height:34px;max-width:34px;max-height:34px;padding:0;border-radius:50%;border:1px solid rgba(0,0,0,.12);background:#ffffffeb;color:#1e293b;font-size:var(--text-lg);font-weight:500;line-height:1;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;box-sizing:border-box;box-shadow:var(--shadow-btn-dark);transition:background-color .18s ease,color .18s ease,transform .18s ease,border-color .18s ease}.drop-remove-btn:hover{background:#dc2626;color:#fff;border-color:#dc2626;transform:scale(1.08)}.drop-remove-btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.drop .x{position:absolute;top:12px;right:12px;width:34px;height:34px;min-width:34px;min-height:34px;max-width:34px;max-height:34px;padding:0;border-radius:50%;border:1px solid rgba(0,0,0,.12);background:#ffffffeb;color:#1e293b;font-size:var(--text-lg);font-weight:500;line-height:1;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;box-sizing:border-box;box-shadow:var(--shadow-btn-dark);transition:background-color .18s ease,color .18s ease,transform .18s ease,border-color .18s ease}.drop .x:hover{background:#dc2626;color:#fff;border-color:#dc2626;transform:scale(1.08)}.drop .x:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.drop-actions-group{position:absolute;bottom:12px;right:12px;display:flex;align-items:center;gap:8px;z-index:10}.drop-zoom-btn,.drop-rotate-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:18px;background:#ffffffeb;color:#1e293b;font-size:var(--text-xs);font-weight:600;border:1px solid rgba(0,0,0,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;box-shadow:var(--shadow-btn-dark);transition:background-color .18s ease,color .18s ease,transform .18s ease}.drop-zoom-btn:hover,.drop-rotate-btn:hover{background:#fff;color:var(--teal-d);transform:translateY(-1px)}.drop-zoom-btn:focus-visible,.drop-rotate-btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.drop-rotate-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.rx-medicine-actions{display:flex;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}.btn.medicine-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;min-height:40px;max-height:40px;padding:0 16px;margin:0;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:600;font-size:var(--text-sm);line-height:1;text-decoration:none;cursor:pointer;white-space:nowrap;box-sizing:border-box;vertical-align:middle;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}#addMedicine.medicine-action-btn,#rxAddStockBtn.medicine-action-btn{height:40px;padding:0 16px;margin:0}.btn.medicine-action-btn:hover{border-color:#cbd5e1;background:#f8fafc;color:var(--navy);transform:translateY(-1px)}.btn.medicine-action-btn:active{transform:translateY(0)}.btn.medicine-action-btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.btn.medicine-action-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.rx-zoom-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0a1924c7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;animation:rxZoomFadeIn .2s ease-out}.rx-zoom-content{background:#fff;border-radius:16px;max-width:92vw;max-height:92vh;width:860px;display:flex;flex-direction:column;box-shadow:var(--shadow-dialog);overflow:hidden}.rx-zoom-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #E2E8F0;font-weight:600;color:#0e2a3b;font-size:var(--text-base)}.rx-zoom-header .rx-zoom-close{position:static;width:32px;height:32px;border-radius:50%;border:0;background:#f1f5f9;color:#334e68;font-size:var(--text-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:background .18s ease,color .18s ease}.rx-zoom-header .rx-zoom-close:hover{background:#e2e8f0;color:#0e2a3b}.rx-zoom-body{flex:1;overflow:auto;padding:16px;display:flex;align-items:center;justify-content:center;background:#0e2a3b08;min-height:360px}.rx-zoom-img{max-width:100%;max-height:72vh;object-fit:contain;border-radius:8px;box-shadow:var(--shadow-rx-paper)}.rx-zoom-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid #E2E8F0;background:#fafcfd;font-size:var(--text-sm)}@keyframes rxZoomFadeIn{0%{opacity:0}to{opacity:1}}.beam{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--teal, #0F766E) 20%,#5EEAD4 50%,var(--teal, #0F766E) 80%,transparent 100%);box-shadow:var(--shadow-rx-beam);pointer-events:none;z-index:5;animation:rx-scanner-sweep 2s ease-in-out infinite alternate}@keyframes beam{0%{top:0;transform:translateY(0)}to{top:100%;transform:translateY(-100%)}}.row-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.med-name{font-weight:600;font-size:var(--text-base)}.med-name small{font-weight:500;color:var(--muted);margin-left:6px;font-size:var(--text-sm)}.med-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:10px}.med-row .field{flex:0 0 96px}.med-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:10px;margin-top:10px}.med-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.meals{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:10px}.meals .input{height:36px;padding:0 8px}.med.invalid{background:#fff7f6;border-radius:10px;padding:14px 12px}.chips-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chips-row button{min-height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:var(--text-sm);cursor:pointer}.chips-row button:hover{border-color:var(--teal);color:var(--teal-d)}.check{display:flex;gap:10px;align-items:flex-start;font-size:var(--text-sm);line-height:1.5;cursor:pointer}.check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--teal);flex:none}.actionbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 20px}.actionbar .grow{flex:1}.auth-loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0b1418;color:#fff}.auth-loading-spinner{width:38px;height:38px;border:3px solid rgba(15,118,110,.25);border-top-color:var(--teal, #0F766E);border-radius:50%;animation:authSpinnerRotate .8s linear infinite}@keyframes authSpinnerRotate{to{transform:rotate(360deg)}}.ms{height:100vh;height:100dvh;min-height:0;overflow:hidden}.ms .shell{height:100%;min-height:0}.ms .side{height:100%}.ms .content{height:100%;min-height:0;overflow:hidden}.ms .content>.topbar,.ms .content>.banner{flex:none}.ms .content>main.page.main{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.ms .content>main.page.main>.screen{flex:none}.tbl-wrap{max-width:100%;overflow-x:auto}.field-error,.field-warning{display:block;margin-top:4px;font-size:var(--text-xs);font-weight:500;line-height:1.4}.field-error{color:#b91c1c}.field-warning{color:#92400e}.field.invalid .select,.field.invalid select,.strength-input.is-invalid .input,.input.is-invalid{border-color:#dc2626}.field.invalid .input:focus-visible,.input.is-invalid:focus-visible{outline-color:#dc2626}.input-readonly{display:flex;align-items:center;background:#f7f9fa;color:var(--muted);cursor:default}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.strength-input{display:grid;grid-template-columns:minmax(64px,1fr) minmax(96px,1.1fr);gap:6px;min-width:0}.strength-input .sel-wrap{min-width:0}.strength-input .select{width:100%}.toast-region{position:fixed;right:16px;top:96px;z-index:1200;display:flex;flex-direction:column;align-items:flex-end;gap:10px;width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 112px);overflow-y:auto;pointer-events:none}.toast-region:empty{display:none}.toast{pointer-events:auto;width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 10px 12px 14px;border:1px solid var(--color-border, #DCE7E4);border-left-width:4px;border-radius:12px;background:#fff;color:#16324f;box-shadow:var(--shadow-dialog);animation:toast-in .22s cubic-bezier(.2,.8,.2,1) both}.toast-body{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:var(--text-sm);line-height:1.45;overflow-wrap:anywhere}.toast-body strong{font-weight:700}.toast-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;margin:0;background:none;color:inherit;font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;border-radius:6px}.toast-action:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.toast-action-label{font-weight:700;text-decoration:underline;text-underline-offset:2px}.toast-action:hover .toast-action-label{text-decoration-thickness:2px}.toast-icon{margin-top:1px;flex:none}.toast-close{display:grid;place-items:center;width:32px;height:32px;margin:-4px -2px 0 0;border:0;border-radius:8px;background:transparent;color:#526477;cursor:pointer}.toast-close:hover{background:#f1f5f4;color:#16324f}.toast-close:focus-visible{outline:2px solid #0F766E;outline-offset:1px}.toast-success{border-left-color:#15803d}.toast-success .toast-icon{color:#15803d}.toast-warning{border-left-color:#b45309;background:#fffbeb}.toast-warning .toast-icon{color:#b45309}.toast-error{border-left-color:#b91c1c;background:#fef2f2}.toast-error .toast-icon{color:#b91c1c}.toast-info{border-left-color:#0f5f87}.toast-info .toast-icon{color:#0f5f87}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.screen.active.scanner-screen{display:flex;flex-direction:column;gap:16px}.scanner-screen>.steps{margin:0}.scanner-patient .card-b{padding-top:14px;padding-bottom:14px}.scanner-panels{align-items:stretch}.scanner-panel{display:flex;flex-direction:column;min-width:0;min-height:0}.scanner-panel>.card-h{flex:none}.scanner-panel-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.scanner-photo-controls{flex:none}.med-list{flex:1 1 auto;min-height:120px;max-height:min(60vh,560px);overflow-y:auto;overscroll-behavior:contain;margin:0 -8px;padding:0 8px;border-radius:10px}.med-list:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.med-list-empty{padding:40px 0;text-align:center}.scanner-panel .rx-medicine-actions{flex:none;padding-top:12px;margin-top:4px;border-top:1px solid var(--line-2)}.med-row .field{flex:1 1 200px}.med-row .field.med-qty{flex:0 0 84px}.med-row .field.med-strength{flex:1 1 200px}.med-row .field.med-form{flex:1 1 140px}.med-grid{grid-template-columns:minmax(0,2fr) 84px minmax(0,1.6fr) minmax(0,1.2fr)}.scan-feedback{display:flex;flex-direction:column;gap:6px;margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f7f9fa;font-size:var(--text-sm)}.scan-feedback-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.scan-confidence-why{font-size:var(--text-sm)}.scan-confidence-why summary{cursor:pointer;font-weight:600;color:var(--teal)}.scan-confidence-why ul{margin:6px 0 0;padding-left:18px;display:grid;gap:4px}.scan-confidence-why ul ul{margin-top:2px;color:var(--muted, inherit)}.scan-feedback.is-done{background:#f0fdf4;border-color:#bbe5c8}.scan-feedback.is-failed{background:#fef2f2;border-color:#fecaca;color:#991b1b}.scan-feedback .muted{font-size:var(--text-xs)}.scan-elapsed{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink-2)}.scan-progress{position:relative;height:6px;border-radius:999px;background:#dce7e4;overflow:hidden}.scan-progress-bar{display:block;height:100%;border-radius:inherit;background:var(--teal);transition:width .5s ease}.scan-progress.indeterminate span{position:absolute;top:0;bottom:0;width:35%;border-radius:inherit;background:var(--teal);animation:scan-indeterminate 1.3s ease-in-out infinite}@keyframes scan-indeterminate{0%{left:-35%}to{left:100%}}@media(min-width:1201px)and (min-height:700px){.ms .content>main.page.main:has(>.scanner-screen){display:flex;flex-direction:column;padding-bottom:20px}.ms .content>main.page.main>.scanner-screen{flex:1 1 auto;min-height:0;gap:12px}.scanner-screen>.steps{padding-top:10px;padding-bottom:8px;flex:none}.scanner-patient .card-b{padding-top:10px;padding-bottom:10px}.scanner-patient .field label{margin-bottom:2px}.scanner-screen>.scanner-patient,.scanner-screen>.scanner-actionbar{flex:none}.scanner-screen>.scanner-panels{flex:1 1 0;min-height:0;grid-template-rows:minmax(0,1fr)}.scanner-panel{overflow:hidden}.scanner-panel>.card-h{padding-top:14px}.scanner-panel-body{overflow-y:auto;padding-top:12px;padding-bottom:14px}.scanner-panel .drop{flex:1 1 auto;height:auto;min-height:160px}.scanner-panel .med-list{max-height:none;min-height:180px}.scanner-panel .rx-medicine-actions{gap:8px;padding-top:10px}.scanner-panel .btn.medicine-action-btn{height:36px}.scanner-actionbar .actionbar{padding-top:10px;padding-bottom:10px}}.confirm-dispense .dlg-b{display:flex;flex-direction:column;gap:14px}.confirm-intro{margin:0;font-size:var(--text-base);color:var(--ink)}.confirm-table-wrap{max-height:min(42vh,420px);overflow:auto;border:1px solid var(--line);border-radius:10px}.confirm-table{width:100%}.confirm-table td{vertical-align:top}.confirm-table tr.has-problem td{background:#fff7f6}.confirm-table .muted{font-size:var(--text-xs)}.confirm-qty{width:96px;text-align:right}.confirm-units{margin:0}.confirm-review{border:1px solid var(--line);border-radius:10px;padding:12px 14px 14px;margin:0;min-width:0}.confirm-review legend{padding:0 6px;font-weight:600;color:var(--ink)}.confirm-error{margin:0;padding:10px 12px;border-left:4px solid #B91C1C;border-radius:8px;background:#fef2f2;color:#991b1b;font-weight:500}.confirm-dispense .dlg-f{align-items:center;flex-wrap:wrap}.confirm-blockers{flex:1 1 200px;color:var(--muted);font-size:var(--text-sm)}.analytics-controls .filters{row-gap:8px}.analytics-period{font-size:var(--text-sm)}.analytics-error{margin:0 20px 14px}.chart-head{row-gap:8px}.chart-zoom{display:inline-flex;flex-wrap:wrap;gap:6px}.chart-zoom .btn.sm{min-width:36px}.chart-window{margin:0 0 4px;font-size:var(--text-xs)}.chart .hit{fill:transparent}.chart .hit:hover{fill:#14806e0f}.hbar-list{display:flex;flex-direction:column;gap:14px}.hbar-list .hbar{gap:6px}.hbar-l{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-sm)}.hbar-track{height:8px;border-radius:999px;background:var(--line-2);overflow:hidden}.hbar-fill{height:100%;border-radius:999px;background:var(--teal)}.report-range-error{margin:0 20px 12px}@media(max-width:1200px){.scanner-panels{grid-template-columns:minmax(0,1fr)}.med-list{max-height:min(55vh,520px)}}@media(max-width:640px){.toast-region{right:8px;left:8px;width:auto;align-items:stretch;top:8px;max-height:calc(100dvh - 16px)}.med-row .field.med-strength,.med-row .field.med-form{flex:1 1 100%}.med-grid{grid-template-columns:minmax(0,1fr) 84px}.confirm-qty{width:76px}.chart-zoom{width:100%}}@media(prefers-reduced-motion:reduce){.toast{animation:none}.scan-progress.indeterminate span{animation:none;left:0;width:100%;opacity:.45}}@media print{.ms,.ms .shell,.ms .content,.ms .content>main.page.main{height:auto!important;overflow:visible!important}.toast-region{display:none!important}}
