[data-ds=amatuhi],[data-ds=amatuhi][data-variant=conservative]{--c-primary-50:#dbe3ff;--c-primary-100:#dbe3ff;--c-primary-200:#8997be;--c-primary-300:#7280ad;--c-primary-400:#5e6c9a;--c-primary-500:#515e8d;--c-primary-600:#4e61a3;--c-primary-700:#3d4a75;--c-primary-800:#2e3858;--c-primary-900:#1f253b;--c-accent-50:#fff4a5;--c-accent-100:#fff4a5;--c-accent-200:#ffe066;--c-accent-300:#ffcf33;--c-accent-400:#f9b700;--c-accent-500:#f9b700;--c-accent-600:#d49c00;--c-accent-700:#a07500;--c-success-50:#d4f8f3;--c-success-100:#b0efe5;--c-success-500:#5bbfb4;--c-success-700:#3d8a80;--c-warning-50:#fff4a5;--c-warning-100:#ffe87a;--c-warning-500:#f9b700;--c-warning-700:#a07500;--c-danger-50:#ffd3dc;--c-danger-100:#ffb0bf;--c-danger-500:#e44242;--c-danger-700:#b53333;--c-info-50:#dbe3ff;--c-info-100:#c0ccf5;--c-info-500:#515e8d;--c-info-700:#3d4a75;--c-neutral-0:#ffffff;--c-neutral-50:#f0f0f0;--c-neutral-100:#f0f0f0;--c-neutral-200:#dddddd;--c-neutral-300:#c3c3c3;--c-neutral-400:#bcbcbc;--c-neutral-500:#777777;--c-neutral-600:#707070;--c-neutral-700:#535353;--c-neutral-800:#333333;--c-neutral-900:#333333;--c-tag-red:#ef897a;--c-tag-orange:#f9b700;--c-tag-yellow:#ffdf24;--c-tag-green:#6ca679;--c-tag-blue:#5bbfb4;--c-tag-purple:#9e84b1;--bg-app:var(--color-bg-app);--bg-surface:var(--color-bg-surface);--bg-raised:var(--color-bg-surface);--bg-sunken:var(--color-gray-100);--bg-overlay:rgba(0,0,0,0.4);--fg-default:var(--color-fg-default);--fg-strong:var(--color-fg-strong);--fg-muted:var(--color-fg-muted);--fg-subtle:var(--color-gray-600);--fg-onPrimary:var(--color-fg-on-primary);--fg-link:var(--color-fg-link);--border-subtle:var(--color-border-default);--border-default:var(--color-stroke-subtle);--border-strong:var(--color-stroke-strong);--border-focus:var(--color-stroke-focus);--font-sans:var(--font-family-body);--font-mono:var(--font-family-mono);--fs-2xs:11px;--fs-xs:var(--font-size-xs);--fs-sm:var(--font-size-sm);--fs-md:var(--font-size-base);--fs-lg:var(--font-size-md);--fs-xl:var(--font-size-lg);--fs-2xl:var(--font-size-xl);--fs-3xl:var(--font-size-3xl);--fs-4xl:36px;--fs-5xl:48px;--lh-tight:1.25;--lh-snug:1.4;--lh-normal:1.6;--lh-relaxed:1.8;--fw-regular:var(--font-weight-regular);--fw-medium:500;--fw-semibold:600;--fw-bold:var(--font-weight-bold);--space-0:var(--spacing-0);--space-1:var(--spacing-1);--space-2:var(--spacing-2);--space-3:var(--spacing-3);--space-4:var(--spacing-4);--space-5:var(--spacing-5);--space-6:var(--spacing-6);--space-8:var(--spacing-8);--space-10:var(--spacing-10);--space-12:var(--spacing-12);--space-16:64px;--space-20:80px;--space-24:96px;--radius-xs:2px;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-lg);--radius-2xl:var(--radius-full);--radius-full:999px;--shadow-xs:0 1px 0 rgba(0,0,0,0.04);--shadow-sm:0 1px 2px rgba(0,0,0,0.06),0 1px 1px rgba(0,0,0,0.04);--shadow-md:var(--shadow-default);--shadow-lg:0 4px 8px rgba(0,0,0,0.08),0 12px 24px rgba(0,0,0,0.10);--shadow-xl:0 8px 16px rgba(0,0,0,0.10),0 24px 48px rgba(0,0,0,0.12);--shadow-focus:0 0 0 3px rgba(78,97,163,0.25);--shadow-focus-danger:0 0 0 3px rgba(228,66,66,0.25);--control-h-sm:28px;--control-h-md:36px;--control-h-lg:44px;--ease-out:cubic-bezier(0.2,0.8,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--layout-sidebar-w:240px;--layout-sidebar-rail-w:56px;--layout-header-h:56px;--layout-content-max:1280px;--drawer-w-sm:320px;--drawer-w-md:480px;--drawer-w-lg:640px;--bp-sm:640px;--bp-md:1024px;--bp-lg:1280px;--bp-xl:1440px;--z-base:1;--z-sticky:100;--z-drawer:1000;--z-overlay:1100;--z-modal:1200;--z-toast:1400;--z-tooltip:1500}[data-ds=amatuhi][data-variant=modern]{--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--shadow-sm:0 1px 2px rgba(0,0,0,0.04),0 2px 4px rgba(0,0,0,0.03);--shadow-md:0 4px 12px rgba(0,0,0,0.06),0 8px 16px rgba(0,0,0,0.04);--shadow-lg:0 8px 24px rgba(0,0,0,0.08),0 16px 40px rgba(0,0,0,0.06);--control-h-sm:32px;--control-h-md:40px;--control-h-lg:48px}[data-ds=amatuhi][data-density=compact]{--control-h-sm:24px;--control-h-md:32px;--control-h-lg:40px;--space-2:6px;--space-3:10px;--space-4:14px}[data-ds=amatuhi][data-density=comfortable]{--control-h-sm:32px;--control-h-md:44px;--control-h-lg:52px;--space-2:10px;--space-3:14px;--space-4:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 16px;font-family:inherit;font-size:var(--font-size-base);font-weight:500;line-height:1;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background .12s,border-color .12s,color .12s,box-shadow .12s,transform .12s;white-space:nowrap;user-select:none;appearance:none;background:transparent;color:inherit}.btn:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(78,97,163,.25)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn .icon{width:16px;height:16px;flex:0 0 16px}.btn--sm{height:28px;padding:0 12px;font-size:var(--font-size-sm)}.btn--lg{height:44px;padding:0 20px;font-size:var(--font-size-md)}.btn--icon{width:36px;padding:0}.btn--icon.btn--sm{width:28px}.btn--icon.btn--lg{width:44px}.btn--primary{background:var(--color-brand);color:var(--color-fg-on-primary)}.btn--primary:hover{background:var(--color-active-brand)}.btn--primary:active{background:var(--color-brand)}.btn--secondary{background:var(--color-bg-surface);color:var(--color-fg-strong);border-color:var(--color-stroke-subtle)}.btn--secondary:hover{background:var(--color-gray-100);border-color:var(--color-stroke-strong)}.btn--secondary:active{background:var(--color-gray-200)}.btn--ghost{color:var(--color-fg-default)}.btn--ghost:hover{background:var(--color-gray-100)}.btn--ghost:active{background:var(--color-gray-200)}.btn--danger{color:var(--color-fg-on-primary)}.btn--danger,.btn--danger:hover{background:var(--color-error)}.btn--danger:focus-visible{box-shadow:0 0 0 3px rgba(228,66,66,.25)}.btn--accent{color:var(--color-fg-on-primary)}.btn--accent,.btn--accent:hover{background:var(--color-accent)}.btn--link{color:var(--color-fg-link);padding:0 4px;height:auto}.btn--link:hover{text-decoration:underline;background:transparent}.field{flex-direction:column}.field,.field-label{display:flex;gap:6px}.field-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-default);align-items:center}.field-label .req{color:var(--color-error);font-size:var(--font-size-xs)}.field-help{font-size:var(--font-size-xs);color:var(--color-fg-muted)}.field-error{font-size:var(--font-size-xs);color:var(--color-error);display:flex;align-items:center;gap:4px}.input,.select,.textarea{display:flex;align-items:center;width:100%;height:36px;padding:0 12px;background:var(--color-bg-surface);border:1px solid var(--color-stroke-subtle);border-radius:2px;font-family:inherit;font-size:var(--font-size-base);color:var(--color-fg-default);transition:border-color .12s,box-shadow .12s;appearance:none}.input::placeholder,.textarea::placeholder{color:var(--color-fg-muted)}.input:hover,.select:hover,.textarea:hover{border-color:var(--color-stroke-strong)}.input:focus,.select:focus,.textarea:focus{outline:0;border-color:var(--color-stroke-focus);box-shadow:0 0 0 3px rgba(78,97,163,.25)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--color-gray-100);color:var(--color-fg-muted);cursor:not-allowed}.textarea{height:auto;min-height:96px;padding:10px 12px;line-height:1.4;resize:vertical}.input--error,.select--error,.textarea--error{border-color:var(--color-error)}.input--error:focus{box-shadow:0 0 0 3px rgba(228,66,66,.25)}.input-group{display:flex;align-items:center;position:relative}.input-group .icon-leading{position:absolute;left:12px;color:var(--color-fg-muted);width:16px;height:16px;pointer-events:none}.input-group .input--has-leading{padding-left:36px}.input-group .icon-trailing{position:absolute;right:10px;color:var(--color-fg-muted);width:16px;height:16px;pointer-events:none}.input-group .input--has-trailing{padding-right:36px}.select-wrap{position:relative}.select-wrap:after{content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--color-fg-muted);pointer-events:none}.select{padding-right:32px}.choice{display:inline-flex;align-items:center;gap:8px;font-size:var(--font-size-base);cursor:pointer;user-select:none}.choice input{position:absolute;opacity:0;pointer-events:none}.choice .box{width:18px;height:18px;border:1px solid var(--color-stroke-strong);border-radius:2px;background:var(--color-bg-surface);display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s;flex-shrink:0}.choice .box svg{width:12px;height:12px;color:var(--color-fg-on-primary);opacity:0}.choice input:checked+.box{background:var(--color-brand);border-color:var(--color-brand)}.choice input:checked+.box svg{opacity:1}.choice input:focus-visible+.box{box-shadow:0 0 0 3px rgba(78,97,163,.25)}.choice.is-disabled{cursor:not-allowed;opacity:.5}.choice.is-disabled .box{background:var(--color-gray-100);border-color:var(--color-stroke-subtle)}.home-poc__readonly-fieldset{border:0;padding:0;margin:0;min-width:0;display:contents}.home-poc__readonly-fieldset[disabled]{opacity:.6}.choice--radio .box{border-radius:50%}.choice--radio .box:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--color-bg-surface);opacity:0;transition:opacity .12s}.choice--radio input:checked+.box:after{opacity:1}.switch{position:relative;width:36px;height:20px;background:var(--color-gray-300);border-radius:var(--radius-full);display:inline-block;transition:background .12s;cursor:pointer;flex-shrink:0}.switch:after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;background:var(--color-bg-surface);border-radius:50%;box-shadow:var(--shadow-sm);transition:left .12s}.switch.on{background:var(--color-brand)}.switch.on:after{left:18px}.tag{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500;line-height:1;white-space:nowrap;background:var(--color-gray-100);color:var(--color-fg-default)}.tag .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.tag--solid{color:var(--color-fg-on-primary)}.tag--subtle{background:transparent;border:1px solid var(--color-stroke-subtle)}.tag-success{background:var(--color-bg-success);color:var(--color-tag-green)}.tag-warning{background:var(--color-bg-warning);color:var(--color-accent)}.tag-danger{background:var(--color-bg-danger);color:var(--color-error)}.tag-info{background:var(--color-bg-info);color:var(--color-brand)}.tag-neutral{background:var(--color-gray-100);color:var(--color-fg-muted)}.tag-red{background:oklch(95% .03 28);color:var(--color-tag-coral)}.tag-orange{background:oklch(95% .03 60);color:var(--color-accent)}.tag-yellow{background:oklch(95% .04 95);color:oklch(48% .13 75)}.tag-green{background:oklch(95% .03 150);color:var(--color-tag-green)}.tag-blue{background:oklch(95% .03 230);color:var(--color-tag-teal)}.tag-purple{background:oklch(95% .03 300);color:var(--color-tag-purple)}.tbl-wrap{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:0;overflow:hidden}.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-sm);table-layout:fixed}.tbl thead th{text-align:left!important;font-weight:600;color:var(--color-fg-muted);font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;padding:12px 16px;background:var(--color-gray-100);border-bottom:1px solid var(--color-stroke-subtle);border-right:1px solid var(--color-border-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tbl thead th:last-child{border-right:0}.tbl thead th .sort{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.tbl tbody td,.tbl thead th .sort:hover{color:var(--color-fg-default)}.tbl tbody td{padding:12px 16px;border-bottom:1px solid var(--color-border-default);border-right:1px solid var(--color-border-default);overflow:hidden;text-overflow:ellipsis}.tbl tbody td:last-child{border-right:0}.tbl tbody tr:last-child td{border-bottom:0}.tbl tbody tr.is-selected td,.tbl tbody tr.is-selected:hover td{background:var(--color-bg-hover)}.col-id{width:110px;font-family:var(--font-family-mono)}.col-name{width:160px}.col-name-wide{width:220px}.col-date{width:110px;white-space:nowrap}.col-datetime{width:150px;white-space:nowrap;font-family:var(--font-family-mono)}.col-status{width:120px}.col-num{width:90px;text-align:right;font-variant-numeric:tabular-nums}.col-action{width:90px;text-align:center}.col-check{width:50px;text-align:center}.col-shrink{width:70px}.col-auto{width:auto}.tbl--equal td,.tbl--equal th{width:25%}.tbl--equal-6 td,.tbl--equal-6 th{width:16.6667%}.tbl .num{font-variant-numeric:tabular-nums}.tbl .actions,.tbl .num{text-align:right}table:not(.home-poc__detail-table) thead th{border-right:1px solid var(--color-border-default);text-align:left!important}table:not(.home-poc__detail-table) thead th:last-child{border-right:0}table:not(.home-poc__detail-table) tbody td{border-right:1px solid var(--color-border-default)}table:not(.home-poc__detail-table) tbody td:last-child{border-right:0}.pager{justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 16px;background:var(--color-bg-surface);border-top:1px solid var(--color-border-default);font-size:var(--font-size-sm);color:var(--color-fg-muted)}.pager,.pager-pages{display:flex;align-items:center}.pager-pages{gap:4px}.pager-pages button{appearance:none;border:1px solid transparent;background:transparent;height:32px;min-width:32px;padding:0 8px;border-radius:var(--radius-sm);font-family:inherit;font-size:var(--font-size-sm);color:var(--color-fg-default);cursor:pointer}.pager-pages button:hover{background:var(--color-gray-100)}.pager-pages button.is-current{background:var(--color-brand);color:var(--color-fg-on-primary)}.pager-pages button:disabled{opacity:.4;cursor:not-allowed}.card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);padding:24px}.card,.modal-scrim{border-radius:var(--radius-lg)}.modal-scrim{position:relative;background:rgba(0,0,0,.4);padding:32px;display:flex;align-items:center;justify-content:center;min-height:360px}.modal-scrim--fixed{position:fixed;inset:0;z-index:var(--z-modal);padding:24px;min-height:0;border-radius:0}.modal-scrim--fixed>.modal{max-height:calc(100dvh - 48px);display:flex;flex-direction:column}.modal-scrim--fixed>.modal>.modal-body{flex:1;overflow-y:auto;min-height:0}@media (max-width:639px){.modal-scrim--fixed{padding:12px}.modal-scrim--fixed>.modal{max-height:calc(100dvh - 24px);width:100%}}.modal{background:var(--color-bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:min(560px,100%);overflow:hidden}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px}.modal-head h4{margin:0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-fg-strong)}.modal-body{padding:0 24px 16px;color:var(--color-fg-default);font-size:var(--font-size-sm);line-height:1.8}.modal-foot{display:flex;gap:8px;justify-content:flex-end;padding:16px 24px 20px;border-top:1px solid var(--color-border-default);background:var(--color-gray-100)}.modal-close{appearance:none;border:0;background:transparent;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-fg-muted);cursor:pointer}.modal-close:hover{background:var(--color-gray-100);color:var(--color-fg-strong)}.drawer-frame{position:relative;height:360px;border-radius:var(--radius-lg);background:var(--color-gray-100);overflow:hidden;border:1px solid var(--color-border-default)}.drawer{position:absolute;top:0;right:0;height:100%;width:320px;background:var(--color-bg-surface);border-left:1px solid var(--color-border-default);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border-default)}.drawer-head h4{margin:0;font-size:var(--font-size-base);font-weight:600}.drawer-body{padding:16px 20px;flex:1;color:var(--color-fg-default)}.drawer-body,.toast{font-size:var(--font-size-sm)}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-left:3px solid var(--color-brand);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:280px;max-width:380px}.toast .icon{width:18px;height:18px;flex-shrink:0;margin-top:1px;color:var(--color-brand)}.toast strong{display:block;font-weight:600;color:var(--color-fg-strong);font-size:var(--font-size-sm)}.toast .toast-body{color:var(--color-fg-muted);margin-top:2px;font-size:var(--font-size-xs)}.toast--success{border-left-color:var(--color-tag-teal)}.toast--success .icon{color:var(--color-tag-teal)}.toast--warning{border-left-color:var(--color-accent)}.toast--warning .icon{color:var(--color-accent)}.toast--danger{border-left-color:var(--color-error)}.toast--danger .icon{color:var(--color-error)}.toast--info{border-left-color:var(--color-brand)}.toast--info .icon{color:var(--color-brand)}.toast-container{position:fixed;top:16px;right:16px;z-index:4000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast-container .toast{pointer-events:auto;animation:toast-in .3s ease-out}@keyframes toast-in{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}.tooltip{position:relative;display:inline-flex;color:var(--color-fg-on-primary);padding:6px 10px;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.tooltip,.tooltip:after{background:var(--color-fg-strong)}.tooltip:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translateX(-50%) rotate(45deg);width:8px;height:8px}.crumb{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);flex-wrap:wrap}.crumb,.crumb a{color:var(--color-fg-muted)}.crumb a{text-decoration:none;padding:2px 4px;border-radius:2px}.crumb a:hover{color:var(--color-fg-default);background:var(--color-gray-100)}.crumb .crumb-link{color:var(--color-link);cursor:pointer}.crumb .crumb-link:hover{color:var(--color-active-brand);text-decoration:underline}.crumb .sep{color:var(--color-fg-muted)}.crumb .current{color:var(--color-fg-strong);font-weight:500}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-border-default)}.tabs .tab{position:relative;padding:10px 16px;font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-muted);cursor:pointer;border:0;background:transparent;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.tabs .tab:hover{color:var(--color-fg-default);background:var(--color-gray-100)}.tabs .tab.is-active{color:var(--color-active-brand)}.tabs .tab.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--color-brand);border-radius:2px 2px 0 0}.horizontal-menu{display:flex;flex-wrap:nowrap;gap:4px;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid var(--color-border-default);-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}.horizontal-menu::-webkit-scrollbar{display:none}.horizontal-menu>button{position:relative;flex:0 0 auto;white-space:nowrap;padding:10px 16px;font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-muted);cursor:pointer;border:0;background:transparent;border-radius:var(--radius-sm) var(--radius-sm) 0 0;font-family:inherit;scroll-snap-align:start;transition:color .12s cubic-bezier(.2,.8,.2,1),background .12s cubic-bezier(.2,.8,.2,1)}.horizontal-menu>button:hover{color:var(--color-fg-default);background:var(--color-gray-100)}.horizontal-menu>button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(78,97,163,.25);border-radius:var(--radius-sm)}.horizontal-menu>button.is-active{color:var(--color-active-brand)}.horizontal-menu>button.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--color-brand);border-radius:2px 2px 0 0}.horizontal-menu>button:disabled,.horizontal-menu>button[aria-disabled=true]{opacity:.45;cursor:not-allowed}.view-switch{gap:2px;padding:3px;background:var(--color-gray-100);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.view-switch,.view-switch>button{display:inline-flex;align-items:center}.view-switch>button{gap:6px;padding:6px 12px;border:0;background:transparent;border-radius:var(--radius-sm);font-family:inherit;font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-muted);cursor:pointer;white-space:nowrap;transition:background .12s cubic-bezier(.2,.8,.2,1),color .12s cubic-bezier(.2,.8,.2,1),box-shadow .12s cubic-bezier(.2,.8,.2,1)}.view-switch>button .icon{width:16px;height:16px;flex-shrink:0}.view-switch>button:hover{color:var(--color-fg-default)}.view-switch>button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(78,97,163,.25)}.view-switch>button.is-active{background:var(--color-bg-surface);color:var(--color-brand);box-shadow:var(--shadow-xs)}.view-switch>button:disabled,.view-switch>button[aria-disabled=true]{opacity:.4;cursor:not-allowed}.view-switch--icon-only>button{padding:7px}.view-switch--icon-only>button>span:not(.icon){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.section-switcher{display:flex;gap:var(--spacing-2);flex-wrap:wrap;padding:0;margin:0 0 24px;list-style:none}.section-switcher>button{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);border-radius:var(--radius-md);padding:12px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:60px;min-width:168px;cursor:pointer;font-family:inherit;text-align:left;color:var(--color-fg-default);position:relative;transition:background .12s cubic-bezier(.2,.8,.2,1),border-color .12s cubic-bezier(.2,.8,.2,1),box-shadow .12s cubic-bezier(.2,.8,.2,1)}.section-switcher>button>strong{font-size:var(--font-size-base);font-weight:600;color:var(--color-fg-strong);line-height:1.3}.section-switcher>button>span{font-size:var(--font-size-xs);color:var(--color-fg-muted);line-height:1.4}.section-switcher>button:hover{border-color:var(--color-brand);background:var(--color-gray-100)}.section-switcher>button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(78,97,163,.25);border-color:var(--color-brand)}.section-switcher>button.active{border-color:var(--color-brand);background:var(--color-bg-info);padding-left:13px}.section-switcher>button.active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--color-brand);border-radius:0 2px 2px 0}.section-switcher>button.active>strong{color:var(--color-brand)}.section-switcher>button.active>span{color:var(--color-active-brand)}.section-switcher>button:disabled,.section-switcher>button[aria-disabled=true]{opacity:.5;cursor:not-allowed}@media (max-width:639px){.section-switcher--terse>button>span{display:none}.section-switcher>button{min-width:0;flex:1 1 calc(50% - var(--spacing-2))}}.app-shell{display:grid;grid-template-columns:var(--layout-sidebar-w) 1fr;grid-template-rows:var(--layout-header-h) 1fr;background:var(--color-bg-app);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden;min-height:560px}.app-side{grid-row:1/3;background:var(--color-bg-surface);border-right:1px solid var(--color-border-default);display:flex;flex-direction:column}.app-side-brand{display:flex;align-items:center;gap:10px;height:var(--layout-header-h);padding:0 16px;border-bottom:1px solid var(--color-border-default);font-weight:var(--font-weight-bold);color:var(--color-fg-strong);letter-spacing:.04em}.app-side-nav{padding:12px 8px;display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;font-size:var(--font-size-sm);color:var(--color-fg-default);text-decoration:none;border-radius:0;cursor:pointer;position:relative}.nav-item:hover{background:var(--color-gray-100)}.nav-item.is-active{background:var(--color-bg-info);color:var(--color-brand);font-weight:500}.nav-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-brand);border-radius:0 2px 2px 0}.nav-item .icon{width:18px;height:18px;flex-shrink:0;color:var(--color-fg-muted)}.nav-item.is-active .icon{color:var(--color-active-brand)}.nav-item .badge{margin-left:auto;background:var(--color-accent);color:var(--color-fg-on-primary);height:16px;min-width:16px;padding:0 5px;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center}.nav-group,.nav-item .badge{font-size:10px;font-weight:600}.nav-group{letter-spacing:.12em;text-transform:uppercase;color:var(--color-fg-muted);padding:12px 14px 4px}.nav-accordion-caret{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;color:var(--color-fg-muted)}.nav-item.nav-accordion-head.is-open{background:var(--color-bg-info);color:var(--color-brand);font-weight:600}.nav-item.nav-accordion-head.is-open:hover{background:var(--color-bg-info)}.nav-item.nav-accordion-head.is-open .icon{color:var(--color-brand)}.nav-subitems{display:flex;flex-direction:column}.nav-item.nav-subitem{padding-left:16px;color:var(--color-fg-muted);border-radius:0}.nav-item.nav-subitem.is-active{background:var(--color-gray-100);color:var(--color-fg-default)}.nav-item.nav-subitem.is-active:before{content:none}.nav-item.nav-subitem.is-active .icon{color:var(--color-fg-muted)}.app-header{justify-content:space-between;padding:0 20px;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default)}.app-header,.app-header-left{display:flex;align-items:center}.app-header-left{gap:16px;min-width:0}.app-header-search{position:relative}.app-header-search .input{width:280px;max-width:100%}.app-header-right{gap:8px}.app-header-right,.icon-btn{display:flex;align-items:center}.icon-btn{appearance:none;border:0;background:transparent;width:36px;height:36px;border-radius:var(--radius-md);color:var(--color-fg-muted);cursor:pointer;justify-content:center;position:relative}.icon-btn:hover{background:var(--color-gray-100);color:var(--color-fg-default)}.icon-btn .dot-notify{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:var(--color-accent);border:2px solid var(--color-bg-surface)}.avatar{width:32px;height:32px;border-radius:50%;background:var(--color-bg-info);color:var(--color-brand);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-sm)}.app-main{background:var(--color-bg-app);padding:24px;overflow-y:auto}.app-shell--rail{grid-template-columns:var(--layout-sidebar-rail-w) 1fr}.app-shell--rail .app-side-brand>span,.app-shell--rail .nav-group,.app-shell--rail .nav-item>span:not(.badge):not(.icon){display:none}.app-shell--rail .nav-item{justify-content:center;padding:9px 0;position:relative}.app-shell--rail .nav-item .badge{position:absolute;top:4px;right:6px;margin:0}.app-shell--rail .app-side-brand{justify-content:center;padding:0}.app-shell--rail .nav-item[data-label]:after{content:attr(data-label);position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);background:var(--color-fg-strong);color:var(--color-fg-on-primary);font-size:var(--font-size-xs);padding:4px 8px;border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s cubic-bezier(.2,.8,.2,1);z-index:var(--z-tooltip)}.app-shell--rail .nav-item:hover[data-label]:after{opacity:1}.app-shell--drawer{grid-template-columns:0 1fr}.app-shell--drawer .app-side{position:absolute;inset:0 auto 0 0;width:var(--layout-sidebar-w);z-index:var(--z-drawer);transform:translateX(-100%);transition:transform .2s cubic-bezier(.2,.8,.2,1);box-shadow:var(--shadow-lg)}.app-shell--drawer.is-drawer-open .app-side{transform:translateX(0)}.app-shell--drawer .app-scrim{position:absolute;inset:0;background:rgba(0,0,0,.4);opacity:0;pointer-events:none;transition:opacity .2s cubic-bezier(.2,.8,.2,1);z-index:calc(var(--z-drawer) - 1)}.app-shell--drawer.is-drawer-open .app-scrim{opacity:1;pointer-events:auto}.app-hamburger{appearance:none;border:0;background:transparent;width:36px;height:36px;border-radius:var(--radius-md);color:var(--color-fg-default);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.app-hamburger:hover{background:var(--color-gray-100)}.app-hamburger:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(78,97,163,.25)}.app-shell--animated .app-side{transition:width .2s cubic-bezier(.2,.8,.2,1)}.ds-api{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-sm);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden}.ds-api thead th{text-align:left;font-weight:600;color:var(--color-fg-muted);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;background:var(--color-gray-100);border-bottom:1px solid var(--color-stroke-subtle);white-space:nowrap}.ds-api tbody td{padding:12px 14px;border-bottom:1px solid var(--color-border-default);vertical-align:top;line-height:1.4}.ds-api tbody tr:last-child td{border-bottom:0}.ds-api tbody td:first-child{font-family:var(--font-family-mono);font-size:12px;color:var(--color-fg-strong);white-space:nowrap;width:1%}.ds-api .req{font-weight:600;letter-spacing:.04em;color:var(--color-error);background:var(--color-bg-danger)}.ds-api .opt,.ds-api .req{display:inline-block;font-size:10px;padding:1px 6px;border-radius:2px;margin-left:6px;vertical-align:middle}.ds-api .opt{color:var(--color-fg-muted);background:var(--color-gray-100)}.ds-api .type,.ds-api code{color:var(--color-brand);background:var(--color-bg-info);padding:1px 6px;border-radius:2px}.ds-api .type,.ds-api code,.state-chip{font-family:var(--font-family-mono);font-size:11px}.state-chip{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:var(--radius-sm);background:var(--color-gray-100);color:var(--color-fg-default);letter-spacing:.04em}.state-chip--active{background:var(--color-bg-info);color:var(--color-brand)}.state-chip--danger{background:var(--color-bg-danger);color:var(--color-error)}.state-chip--warning{background:var(--color-bg-warning);color:var(--color-accent)}.state-chip--success{background:var(--color-bg-success);color:var(--color-tag-green)}.ver-pill{display:inline-flex;align-items:center;gap:6px;background:var(--color-bg-warning);color:var(--color-accent);font-family:var(--font-family-mono);font-size:11px;font-weight:600;letter-spacing:.04em;padding:2px 8px;border-radius:var(--radius-full);border:1px solid oklch(86% .07 28)}.ver-pill .dot{width:6px;height:6px;border-radius:50%;background:var(--color-accent)}.ds-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--color-bg-info);border:1px solid oklch(85% .06 230);border-left:3px solid var(--color-brand);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-fg-default);line-height:1.8}.ds-note .icon{color:var(--color-brand);flex-shrink:0;margin-top:2px}.ds-note strong{display:block;color:var(--color-fg-strong);margin-bottom:2px}.ds-note--warn{background:var(--color-bg-warning);border-color:oklch(85% .06 85);border-left-color:var(--color-accent)}.ds-note--warn .icon{color:var(--color-accent)}.shell-preview-wrap{position:relative;background:var(--color-gray-100);border-radius:var(--radius-lg);padding:0;overflow:hidden}.shell-preview-wrap .app-shell{position:relative;border-radius:var(--radius-lg);border:1px solid var(--color-border-default);height:520px;min-height:0}.state-toggle{display:inline-flex;gap:4px;padding:4px;background:var(--color-gray-100);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.state-toggle button{appearance:none;border:0;background:transparent;padding:6px 12px;font-family:inherit;font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-muted);cursor:pointer;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:6px}.state-toggle button:hover{color:var(--color-fg-default)}.state-toggle button.is-active{background:var(--color-bg-surface);color:var(--color-brand);box-shadow:var(--shadow-xs)}.state-toggle .icon{width:14px;height:14px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-head h2{margin:4px 0 0;font-size:var(--font-size-xl);font-weight:600;color:var(--color-fg-strong);letter-spacing:-.01em}.page-head-actions{display:flex;align-items:center;gap:var(--spacing-3);flex-wrap:wrap}.page-head-actions .input,.page-head-actions .select,.page-head-actions .select-wrap{width:auto}.page-head-actions .select-wrap .select{min-width:160px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:16px 20px}.stat-card .stat-label{font-size:var(--font-size-xs);color:var(--color-fg-muted);font-weight:500;margin-bottom:6px}.stat-card .stat-val{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-fg-strong);line-height:1.1;letter-spacing:-.01em}.stat-card .stat-foot{font-size:var(--font-size-xs);color:var(--color-fg-muted);margin-top:6px;display:flex;align-items:center;gap:6px}.stat-card .stat-foot .up{color:var(--color-tag-green)}.stat-card .stat-foot .down{color:var(--color-error)}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:12px 16px;margin-bottom:16px}.filter-bar .input{width:240px}.bill-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.bill-status .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.bill-status--paid{background:var(--color-bg-success);color:var(--color-tag-green)}.bill-status--pending{background:var(--color-bg-warning);color:var(--color-accent)}.bill-status--overdue{background:var(--color-bg-danger);color:var(--color-error)}.bill-status--draft{background:var(--color-gray-100);color:var(--color-fg-muted)}.viewport-frame{background:var(--color-gray-100);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:12px;display:flex;flex-direction:column;align-items:center;gap:8px}.viewport-frame .vp-screen{background:var(--color-bg-surface);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);width:100%}.viewport-frame .vp-label{font-family:var(--font-family-mono);font-size:11px;color:var(--color-fg-muted)}.dp-wrap{position:relative;display:flex;flex-direction:column;gap:8px}.dp-pop{position:absolute;top:100%;left:0;z-index:200;width:320px;background:var(--color-bg-surface);border:1px solid var(--color-stroke-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:12px;margin-top:4px}.dp-head{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 12px}.dp-month{font-weight:600;font-size:var(--font-size-base);color:var(--color-fg-strong)}.dp-headctl{display:flex;align-items:center;gap:6px}.dp-yearsel{appearance:auto;font-family:inherit;font-size:var(--font-size-base);font-weight:600;color:var(--color-fg-strong);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);padding:2px 4px;cursor:pointer}.dp-yearsel:hover{background:var(--color-gray-100)}.dp-yearsel:focus-visible{outline:2px solid var(--color-brand);outline-offset:1px}.dp-nav{appearance:none;border:0;background:transparent;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-fg-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.dp-nav:hover{background:var(--color-gray-100);color:var(--color-fg-default)}.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dp-dow{text-align:center;font-size:var(--font-size-xs);color:var(--color-fg-muted);padding:6px 0;font-weight:500}.dp-dow--we{color:var(--color-error)}.dp-cell{appearance:none;border:0;background:transparent;height:36px;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-fg-default);border-radius:var(--radius-sm);cursor:pointer;font-variant-numeric:tabular-nums}.dp-cell:hover{background:var(--color-gray-100)}.dp-cell--mute{color:var(--color-fg-muted);opacity:.5}.dp-cell.is-we{color:var(--color-error)}.dp-cell.is-today{outline:1px solid var(--color-brand)}.dp-cell.is-selected{background:var(--color-brand);color:var(--color-fg-on-primary);font-weight:600}.dp-foot{display:flex;align-items:center;gap:6px;margin-top:8px;padding-top:12px;border-top:1px solid var(--color-border-default)}.tp-wrap{position:relative;display:flex;flex-direction:column;gap:8px}.tp-pop{position:absolute;top:100%;left:0;z-index:200;width:176px;background:var(--color-bg-surface);border:1px solid var(--color-stroke-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:8px;margin-top:4px}.tp-cols{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tp-col{display:flex;flex-direction:column;min-width:0}.tp-col-head{text-align:center;font-size:var(--font-size-xs);color:var(--color-fg-muted);padding:2px 0 6px;font-weight:500}.tp-list{display:flex;flex-direction:column;gap:2px;max-height:168px;overflow-y:auto;scrollbar-width:thin}.tp-opt{appearance:none;border:0;background:transparent;height:32px;flex:0 0 auto;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-fg-default);border-radius:var(--radius-sm);cursor:pointer;font-variant-numeric:tabular-nums}.tp-opt:hover{background:var(--color-gray-100)}.tp-opt.is-selected{background:var(--color-brand);color:var(--color-fg-on-primary);font-weight:600}.tp-foot{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border-default)}.range-input,.tp-foot{display:flex;align-items:center;gap:6px}.range-input{flex-wrap:wrap}.range-cell{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--color-stroke-subtle);border-radius:var(--radius-md);background:var(--color-bg-surface);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--color-fg-default)}.range-cell .icon,.range-dash{color:var(--color-fg-muted)}.range-dash{padding:0 4px}.ms{position:relative;border:1px solid var(--color-stroke-subtle);border-radius:var(--radius-md);background:var(--color-bg-surface)}.ms-chips{display:flex;flex-wrap:wrap;padding:6px 8px;min-height:36px}.ms-chip,.ms-chips{gap:6px;align-items:center}.ms-chip{display:inline-flex;background:var(--color-bg-info);color:var(--color-brand);padding:4px 4px 4px 10px;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500}.ms-chip button{appearance:none;border:0;background:transparent;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:2px;color:var(--color-active-brand);cursor:pointer}.ms-chip button:hover{background:var(--color-bg-info)}.ms-input{flex:1;min-width:80px;appearance:none;border:0;background:transparent;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-fg-default);outline:0;padding:4px 0}.ms-pop{border-top:1px solid var(--color-border-default);background:var(--color-gray-100);padding:8px;display:flex;flex-wrap:wrap;gap:6px}.ms-pop-item{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);padding:4px 10px;border-radius:var(--radius-full);font-family:inherit;font-size:var(--font-size-xs);color:var(--color-fg-default);cursor:pointer}.ms-pop-item:hover{background:var(--color-bg-info);border-color:var(--color-brand);color:var(--color-brand)}.file-input{display:flex;gap:8px;align-items:stretch}.file-input .input{flex:1}.file-input-actions{display:flex;gap:6px}.file-attached{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg-info);border:1px solid var(--color-bg-info);border-radius:var(--radius-md)}.file-attached .icon{color:var(--color-active-brand);flex-shrink:0}.file-attached-meta{flex:1;min-width:0}.file-attached-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-attached-size{font-size:var(--font-size-xs);color:var(--color-fg-muted);margin-top:2px}.file-drop{border:1.5px dashed var(--color-stroke-subtle);border-radius:var(--radius-lg);padding:32px;text-align:center;background:var(--color-gray-100);color:var(--color-fg-muted);transition:border-color .12s,background .12s}.file-drop:hover{border-color:var(--color-brand);background:var(--color-bg-info);color:var(--color-brand)}.file-drop .icon{color:var(--color-fg-muted);margin-bottom:8px}.file-drop:hover .icon{color:var(--color-brand)}.file-drop-title{font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-default);margin-bottom:4px}.file-drop-sub{font-size:var(--font-size-xs)}.file-drop a{color:var(--color-active-brand);text-decoration:underline}.tree{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);overflow:hidden}.tree-tools{display:flex;gap:8px;align-items:center;padding:8px;border-bottom:1px solid var(--color-border-default);background:var(--color-gray-100)}.tree-tools .input{flex:1;height:32px}.tree-body{padding:6px 0;max-height:320px;overflow-y:auto}.tree-row{display:flex;align-items:center;gap:6px;height:30px;padding-right:12px;font-size:var(--font-size-sm);color:var(--color-fg-default);cursor:pointer}.tree-row:hover{background:var(--color-gray-100)}.tree-row.is-active{background:var(--color-bg-info);color:var(--color-brand);font-weight:500}.tree-row .icon{color:var(--color-fg-muted);flex-shrink:0}.tree-row.is-active .icon{color:var(--color-active-brand)}.tree-caret{appearance:none;border:0;background:transparent;width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--color-fg-muted);cursor:pointer;flex-shrink:0}.tree-caret--leaf{pointer-events:none}.tree-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-frame{position:relative;background:rgba(0,0,0,.4);padding:32px;display:flex;align-items:center;justify-content:center;min-height:240px}.confirm,.confirm-frame{border-radius:var(--radius-lg)}.confirm{background:var(--color-bg-surface);box-shadow:var(--shadow-xl);width:min(420px,100%);padding:24px;display:grid;grid-template-columns:auto 1fr;gap:16px}.confirm-icon{width:40px;height:40px;border-radius:50%;background:var(--color-bg-danger);color:var(--color-error);display:flex;align-items:center;justify-content:center;flex-shrink:0}.confirm-body{min-width:0}.confirm-body h4{margin:0 0 8px;font-size:var(--font-size-base);font-weight:600;color:var(--color-fg-strong)}.confirm-body p{margin:0;font-size:var(--font-size-sm);color:var(--color-fg-muted);line-height:1.4}.confirm-foot{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.passcode-label{font-size:var(--font-size-sm);color:var(--color-fg-muted);font-weight:500;margin-bottom:4px}.passcode{display:flex;gap:12px}.passcode input{width:56px;height:64px;text-align:center;font-size:var(--font-size-3xl);font-weight:600;font-variant-numeric:tabular-nums;border:1.5px solid var(--color-stroke-subtle);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-fg-strong)}.passcode input:focus,.passcode input:not(:placeholder-shown):not([value=""]){border-color:var(--color-brand);outline:0}.stepper{gap:0}.step,.stepper{display:flex;align-items:center}.step{flex-direction:column;gap:8px;min-width:100px}.step-dot{width:32px;height:32px;border-radius:50%;background:var(--color-bg-surface);border:1.5px solid var(--color-stroke-subtle);color:var(--color-fg-muted);font-size:var(--font-size-sm);font-weight:600;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}.step.is-done .step-dot{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-fg-on-primary)}.step.is-current .step-dot{background:var(--color-bg-surface);border-color:var(--color-brand);color:var(--color-brand);box-shadow:0 0 0 4px var(--color-bg-info)}.step-label{font-size:var(--font-size-xs);color:var(--color-fg-muted);font-weight:500;text-align:center}.step.is-current .step-label,.step.is-done .step-label{color:var(--color-fg-strong)}.step-line{flex:1;height:2px;background:var(--color-stroke-subtle);margin:0 -8px 28px;min-width:24px}.step-line.is-done{background:var(--color-brand)}.choice-group{display:inline-flex;flex-wrap:wrap;gap:6px}.choice-btn,.choice-group .choice-btn{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);height:44px;padding:0 16px;font-family:inherit;font-size:var(--font-size-base);font-weight:500;color:var(--color-fg-default);border-radius:var(--radius-md);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.choice-btn:hover{background:var(--color-gray-100)}.choice-btn.is-selected{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-fg-on-primary)}.choice-group--lg .choice-btn{height:52px;padding:0 22px;font-size:var(--font-size-md)}.compact-choice{display:flex;align-items:center;gap:12px}.compact-choice-label{font-size:var(--font-size-sm);color:var(--color-fg-muted);min-width:110px;font-weight:500}.compact-choice-options{display:flex;flex-wrap:wrap;gap:4px}.compact-choice-options button{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);height:36px;padding:0 12px;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-fg-default);border-radius:var(--radius-md);cursor:pointer;font-variant-numeric:tabular-nums}.compact-choice-options button:hover{background:var(--color-gray-100)}.compact-choice-options button.is-selected{background:var(--color-bg-info);border-color:var(--color-brand);color:var(--color-brand);font-weight:600}.touch-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.touch-field{display:flex;flex-direction:column;gap:6px}.touch-field label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-default)}.touch-input{height:48px;padding:0 14px;font-family:inherit;font-size:var(--font-size-md);color:var(--color-fg-strong);border:1px solid var(--color-stroke-subtle);border-radius:var(--radius-md);background:var(--color-bg-surface);width:100%;appearance:none}.touch-input:focus{outline:0;border-color:var(--color-brand);box-shadow:0 0 0 3px rgba(78,97,163,.25)}.touch-textarea{min-height:96px;padding:12px 14px;font-family:inherit;font-size:var(--font-size-base);color:var(--color-fg-default);border:1px solid var(--color-stroke-subtle);border-radius:var(--radius-md);background:var(--color-bg-surface);width:100%;resize:vertical}.touch-textarea:focus{outline:0;border-color:var(--color-brand);box-shadow:0 0 0 3px rgba(78,97,163,.25)}.touch-inline{display:flex;align-items:center;gap:6px}.touch-inline span{color:var(--color-fg-muted)}.time-input{display:flex;gap:6px;align-items:stretch}.time-input .time-now,.time-input button{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);padding:0 14px;height:48px;font-family:inherit;font-size:var(--font-size-sm);font-weight:500;color:var(--color-brand);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap}.time-input button:hover{background:var(--color-bg-info)}.time-input select{flex:1;height:48px;padding:0 14px;font-family:inherit;font-size:var(--font-size-md);font-variant-numeric:tabular-nums;color:var(--color-fg-strong);border:1px solid var(--color-stroke-subtle);border-radius:var(--radius-md);background:var(--color-bg-surface);appearance:none}.time2-row{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center}.time2-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-fg-strong)}.time2-col{display:flex;flex-direction:column;gap:12px}.time2-cell{display:flex;align-items:center;gap:12px}.time2-cell .circ{width:28px;height:28px;border-radius:50%;background:var(--color-bg-info);color:var(--color-brand);font-size:var(--font-size-sm);font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.action-card{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);border-radius:var(--radius-xl);padding:28px 24px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:border-color .12s,background .12s,box-shadow .12s;min-height:120px;font-family:inherit}.action-card:hover{border-color:var(--color-brand);background:var(--color-bg-info);box-shadow:var(--shadow-md)}.action-card .icon{color:var(--color-active-brand);margin-bottom:4px}.action-card strong{font-size:var(--font-size-lg);font-weight:600;color:var(--color-fg-strong)}.action-card span{font-size:var(--font-size-sm);color:var(--color-fg-muted)}.floor-switch{display:flex;gap:8px}.floor-switch button{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);border-radius:var(--radius-md);padding:14px 22px;font-family:inherit;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-fg-default);display:flex;align-items:baseline;gap:8px;cursor:pointer}.floor-switch button span{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--color-fg-muted)}.floor-switch button.is-active{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-fg-on-primary)}.floor-switch button.is-active span{color:rgba(255,255,255,.8)}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.room-card{appearance:none;border:1px solid var(--color-stroke-subtle);background:var(--color-bg-surface);border-radius:var(--radius-md);padding:12px 14px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:4px;position:relative;min-height:78px;font-family:inherit}.room-card:hover{border-color:var(--color-brand);background:var(--color-bg-info)}.room-card.is-selected{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-fg-on-primary)}.room-card.is-missing{border-color:var(--color-error);background:var(--color-bg-danger)}.room-card .room-number{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-fg-muted);font-weight:500}.room-card.is-selected .room-number{color:rgba(255,255,255,.8)}.room-card.is-missing .room-number{color:var(--color-error)}.room-card strong{font-size:var(--font-size-base);font-weight:600;color:var(--color-fg-strong)}.room-card .room-missing,.room-card.is-selected strong{color:var(--color-fg-on-primary)}.room-card .room-missing{position:absolute;top:8px;right:8px;background:var(--color-error);padding:2px 6px;border-radius:2px;font-size:11px;font-weight:500}.bulk-rows{display:flex;flex-direction:column;gap:6px}.bulk-row{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:16px;padding:12px 16px;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.bulk-person{display:flex;align-items:baseline;gap:8px}.bulk-person .room-number{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-fg-muted)}.bulk-person strong{font-size:var(--font-size-base);font-weight:600;color:var(--color-fg-strong)}.bulk-default{font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.bulk-default.is-done{color:var(--color-tag-green)}.bulk-default.is-pending{color:var(--color-error);font-weight:500}.action-result{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg-success);border:1px solid oklch(80% .1 150);border-left:3px solid var(--color-tag-teal);border-radius:var(--radius-md)}.action-result .icon{color:var(--color-tag-green);flex-shrink:0}.action-result strong{font-size:var(--font-size-sm);font-weight:600;color:var(--color-fg-strong);flex:1}.action-result-meta{font-size:var(--font-size-xs);color:var(--color-fg-muted)}.action-result--info{background:var(--color-bg-info);border-color:oklch(80% .1 230);border-left-color:var(--color-brand)}.action-result--info .icon{color:var(--color-brand)}.focus-banner{display:flex;align-items:center;gap:12px;padding:12px 12px 12px 16px;background:oklch(97% .04 60);border:1px solid oklch(85% .08 60);border-left:3px solid var(--color-accent);border-radius:var(--radius-md)}.focus-pill{background:var(--color-accent);color:oklch(20% .05 60);font-size:11px;font-weight:var(--font-weight-bold);padding:4px 10px;border-radius:var(--radius-full);white-space:nowrap;letter-spacing:.04em}.focus-body{flex:1;display:flex;flex-direction:column;gap:2px}.focus-body strong{font-size:var(--font-size-sm);font-weight:600;color:var(--color-fg-strong)}.focus-body span{font-size:var(--font-size-xs);color:var(--color-fg-muted)}.focus-close{appearance:none;border:0;background:transparent;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-fg-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.focus-close:hover{background:rgba(0,0,0,.06)}.metric-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.metric-tile{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:16px 18px;display:flex;flex-direction:column;gap:6px}.metric-tile .metric-label{font-size:var(--font-size-xs);color:var(--color-fg-muted);letter-spacing:.04em;font-weight:500}.metric-tile strong{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-fg-strong);line-height:1;font-variant-numeric:tabular-nums}.metric-tile strong small{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-fg-muted);margin-left:4px}.metric-tile--green{border-color:oklch(85% .06 150);background:var(--color-bg-success)}.metric-tile--green strong{color:var(--color-tag-green)}.metric-tile--amber{border-color:oklch(85% .06 85);background:var(--color-bg-warning)}.metric-tile--amber strong{color:var(--color-accent)}.metric-tile--red{border-color:oklch(85% .06 25);background:var(--color-bg-danger)}.metric-tile--red strong{color:var(--color-error)}.pill-row{display:flex;flex-wrap:wrap;gap:8px}.pill{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-default)}.pill--accent{background:var(--color-bg-warning);border-color:oklch(85% .08 85);color:var(--color-accent)}.pill--warning{background:var(--color-bg-danger);border-color:oklch(85% .08 25);color:var(--color-error)}.pill--solid{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-fg-on-primary);text-transform:uppercase;letter-spacing:.12em;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.sp-shell{width:360px;height:720px;border:1px solid var(--color-stroke-subtle);border-radius:36px;overflow:hidden;flex-direction:column;box-shadow:var(--shadow-lg)}.sp-shell,.sp-statusbar{background:var(--color-bg-app);display:flex}.sp-statusbar{justify-content:space-between;padding:14px 24px 6px;font-size:var(--font-size-xs);font-family:var(--font-family-mono);color:var(--color-fg-strong)}.sp-header{gap:12px;padding:8px 16px;background:var(--color-bg-app)}.sp-header,.sp-header button{display:flex;align-items:center}.sp-header button{appearance:none;border:0;background:transparent;width:36px;height:36px;justify-content:center;color:var(--color-fg-default);cursor:pointer}.sp-header-title{flex:1;font-size:var(--font-size-md);font-weight:600;color:var(--color-fg-strong)}.sp-header-meta{font-size:var(--font-size-xs);color:var(--color-fg-muted);background:var(--color-bg-surface);padding:4px 10px;border-radius:var(--radius-full)}.sp-body{flex:1;overflow-y:auto;padding:12px 16px;gap:12px;background:var(--color-bg-app)}.sp-body,.sp-hero{display:flex;flex-direction:column}.sp-hero{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:16px;gap:4px}.sp-hero-room{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-fg-muted)}.sp-hero-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-fg-strong)}.sp-hero-meta{font-size:var(--font-size-xs);color:var(--color-fg-muted)}.sp-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:14px}.sp-card-head{font-size:var(--font-size-xs);font-weight:600;color:var(--color-fg-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.sp-footer{display:grid;grid-template-columns:1fr 2fr;gap:8px;padding:12px 16px 18px;background:var(--color-bg-surface);border-top:1px solid var(--color-border-default)}.sp-footer-btn{appearance:none;border:1px solid transparent;height:52px;font-family:inherit;font-size:var(--font-size-md);font-weight:600;border-radius:var(--radius-md);cursor:pointer}.sp-footer-btn--ghost{background:var(--color-bg-surface);border-color:var(--color-stroke-subtle);color:var(--color-fg-default)}.sp-footer-btn--primary{background:var(--color-brand);color:var(--color-fg-on-primary)}.step-header{display:flex;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border-default)}.step-header>div{display:flex;flex-direction:column;gap:2px}.step-header h3{margin:0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-fg-strong)}.step-header span{font-size:var(--font-size-sm);color:var(--color-fg-muted)}.tablet-shell{display:grid;grid-template-rows:auto 1fr;min-height:100dvh;background:var(--color-bg-app)}.tablet-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:16px;height:56px;padding:0 24px;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);box-shadow:var(--shadow-sm)}.tablet-header-title{display:flex;align-items:center;gap:10px;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-fg-strong);margin:0}.tablet-header-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.tablet-header-operator{font-size:var(--font-size-sm);font-weight:600;color:var(--color-fg-default)}.tablet-body{max-width:1440px;width:100%;margin:0 auto;padding:clamp(16px,2vw,32px) clamp(16px,4vw,64px);overflow-y:auto;-webkit-overflow-scrolling:touch}.tablet-body>:not(:last-child){margin-bottom:20px}.tablet-page-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-fg-strong)}.tablet-shell .toast{position:fixed;top:72px;right:24px;z-index:1400}.field-login{display:grid;gap:20px}.field-login-heading{margin:0;font-size:24px;font-weight:var(--font-weight-bold);color:var(--color-fg-strong);text-align:center}.tablet-shell .field-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:800px;margin:0 auto}.tablet-shell .field-action-card{min-height:180px;padding:32px;border-radius:12px}.tablet-shell .field-action-card strong{font-size:28px}.tablet-shell .field-action-card span{font-size:var(--font-size-md)}.tablet-shell .field-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.tablet-shell .field-category-grid button{min-height:80px;font-size:var(--font-size-lg);padding:16px}.tablet-shell .room-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.tablet-shell .room-card{min-height:80px;padding:14px}.tablet-shell .room-card .room-number{font-size:var(--font-size-md)}.tablet-shell .room-card strong{font-size:var(--font-size-lg)}.tablet-shell .step-header{padding:14px 20px}.tablet-shell .step-header h3{font-size:22px}.tablet-shell .floor-switch button{min-height:48px;padding:10px 20px;font-size:var(--font-size-md)}.tablet-shell .bulk-meal-row-head{min-height:60px;padding:10px 16px}.tablet-shell .bulk-meal-tabs button{min-height:48px;font-size:var(--font-size-md)}.tablet-shell .logged-operator{justify-self:center;padding:10px 14px}.tablet-shell .logged-operator strong{font-size:18px}.tablet-shell .login-path-grid{max-width:800px;margin:0 auto;gap:20px}.tablet-shell .login-path-button{min-height:180px;padding:24px}.tablet-shell .login-path-button strong{font-size:26px}.tablet-shell .staff-login-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.tablet-shell .staff-login-button{min-height:80px;font-size:20px}.tablet-shell .resident-dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:160px 180px}.tablet-shell .resident-dashboard-head h4{font-size:16px}.tablet-shell .resident-top-summary{padding:14px 16px}.tablet-shell .resident-summary-name h3{font-size:24px}.tablet-shell .single-entry-card{max-width:800px}.tablet-shell .touch-input{height:52px;font-size:var(--font-size-lg)}.tablet-shell .touch-textarea{min-height:100px;font-size:var(--font-size-md)}.tablet-shell .choice-btn{min-height:52px;font-size:var(--font-size-md)}.tablet-shell .btn--primary{min-height:56px;padding:0 24px;font-size:17px;font-weight:800;width:100%}.tablet-shell .btn--secondary{min-height:44px}.tablet-shell .focus-banner{padding:14px 20px}@media (max-width:1199px){.tablet-shell .field-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tablet-shell .room-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.tablet-shell .resident-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto;grid-template-areas:"progress medication alerts" "meal health schedule" "handoff day ."}}@media (max-width:959px){.tablet-header{height:48px;padding:0 16px;gap:10px}.tablet-header-title{font-size:var(--font-size-lg)}.tablet-shell .field-action-grid{max-width:100%}.tablet-shell .field-action-card{min-height:140px;padding:20px}.tablet-shell .field-action-card strong{font-size:22px}.tablet-shell .field-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tablet-shell .field-category-grid button{min-height:64px;font-size:var(--font-size-md);padding:12px}.tablet-shell .room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tablet-shell .room-card{min-height:64px}.tablet-shell .resident-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;grid-template-areas:"progress medication" "meal alerts" "health schedule" "handoff day"}.tablet-shell .login-path-grid{max-width:100%}.tablet-shell .login-path-button{min-height:140px;padding:18px}.tablet-shell .staff-login-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.ds-segmented,.home-poc__segmented,.home-poc__tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-border-default)}.ds-segmented button,.home-poc__segmented button,.home-poc__tabs button{min-height:36px;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--color-fg-muted);padding:0 14px;font-size:var(--font-size-sm);font-weight:500;cursor:pointer;white-space:nowrap}.ds-segmented button.is-active,.home-poc__segmented button.is-active,.home-poc__tabs button.is-active{color:var(--color-brand);border-bottom-color:var(--color-brand)}.ds-loading-overlay{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.5);animation:ds-overlay-show .15s cubic-bezier(.16,1,.3,1)}.ds-loading-spinner{width:44px;height:44px;animation:ds-spin 1.5s linear infinite}.ds-loading-spinner svg{width:100%;height:100%}@keyframes ds-overlay-show{0%{opacity:0}to{opacity:1}}@keyframes ds-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.ds-range-nav{display:flex;align-items:center;gap:8px}.ds-range-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-fg-default);cursor:pointer;transition:background .15s}.ds-range-btn:hover{background:var(--color-bg-hover)}.ds-range-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-fg-strong);white-space:nowrap;min-width:120px;text-align:center}