@font-face{font-family:Noto Sans Lao;src:url(/fonts/noto-sans-lao-400.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Noto Sans Lao;src:url(/fonts/noto-sans-lao-500.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Noto Sans Lao;src:url(/fonts/noto-sans-lao-600.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Noto Sans Lao;src:url(/fonts/noto-sans-lao-700.woff2) format("woff2");font-style:normal;font-weight:700 900;font-display:swap}:root{color-scheme:light;font-family:Noto Sans Lao,Lao UI,Leelawadee UI,Phetsarath OT,Saysettha OT,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;background:#f8fafc;color:#020817;--background: hsl(0 0% 100%);--foreground: hsl(222.2 84% 4.9%);--card: hsl(0 0% 100%);--card-foreground: hsl(222.2 84% 4.9%);--primary: hsl(221.2 83.2% 53.3%);--primary-foreground: hsl(210 40% 98%);--secondary: hsl(210 40% 96.1%);--secondary-foreground: hsl(222.2 47.4% 11.2%);--muted: hsl(210 40% 96.1%);--muted-foreground: hsl(215.4 16.3% 46.9%);--accent: hsl(210 40% 96.1%);--accent-foreground: hsl(222.2 47.4% 11.2%);--destructive: hsl(0 84.2% 60.2%);--destructive-foreground: hsl(210 40% 98%);--border: hsl(214.3 31.8% 91.4%);--input: hsl(214.3 31.8% 91.4%);--ring: hsl(221.2 83.2% 53.3%);--radius: .5rem;--phoenix-blue: hsl(221.2 83.2% 53.3%);--phoenix-blue-2: hsl(224 76.3% 48%);--phoenix-blue-soft: hsl(214 100% 96.9%);--phoenix-red: hsl(0 84.2% 60.2%);--phoenix-amber: hsl(38 92% 50%);--phoenix-green: hsl(142 71% 45%);--phoenix-navy: hsl(222.2 47.4% 11.2%);--phoenix-border: hsl(214.3 31.8% 91.4%);--phoenix-border-strong: hsl(215 20% 80%);--phoenix-soft: hsl(210 40% 96.1%);--phoenix-muted: hsl(215.4 16.3% 46.9%);--phoenix-text: hsl(222.2 84% 4.9%);--phoenix-text-2: hsl(215.4 25% 26%)}*{box-sizing:border-box}html{width:100%;overflow-x:hidden}body{margin:0;min-width:320px;width:100%;overflow-x:hidden;line-height:1.45;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-shell{min-height:100vh;display:grid;place-items:center;padding:48px 28px;background:radial-gradient(circle at top left,rgba(56,116,255,.12),transparent 32%),linear-gradient(180deg,#f8fbff,#eef4fb)}.login-brand{display:grid;justify-items:center;gap:6px;margin-bottom:18px;text-align:center}.login-brand svg{width:44px;height:44px;padding:8px;color:var(--phoenix-blue);background:var(--phoenix-blue-soft);border-radius:12px}.login-brand h1{margin:4px 0 0;color:var(--phoenix-blue);font-size:26px;font-weight:800;letter-spacing:-.01em}.login-brand p{margin:0;color:var(--phoenix-muted);font-size:13px;font-weight:600;letter-spacing:.04em}.login-copy h1{margin:0;color:var(--phoenix-blue);font-size:clamp(32px,5vw,48px);font-weight:800}.login-copy p{max-width:520px;margin:12px 0 0;color:#1f2937;font-size:clamp(16px,2vw,20px);line-height:1.5}.login-panel{width:100%;max-width:420px;padding:28px 26px;background:#fff;border:1px solid var(--phoenix-border);border-radius:14px;box-shadow:0 18px 40px #0f172a1a}.screen-header h2{margin:0;font-size:clamp(22px,3vw,30px);line-height:1.18;font-weight:700}.screen-header p{margin:6px 0 0;color:var(--phoenix-muted);max-width:760px;font-size:13.5px}.login-form,.settings-form{display:grid;gap:14px}label{display:grid;gap:6px;color:#374151;font-weight:600;font-size:12.5px}input,select,textarea{width:100%;border:1px solid var(--input);border-radius:var(--radius);padding:9px 12px;background:var(--background);color:var(--foreground);outline:none;font-size:13.5px;line-height:1.4;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:var(--muted-foreground)}textarea{min-height:96px;resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--ring);box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}button{border:0;border-radius:8px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:700;line-height:1.25;font-size:13.5px;color:#fff;background:var(--phoenix-blue);transition:background .15s,transform .05s,box-shadow .15s}button:hover:not(:disabled){background:var(--phoenix-blue-2)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;background:#cbd5e1;color:#f3f4f6}.login-form button{width:100%;min-height:46px;background:var(--phoenix-blue);font-size:15px}.login-divider{height:1px;margin:18px 0;background:#e5e7eb}.login-error{display:flex;align-items:center;gap:8px;padding:8px 12px;margin:-4px 0 4px;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:12.5px;font-weight:600}.login-hint{display:grid;gap:4px;padding:12px 14px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;font-size:12px;color:#475569}.login-hint strong{font-size:12px;font-weight:700;color:#0f172a;margin-bottom:2px}.login-hint b{color:#2563eb;font-weight:700}.secondary-login{width:100%;min-height:42px;color:#fff;background:var(--phoenix-green)}.secondary-login:hover{background:#15803d}.login-snapshot{position:fixed;right:28px;bottom:22px;display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:12px}.login-snapshot div{border-radius:8px;padding:12px 14px;background:#fff;border:1px solid var(--phoenix-border);color:#111827;box-shadow:0 6px 18px #0f172a0f}.login-snapshot span,.sidebar-brand span,.sidebar-user span,.worklist-item span,.worklist-item small{display:block;color:var(--phoenix-muted);font-size:12px}.login-snapshot strong{display:block;margin-top:4px}.app-shell{min-height:100vh;display:block}.sidebar{position:fixed;top:0;left:0;width:244px;height:100vh;padding:18px 14px;display:flex;flex-direction:column;gap:18px;background:#0f172a;color:#f8fafc;border-right:1px solid hsl(217.2 32.6% 17.5%);overflow-y:auto;z-index:50}.sidebar-brand,.sidebar-user{display:flex;align-items:center;gap:12px;padding:4px 6px}.sidebar-brand svg{width:28px;height:28px;color:#60a5fa;background:#60a5fa1f;border-radius:8px;padding:4px;flex-shrink:0}.sidebar-brand strong{display:block;font-size:14px;letter-spacing:.1px}.sidebar nav{display:grid;gap:2px;margin-top:4px}.sidebar nav button{justify-content:flex-start;background:transparent;color:#94a3b8;min-height:36px;padding:8px 10px;white-space:normal;text-align:left;font-weight:500;font-size:13px;border-radius:calc(var(--radius) - 2px);transition:color .15s,background .15s}.sidebar nav button svg{opacity:.85}.sidebar nav button:hover{color:#fff;background:#1e293b}.sidebar nav button.active{color:#fff;background:#26344a}.sidebar nav button.active svg{opacity:1;color:#8aabf4}.sidebar-user{margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-user strong{font-size:13px}.icon-button{width:34px;height:34px;padding:0;margin-left:auto;background:#ffffff1a}.icon-button:hover{background:#ffffff2e}.workspace{min-width:0;width:calc(100% - 244px);max-width:calc(100% - 244px);margin-left:244px;overflow-x:hidden}.sync-banner{margin:16px 24px 0;padding:12px 14px;border:1px solid #f59e0b;border-radius:8px;background:#fffbeb;color:#92400e;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.sync-banner strong{display:block;font-size:13.5px;color:#78350f}.sync-banner span{display:block;margin-top:2px;font-weight:500;color:#92400e}.sync-banner-actions{display:inline-flex;gap:8px}.ph-schema-modal{display:grid;gap:14px}.ph-schema-alert{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fef3c7;color:#92400e;border:1px solid #fde68a;border-radius:8px;font-size:13px;font-weight:600}.ph-schema-steps{margin:0;padding-left:20px;display:grid;gap:6px;font-size:13px;color:#334155}.ph-schema-steps strong{color:#0f172a}.ph-schema-actions{display:inline-flex;gap:8px;flex-wrap:wrap}.ph-schema-sql{margin:0;padding:14px;background:#0b1426;color:#cbd5e1;border-radius:8px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.55;max-height:360px;overflow:auto;white-space:pre}.screen{min-width:0;min-height:100vh;padding:clamp(18px,2vw,28px);background:#f8fafc}.screen-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.screen-header h2{letter-spacing:-.01em}.ph-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ph-toolbar select{width:auto;min-width:150px}.ph-search-input{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:#fff;border:1px solid var(--phoenix-border-strong);border-radius:8px;color:var(--phoenix-muted);min-width:240px}.ph-search-input input{width:100%;padding:4px 0;border:0;outline:none;background:transparent;font-size:13px;color:#111827}.ph-search-input input:focus{box-shadow:none;border:0}.ph-range{display:inline-flex;align-items:center;gap:10px;padding:6px 10px;background:#fff;border:1px solid var(--phoenix-border-strong);border-radius:8px;color:var(--phoenix-muted)}.ph-range label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#475569}.ph-range input{border:0;padding:4px 0;font-size:13px;background:transparent}.ph-range input:focus{box-shadow:none}.ph-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px}.ph-kpi-row.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.ph-kpi{display:flex;gap:14px;padding:16px;background:#fff;border:1px solid var(--phoenix-border);border-radius:12px;box-shadow:0 1px 2px #0f172a0a;transition:transform .15s,box-shadow .15s}.ph-kpi:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0f172a0f}.ph-kpi-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:var(--phoenix-blue-soft);color:var(--phoenix-blue);flex-shrink:0}.ph-kpi-body{display:grid;gap:2px;min-width:0}.ph-kpi-label{color:var(--phoenix-muted);font-size:12.5px;font-weight:600}.ph-kpi-value{font-size:22px;font-weight:800;line-height:1.1;color:#0f172a;overflow-wrap:anywhere}.ph-kpi-sub{color:#94a3b8;font-size:11.5px;font-weight:500}.ph-kpi-blue .ph-kpi-icon{background:#eaf2ff;color:#3874ff}.ph-kpi-green .ph-kpi-icon{background:#dcfce7;color:#16a34a}.ph-kpi-teal .ph-kpi-icon{background:#ccfbf1;color:#0d9488}.ph-kpi-amber .ph-kpi-icon{background:#fef3c7;color:#b45309}.ph-kpi-rose .ph-kpi-icon{background:#ffe4e6;color:#e11d48}.ph-kpi-indigo .ph-kpi-icon{background:#e0e7ff;color:#4338ca}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 1px 2px #0208170a;padding:20px;overflow:visible;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--phoenix-border);flex-wrap:wrap}.panel-head h3,.panel h3{margin:0;font-size:15px;font-weight:700;color:#0f172a;letter-spacing:-.005em;display:inline-flex;align-items:center;gap:8px}.panel-head .muted,.muted{color:var(--phoenix-muted);font-size:12.5px;font-weight:500}.ph-grid-2{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px;margin-top:18px}.dashboard-screen,.ops-screen{background:#f7f8fa}.ops-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 4px 14px;margin-bottom:14px;border-bottom:1px solid #e6e8ec}.ops-header-meta{display:flex;flex-direction:column;gap:4px;min-width:0}.ops-eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.ops-header-meta h2{margin:0;font-size:clamp(20px,2vw,26px);font-weight:600;color:#0b1220;letter-spacing:-.015em;line-height:1.15}.ops-period{margin:4px 0 0;font-size:12.5px;color:#4b5563;display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.ops-period-sep{color:#9ca3af}.ops-period-dot{color:#d1d5db;padding:0 2px}.ops-controls{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.ops-range{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #d8dbe1;border-radius:8px;background:#fff;color:#4b5563;font-size:12.5px;font-variant-numeric:tabular-nums}.ops-range input[type=date]{border:0;background:transparent;font:inherit;color:#0b1220;padding:0;font-variant-numeric:tabular-nums}.ops-range input[type=date]:focus{outline:2px solid #c7d2fe;outline-offset:2px;border-radius:4px}.ops-range-sep{color:#9ca3af}.ops-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:8px;font-size:12.5px;font-weight:600;border:1px solid #d8dbe1;background:#fff;color:#0b1220;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ops-btn:hover{background:#f3f4f6}.ops-btn-primary{background:#0b1220;color:#fff;border-color:#0b1220}.ops-btn-primary:hover{background:#1f2937;border-color:#1f2937}.ops-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.ops-kpi{position:relative;display:grid;gap:10px;padding:14px 16px 12px;background:#fff;border:1px solid #e6e8ec;border-radius:10px;min-height:110px;transition:border-color .15s ease}.ops-kpi:hover{border-color:#cdd1d8}.ops-kpi:before{content:"";position:absolute;top:14px;bottom:14px;left:0;width:2px;background:#0b1220;border-radius:0 2px 2px 0}.ops-kpi-head{display:flex;flex-direction:column;gap:1px}.ops-kpi-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6b7280}.ops-kpi-sub{font-size:11px;color:#9ca3af;font-weight:500}.ops-kpi-value{font-size:24px;font-weight:600;color:#0b1220;letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums;word-break:break-word}.ops-kpi-foot{display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:11.5px;color:#6b7280;flex-wrap:wrap}.ops-kpi-delta{display:inline-flex;align-items:center;gap:4px;font-weight:600;font-variant-numeric:tabular-nums}.ops-kpi-delta-up{color:#15803d}.ops-kpi-delta-down{color:#b91c1c}.ops-kpi-delta-flat{color:#6b7280}.ops-kpi-delta-na{color:#9ca3af;font-weight:500}.ops-kpi-delta-meta{color:#9ca3af;font-weight:500;margin-left:2px}.ops-kpi-footnote{color:#6b7280;font-weight:500}@media(max-width:1100px){.ops-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ops-kpi-row{grid-template-columns:1fr}.ops-header{align-items:flex-start}}.lis-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.lis-kpi{display:grid;gap:8px;padding:16px 18px;border-radius:var(--radius);color:#fff;border:1px solid transparent;box-shadow:0 1px 2px #0208170d;min-height:84px;transition:transform .15s ease,box-shadow .15s ease}.lis-kpi:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0208171a}.lis-kpi-label{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:500;opacity:.92}.lis-kpi-value{font-size:24px;font-weight:700;letter-spacing:-.025em;line-height:1.1;word-break:break-word}.lis-kpi-dark{background:#0f172a}.lis-kpi-green{background:#21c45d}.lis-kpi-blue{background:#2563eb}.lis-kpi-amber{background:#f59f0a}.lis-panel{background:#fff;border:1px solid #e6e8ec;border-radius:10px;padding:14px 16px;margin-bottom:12px}.lis-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid #eef0f3;width:100%}.lis-panel-head h3{margin:0;font-size:13px;font-weight:600;color:#0b1220;letter-spacing:-.005em}.lis-panel-sub{font-size:11.5px;color:#9ca3af;font-weight:500}.lis-panel-head-accent,.lis-panel-head-amber{border-top:0;margin:0 0 12px;padding:0 0 10px;width:100%;color:inherit}.lis-chart-panel{padding:14px 16px}.lis-chart-panel .ph-chart,.lis-panel .ph-chart{height:240px;width:100%;max-width:100%;display:block}.lis-shift-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lis-shift{padding:14px 16px;border:1px solid #e6eaf2;border-radius:10px;background:#f8fafc;display:grid;gap:6px}.lis-shift-head{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:#475569;font-weight:700}.lis-shift-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.lis-shift-value{font-size:22px;font-weight:800;letter-spacing:-.01em;word-break:break-word}.lis-shift-meta{display:inline-flex;align-items:center;gap:8px;color:#64748b;font-size:12px;font-weight:600}.lis-shift-bar{height:6px;border-radius:99px;background:#e6eaf2;overflow:hidden;margin-top:4px}.lis-shift-bar i{display:block;height:100%;border-radius:99px}.lis-donut-body .ph-donut svg{width:150px;height:150px;display:block}.lis-donut-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.lis-donut-tile{margin-bottom:0;text-align:center}.lis-donut-body{display:grid;place-items:center;padding-top:4px}.lis-donut-body .ph-donut{grid-template-columns:1fr;gap:10px;justify-items:center}.lis-donut-body .ph-donut-legend{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.lis-donut-body .ph-legend-row{display:inline-flex;align-items:center;gap:5px;font-size:11.5px}.lis-donut-body .ph-legend-value{display:none}.lis-donut-body .ph-legend-swatch{width:9px;height:9px;border-radius:50%;display:inline-block}.lis-lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:12px;align-items:start}.lis-table{width:100%;border-collapse:collapse;font-size:12.5px}.lis-table thead th{text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:none;padding:8px 6px;border-bottom:1px solid #eef1f6;background:transparent}.lis-table tbody td{padding:9px 6px;border-bottom:1px solid #f1f4f9;color:#0f172a}.lis-table tbody tr:last-child td{border-bottom:0}.lis-table .lis-num{text-align:right;font-weight:700;white-space:nowrap}.lis-table .lis-rank-col{width:36px;text-align:center}.lis-table .lis-empty{text-align:center;padding:20px;color:#94a3b8}.lis-sub{display:block;color:#94a3b8;font-size:11px;font-weight:500;margin-top:2px}.lis-rank{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:4px;background:#f3f4f6;color:#4b5563;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.lis-rank-1,.lis-rank-2,.lis-rank-3,.lis-rank-4,.lis-rank-5{background:#f3f4f6;color:#4b5563}.lis-rank-1{background:#0b1220;color:#fff}.lis-slot-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px}.lis-slot{padding:12px 14px;border-radius:8px;background:#f6f9fd;border:1px solid #e6eaf2;display:grid;gap:2px}.lis-slot strong{font-size:20px;color:#0f172a;font-weight:800}.lis-slot span{color:#64748b;font-size:11.5px}.lis-mini-table{display:grid;gap:6px}.lis-mini-row{display:grid;grid-template-columns:minmax(0,1fr) 50px 80px;gap:8px;align-items:center;padding:8px 10px;background:#f6f9fd;border:1px solid #e6eaf2;border-radius:8px;font-size:12px}.lis-mini-row strong{text-align:right;color:#0f172a}.lis-mini-row b{text-align:right;color:#2563eb}.ph-donut-slice-label{fill:#fff;font-size:12px;font-weight:800;paint-order:stroke;stroke:#0f172a59;stroke-width:2.5px;pointer-events:none}.hbar-chart{display:grid;gap:10px;padding:4px 2px}.hbar-row{display:grid;grid-template-columns:minmax(64px,90px) 1fr;align-items:center;gap:12px;font-size:12.5px}.hbar-label{color:#475569;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbar-track{position:relative;height:22px;background:#f1f5f9;border-radius:6px;overflow:hidden}.hbar-fill{position:absolute;inset:0 auto 0 0;border-radius:6px;transition:width .3s ease}.hbar-value{position:absolute;top:50%;right:10px;transform:translateY(-50%);font-size:12px;font-weight:800;color:#0f172a;z-index:1}.report-list{display:grid;gap:8px}.report-metric{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:baseline;padding:12px 14px;background:linear-gradient(135deg,#f8fbff,#eef4fc);border:1px solid #e0e9f7;border-radius:10px;transition:transform .15s ease,box-shadow .15s ease}.report-metric:hover{transform:translate(2px);box-shadow:0 4px 10px #0f172a0d}.report-metric span,.report-metric small{color:var(--phoenix-muted);font-size:12px;font-weight:600}.report-metric small{grid-column:1 / -1;font-size:11px}.report-metric strong{font-size:18px;line-height:1}.report-table{display:grid;gap:8px}.report-table-row{display:grid;grid-template-columns:minmax(0,1fr) 54px 82px;align-items:center;gap:8px;padding:10px 12px;border:1px solid #e5edf7;border-left:3px solid #3874ff;border-radius:10px;background:linear-gradient(135deg,#fff,#fafcff);font-size:12.5px;min-height:44px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.report-table-row:hover{transform:translate(2px);border-left-color:#16a34a;box-shadow:0 6px 14px #0f172a0f}.report-table-row>*{min-width:0}.report-table-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-table-row strong,.report-table-row b{text-align:right;font-size:13px}.patient-compact-table .report-table-row span{display:grid;gap:2px}.patient-compact-table .report-table-row small{color:var(--phoenix-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam-rank-list{display:grid;gap:9px}.exam-rank-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:10px;align-items:center;padding:11px 12px 16px;border:1px solid #e5edf7;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,#fff,#fafcff);transition:transform .15s ease,box-shadow .15s ease}.exam-rank-row:hover{transform:translateY(-1px);box-shadow:0 8px 16px #0f172a14}.exam-rank-row strong,.exam-rank-row span{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam-rank-row strong{font-size:12.5px}.exam-rank-row span{color:var(--phoenix-muted);font-size:11px}.exam-rank-row b{text-align:right;color:var(--phoenix-blue)}.exam-rank-row i{position:absolute;left:0;bottom:0;height:4px;background:linear-gradient(90deg,#2563eb,#22c55e)}.workload-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.workload-strip span{display:grid;gap:4px;padding:12px 14px;border-radius:10px;background:linear-gradient(135deg,#f0f7ff,#e6f0ff);border:1px solid #d6e4f7;color:#475569;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.workload-strip b{color:#0f172a;font-size:16px}.ph-chart{width:100%;height:auto;display:block}.ph-axis{fill:#64748b;font-size:13px;font-family:inherit;font-weight:600}.ph-axis.bold{fill:#0f172a;font-weight:800;font-size:14px}.ph-empty{display:grid;place-items:center;height:240px;color:var(--phoenix-muted);font-size:13px}.ph-donut{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:24px}.ph-donut-value{font-size:28px;font-weight:800;fill:#0f172a}.ph-donut-label{font-size:11px;fill:var(--phoenix-muted)}.ph-donut-legend{display:grid;gap:8px}.ph-legend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border-radius:6px;background:var(--phoenix-soft)}.ph-legend-swatch{width:10px;height:10px;border-radius:50%}.ph-legend-label{font-weight:600;font-size:13px;color:#334155}.ph-legend-value{font-size:12.5px;font-weight:700;color:#0f172a}.ph-table{display:grid;gap:6px}.ph-table-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:12px;padding:10px 12px;font-size:11.5px;font-weight:700;color:var(--phoenix-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--phoenix-border)}.ph-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--phoenix-border);border-radius:8px;background:#fff;font-size:13px;transition:border-color .15s,background .15s}.ph-table-row:hover{background:#fafbff;border-color:#c7d6f0}.ph-table-row .right,.ph-table-head .right{text-align:right;justify-self:end}.ph-table-row small{display:block;font-size:11.5px;color:var(--phoenix-muted)}.ph-row-actions{display:inline-grid;grid-template-columns:repeat(auto-fit,minmax(32px,max-content));gap:4px;justify-content:flex-end;white-space:nowrap}.history-filter,.inventory-add{display:grid;grid-template-columns:minmax(240px,1fr) repeat(2,minmax(150px,.35fr)) auto;gap:10px;align-items:end;margin-bottom:14px}.history-row{grid-template-columns:minmax(108px,.9fr) minmax(72px,.55fr) minmax(116px,.95fr) minmax(36px,.28fr) minmax(42px,.32fr) minmax(112px,.92fr) minmax(82px,.6fr) minmax(90px,.6fr) minmax(190px,200px)}.check-type-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:99px;font-size:11.5px;font-weight:700;border:1px solid transparent;line-height:1}.check-type-badge.is-normal{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.check-type-badge.is-normal:before{content:"";width:6px;height:6px;border-radius:50%;background:#16a34a;display:inline-block}.check-type-badge.is-package{background:#fef3c7;color:#b45309;border-color:#fde68a}.check-type-badge.is-package:before{content:"";width:6px;height:6px;border-radius:50%;background:#f59e0b;display:inline-block}.ph-row-icons{display:inline-flex;align-items:center;gap:5px;flex-wrap:nowrap;white-space:nowrap;justify-content:flex-end}.ph-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:7px;border:1px solid transparent;background:#f1f5f9;color:#475569;cursor:pointer;flex:0 0 auto;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,color .12s ease}.ph-icon-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0f172a1a}.ph-icon-btn.file-upload-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.ph-icon-success{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.ph-icon-success:hover{background:#16a34a;color:#fff;border-color:#16a34a}.ph-icon-info{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}.ph-icon-info:hover{background:#2563eb;color:#fff;border-color:#2563eb}.ph-icon-amber{background:#fef3c7;color:#b45309;border-color:#fde68a}.ph-icon-amber:hover{background:#f59e0b;color:#fff;border-color:#f59e0b}.ph-icon-danger{background:#fee2e2;color:#b91c1c;border-color:#fecaca}.ph-icon-danger:hover{background:#ef4444;color:#fff;border-color:#ef4444}.ph-icon-badge{position:absolute;top:-7px;right:-7px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#ef4444;color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff;line-height:1;box-shadow:0 2px 6px #ef444473;z-index:2}.history-table .ph-table-head,.history-table .ph-table-row{gap:7px;font-size:12.5px}.history-table .ph-table-row{padding:8px 10px;min-height:54px}.history-row>*,.patient-history-row>*{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-row .ph-row-actions,.patient-history-row .right{overflow:visible;text-overflow:clip}.history-row .ph-btn.sm{min-height:30px;padding:6px 8px;font-size:11.5px}.patient-history-row{grid-template-columns:minmax(95px,.8fr) minmax(170px,1.35fr) minmax(55px,.4fr) minmax(64px,.5fr) minmax(110px,.8fr) minmax(105px,.7fr) minmax(110px,.8fr) minmax(80px,.55fr)!important}.patient-history-table .ph-table-head,.patient-history-table .ph-table-row{font-size:12.5px}.patient-history-table .ph-table-row{padding:8px 12px;min-height:54px}.inventory-add{grid-template-columns:minmax(180px,1fr) minmax(90px,.4fr) repeat(3,minmax(90px,.45fr)) auto}.inventory-row{grid-template-columns:minmax(170px,1.2fr) minmax(75px,.45fr) minmax(80px,.45fr) minmax(80px,.45fr) minmax(80px,.45fr) minmax(90px,.55fr) minmax(150px,1fr) minmax(60px,.35fr)!important}.inventory-row input{min-height:36px;padding:7px 9px}.file-upload-btn{position:relative;overflow:hidden}.file-upload-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.file-count{color:var(--phoenix-blue);font-weight:800}.result-file-list{display:grid;gap:10px}.result-file-row,.patient-visit-card{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,.6fr) auto auto auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--phoenix-border);border-radius:8px;background:var(--phoenix-soft)}.patient-visit-card{grid-template-columns:minmax(220px,1fr) minmax(90px,.4fr) auto minmax(70px,.35fr)}.patient-visit-card span{display:block;color:var(--phoenix-muted);font-size:12px;margin-top:3px}.danger-text{color:#dc2626}.ph-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11.5px;font-weight:700;background:#eef2f7;color:#475569;white-space:nowrap}.tag-ordered{background:#e0f2fe;color:#075985}.tag-checked-in{background:#fef3c7;color:#92400e}.tag-in-progress{background:#ede9fe;color:#6d28d9}.tag-reported{background:#cffafe;color:#155e75}.tag-approved{background:#dcfce7;color:#166534}.tag-cancelled{background:#fee2e2;color:#991b1b}.tag-pay-paid{background:#dcfce7;color:#166534}.tag-pay-unpaid{background:#fef3c7;color:#92400e}.tag-pay-refunded{background:#fee2e2;color:#991b1b}.ph-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:var(--radius);font-weight:500;font-size:13.5px;border:1px solid transparent;background:var(--primary);color:var(--primary-foreground);cursor:pointer;transition:background .15s,color .15s,border-color .15s,box-shadow .15s,transform .05s;white-space:nowrap}.ph-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}.ph-btn:disabled{opacity:.5;cursor:not-allowed}.ph-btn.sm{padding:6px 12px;font-size:12.5px;border-radius:calc(var(--radius) - 2px)}.ph-btn-primary{background:var(--primary);color:var(--primary-foreground);border-color:transparent}.ph-btn-primary:hover:not(:disabled){background:#1453dc}.ph-btn-success{background:var(--phoenix-green);color:#fff;border-color:transparent}.ph-btn-success:hover:not(:disabled){background:#1ca64f}.ph-btn-danger{background:var(--destructive);color:var(--destructive-foreground);border-color:transparent}.ph-btn-danger:hover:not(:disabled){background:#ec2727}.ph-btn-soft{background:var(--secondary);color:var(--secondary-foreground);border-color:transparent}.ph-btn-soft:hover:not(:disabled){background:#d7dfea}.order-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:18px}.order-screen{padding:18px 22px}.order-form{display:grid;gap:16px}.section-num{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:6px;background:var(--phoenix-blue-soft);color:var(--phoenix-blue);font-size:12px;font-weight:800;vertical-align:middle}.lis-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.lis-grid:last-child{margin-bottom:0}.lis-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#475569;font-weight:600}.lis-grid input,.lis-grid select{padding:8px 10px;font-size:13px;height:38px;line-height:1.2;box-sizing:border-box;margin-top:auto}.lis-grid select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path fill='%2364748b' d='M6 8L1 3h10z'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-color:#fff;padding-right:28px}.lis-grid em{color:var(--phoenix-red);font-style:normal;font-weight:700}.lis-label-text,.lis-field-heading{display:inline-flex;align-items:center;gap:4px;min-height:16px}.lis-label-text em{color:#dc2626;font-size:13px;line-height:1}.lis-field-heading small{padding:1px 6px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.lis-grid-2nd{grid-template-columns:minmax(220px,1.35fr) minmax(260px,2.1fr) minmax(100px,.55fr) minmax(100px,.55fr)}.edit-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;margin-bottom:14px;border-radius:10px;background:linear-gradient(90deg,#fef3c7,#fde68a);border:1px solid #fbbf24;color:#78350f;font-size:13px;font-weight:600}.edit-banner>div{display:inline-flex;align-items:center;gap:8px}.edit-banner strong{color:#92400e;font-weight:800}.lis-grid-3rd{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.lis-diagnosis-field{display:flex;flex-direction:column;gap:2px;width:100%;margin-top:4px;color:#647d9d;font-size:13px}.lis-diagnosis-field textarea{width:100%;min-height:36px;height:36px;padding:6px 9px;border:1px solid #c7d5e8;border-radius:3px;background:#fff;color:#111827;font:inherit;line-height:1.5;resize:vertical}.lis-hn-input{padding-right:38px!important;background:#eaf2ff}.lis-search-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:30px;height:30px;padding:0;border-radius:6px;background:var(--phoenix-blue);color:#fff}.lis-search-btn:disabled{background:#cbd5e1}.lis-input-filled{background:#f1f5fb}.lis-toolbar{display:flex;align-items:center;gap:8px}.lis-pricing-toggle{display:inline-flex;background:var(--phoenix-soft);border:1px solid var(--phoenix-border);border-radius:8px;padding:3px;gap:2px}.lis-pricing-toggle button{background:transparent;color:#475569;padding:6px 12px;font-size:12.5px;border-radius:6px}.lis-pricing-toggle button.active{background:var(--phoenix-blue);color:#fff;box-shadow:0 2px 6px #3874ff40}.order-total{display:flex;flex-direction:column;gap:2px}.order-total span{color:var(--phoenix-muted);font-size:12px}.order-total strong{font-size:18px;color:var(--phoenix-text)}.lookup-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.lookup-line>button{white-space:nowrap}.patient-lookup{align-items:start}.patient-search-box{position:relative;display:flex;align-items:center}.patient-search-icon{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.patient-search-input{padding-left:36px!important}.patient-suggestions{position:absolute;z-index:50;top:calc(100% + 6px);left:0;right:0;min-width:320px;max-height:360px;overflow:auto;padding:6px;border:1px solid var(--phoenix-border-strong);border-radius:8px;background:#fff;box-shadow:0 18px 32px #0f172a24}.patient-suggestion{white-space:normal;word-break:break-word}.patient-suggestion{width:100%;display:grid;justify-items:start;gap:2px;padding:9px 12px;color:#0f172a;text-align:left;background:#fff;border-radius:6px;font-weight:500}.patient-suggestion:hover,.patient-suggestion:hover:not(:disabled),.patient-suggestion:focus,.patient-suggestion:focus-visible,.patient-suggestion:active{background:#f1f5fb;color:#0f172a;border-color:transparent}.patient-suggestion:hover strong,.patient-suggestion:focus strong{color:#1d4ed8}.patient-suggestion strong{color:var(--phoenix-blue)}.patient-suggestion span{font-weight:700}.patient-suggestion small,.patient-suggestion.muted{color:var(--phoenix-muted);font-size:12px;font-weight:500}.form-note{color:var(--phoenix-muted);font-size:13px;margin:4px 0 0}.patient-card{margin-top:14px;display:flex;gap:14px;padding:16px;border-radius:10px;background:linear-gradient(135deg,#f1f5fb,#e7eefc);color:#1e3a8a;border:1px solid #d6e2f4;overflow-wrap:anywhere;align-items:flex-start}.patient-card-avatar{width:44px;height:44px;border-radius:10px;background:#fff;color:var(--phoenix-blue);display:grid;place-items:center;border:1px solid #d6e2f4;flex-shrink:0}.patient-card-body{flex:1;min-width:0;display:grid;gap:8px}.patient-card strong{font-size:16px;color:#0f172a}.patient-card-meta{display:flex;flex-wrap:wrap;gap:6px}.ph-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:#ffffffd9;border:1px solid rgba(56,116,255,.15);color:#1e3a8a;font-size:11.5px;font-weight:700}.patient-card-contact{display:flex;flex-direction:column;gap:3px}.patient-card-contact span{display:flex;gap:6px;align-items:center;color:#475569;font-weight:500;font-size:12.5px}.patient-card-contact .muted{color:#64748b}.patient-empty{margin-top:14px;display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:10px;background:var(--phoenix-soft);border:1px dashed var(--phoenix-border-strong);color:var(--phoenix-muted);font-size:13px;font-weight:500}.patient-empty svg{color:#94a3b8}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.span-two{grid-column:1 / -1}.exam-category-list{display:grid;gap:6px}.exam-category{display:grid;gap:2px}.exam-category h4{margin:4px 0 1px;color:#6b7280;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding-bottom:2px;border-bottom:1px solid #eef0f3;line-height:1.1}.exam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:4px}.exam{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:6px;row-gap:0;align-items:baseline;text-align:left;color:#0b1220;background:#fff;border:1px solid #e4e4e7;border-radius:5px;padding:4px 8px;min-height:0;cursor:pointer;transition:border-color .12s,background .12s,box-shadow .12s}.exam:hover{border-color:#0b1220;background:#fafafa;transform:none}.exam.active{background:#0b1220;border-color:#0b1220;color:#fff;box-shadow:none}.exam.active:after{content:"✓";position:absolute;top:4px;right:4px;width:14px;height:14px;display:grid;place-items:center;font-size:9px;font-weight:800;color:#0b1220;background:#fff;border-radius:50%;line-height:1}.exam .exam-code{grid-column:1;grid-row:1;font-size:9.5px;font-weight:600;letter-spacing:.04em;color:#9ca3af;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.exam .exam-price{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:11.5px;font-weight:700;color:#0b1220;font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:6px;border-left:1px solid #eef0f3}.exam .exam-name{grid-column:1;grid-row:2;font-size:12.5px;font-weight:500;line-height:1.25;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam.active .exam-code{color:#fff9}.exam.active .exam-price{color:#fff;border-left-color:#ffffff2e}.order-footer{margin-top:18px;padding:14px 16px;background:var(--phoenix-soft);border:1px solid var(--phoenix-border);border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:16px}.order-footer strong{font-size:16px;color:var(--phoenix-text)}.worklist{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:16px}.worklist-list{max-height:calc(100vh - 160px);overflow:auto;display:grid;gap:8px}.worklist-item{display:grid;align-items:start;justify-content:stretch;gap:5px;padding:12px 14px;text-align:left;color:#172033;background:#fff;border:1px solid var(--phoenix-border);border-radius:8px;transition:border-color .15s,background .15s}.worklist-item:hover{border-color:#c7d6f0;background:#fafcff}.worklist-item.active{background:linear-gradient(135deg,#eaf2ff,#dde7ff);border-color:var(--phoenix-blue);box-shadow:0 0 0 2px #3874ff14}.worklist-item strong{font-size:14px;color:#0f172a}.worklist-tags{display:inline-flex;gap:6px;margin-top:4px;flex-wrap:wrap}.report-header,.report-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.report-header h3,.report-header p{margin:0}.report-header h3{font-size:18px}.report-header p{color:var(--phoenix-muted);font-size:13px;margin-top:4px}.report-header select{max-width:200px}.report-meta{justify-content:flex-start;margin:14px 0;gap:8px}.report-meta>span:not(.ph-tag){border-radius:999px;padding:5px 10px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:700}.report-editor{min-height:280px;line-height:1.55}.ph-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;padding:12px;margin:12px 0;background:var(--phoenix-soft);border:1px solid var(--phoenix-border);border-radius:8px}.ph-timeline-item{display:flex;align-items:center;gap:8px;font-size:12px}.ph-timeline-item span{font-weight:700;color:#475569;display:block}.ph-timeline-item small{display:block;color:var(--phoenix-muted);font-size:11px}.ph-timeline-dot{width:20px;height:20px;border-radius:999px;background:#e2e8f0;color:#fff;display:grid;place-items:center;flex-shrink:0}.ph-timeline-item.done .ph-timeline-dot{background:var(--phoenix-green)}.ph-timeline-item.done span{color:#0f172a}.ph-action-row{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.ph-report-preview{display:grid;gap:14px}.ph-report-head{display:flex;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--phoenix-border)}.ph-report-head strong{font-size:16px;color:#0f172a}.ph-report-head span{color:var(--phoenix-muted);font-size:12.5px}.ph-report-head .right{text-align:right}.ph-report-meta{display:flex;gap:8px;flex-wrap:wrap}.ph-report-meta span{background:#f1f5f9;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;color:#475569}.ph-report-body{white-space:pre-wrap;font-family:inherit;background:var(--phoenix-soft);border:1px solid var(--phoenix-border);padding:14px;border-radius:8px;line-height:1.6;margin:0;font-size:13.5px}.settings-form{max-width:720px}.setup-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.setup-tabs button{min-height:38px;color:#334155;background:#fff;border:1px solid var(--phoenix-border-strong)}.setup-tabs button.active{color:#fff;background:var(--phoenix-blue);border-color:var(--phoenix-blue)}.settings-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}.settings-tabs{display:grid;gap:2px;padding:12px;background:#fff;border:1px solid var(--phoenix-border);border-radius:12px;box-shadow:0 1px 2px #0f172a0a;position:sticky;top:16px}.settings-tabs-title{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--phoenix-muted);font-weight:700;padding:8px 10px 6px}.settings-tabs button{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;background:transparent;color:#334155;border:0;padding:9px 12px;font-size:13px;font-weight:600;border-radius:8px}.settings-tabs button:hover{background:var(--phoenix-soft)}.settings-tabs button.active{background:var(--phoenix-blue);color:#fff;box-shadow:0 2px 8px #3874ff40}.settings-tab-count{font-size:11px;padding:2px 8px;border-radius:999px;background:#0f172a0f;color:#475569;font-weight:700;min-width:24px;text-align:center}.settings-tabs button.active .settings-tab-count{background:#ffffff40;color:#fff}.settings-content{min-width:0;display:grid;gap:16px}.setup-master-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.master-panel-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.master-panel-head p{margin:4px 0 0;color:var(--phoenix-muted);font-size:12.5px}.master-panel-head span{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:8px;color:var(--phoenix-blue);background:var(--phoenix-blue-soft);font-weight:800}.master-add,.compact-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.master-list{display:grid;gap:6px;margin-top:10px}.master-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1.2fr) auto auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--phoenix-border);border-radius:8px;background:#fff}.master-row.with-discount{grid-template-columns:minmax(120px,1fr) minmax(120px,1.2fr) auto auto auto}.master-discount-cell{display:inline-flex;align-items:center;gap:4px;padding:0 8px;border:1px solid var(--phoenix-border-strong);border-radius:8px;background:var(--phoenix-soft);height:38px}.master-discount-cell input{width:60px;border:0;padding:0;background:transparent;text-align:right;font-weight:700}.master-discount-cell input:focus{box-shadow:none}.master-discount-cell span{color:var(--phoenix-muted);font-weight:700;font-size:13px}.exams-row{grid-template-columns:minmax(130px,1fr) minmax(0,1.5fr) 130px auto!important}.category-master-row{grid-template-columns:minmax(180px,1fr) auto auto auto}.exam-en{font-style:normal;color:var(--phoenix-muted);width:100%;font-size:10.8px;font-weight:600;line-height:1.2;margin-top:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam.active .exam-en{color:#4338ca}.switch-line{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;color:#475569;font-weight:600}.switch-line input{width:16px;height:16px;padding:0}.integration-state{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--phoenix-border);border-radius:8px;background:var(--phoenix-soft);font-weight:600}.ph-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:16px;animation:ph-fade .15s ease-out}@keyframes ph-fade{0%{opacity:0}to{opacity:1}}@keyframes ph-pop{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.ph-modal{width:100%;max-width:480px;background:#fff;border-radius:14px;border:1px solid var(--phoenix-border);box-shadow:0 24px 60px #0f172a3d;overflow:hidden;animation:ph-pop .18s ease-out}.ph-modal-sm{max-width:380px}.ph-modal-md{max-width:520px}.ph-modal-lg{max-width:760px}.ph-modal-xl{max-width:1100px;width:92vw}.ph-modal-head-content{flex:1;min-width:0}.ph-modal-backdrop-full{padding:0;place-items:stretch}.ph-modal-full{display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;max-width:none;max-height:100vh;max-height:100dvh;border:0;border-radius:0;animation:ph-fade .15s ease-out}.ph-modal-full .ph-modal-head{flex:0 0 auto;min-height:86px;padding:12px 24px;background:#fff}.ph-modal-full .ph-modal-body{display:flex;flex:1 1 auto;min-height:0;max-height:none;padding:0;overflow:hidden}.ph-modal-foot-full{flex:0 0 auto;padding:12px 24px;background:#fff}.report-modal-header{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);align-items:center;gap:24px;width:100%}.report-modal-brand{display:flex;align-items:center;gap:12px;min-width:0}.report-modal-brand-copy{display:grid;gap:3px;min-width:0}.report-modal-brand-copy strong{color:#111827;font-size:15px}.report-modal-brand-copy span,.report-modal-brand-copy small{color:#4b5563;font-size:11px}.report-modal-brand-copy small{font-weight:500}.report-modal-context{display:grid;justify-items:end;gap:3px;color:#475569;text-align:right;font-size:12px;line-height:1.4}.report-modal-context h3{margin:0 0 2px;color:#111827;font-size:15px;font-weight:700}.report-modal-context strong{color:#111827;font-size:14px}.report-modal-scroll{flex:1 1 auto;min-height:0;overflow:auto;padding:22px clamp(16px,3vw,48px);background:#f4f4f5}.report-modal-scroll .report-sheet{width:min(100%,1120px);margin:0 auto;padding:26px 30px;background:#fff;border:1px solid #e4e4e7;box-shadow:0 4px 16px #18181b0f}.report-modal-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;width:100%}.report-modal-signatures{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:20px;max-width:680px}.report-modal-signature{display:grid;gap:2px;min-width:0;color:#64748b;font-size:10px}.report-modal-signature strong{color:#111827;font-size:12px}.report-modal-signature span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-modal-actions{justify-content:flex-end;margin:0;white-space:nowrap}@media(max-width:760px){.ph-modal-full .ph-modal-head{min-height:78px;padding:10px 14px}.ph-modal-foot-full{padding:10px 14px}.report-modal-header{grid-template-columns:minmax(0,1fr) auto;gap:12px}.report-modal-brand-copy span,.report-modal-brand-copy small{display:none}.report-modal-context{font-size:10px}.report-modal-context h3{font-size:12px}.report-modal-context strong{max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.report-modal-scroll{padding:10px}.report-modal-scroll .report-sheet{padding:16px 12px}.report-modal-footer{grid-template-columns:1fr;gap:8px}.report-modal-signatures{display:none}.report-modal-actions{justify-content:flex-end}}.patient-history-modal{display:grid;gap:18px}.phm-head{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:18px 20px;border-radius:12px;background:linear-gradient(135deg,#1e3a8a,#2563eb 60%,#0d9488);color:#fff}.phm-avatar{width:54px;height:54px;border-radius:50%;background:#ffffff2e;display:grid;place-items:center;flex-shrink:0}.phm-id h3{margin:0;font-size:18px;font-weight:800;letter-spacing:-.01em}.phm-id p{margin:4px 0 0;font-size:12.5px;display:inline-flex;flex-wrap:wrap;gap:6px 14px;opacity:.92}.phm-id p span strong{font-weight:800;letter-spacing:.02em}.phm-stats{display:inline-flex;gap:10px}.phm-stat{text-align:center;padding:8px 14px;border-radius:10px;background:#ffffff26;min-width:78px}.phm-stat strong{display:block;font-size:18px;font-weight:800;line-height:1.1}.phm-stat span{display:block;font-size:10.5px;margin-top:2px;opacity:.9;text-transform:uppercase;letter-spacing:.04em}.phm-list{display:grid;gap:8px}.phm-visit{display:grid;grid-template-columns:22px 1fr;gap:0}.phm-visit-rail{position:relative;display:grid;justify-items:center;padding-top:12px}.phm-dot{width:12px;height:12px;border-radius:50%;background:#2563eb;border:3px solid #dbeafe;z-index:1}.phm-line{position:absolute;top:22px;bottom:-8px;width:2px;background:#e2e8f0}.phm-visit-body{border:1px solid #e6eaf2;border-radius:10px;background:#fff;padding:12px 14px;transition:box-shadow .15s ease}.phm-visit-body:hover{box-shadow:0 6px 14px #0f172a0f}.phm-visit-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}.phm-visit-head strong{font-size:13.5px;color:#0f172a}.phm-status{display:inline-block;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600;color:#475569;background:#f1f5f9;border-radius:99px}.phm-exams{font-size:13px;color:#0f172a;margin-bottom:6px}.phm-meta{display:inline-flex;flex-wrap:wrap;gap:14px;font-size:12px;color:#64748b;font-weight:600}.phm-meta span{display:inline-flex;align-items:center;gap:5px}.phm-files{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.phm-file{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:600;cursor:pointer;transition:background .12s,color .12s,transform .12s;max-width:100%}.phm-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}.phm-file:hover{background:#2563eb;color:#fff;transform:translateY(-1px)}.phm-empty{margin:8px 0 0;font-size:12px;color:#94a3b8;font-style:italic}.import-panel{display:grid;gap:16px}.import-head h3{margin:0 0 6px;font-size:16px;font-weight:700;color:var(--foreground);display:inline-flex;align-items:center;gap:8px}.import-head p{margin:0;font-size:12.5px;color:var(--muted-foreground);line-height:1.6}.import-head code{font-size:11.5px;background:var(--secondary);padding:2px 6px;border-radius:4px;color:var(--secondary-foreground)}.import-dropzone{position:relative;display:flex;align-items:center;gap:14px;padding:20px 22px;border:2px dashed var(--border);border-radius:var(--radius);background:var(--secondary);cursor:pointer;transition:border-color .15s,background .15s}.import-dropzone:hover{border-color:var(--primary);background:#eff6ff}.import-dropzone svg{color:var(--primary);flex-shrink:0}.import-dropzone input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.import-dropzone strong{display:block;font-size:14px;font-weight:600;color:var(--foreground)}.import-dropzone span{display:block;font-size:12px;color:var(--muted-foreground);margin-top:2px}.import-error{padding:10px 14px;border:1px solid hsl(0 84.2% 80%);background:#fdecec;color:#ad1f1f;border-radius:var(--radius);font-size:13px;font-weight:600}.import-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.import-stat{padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);display:grid;gap:4px}.import-stat span{font-size:11.5px;color:var(--muted-foreground);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.import-stat strong{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--foreground)}.import-stat strong.warn{color:#c47f08}.import-warn{display:grid;gap:4px;padding:12px 14px;border-radius:var(--radius);background:#fffbeb;border:1px solid hsl(48 96% 80%);color:#935f06;font-size:12.5px}.import-warn strong{font-weight:700}.import-warn span{font-weight:600}.import-warn small{color:#997433;font-size:11.5px}.import-preview{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto;max-height:360px;overflow-y:auto}.import-preview table{min-width:720px}.import-preview th{position:sticky;top:0;background:var(--card);z-index:1}.import-actions{display:flex;justify-content:flex-end;gap:10px}.empty-state{display:grid;place-items:center;gap:14px;text-align:center;padding:60px 20px;background:var(--card);border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted-foreground)}.empty-state-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--secondary);color:var(--primary)}.empty-state h2{margin:0;font-size:20px;color:var(--foreground);font-weight:700}.empty-state p{margin:0;max-width:460px;font-size:13.5px;line-height:1.6}.ph-modal-head{display:flex;align-items:center;gap:14px;padding:18px 22px 14px;border-bottom:1px solid var(--phoenix-border)}.ph-modal-head.plain{border-bottom:1px solid var(--phoenix-border)}.ph-modal-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.ph-modal-icon.ph-tone-info{background:var(--phoenix-blue-soft);color:var(--phoenix-blue)}.ph-modal-icon.ph-tone-success{background:#dcfce7;color:var(--phoenix-green)}.ph-modal-icon.ph-tone-warning{background:#fef3c7;color:#b45309}.ph-modal-icon.ph-tone-danger{background:#fee2e2;color:#b91c1c}.ph-modal-head h3{margin:0;flex:1;font-size:15.5px;font-weight:700;color:#0f172a}.ph-modal-x{width:32px;height:32px;padding:0;background:transparent;color:var(--phoenix-muted)}.ph-modal-x:hover{background:#f1f5f9;color:#0f172a}.ph-modal-body{padding:18px 22px;font-size:13.5px;color:#334155;line-height:1.55;max-height:70vh;overflow:auto}.ph-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;background:var(--phoenix-soft);border-top:1px solid var(--phoenix-border)}.ph-modal-foot.inline{background:transparent;border-top:0;padding:4px 0 0}.ph-confirm-list{display:grid;gap:6px}.ph-confirm-row{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--phoenix-soft);border-radius:6px;font-size:13px}.ph-confirm-row span{color:var(--phoenix-muted);font-weight:600}.ph-confirm-row strong{color:#0f172a}.ph-confirm-row strong.highlight{color:var(--phoenix-blue);font-size:15px}.ph-form-grid{display:grid;gap:12px}.ph-toast-stack{position:fixed;bottom:24px;right:24px;z-index:10000;max-width:min(480px,calc(100vw - 32px));display:grid;gap:8px;pointer-events:none}.ph-toast{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:11px 16px;background:#fff;border:1px solid var(--phoenix-border);border-radius:8px;box-shadow:0 14px 30px #0f172a29;min-width:240px;font-size:13px;color:#0f172a;font-weight:600;overflow-wrap:anywhere;animation:ph-pop .18s ease-out}.ph-toast.ph-tone-success{border-left:3px solid var(--phoenix-green)}.ph-toast.ph-tone-success svg{color:var(--phoenix-green)}.ph-toast.ph-tone-danger{border-left:3px solid #b91c1c}.ph-toast.ph-tone-danger svg{color:#b91c1c}.ph-toast.ph-tone-warning{border-left:3px solid var(--phoenix-amber)}.ph-toast.ph-tone-warning svg{color:#b45309}.ph-toast.ph-tone-info{border-left:3px solid var(--phoenix-blue)}.ph-toast.ph-tone-info svg{color:var(--phoenix-blue)}@media(max-width:1280px){.lis-kpi-row,.lis-donut-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lis-lower-grid{grid-template-columns:1fr}.lis-grid,.lis-grid-2nd,.lis-grid-3rd{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1100px){.ph-grid-2,.dashboard-split,.order-layout,.worklist,.setup-master-grid,.settings-shell,.history-filter,.inventory-add,.history-row,.patient-history-row,.inventory-row,.result-file-row,.patient-visit-card{grid-template-columns:1fr}.settings-tabs{position:static;display:flex;flex-wrap:wrap}.settings-tabs-title{display:none}.ph-donut{grid-template-columns:1fr;justify-items:center}}@media(max-width:640px){.lis-grid,.lis-grid-2nd,.lis-grid-3rd{grid-template-columns:1fr}}@media(max-width:760px){.login-shell,.app-shell{grid-template-columns:1fr}.login-panel{padding:18px}.login-copy{text-align:center}.login-snapshot{display:none}.sidebar{position:static;width:100%;height:auto;padding:14px}.workspace{width:100%;max-width:100%;margin-left:0}.sidebar nav{grid-template-columns:repeat(2,1fr)}.screen{padding:14px}.form-grid,.ph-kpi-row,.lis-kpi-row,.lis-donut-row,.lis-lower-grid,.compact-form,.master-add,.master-row{grid-template-columns:1fr}.lookup-line,.dashboard-actions,.order-footer,.report-header{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.ph-range{width:100%;justify-content:space-between;flex-wrap:wrap}.workload-strip,.report-table-row{grid-template-columns:1fr}.report-table-row strong,.report-table-row b{text-align:left}.ph-toast-stack{left:16px;right:16px;bottom:16px}.ph-toast{min-width:0}}:root{--background: #ffffff;--foreground: #09090b;--card: #ffffff;--card-foreground: #09090b;--primary: #18181b;--primary-foreground: #fafafa;--secondary: #f4f4f5;--secondary-foreground: #18181b;--muted: #f4f4f5;--muted-foreground: #71717a;--accent: #f4f4f5;--accent-foreground: #18181b;--destructive: #ef4444;--border: #e4e4e7;--input: #d4d4d8;--ring: #18181b;--radius: .625rem;--phoenix-blue: #18181b;--phoenix-blue-2: #000000;--phoenix-blue-soft: #f4f4f5;--phoenix-red: #ef4444;--phoenix-amber: #f59e0b;--phoenix-green: #22c55e;--phoenix-navy: #09090b;--phoenix-border: #e4e4e7;--phoenix-border-strong: #d4d4d8;--phoenix-soft: #f8fafc;--phoenix-muted: #71717a;--phoenix-text: #09090b;--phoenix-text-2: #3f3f46}body{background:#fff;color:var(--foreground)}.login-shell{background:#fff;padding:64px 24px}.login-panel{max-width:430px;border-radius:16px;border-color:#e4e4e7;box-shadow:0 18px 55px #09090b14}.login-brand svg,.empty-state-icon,.master-panel-head span{color:#09090b;background:#f4f4f5;border:1px solid #e4e4e7}.login-brand h1{color:#09090b;letter-spacing:0}.login-brand p,.dashboard-subtitle,.screen-header p,.muted,.panel-head .muted{color:#71717a}.login-hint,.login-snapshot div,.ph-search-input,.ph-range,.ph-timeline,.ph-report-body,.integration-state,.lis-shift,.lis-slot,.lis-mini-row,.workload-strip span{background:#fafafa;border-color:#e4e4e7}button,.ph-btn,.login-form button,.dashboard-actions .ph-btn-primary{border:1px solid #18181b;background:#18181b;color:#fafafa;border-radius:9px;box-shadow:none}button:hover:not(:disabled),.ph-btn:hover:not(:disabled),.login-form button:hover:not(:disabled),.dashboard-actions .ph-btn-primary:hover:not(:disabled){background:#000;border-color:#000}button:focus-visible,.ph-btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:#18181b;box-shadow:0 0 0 2px #fff,0 0 0 4px #18181b47}.ph-btn-soft,.setup-tabs button,.settings-tabs button,.secondary-login{color:#18181b;background:#fff;border:1px solid #e4e4e7}.ph-btn-soft:hover:not(:disabled),.setup-tabs button:hover:not(:disabled),.settings-tabs button:hover:not(:disabled),.secondary-login:hover:not(:disabled){color:#09090b;background:#f4f4f5;border-color:#d4d4d8}.ph-btn-primary,.setup-tabs button.active,.settings-tabs button.active,.lis-pricing-toggle button.active{color:#fafafa;background:#18181b;border-color:#18181b}.ph-btn-success{color:#052e16;background:#dcfce7;border-color:#bbf7d0}.ph-btn-success:hover:not(:disabled){color:#052e16;background:#bbf7d0;border-color:#86efac}.ph-btn-danger,.ph-icon-danger{color:#991b1b;background:#fee2e2;border-color:#fecaca}.ph-btn-danger:hover:not(:disabled),.ph-icon-danger:hover:not(:disabled){color:#7f1d1d;background:#fecaca;border-color:#fca5a5}input,select,textarea{min-height:40px;border-color:#d4d4d8;border-radius:9px;background:#fff;color:#09090b}input::placeholder,textarea::placeholder{color:#a1a1aa}.app-shell{background:#fff}.sidebar{width:240px;padding:18px 16px;background:#fff;color:#09090b;border-right:1px solid #e4e4e7}.sidebar-brand{padding:6px 8px 18px;border-bottom:1px solid #e4e4e7}.sidebar-brand svg{color:#09090b;background:#f4f4f5;border:1px solid #e4e4e7}.sidebar-brand strong,.sidebar-user strong{color:#09090b}.sidebar-brand span,.sidebar-user span,.worklist-item span,.worklist-item small{color:#71717a}.sidebar nav{gap:4px}.sidebar nav button{color:#52525b;background:transparent;border:1px solid transparent;border-radius:9px;font-weight:600}.sidebar nav button:hover{color:#09090b;background:#f4f4f5;border-color:#e4e4e7}.sidebar nav button.active{color:#09090b;background:#f4f4f5;border-color:#e4e4e7}.sidebar nav button.active svg{color:#09090b}.sidebar-user{border-top-color:#e4e4e7}.icon-button{color:#18181b;background:#fff;border:1px solid #e4e4e7}.icon-button:hover{background:#f4f4f5}.workspace{width:calc(100% - 240px);max-width:calc(100% - 240px);margin-left:240px;background:#fff}.screen,.dashboard-screen{background:#fff}.screen{padding:26px 32px}.dashboard-header,.panel,.lis-panel,.settings-tabs,.ph-modal,.empty-state,.sync-banner{background:#fff;border:1px solid #e4e4e7;border-radius:16px;box-shadow:0 1px 2px #09090b08}.dashboard-header{padding:20px 22px}.dashboard-header h2,.screen-header h2,.panel h3,.panel-head h3,.lis-panel-head h3,.report-header h3,.empty-state h2{color:#09090b;letter-spacing:0}.dashboard-header h2{font-size:24px}.lis-kpi{position:relative;min-height:108px;color:#09090b;background:#fafafa;border:1px solid #e4e4e7;border-radius:16px;box-shadow:none;overflow:hidden}.lis-kpi:after{content:none}.lis-kpi:hover,.report-metric:hover,.report-table-row:hover,.exam-rank-row:hover{transform:none;box-shadow:0 8px 24px #09090b0f}.lis-kpi-label{color:#71717a;opacity:1}.lis-kpi-label svg{color:#09090b}.lis-kpi-value{font-size:25px;color:#09090b}.lis-kpi-dark,.lis-kpi-green,.lis-kpi-blue,.lis-kpi-amber{background:#fafafa}.lis-panel-head,.lis-panel-head-accent,.lis-panel-head-amber{color:#09090b;border-top:0;border-bottom-color:#e4e4e7}.lis-panel-head svg,.panel-head h3 svg,.panel h3 svg{color:#09090b}.lis-shift{border-radius:14px}.lis-shift-value,.report-metric strong,.workload-strip b,.ph-axis.bold,.ph-donut-value{color:#09090b;fill:#09090b}.lis-shift-bar,.hbar-track{background:#f4f4f5}.lis-shift-bar i,.hbar-fill,.exam-rank-row i{background:#18181b!important}.lis-table{border-collapse:separate;border-spacing:0}.lis-table thead th,.ph-table-head{color:#71717a;background:#fafafa;border-bottom:1px solid #e4e4e7}.lis-table tbody td{border-bottom-color:#eeeeef}.lis-rank{background:#18181b;color:#fafafa}.lis-rank-1,.lis-rank-2,.lis-rank-3,.lis-rank-4,.lis-rank-5{background:#18181b}.ph-table-row,.report-table-row,.exam-rank-row,.worklist-item,.master-row{background:#fff;border-color:#e4e4e7;border-radius:12px;box-shadow:none}.ph-table-row:hover,.worklist-item:hover,.master-row:hover{background:#fafafa;border-color:#d4d4d8}.report-metric,.report-table-row,.exam-rank-row{background:#fff;border-left-color:#18181b}.worklist-item.active{background:#f4f4f5;border-color:#18181b;box-shadow:0 0 0 2px #18181b14}.exam-rank-row b,.lis-mini-row b,.dashboard-actions svg{color:#18181b}.exam.active .exam-en{color:#52525b}.ph-tag,.report-meta>span:not(.ph-tag),.ph-report-meta span,.check-type-badge{background:#f4f4f5;color:#18181b;border:1px solid #e4e4e7}.check-type-badge.is-normal,.check-type-badge.is-package{background:#f4f4f5;color:#18181b;border-color:#e4e4e7}.check-type-badge.is-normal:before,.check-type-badge.is-package:before{background:#18181b}.ph-icon-btn{border-radius:9px}.ph-icon-info,.ph-icon-amber{color:#18181b;background:#fff;border-color:#e4e4e7}.ph-icon-info:hover:not(:disabled),.ph-icon-amber:hover:not(:disabled){background:#f4f4f5;border-color:#d4d4d8}.settings-tabs{border-radius:16px}.settings-tabs button.active .settings-tab-count,.settings-tabs button.active{background:#18181b;color:#fafafa;box-shadow:none}.settings-tab-count{background:#f4f4f5;color:#71717a}.ph-modal-backdrop{background:#09090b59}.ph-modal{box-shadow:0 24px 80px #09090b2e}.phm-head{color:#09090b;background:#fafafa;border:1px solid #e4e4e7}.phm-avatar{color:#09090b;background:#fff;border:1px solid #e4e4e7}.ph-toast{color:#09090b;background:#fff;border:1px solid #e4e4e7;box-shadow:0 14px 42px #09090b1f}.ph-toast-success{border-left-color:#18181b}.empty-state{border-style:solid}@media(max-width:760px){.sidebar{width:100%;border-right:0;border-bottom:1px solid #e4e4e7}.workspace{width:100%;max-width:100%;margin-left:0}.screen{padding:16px}}@media(max-width:1100px){.ph-table{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.ph-table>.ph-table-head,.ph-table>.ph-table-row{min-width:760px}.ph-table>.history-row,.ph-table>.patient-history-row{min-width:920px}}@media(max-width:1100px)and (min-width:761px){.sidebar{width:200px}.sidebar nav button{font-size:12.5px;padding:8px 10px}}@media(max-width:1100px){.ph-table::-webkit-scrollbar{height:8px}.ph-table::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:4px}.ph-table::-webkit-scrollbar-track{background:#f4f4f5}}@media(max-width:640px){.sidebar{padding:10px 12px;gap:10px}.sidebar-brand{padding:0;margin-bottom:4px}.sidebar nav{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -12px;padding:0 12px 4px}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav button{flex:0 0 auto;white-space:nowrap;font-size:12px;padding:8px 12px;border-radius:99px;border:1px solid #e4e4e7}.sidebar nav button.active{background:#09090b;color:#fff;border-color:#09090b}.sidebar-user{flex-direction:row;align-items:center;justify-content:space-between;padding:8px 10px}.ops-header{padding:12px 4px 10px;gap:10px}.ops-header-meta h2{font-size:20px}.ops-controls{width:100%;justify-content:space-between}.ops-range{flex:1 1 auto;min-width:0}.ops-btn{flex:0 0 auto}.ph-table>.history-row,.ph-table>.patient-history-row{min-width:0;grid-template-columns:1fr 1fr;gap:6px 10px;padding:12px;align-items:start}.ph-table-head.history-row,.ph-table-head.patient-history-row{display:none}.history-row>*,.patient-history-row>*{white-space:normal;overflow:visible;text-overflow:clip;min-width:0}.history-row .ph-row-actions{grid-column:1 / -1;justify-content:flex-start;margin-top:6px;padding-top:8px;border-top:1px solid #f1f4f9}.settings-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:4px;padding-bottom:4px}.settings-tabs::-webkit-scrollbar{display:none}.settings-tabs button{flex:0 0 auto;white-space:nowrap}.ph-table>.master-row,.ph-table>.exams-row{min-width:600px}.history-filter,.inventory-add{grid-template-columns:1fr!important;gap:8px}.ph-search-input{width:100%}.ph-modal-card{margin:16px;max-height:calc(100vh - 32px)}.order-exam-grid,.exam-chip-grid{grid-template-columns:1fr!important}}.combined-master-stack{display:grid;gap:14px}.backup-panel{padding:18px}.backup-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin:14px 0 12px}.backup-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:#f8fafc;border:1px solid #e4e4e7;border-radius:8px}.backup-stat strong{font-size:18px;font-weight:700;color:#0b1220;font-variant-numeric:tabular-nums}.backup-stat span{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.backup-last{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#6b7280;padding:6px 10px;background:#f1f5f9;border-radius:6px;margin-bottom:12px}.backup-last strong{color:#0b1220;font-weight:600}.backup-actions{display:flex;flex-wrap:wrap;gap:8px}.report-sheet{display:flex;flex-direction:column;gap:14px;font-family:"Source Serif 4",Noto Sans Lao,Georgia,serif;color:#111827;padding:4px 2px}.report-sheet-letterhead{display:flex;align-items:center;gap:12px;padding:4px 0 12px;border-bottom:2px solid #111827}.report-sheet-mark{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border-radius:50%;background:#111827;color:#fff;font-size:13px;font-weight:800}.report-sheet-facility{display:grid;gap:3px;min-width:0}.report-sheet-facility strong{color:#111827;font-size:15px}.report-sheet-facility span,.report-sheet-contact{color:#4b5563;font-size:11px}.report-sheet-contact{display:grid;gap:2px;margin-left:auto;text-align:right}.report-sheet-contact strong{color:#111827}.report-sheet-doctitle{display:flex;justify-content:space-between;align-items:center;font-size:9pt;color:#64748b;letter-spacing:.04em;text-transform:uppercase;font-family:Noto Sans Lao,sans-serif;padding:4px 0 8px;border-top:2.5px solid #1e3a8a;border-bottom:1px solid #cbd5e1;font-variant-numeric:tabular-nums}.report-sheet-title{margin:4px 0 2px;text-align:center;font-size:15pt;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#0b1220}.report-sheet-subtitle{margin:0 0 6px;text-align:center;font-size:11pt;font-weight:600;color:#1e3a8a;font-family:"Source Serif 4",Noto Sans Lao,serif}.report-sheet-patient{width:100%;border-collapse:collapse;border:1px solid #cbd5e1;font-size:10pt}.report-sheet-patient td{padding:6px 10px;border:1px solid #e2e8f0;color:#0b1220;font-weight:500}.report-sheet-patient td.lbl{background:#f1f5f9;font-weight:600;color:#334155;font-family:Noto Sans Lao,sans-serif;font-size:9pt;white-space:nowrap;width:22%}.report-sheet-section{display:flex;flex-direction:column;gap:6px}.report-sheet-section h5{margin:4px 0 0;font-size:11pt;font-weight:700;color:#1e3a8a;border-bottom:1px solid #cbd5e1;padding-bottom:3px;display:flex;align-items:baseline;gap:8px;letter-spacing:.01em;font-family:"Source Serif 4",Noto Sans Lao,serif}.report-sheet-section h5 em{font-style:normal;font-size:9.5pt;font-weight:500;color:#64748b;font-family:Noto Sans Lao,sans-serif}.report-sheet-required{margin-left:auto;font-size:9pt;font-weight:600;color:#b91c1c;font-family:Noto Sans Lao,sans-serif}.report-sheet-static{margin:0;padding:8px 12px;background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:2px;font-size:10.5pt;color:#475569;line-height:1.5;font-family:"Source Serif 4",Noto Sans Lao,serif;white-space:pre-wrap}.report-sheet-input{width:100%;padding:12px 14px;background:#fafbfd;border:1px solid #e2e8f0;border-radius:2px;font-family:"Source Serif 4",Noto Sans Lao,Georgia,serif;font-size:10.5pt;color:#0b1220;line-height:1.55;resize:vertical;transition:border-color .12s,background .12s,box-shadow .12s}.report-sheet-input::placeholder{color:#94a3b8;font-style:italic}.report-sheet-input:focus,.report-sheet-input:focus-visible{outline:none;background:#fff;border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a1a}.report-sheet-input-large{min-height:180px;border-style:solid;border-width:1px;background:#fff;box-shadow:inset 0 0 0 1px transparent}.report-sheet-findings h5{font-size:12pt}.report-sheet-section-label{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-family:Noto Sans Lao,sans-serif;margin-top:4px;display:block}.ph-action-row{display:flex;gap:8px;margin-top:4px;font-family:Noto Sans Lao,sans-serif}.ph-action-row .ph-btn[disabled]{opacity:.55;cursor:not-allowed}@media(max-width:640px){.report-sheet-patient td.lbl{width:35%;font-size:8.5pt}.report-sheet-patient td{font-size:9.5pt;padding:4px 7px}}.inventory-movement-table,.inventory-asset-table{overflow-x:auto}.inv-panel{padding:12px 14px}.inv-table{font-size:12.5px;gap:0}.inv-row,.inv-asset-row{padding:8px 10px!important;min-height:0;align-items:center;border-radius:6px!important}.inv-row:hover,.inv-asset-row:hover{background:#fafafa}.inv-row.is-reorder{background:#fffaf6;border-color:#fde68a!important}.inv-row.is-reorder:hover{background:#fff3e0}.ph-table-head.inv-row,.ph-table-head.inv-asset-row{background:#f8fafc;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:#64748b;font-weight:700;border:0!important;border-bottom:1px solid #e4e4e7!important;padding:6px 10px!important;border-radius:6px 6px 0 0!important}.inv-row{grid-template-columns:minmax(180px,1.6fr) minmax(90px,.7fr) minmax(48px,.4fr) minmax(54px,.45fr) minmax(54px,.45fr) minmax(54px,.45fr) minmax(54px,.45fr) minmax(46px,.4fr) minmax(82px,.7fr) minmax(64px,.55fr)!important}.inv-asset-row{grid-template-columns:minmax(180px,1.4fr) minmax(90px,.7fr) minmax(48px,.4fr) minmax(80px,.7fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(100px,.85fr) minmax(82px,.65fr)!important}.lis-center{text-align:center;justify-self:center}.inv-name-cell{display:flex;flex-direction:column;gap:1px;min-width:0}.inv-name-cell strong{font-size:12.5px;font-weight:600;color:#0b1220;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-name-cell small{font-size:10.5px;color:#6b7280;font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-expiry{display:inline-block;margin-top:2px;font-size:9.5px;font-style:normal;font-weight:600;color:#9ca3af;letter-spacing:.04em}.inv-unit{font-size:11.5px;color:#475569;font-weight:500}.inv-row .lis-num,.inv-asset-row .lis-num{font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:500;color:#0b1220}.inv-num-in{color:#15803d;font-weight:600}.inv-num-out{color:#b45309;font-weight:600}.inv-balance{font-weight:700!important}.inv-balance.is-low{color:#b91c1c}.inv-min{color:#9ca3af;font-size:11.5px!important}.inv-cat-tag{display:inline-block;padding:2px 7px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:99px;font-size:10.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;max-width:100%;text-align:center}.inv-cat-equipment{background:#e0e7ff;color:#4338ca;border-color:#c7d2fe}.inv-cat-consumables{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}.inv-cat-cleaning---disinfection{background:#cffafe;color:#0e7490;border-color:#a5f3fc}.inv-cat-printing---documentation{background:#fef3c7;color:#a16207;border-color:#fde68a}.inv-cat-accessories---spare-parts{background:#ede9fe;color:#6d28d9;border-color:#ddd6fe}.inv-cat-patient-care-supplies{background:#fce7f3;color:#be185d;border-color:#fbcfe8}.inv-filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 14px;margin-bottom:12px;background:#fafbfc;border:1px solid #eef0f3;border-radius:10px}.inv-filter-label{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.inv-filter-label>span{white-space:nowrap}.inv-filter-select{padding:7px 32px 7px 12px;border:1px solid #d4d4d8;border-radius:8px;background:#fff;font-size:12.5px;font-weight:500;color:#0b1220;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='none' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1l4 4 4-4'/></svg>");background-repeat:no-repeat;background-position:right 12px center;min-width:250px;text-transform:none;letter-spacing:0;font-family:inherit}.inv-filter-select:hover{border-color:#94a3b8}.inv-filter-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.inv-filter-toggle{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border:1px solid #e4e4e7;border-radius:99px;background:#fff;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s,border-color .12s,color .12s;white-space:nowrap}.inv-filter-toggle input[type=checkbox]{-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-height:16px!important;padding:0!important;margin:0!important;border:1.5px solid #cbd5e1!important;border-radius:4px!important;background:#fff!important;cursor:pointer;position:relative;flex:0 0 auto!important;box-sizing:border-box!important;font-size:0!important;line-height:1!important;transition:background .12s,border-color .12s}.inv-filter-toggle input[type=checkbox]:checked{background:#b91c1c;border-color:#b91c1c}.inv-filter-toggle input[type=checkbox]:checked:after{content:"";position:absolute;top:1px;left:4px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.inv-filter-toggle:hover{border-color:#cbd5e1;background:#fafafa}.inv-filter-toggle.has-alert{border-color:#fecaca;color:#b91c1c}.inv-filter-toggle.has-alert input[type=checkbox]{border-color:#fca5a5}.inv-filter-toggle.active{background:#fef2f2;border-color:#b91c1c;color:#b91c1c}.inv-filter-toggle>span{display:inline-flex;align-items:center;gap:5px}.inv-filter-toggle em{font-style:normal;display:inline-grid;place-items:center;min-width:22px;height:18px;padding:0 7px;background:#f3f4f6;color:#6b7280;border-radius:99px;font-size:10.5px;font-weight:700;font-variant-numeric:tabular-nums}.inv-filter-toggle.has-alert em{background:#fee2e2;color:#b91c1c}.inv-filter-toggle.active em{background:#b91c1c;color:#fff}.inv-filter-summary{margin-left:auto;font-size:12px;color:#6b7280;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;background:#fff;border:1px solid #eef0f3;border-radius:6px;white-space:nowrap}.inv-filter-summary strong{color:#0b1220;font-weight:700;font-size:13px}.inv-row .inv-status,.inv-asset-row .inv-status{padding:2px 8px;font-size:10.5px}@media(max-width:1280px){.inv-table{overflow-x:auto}.inv-row,.inv-asset-row,.ph-table-head.inv-row,.ph-table-head.inv-asset-row{min-width:1080px}}@media(max-width:700px){.inv-filter-select{min-width:0;flex:1}.inv-filter-summary{width:100%;text-align:right}}.inv-status{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font-size:11px;font-weight:700;border:1px solid transparent;line-height:1;white-space:nowrap}.inv-status:before{content:"";width:6px;height:6px;border-radius:50%}.inv-status-ok{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.inv-status-ok:before{background:#16a34a}.inv-status-low{background:#fef3c7;color:#b45309;border-color:#fde68a}.inv-status-low:before{background:#f59e0b}.inv-status-expired{background:#fee2e2;color:#b91c1c;border-color:#fecaca}.inv-status-expired:before{background:#ef4444}.inv-status-inactive{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.inv-status-inactive:before{background:#94a3b8}.inv-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.inv-form .full{grid-column:1 / -1}.inv-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#475569;font-weight:600}.inv-form input[type=text],.inv-form input[type=number],.inv-form input[type=date],.inv-form input:not([type]){padding:8px 10px;border:1px solid #d4d4d8;border-radius:6px;font-size:13px;color:#0b1220}.inv-form .switch-line{flex-direction:row;align-items:center;gap:8px}.inv-form-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}@media(max-width:1100px){.inventory-movement-table .inventory-row,.inventory-asset-table .inventory-asset-row{min-width:1100px}}@media(max-width:640px){.inv-form{grid-template-columns:1fr}}.rank-bar-list{display:flex;flex-direction:column;gap:12px;padding:4px 0}.rank-bar-row{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:center}.rank-bar-rank{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:5px;background:#f4f4f5;color:#6b7280;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.rank-bar-rank-1{background:#0b1220;color:#fff}.rank-bar-rank-2{background:#334155;color:#fff}.rank-bar-rank-3{background:#64748b;color:#fff}.rank-bar-body{display:flex;flex-direction:column;gap:4px;min-width:0}.rank-bar-line{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.rank-bar-label{font-size:12.5px;font-weight:600;color:#0b1220;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.rank-bar-meta{display:inline-flex;align-items:baseline;gap:8px;flex:0 0 auto;font-variant-numeric:tabular-nums}.rank-bar-meta em{font-style:normal;font-size:10.5px;color:#6b7280;font-weight:500}.rank-bar-meta strong{font-size:12px;font-weight:700;color:#0b1220}.rank-bar-track{position:relative;height:6px;background:#f1f5f9;border-radius:99px;overflow:hidden}.rank-bar-track i{display:block;height:100%;border-radius:99px;transition:width .3s ease}.rank-bar-empty{text-align:center;padding:24px 8px;color:#94a3b8;font-size:12px}.order-form.order-pos{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.order-form.order-pos .panel{padding:14px 16px}.order-form.order-pos .panel-head{margin-bottom:10px}.order-form.order-pos .lis-grid{gap:8px;margin-bottom:8px}.order-form.order-pos .lis-grid input,.order-form.order-pos .lis-grid select{height:34px;padding:6px 9px}.order-form.order-pos .lis-grid label{gap:3px}.order-tabs-bar{display:inline-flex;gap:4px;padding:4px;background:#f4f4f5;border:1px solid #e4e4e7;border-radius:10px;align-self:flex-start;margin-bottom:4px}.order-tab{position:relative;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:0;background:transparent;border-radius:7px;color:#4b5563;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.order-tab:hover{color:#0b1220}.order-tab.active{background:#fff;color:#0b1220;box-shadow:0 1px 2px #09090b0f}.order-tab svg{flex:0 0 auto}.order-tab-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#16a34a;margin-left:2px}.order-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:16px;padding:0 5px;background:#0b1220;color:#fff;border-radius:99px;font-size:10.5px;font-weight:700;font-style:normal;font-variant-numeric:tabular-nums;margin-left:2px}.order-next-btn{background:#0b1220!important;color:#fff!important;border-color:#0b1220!important}.order-next-btn:hover{background:#1f2937!important}.order-pos-main{display:grid;gap:14px;min-width:0}.pos-catalog-head{flex-wrap:wrap;gap:10px}.pos-catalog-head h3{flex:0 0 auto}.pos-search{position:relative;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid #d8dbe1;border-radius:7px;background:#fff;min-width:260px;flex:1 1 240px;max-width:380px}.pos-search input{flex:1;border:0;background:transparent;font:inherit;font-size:12.5px;color:#0b1220;padding:0;outline:none}.pos-search svg{color:#94a3b8;flex:0 0 auto}.pos-search-clear{border:0;background:#f4f4f5;color:#6b7280;border-radius:50%;width:18px;height:18px;display:inline-grid;place-items:center;cursor:pointer;padding:0}.pos-search-clear:hover{background:#e4e4e7;color:#0b1220}.pos-cat-dropdown{position:relative;margin:4px 0 12px;padding-bottom:12px;border-bottom:1px solid #eef0f3;max-width:320px}.pos-cat-trigger{display:inline-flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:1px solid #d4d4d8;border-radius:9px;background:#fff;color:#0b1220;cursor:pointer;text-align:left;transition:border-color .12s,background .12s,box-shadow .12s}.pos-cat-trigger:hover{border-color:#94a3b8}.pos-cat-trigger.open{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.pos-cat-tab-icon{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:7px;flex:0 0 auto}.pos-cat-tab-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.pos-cat-tab-body strong{font-size:12.5px;font-weight:600;color:#0b1220;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-cat-tab-body em{font-size:10.5px;font-style:normal;color:#6b7280;font-weight:500;font-variant-numeric:tabular-nums}.pos-cat-caret{font-size:14px;color:#6b7280;margin-left:4px;transition:transform .15s ease}.pos-cat-trigger.open .pos-cat-caret{transform:rotate(180deg)}.pos-cat-menu{position:absolute;top:calc(100% - 10px);left:0;right:0;z-index:30;background:#fff;border:1px solid #e4e4e7;border-radius:10px;box-shadow:0 12px 32px #09090b1f;padding:6px;display:flex;flex-direction:column;gap:2px;max-height:360px;overflow-y:auto;scrollbar-width:thin}.pos-cat-menu::-webkit-scrollbar{width:5px}.pos-cat-menu::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:3px}.pos-cat-menu-item{display:inline-flex;align-items:center;gap:9px;padding:7px 9px;border:0;border-radius:7px;background:transparent;color:#0b1220;cursor:pointer;text-align:left;transition:background .12s}.pos-cat-menu-item:hover{background:#f4f4f5}.pos-cat-menu-item.active{background:#eff6ff}.pos-cat-menu-item.active .pos-cat-tab-body strong{color:#1e3a8a}.pos-cat-menu-item.active .pos-cat-tab-body em{color:#2563eb}.pos-cat-menu-check{margin-left:auto;color:#2563eb;flex:0 0 auto}.pos-exam-list{max-height:min(900px,calc(100vh - 220px));overflow-y:auto;padding-right:4px;scrollbar-width:thin}.pos-exam-list::-webkit-scrollbar{width:6px}.pos-exam-list::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:3px}.pos-exam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:5px;margin-bottom:4px}.pos-exam-card{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px;padding:6px 8px;background:#fff;border:1px solid #e4e4e7;border-radius:7px;cursor:pointer;text-align:left;transition:border-color .12s,background .12s}.pos-exam-card:hover{border-color:#94a3b8;background:#fafafa}.pos-exam-card.selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 1px #2563eb}.pos-exam-icon{width:26px;height:26px;display:inline-grid;place-items:center;border-radius:6px;flex:0 0 auto}.pos-exam-text{display:flex;flex-direction:column;gap:0;min-width:0}.pos-exam-code{font-style:normal;font-size:9px;font-weight:700;letter-spacing:.04em;color:#94a3b8;text-transform:uppercase;font-variant-numeric:tabular-nums;line-height:1.1}.pos-exam-name{font-size:11.5px;font-weight:600;color:#0b1220;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.pos-exam-price{font-size:11px;font-weight:700;color:#0b1220;font-variant-numeric:tabular-nums;line-height:1.2;margin-top:1px}.pos-exam-card.selected .pos-exam-code{color:#6366f1}.pos-exam-card.selected .pos-exam-name,.pos-exam-card.selected .pos-exam-price{color:#1e3a8a}.pos-exam-tick{position:absolute;top:4px;right:4px;width:14px;height:14px;border-radius:50%;background:#2563eb;color:#fff;display:grid;place-items:center}.lis-test-filter{display:grid;grid-template-columns:auto minmax(220px,320px);align-items:center;gap:10px;max-width:460px;margin:2px 0 12px}.lis-test-filter label{color:#475569;font-size:11.5px;font-weight:700}.lis-test-filter select{height:34px;padding:6px 30px 6px 10px;border:1px solid #d4d4d8;border-radius:7px;background-color:#fff;color:#0f172a;font:inherit;font-size:12px}.order-pos .exam-category{margin-bottom:12px}.order-pos .exam-category h4{margin:0 0 5px;padding:5px 8px;border:0;border-bottom:1px solid #cbd5e1;border-radius:0;background:#f8fafc;color:#475569;font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.order-pos .pos-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.order-pos .pos-exam-card{grid-template-columns:minmax(74px,.4fr) minmax(120px,1.5fr) auto;gap:8px;min-height:42px;padding:7px 9px;border-radius:5px;box-shadow:none}.order-pos .pos-exam-card.selected{border-color:#2563eb;background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.order-pos .pos-exam-code,.order-pos .pos-exam-name,.order-pos .pos-exam-price{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-pos .pos-exam-code{color:#64748b;font-size:9.5px}.order-pos .pos-exam-name{font-size:11.5px;text-align:left}.order-pos .pos-exam-price{color:#334155;font-size:10.5px;text-align:right}.lis-test-selected{position:absolute;right:6px;bottom:2px;color:#2563eb;font-size:8px;font-weight:800}.order-pos-cart{position:sticky;top:14px;background:#fff;border:1px solid #e4e4e7;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 30px)}.pos-cart-title-row h3{margin:0;font-size:16px;font-weight:700;color:#0b1220;letter-spacing:-.01em}.pos-cart-section{display:flex;flex-direction:column;gap:6px}.pos-cart-label{font-size:11.5px;font-weight:600;color:#4b5563;display:inline-flex;align-items:center;gap:6px}.pos-cart-label-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:16px;padding:0 6px;background:#2563eb;color:#fff;border-radius:99px;font-size:10.5px;font-weight:700;font-variant-numeric:tabular-nums}.pos-cart-required{color:#ef4444;font-style:normal}.pos-cart-customer{display:inline-flex;align-items:center;gap:10px;padding:8px 10px;background:#f9fafb;border:1px solid #eef0f3;border-radius:8px}.pos-cart-customer-avatar{width:32px;height:32px;border-radius:50%;background:#e0e7ff;color:#4338ca;display:inline-grid;place-items:center;flex:0 0 auto}.pos-cart-customer-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.pos-cart-customer-body strong{font-size:12.5px;font-weight:600;color:#0b1220;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-cart-customer-body strong em{color:#9ca3af;font-style:italic;font-weight:500}.pos-cart-customer-body small{font-size:10.5px;color:#6b7280;font-variant-numeric:tabular-nums}.pos-cart-orderlist{flex:1 1 auto;min-height:0}.pos-cart-items{flex:1 1 auto;overflow-y:auto;min-height:80px;max-height:280px;display:flex;flex-direction:column;gap:8px;padding:2px;scrollbar-width:thin}.pos-cart-items::-webkit-scrollbar{width:5px}.pos-cart-items::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:3px}.pos-cart-empty{display:grid;place-items:center;text-align:center;padding:24px 12px;color:#94a3b8;gap:4px}.pos-cart-empty svg{color:#cbd5e1;margin-bottom:4px}.pos-cart-empty p{margin:0;font-size:12px;font-weight:600;color:#6b7280}.pos-cart-empty small{font-size:10.5px;color:#94a3b8}.pos-cart-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:7px 9px;border:1px solid #eef0f3;border-radius:9px;background:#fff;transition:border-color .1s,background .1s}.pos-cart-item:not(:has(.pos-cart-item-thumb)){grid-template-columns:1fr auto}.pos-cart-item:hover{border-color:#d4d4d8}.pos-cart-item-thumb{width:36px;height:36px;border-radius:8px;display:inline-grid;place-items:center;flex:0 0 auto}.pos-cart-item-body{display:flex;flex-direction:column;gap:1px;min-width:0}.pos-cart-item-body strong{font-size:12px;font-weight:600;color:#0b1220;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-cart-item-code{color:#94a3b8;font-size:9px;font-weight:700;letter-spacing:.04em}.pos-cart-item-price{font-size:11.5px;font-weight:700;color:#0b1220;font-variant-numeric:tabular-nums}.pos-cart-item-remove{width:26px;height:26px;display:inline-grid;place-items:center;border:0;background:transparent;color:#ef4444;border-radius:6px;cursor:pointer;padding:0;transition:background .12s}.pos-cart-item-remove:hover{background:#fef2f2}.pos-cart-summary{background:#fafbfc;border:1px solid #eef0f3;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:6px}.pos-cart-line{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;color:#4b5563;font-variant-numeric:tabular-nums}.pos-cart-line-discount{color:#b45309;font-weight:600}.pos-cart-line-total{margin-top:4px;padding-top:8px;border-top:1px solid #e4e4e7;font-size:13px}.pos-cart-line-total span{color:#0b1220;font-weight:700}.pos-cart-line-total strong{font-size:18px;font-weight:700;color:#0b1220;letter-spacing:-.01em}.pos-cart-payment{width:100%;padding:9px 32px 9px 12px;border:1px solid #d4d4d8;border-radius:8px;background:#fff;font-size:12.5px;color:#0b1220;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='none' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1l4 4 4-4'/></svg>");background-repeat:no-repeat;background-position:right 12px center}.pos-cart-actions{display:flex;flex-direction:column;gap:6px}.pos-cart-submit{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#2563eb;color:#fff;border:0;border-radius:10px;padding:13px 14px;font-size:13.5px;font-weight:700;cursor:pointer;transition:background .12s;letter-spacing:.01em}.pos-cart-submit:hover:not(:disabled){background:#1d4ed8}.pos-cart-submit:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.pos-cart-clear{display:inline-flex;align-items:center;justify-content:center;gap:4px;background:transparent;color:#6b7280;border:1px dashed #d4d4d8;border-radius:7px;padding:6px 10px;font-size:11.5px;font-weight:600;cursor:pointer}.pos-cart-clear:hover{background:#fef2f2;color:#b91c1c;border-color:#fecaca}@media(max-width:1100px){.order-form.order-pos{grid-template-columns:1fr}.order-pos-cart{position:static;max-height:none}.pos-exam-list{max-height:500px}}@media(max-width:640px){.pos-search{min-width:0}.pos-category-bar{padding-bottom:6px}.pos-cart-items{max-height:260px}.lis-test-filter{grid-template-columns:1fr;gap:4px}.order-pos .pos-exam-grid{grid-template-columns:1fr}}html,body{overflow-x:hidden}@media(max-width:480px){.screen,.ops-screen{padding:12px}.ops-kpi{min-height:96px;padding:12px 14px}.ops-kpi-value{font-size:20px}}.app-shell{background:#f0f2f5}.sidebar.lis-sidebar{width:88px;height:100dvh;padding:8px;gap:12px;background:linear-gradient(#10192b,#1e293b);color:#c3cddd;border-right:1px solid #334155}.sidebar-toggle{min-height:44px;width:44px;margin:0 auto;display:grid;place-items:center;color:#c3cddd;background:#ffffff0b;border:0;border-radius:12px;flex-shrink:0}.lis-sidebar .sidebar-brand{display:none}.lis-sidebar nav{display:flex;flex-direction:column;gap:8px;border-top:1px solid #ffffff16;padding-top:12px;overflow:visible}.lis-sidebar nav button{display:flex;justify-content:center;align-items:center;width:100%;min-height:56px;padding:12px;color:#c3cddd;background:transparent;border:0;border-radius:0}.lis-sidebar nav button svg{width:22px;height:22px;flex-shrink:0}.lis-sidebar nav button:hover{background:#ffffff12;color:#fff}.lis-sidebar nav button.active{background:#2250cb;color:#fff;box-shadow:0 8px 24px #1748bf30}.lis-sidebar nav button.active svg{color:#fff}.lis-sidebar .sidebar-nav-label,.lis-sidebar .sidebar-user>div,.lis-sidebar .sidebar-user>svg{display:none}.lis-sidebar .sidebar-user{margin-top:auto;padding:10px 0;border-top:1px solid #ffffff16;justify-content:center}.lis-sidebar .sidebar-user button{color:#f1b5bc;background:transparent;min-height:44px;min-width:44px}.lis-sidebar.expanded{width:260px;box-shadow:12px 0 32px #0f172a26}.lis-sidebar.expanded .sidebar-nav-label{display:inline;text-align:left}.lis-sidebar.expanded nav button{justify-content:flex-start;gap:14px}.workspace{margin-left:88px;width:calc(100% - 88px);max-width:none;min-width:0;background:#f0f2f5}.screen.order-screen{padding:14px 18px;background:#f0f2f5;max-width:none}.order-form.order-pos{grid-template-columns:minmax(0,5fr) minmax(300px,2fr);gap:12px}.order-pos-main{gap:8px}.order-form.order-pos .panel{border:1px solid #cfdaeb;border-radius:16px;padding:16px;box-shadow:none;min-width:0}.order-form.order-pos .panel-head{margin:-16px -16px 16px;padding:10px 12px;min-height:48px;border-bottom:1px solid #dce4ef;background:#fafbfd;border-radius:16px 16px 0 0}.order-pos .panel-head h3{color:#123765;font-size:13px}.order-form.order-pos .lis-grid input,.order-form.order-pos .lis-grid select{height:48px;border-color:#c7d5e8;border-radius:3px;font-size:15px}.order-form.order-pos .lis-grid label{font-size:14px;font-weight:400;color:#647d9d;min-width:0}.order-pos .lis-grid-2nd{grid-template-columns:1.3fr 1.7fr .8fr .8fr}.order-pos .lis-span-2{grid-column:auto}.order-pos .pos-search{flex:0 1 300px;min-width:0;border-color:#c7d5e8;border-radius:3px}.order-pos .pos-exam-list{max-height:none;overflow:visible;padding:0}.order-pos .exam-category{margin-bottom:4px}.order-pos .exam-category summary{cursor:pointer;display:flex;align-items:center;gap:6px;color:#15365e;padding:3px 0;font-size:12px;list-style:none}.order-pos .exam-category summary::-webkit-details-marker{display:none}.order-pos .exam-category summary:after{content:"⌄";margin-left:auto}.order-pos .exam-category:not([open]) summary:after{content:"›"}.lis-category-count{background:#eff4fa;padding:1px 8px;color:#0862b1;border-radius:2px}.order-pos .pos-exam-grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:6px}.order-pos .pos-exam-card{grid-template-columns:14px minmax(0,1fr);grid-template-rows:auto auto;column-gap:7px;row-gap:0;min-height:54px;padding:7px;border:1px solid #cfdaeb;border-radius:10px;align-content:center}.lis-exam-checkbox{grid-row:1 / 3;width:13px;height:13px;border:1px solid #d5e0ed;border-radius:4px;display:grid;place-items:center}.selected .lis-exam-checkbox{background:#2563eb;color:#fff;border-color:#2563eb}.order-pos .pos-exam-name{font-size:12.5px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}.order-pos .pos-exam-price,.order-pos .pos-exam-card.selected .pos-exam-price{grid-column:2;font-size:12px;color:#ff3548;text-align:left;line-height:1.25}.order-pos .pos-exam-card.selected{box-shadow:none;background:#edf5ff}.order-pos-cart{top:14px;min-height:calc(100dvh - 28px);max-height:none;padding:12px;gap:14px;border:1px solid #b7cde7;border-radius:14px;background:#f1f5fa}.pos-cart-title-row{order:-2;margin:-12px -12px 0;padding:12px;background:#206baa;border-radius:13px 13px 0 0}.pos-cart-title-row h3{color:#fff;font-size:14px;text-align:right}.lis-pricing-section{order:-1}.pos-cart-orderlist{flex:1;background:#fff;border:1px solid #dce4ef;border-radius:6px;padding:12px}.pos-cart-items{max-height:none}.pos-cart-empty{padding:18px 0;text-align:left}button:focus-visible,summary:focus-visible{outline:2px solid #2563eb;outline-offset:3px}@media(max-width:1200px){.order-form.order-pos{grid-template-columns:minmax(0,1fr) 300px}.order-pos .lis-grid,.order-pos .lis-grid-2nd,.order-pos .lis-grid-3rd{grid-template-columns:repeat(2,minmax(0,1fr))}.order-pos-cart{position:static}}@media(max-width:900px){.order-form.order-pos{grid-template-columns:minmax(0,1fr)}.order-pos-cart{min-height:380px}}@media(max-width:640px){.sidebar.lis-sidebar{width:100%;height:60px;flex-direction:row;align-items:center;padding:4px;gap:4px;overflow:visible}.lis-sidebar .sidebar-toggle{display:none}.lis-sidebar nav{flex:1;flex-direction:row;gap:0;padding:0;border:0;min-width:0}.lis-sidebar nav button{min-height:48px;min-width:0;padding:8px;border-radius:6px}.lis-sidebar .sidebar-user{margin:0;padding:0;border:0}.lis-sidebar.expanded{width:100%}.lis-sidebar.expanded .sidebar-nav-label{display:none}.workspace{margin-left:0;padding-top:60px;width:100%;max-width:100%}.screen.order-screen{padding:10px}.order-form.order-pos .panel{padding:12px}.order-form.order-pos .panel-head{margin:-12px -12px 12px}.order-pos .pos-search{flex:1 1 100%;max-width:none}.order-pos .pos-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.order-pos .pos-exam-name{font-size:12px}.order-form.order-pos .lis-grid input,.order-form.order-pos .lis-grid select{font-size:14px}}@media(max-width:380px){.order-pos .lis-grid,.order-pos .lis-grid-2nd,.order-pos .lis-grid-3rd{grid-template-columns:minmax(0,1fr)}}.sidebar.lis-sidebar{position:fixed;top:0;left:0}@media(max-width:640px){.lis-sidebar nav button{flex:1 1 0;width:auto}}.app-shell:has(.lis-sidebar.expanded) .workspace{margin-left:260px;width:calc(100% - 260px)}.lis-sidebar.expanded .sidebar-user>div{display:block}.lis-sidebar.expanded .sidebar-user{gap:12px}.lis-sidebar.expanded .sidebar-user strong,.lis-sidebar.expanded .sidebar-user span{color:#c3cddd}.workspace-order{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.workspace-order .sync-banner{flex:0 0 auto;margin:8px 12px 0;padding:8px 12px;font-size:12px}.workspace-order .screen.order-screen{flex:1;min-height:0;padding:10px 12px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.workspace-order .order-form.order-pos{flex:1;min-height:0;align-items:stretch}.workspace-order .order-pos-main{grid-template-rows:auto minmax(0,1fr);min-height:0}.workspace-order .order-pos .panel{padding:10px 12px;border-radius:12px}.workspace-order .order-pos .panel-head{min-height:36px;padding:6px 10px;margin:-10px -12px 8px;border-radius:12px 12px 0 0}.workspace-order .order-pos .lis-grid{gap:6px;margin-bottom:6px}.workspace-order .order-pos .lis-grid:last-child{margin-bottom:0}.workspace-order .order-pos .lis-grid label{font-size:12px;gap:2px}.workspace-order .order-pos .lis-grid input,.workspace-order .order-pos .lis-grid select{height:36px;min-height:0;padding:5px 8px;font-size:13px}.workspace-order .order-pos .lis-grid input[type=checkbox]{width:16px;height:16px}.workspace-order .pos-catalog{display:flex;flex-direction:column;min-height:0;overflow:hidden}.workspace-order .pos-catalog-head{flex:0 0 auto}.workspace-order .pos-catalog-controls{display:flex;flex:1 1 500px;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.workspace-order .pos-catalog-category{display:flex;align-items:center;gap:8px;min-width:0;color:#374151;font-size:12px;font-weight:600;white-space:nowrap}.workspace-order .pos-catalog-category select{width:clamp(150px,15vw,240px);height:34px;min-width:0;padding:4px 8px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827;font:inherit;font-weight:400}.workspace-order .pos-catalog-controls .pos-search{flex:1 1 220px;min-width:180px;max-width:360px;margin:0}.workspace-order .pos-search{padding:4px 8px}.workspace-order .pos-search input{height:26px;min-height:0}.workspace-order .order-pos .pos-exam-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:4px}.workspace-order .order-pos .pos-exam-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));align-items:stretch;gap:6px}.workspace-order .order-pos .pos-exam-card{grid-template-columns:14px minmax(0,1fr);grid-template-rows:minmax(2.3em,auto) auto;column-gap:7px;row-gap:0;min-height:56px;padding:6px 8px;align-content:center}.workspace-order .order-pos .pos-exam-name{display:-webkit-box;min-height:2.3em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25;overflow-wrap:anywhere}.workspace-order .order-pos .pos-exam-price{align-self:start;white-space:nowrap}@media(max-width:640px){.workspace-order .pos-catalog-controls{flex:1 1 100%;justify-content:stretch}.workspace-order .pos-catalog-category{flex:1 1 100%}.workspace-order .pos-catalog-category select{flex:1;width:auto}.workspace-order .pos-catalog-controls .pos-search{flex:1 1 100%;max-width:none}.workspace-order .order-pos .pos-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.workspace-order .order-pos .pos-exam-card{min-height:56px;padding:6px}.workspace-order .order-pos .pos-exam-name{font-size:12px}}@media(max-width:380px){.workspace-order .order-pos .pos-exam-grid{grid-template-columns:minmax(0,1fr)}}.workspace-order .order-pos-cart{position:static;min-height:0;max-height:none;gap:8px;padding:10px;overflow:hidden}.workspace-order .pos-cart-title-row{margin:-10px -10px 0;padding:9px 10px}.workspace-order .pos-cart-section{gap:4px}.workspace-order .pos-cart-customer{padding:7px}.workspace-order .pos-cart-orderlist{flex:1;min-height:70px;padding:8px;overflow:hidden}.workspace-order .pos-cart-items{flex:1;min-height:0;overflow-y:auto}.workspace-order .pos-cart-summary{padding:8px 10px}.workspace-order .pos-cart-line{padding:4px 0}.workspace-order .pos-cart-submit{padding:9px 12px;border-radius:6px}.workspace-order .pos-cart-actions{flex-shrink:0}.workspace-order .edit-banner{margin:0;flex-shrink:0}.lis-history-screen{background:#f0f2f5;padding:14px 18px}.lis-history-heading,.lis-history-heading h2{display:flex;align-items:center;gap:10px}.lis-history-heading{justify-content:space-between;margin-bottom:12px}.lis-history-heading h2{margin:0;font-size:20px;color:#15365e}.lis-history-heading p{margin:3px 0 0;color:#64748b;font-size:12px}.lis-history-screen .history-filter{display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding:12px;margin-bottom:10px;border:1px solid #cfdaeb}.lis-history-screen .history-filter .ph-search-input{flex:1 1 220px}.lis-history-screen .history-filter label{flex:0 1 160px}.lis-history-results{padding:0;border:1px solid #cfdaeb;border-radius:10px;overflow:hidden}.lis-history-scroll{overflow:auto;max-height:calc(100dvh - 260px);min-height:140px}.lis-history-table{width:100%;min-width:1100px;border-collapse:collapse;font-size:12px}.lis-history-table th{position:sticky;top:0;z-index:1;background:#eaf2fb;color:#154b7d;text-align:left;padding:12px 10px;white-space:nowrap;border-bottom:1px solid #c9d8ec}.lis-history-table td{padding:10px;border-bottom:1px solid #e4eaf2;vertical-align:middle}.lis-history-table tr:nth-child(2n){background:#f9fbfe}.lis-history-table tr:hover{background:#eff6ff}.lis-history-table small{display:block;color:#74849b;font-size:10px;margin-top:3px}.lis-history-exams{max-width:260px;min-width:140px}.lis-history-price{white-space:nowrap;font-weight:600}.lis-history-actions{display:flex;gap:4px}.lis-history-actions .ph-icon-btn{width:30px;height:32px;flex-shrink:0}.lis-status{display:inline-block;padding:4px 8px;border-radius:5px;font-size:11px;background:#eaf0fa;color:#235c9b;white-space:nowrap}.status-reported,.status-approved{background:#dcfce7;color:#166534}.status-in-progress{background:#fff2ce;color:#92400e}.status-cancelled{background:#fee2e2;color:#b91c1c}.lis-result-link{border:0;background:none;color:#1767ac;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.lis-history-pagination{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dce4ef;font-size:12px}.lis-history-pagination>div{display:flex;align-items:center;gap:10px}.lis-upload-field{padding:12px;border:1px dashed #99b8de;border-radius:8px;background:#f5f9ff}.lis-upload-field input{border:0;padding:4px 0}.file-upload-btn:focus-within{outline:2px solid #2563eb;outline-offset:2px}.file-upload-btn.disabled{opacity:.5;pointer-events:none}.result-file-row{flex-wrap:wrap}.result-file-row>span{overflow-wrap:anywhere;min-width:0}@media(max-width:1100px)and (min-width:901px){.workspace-order .order-pos .lis-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-order .order-pos .lis-grid label{font-size:11px}}@media(max-width:900px),(max-height:600px){.workspace-order{height:auto;min-height:100dvh;overflow:visible}.workspace-order .screen.order-screen{overflow:visible;flex:none}.workspace-order .order-form.order-pos{grid-template-columns:minmax(0,1fr)}.workspace-order .order-pos-main{grid-template-rows:auto auto}.workspace-order .order-pos .pos-exam-list{max-height:40dvh;flex:auto}.workspace-order .order-pos-cart{min-height:320px}.workspace-order .pos-cart-items{max-height:180px}.workspace-order .pos-cart-actions{position:sticky;bottom:0;padding:6px 0;background:#f1f5fa}.lis-history-scroll{max-height:65dvh}}@media(max-width:640px){.sidebar.lis-sidebar{height:56px}.lis-sidebar .sidebar-toggle{display:grid;width:40px;min-height:40px;margin:0 4px}.lis-sidebar nav{display:none}.lis-sidebar .sidebar-user{margin-left:auto}.lis-sidebar.mobile-open nav{display:flex;position:absolute;top:56px;left:0;width:min(290px,90vw);flex-direction:column;padding:8px;background:#123b40;box-shadow:6px 12px 24px #0f172a33}.lis-sidebar.mobile-open nav button{justify-content:flex-start;padding:12px}.lis-sidebar.mobile-open .sidebar-nav-label{display:inline}.lis-sidebar.expanded .sidebar-user>div{display:none}.workspace,.app-shell:has(.lis-sidebar.expanded) .workspace{margin-left:0;width:100%;padding-top:56px}.lis-history-screen{padding:10px}.lis-history-heading h2{font-size:17px}.lis-history-screen .history-filter label{flex:1 1 130px}}.workspace-order .order-pos .lis-grid-2nd.patient-info-grid{grid-template-columns:minmax(160px,1.25fr) minmax(180px,1.8fr) minmax(72px,.55fr) minmax(90px,.7fr);grid-template-areas:"hn name age gender"}.patient-info-hn{grid-area:hn}.patient-info-name{grid-area:name}.patient-info-age{grid-area:age}.patient-info-gender{grid-area:gender}@media(max-width:1200px)and (min-width:901px){.workspace-order .order-pos .lis-grid-2nd.patient-info-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1.7fr) minmax(72px,.65fr);grid-template-areas:"hn name name" "age gender gender"}}@media(max-width:900px){.workspace-order .order-pos .lis-grid-2nd.patient-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"hn name" "age gender"}}@media(max-width:380px){.workspace-order .order-pos .lis-grid-2nd.patient-info-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"hn" "name" "age" "gender"}}@media(min-width:901px){.workspace-order .order-pos .lis-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-order .order-pos .lis-grid-2nd{grid-template-columns:1.3fr 1.7fr .8fr .8fr}.workspace-order .pos-cart-orderlist{min-height:0}}.cloud-connection h3{display:flex;gap:8px;align-items:center}.cloud-connection p{color:#64748b;font-size:12px}.cloud-connection form{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.cloud-connection form label{flex:1 1 180px}.cloud-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.master-save-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;margin-bottom:12px;background:#fff8e6;border:1px solid #ead49d;border-radius:8px}@media(max-width:640px){.master-save-bar{flex-wrap:wrap}}.cloud-staff{margin-bottom:12px}.cloud-staff>p{font-size:12px;color:#64748b}.cloud-staff-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:12px 0}.cloud-staff-form label{flex:1 1 140px}.cloud-staff-form input[type=checkbox]{width:18px}.cloud-staff-row{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #e2e8f0;flex-wrap:wrap}.cloud-staff-row>span{flex:1}:root{--background: #f4f9f7;--foreground: #173332;--card: #ffffff;--card-foreground: #173332;--primary: #0f766e;--primary-foreground: #f0fdfa;--secondary: #e8f3f0;--secondary-foreground: #24534e;--muted: #eff5f3;--muted-foreground: #647a76;--accent: #dff3ee;--accent-foreground: #155b55;--destructive: #d85f55;--border: #d8e7e3;--input: #cbded9;--ring: #22a99b;--radius: .75rem;--phoenix-blue: #0f766e;--phoenix-blue-2: #115e59;--phoenix-blue-soft: #e5f5f1;--phoenix-navy: #153b3c;--phoenix-border: #d8e7e3;--phoenix-border-strong: #c4d9d4;--phoenix-soft: #f1f7f5;--phoenix-muted: #647a76;--phoenix-text: #173332;--phoenix-text-2: #365553}body,.app-shell,.workspace{background-color:#f4f9f7;color:var(--foreground)}::selection{background:#bfe9df;color:#123f3b}.login-shell{background:radial-gradient(circle at 18% 12%,rgba(52,190,169,.16),transparent 32%),linear-gradient(145deg,#f7fbfa,#eaf5f1)}.login-brand svg{color:#0f766e;background:#e1f4ef;border:1px solid #c9e7df}.login-brand h1{color:#0f766e}.login-brand p{color:#647a76}.screen-header h2,.ops-header-meta h2,.master-panel-head h2{color:#204644}.screen,.dashboard-screen,.ops-screen,.lis-history-screen,.screen.order-screen,.workspace-order .screen.order-screen{background:radial-gradient(ellipse at 92% 0%,rgba(45,174,157,.075),transparent 34%),linear-gradient(145deg,#f7fbfa,#f0f7f5)}.panel{border-color:var(--border);border-radius:14px;box-shadow:0 5px 20px #1446400b}.panel-head{border-bottom-color:#e1ece9}.panel-head h3,.panel h3{color:#204644}.panel-head h3 svg,.panel h3 svg{color:var(--phoenix-blue)}.sidebar.lis-sidebar{background:linear-gradient(180deg,#102c34,#123b40 55%,#16494a);border-right-color:#245457;color:#d7ece8}.lis-sidebar nav{border-top-color:#9addd029}.lis-sidebar nav button{color:#aac7c3}.lis-sidebar nav button:hover{background:#5ce1cf1f;color:#f5fffd}.lis-sidebar nav button.active{background:linear-gradient(120deg,#0e847a,#126d70);color:#fff;box-shadow:inset 3px 0 #6de3d0,0 8px 22px #041e2242}.lis-sidebar nav button.active svg{color:#eafffa}.lis-sidebar .sidebar-toggle{color:#d7ece8}.lis-sidebar .sidebar-brand svg{color:#73e4d1;background:#5ce1cf1f}.lis-sidebar .sidebar-user{border-top-color:#9addd029}.lis-sidebar.expanded nav{background:#123b40}input,select,textarea{border-color:var(--input);border-radius:9px;color:var(--foreground)}input[type=checkbox],input[type=radio]{accent-color:#0f8278}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,.ph-btn:focus-visible{border-color:var(--ring);box-shadow:0 0 0 2px #fff,0 0 0 4px #22a99b47}button,.ph-btn,.login-form button,.dashboard-actions .ph-btn-primary{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}button:hover:not(:disabled),.ph-btn:hover:not(:disabled),.ph-btn-primary:hover:not(:disabled),.login-form button:hover:not(:disabled),.dashboard-actions .ph-btn-primary:hover:not(:disabled){border-color:#115e59;background:#115e59}.ph-btn-primary,.setup-tabs button.active,.settings-tabs button.active,.lis-pricing-toggle button.active{border-color:var(--primary);background:var(--primary);color:#f0fdfa}.ph-btn-soft,.setup-tabs button,.settings-tabs button,.secondary-login{border-color:var(--border);background:#fff;color:#24534e}.ph-btn-soft:hover:not(:disabled),.setup-tabs button:hover:not(:disabled),.settings-tabs button:hover:not(:disabled),.secondary-login:hover:not(:disabled){border-color:#b9d8d1;background:#eaf6f2;color:#174f4a}.ph-kpi-blue .ph-kpi-icon{background:#e2f4ef;color:#0f766e}.ph-icon-info{color:#0f766e;background:#e5f5f1;border-color:#c8e8df}.ph-icon-info:hover:not(:disabled){color:#fff;background:#0f766e;border-color:#0f766e}.login-hint b,.lis-mini-row b,.dashboard-actions svg{color:#0f766e}.exam-rank-row i{background:linear-gradient(90deg,#0f8f83,#65c7a0)}.phm-head{background:linear-gradient(125deg,#153e43,#0e8178 62%,#25a998)}.phm-dot{background:#0f8f83;border-color:#d5f0e9}.phm-file{border-color:#c9e7df;background:#eaf6f2;color:#17645d}.phm-file:hover{background:#0f766e;color:#fff}.patient-card{background:linear-gradient(135deg,#eff8f5,#e3f2ed);color:#155b55;border-color:#cfe5dd}.patient-card-avatar{border-color:#cfe5dd}.report-sheet-subtitle,.report-sheet-section h5{color:#17645d}.report-sheet-section h5{border-bottom-color:#cfe2dc}.report-sheet-input:focus,.report-sheet-input:focus-visible{border-color:#0f8f83;box-shadow:0 0 0 3px #0f8f831f}.exam.active{background:#155f5c;border-color:#155f5c}.exam.active:after{color:#0f766e}.dashboard-screen .lis-slot,.dashboard-screen .lis-mini-row,.dashboard-screen .lis-shift,.dashboard-screen .workload-strip span{background:#f6fbf9;border-color:#dfebe7}.inv-filter-select:focus{border-color:#0f8f83;box-shadow:0 0 0 3px #0f8f831f}.lis-status{background:#e5f5f1;color:#17645d}.lis-result-link{color:#0f766e}.lis-history-table th{background:#e7f3f0;color:#24534e;border-bottom-color:#cfe2dc}.lis-history-table tr:nth-child(2n){background:#f8fbfa}.lis-history-table tr:hover{background:#eaf6f2}.lis-history-results,.lis-history-screen .history-filter{border-color:var(--border)}.workspace-order .screen.order-screen{background-color:#f2f8f6}.workspace-order .order-pos .panel,.order-form.order-pos .panel{border-color:#cfe2dc;box-shadow:0 5px 20px #1446400e}.workspace-order .order-pos .panel-head,.order-form.order-pos .panel-head{border-bottom-color:#d9e9e4;background:linear-gradient(105deg,#eaf6f2,#fbfefd 78%)}.order-pos .panel-head h3{color:#195550}.order-pos .lis-grid label{color:#587570}.order-pos .lis-grid input,.order-pos .lis-grid select{border-color:#c5ddd6}.order-pos .lis-grid input.patient-hn-input,.patient-info-hn input{background:#eaf6f2}.order-pos .exam-category summary{color:#1b5b55}.lis-category-count{background:#dff2ed;color:#0f766e}.pos-cat-menu-item.active{border-color:#9bcfc3;background:#e8f6f2}.pos-cat-trigger.open{border-color:#159489;box-shadow:0 0 0 3px #1594891f}.pos-cat-menu{border-color:#d8e7e3}.pos-cat-menu-item:hover{background:#eff8f5}.pos-cat-menu-item.active .pos-cat-tab-body strong{color:#155b55}.pos-cat-menu-item.active .pos-cat-tab-body em,.pos-cat-menu-check,.lis-test-selected{color:#0f766e}.pos-exam-tick,.pos-cart-label-count{background:#0f8278}.workspace-order .order-pos .pos-exam-card{border-color:#c9e0d9;background:linear-gradient(145deg,#fff,#fbfefd);color:#173b39;box-shadow:0 2px 8px #18544b09}.workspace-order .order-pos .pos-exam-card:hover:not(:disabled){border-color:#6bbdaf;background:#eff9f6;color:#173b39;box-shadow:0 4px 12px #0f766e1a}.workspace-order .order-pos .pos-exam-card.selected,.workspace-order .order-pos .pos-exam-card.selected:hover:not(:disabled){border-color:#159489;background:#e3f5ef;color:#123f3b;box-shadow:inset 0 0 0 1px #159489,0 3px 10px #0f766e14}.workspace-order .order-pos .pos-exam-card.selected .pos-exam-name{color:#123f3b}.workspace-order .order-pos .pos-exam-card .lis-exam-checkbox{border-color:#a9cbc2}.workspace-order .order-pos .pos-exam-card.selected .lis-exam-checkbox{background:#0f8278;border-color:#0f8278}.workspace-order .order-pos-cart{border-color:#c6ded7;background:#edf6f3}.pos-cart-title-row{background:linear-gradient(110deg,#0d746c,#145c66)}.workspace-order .pos-cart-orderlist{border-color:#d3e4df}.workspace-order .pos-cart-submit{background:#0f766e;border-color:#0f766e}.workspace-order .pos-cart-actions{background:#edf6f3}.patient-search-box .patient-hn-prefix{position:absolute;left:11px;z-index:1;color:#496b67;font-size:13px;font-weight:700;pointer-events:none}.patient-search-box .patient-hn-suffix{padding-left:48px!important}@media(min-width:901px)and (min-height:601px){.workspace-order{height:100dvh;min-height:0;overflow:hidden}.workspace-order .screen.order-screen{height:100%;min-height:0;overflow:hidden}.workspace-order .order-form.order-pos,.workspace-order .order-pos-main,.workspace-order .order-pos-cart{min-height:0}.workspace-order .order-pos .pos-exam-list{min-height:0;overflow-y:auto}}.sidebar.lis-sidebar{transition:width .18s ease,box-shadow .18s ease}.lis-sidebar .sidebar-toggle{display:none}.lis-sidebar.expanded{width:260px}.lis-sidebar.expanded .sidebar-brand{display:flex}.lis-sidebar.expanded .sidebar-nav-label,.lis-sidebar.expanded .sidebar-user>div,.lis-sidebar.expanded .sidebar-user>svg{display:block}.lis-sidebar.expanded nav button{justify-content:flex-start;gap:14px;padding-left:12px}.lis-sidebar.expanded .sidebar-user{justify-content:flex-start;gap:12px}.workspace-order .order-pos .pos-exam-card{grid-template-columns:30px minmax(0,1fr);column-gap:7px}.workspace-order .order-pos .pos-exam-icon{grid-row:1 / 3;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;flex:0 0 auto}.workspace-order .pos-exam-icon.tone-ultrasound{background:#e3f1ff;color:#1973c4}.workspace-order .pos-exam-icon.tone-womens{background:#fde8f2;color:#ca3c81}.workspace-order .pos-exam-icon.tone-cardiovascular{background:#fee8e6;color:#d54e55}.workspace-order .pos-exam-icon.tone-musculoskeletal{background:#eeeaff;color:#7256c9}.workspace-order .pos-exam-icon.tone-services{background:#fff2dc;color:#a7671e}.workspace-order .pos-exam-icon.selected{background:#0f8278;color:#fff}@media(max-width:640px){.lis-sidebar.expanded{width:100%}.lis-sidebar .sidebar-toggle{display:grid}.lis-sidebar.expanded .sidebar-brand{display:none}.lis-sidebar.expanded .sidebar-user>div{display:none}.lis-sidebar.expanded nav{display:none}.lis-sidebar.mobile-open nav{display:flex}.lis-sidebar.mobile-open .sidebar-nav-label{display:inline}}:root{--background: #ffffff;--foreground: #111827;--card: #ffffff;--card-foreground: #111827;--primary: #111827;--primary-foreground: #ffffff;--secondary: #f3f4f6;--secondary-foreground: #1f2937;--muted: #f3f4f6;--muted-foreground: #6b7280;--accent: #e5e7eb;--accent-foreground: #111827;--border: #e5e7eb;--input: #d1d5db;--ring: #4b5563;--phoenix-blue: #111827;--phoenix-blue-2: #374151;--phoenix-blue-soft: #f3f4f6;--phoenix-navy: #111827;--phoenix-border: #e5e7eb;--phoenix-border-strong: #d1d5db;--phoenix-soft: #f9fafb;--phoenix-muted: #6b7280;--phoenix-text: #111827;--phoenix-text-2: #374151}body,.app-shell,.workspace{background:#fff;color:#111827}.screen,.dashboard-screen,.ops-screen,.lis-history-screen,.screen.order-screen,.workspace-order .screen.order-screen{background:#f8f9fa;color:#111827}.login-shell{background:#f8f9fa}.login-brand svg{color:#111827;background:#f3f4f6;border-color:#e5e7eb}.login-brand h1,.screen-header h2,.ops-header-meta h2,.master-panel-head h2,.lis-history-heading h2{color:#111827}.sidebar.lis-sidebar{background:#fff;color:#374151;border-right-color:#e5e7eb;box-shadow:none}.lis-sidebar nav{border-top-color:#e5e7eb}.lis-sidebar nav button{color:#4b5563}.lis-sidebar nav button:hover{color:#111827;background:#f9fafb}.lis-sidebar nav button.active{color:#111827;background:#f3f4f6;box-shadow:inset 3px 0 #111827}.lis-sidebar nav button.active svg,.lis-sidebar .sidebar-toggle,.lis-sidebar .sidebar-brand svg{color:#111827}.lis-sidebar .sidebar-toggle{background:#f3f4f6}.lis-sidebar .sidebar-brand svg{background:#f3f4f6}.lis-sidebar .sidebar-user{border-top-color:#e5e7eb}.lis-sidebar.expanded nav{background:#fff}.lis-sidebar.expanded .sidebar-user strong,.lis-sidebar.expanded .sidebar-user span{color:#374151}.panel,.order-form.order-pos .panel,.workspace-order .order-pos .panel{background:#fff;border-color:#e5e7eb;box-shadow:0 1px 3px #1118270d}.panel-head,.workspace-order .order-pos .panel-head,.order-form.order-pos .panel-head{background:#fff;border-bottom-color:#e5e7eb}.panel-head h3,.panel h3,.panel-head h3 svg,.panel h3 svg,.order-pos .panel-head h3{color:#111827}input,select,textarea,.order-form.order-pos .lis-grid input,.order-form.order-pos .lis-grid select{color:#111827;background-color:#fff;border-color:#d1d5db}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,summary:focus-visible,.file-upload-btn:focus-within,.ph-btn:focus-visible{outline-color:#4b5563;border-color:#6b7280;box-shadow:0 0 0 2px #fff,0 0 0 4px #4b55632e}input[type=checkbox],input[type=radio]{accent-color:#111827}label,.order-pos .lis-grid label{color:#4b5563}button,.ph-btn{color:#fff;background:#111827;border-color:#111827}button:hover:not(:disabled),.ph-btn:hover:not(:disabled),.ph-btn-primary:hover:not(:disabled),.login-form button:hover:not(:disabled){color:#fff;background:#374151;border-color:#374151}.ph-btn-primary,.setup-tabs button.active,.settings-tabs button.active,.lis-pricing-toggle button.active,.login-form button,.dashboard-actions .ph-btn-primary{color:#fff;background:#111827;border-color:#111827}.ph-btn-soft,.setup-tabs button,.settings-tabs button,.secondary-login{color:#111827;background:#fff;border-color:#d1d5db}.ph-btn-soft:hover:not(:disabled),.setup-tabs button:hover:not(:disabled),.settings-tabs button:hover:not(:disabled),.secondary-login:hover:not(:disabled){color:#111827;background:#f3f4f6;border-color:#9ca3af}button:disabled,.ph-btn:disabled{color:#9ca3af;background:#e5e7eb;border-color:#e5e7eb}.order-tabs-bar{background:#f3f4f6;border-color:#e5e7eb}.order-tab{color:#4b5563}.order-tab:hover{color:#111827}.order-tab.active{color:#fff;background:#111827;box-shadow:none}.order-tab-count{color:#111827;background:#e5e7eb}.order-tab.active .order-tab-count{color:#fff;background:#4b5563}.order-next-btn{color:#fff!important;background:#111827!important;border-color:#111827!important}.order-next-btn:hover:not(:disabled){background:#374151!important}.workspace-order .screen.order-screen{background:#f8f9fa}.workspace-order .order-pos .panel-head,.order-form.order-pos .panel-head{background:#fff}.order-pos .lis-grid label{color:#4b5563}.order-pos .lis-grid input,.order-pos .lis-grid select{border-color:#d1d5db}.order-pos .lis-grid input.patient-hn-input,.patient-info-hn input{background:#f3f4f6}.order-pos .exam-category summary{color:#111827}.lis-category-count{color:#374151;background:#e5e7eb}.pos-cat-menu-item.active{border-color:#9ca3af;background:#f3f4f6}.pos-cat-trigger.open{border-color:#6b7280;box-shadow:0 0 0 3px #4b55631f}.pos-cat-menu{border-color:#d1d5db}.pos-cat-menu-item:hover{background:#f9fafb}.pos-cat-menu-item.active .pos-cat-tab-body strong,.pos-cat-menu-item.active .pos-cat-tab-body em,.pos-cat-menu-check,.lis-test-selected{color:#111827}.pos-exam-tick,.pos-cart-label-count{color:#fff;background:#111827}.workspace-order .order-pos .pos-exam-card{color:#111827;background:#fff;border-color:#d1d5db;box-shadow:none}.workspace-order .order-pos .pos-exam-card:hover:not(:disabled){color:#111827;background:#f9fafb;border-color:#6b7280;box-shadow:none}.workspace-order .order-pos .pos-exam-card.selected,.workspace-order .order-pos .pos-exam-card.selected:hover:not(:disabled){color:#111827;background:#f3f4f6;border-color:#4b5563;box-shadow:inset 0 0 0 1px #4b5563}.workspace-order .order-pos .pos-exam-card.selected .pos-exam-name,.workspace-order .order-pos .pos-exam-card.selected .pos-exam-price{color:#111827}.workspace-order .order-pos .pos-exam-card .lis-exam-checkbox{border-color:#9ca3af}.workspace-order .order-pos .pos-exam-card.selected .lis-exam-checkbox,.workspace-order .pos-exam-icon.selected{color:#fff;background:#111827;border-color:#111827}.workspace-order .order-pos-cart{border-color:#d1d5db;background:#fff}.pos-cart-title-row{background:#fff;border-bottom:1px solid #e5e7eb}.pos-cart-title-row h3{color:#111827}.workspace-order .pos-cart-orderlist{border-color:#e5e7eb;background:#fff}.workspace-order .pos-cart-submit{color:#fff;background:#111827;border-color:#111827}.workspace-order .pos-cart-submit:hover:not(:disabled){background:#374151}.workspace-order .pos-cart-actions{background:#fff}.pos-cart-customer-avatar{color:#111827;background:#f3f4f6}.ph-kpi .ph-kpi-icon,.ph-kpi-blue .ph-kpi-icon,.ph-kpi-green .ph-kpi-icon,.ph-kpi-teal .ph-kpi-icon,.ph-kpi-amber .ph-kpi-icon,.ph-kpi-rose .ph-kpi-icon,.ph-kpi-indigo .ph-kpi-icon{color:#374151;background:#f3f4f6}.lis-kpi-blue,.lis-kpi-green,.lis-kpi-amber{background:#374151}.ph-icon-info{color:#374151;background:#f3f4f6;border-color:#d1d5db}.ph-icon-info:hover:not(:disabled){color:#fff;background:#374151;border-color:#374151}.login-hint b,.lis-mini-row b,.dashboard-actions svg,.lis-result-link{color:#111827}.exam-rank-row i{background:#4b5563}.phm-head{background:#111827}.phm-dot{background:#4b5563;border-color:#e5e7eb}.phm-file{color:#374151;background:#f3f4f6;border-color:#d1d5db}.phm-file:hover{color:#fff;background:#374151}.patient-card{color:#111827;background:#f3f4f6;border-color:#d1d5db}.report-sheet-subtitle,.report-sheet-section h5{color:#374151}.report-sheet-section h5{border-bottom-color:#d1d5db}.report-sheet-input:focus,.report-sheet-input:focus-visible,.inv-filter-select:focus{border-color:#6b7280;box-shadow:0 0 0 3px #4b55631f}.exam.active{color:#fff;background:#111827;border-color:#111827}.exam.active:after{color:#111827}.lis-status,.tag-ordered,.tag-checked-in,.tag-in-progress,.tag-reported,.tag-approved,.tag-cancelled,.tag-pay-paid,.tag-pay-unpaid,.tag-pay-refunded,.status-reported,.status-approved,.status-in-progress,.status-cancelled{color:#374151;background:#f3f4f6;border-color:#d1d5db}.lis-history-table th{color:#111827;background:#f3f4f6;border-bottom-color:#d1d5db}.lis-history-table tr:nth-child(2n){background:#f9fafb}.lis-history-table tr:hover{background:#f3f4f6}.lis-history-results,.lis-history-screen .history-filter{border-color:#e5e7eb}.dashboard-screen .lis-slot,.dashboard-screen .lis-mini-row,.dashboard-screen .lis-shift,.dashboard-screen .workload-strip span{color:#374151;background:#fff;border-color:#e5e7eb}.patient-card-avatar{border-color:#d1d5db}.patient-search-box .patient-hn-prefix{color:#374151}.lis-sidebar .sidebar-user button{color:#111827}.lis-upload-field{background:#f9fafb;border-color:#9ca3af}.inv-cat-consumables{color:#374151;background:#f3f4f6;border-color:#d1d5db}.lis-sidebar.expanded{width:240px}.app-shell:has(.lis-sidebar.expanded) .workspace{width:calc(100% - 240px);margin-left:240px}@media(max-width:640px){.lis-sidebar.expanded{width:100%}.workspace,.app-shell:has(.lis-sidebar.expanded) .workspace{width:100%;margin-left:0}}.ph-modal-full{position:relative}.ph-modal-full .ph-modal-head{position:absolute;top:0;right:0;z-index:2;min-height:0;padding:0;border:0;background:transparent}.ph-modal-full .ph-modal-head h3{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ph-modal-full .ph-modal-x{position:static;margin:14px 18px;border:1px solid #d1d5db;background:#fff}.report-hospital-letterhead{width:100%;margin:0 0 16px}.report-hospital-letterhead img{display:block;width:100%;height:auto}.report-modal-scroll .report-sheet{width:min(100%,210mm);min-height:297mm;padding:10mm 16mm 14mm;gap:0;color:#111;font-family:Noto Sans Lao,Arial,sans-serif}.report-document-meta{display:grid;justify-content:end;gap:2px;margin:0 0 12px;text-align:right;font-size:12px}.report-document-title{margin:0 0 10px;text-align:center;font-size:20px;font-weight:700}.report-document-patient{display:grid;gap:3px;margin-bottom:10px;font-size:13px;line-height:1.5}.report-document-line{display:flex;flex-wrap:wrap;gap:4px 18px;border-bottom:1px dotted #777;padding:1px 0 3px}.report-document-line>span:first-child{flex:1 1 290px}.report-document-line strong{font-weight:500}.report-document-box{border:1px solid #222;padding:12px 16px 18px;font-size:13px;line-height:1.5}.report-document-text{margin:0 0 8px;white-space:pre-wrap}.report-document-box h3{margin:10px 0 4px;color:#111;font-size:14px;font-weight:700}.report-document-box .report-sheet-input{min-height:210px;padding:4px 6px;border:1px solid transparent;background:#fff;color:#111;font-size:13px;box-shadow:none}.report-document-box .report-sheet-input:focus,.report-document-box .report-sheet-input:focus-visible{border-color:#555;outline:0;box-shadow:none}.report-document-box .result-file-list{margin-top:18px;padding-top:10px;border-top:1px solid #d4d4d4}.ph-modal-foot-full{padding:10px 24px;border-top:1px solid #d4d4d8;background:#f4f4f5}.report-modal-footer{width:min(100%,210mm);margin:0 auto}.report-hospital-signatures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px;width:100%;margin-top:auto;padding-top:32px}.report-hospital-signature{display:grid;gap:3px;color:#111;font-family:Noto Sans Lao,Arial,sans-serif;font-size:11px}.report-hospital-signature strong{margin-top:12px;text-align:center;font-size:11px;font-weight:500}.report-modal-actions{justify-content:flex-end}@media(max-width:760px){.ph-modal-full .ph-modal-x{margin:8px}.report-modal-scroll{padding-top:54px}.report-modal-scroll .report-sheet{min-height:900px;padding:12px 14px 24px}.report-document-line>span:first-child{flex-basis:180px}.report-document-box{padding:10px}.ph-modal-foot-full{padding:8px 12px}.report-hospital-signatures{gap:12px}.report-hospital-signature{font-size:9px}.report-modal-actions{justify-content:stretch}.report-modal-actions .ph-btn{flex:1;white-space:normal}}.report-workspace{display:grid;grid-template-columns:clamp(320px,27vw,470px) minmax(0,1fr);width:100%;height:100%;min-height:0}.report-editor-panel{min-width:0;overflow:auto;padding:24px 20px 32px;background:#fff;border-right:1px solid #d1d5db}.report-editor-heading{margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.report-editor-heading h2{margin:0 0 8px;color:#111827;font-size:18px}.report-editor-heading p{margin:0 0 4px;color:#111827;font-weight:600}.report-editor-heading small{color:#6b7280;line-height:1.5}.report-editor-label{display:block;margin-bottom:8px;color:#111827;font-weight:700}.report-editor-textarea{display:block;width:100%;min-height:350px;padding:12px;border:1px solid #9ca3af;border-radius:8px;background:#fff;color:#111827;font:inherit;line-height:1.6;resize:vertical}.report-editor-textarea:focus{outline:2px solid #374151;outline-offset:2px}.report-editor-files{margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.report-editor-files .result-file-row{display:flex;flex-wrap:wrap}.report-editor-files .result-file-row>span,.report-editor-files .result-file-row>small{flex:1 1 100%}.report-preview-panel{display:flex;flex-direction:column;min-width:0;min-height:0;background:#e5e7eb}.report-preview-heading{flex:0 0 auto;padding:18px 64px 12px 22px;color:#374151;font-size:13px}.report-preview-frame{display:block;flex:1 1 auto;width:100%;min-height:0;border:0;background:#e5e7eb}.report-modal-footer{width:100%}@media(max-width:900px){.report-workspace{display:block;overflow:auto}.report-editor-panel{overflow:visible;border-right:0;border-bottom:1px solid #d1d5db}.report-preview-panel{height:75vh;min-height:540px}}.ph-modal-full .ph-modal-head{position:relative;inset:auto;width:100%;display:block;min-height:0;padding:0;background:#fff}.ph-modal-full .ph-modal-head-content{width:100%}.ph-modal-full .ph-modal-x{position:absolute;top:4px;right:8px;z-index:3;margin:0;width:31px;height:29px}.report-shell-head{padding:0}.report-shell-topline{display:flex;align-items:center;gap:16px;min-height:54px;padding:6px 52px 6px 15px}.report-shell-title{flex:1 1 auto;min-width:max-content;color:#111;font-size:17px;font-weight:700}.report-shell-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:6px}.report-shell-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:6px 12px;border:1px solid #c5d1dc;border-radius:6px;background:#fff;color:#1b3857;font:inherit;font-weight:700;cursor:pointer}.report-shell-button.primary{border-color:#087e8b;background:#087e8b;color:#fff}.report-shell-button:disabled{opacity:.5;cursor:not-allowed}.report-shell-tabs{display:flex;gap:25px;min-height:47px;padding:0 20px;border-bottom:1px solid #dce3eb;background:#fff;color:#64748b;font-weight:700}.report-shell-tabs span{display:flex;align-items:center;padding:9px 3px}.report-shell-tabs .active{border-bottom:3px solid #1263a3;color:#1263a3}.report-shell-notice,.report-shell-unsaved{padding:8px 18px;font-size:13px}.report-shell-notice{border-bottom:1px solid #abe2ca;background:#eafaf2;color:#176449}.report-shell-unsaved{border-bottom:1px solid #f1d690;background:#fff8e5;color:#8a4b13}@media(max-width:900px){.report-shell-topline{align-items:flex-start;flex-wrap:wrap;gap:8px;padding-right:48px}.report-shell-title{flex-basis:100%;min-width:0}.report-shell-actions{justify-content:flex-start}}.result-files-manager{display:flex;flex-direction:column;gap:16px;min-height:320px}.result-manager-order{display:grid;gap:3px;padding:12px 14px;border:1px solid #dfe4ea;border-radius:8px;background:#f8fafc}.result-manager-order strong{color:#111827;font-size:16px}.result-manager-order span,.result-manager-order small{color:#64748b}.result-manager-upload{display:flex;align-items:center;gap:12px;padding:14px;border:1px dashed #9ca3af;border-radius:8px;background:#fafafa}.result-manager-upload>span{color:#64748b;font-size:13px}.result-manager-list{display:grid;gap:8px}.result-manager-row{display:grid;grid-template-columns:22px minmax(140px,1fr) auto auto auto;align-items:center;gap:10px;padding:10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#475569}.result-manager-file-meta{display:grid;min-width:0;gap:3px}.result-manager-file-meta strong{overflow:hidden;color:#111827;text-overflow:ellipsis;white-space:nowrap}.result-manager-file-meta span{color:#64748b;font-size:11px}.result-manager-empty{margin:0;padding:30px 16px;border:1px dashed #d1d5db;border-radius:8px;color:#64748b;text-align:center}.result-file-preview{display:flex;flex-direction:column;gap:12px;min-height:65vh}.result-file-preview-toolbar{display:flex;justify-content:space-between;gap:8px}.result-file-preview-canvas{display:grid;flex:1;min-height:60vh;place-items:center;overflow:hidden;border:1px solid #e5e7eb;border-radius:8px;background:#f1f5f9}.result-file-preview-canvas iframe{width:100%;height:68vh;border:0;background:#fff}.result-file-preview-canvas img{display:block;max-width:100%;max-height:68vh;object-fit:contain}.result-file-text-preview{width:100%;height:68vh;margin:0;padding:18px;overflow:auto;background:#fff;color:#111827;white-space:pre-wrap;overflow-wrap:anywhere}.result-file-preview-unavailable{display:grid;justify-items:center;gap:10px;padding:28px;color:#64748b;text-align:center}.result-file-preview-unavailable strong{color:#334155}@media(max-width:760px){.result-manager-upload{align-items:flex-start;flex-direction:column}.result-manager-row{display:flex;flex-wrap:wrap}.result-manager-file-meta{flex:1 1 calc(100% - 34px)}}.workspace-order .order-pos .pos-exam-list{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;padding-top:4px}.workspace-order .order-pos .exam-category{display:block;flex:0 0 auto;margin:0}.workspace-order .order-pos .exam-category summary{min-height:36px;padding:8px 10px;margin-bottom:8px;background:#f5f7fa;border-radius:8px;font-weight:600}.workspace-order .order-pos .pos-exam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(0,170px));justify-content:start;align-content:start;align-items:stretch;gap:8px;margin:0}.workspace-order .order-pos .pos-exam-card{display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:minmax(2.3em,auto) auto;align-items:center;align-content:center;min-height:56px;column-gap:7px;row-gap:0;padding:6px 8px;border-radius:10px}.workspace-order .order-pos .pos-exam-card .pos-exam-icon{grid-column:1;grid-row:1 / 3;width:30px;height:30px}.workspace-order .order-pos .pos-exam-card .pos-exam-name{display:-webkit-box;grid-column:2;grid-row:1;min-height:2.3em;font-size:12.5px;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.workspace-order .order-pos .pos-exam-card .pos-exam-price{grid-column:2;grid-row:2;align-self:start;text-align:left;font-size:12px;line-height:1.25;white-space:nowrap;font-variant-numeric:tabular-nums}.workspace-order .pos-exam-card:focus-visible{outline:2px solid #0f8278;outline-offset:2px}@media(max-width:380px){.workspace-order .order-pos .pos-exam-grid{grid-template-columns:minmax(0,170px)}}.patient-suggestions.patient-picker-floating{position:fixed;z-index:10000;right:auto;min-width:0;box-sizing:border-box}.dashboard-details{display:grid;gap:16px;margin-bottom:16px}.dashboard-money-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-money-grid article,.dashboard-status-grid article{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:14px;display:grid;gap:8px}.dashboard-money-grid strong{font-size:20px;font-variant-numeric:tabular-nums}.dashboard-status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.dashboard-status-grid strong{font-size:24px}.dashboard-test-filters{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.dashboard-test-filters input{flex:1;min-width:180px}.dashboard-test-filters select{min-width:180px}.dashboard-table-scroll{overflow:auto;max-height:420px}.dashboard-test-table{width:100%;border-collapse:collapse;font-size:13px}.dashboard-test-table th{position:sticky;top:0;background:#f8fafc;z-index:1}.dashboard-test-table td,.dashboard-test-table th{text-align:right;padding:12px;border-bottom:1px solid #e5e7eb;white-space:nowrap;font-variant-numeric:tabular-nums}.dashboard-test-table td:first-child,.dashboard-test-table th:first-child,.dashboard-test-table td:nth-child(2),.dashboard-test-table th:nth-child(2){text-align:left}.dashboard-test-table td:first-child{min-width:200px;white-space:normal}.dashboard-test-table small{display:block;color:#64748b;margin-top:3px}.dashboard-test-table tbody tr:hover{background:#f8fafc}.dashboard-details .muted{font-size:12px;line-height:1.6;margin-top:12px}@media(max-width:900px){.dashboard-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-money-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.dashboard-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-money-grid strong{font-size:17px}}.lis-reference-dashboard{color:#163e59}.lis-reference-dashboard .ops-header{border-bottom:2px solid #1c6699;padding-bottom:18px;margin-bottom:16px}.lis-reference-dashboard .ops-header h2{color:#163e59;font-size:28px}.lis-reference-dashboard .ops-btn-primary{background:#163e59}.lis-reference-dashboard .dashboard-overview-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;padding:14px;margin-bottom:18px;border:1px solid #dce6ed;border-radius:10px;background:#fff}.lis-reference-dashboard .dashboard-overview-filters select{width:100%;min-width:0;height:42px;padding:8px 12px;background:#f8fbfd;border:1px solid #d3e0eb;border-radius:6px}.lis-reference-dashboard .ops-kpi{border-color:#d3e0eb;border-radius:10px;padding:18px}.lis-reference-dashboard .ops-kpi:before{background:#1c6699}.lis-reference-dashboard .ops-kpi-value{color:#163e59}.lis-reference-dashboard .lis-panel{border:1px solid #d3e0eb;border-radius:10px;box-shadow:0 2px 5px #163e5905;padding:18px}.lis-reference-dashboard .lis-panel-head{border-color:#dce6ed}.lis-reference-dashboard .lis-panel-head h3{color:#163e59;font-size:14px}.lis-reference-dashboard .lis-donut-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.lis-reference-dashboard .lis-shift{background:#f5f9fc;border-color:#dce6ed;border-radius:6px;padding:14px 18px}.lis-reference-dashboard .lis-lower-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:14px}.lis-reference-dashboard .dashboard-money-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.lis-reference-dashboard .dashboard-status-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.lis-reference-dashboard .dashboard-test-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.lis-reference-dashboard .dashboard-test-filters select{width:100%;min-width:0}.lis-reference-dashboard .dashboard-test-table thead{background:#eaf3f8;color:#163e59}.lis-reference-dashboard .dashboard-test-table tfoot{background:#eaf3f8}@media(max-width:1100px){.lis-reference-dashboard .lis-donut-row,.lis-reference-dashboard .dashboard-overview-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.lis-reference-dashboard .dashboard-overview-filters,.lis-reference-dashboard .dashboard-test-filters,.lis-reference-dashboard .lis-donut-row{grid-template-columns:1fr}.lis-reference-dashboard .ops-header h2{font-size:23px}}.result-written-report{display:grid;gap:12px;margin:16px 0}.result-written-report textarea{width:100%;min-height:220px;resize:vertical;padding:14px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;line-height:1.7}.result-entry-button{white-space:nowrap;min-width:125px}.lis-history-actions:has(.result-entry-button){flex-wrap:wrap;min-width:215px}.report-restored-workspace{display:grid;grid-template-columns:clamp(330px,27vw,470px) minmax(0,1fr);width:100%;flex:1 1 0;min-width:0;min-height:0;height:100%}.report-restored-workspace .result-files-manager>*{flex-shrink:0}.report-restored-workspace .result-manager-upload{flex-wrap:wrap}.report-restored-workspace .result-manager-row{display:flex;flex-wrap:wrap}.report-restored-workspace .result-manager-file-meta{flex:1 1 calc(100% - 40px)}.report-restored-workspace .report-preview-frame{min-height:650px}@media(max-width:900px){.report-restored-workspace{grid-template-columns:1fr;height:100%;overflow:auto}}.ph-modal-full:has(.report-restored-workspace) .ph-modal-head{flex:0 0 auto;min-height:58px;padding:12px 64px 12px 20px;border-bottom:1px solid #e2e8f0}.report-dialog-title{display:flex;align-items:center;gap:10px;color:#163e59}.report-dialog-title span{margin-left:12px;color:#64748b;font-size:12px}.ph-modal-full:has(.report-restored-workspace) .ph-modal-x{top:12px;right:16px}.report-restored-workspace{height:auto;align-items:stretch;overflow:hidden}.report-restored-workspace .report-editor-panel{padding:20px;overflow-x:hidden;overflow-y:auto}.report-restored-workspace .result-manager-order{overflow-wrap:anywhere}.report-restored-workspace .result-written-report{margin:0}.report-restored-workspace .result-written-report textarea{min-height:240px;max-height:50vh}.report-restored-workspace .ph-action-row{display:flex;flex-wrap:wrap;gap:8px}.report-restored-workspace .ph-action-row .ph-btn{flex:1 1 160px;justify-content:center}.report-restored-workspace .result-manager-upload{display:grid;gap:10px}.report-restored-workspace .result-manager-upload>button{justify-self:start}.report-restored-workspace .result-manager-upload>span{line-height:1.65}.report-restored-workspace .result-manager-row{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;padding:12px}.report-restored-workspace .result-manager-file-meta{min-width:0}.report-restored-workspace .result-manager-file-meta strong{white-space:normal;overflow-wrap:anywhere}.report-restored-workspace .result-manager-file-meta span{overflow-wrap:anywhere;line-height:1.6}.report-restored-workspace .result-manager-row>button{grid-column:2;justify-self:start}.report-restored-workspace .report-preview-heading{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 20px;border-bottom:1px solid #d1d5db}.report-restored-workspace .report-preview-frame{min-height:0;height:100%}@media(max-width:900px){.report-restored-workspace{overflow-y:auto;grid-template-rows:max-content minmax(540px,75vh)}.report-restored-workspace .report-editor-panel{overflow:visible}.report-dialog-title{flex-wrap:wrap;gap:6px}.report-dialog-title span{flex-basis:100%;margin-left:30px}}.report-restored-workspace .result-manager-file-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.rich-report-editor{border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;background:#fff}.rich-report-toolbar{display:flex;flex-wrap:wrap;gap:6px;padding:10px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.rich-report-toolbar button,.rich-report-toolbar select{min-height:32px;border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#163e59;padding:4px 8px;font:inherit;font-size:12px}.rich-report-toolbar label{display:flex;align-items:center;gap:4px;font-size:12px}.rich-report-toolbar input[type=color]{width:32px;height:32px;padding:2px;border:1px solid #cbd5e1}.rich-report-toolbar button{cursor:pointer}.rich-report-content{min-height:280px;padding:14px;line-height:1.7;overflow-wrap:anywhere;outline:none}.rich-report-content:focus{box-shadow:inset 0 0 0 2px #93c5fd}.rich-report-content p{margin:0 0 8px}.rich-report-content[contenteditable=false]{background:#f8fafc;color:#64748b}.rich-report-editor.tiptap-report-editor .rich-report-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:7px;padding:8px}.tiptap-report-editor .rich-report-toolbar-group{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-width:0}.rich-report-editor.tiptap-report-editor .rich-report-toolbar select{width:auto;min-width:0;max-width:100%;height:32px;min-height:32px;margin:0;padding:4px 6px;flex:0 1 auto;font-size:12px}.rich-report-editor.tiptap-report-editor .rich-report-toolbar select[aria-label=Font]{width:140px}.rich-report-editor.tiptap-report-editor .rich-report-toolbar select[aria-label="Font size"]{width:72px}.rich-report-editor.tiptap-report-editor .rich-report-toolbar select[aria-label="Line spacing"]{width:68px}.tiptap-report-editor .rich-report-toolbar button{display:grid;place-items:center;width:30px;min-width:30px;height:30px;min-height:30px;padding:0;border-color:transparent;background:transparent}.tiptap-report-editor .rich-report-toolbar button:hover:not(:disabled){background:#e2e8f0}.tiptap-report-editor .rich-report-toolbar button.is-active{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.tiptap-report-editor .rich-report-toolbar button:disabled{opacity:.35;cursor:default}.tiptap-report-editor .rich-report-toolbar label{position:relative;height:30px;margin:0}.tiptap-report-editor .rich-report-toolbar label span{font-weight:700}.tiptap-report-editor .rich-report-toolbar input[type=color]{width:24px;height:26px;min-height:0;border:0;padding:0;background:transparent}.tiptap-report-editor .rich-report-content{font-family:Noto Sans Lao,Arial,sans-serif;font-size:12pt;min-height:280px}.tiptap-report-editor .rich-report-content p.is-editor-empty:first-child:before{color:#94a3b8;content:attr(data-placeholder);float:left;height:0;pointer-events:none}.tiptap-report-editor .rich-report-content ul{list-style:disc;padding-left:24px}.tiptap-report-editor .rich-report-content ol{list-style:decimal;padding-left:24px}@media(min-width:901px){.report-restored-workspace{grid-template-columns:clamp(360px,34vw,560px) minmax(0,1fr)}}.tiptap-report-editor .rich-report-buttons{gap:4px}.tiptap-report-editor .rich-report-toolbar .rich-report-buttons button{width:28px;min-width:28px}@font-face{font-family:Phetsarath OT;src:url(/fonts/phetsarath-ot-regular.ttf) format("truetype");font-style:normal;font-weight:400}@font-face{font-family:Phetsarath OT;src:url(/fonts/phetsarath-ot-bold.ttf) format("truetype");font-style:normal;font-weight:700}.report-patient-fields{border:0;padding:0;margin:8px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.report-patient-fields label{display:flex;flex-direction:column;gap:4px;font-size:12px;min-width:0}.report-patient-fields input,.report-patient-fields select,.report-patient-fields textarea{width:100%;min-width:0;box-sizing:border-box;padding:8px;border:1px solid #c8d5e5;border-radius:6px;background:#fff;color:#163a54;font:inherit;font-size:14px}.report-patient-fields textarea{resize:vertical}.report-patient-wide{grid-column:1 / -1}@media(max-width:480px){.report-patient-fields{grid-template-columns:minmax(0,1fr)}}@media(min-width:901px){.ph-modal-full:has(.report-restored-workspace) .ph-modal-head{min-height:48px;padding:8px 60px 8px 14px}.report-restored-workspace .report-editor-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto minmax(0,82px);gap:8px;padding:10px;min-height:0;overflow:hidden}.report-restored-workspace .result-manager-order{padding:8px 10px;gap:2px}.report-restored-workspace .result-manager-order>strong{font-size:14px}.report-restored-workspace .result-manager-order>small{font-size:10px;line-height:1.3}.report-restored-workspace .report-patient-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 8px;margin:4px 0}.report-restored-workspace .report-patient-fields label{gap:2px;font-size:10px;line-height:1.4}.report-restored-workspace .report-patient-fields label:nth-child(1),.report-restored-workspace .report-patient-fields label:nth-child(2),.report-restored-workspace .report-patient-wide{grid-column:span 2}.report-restored-workspace .report-patient-fields input,.report-restored-workspace .report-patient-fields select{height:30px;min-height:30px;padding:3px 6px;font-size:12px;font-weight:400}.report-restored-workspace .report-patient-fields textarea{height:36px;min-height:36px;padding:3px 6px;font-size:12px;line-height:1.4;resize:none}.report-restored-workspace .result-written-report{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:6px;min-height:0}.report-restored-workspace .result-written-report>label{font-size:12px;margin:0}.report-restored-workspace .rich-report-editor{display:flex;flex-direction:column;min-height:0}.report-restored-workspace .rich-report-toolbar{flex:none;padding:5px;gap:3px}.report-restored-workspace .rich-report-editor>.tiptap{flex:1;min-height:0}.report-restored-workspace .rich-report-editor>div:last-child:not(.rich-report-toolbar){flex:1;min-height:0;overflow:auto}.report-restored-workspace .tiptap-report-editor .rich-report-content{min-height:100%;padding:8px 10px}.report-restored-workspace .ph-action-row{margin:0;gap:6px;flex-wrap:nowrap}.report-restored-workspace .ph-action-row .ph-btn{min-height:34px;height:34px;padding:5px 8px;font-size:12px;flex:1}.report-restored-workspace .result-manager-upload{display:flex;flex-wrap:nowrap;padding:6px 8px;gap:8px}.report-restored-workspace .result-manager-upload>button{flex:none;min-height:32px;padding:5px 8px;font-size:12px}.report-restored-workspace .result-manager-upload>span{font-size:10px;line-height:1.35}.report-restored-workspace .result-manager-list{display:block;overflow:auto;min-height:0}.report-restored-workspace .result-manager-row{padding:6px 8px;gap:3px 6px;margin-bottom:4px}.report-restored-workspace .result-manager-file-meta strong{font-size:11px}.report-restored-workspace .result-manager-file-meta span{font-size:10px}.report-restored-workspace .result-manager-file-actions{gap:5px;padding-top:0}.report-restored-workspace .result-manager-file-actions .ph-btn{min-height:26px;padding:3px 7px;font-size:11px}.report-restored-workspace .result-manager-empty{margin:0;padding:6px;font-size:11px}.report-restored-workspace .report-editor-panel:has(.result-file-preview){grid-template-rows:minmax(0,1fr)}}.image-layout-manager{padding:12px;width:100%}.image-layout-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:12px}.image-layout-pages{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.image-layout-card{border:1px solid #cbd5e1;border-radius:8px;padding:10px;background:#f8fafc;min-width:0}.image-layout-card header{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px;font-size:12px}.image-layout-card header select{width:90px;min-height:28px;padding:3px}.image-layout-card header button{padding:3px 6px;border:1px solid #cbd5e1;border-radius:4px}.image-layout-paper{aspect-ratio:210/250;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);gap:8px;background:#fff;padding:8px;border:1px solid #cbd5e1}.image-layout-paper.layout-2{grid-template-rows:repeat(2,minmax(0,1fr))}.image-layout-paper.layout-3,.image-layout-paper.layout-4{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.image-layout-paper.layout-3 .image-layout-slot:first-child{grid-column:1 / -1}.image-layout-slot{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:0;min-width:0;border:1px dashed #cbd5e1;padding:4px}.image-layout-slot img{object-fit:contain;width:100%;height:0;flex:1;min-height:0}.image-layout-slot select{width:100%;min-height:26px;padding:3px;font-size:10px;flex:none}@media(max-width:600px){.image-layout-pages{grid-template-columns:1fr}.image-layout-tools{flex-wrap:wrap}}.image-slot-viewport{width:100%;flex:1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.image-layout-slot .image-slot-viewport img{width:100%;height:100%;flex:none;object-fit:contain}.image-slot-actions{display:flex;gap:4px;flex-wrap:wrap;font-size:10px}.image-slot-actions button{padding:3px 5px;border:1px solid #cbd5e1;border-radius:4px}.image-tools-editor{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:14px;padding:14px;width:100%}.image-tools-stage{min-height:300px;height:min(60vh,560px);overflow:hidden;border:1px solid #cbd5e1;background:repeating-conic-gradient(#f1f5f9,#f1f5f9 25%,#fff 0%,#fff 50%) 0/20px 20px;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:grab}.image-tools-stage img{width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.image-tools-controls{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;min-width:0}.image-tools-controls label{font-size:12px;display:block}.image-tools-controls output{float:right}.image-tools-controls input{width:100%;min-height:0;padding:0}.image-tools-controls button{padding:5px 8px;border:1px solid #cbd5e1;border-radius:5px;margin-right:4px}.image-tools-controls small{font-size:11px;color:#64748b}@media(max-width:650px){.image-tools-editor{grid-template-columns:1fr}.image-tools-stage{height:35vh;min-height:200px}}.ph-modal-full:has(.image-layout-manager,.image-tools-editor) .ph-modal-head{min-height:52px;padding:10px 64px 10px 16px}.ph-modal-full:has(.image-layout-manager,.image-tools-editor) .ph-modal-body{overflow:hidden}.ph-modal-full .image-layout-manager{display:flex;flex-direction:column;min-height:0;padding:12px 16px}.ph-modal-full .image-layout-tools{flex:none;padding:6px 0}.image-layout-main-actions{display:flex;gap:8px;align-items:center}.ph-modal-full .image-layout-pages{flex:1;min-height:0;overflow:auto;align-content:start;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.image-layout-slot .image-slot-actions{flex:none;width:100%}.ph-modal-full .image-layout-card>header{position:sticky;top:0;z-index:1;padding:5px 0;background:#f8fafc}.ph-modal-full .image-tools-editor{height:100%;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;overflow:auto}.ph-modal-full .image-tools-controls{grid-row:1;display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:6px 12px}.ph-modal-full .image-tools-controls>div,.ph-modal-full .image-tools-controls>small{grid-column:1 / -1}.ph-modal-full .image-tools-stage{grid-row:2;height:100%;min-height:160px}.ph-modal-full .image-tools-editor>button{grid-row:3;justify-self:start}@media(max-width:900px){.ph-modal-full .image-tools-controls{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:600px){.ph-modal-full .image-layout-pages{grid-template-columns:minmax(0,1fr)}.ph-modal-full .image-tools-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.image-layout-main-actions{flex-wrap:wrap}}.image-layout-title{display:flex;align-items:center;gap:16px}.image-layout-title .ph-btn{min-height:30px;padding:4px 10px;font-size:12px}.ph-modal-full .image-layout-manager{padding:4px 12px 0;gap:6px}.ph-modal-full .image-layout-pages{display:flex;flex-direction:column;align-items:center;gap:18px;background:#eef1f5;padding:10px}.ph-modal-full .image-layout-card{width:min(100%,620px);flex:none;scroll-margin-top:10px}.image-page-strip{display:flex;gap:8px;flex:none;overflow-x:auto;padding:6px 4px;background:#f8fafc}.image-page-thumb,.image-page-add{flex:none;border:1px solid #cbd5e1;border-radius:6px;background:#fff;padding:4px;width:64px;height:82px;font-size:11px;color:#334155}.image-page-thumb.is-active{border:2px solid #6366f1;background:#eef2ff}.image-thumb-paper{height:56px;display:grid;gap:2px;grid-template-columns:1fr;background:#e2e8f0}.image-thumb-paper.layout-2{grid-template-rows:repeat(2,minmax(0,1fr))}.image-thumb-paper.layout-3,.image-thumb-paper.layout-4{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.image-thumb-paper.layout-3>span:first-child{grid-column:1 / -1}.image-thumb-paper>span{min-height:0;overflow:hidden;background:#fff}.image-thumb-paper img{width:100%;height:100%;object-fit:contain}.image-page-add{font-size:30px;background:#e2e8f0}.report-dialog-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.report-header-actions{display:flex;gap:6px;align-items:center}.report-header-actions .ph-btn{min-height:32px;padding:5px 10px;font-size:12px}.report-restored-workspace .result-written-report{grid-template-rows:auto minmax(0,1fr)}@media(max-width:700px){.report-dialog-header,.report-header-actions{flex-wrap:wrap}}.lis-style-history .lis-history-table{min-width:1200px;font-size:12px}.lis-style-history .lis-history-table th{background:#f8fafc;color:#475569;padding:8px;white-space:nowrap}.lis-style-history .lis-history-table td{padding:7px 8px;border-bottom:1px solid #e5edf5}.lis-style-history .lis-history-table tbody tr:nth-child(2n){background:#fff}.lis-style-history .lis-history-table small{font-size:10px}.lis-style-history .history-hn{color:#0068b7}.lis-style-history .lis-history-actions{gap:4px;flex-wrap:nowrap}.lis-style-history .ph-icon-btn,.history-cloud-button{width:32px;height:32px;min-height:32px;border-radius:3px;padding:5px}.history-cloud-button{display:flex;align-items:center;justify-content:center;border:1px solid #00a978;color:#fff;background:#00b985;position:relative}.history-pdf-badge{position:absolute;right:-5px;top:-9px;min-width:17px;height:17px;border-radius:50%;color:#00a978;background:#e6fff6;border:1px solid #8be9ce;font-size:11px}.history-blue-button{color:#009de0;border:1px solid #38bdf8;background:#f0faff}.lis-style-history .history-filter{display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding:12px}.lis-style-history .history-filter .ph-search-input{flex:1;min-width:220px}.lis-style-history .history-filter input,.lis-style-history .history-filter select{min-height:34px}.ph-modal-full:has(.pdf-results-viewer) .ph-modal-head{min-height:58px;padding:12px 64px 12px 20px}.pdf-results-viewer{width:100%;height:100%;min-height:0;display:flex;flex-direction:column;gap:8px;padding:12px 20px;overflow:auto}.pdf-results-viewer>p{margin:0;flex:none}.pdf-results-viewer .result-file-item{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.pdf-results-viewer .result-file-item strong{overflow-wrap:anywhere}.pdf-results-frame{width:100%;flex:1 0 240px;min-height:240px;border:1px solid #dbe5f0}.workspace-order .order-pos .pos-exam-grid{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}@media(max-width:1100px){.workspace-order .order-pos .pos-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.workspace-order .order-pos .pos-exam-grid{grid-template-columns:minmax(0,1fr)}}.permission-editor{grid-column:1 / -1;overflow-x:auto}.permission-editor table{width:100%;border-collapse:collapse}.permission-editor th,.permission-editor td{padding:8px;border-bottom:1px solid #e5e7eb;text-align:center}.permission-editor th:first-child{text-align:left}.permission-editor input[type=checkbox]{width:18px;min-height:18px;height:18px}.settings-access{border:0;padding:0;margin:0;min-width:0}.offline-status{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #cbd5e1;border-radius:10px;background:#eff6ff;padding:10px 14px;margin-bottom:12px}.offline-status div{display:grid;gap:3px;min-width:0}.offline-status span{font-size:12px;color:#475569}.offline-status.is-offline{background:#fff7ed;border-color:#fdba74}.workspace-order>.offline-status{flex-shrink:0}@media(max-width:640px){.offline-status{flex-wrap:wrap}}.lis-sidebar .sidebar-brand{position:relative}.lis-sidebar .sidebar-brand>.sync-indicator{margin-left:auto;flex:0 0 auto}.sync-indicator summary{list-style:none}.sync-indicator summary::-webkit-details-marker{display:none}.sync-icon-button{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;background:#f8fafc}.lis-sidebar .sidebar-brand .sync-icon-button svg{width:20px;height:20px;padding:0;background:transparent;border-radius:0}.lis-sidebar .sidebar-brand .sync-online svg{color:#059669}.lis-sidebar .sidebar-brand .sync-offline svg,.lis-sidebar .sidebar-brand .sync-error svg{color:#dc2626}.lis-sidebar .sidebar-brand .sync-pending svg{color:#d97706}.lis-sidebar .sidebar-brand .sync-syncing svg{color:#2563eb}.sync-icon-button:focus-visible{outline:2px solid #2563eb;outline-offset:3px}.sync-count{position:absolute;right:-5px;top:-6px;min-width:16px;padding:1px 3px;border-radius:9px;background:#d97706;color:#fff;font-size:10px;text-align:center}.sync-indicator>.offline-status{position:absolute;z-index:100;top:calc(100% + 8px);left:0;width:268px;max-width:calc(100vw - 32px);box-sizing:border-box;display:grid;gap:12px;margin:0;box-shadow:0 8px 24px #0f172a26}.lis-sidebar .sidebar-brand .offline-status span{display:block;white-space:normal;color:#475569}.sync-icon-spinning{animation:sync-icon-spin 1s linear infinite}@keyframes sync-icon-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.sync-icon-spinning{animation:none}}.lis-sidebar .sidebar-brand .sync-icon-button{width:36px;min-width:36px;height:36px;min-height:36px;padding:0;flex:none}.lis-sidebar .sidebar-brand .sync-online .sync-icon-button{color:#059669;background:#ecfdf5;border-color:#a7f3d0}.lis-sidebar .sidebar-brand .sync-offline .sync-icon-button{color:#dc2626;background:#fef2f2;border-color:#fecaca}.user-table-scroll{overflow-x:auto;margin-top:16px}.user-management-table{width:100%;border-collapse:collapse}.user-management-table th,.user-management-table td{text-align:left;padding:12px;border-bottom:1px solid #e2e8f0}.user-management-table th{background:#f8fafc}.user-switch{border:1px solid #cbd5e1;border-radius:20px;padding:5px 14px;background:#f1f5f9;color:#64748b;cursor:pointer}.user-switch.active{background:#dcfce7;color:#15803d;border-color:#86efac}.audit-json{white-space:pre-wrap;overflow-wrap:anywhere;max-height:40vh;overflow:auto;background:#f8fafc;padding:12px}.settings-shell{display:flex;flex-direction:column;align-items:stretch;gap:18px;min-width:0}.settings-shell>.settings-tabs{position:static;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;min-width:0;box-sizing:border-box;overflow-x:auto;padding:10px;scrollbar-width:thin}.settings-shell .settings-tabs-title{display:none}.settings-shell .settings-tabs button{flex:0 0 auto;width:auto;min-width:0;white-space:nowrap;justify-content:center;padding:10px 14px}.settings-shell .settings-tab-count:empty{display:none}.settings-shell>.settings-content{width:100%;min-width:0}@media(max-width:640px){.settings-shell>.settings-tabs{gap:6px;padding:8px}.settings-shell .settings-tabs button{padding:9px 11px}}.account-toggle{display:inline-flex;align-items:center;gap:9px;border:0;background:transparent;padding:4px;cursor:pointer;color:#64748b}.account-toggle-track{display:block;width:40px;height:24px;border-radius:20px;background:#cbd5e1;padding:3px;box-sizing:border-box}.account-toggle-track>span{display:block;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .15s}.account-toggle.active{color:#15803d}.account-toggle.active .account-toggle-track{background:#16a34a}.account-toggle.active .account-toggle-track>span{transform:translate(16px)}.account-toggle:disabled{opacity:.5;cursor:not-allowed}.account-toggle:focus-visible{outline:2px solid #2563eb;outline-offset:3px;border-radius:6px}.ph-form-grid.user-account-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.user-account-form label{font-size:13px;gap:5px}.user-account-form input:not([type=checkbox]),.user-account-form select{min-height:38px;height:38px;padding:7px 10px;font-size:14px}.user-account-form .user-account-active{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px}.user-account-form .user-account-active input{width:18px;height:18px;min-height:18px;margin:0}.user-account-note{grid-column:1/-1;font-size:12px;margin:0;color:#64748b}.user-account-form .permission-editor h4{margin:4px 0 8px}.user-account-form .permission-editor th,.user-account-form .permission-editor td{padding:6px;font-size:12px}.initial-password form{display:grid;gap:12px}.initial-password label{display:grid;gap:5px}.initial-password input{min-height:40px;width:100%}@media(max-width:520px){.ph-form-grid.user-account-form{grid-template-columns:minmax(0,1fr)}}.lis-style-history .lis-history-actions .ph-icon-btn,.lis-style-history .lis-history-actions .history-cloud-button{color:#111827;background:#fff;border:1px solid #d1d5db;box-shadow:none}.lis-style-history .lis-history-actions .ph-icon-btn:hover,.lis-style-history .lis-history-actions .history-cloud-button:hover{color:#111827;background:#f3f4f6;border-color:#9ca3af}.lis-style-history .lis-history-actions button svg{color:currentColor}.lis-style-history .history-pdf-badge{color:#dc2626;background:#fff;border-color:#d1d5db;font-weight:700}.image-layout-paper.layout-5,.image-layout-paper.layout-6,.image-thumb-paper.layout-5,.image-thumb-paper.layout-6{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.rich-report-content [data-report-page-break]{border-top:2px dashed #94a3b8;margin:20px 0;padding:6px;text-align:center;color:#64748b;font-size:12px}.report-page-remove-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid #dbe3ed}.report-page-remove-controls small{color:#64748b}
