html{background:#f3f7fb}body{min-width:320px;min-height:100vh}.login-page{background:var(--color-bg,#f4f5f7);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background:#fff;border-radius:8px;width:100%;max-width:400px;padding:2.5rem 2rem;box-shadow:0 2px 12px #0000001a}.login-brand{text-align:center;margin-bottom:1.75rem}.login-brand-mark{background:var(--color-primary,#2563eb);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:.5rem;font-size:1.25rem;font-weight:700;display:inline-flex}.login-brand-name{margin:0 0 .125rem;font-size:1.25rem;font-weight:700}.login-brand-subtitle{color:var(--color-text-secondary,#6b7280);margin:0;font-size:.8125rem}.login-title{text-align:center;margin:0 0 1.25rem;font-size:1.125rem;font-weight:600}.login-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:1rem;padding:.625rem .875rem;font-size:.875rem}.login-form{flex-direction:column;gap:1rem;display:flex}.login-field{flex-direction:column;gap:.375rem;display:flex}.login-label{color:var(--color-text,#111827);font-size:.875rem;font-weight:500}.login-input{border:1px solid var(--color-border,#d1d5db);box-sizing:border-box;border-radius:6px;outline:none;width:100%;padding:.5rem .75rem;font-size:.9375rem;line-height:1.5;transition:border-color .15s}.login-input:focus{border-color:var(--color-primary,#2563eb);box-shadow:0 0 0 2px #2563eb26}.login-input:disabled{color:#9ca3af;background:#f9fafb}.login-submit{justify-content:center;width:100%;margin-top:.5rem}.auth-loading{min-height:200px;color:var(--color-text-secondary,#6b7280);justify-content:center;align-items:center;font-size:.9375rem;display:flex}.login-system-notice{border-radius:6px;margin-bottom:1rem;padding:1rem 1.125rem;font-size:.875rem}.login-system-notice h2{margin:0 0 .375rem;font-size:1rem;font-weight:600}.login-system-notice p{margin:0;line-height:1.5}.login-system-notice--setup{color:#713f12;background:#fef9c3;border:1px solid #fde047}.login-system-notice--pending{color:#1e3a8a;background:#eff6ff;border:1px solid #93c5fd}.login-system-notice--success{color:#14532d;background:#f0fdf4;border:1px solid #86efac}.login-system-notice--error{color:#7f1d1d;background:#fef2f2;border:1px solid #fecaca}.login-resend-btn{color:var(--color-primary,#2563eb);border:1px solid var(--color-primary,#2563eb);cursor:pointer;background:#fff;border-radius:6px;margin-top:.875rem;padding:.4375rem .875rem;font-size:.8125rem;font-weight:500;transition:background .15s,color .15s;display:inline-block}.login-resend-btn:hover:not(:disabled){background:#eff6ff}.login-resend-btn:disabled{opacity:.55;cursor:not-allowed}.login-resend-success{color:#065f46;margin-top:.5rem;font-size:.875rem;font-weight:500}.login-secondary-links{text-align:center;margin-top:1rem}.login-forgot-link{color:var(--color-primary,#2563eb);font-size:.8125rem;text-decoration:none}.login-forgot-link:hover{text-decoration:underline}.login-hint{color:var(--color-text-secondary,#6b7280);margin:0 0 1rem;font-size:.875rem;line-height:1.5}.dev-notice{color:#4c1d95;background:#faf5ff;border:1px solid #d8b4fe;border-radius:6px;margin-top:.75rem;padding:.75rem;font-size:.8125rem}.dev-token-box{word-break:break-all;margin-top:.5rem}.dev-token-link{color:#7c3aed;font-weight:600;text-decoration:underline}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fp-page{max-width:1100px}.fp-page-header{flex-direction:column;gap:4px;margin-bottom:4px;display:flex}.fp-eyebrow{text-transform:uppercase;letter-spacing:.07em;color:#1d503a;margin:0;font-size:.75rem;font-weight:700}.fp-title{color:#1f2a25;margin:0;font-size:1.45rem;font-weight:700;line-height:1.2}.fp-subtitle{color:#4f5b56;margin:0;font-size:.92rem;line-height:1.55}.fp-privacy-warning{background:#fdf6e8;border:1px solid #ecd9a8;border-left:4px solid #b8860b;border-radius:12px;flex-direction:column;gap:6px;padding:14px 18px;display:flex}.fp-privacy-warning-title{color:#7a5b08;font-size:.88rem;font-weight:700;display:block}.fp-privacy-warning p{color:#51461c;margin:0;font-size:.88rem;line-height:1.5}.fp-role-tabs{border-bottom:2px solid #e3e7e4;flex-wrap:wrap;gap:6px;padding-bottom:10px;display:flex}.fp-role-tab{color:#4f5b56;cursor:pointer;background:0 0;border:1px solid #cfd6d2;border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:500;transition:background .12s,color .12s,border-color .12s}.fp-role-tab:hover{color:#1d503a;background:#f3f7f4;border-color:#1d503a}.fp-role-tab.is-active{color:#fff;background:#1d503a;border-color:#1d503a;font-weight:600}.fp-controls-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.fp-target-toggle{border:1px solid #cfd6d2;border-radius:8px;display:flex;overflow:hidden}.fp-toggle-btn{color:#4f5b56;cursor:pointer;background:#fff;border:none;border-right:1px solid #cfd6d2;padding:7px 14px;font-size:.85rem;font-weight:500;transition:background .12s,color .12s}.fp-toggle-btn:last-child{border-right:none}.fp-toggle-btn:hover{color:#1d503a;background:#f3f7f4}.fp-toggle-btn.is-active{color:#1d503a;background:#e4f1ea;font-weight:600}.fp-search-wrap{flex:220px;min-width:0}.fp-search-input{color:#1f2a25;background:#fff;border:1px solid #cfd6d2;border-radius:8px;outline:none;width:100%;padding:7px 12px;font-size:.88rem;transition:border-color .12s}.fp-search-input:focus{border-color:#1d503a;box-shadow:0 0 0 3px #1d503a1a}.fp-feedback{border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 16px;font-size:.88rem;font-weight:500;display:flex}.fp-feedback-msg{flex:1}.fp-feedback-dismiss{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:1.1rem;line-height:1}.fp-feedback-dismiss:hover{opacity:1}.fp-module-disabled-row{opacity:.75}.fp-module-disabled-badge{text-transform:uppercase;letter-spacing:.05em;color:#92400e;vertical-align:middle;background:#fef3c7;border:1px solid #fde68a;border-radius:999px;margin-left:4px;padding:1px 6px;font-size:.65rem;font-weight:700;display:inline-block}.fp-feedback--success{color:#1f5d3c;background:#e4f1ea;border-color:#c2dcce}.fp-feedback--error{color:#7e2d24;background:#fbe7e3;border-color:#efc1b9}.fp-loading{text-align:center;color:#57645e;padding:32px 0;font-size:.92rem}.fp-load-error{background:#fbe7e3;border:1px solid #efc1b9;border-radius:12px;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;display:flex}.fp-load-error p{color:#7e2d24;margin:0;font-size:.9rem}.fp-access-denied{text-align:center;padding:40px 24px}.fp-access-denied-msg{color:#7e2d24;background:#fbe7e3;border:1px solid #efc1b9;border-radius:12px;padding:16px 20px;font-size:1rem;display:inline-block}.fp-matrix-wrap{background:#fff;border:1px solid #e3e7e4;border-radius:12px;overflow-x:auto}.fp-matrix{min-width:680px}.fp-col-target{width:35%;min-width:220px}.fp-col-op{text-align:center;white-space:nowrap;min-width:140px}.fp-section-header-row{background:#f4f6f4}.fp-section-header{text-transform:uppercase;letter-spacing:.06em;color:#1d503a;border-bottom:1px solid #e3e7e4;font-size:.8rem;font-weight:700;padding:10px 14px!important}.fp-data-row:hover>td{background:#fafcfa}.fp-cell-target{vertical-align:top;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.fp-target-label{color:#1f2a25;font-size:.92rem;font-weight:600}.fp-target-id{color:#6b766f;font-family:monospace;font-size:.76rem}.fp-target-group{color:#8a928d;font-size:.78rem}.fp-phi-badge{text-transform:uppercase;letter-spacing:.05em;color:#7e2d24;background:#fbe7e3;border:1px solid #efc1b9;border-radius:999px;align-self:flex-start;align-items:center;padding:2px 7px;font-size:.68rem;font-weight:700;display:inline-flex}.fp-cell-op{text-align:center;vertical-align:middle;border-bottom:1px solid #eef0ee;padding:10px 8px}.fp-data-row:last-child .fp-cell-op{border-bottom:none}.fp-empty{text-align:center;color:#6b766f;padding:28px 14px;font-size:.9rem}.fp-three-state{border:1px solid #cfd6d2;border-radius:8px;margin-bottom:6px;display:inline-flex;overflow:hidden}.fp-state-btn{cursor:pointer;color:#57645e;white-space:nowrap;background:#fff;border:none;border-right:1px solid #cfd6d2;min-width:44px;padding:5px 10px;font-size:.76rem;font-weight:500;transition:background .1s,color .1s}.fp-state-btn:last-child{border-right:none}.fp-state-btn:disabled{cursor:not-allowed;opacity:.55}.fp-state-btn--inherit.is-active{color:#1f2a25;background:#eef0ee;font-weight:600}.fp-state-btn--allow.is-active{color:#fff;background:#1d503a;font-weight:600}.fp-state-btn--deny.is-active{color:#fff;background:#b2453d;font-weight:600}.fp-state-btn:not(:disabled):not(.is-active):hover{background:#f3f7f4}.fp-saving-dot{background:currentColor;border-radius:50%;width:8px;height:8px;animation:.9s ease-in-out infinite alternate fp-pulse;display:inline-block}@keyframes fp-pulse{0%{opacity:.3}to{opacity:1}}.fp-source-badge{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:2px 7px;font-size:.68rem;font-weight:600;display:block}.fp-source-badge--field{color:#1f5d3c;background:#e4f1ea;border-color:#c2dcce}.fp-source-badge--group{color:#244e74;background:#e3eef8;border-color:#c5d8e9}.fp-source-badge--default{color:#4f5b56;background:#eef0ee;border-color:#d8dcd8}.fp-source-badge--module-entitlement{color:#92400e;background:#fef3c7;border-color:#fde68a}.fp-effective{flex-direction:column;align-items:center;gap:3px;margin-top:5px;display:flex}.fp-effective-label{text-transform:uppercase;letter-spacing:.04em;color:#8a928d;font-size:.68rem;font-weight:600}.fp-effective-decision{border:1px solid #0000;border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:700}.fp-effective-decision--allowed{color:#1f5d3c;background:#e4f1ea;border-color:#c2dcce}.fp-effective-decision--denied{color:#7e2d24;background:#fbe7e3;border-color:#efc1b9}.fp-effective--loading{color:#8a928d;margin-top:4px;font-size:.72rem;display:block}.fp-effective--error{color:#b2453d;margin-top:4px;font-size:.72rem;display:block}.fp-group-mode-note{color:#6b766f;margin:0;padding:6px 0;font-size:.82rem;font-style:italic}.fp-footer-note{margin-top:8px}@media (width<=720px){.fp-controls-row{flex-direction:column;align-items:flex-start}.fp-search-wrap{width:100%}.fp-role-tabs{gap:4px}.fp-role-tab{padding:5px 10px;font-size:.8rem}}.fp-page-tabs{margin-bottom:1.5rem}.fp-user-overrides-panel{padding:1rem 0}.fp-user-overrides-intro{color:var(--color-muted,#6b7280);max-width:640px;margin:0 0 1.25rem;font-size:.85rem;line-height:1.6}.fp-user-select-label{color:var(--color-label,#374151);flex-direction:column;gap:.3rem;max-width:420px;margin-bottom:1.5rem;font-size:.8rem;font-weight:500;display:flex}.fp-user-select{border:1px solid var(--color-border,#d1d5db);background:#fff;border-radius:6px;padding:.4rem .6rem;font-size:.875rem}.fp-user-overrides-list-title{color:var(--color-heading,#111827);margin:0 0 .75rem;font-size:.9rem;font-weight:600}.fp-user-overrides-empty{color:var(--color-muted,#6b7280);margin:0 0 1.5rem;font-size:.875rem}.fp-user-overrides-table{margin-bottom:2rem}.fp-field-id{background:var(--color-surface,#f3f4f6);border-radius:4px;padding:.1rem .4rem;font-size:.78rem}.fp-effect-badge{border-radius:9999px;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.fp-effect-badge--allow{color:#065f46;background:#d1fae5}.fp-effect-badge--deny{color:#991b1b;background:#fee2e2}.fp-user-add-override{background:var(--color-surface,#f9fafb);border:1px solid var(--color-border,#e5e7eb);border-radius:8px;margin-top:1rem;padding:1.25rem}.fp-user-add-fields{grid-template-columns:2fr 1fr 1fr 2fr;gap:1rem;margin-bottom:1rem;display:grid}@media (width<=720px){.fp-user-add-fields{grid-template-columns:1fr 1fr}}.staff-page{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.staff-page-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;display:flex}.staff-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted,#6b7280);margin:0 0 .25rem;font-size:.72rem;font-weight:600}.staff-title{color:var(--color-heading,#111827);margin:0 0 .5rem;font-size:1.6rem;font-weight:700}.staff-subtitle{color:var(--color-muted,#6b7280);max-width:520px;margin:0;font-size:.875rem}.staff-access-denied{text-align:center;color:var(--color-danger,#dc2626);padding:3rem;font-size:.95rem}.staff-invite-form{background:var(--color-surface,#f9fafb);border:1px solid var(--color-border,#e5e7eb);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.staff-invite-form-title{margin:0 0 1rem;font-size:1rem;font-weight:600}.staff-invite-success{color:#065f46;background:#d1fae5;border:1px solid #6ee7b7;border-radius:6px;margin-bottom:1rem;padding:.6rem 1rem;font-size:.875rem}.staff-invite-error{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;margin-bottom:1rem;padding:.6rem 1rem;font-size:.875rem}.staff-invite-fields{grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}@media (width<=640px){.staff-invite-fields{grid-template-columns:1fr}}.staff-invite-label{color:var(--color-label,#374151);flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:500;display:flex}.staff-invite-input,.staff-invite-select{border:1px solid var(--color-border,#d1d5db);background:#fff;border-radius:6px;padding:.4rem .6rem;font-size:.875rem}.staff-tabs{border-bottom:1px solid var(--color-border,#e5e7eb);gap:.5rem;margin-bottom:1.25rem;display:flex}.staff-tab{cursor:pointer;color:var(--color-muted,#6b7280);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:color .15s,border-color .15s}.staff-tab.active{color:var(--color-accent,#2563eb);border-bottom-color:var(--color-accent,#2563eb)}.staff-loading,.staff-empty,.staff-error{color:var(--color-muted,#6b7280);padding:1.5rem 0;font-size:.875rem}.staff-error{color:var(--color-danger,#dc2626)}.staff-table{border-collapse:collapse;width:100%;font-size:.875rem}.staff-table th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--color-muted,#6b7280);border-bottom:1px solid var(--color-border,#e5e7eb);padding:.6rem .75rem;font-size:.75rem;font-weight:600}.staff-table td{border-bottom:1px solid var(--color-divider,#f3f4f6);vertical-align:middle;padding:.75rem}.staff-table tr:last-child td{border-bottom:none}.staff-roles-cell{flex-wrap:wrap;gap:.4rem;display:flex}.staff-role-chip{background:var(--color-chip-bg,#eff6ff);color:var(--color-chip-text,#1d4ed8);border:1px solid var(--color-chip-border,#bfdbfe);border-radius:9999px;align-items:center;gap:.25rem;padding:.15rem .55rem;font-size:.75rem;font-weight:500;display:inline-flex}.staff-role-remove{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;padding:0;font-size:.9rem;line-height:1;transition:opacity .15s}.staff-role-remove:hover{opacity:1}.staff-status-badge{border-radius:9999px;padding:.15rem .55rem;font-size:.75rem;font-weight:500;display:inline-block}.status-active{color:#065f46;background:#d1fae5}.status-inactive{color:#991b1b;background:#fee2e2}.staff-actions-cell{gap:.4rem;display:flex}.staff-action-btn{padding:.3rem .75rem;font-size:.8rem}.staff-pending-section{margin-top:2rem}.staff-pending-title{color:var(--color-heading,#111827);margin:0 0 .75rem;font-size:1rem;font-weight:600}.staff-role-group{background:var(--color-surface,#f9fafb);border:1px solid var(--color-border,#e5e7eb);border-radius:8px;margin-bottom:1.5rem;overflow:hidden}.staff-role-group-title{background:var(--color-surface-2,#f3f4f6);border-bottom:1px solid var(--color-border,#e5e7eb);align-items:center;gap:.5rem;margin:0;padding:.75rem 1rem;font-size:.9rem;font-weight:600;display:flex}.staff-role-count{background:var(--color-chip-bg,#eff6ff);color:var(--color-chip-text,#1d4ed8);border:1px solid var(--color-chip-border,#bfdbfe);border-radius:9999px;margin-left:auto;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.staff-role-empty{color:var(--color-muted,#6b7280);padding:.75rem 1rem;font-size:.8rem}.staff-role-member-list{margin:0;padding:0;list-style:none}.staff-role-member{border-bottom:1px solid var(--color-divider,#f3f4f6);align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.staff-role-member:last-child{border-bottom:none}.staff-role-member-name{min-width:130px;font-size:.875rem;font-weight:500}.staff-role-member-email{color:var(--color-muted,#6b7280);flex:1;font-size:.8rem}.module-locked-page{justify-content:center;align-items:center;min-height:60vh;padding:2rem;display:flex}.module-locked-card{text-align:center;background:var(--color-surface,#f9fafb);border:1px solid var(--color-border,#e5e7eb);border-radius:12px;max-width:480px;padding:2.5rem 2rem}.module-locked-icon{margin-bottom:1rem;font-size:2.5rem;display:block}.module-locked-title{color:var(--color-heading,#111827);margin:0 0 .75rem;font-size:1.3rem;font-weight:700}.module-locked-body{color:var(--color-muted,#6b7280);margin:0 0 .5rem;font-size:.9rem;line-height:1.6}.module-locked-contact{color:var(--color-muted,#6b7280);margin:0 0 1.5rem;font-size:.8rem}.nav-item-module-locked{opacity:.65}.nav-module-lock-badge{color:#92400e;vertical-align:middle;background:#fef3c7;border:1px solid #fcd34d;border-radius:9999px;margin-left:.3rem;padding:.1rem .35rem;font-size:.6rem;font-weight:600;display:inline-block}:root{color:#172033;background:#f3f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,a{font:inherit}.app-shell{background:#fff;flex-direction:column;align-items:stretch;min-height:100vh;display:flex}.sidebar{color:#fff;box-sizing:border-box;background:#0f2537;flex-direction:column;flex-shrink:0;gap:28px;width:280px;min-width:280px;max-width:280px;min-height:100vh;padding:28px 20px;display:flex}.brand-block{--brand-logo-size:clamp(44px, 5vw, 56px);grid-template-columns:var(--brand-logo-size) minmax(0, 1fr);align-items:center;column-gap:16px;min-height:64px;display:grid}.brand-block>div{flex-direction:column;justify-content:center;min-width:0;min-height:60px;display:flex}.brand-mark{flex:0 0 var(--brand-logo-size);width:var(--brand-logo-size);height:var(--brand-logo-size);min-width:var(--brand-logo-size);min-height:var(--brand-logo-size);max-width:var(--brand-logo-size);max-height:var(--brand-logo-size);aspect-ratio:1;color:#fff;letter-spacing:0;text-align:center;box-sizing:border-box;background:linear-gradient(135deg,#35c2a7,#4b8fe2);border-radius:16px;flex-grow:0;flex-shrink:0;place-self:center start;place-items:center;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:18px;font-weight:800;line-height:1;display:grid;overflow:hidden}.brand-mark img,.brand-mark svg{object-fit:contain;width:100%;height:100%;display:block}.brand-block h1{letter-spacing:-.01em;word-break:break-word;overflow-wrap:break-word;min-height:23px;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang TC,Heiti TC,Microsoft JhengHei,sans-serif;font-size:18px;font-weight:700;line-height:1.3}.brand-block p{color:#a7c1d2;word-break:break-word;overflow-wrap:break-word;min-height:38px;margin:4px 0 0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang TC,Heiti TC,Microsoft JhengHei,sans-serif;font-size:13px;line-height:1.45}.nav-list{gap:8px;display:grid}.nav-list a{box-sizing:border-box;color:#d7e6ef;cursor:default;word-break:break-word;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:12px 14px;line-height:1.4;text-decoration:none;display:flex}.nav-link-main{flex:1;min-width:min(120px,100%);line-height:1.4}.nav-planned-badge{letter-spacing:.06em;text-transform:uppercase;color:#c5dde9;background:#ffffff24;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:800}.nav-item-emphasis{border-left:3px solid #35c2a7e6;padding-left:11px}.nav-item-planned{opacity:.88}.nav-list a.nav-item-allowed.active,.nav-list a.nav-item-allowed:hover{color:#fff;background:#ffffff1f}.nav-list a.nav-item-disabled{opacity:.5;cursor:not-allowed}.nav-list a.nav-item-disabled:hover{color:#d7e6ef;background:0 0}.sidebar-signin-hint{color:#9ebccf;min-height:60px;margin:0;font-size:13px;line-height:1.5}.sidebar-lang{box-sizing:border-box;background:#ffffff0f;border-radius:16px;align-content:start;gap:10px;min-height:96px;padding:14px;display:grid}.sidebar-lang-label{letter-spacing:.08em;text-transform:uppercase;color:#9ebccf;min-height:16px;font-size:11px;font-weight:700;line-height:1.45}.sidebar-lang-toggle{flex-wrap:wrap;align-items:center;gap:8px;min-height:32px;display:flex}.lang-pill{box-sizing:border-box;color:#d7e6ef;cursor:pointer;text-align:center;background:0 0;border:1px solid #fff3;border-radius:999px;justify-content:center;align-items:center;min-width:96px;min-height:32px;padding:6px 14px;font-size:13px;font-weight:600;line-height:1;display:inline-flex}.lang-pill:hover{background:#ffffff14}.lang-pill.active{color:#fff;background:#35c2a740;border-color:#35c2a78c}.sidebar-card{background:#ffffff1a;border-radius:18px;margin-top:auto;padding:16px}.sidebar-card p{color:#b6cddc;margin:8px 0 0;font-size:13px}.main-content{box-sizing:border-box;flex:auto;min-width:0;min-height:0;padding:clamp(20px,2.4vw,32px);overflow:auto}.staff-session-strip{box-shadow:none;background:#f4f6f4;border:1px solid #0f253714;border-radius:16px;max-width:100%;margin-bottom:24px;padding:20px 22px}.staff-session-strip-head{flex-direction:column;margin-bottom:4px;display:flex}.staff-session-heading{letter-spacing:-.02em;color:#172033;margin:0 0 10px;font-size:18px;font-weight:800}.staff-session-signed-line{color:#1a4a66;min-height:24px;margin:0;font-size:15px;font-weight:700;line-height:1.45}.staff-session-actions{flex-wrap:wrap;align-items:center;gap:10px;min-height:44px;margin-top:14px;display:flex}.staff-session-actions button{min-inline-size:clamp(120px,16vw,180px);white-space:nowrap;box-sizing:border-box;justify-content:center;align-items:center;min-height:44px;font-size:13px;font-weight:600;line-height:1.2;display:inline-flex}.staff-session-role-note{min-height:20px;margin-top:6px}.staff-session-after-note{color:#5e7182;min-height:40px;margin:12px 0 0;font-size:13px;line-height:1.55}.staff-session-workspace{border-top:1px solid #e8eef3;margin-top:12px;padding-top:12px}.staff-session-workspace-label{letter-spacing:.07em;text-transform:uppercase;color:#728597;margin:0 0 10px;font-size:11px;font-weight:800}.staff-session-workspace-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.staff-session-workspace-header .staff-session-workspace-label{flex:auto;min-width:0;margin:0}.staff-session-workspace-toggle{appearance:none;color:#1a4a66;letter-spacing:.04em;cursor:pointer;min-inline-size:clamp(200px,22vw,240px);white-space:nowrap;text-align:center;box-sizing:border-box;background:#fff;border:1px solid #cbd9e2;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:32px;padding:6px 14px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.staff-session-workspace-toggle:hover{background:#f0f6fa;border-color:#aac4d3}.staff-session-workspace-toggle:focus-visible{outline-offset:2px;outline:2px solid #4b8fe2}.staff-session-workspace-header+.staff-session-workspace-list{margin-top:10px}.staff-session-workspace-list{color:#44586a;margin:0;padding-left:1.2rem;font-size:14px;line-height:1.55}.staff-session-workspace-list li{margin-bottom:6px}.staff-session-admin-note{color:#4a5d6e;background:#f0f6fa;border:1px solid #d9e6ee;border-radius:14px;margin:14px 0 0;padding:12px 14px;font-size:13px;line-height:1.55}.main-access-banner{color:#6a5224;background:#fff8e6;border:1px solid #f0e0bc;border-radius:14px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:600}.staff-sign-in-panel{max-width:920px}.staff-sign-in-top-actions{justify-content:flex-end;margin-bottom:18px;display:flex}.staff-sign-in-pilot-link{white-space:nowrap}.staff-sign-in-title{letter-spacing:-.02em;color:#172033;margin:0 0 10px;font-size:22px;font-weight:800}.staff-sign-in-helper{color:#5e7182;margin:0 0 22px;font-size:14px;line-height:1.55}.staff-account-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.staff-account-card{box-shadow:none;background:#f4f6f4;border:1px solid #0f253714;border-radius:14px;flex-direction:column;align-items:stretch;gap:10px;padding:16px 18px;display:flex}.staff-account-card strong{color:#172033;font-size:15px}.staff-account-card-role{color:#5a6d7e;margin:0;font-size:13px;line-height:1.45}.staff-account-card .primary-button{justify-content:center;width:100%}.patient-portal-placeholder{max-width:720px}.patient-portal-placeholder h2{color:#172033;margin:0 0 12px;font-size:20px;font-weight:800}.patient-portal-placeholder ul{color:#44586a;margin:0 0 16px;padding-left:1.2rem;line-height:1.55}@media (width<=980px){.app-shell{flex-direction:column}.sidebar{width:100%;min-width:0;max-width:none;min-height:auto}}@media (width<=520px){.staff-session-actions button,.staff-session-workspace-toggle{inline-size:100%;min-inline-size:0}}.app-topnav{z-index:20;color:#fff;box-sizing:border-box;background:#1d503a;border-bottom:1px solid #0000000f;flex-shrink:0;min-width:0;position:sticky;top:0;box-shadow:0 1px #0f172a0a}.app-topnav-inner{box-sizing:border-box;flex-wrap:wrap;align-items:center;gap:6px 18px;min-width:0;padding:6px clamp(14px,2vw,26px);display:flex}.app-topnav-brand{flex:0 auto;align-items:center;gap:10px;min-width:0;display:inline-flex}.app-topnav-brand-mark{--topnav-brand-size:clamp(28px, 2.6vw, 32px);width:var(--topnav-brand-size);height:var(--topnav-brand-size);aspect-ratio:1;color:#fff;letter-spacing:0;box-sizing:border-box;background:#266048;border-radius:9px;flex:none;place-items:center;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;font-weight:800;line-height:1;display:grid}.app-topnav-brand-name{color:#fff;letter-spacing:-.01em;word-break:break-word;overflow-wrap:break-word;min-width:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang TC,Heiti TC,Microsoft JhengHei,sans-serif;font-size:14px;font-weight:700;line-height:1.25}.app-topnav-links{flex-wrap:wrap;flex:320px;align-items:center;gap:2px 4px;min-width:0;margin:0;padding:0;display:flex}.app-topnav-link{box-sizing:border-box;color:#cfd9d3;cursor:default;letter-spacing:0;word-break:break-word;overflow-wrap:anywhere;border-radius:999px;align-items:center;max-width:100%;min-height:28px;padding:4px 11px;font-size:12.5px;font-weight:500;line-height:1.25;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}.app-topnav-link-text{min-width:0}.app-topnav-link.nav-item-allowed:hover{color:#fff;background:#ffffff14}.app-topnav-link.nav-item-allowed.active{color:#fff;background:#ffffff29;font-weight:600}.app-topnav-link.nav-item-disabled{opacity:.42;cursor:not-allowed}.app-topnav-link.nav-item-disabled:hover{color:#cfd9d3;background:0 0}.app-topnav-hint{color:#bdc8c0;word-break:break-word;overflow-wrap:anywhere;flex:240px;min-width:0;margin:0;font-size:13px;line-height:1.5}.app-topnav-actions{flex-wrap:wrap;flex:0 auto;align-items:center;gap:6px 10px;min-width:0;display:inline-flex}.app-topnav-lang{flex-wrap:wrap;align-items:center;gap:4px;min-width:0;display:inline-flex}.app-topnav-lang .lang-pill{letter-spacing:0;min-width:0;min-height:26px;padding:3px 10px;font-size:12px;font-weight:600}.app-topnav-session{box-sizing:border-box;background:#ffffff14;border-radius:10px;flex-direction:column;min-width:0;max-width:100%;padding:3px 10px;line-height:1.2;display:inline-flex}.app-topnav-session-label{letter-spacing:.08em;text-transform:uppercase;color:#a4b0a7;word-break:break-word;font-size:9.5px;font-weight:700;line-height:1.25}.app-topnav-session-name{color:#fff;word-break:break-word;overflow-wrap:anywhere;font-size:12.5px;font-weight:700;line-height:1.3}@media (width<=720px){.app-topnav-inner{gap:6px 12px;padding:8px 14px}.app-topnav-links{flex-basis:100%}.app-topnav-actions{flex-basis:100%;justify-content:flex-start}}.app-topnav-platform-badge{color:#fff;letter-spacing:.03em;white-space:nowrap;background:#7c3aed;border-radius:12px;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.app-topnav-clinic-name{color:var(--color-text,#111827);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:12.5px;font-weight:600;overflow:hidden}.app-topnav-clinic-select{border:1px solid var(--color-border,#d1d5db);cursor:pointer;background:#fff;border-radius:5px;max-width:160px;padding:3px 6px;font-size:12.5px}.app-topnav-logout{padding:3px 10px;font-size:12px}.app-topnav-link{position:relative}.nav-shell-badge{color:#6b7280;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;white-space:nowrap;background:#6b728026;border-radius:4px;align-items:center;margin-left:4px;padding:1px 5px;font-size:9px;font-weight:600;line-height:1.4;display:inline-flex}.app-topnav-platform-hint{color:#7c3aed;font-size:12.5px;font-style:italic}.platform-console{max-width:900px;padding:24px 32px}.platform-console-header{flex-direction:column;gap:4px;margin-bottom:24px;display:flex}.platform-console-title{color:#111827;margin:0;font-size:22px;font-weight:700}.platform-console-subtitle{color:#6b7280;margin:0;font-size:13px}.platform-console-tabs{border-bottom:2px solid #e5e7eb;gap:4px;margin-bottom:24px;display:flex}.platform-tab-btn{cursor:pointer;color:#6b7280;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:8px 18px;font-size:13.5px;font-weight:500;transition:color .15s,border-color .15s}.platform-tab-btn.active,.platform-tab-btn:hover{color:#7c3aed;border-bottom-color:#7c3aed}.platform-console-body{min-height:200px}.platform-section{flex-direction:column;gap:24px;display:flex}.platform-section-title{color:#374151;margin:0;font-size:16px;font-weight:600}.platform-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:12px;max-width:480px;padding:20px;display:flex}.platform-form-title{color:#374151;margin:0 0 4px;font-size:14px;font-weight:600}.platform-label{color:#374151;flex-direction:column;gap:4px;font-size:13px;display:flex}.platform-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:8px 10px;font-size:13.5px;transition:border-color .15s}.platform-input:focus{border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed1f}.platform-hint{color:#6b7280;margin:0;font-size:13px}.platform-error{color:#dc2626;margin:0;font-size:13px}.platform-success{color:#059669;margin:0;font-size:13px}.platform-list{flex-direction:column;gap:8px;display:flex}.platform-list-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;display:flex}.platform-list-meta{color:#9ca3af;text-overflow:ellipsis;flex:1;font-family:monospace;font-size:11px;overflow:hidden}.platform-status{letter-spacing:.02em;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600}.platform-status--active{color:#065f46;background:#d1fae5}.platform-status--onboarding{color:#1e40af;background:#dbeafe}.platform-status--pending_owner_invite{color:#92400e;background:#fef3c7}.platform-status--pending_owner_acceptance{color:#3730a3;background:#e0e7ff}.platform-status--pending_payment{color:#9d174d;background:#fce7f3}.platform-status--cancelled,.platform-status--archived{color:#6b7280;background:#f3f4f6}.platform-status--inactive,.platform-status--suspended{color:#991b1b;background:#fee2e2}.platform-dev-result{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;flex-direction:column;gap:6px;padding:16px;font-size:13px;display:flex}.platform-dev-label{text-transform:uppercase;letter-spacing:.06em;color:#92400e;margin:0 0 4px;font-size:11px;font-weight:700}.platform-setup-link{word-break:break-all;color:#7c3aed}.setup-page{background:#f3f4f6;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.setup-card{background:#fff;border-radius:12px;flex-direction:column;gap:16px;width:100%;max-width:440px;padding:40px 36px;display:flex;box-shadow:0 4px 24px #00000014}.setup-brand{color:#7c3aed;letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:700}.setup-title{color:#111827;margin:0;font-size:20px;font-weight:700}.setup-preview{color:#374151;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;font-size:13px;display:flex}.setup-preview p{margin:0}.setup-form{flex-direction:column;gap:12px;display:flex}.setup-hint{color:#6b7280;font-size:13px}.setup-error-block{flex-direction:column;gap:10px;display:flex}.setup-back-link{color:#7c3aed;font-size:13px;text-decoration:none}.setup-back-link:hover{text-decoration:underline}.setup-success{flex-direction:column;gap:14px;display:flex}.setup-login-link{text-align:center;text-decoration:none;display:inline-block}.chooser-clinic-list{flex-direction:column;gap:10px;display:flex}.chooser-clinic-btn{cursor:pointer;text-align:left;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:14px 16px;transition:border-color .15s,background .15s;display:flex}.chooser-clinic-btn:hover:not(:disabled){background:#f5f3ff;border-color:#7c3aed}.chooser-clinic-btn:disabled{opacity:.6;cursor:not-allowed}.chooser-clinic-name{color:#111827;font-size:15px;font-weight:600}.chooser-account-hint{color:#6b7280;font-size:12px}.chooser-footer{border-top:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding-top:8px;display:flex}.chooser-logout-btn{color:#7c3aed;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.chooser-logout-btn:hover{text-decoration:underline}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px 18px;margin-bottom:20px;display:flex}.topbar>div:first-child{flex:260px;min-width:0;max-width:100%}.topbar>div:first-child+div{flex-shrink:0;min-width:min-content;max-width:100%}.eyebrow,.small-label{letter-spacing:.08em;text-transform:uppercase;color:#5a7184;min-height:14px;margin:0 0 4px;font-size:11px;font-weight:700;line-height:1.4}.topbar h2{letter-spacing:-.015em;color:#172033;min-height:28px;margin:0;font-size:22px;font-weight:700;line-height:1.25}.subtitle{color:#5e7182;max-width:720px;min-height:32px;margin:6px 0 0;font-size:13px;line-height:1.55}.top-actions{flex-wrap:nowrap;align-items:center;gap:12px;display:inline-flex}.topbar .primary-button,.topbar .secondary-button{white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.primary-button,.secondary-button,.text-button{cursor:default;border:0;border-radius:10px;padding:9px 14px;font-size:13px;font-weight:600;line-height:1.3}.primary-button{color:#fff;background:#1d503a;box-shadow:0 1px 2px #1d503a2e,0 4px 12px #1d503a24}.primary-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.secondary-button{color:#172033;background:#fff;border:1px solid #0f25371f}.text-button{color:#1d503a;background:0 0;padding:0;font-weight:700}.metric-card,.panel{box-shadow:none;background:#f4f6f4;border:1px solid #0f253714;border-radius:16px}.metric-card{box-sizing:border-box;flex-direction:column;height:100%;min-height:128px;padding:18px;display:flex}.metric-card span{color:#607487;min-height:32px;font-size:12.5px;line-height:1.4}.metric-card strong{letter-spacing:-.01em;color:#172033;margin:6px 0;font-size:24px;font-weight:700;line-height:1.2;display:block}.metric-card p{color:#6b7d8d;margin:auto 0 0;font-size:12.5px;line-height:1.45}.panel{padding:20px}.large-panel{min-height:220px}.panel-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.panel h3,.soap-card h4{color:#172033;letter-spacing:-.005em;margin:0;font-size:15px;font-weight:700;line-height:1.3}.badge{letter-spacing:.01em;color:#2462a6;background:#e8f2ff;border-radius:999px;align-items:center;width:fit-content;padding:3px 9px;font-size:11px;font-weight:700;line-height:1.4;display:inline-flex}.badge.arrived,.badge.active{color:#1d503a;background:#e2f7ef}.badge.pending,.badge.low-stock{color:#9a6200;background:#fff2d7}.badge.expiring-soon{color:#af3e30;background:#ffe7e4}.badge.confirmed{color:#2462a6;background:#e8f2ff}.badge.roster-active{color:#1d503a;background:#e2f7ef}.badge.roster-pending-review{color:#9a6200;background:#fff2d7}.badge.roster-inactive{color:#5a6b7a;background:#e8edf2}@media (width<=980px){.topbar{flex-direction:column}}.error-boundary-container{text-align:center;background:#fff8f8;border:1.5px solid #f5c6c6;border-radius:8px;max-width:540px;margin:4rem auto;padding:2rem 2.5rem}.error-boundary-title{color:#b91c1c;margin:0 0 .25rem;font-size:1.15rem;font-weight:600}.error-boundary-title-zh{color:#991b1b;margin:0 0 1rem;font-size:.95rem}.error-boundary-detail{color:#6b7280;word-break:break-word;text-align:left;background:#f9f9f9;border-radius:4px;margin-bottom:1.25rem;padding:.5rem .75rem;font-family:monospace;font-size:.82rem}.dashboard-topbar-actions{box-sizing:border-box;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:12px;width:max-content;max-width:100%;display:flex}.dashboard-topbar-actions .top-actions{flex-wrap:nowrap;align-items:center;gap:10px;width:max-content;max-width:100%;display:inline-flex}.dashboard-topbar-actions .primary-button,.dashboard-topbar-actions .secondary-button{white-space:nowrap;min-inline-size:clamp(160px,20vw,240px);box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;min-height:44px;padding:12px 14px;font-size:14px;line-height:1.2;display:inline-flex}@media (width<=520px){.dashboard-topbar-actions{align-items:stretch;max-width:100%}.dashboard-topbar-actions .top-actions{flex-direction:column;align-items:stretch}.dashboard-topbar-actions .primary-button,.dashboard-topbar-actions .secondary-button{text-align:center;inline-size:100%;min-inline-size:0}}.dashboard-schedule-helper{color:#5d758a;background:#f5f9fc;border:1px solid #e6eef4;border-radius:14px;margin:14px 0 0;padding:12px 14px;font-size:13px;line-height:1.5}.dashboard-export-notice{color:#6b5a42;text-align:right;background:#fff9ee;border:1px solid #f0dfc4;border-radius:14px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5}.dashboard-flow-board-band{max-width:100%;margin-bottom:20px;overflow-x:hidden}.flow-board-intro{color:#5e7182;margin:0 0 18px;font-size:14px;line-height:1.6}.flow-next-arrival{background:linear-gradient(135deg,#f4fafb,#f8fbfd);border:1px solid #dce8f0;border-radius:18px;max-width:100%;margin-bottom:22px;padding:16px 18px}.flow-next-arrival-heading{letter-spacing:.06em;text-transform:uppercase;color:#4a667a;margin:0 0 12px;font-size:13px;font-weight:800}.flow-next-arrival-line{color:#2f4555;word-break:break-word;margin:0 0 8px;font-size:14px;font-weight:700;line-height:1.45}.flow-next-arrival-meta{color:#607487;margin:10px 0 0;font-size:13px;line-height:1.45}.flow-board-inprogress-heading{color:#3d566b;margin:0 0 14px;font-size:14px;font-weight:800}.flow-timeline-rows{flex-direction:column;gap:16px;display:flex}.flow-timeline-row{box-sizing:border-box;background:#f8fbfd;border:1px solid #e6eef4;border-radius:18px;max-width:100%;padding:16px 18px}.flow-timeline-identity{color:#243945;word-break:break-word;margin-bottom:14px;font-size:15px;line-height:1.45}.flow-timeline-track{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.flow-timeline-node{box-sizing:border-box;color:#44586a;background:#fff;border:1px solid #dbe7ee;border-radius:12px;flex:calc(33.333% - 8px);align-items:flex-start;gap:8px;min-width:min(116px,100%);max-width:100%;padding:10px;font-size:11px;line-height:1.35;display:flex}.flow-timeline-node-marker{color:#546a7c;background:#eef4f8;border-radius:999px;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:grid}.flow-timeline-node-label{flex:1;min-width:0}.flow-timeline-node--done{opacity:.62;background:#f4faf8;border-style:solid;border-color:#cfe3dc}.flow-timeline-node--done .flow-timeline-node-marker{color:#1d503a;background:#cfe9e1;font-size:12px}.flow-timeline-node--active{color:#1a3644;border-width:2px;border-color:#2a6b4a;padding:9px;font-weight:700;box-shadow:0 6px 18px #1d503a1f}.flow-timeline-node--active .flow-timeline-node-marker{color:#fff;background:#1d503a}.flow-timeline-node--pending{opacity:.78;color:#728597;background:#fbfcfd;border-style:dashed;border-color:#d5dee6}.flow-timeline-detail{color:#44586a;flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:0 0 8px;font-size:13px;line-height:1.5;display:flex}.flow-timeline-detail-label{color:#5d758a;flex-shrink:0;font-weight:800}.flow-timeline-detail-value{overflow-wrap:anywhere;flex:1;min-width:min(220px,100%)}.flow-timeline-detail--next .flow-timeline-detail-value{color:#2d5a6e;font-weight:600}.flow-board-footer{color:#728597;border-top:1px solid #e8eef3;margin:18px 0 0;padding-top:14px;font-size:12px;line-height:1.55}@media (width<=560px){.flow-timeline-node{flex:100%;min-width:0}}.dashboard-schedule-table .table-row{grid-template-columns:76px minmax(0,1fr) minmax(0,1fr) minmax(118px,1.25fr) minmax(0,1.15fr);align-items:start}.table-next-cell{color:#506478;font-size:13px;line-height:1.45}.metric-grid{grid-template-columns:repeat(4,minmax(160px,1fr));align-items:stretch;gap:14px;margin-bottom:18px;display:grid}.content-grid{grid-template-columns:1.4fr .9fr;gap:18px;display:grid}.table{gap:8px;display:grid}.table-row{color:#44586a;background:#f8fbfd;border-radius:16px;grid-template-columns:90px 1fr 1fr 130px;align-items:center;gap:12px;padding:14px;display:grid}.table-head{color:#728597;text-transform:uppercase;background:0 0;padding-top:0;font-size:12px;font-weight:800}.task-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.task-list li,.compliance-list span,.roadmap-tags span{color:#405669;background:#f5f9fc;border-radius:14px;padding:12px 14px}.inventory-grid,.compliance-list,.roadmap-tags{gap:12px;display:grid}.inventory-card{background:#f8fbfd;border-radius:16px;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:14px;display:grid}.inventory-card p{color:#758697;margin:4px 0 0;font-size:13px}.roadmap-tags{grid-template-columns:repeat(2,minmax(0,1fr))}.account-owner-preview-intro{color:#4a5a6b;margin:0 0 16px;font-size:14px;line-height:1.55}.account-owner-lifecycle{color:#2f3c4a;margin:0;padding-left:1.35rem;font-size:14px;line-height:1.65}.account-owner-lifecycle li{margin-bottom:8px}.staff-preview-section{flex-direction:column;gap:20px;display:flex}.staff-preview-intro{color:#4a5a6b;margin:0 0 12px;font-size:14px;line-height:1.55}.staff-preview-list{color:#2f3c4a;margin:0;padding-left:1.25rem;font-size:14px;line-height:1.6}.staff-preview-list li{margin-bottom:8px}@media (width<=980px){.metric-grid,.content-grid,.table-row,.dashboard-schedule-table .table-row{grid-template-columns:1fr}}.patients-main-section{flex-direction:column;gap:20px;display:flex}.patients-roster-queue-row{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:start;gap:20px;display:grid}.patients-roster-column,.patients-queue-column{min-width:0}.patients-roster-scroll{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;margin:0 -2px;padding-bottom:6px;overflow:auto visible}.patients-roster-scroll:focus-visible{outline-offset:2px;outline:2px solid #1d503a59}.patients-roster-actions-head{text-align:right}.patients-roster-toolbar{flex-direction:column;gap:14px;margin-bottom:16px;display:flex}.patients-roster-search{gap:8px;max-width:min(520px,100%);display:grid}.patients-roster-search-label{color:#4a5d6e;font-size:13px;font-weight:700}.patients-roster-search-input{width:100%;max-width:100%;font:inherit;color:#172033;box-sizing:border-box;background:#fff;border:1px solid #d9e4ec;border-radius:12px;padding:10px 12px}.patients-roster-search-hint{color:#6b7d8d;margin:0;font-size:13px;line-height:1.45}.patients-roster-count{color:#44586a;margin:0;font-size:13px;font-weight:600;line-height:1.5}.patients-roster-empty{text-align:center;color:#5d758a;background:#f8fbfd;border:1px dashed #cfdce6;border-radius:16px;padding:22px 16px;font-size:14px;line-height:1.5}.patients-queue-intro{color:#5e7182;margin:0 0 14px;font-size:14px;line-height:1.55}.patients-top-actions{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:12px;display:inline-flex}.patients-top-actions .primary-button{white-space:nowrap;flex-shrink:0}.patients-roster-table{gap:8px;min-width:860px;display:grid}.patients-roster-row{color:#44586a;background:#f8fbfd;border-radius:16px;grid-template-columns:minmax(96px,1.15fr) minmax(72px,1fr) minmax(88px,100px) minmax(96px,112px) minmax(104px,130px) minmax(108px,128px) minmax(116px,max-content);align-items:center;gap:12px;padding:14px;display:grid}.patients-roster-head{color:#728597;text-transform:uppercase;background:0 0;padding-top:0;font-size:12px;font-weight:800}.patients-roster-actions{flex-wrap:nowrap;justify-content:flex-end;justify-self:end;gap:8px;display:flex}.patients-roster-actions .text-button{white-space:nowrap}.patients-queue-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.patients-queue-list li{color:#405669;background:#f5f9fc;border-radius:14px;padding:12px 14px}.patients-privacy-body{color:#5e7182;margin:0;line-height:1.6}.intake-page{gap:20px;display:grid}.intake-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.intake-status-banner{color:#0f5c4c;background:#eef6f4;border:1px solid #c5e4dc;border-radius:14px;margin:0;padding:12px 16px;font-size:14px;font-weight:700}.intake-form-grid{gap:28px;display:grid}.form-section{background:#ffffff8c;border:1px solid #cedde7d9;border-radius:20px;padding:20px 22px}.form-section-title{letter-spacing:-.02em;color:#172033;margin:0 0 16px;font-size:17px}.form-section-body{gap:16px;display:grid}.form-row-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-row-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (width<=1320px){.patients-roster-queue-row{grid-template-columns:1fr}}@media (width<=900px){.form-row-2,.form-row-3,.patients-roster-row{grid-template-columns:1fr}.patients-roster-table{min-width:0}.patients-roster-actions{justify-content:flex-start;justify-self:stretch}.patients-roster-actions-head{text-align:left}}.bilingual-field{gap:8px;display:grid}.bilingual-field-label{color:#4a5d6e;font-size:13px;font-weight:700}.bilingual-field-control input[type=text],.bilingual-field-control input[type=email],.bilingual-field-control input[type=tel],.bilingual-field-control input[type=date],.bilingual-field-control select,.bilingual-field-control textarea{width:100%;font:inherit;color:#172033;background:#fff;border:1px solid #d9e4ec;border-radius:12px;padding:10px 12px}.bilingual-field-control textarea{resize:vertical;min-height:96px}.bilingual-field-hint{color:#6b7d8d;font-size:12px}.checkbox-row{flex-wrap:wrap;align-items:center;gap:14px 20px;display:flex}.checkbox-row label{color:#405669;cursor:pointer;align-items:center;gap:8px;font-size:14px;display:inline-flex}.intake-browser-only-note{color:#4a5d6e;background:#f5f9fc;border:1px solid #dce8f0;border-radius:14px;margin:0;padding:14px 16px;font-size:14px;line-height:1.55}.intake-footer-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.voice-readiness-card{background:linear-gradient(135deg,#f0f7fb,#f6fbff);border:1px dashed #1d503a59;border-radius:18px;gap:12px;padding:18px;display:grid}.voice-readiness-card p{color:#5e7182;margin:0;line-height:1.55}.voice-readiness-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-shell{gap:20px;display:grid}.profile-header-card{background:#ffffffeb;border:1px solid #cedde7e6;border-radius:24px;gap:16px;padding:22px 24px;display:grid;box-shadow:0 18px 50px #21405514}.profile-header-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.profile-header-title{letter-spacing:-.03em;margin:0;font-size:28px}.profile-header-meta{color:#5e7182;flex-wrap:wrap;gap:10px 20px;font-size:14px;display:flex}.profile-header-meta span strong{color:#364958;font-weight:700}.profile-disclaimer{color:#4a5d6e;background:#f5f9fc;border-radius:14px;margin:0;padding:12px 14px;font-size:14px;line-height:1.5}.profile-scope-banner{color:#4a5d6e;background:#f0f6fa;border:1px solid #d9e6ee;border-radius:14px;margin:0 0 18px;padding:12px 16px;font-size:14px;line-height:1.5}.profile-tabs{flex-wrap:wrap;gap:8px;display:flex}.profile-tab{color:#4a5d6e;cursor:pointer;background:#fff;border:1px solid #d9e4ec;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:700}.profile-tab:hover{border-color:#b8d0e0}.profile-tab.active{color:#fff;background:#1d503a;border-color:#1d503a}.profile-tab-disabled{opacity:.45;cursor:not-allowed}.profile-tab-disabled:hover{border-color:#d9e4ec}.profile-tab-disabled.active{color:#fff;background:#9eb6c4;border-color:#9eb6c4}.profile-tab-panel{background:#ffffffeb;border:1px solid #cedde7e6;border-radius:24px;min-height:200px;padding:22px;box-shadow:0 18px 50px #21405514}.profile-empty{color:#6b7d8d;margin:0;font-size:15px;line-height:1.6}.profile-overview-grid{gap:16px;display:grid}.soap-shell{flex-direction:column;gap:18px;min-width:0;max-width:1100px;display:flex}.soap-toolbar{flex-wrap:wrap;gap:10px;display:flex}.soap-safety-notice{color:#6a5224;background:#fff8e6;border:1px solid #f0e0bc;border-radius:16px;padding:14px 16px}.soap-safety-notice p{margin:0;font-size:14px;line-height:1.55}.soap-context-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 24px;display:grid}.soap-context-item{flex-direction:column;gap:4px;min-width:0;display:flex}.soap-context-label{text-transform:uppercase;letter-spacing:.06em;color:#728597;font-size:11px;font-weight:700;line-height:1.45}.soap-context-value{color:#172033;word-break:break-word;font-size:14px;line-height:1.5}.soap-status-row{background:#fffffff0;border:1px solid #cedde7f2;border-radius:18px;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 16px;display:flex;box-shadow:0 8px 24px #2140550d}.soap-status-label{letter-spacing:.07em;text-transform:uppercase;color:#728597;font-size:11px;font-weight:800;line-height:1.45}.soap-status-options{flex-wrap:wrap;gap:8px;display:flex}.soap-status-badge{letter-spacing:.02em;opacity:.55;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:26px;padding:6px 12px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.soap-status-badge.is-active{opacity:1;box-shadow:0 4px 12px #21405514}.soap-status-draft{color:#45596d;background:#eef3f7;border-color:#d2dde5}.soap-status-pendingReview{color:#6a5224;background:#fff9ee;border-color:#f0e0bc}.soap-status-signed{color:#1f5a3a;background:#e7f4ec;border-color:#b9dec8}.soap-status-amendmentNeeded{color:#7e2a2a;background:#fbe6e6;border-color:#ebbcbc}.soap-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.soap-field{flex-direction:column;gap:6px;min-width:0;display:flex}.soap-field-full{grid-column:1/-1}.soap-field-label{color:#344758;font-size:13px;font-weight:700;line-height:1.4}.soap-field-input{width:100%;font:inherit;color:#172033;box-sizing:border-box;background:#fff;border:1px solid #cfdbe4;border-radius:12px;min-height:42px;padding:10px 12px;font-size:14px;line-height:1.55}textarea.soap-field-input{resize:vertical;min-height:60px}.soap-field-input:focus-visible{outline-offset:2px;outline:2px solid #4b8fe2}.soap-field-input::placeholder{color:#9aabb9}.soap-action-bar{background:#fffffff0;border:1px solid #cedde7f2;border-radius:18px;flex-direction:column;gap:10px;padding:16px 18px;display:flex;box-shadow:0 8px 24px #2140550d}.soap-action-buttons{flex-wrap:wrap;gap:10px;display:flex}.soap-action-button{min-inline-size:clamp(160px,18vw,220px);white-space:nowrap;box-sizing:border-box;justify-content:center;align-items:center;min-height:44px;font-size:14px;font-weight:600;line-height:1.2;display:inline-flex}.soap-action-notice{color:#344758;background:#f0f6fa;border:1px solid #d9e6ee;border-radius:10px;margin:0;padding:10px 12px;font-size:13px;line-height:1.5}.soap-audit-note{color:#4a5d6e;background:#f5f9fc;border:1px dashed #cfdbe4;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:13px;line-height:1.55}.soap-audit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;display:grid}.soap-audit-item{flex-direction:column;gap:2px;min-width:0;display:flex}.soap-audit-label{text-transform:uppercase;letter-spacing:.06em;color:#728597;font-size:11px;font-weight:700;line-height:1.45}.soap-audit-value{color:#172033;word-break:break-word;font-size:13px;line-height:1.5}.profile-soap-action{min-inline-size:clamp(180px,20vw,240px);white-space:nowrap;justify-content:center;align-items:center;min-height:44px;line-height:1.2;display:inline-flex}@media (width<=820px){.soap-context-grid,.soap-audit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.soap-context-grid,.soap-fields-grid,.soap-audit-grid{grid-template-columns:1fr}.soap-field-full{grid-column:1/-1}}@media (width<=520px){.soap-action-button{inline-size:100%;min-inline-size:0}}.appt-workspace-shell{flex-direction:column;gap:18px;min-width:0;max-width:1280px;display:flex}.appt-safety-notice{color:#6a5224;background:#fff8e6;border:1px solid #f0e0bc;border-radius:16px;padding:14px 16px}.appt-safety-notice p{margin:0;font-size:14px;line-height:1.55}.appt-schedule-helper{color:#4a5d6e;margin:0 0 14px;font-size:13px;line-height:1.55}.appt-schedule-preview-grid{--appointment-preview-gutter:clamp(18px, 2vw, 28px);flex-direction:column;gap:18px;min-width:0;display:flex}.appt-schedule-column{min-width:0;position:relative}.appt-preview-column{min-width:0}@media (width>=980px){.appt-schedule-preview-grid{row-gap:0;column-gap:var(--appointment-preview-gutter);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;display:grid}.appt-preview-column{position:relative}.appt-row-preview-anchor{will-change:top;transition:top .22s;position:absolute;left:0;right:0}}.appt-timeline{--rail-dot-offset:18px;--rail-dot-size:12px;--rail-color:#d5dee6;--rail-color-active:#4b8fe2;flex-direction:column;gap:14px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.appt-timeline-row{flex-direction:column;gap:12px;min-width:0;display:flex}.appt-timeline-row-schedule{grid-template-columns:minmax(60px,auto) 16px minmax(0,1fr);align-items:start;column-gap:12px;min-width:0;display:grid}@media (width>=980px){.appt-timeline-row{gap:0}}.appt-timeline-time-col{padding-top:var(--rail-dot-offset);text-align:right;flex-direction:column;justify-content:flex-start;align-items:flex-end;gap:4px;min-width:0;display:flex}.appt-timeline-time{color:#172033;font-variant-numeric:tabular-nums;font-size:16px;font-weight:700;line-height:1.2}.appt-timeline-duration{text-transform:uppercase;letter-spacing:.06em;color:#728597;white-space:nowrap;font-size:11px;font-weight:700;line-height:1.35}.appt-timeline-row.is-active .appt-timeline-time{color:#1f4a7a}.appt-timeline-row.is-active .appt-timeline-duration{color:#4b8fe2}.appt-timeline-rail-col{align-self:stretch;min-width:0;position:relative}.appt-timeline-rail-col:before{content:"";background:var(--rail-color);width:2px;position:absolute;top:0;bottom:-14px;left:50%;transform:translate(-50%)}.appt-timeline-row:first-child .appt-timeline-rail-col:before{top:calc(var(--rail-dot-offset) + (var(--rail-dot-size) / 2))}.appt-timeline-row:last-child .appt-timeline-rail-col:before{height:calc(var(--rail-dot-offset) + (var(--rail-dot-size) / 2));bottom:auto}.appt-timeline-dot{top:var(--rail-dot-offset);width:var(--rail-dot-size);height:var(--rail-dot-size);box-sizing:border-box;z-index:1;background:#fff;border:2px solid #9aabb9;border-radius:50%;position:absolute;left:50%;transform:translate(-50%)}.appt-timeline-row.is-active .appt-timeline-dot{background:var(--rail-color-active);border-color:var(--rail-color-active);box-shadow:0 0 0 4px #4b8fe22e}.appt-card-container{box-sizing:border-box;background:#fff;border:1px solid #0f253714;border-radius:12px;align-self:start;min-width:0;transition:border-color .12s,box-shadow .12s,background .12s;position:relative;overflow:hidden;box-shadow:0 1px 2px #0f172a08}.appt-card-trigger:hover{background:#4b8fe20a}.appt-card-container:has(.appt-card-trigger:hover){border-color:#4b8fe28c;box-shadow:0 1px 2px #0f172a0a,0 4px 12px #0f172a0f}.appt-card-container.is-active{background:#f7fbfd;border-color:#4b8fe2;box-shadow:0 1px 2px #4b8fe22e,0 6px 18px #4b8fe229}.appt-card-accent{pointer-events:none;background:#4b8fe2;border-radius:14px 0 0 14px;width:0;transition:width .12s;position:absolute;top:8px;bottom:8px;left:0}.appt-card-container.is-active .appt-card-accent{width:4px}.appt-card-trigger{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;box-sizing:border-box;background:0 0;border:0;flex-direction:column;gap:6px;min-width:0;padding:12px 14px 12px 16px;display:flex}.appt-card-trigger:focus-visible{outline-offset:-2px;outline:2px solid #4b8fe2}.appt-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;min-width:0;display:flex}.appt-card-patient{color:#172033;word-break:break-word;overflow-wrap:anywhere;flex:auto;min-width:0;font-size:14px;font-weight:700;line-height:1.35}.appt-card-visit-type{color:#344758;word-break:break-word;overflow-wrap:anywhere;font-size:12.5px;line-height:1.45}.appt-card-meta{flex-wrap:wrap;gap:6px 16px;min-width:0;display:flex}.appt-card-meta-item{flex-wrap:wrap;align-items:baseline;gap:4px;min-width:0;display:inline-flex}.appt-card-meta-label{color:#728597;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700;line-height:1.4}.appt-card-meta-value{color:#344758;word-break:break-word;overflow-wrap:anywhere;font-size:12px;font-weight:600;line-height:1.4}.appt-card-extra-info{color:#1f4a7a;word-break:break-word;overflow-wrap:anywhere;background:#f0f6fa;border:1px solid #cfe0ec;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;max-width:100%;padding:4px 10px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.appt-card-extra-info-dot{background:#4b8fe2;border-radius:50%;flex:none;width:6px;height:6px}.appt-card-toggle-indicator{text-transform:uppercase;letter-spacing:.06em;color:#728597;flex-wrap:wrap;align-self:flex-start;align-items:center;gap:6px;margin-top:2px;font-size:11px;font-weight:700;line-height:1.3;display:inline-flex}.appt-card-container.is-active .appt-card-toggle-indicator{color:#1f4a7a}.appt-card-toggle-text{word-break:keep-all;overflow-wrap:anywhere}.appt-card-toggle-chevron{font-size:12px;line-height:1}.appt-status-pill{letter-spacing:.02em;white-space:normal;word-break:normal;overflow-wrap:anywhere;text-align:center;box-sizing:border-box;border:1px solid #0000;border-radius:999px;flex:0 auto;justify-content:center;align-items:center;min-width:0;max-width:100%;min-height:26px;padding:6px 12px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}.appt-status-upcomingToday{color:#45596d;background:#eef3f7;border-color:#d2dde5}.appt-status-checkedIn{color:#1f4a7a;background:#e7f0fb;border-color:#b9d1ec}.appt-status-practitionerReview{color:#7a4d12;background:#fff4e0;border-color:#f1d2a1}.appt-status-consultationNotes{color:#1f5a3a;background:#e7f4ec;border-color:#b9dec8}.appt-status-needleRetention{color:#4a2972;background:#f1e9f9;border-color:#d4c1ea}.appt-status-needleRemovalReminder{color:#7e2a2a;background:#fbe6e6;border-color:#ebbcbc}.appt-status-medicationPickup{color:#1f5a4c;background:#eaf6f1;border-color:#b9dccd}.appt-status-billingInsurance{color:#344768;background:#eef2f8;border-color:#c8d4e6}.appt-row-preview{box-sizing:border-box;background:#fff;border:1px solid #0f253714;border-left:3px solid #4b8fe2;border-radius:14px;flex-direction:column;gap:12px;min-width:0;padding:14px 16px 16px;display:flex;box-shadow:0 1px 2px #0f172a0a,0 6px 18px #0f172a0f}.appt-row-preview-header{flex-direction:column;gap:2px;min-width:0;display:flex}.appt-row-preview-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:#1f4a7a;font-size:11px;font-weight:700;line-height:1.45}.appt-row-preview-title{color:#172033;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:700;line-height:1.3}.appt-preview-grid{grid-template-columns:1fr;gap:10px 20px;min-width:0;display:grid}.appt-preview-row{flex-direction:column;gap:4px;min-width:0;display:flex}.appt-preview-row-block{grid-column:1/-1}@media (width>=480px){.appt-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.appt-preview-label{text-transform:uppercase;letter-spacing:.06em;color:#728597;font-size:11px;font-weight:700;line-height:1.45}.appt-preview-value{color:#172033;word-break:break-word;overflow-wrap:anywhere;font-size:13px;line-height:1.5}.appt-inline-action-bar{border-top:1px dashed #4b8fe22e;flex-direction:column;gap:10px;padding-top:8px;display:flex}.appt-action-buttons{flex-wrap:wrap;gap:10px;display:flex}.appt-action-button{min-inline-size:clamp(140px,16vw,200px);text-align:center;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;flex:auto;justify-content:center;align-items:center;min-height:40px;padding:8px 14px;font-size:13px;font-weight:600;line-height:1.25;display:inline-flex}.appt-action-notice{color:#344758;background:#f0f6fa;border:1px solid #d9e6ee;border-radius:10px;margin:0;padding:10px 12px;font-size:13px;line-height:1.5}.appt-schedule-footer{border-top:1px dashed #d8e1e9;flex-direction:column;gap:8px;margin-top:18px;padding-top:14px;display:flex}.appt-legend-note{color:#4a5d6e;margin:0;font-size:12px;line-height:1.5}.appt-status-legend{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.appt-status-legend-item{min-width:0;display:inline-flex}@media (width<=600px){.appt-timeline-row-schedule{grid-template-columns:minmax(54px,auto) 14px minmax(0,1fr);column-gap:10px}.appt-timeline-time{font-size:15px}.appt-timeline-duration{font-size:10px}.appt-card-trigger{padding:12px 14px 12px 16px}.appt-row-preview{padding:14px 14px 16px}}@media (width<=520px){.appt-action-button{flex:none;inline-size:100%;min-inline-size:0}}@media (width<=420px){.appt-timeline-row-schedule{grid-template-columns:minmax(46px,auto) 12px minmax(0,1fr);column-gap:8px}.appt-card-header{flex-direction:column;align-items:flex-start}}.appt-booking-panel{flex-direction:column;gap:14px;display:flex}.appt-booking-helper{color:#2f3b36;background:#f3f7f4;border:1px solid #d3e0d6;border-left:4px solid #1d503a;border-radius:12px;margin:0;padding:12px 14px;font-size:.9rem;line-height:1.55}.appt-booking-form{flex-direction:column;gap:18px;display:flex}.appt-booking-fieldset{background:#fbfcfb;border:1px solid #e3e7e4;border-radius:14px;min-width:0;margin:0;padding:14px 16px 16px}.appt-booking-legend{letter-spacing:.06em;text-transform:uppercase;color:#1d503a;padding:0 6px;font-size:.78rem;font-weight:600}.appt-booking-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start;gap:14px;display:grid}.appt-booking-field{flex-direction:column;gap:4px;min-width:0;display:flex}.appt-booking-field--block{grid-column:1/-1}.appt-booking-label{color:#3a4a44;font-size:.8rem;font-weight:600}.appt-booking-input{appearance:none;box-sizing:border-box;width:100%;font:inherit;color:#1f2a25;background:#fff;border:1px solid #cdd6d1;border-radius:10px;padding:9px 11px;font-size:.92rem;line-height:1.4;transition:border-color .12s,box-shadow .12s}.appt-booking-input:focus,.appt-booking-input:focus-visible{border-color:#1d503a;outline:none;box-shadow:0 0 0 3px #1d503a29}.appt-booking-textarea{resize:vertical;min-height:72px}.appt-booking-hint{color:#57645e;font-size:.78rem;line-height:1.45}.appt-booking-suggestions{background:#fff;border:1px solid #d3e0d6;border-radius:10px;flex-direction:column;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex;overflow:hidden}.appt-booking-suggestion-button{text-align:left;cursor:pointer;width:100%;font:inherit;color:#1f2a25;background:0 0;border:0;flex-direction:column;align-items:flex-start;padding:8px 12px;transition:background-color .12s;display:flex}.appt-booking-suggestion-button:hover,.appt-booking-suggestion-button:focus-visible{background:#f3f7f4;outline:none}.appt-booking-suggestion-name{font-size:.92rem;font-weight:600}.appt-booking-suggestion-meta{color:#57645e;font-size:.78rem}.appt-booking-clear-button{font:inherit;color:#1d503a;cursor:pointer;background:0 0;border:0;align-self:flex-start;margin-top:4px;padding:0;font-size:.8rem;text-decoration:underline}.appt-booking-clear-button:hover,.appt-booking-clear-button:focus-visible{color:#143d2c;outline:none}.appt-booking-workflow-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.appt-booking-workflow-list li{color:#2f3b36;background:#fff;border:1px solid #e3e7e4;border-radius:10px;padding:10px 12px 10px 32px;font-size:.88rem;line-height:1.5;position:relative}.appt-booking-workflow-list li:before{content:"";background:#1d503a;border-radius:50%;width:8px;height:8px;position:absolute;top:14px;left:12px}.appt-booking-form-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.appt-booking-saved-notice{color:#1d503a;background:#ecf5ef;border:1px solid #c5dccd;border-radius:10px;margin:0;padding:10px 14px;font-size:.88rem;line-height:1.5}.appt-booking-saved-block{background:#fbfcfb;border:1px solid #e3e7e4;border-radius:14px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.appt-booking-saved-title{color:#1d503a;margin:0;font-size:.95rem;font-weight:600}.appt-booking-saved-helper{color:#57645e;margin:0;font-size:.82rem;line-height:1.5}.appt-booking-saved-empty{color:#57645e;background:#fff;border:1px dashed #cdd6d1;border-radius:10px;margin:0;padding:10px 12px;font-size:.85rem}.appt-booking-saved-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.appt-booking-saved-item{background:#fff;border:1px solid #e3e7e4;border-left:3px solid #1d503a;border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.appt-booking-saved-summary{color:#1f2a25;font-size:.92rem;font-weight:600;line-height:1.4}.appt-booking-saved-meta{color:#57645e;font-size:.8rem;line-height:1.45}.appt-frontdesk-helper{color:#4a5d6e;margin:0 0 12px;font-size:.9rem;line-height:1.55}.appt-frontdesk-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.appt-frontdesk-list li{color:#1f2a25;background:#fbfcfb;border:1px solid #e3e7e4;border-radius:12px;padding:12px 14px 12px 36px;font-size:.9rem;line-height:1.5;position:relative}.appt-frontdesk-list li:before{content:"✓";color:#fff;background:#1d503a;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.72rem;font-weight:700;display:inline-flex;position:absolute;top:10px;left:12px}@media (width<=720px){.appt-booking-fieldset{padding:12px 12px 14px}.appt-booking-grid{grid-template-columns:1fr}.appt-booking-form-footer{justify-content:stretch}.appt-booking-form-footer button{flex:auto}}.medication-pickup-shell{flex-direction:column;gap:18px;min-width:0;max-width:1280px;display:flex}.pickup-safety-notice{color:#6a5224;background:#fff8e6;border:1px solid #f0e0bc;border-radius:16px;padding:14px 16px}.pickup-safety-notice p{word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.55}.pickup-workflow-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 24px;min-width:0;margin:0 0 14px;display:flex}.pickup-workflow-helper{color:#4a5d6e;word-break:break-word;overflow-wrap:anywhere;flex:320px;min-width:0;margin:0;font-size:13px;line-height:1.55}.pickup-workflow-total{color:#1f4a7a;background:#f0f6fa;border:1px solid #d9e6ee;border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;margin:0;padding:6px 12px;font-size:13px;line-height:1.4;display:inline-flex}.pickup-workflow-total-label{text-transform:uppercase;letter-spacing:.05em;color:#4a5d6e;font-size:11px;font-weight:700}.pickup-workflow-total-value{word-break:keep-all;font-weight:700}.pickup-action-notice{color:#344758;word-break:break-word;overflow-wrap:anywhere;background:#f0f6fa;border:1px solid #d9e6ee;border-radius:12px;margin:0 0 14px;padding:10px 14px;font-size:13px;line-height:1.5}.pickup-groups-grid{grid-template-columns:1fr;gap:16px;min-width:0;display:grid}@media (width>=640px){.pickup-groups-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}}@media (width>=1100px){.pickup-groups-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}.pickup-group{box-shadow:none;box-sizing:border-box;background:#f4f6f4;border:1px solid #0f253714;border-radius:16px;flex-direction:column;gap:12px;min-width:0;padding:14px 14px 16px;display:flex}.pickup-group-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;min-width:0;display:flex}.pickup-group-header-text{flex-direction:column;flex:1 1 0;gap:4px;min-width:0;display:flex}.pickup-group-title{color:#172033;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:700;line-height:1.3}.pickup-group-description{color:#4a5d6e;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.55}@media (width>=640px){.pickup-group-description{min-height:4.65em}}.pickup-group-count{word-break:keep-all;flex:0 auto;align-self:flex-start}.pickup-group-cards{flex-direction:column;gap:12px;min-width:0;display:flex}.pickup-group-empty{color:#4a5d6e;word-break:break-word;overflow-wrap:anywhere;background:#f6f9fc;border:1px dashed #cdd9e3;border-radius:12px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5}.pickup-group.pickup-status-pendingPickup{border-top:3px solid #d6b56a}.pickup-group.pickup-status-readyForPickup{border-top:3px solid #4b8fe2}.pickup-group.pickup-status-pickedUp{border-top:3px solid #4f9d6a}.pickup-card{box-sizing:border-box;--pickup-card-scroll-offset:88px;min-width:0;scroll-margin-top:var(--pickup-card-scroll-offset);background:#fff;border:1px solid #d8e1e9;border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}@media (width<=720px){.pickup-card{--pickup-card-scroll-offset:168px}}.pickup-card.is-recently-collapsed:after{content:"";pointer-events:none;border:2px solid #4b8fe28c;border-radius:16px;animation:.9s ease-out forwards pickup-card-recent-collapse-fade;position:absolute;inset:-2px}@keyframes pickup-card-recent-collapse-fade{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.pickup-card.is-recently-collapsed:after{opacity:1;animation:none}}.pickup-card.is-expanded{gap:12px;padding-bottom:14px;box-shadow:0 6px 18px #21405512}.pickup-card.is-collapsed .pickup-card-formula-text{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pickup-card.pickup-status-pendingPickup{background:#fffaf0;border-left:4px solid #d6b56a}.pickup-card.pickup-status-readyForPickup{background:#f6fafd;border-left:4px solid #4b8fe2}.pickup-card.pickup-status-pickedUp{background:#f3faf5;border-left:4px solid #4f9d6a}.pickup-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;min-width:0;display:flex}.pickup-card-header-text{flex-direction:column;flex:1 1 0;gap:4px;min-width:0;display:flex}.pickup-card-patient{color:#172033;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:700;line-height:1.35}.pickup-card-time{color:#344758;flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;margin:0;font-size:12px;line-height:1.4;display:inline-flex}.pickup-card-time-label{text-transform:uppercase;letter-spacing:.06em;color:#728597;font-size:11px;font-weight:700}.pickup-card-time-value{font-variant-numeric:tabular-nums;font-weight:600}.pickup-status-pill{letter-spacing:.02em;white-space:normal;word-break:normal;overflow-wrap:anywhere;text-align:center;box-sizing:border-box;border:1px solid #0000;border-radius:999px;flex:0 auto;justify-content:center;align-items:center;min-width:0;max-width:100%;min-height:26px;padding:6px 12px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}.pickup-status-pendingPickup{color:#7a4d12;background:#fff4e0;border-color:#f1d2a1}.pickup-status-readyForPickup{color:#1f4a7a;background:#e7f0fb;border-color:#b9d1ec}.pickup-status-pickedUp{color:#1f5a4c;background:#eaf6f1;border-color:#b9dccd}.pickup-card-meta-grid{grid-template-columns:1fr;gap:4px 12px;min-width:0;margin:0;display:grid}@media (width>=480px){.pickup-card-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pickup-card-meta-row{flex-direction:column;gap:2px;min-width:0;display:flex}.pickup-card-meta-row dt{text-transform:uppercase;letter-spacing:.06em;color:#728597;margin:0;font-size:11px;font-weight:700;line-height:1.4}.pickup-card-meta-row dd{color:#344758;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:600;line-height:1.45}.pickup-card-formula,.pickup-card-note{flex-direction:column;gap:4px;min-width:0;display:flex}.pickup-card-section-label{text-transform:uppercase;letter-spacing:.06em;color:#728597;font-size:11px;font-weight:700;line-height:1.4}.pickup-card-formula-text,.pickup-card-note-text{color:#172033;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.55}.pickup-card-note-text{color:#344758}.pickup-card-details{flex-direction:column;gap:10px;min-width:0;display:flex}.pickup-inventory{box-sizing:border-box;background:#f7fafd;border:1px dashed #cfdcea;border-radius:12px;flex-direction:column;gap:8px;min-width:0;padding:10px 12px 12px;display:flex}.pickup-inventory-header{flex-direction:column;gap:2px;min-width:0;display:flex}.pickup-inventory-title{letter-spacing:.06em;text-transform:uppercase;color:#1f4a7a;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:12px;font-weight:700;line-height:1.35}.pickup-inventory-subtitle{color:#6c7e90;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:11px;line-height:1.5}.pickup-inventory-grid{grid-template-columns:1fr;gap:6px 14px;min-width:0;margin:0;display:grid}@media (width>=480px){.pickup-inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pickup-inventory-lot{font-variant-numeric:tabular-nums;letter-spacing:.02em}.pickup-inventory-disclaimer{color:#4a5d6e;word-break:break-word;overflow-wrap:anywhere;margin:2px 0 0;font-size:11px;font-style:italic;line-height:1.55}.pickup-card-actions{border-top:1px dashed #4b8fe22e;flex-wrap:wrap;gap:8px;min-width:0;padding-top:6px;display:flex}.pickup-action-button{min-inline-size:clamp(140px,14vw,200px);text-align:center;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;flex:auto;justify-content:center;align-items:center;min-height:40px;padding:8px 14px;font-size:13px;font-weight:600;line-height:1.25;display:inline-flex}@media (width<=520px){.pickup-action-button{flex:none;inline-size:100%;min-inline-size:0}}.pickup-card-toggle{color:#1f4a7a;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;box-sizing:border-box;background:0 0;border:1px solid #cfe0ec;border-radius:999px;flex-wrap:wrap;align-self:flex-start;align-items:center;gap:6px;max-width:100%;min-height:32px;padding:6px 14px;font-size:12px;font-weight:700;line-height:1.3;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.pickup-card-toggle:hover{background:#4b8fe214;border-color:#4b8fe2}.pickup-card-toggle:focus-visible{outline-offset:2px;outline:2px solid #4b8fe2}.pickup-card.is-expanded .pickup-card-toggle{color:#1f4a7a;border-color:#4b8fe2}.pickup-card-toggle-text{word-break:keep-all;overflow-wrap:anywhere}.pickup-card-toggle-chevron{font-size:12px;line-height:1}@media (width<=520px){.pickup-card-toggle{justify-content:center;align-self:stretch}}.herbal-inventory-shell{flex-direction:column;gap:20px;display:flex}.inventory-section-helper{color:#4f5b56;margin:0 0 12px;font-size:.92rem;line-height:1.55}.inventory-safety-notice{background:#f3f7f4;border:1px solid #d3e0d6;border-left:4px solid #1d503a;border-radius:14px;padding:14px 18px}.inventory-safety-notice-title{color:#1d503a;margin:0 0 8px;font-size:.95rem;font-weight:600}.inventory-safety-notice-list{color:#2f3b36;margin:0;padding-left:18px;font-size:.88rem;line-height:1.55}.inventory-safety-notice-list li+li{margin-top:3px}.inventory-kpi-strip{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.inventory-kpi-card{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:6px;min-width:0;padding:14px 16px;display:flex}.inventory-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:#57645e;align-items:center;gap:8px;margin:0;font-size:.78rem;font-weight:600;display:inline-flex}.inventory-kpi-value{color:#1f2a25;font-variant-numeric:tabular-nums;margin:0;font-size:1.6rem;font-weight:700;line-height:1.1}.inventory-kpi-helper{color:#6b766f;margin:0;font-size:.78rem;line-height:1.45}.inventory-kpi-card--low,.inventory-kpi-card--expiring{border-left:3px solid #e6b73a}.inventory-kpi-card--blocked,.inventory-kpi-card--recall{border-left:3px solid #c14a4a}.inventory-traffic-dot{border:1px solid #0000000f;border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.inventory-traffic-green{background:#2f9e6c}.inventory-traffic-yellow{background:#e6b73a}.inventory-traffic-red{background:#c14a4a}.inventory-toolbar{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:10px;margin-bottom:12px;padding:12px 14px;display:flex}.inventory-toolbar-search{flex-direction:column;gap:4px;display:flex}.inventory-toolbar-search-label{text-transform:uppercase;letter-spacing:.05em;color:#57645e;font-size:.74rem;font-weight:600}.inventory-toolbar-search-input{box-sizing:border-box;width:100%;font:inherit;color:#1f2a25;background:#fdfefd;border:1px solid #d8dfd9;border-radius:8px;padding:9px 12px;font-size:.92rem;transition:border-color .12s,box-shadow .12s}.inventory-toolbar-search-input:focus{border-color:#1d503a;outline:none;box-shadow:0 0 0 3px #1d503a2e}.inventory-toolbar-search-input::placeholder{color:#9aa6a0}.inventory-toolbar-row{flex-wrap:wrap;align-items:flex-start;gap:14px;display:flex}.inventory-toolbar-group{flex-direction:column;flex:240px;gap:6px;min-width:0;display:flex}.inventory-toolbar-group-label{text-transform:uppercase;letter-spacing:.05em;color:#57645e;font-size:.74rem;font-weight:600}.inventory-chip-row{flex-wrap:wrap;gap:6px;display:flex}.inventory-chip{color:#2f3b36;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8dfd9;border-radius:999px;align-items:center;padding:4px 10px;font-size:.82rem;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.inventory-chip:hover{background:#f3f7f4;border-color:#c4d8cb}.inventory-chip:focus-visible{outline-offset:1px;outline:2px solid #1d503a59}.inventory-chip.is-active{color:#fff;background:#1d503a;border-color:#1d503a}.inventory-chip.is-active:hover{background:#194730;border-color:#194730}.inventory-toolbar-row-controls{align-items:flex-end}.inventory-toolbar-select{flex-direction:column;flex:180px;gap:4px;min-width:0;display:flex}.inventory-toolbar-select-label{text-transform:uppercase;letter-spacing:.05em;color:#57645e;font-size:.74rem;font-weight:600}.inventory-toolbar-select-input{box-sizing:border-box;width:100%;font:inherit;color:#1f2a25;appearance:none;background-color:#fdfefd;background-image:linear-gradient(45deg,#0000 50%,#57645e 50%),linear-gradient(135deg,#57645e 50%,#0000 50%);background-position:calc(100% - 16px) 14px,calc(100% - 11px) 14px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;border:1px solid #d8dfd9;border-radius:8px;padding:8px 30px 8px 10px;font-size:.9rem}.inventory-toolbar-select-input:focus{border-color:#1d503a;outline:none;box-shadow:0 0 0 3px #1d503a2e}.inventory-toolbar-trailing{flex-direction:column;flex:none;align-items:flex-start;gap:4px;display:flex}.inventory-toolbar-ref-date{color:#6b766f;white-space:nowrap;font-size:.78rem}.inventory-toolbar-clear{font-size:.88rem}.inventory-toolbar-clear:disabled{opacity:.4;cursor:not-allowed}.inventory-results-meta{color:#57645e;font-variant-numeric:tabular-nums;margin:0 0 8px;font-size:.82rem}.inventory-empty{text-align:center;background:#fff;border:1px dashed #d8dfd9;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:28px 20px;display:flex}.inventory-empty-title{color:#2f3b36;margin:0;font-size:1rem;font-weight:600}.inventory-empty-helper{color:#57645e;max-width:36em;margin:0;font-size:.9rem}.inventory-table-wrap{background:#fff;border:1px solid #e3e7e4;border-radius:12px;width:100%;overflow-x:auto}.inventory-table{border-collapse:separate;border-spacing:0;color:#2f3b36;width:100%;min-width:880px;font-size:.9rem}.inventory-table thead th{z-index:1;text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#57645e;white-space:nowrap;background:#f4f6f4;border-bottom:1px solid #e3e7e4;padding:10px 12px;font-size:.74rem;font-weight:600;position:sticky;top:0}.inventory-th-stock,.inventory-th-lots{text-align:right}.inventory-th-action{text-align:right;width:1%}.visually-hidden-action-th{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.inventory-row{--inventory-row-scroll-offset:88px;scroll-margin-top:var(--inventory-row-scroll-offset);background:#fff;position:relative}@media (width<=720px){.inventory-row{--inventory-row-scroll-offset:168px}}.inventory-row>td{border-bottom:1px solid #eef1ee}.inventory-row:hover{background:#f9fbfa}.inventory-row.is-expanded,.inventory-row.is-expanded:hover{background:#f1f5f3}.inventory-cell{vertical-align:middle;font-variant-numeric:tabular-nums;padding:10px 12px}.inventory-row.inventory-status-lowStock>td:first-child,.inventory-row.inventory-status-expiringSoon>td:first-child{box-shadow:inset 3px 0 #e6b73a}.inventory-row.inventory-status-expired>td:first-child,.inventory-row.inventory-status-recalled>td:first-child,.inventory-row.inventory-status-disposed>td:first-child{box-shadow:inset 3px 0 #c14a4a}.inventory-cell-product{min-width:200px}.inventory-cell-product-stack{flex-direction:column;line-height:1.35;display:flex}.inventory-cell-product-zh{color:#1f2a25;font-size:.96rem;font-weight:600}.inventory-cell-product-en{color:#4f5b56;font-size:.84rem}.inventory-cell-product-pinyin{color:#6b766f;font-size:.78rem;font-style:italic}.inventory-type-badge{color:#2f3b36;white-space:nowrap;background:#eef1ee;border:1px solid #d8dfd9;border-radius:6px;align-items:center;padding:3px 8px;font-size:.78rem;display:inline-flex}.inventory-cell-stock{text-align:right;white-space:nowrap}.inventory-stock-value{color:#1f2a25;font-weight:600}.inventory-cell-status-inner{align-items:center;gap:8px;display:inline-flex}.inventory-status-pill{letter-spacing:.02em;color:#2f3b36;white-space:nowrap;background:#eef1ee;border:1px solid #d8dfd9;border-radius:999px;align-items:center;padding:3px 9px;font-size:.76rem;font-weight:600;display:inline-flex}.inventory-status-pill.inventory-status-active{color:#1d503a;background:#e8f1ec;border-color:#c4d8cb}.inventory-status-pill.inventory-status-lowStock,.inventory-status-pill.inventory-status-expiringSoon{color:#6c5418;background:#fdf3d9;border-color:#ead7a3}.inventory-status-pill.inventory-status-expired,.inventory-status-pill.inventory-status-recalled,.inventory-status-pill.inventory-status-disposed{color:#7a2727;background:#f7dcdc;border-color:#e8b7b7}.inventory-cell-expiry{white-space:nowrap}.inventory-cell-lots{text-align:right;color:#1f2a25;font-weight:600}.inventory-cell-supplier{text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.inventory-cell-action{text-align:right;white-space:nowrap}.inventory-row-toggle{font-size:.86rem}.inventory-row.is-recently-collapsed>td:first-child:after{content:"";pointer-events:none;border-top:2px solid #4b8fe28c;border-bottom:2px solid #4b8fe28c;animation:.9s ease-out forwards inventory-row-recent-collapse-fade;position:absolute;inset:0}.inventory-row.is-recently-collapsed>td:first-child{position:relative}@keyframes inventory-row-recent-collapse-fade{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.inventory-row.is-recently-collapsed>td:first-child:after{opacity:1;animation:none}}.inventory-detail-row>td{background:#f4f6f4;border-bottom:1px solid #e3e7e4;padding:16px 18px}.inventory-detail-panel{flex-direction:column;gap:18px;display:flex}.inventory-detail-section{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.inventory-detail-section-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.inventory-detail-section-title{color:#1f2a25;margin:0;font-size:.95rem;font-weight:600}.inventory-detail-section-helper{color:#57645e;margin:0;font-size:.86rem;line-height:1.5}.inventory-detail-lot-count{color:#57645e;background:#f4f6f4;border:1px solid #d8dfd9;border-radius:999px;padding:3px 10px;font-size:.82rem}.inventory-detail-about-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 16px;margin:0;display:grid}.inventory-detail-about-row{flex-direction:column;min-width:0;display:flex}.inventory-detail-about-row dt{text-transform:uppercase;letter-spacing:.04em;color:#6b766f;margin:0;font-size:.72rem;font-weight:500}.inventory-detail-about-row dd{color:#2f3b36;margin:2px 0 0;font-size:.9rem}.inventory-lot-list{flex-direction:column;gap:10px;display:flex}.inventory-lot-card{background:#fbfdfb;border:1px solid #e3e7e4;border-radius:10px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.inventory-lot-card.inventory-status-lowStock,.inventory-lot-card.inventory-status-expiringSoon{border-left:3px solid #e6b73a}.inventory-lot-card.inventory-status-expired,.inventory-lot-card.inventory-status-recalled,.inventory-lot-card.inventory-status-disposed{background:#fff8f8;border-left:3px solid #c14a4a}.inventory-lot-card-header{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inventory-lot-card-headline{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.inventory-lot-number{color:#1d503a;letter-spacing:.02em;word-break:break-all;font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.88rem}.inventory-lot-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:6px 16px;margin:0;display:grid}.inventory-lot-row{flex-direction:column;min-width:0;display:flex}.inventory-lot-row dt{text-transform:uppercase;letter-spacing:.04em;color:#6b766f;margin:0;font-size:.72rem;font-weight:500}.inventory-lot-row dd{color:#2f3b36;word-break:break-word;overflow-wrap:anywhere;margin:2px 0 0;font-size:.88rem}.inventory-lot-monospace{color:#2f3b36;font-family:SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.82rem}.inventory-lot-note{color:#2f3b36;background:#f4f6f4;border-radius:8px;margin:0;padding:8px 10px;font-size:.86rem;line-height:1.5}.inventory-lot-note-label{color:#57645e;font-weight:600}.inventory-detail-workflow-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.inventory-detail-workflow-card{background:#fbfdfb;border:1px solid #e3e7e4;border-radius:10px;flex-direction:column;gap:6px;min-width:0;padding:12px 14px;display:flex}.inventory-detail-workflow-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.inventory-detail-workflow-card-title{color:#1f2a25;word-break:break-word;min-width:0;margin:0;font-size:.9rem;font-weight:600}.inventory-detail-workflow-badge{letter-spacing:.04em;text-transform:uppercase;color:#4f5b56;background:#eef1ee;border:1px solid #d8dfd9;border-radius:999px;flex:none;padding:2px 7px;font-size:.68rem;font-weight:600}.inventory-detail-workflow-card-description{color:#4f5b56;margin:0;font-size:.84rem;line-height:1.5}.inventory-chain-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.inventory-chain-step{color:#2f3b36;background:#fff;border:1px solid #d8dfd9;border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 7px;font-size:.82rem;display:inline-flex;position:relative}.inventory-chain-step-index{color:#fff;background:#1d503a;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:700;display:inline-flex}.inventory-chain-step-label{white-space:nowrap}@media (width>=720px){.inventory-chain-step+.inventory-chain-step:before{content:"→";color:#9aa6a0;font-size:.9rem;position:absolute;top:50%;left:-10px;transform:translate(-50%,-50%)}}.inventory-footer-notice{color:#57645e;background:#f4f6f4;border:1px solid #e3e7e4;border-radius:12px;margin:0;padding:12px 16px;font-size:.85rem;line-height:1.55}@media (width<=720px){.inventory-kpi-value{font-size:1.4rem}.inventory-toolbar-row-controls .inventory-toolbar-trailing{flex-direction:row;justify-content:space-between;align-items:center;width:100%}}@media (width<=540px){.inventory-detail-row>td{padding:12px}.inventory-detail-section{padding:12px 14px}}.admin-page-shell{flex-direction:column;gap:20px;display:flex}.admin-safety-notice{background:#f3f7f4;border:1px solid #d3e0d6;border-left:4px solid #1d503a;border-radius:14px;padding:14px 18px}.admin-safety-notice-title{color:#1d503a;margin:0 0 8px;font-size:.95rem;font-weight:600;display:block}.admin-safety-notice ul{color:#2f3b36;margin:0;padding-left:18px;font-size:.88rem;line-height:1.55}.admin-safety-notice li+li{margin-top:3px}.admin-safety-notice.dashboard-evidence-notice,.admin-safety-notice.patients-evidence-notice{margin-bottom:18px}.admin-safety-notice.dashboard-evidence-notice p,.admin-safety-notice.patients-evidence-notice p{color:#2f3b36;margin:0;font-size:.88rem;line-height:1.55}.admin-authorization-banner{background:#fdf6e8;border:1px solid #ecd9a8;border-left:4px solid #b8860b;border-radius:14px;flex-direction:column;gap:4px;padding:14px 18px;display:flex}.admin-authorization-banner strong{color:#7a5b08;font-size:.95rem}.admin-authorization-banner p{color:#51461c;margin:0;font-size:.88rem;line-height:1.55}.admin-kpi-strip{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.admin-kpi-strip--five{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.admin-kpi-card{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:6px;min-width:0;padding:14px 16px;display:flex}.admin-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:#57645e;margin:0;font-size:.78rem;font-weight:600}.admin-kpi-value{color:#1f2a25;font-variant-numeric:tabular-nums;margin:0;font-size:1.6rem;font-weight:700;line-height:1.1}.admin-kpi-helper{color:#6b766f;margin:0;font-size:.78rem;line-height:1.45}.admin-kpi-card--alert,.admin-kpi-card--warning,.admin-kpi-card--inReview{border-left:3px solid #c98a16}.admin-kpi-card--danger,.admin-kpi-card--rejected{border-left:3px solid #b2453d}.admin-kpi-card--success,.admin-kpi-card--approved{border-left:3px solid #2b7d50}.admin-kpi-card--info,.admin-kpi-card--submittedManually{border-left:3px solid #2f6fa6}.admin-kpi-card--draft{border-left:3px solid #8a948f}.admin-panel-helper{color:#4f5b56;margin:0 0 14px;font-size:.92rem;line-height:1.55}.admin-table-wrap{background:#fff;border:1px solid #e3e7e4;border-radius:12px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:760px;font-size:.88rem}.admin-table thead{z-index:1;background:#f4f6f4;position:sticky;top:0}.admin-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#57645e;white-space:nowrap;border-bottom:1px solid #e3e7e4;padding:12px 14px;font-size:.78rem;font-weight:600}.admin-table tbody td{vertical-align:top;color:#1f2a25;border-bottom:1px solid #eef0ee;padding:12px 14px}.admin-table tbody tr:last-child td{border-bottom:none}.admin-cell-id{font-variant-numeric:tabular-nums;color:#1d503a;white-space:nowrap;font-weight:600}.admin-cell-patient{min-width:140px}.admin-cell-patient-name{color:#1f2a25;font-weight:600;display:block}.admin-cell-patient-zh{color:#5b6b7b;font-size:.82rem;display:block}.admin-cell-amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.admin-cell-action{text-align:right;white-space:nowrap}.admin-row-toggle{color:#1d503a;cursor:pointer;background:#fff;border:1px solid #cfd6d2;border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.admin-row-toggle:hover,.admin-row-toggle:focus-visible{background:#f3f7f4;border-color:#1d503a;outline:none}.admin-row.is-expanded>td{background:#f8faf8}.admin-row.is-recently-collapsed>td:first-child{position:relative}.admin-row.is-recently-collapsed>td:first-child:after{content:"";pointer-events:none;border-left:3px solid #1d503a;animation:1.2s ease-out forwards admin-row-collapse-fade;position:absolute;inset:0}@keyframes admin-row-collapse-fade{0%{opacity:1}to{opacity:0}}.admin-status-pill{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.admin-status-pill--success{color:#1f5d3c;background:#e4f1ea;border-color:#c2dcce}.admin-status-pill--warning{color:#7a5b08;background:#fbf2dd;border-color:#ecd9a8}.admin-status-pill--danger{color:#7e2d24;background:#fbe7e3;border-color:#efc1b9}.admin-status-pill--info{color:#244e74;background:#e3eef8;border-color:#c5d8e9}.admin-status-pill--muted{color:#4f5b56;background:#eef0ee;border-color:#d8dcd8}.admin-detail-row>td{background:#f4f6f4;padding:0}.admin-detail-panel{flex-direction:column;gap:18px;padding:18px 14px 22px;display:flex}.admin-detail-section{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.admin-detail-section-head h4{color:#1d503a;margin:0;font-size:.98rem;font-weight:600}.admin-detail-helper{color:#5b6b6b;margin:4px 0 0;font-size:.85rem;line-height:1.5}.admin-detail-note{color:#2f3b36;margin:0;font-size:.88rem;line-height:1.55}.admin-detail-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 18px;margin:0;display:grid}.admin-detail-grid>div{flex-direction:column;gap:4px;min-width:0;display:flex}.admin-detail-grid dt{text-transform:uppercase;letter-spacing:.05em;color:#57645e;font-size:.76rem;font-weight:600}.admin-detail-grid dd{color:#1f2a25;word-break:break-word;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:.9rem;display:inline-flex}.admin-detail-placeholder-badge{text-transform:uppercase;letter-spacing:.05em;color:#5b6b6b;background:#eef0ee;border:1px solid #d8dcd8;border-radius:999px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.admin-planned-badge{text-transform:uppercase;letter-spacing:.05em;color:#1d503a;background:#e4f1ea;border:1px solid #c2dcce;border-radius:999px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.admin-line-table{border-collapse:collapse;width:100%;font-size:.88rem}.admin-line-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#57645e;border-bottom:1px solid #e3e7e4;padding:8px 10px;font-size:.76rem;font-weight:600}.admin-line-table tbody td{color:#1f2a25;vertical-align:top;border-bottom:1px solid #f0f2f0;padding:8px 10px}.admin-line-table .admin-line-table-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.admin-line-table-total-row td{background:#f4f6f4;border-bottom:none;font-weight:700}.admin-roadmap-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.admin-roadmap-card{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.admin-roadmap-card header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-roadmap-card h4{color:#1f2a25;margin:0;font-size:.95rem;font-weight:600}.admin-roadmap-card p{color:#5b6b6b;margin:0;font-size:.86rem;line-height:1.5}.admin-footer-notice{color:#6b766f;margin:4px 0 0;font-size:.82rem;line-height:1.5}.icbc-checklist{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.icbc-checklist-item{color:#1f2a25;background:#fafcfa;border:1px solid #e3e7e4;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:.9rem;display:flex}.icbc-check-label{flex:auto;min-width:0}.icbc-check-status{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.icbc-check-status--done{color:#1f5d3c;background:#e4f1ea;border-color:#c2dcce}.icbc-check-status--in-progress{color:#7a5b08;background:#fbf2dd;border-color:#ecd9a8}.icbc-check-status--not-started{color:#4f5b56;background:#eef0ee;border-color:#d8dcd8}.icbc-check-status--not-applicable{color:#6b7484;background:#f1f3f6;border-color:#d6dbe4;font-style:italic}.reports-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.reports-card{background:#fff;border:1px solid #e3e7e4;border-radius:14px;flex-direction:column;gap:8px;min-width:0;padding:16px 18px;display:flex}.reports-card-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.reports-card-label{text-transform:uppercase;letter-spacing:.05em;color:#57645e;flex:auto;min-width:0;margin:0;font-size:.8rem;font-weight:600}.reports-card-badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.reports-card-badge--sample{color:#4f5b56;background:#eef0ee;border-color:#d8dcd8}.reports-card-badge--planned{color:#1f5d3c;background:#e4f1ea;border-color:#c2dcce}.reports-card-badge--placeholder{color:#7a5b08;background:#fbf2dd;border-color:#ecd9a8}.reports-card-value{color:#1f2a25;font-variant-numeric:tabular-nums;margin:0;font-size:1.9rem;font-weight:700;line-height:1.05}.reports-card-helper{color:#6b766f;margin:0;font-size:.82rem;line-height:1.5}.reports-card--success{border-left:3px solid #2b7d50}.reports-card--warning{border-left:3px solid #c98a16}.reports-card--danger{border-left:3px solid #b2453d}.reports-card--info{border-left:3px solid #2f6fa6}.reports-card--neutral{border-left:3px solid #b8c2bd}.reports-card--language{grid-column:span 2}.reports-language-bar{background:#eef0ee;border-radius:999px;align-items:stretch;width:100%;height:14px;margin:6px 0;display:flex;overflow:hidden}.reports-language-bar-segment{height:100%;display:block}.reports-language-bar-segment--en{background:#1d503a}.reports-language-bar-segment--zh{background:#4f9072}.reports-language-bar-segment--other{background:#b8c2bd}.reports-language-legend{color:#1f2a25;flex-wrap:wrap;gap:12px 18px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.reports-language-legend li{align-items:center;gap:6px;display:inline-flex}.reports-language-legend-dot{background:#b8c2bd;border-radius:50%;width:10px;height:10px;display:inline-block}.reports-language-legend-en .reports-language-legend-dot{background:#1d503a}.reports-language-legend-zh .reports-language-legend-dot{background:#4f9072}.reports-language-legend-other .reports-language-legend-dot{background:#b8c2bd}.reports-language-legend-label{color:#1f2a25}.reports-language-legend-percent{color:#57645e;font-variant-numeric:tabular-nums;font-weight:600}.compliance-overview-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.compliance-audit-change{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.compliance-audit-change-old{color:#7a8085;text-decoration:line-through}.compliance-audit-change-arrow{color:#57645e;font-weight:600}.compliance-audit-change-new{color:#1f2a25;font-weight:600}.compliance-audit-table{min-width:960px}.compliance-notes-title{color:#1d503a;margin:18px 0 8px;font-size:.95rem;font-weight:600}.compliance-notes-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.compliance-notes-list li{color:#1f2a25;background:#fff;border:1px solid #e3e7e4;border-radius:10px;padding:12px 14px 12px 38px;font-size:.9rem;line-height:1.55;position:relative}.compliance-notes-list li:before{content:"";background:#1d503a;border-radius:50%;width:8px;height:8px;position:absolute;top:16px;left:14px}.compliance-gate-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.compliance-gate-item{color:#1f2a25;background:#fafcfa;border:1px solid #e3e7e4;border-radius:10px;align-items:center;gap:12px;padding:10px 14px;font-size:.92rem;display:flex}.compliance-gate-checkbox{background:#fff;border:2px solid #b8c2bd;border-radius:4px;flex-shrink:0;width:18px;height:18px}.compliance-gate-label{flex:auto;min-width:0;line-height:1.45}.compliance-gate-status{text-transform:uppercase;letter-spacing:.05em;color:#7a5b08;white-space:nowrap;background:#fbf2dd;border:1px solid #ecd9a8;border-radius:999px;flex-shrink:0;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}@media (width<=720px){.admin-kpi-strip,.admin-kpi-strip--five{grid-template-columns:1fr 1fr}.reports-card--language{grid-column:auto}.admin-detail-grid{grid-template-columns:1fr}.icbc-checklist-item{flex-wrap:wrap;gap:6px}.compliance-gate-item{flex-wrap:wrap;row-gap:6px}.compliance-gate-status{margin-left:30px}}@media (width<=540px){.admin-kpi-strip,.admin-kpi-strip--five{grid-template-columns:1fr}}.platform-ws{flex-direction:column;min-height:0;display:flex}.platform-ws-header{border-bottom:1px solid #e5e9e6;flex-direction:column;gap:4px;padding:20px 28px 16px;display:flex}.platform-ws-title{color:#111827;margin:0;font-size:21px;font-weight:700}.platform-ws-subtitle{color:#6b7280;margin:0;font-size:13px}.platform-ws-layout{grid-template-columns:292px 1fr;align-items:start;min-height:0;display:grid}.platform-ws-accounts{background:#f9fafb;border-right:1px solid #e5e9e6;flex-direction:column;min-height:calc(100vh - 120px);display:flex}.platform-ws-accounts-header{border-bottom:1px solid #e5e9e6;justify-content:space-between;align-items:center;gap:8px;padding:14px 16px 10px;display:flex}.platform-ws-accounts-header h2{text-transform:uppercase;letter-spacing:.07em;color:#57645e;margin:0;font-size:11px;font-weight:700}.platform-ws-add-btn{color:#1d503a;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #cfd4d0;border-radius:999px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:600;transition:background .13s,border-color .13s}.platform-ws-add-btn:hover,.platform-ws-add-btn:focus-visible{background:#f0f7f3;border-color:#1d503a;outline:none}.platform-ws-account-list{flex-direction:column;gap:4px;padding:8px;display:flex;overflow-y:auto}.platform-ws-account-item{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:10px;flex-direction:column;gap:5px;min-width:0;padding:10px 12px;transition:background .12s,border-color .12s;display:flex}.platform-ws-account-item:hover{background:#f0f4f1;border-color:#dce4de}.platform-ws-account-item:focus-visible{outline-offset:-1px;outline:2px solid #1d503a}.platform-ws-account-item.selected{background:#eaf4ef;border-color:#a8d4bc}.platform-ws-account-name{color:#1f2a25;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;line-height:1.35;overflow:hidden}.platform-ws-account-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.platform-ws-clinic-count{color:#6b776f;font-size:11px}.platform-ws-create-account-form{background:#fff;border:1px solid #dce6e0;border-radius:10px;flex-direction:column;gap:8px;margin:8px;padding:12px 14px;display:flex}.platform-ws-form-title{text-transform:uppercase;letter-spacing:.04em;color:#1d503a;margin:0;font-size:12px;font-weight:700}.platform-ws-workspace{flex-direction:column;gap:14px;min-height:calc(100vh - 120px);padding:20px 24px;display:flex}.platform-ws-empty{color:#8a948f;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-height:240px;font-size:14px;display:flex}.platform-ws-account-summary{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.platform-ws-account-summary-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.platform-ws-account-summary-name{color:#111827;margin:0;font-size:17px;font-weight:700}.platform-ws-account-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;display:grid}.platform-ws-account-summary-field{flex-direction:column;gap:2px;display:flex}.platform-ws-field-label{text-transform:uppercase;letter-spacing:.06em;color:#57645e;font-size:10.5px;font-weight:700}.platform-ws-field-value{color:#1f2a25;word-break:break-all;font-size:13px}.platform-ws-field-value--muted{color:#8a948f;font-style:italic}.platform-ws-clinic-profile-summary{border-top:1px solid #edf0ed;flex-direction:column;gap:3px;margin-top:4px;padding:6px 0 4px;display:flex}.platform-ws-clinic-profile-field{color:#3d5046;font-size:12.5px;display:block}.platform-ws-next-step{border:1px solid;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;font-weight:400;display:flex}.platform-ws-next-step--action{color:#1d503a;background:#eaf4ef;border-color:#a8d4bc}.platform-ws-next-step--waiting{color:#7a5b08;background:#fdf6e8;border-color:#ecd9a8}.platform-ws-next-step--done{color:#1a4a7a;background:#e8f1fc;border-color:#b3c9e8}.platform-ws-next-step-icon{flex-shrink:0;font-size:15px}.platform-ws-clinics-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.platform-ws-clinics-title{text-transform:uppercase;letter-spacing:.06em;color:#57645e;margin:0;font-size:11px;font-weight:700}.platform-ws-clinic-list{flex-direction:column;gap:8px;display:flex}.platform-ws-clinic-card{background:#fff;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.platform-ws-clinic-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.platform-ws-clinic-name{color:#1f2a25;margin:0;font-size:14.5px;font-weight:600}.platform-ws-clinic-id{color:#8a948f;word-break:break-all;margin:2px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.platform-ws-clinic-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.platform-ws-clinic-action-btn{cursor:pointer;white-space:nowrap;border:1px solid;border-radius:999px;padding:5px 13px;font-family:inherit;font-size:12.5px;font-weight:600;transition:background .12s,border-color .12s}.platform-ws-clinic-action-btn--primary{color:#fff;background:#1d503a;border-color:#1d503a}.platform-ws-clinic-action-btn--primary:hover:not(:disabled),.platform-ws-clinic-action-btn--primary:focus-visible:not(:disabled){background:#164030;border-color:#164030;outline:none}.platform-ws-clinic-action-btn--primary:disabled{opacity:.55;cursor:default}.platform-ws-clinic-action-btn--secondary{color:#374151;background:#fff;border-color:#cfd4d0}.platform-ws-clinic-action-btn--secondary:hover,.platform-ws-clinic-action-btn--secondary:focus-visible{color:#1d503a;background:#f0f7f3;border-color:#1d503a;outline:none}.platform-ws-invite-form{background:#f4f7f5;border:1px solid #dce6e0;border-radius:10px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.platform-ws-invite-form-title{color:#1d503a;margin:0;font-size:12.5px;font-weight:600}.platform-ws-invite-result{background:#eaf4ef;border:1px solid #a8d4bc;border-radius:10px;flex-direction:column;gap:6px;padding:10px 14px;display:flex}.platform-ws-invite-result-title{color:#1d503a;margin:0;font-size:12.5px;font-weight:700}.platform-ws-dev-link{color:#244e74;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.6}.platform-ws-dev-link a{color:#244e74}.platform-ws-create-clinic-form{background:#f9fafb;border:1px solid #e3e7e4;border-radius:12px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.platform-ws-form-subtitle{color:#5b7060;margin:0;font-size:12.5px;font-style:italic}.platform-ws-label{color:#374151;flex-direction:column;gap:4px;font-size:12.5px;font-weight:500;display:flex}.platform-ws-input{color:#111827;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:7px 10px;font-family:inherit;font-size:13px;transition:border-color .13s,box-shadow .13s}.platform-ws-input:focus{border-color:#1d503a;outline:none;box-shadow:0 0 0 2px #1d503a1a}.platform-ws-form-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.platform-ws-form-error{color:#b2453d;margin:0;font-size:12.5px}.platform-ws-form-success{color:#1d503a;margin:0;font-size:12.5px;font-weight:500}.platform-ws-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.platform-ws-badge--active{color:#1f5d3c;background:#e4f1ea;border-color:#c2dcce}.platform-ws-badge--onboarding{color:#244e74;background:#e3eef8;border-color:#c5d8e9}.platform-ws-badge--pending_payment{color:#7a5b08;background:#fbf2dd;border-color:#ecd9a8}.platform-ws-badge--suspended,.platform-ws-badge--cancelled,.platform-ws-badge--archived{color:#7e2d24;background:#fbe7e3;border-color:#efc1b9}.platform-ws-badge--pending_owner_invite{color:#7a5b08;background:#fbf2dd;border-color:#ecd9a8}.platform-ws-badge--pending_owner_acceptance{color:#244e74;background:#e3eef8;border-color:#c5d8e9}.platform-ws-badge--pending{color:#4f5a68;background:#f1f3f6;border-color:#d6dbe4}@media (width<=860px){.platform-ws-layout{grid-template-columns:1fr}.platform-ws-accounts{border-bottom:1px solid #e5e9e6;border-right:none;min-height:0}.platform-ws-account-list{flex-flow:row;max-height:120px;padding:6px 8px;overflow:auto hidden}.platform-ws-account-item{flex-shrink:0;min-width:140px;max-width:200px}.platform-ws-workspace{min-height:0}}.platform-ws-clinic-ownership{background:#f7f9f8;border-top:1px solid #edf0ed;border-radius:6px;margin-top:8px;padding:8px 10px 6px}.platform-ws-ownership-title{text-transform:uppercase;letter-spacing:.04em;color:#5a7060;margin:0 0 6px;font-size:11.5px;font-weight:700}.platform-ws-ownership-block{flex-direction:column;gap:3px;padding:4px 0;display:flex}.platform-ws-ownership-block+.platform-ws-ownership-block{border-top:1px dashed #dde3dd;margin-top:4px;padding-top:6px}.platform-ws-ownership-row{color:#3d5046;flex-wrap:wrap;align-items:baseline;gap:4px;font-size:12.5px;display:flex}.platform-ws-ownership-email{color:#1a3828;word-break:break-all;font-family:monospace;font-size:12px}.platform-ws-modules-panel{background:#f4f8f4;border:1px solid #d6e3d6;border-radius:6px;margin-top:8px;overflow:hidden}.platform-ws-modules-toggle{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;color:#2e5038;text-align:left;background:#e8f0e8;border:none;border-bottom:1px solid #d6e3d6;justify-content:space-between;align-items:center;width:100%;padding:8px 10px;font-size:12px;font-weight:700;display:flex}.platform-ws-modules-toggle:hover{background:#dceadc}.platform-ws-modules-chevron{color:#5a7060;font-size:10px}.platform-ws-modules-body{padding:8px 10px 10px}.platform-ws-modules-loading,.platform-ws-modules-empty{color:#88a490;margin:4px 0;font-size:12px}.platform-ws-modules-success{color:#2a6639;background:#edfaf0;border:1px solid #b8e6c4;border-radius:4px;margin:4px 0;padding:4px 8px;font-size:12px}.platform-ws-modules-hint{color:#88a490;margin:0 0 6px;font-size:11.5px}.platform-ws-modules-list{flex-direction:column;gap:4px;display:flex}.platform-ws-module-row{background:#f7f9f8;border:1px solid #e3e9e3;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;display:flex}.platform-ws-module-row.is-dirty{background:#f0f7f2;border-color:#b0cbb8}.platform-ws-module-info{flex-direction:column;gap:1px;min-width:0;display:flex}.platform-ws-module-name{color:#2e5038;font-size:12.5px;font-weight:600}.platform-ws-module-code{color:#88a490;font-family:monospace;font-size:10.5px}.platform-ws-module-toggle-wrap{flex-shrink:0;align-items:center;gap:6px;display:flex}.platform-ws-module-toggle{cursor:pointer;background:#d0d8d0;border:1px solid #c0c8c0;border-radius:9px;width:34px;height:18px;padding:0;transition:background .15s,border-color .15s;position:relative}.platform-ws-module-toggle.is-on{background:#3a7d52;border-color:#2e6040}.platform-ws-module-toggle:disabled{opacity:.5;cursor:not-allowed}.platform-ws-module-toggle-knob{background:#fff;border-radius:50%;width:12px;height:12px;transition:left .15s;position:absolute;top:2px;left:2px}.platform-ws-module-toggle.is-on .platform-ws-module-toggle-knob{left:18px}.platform-ws-module-status{color:#88a490;min-width:46px;font-size:11px}.platform-ws-module-status.is-on{color:#2a6639;font-weight:600}.platform-ws-module-unsaved{color:#b87c0a;font-size:10px;font-style:italic}.platform-ws-modules-actions{gap:8px;margin-top:8px;display:flex}.platform-ws-ownership-waiting{color:#7a5b08;font-size:12px;font-style:italic}
