:root{--color-bg:#f6f8f8;--color-surface:#fff;--color-surface-muted:#f0f4f4;--color-surface-hover:#ebf1f0;--color-text:#162427;--color-text-secondary:#526468;--color-text-muted:#76888c;--color-border:#d9e2e2;--color-border-strong:#bccaca;--color-primary:#477d78;--color-primary-hover:#386561;--color-primary-soft:#e6f0ef;--color-primary-contrast:#fff;--color-accent:#e55f4a;--color-accent-hover:#cf4e39;--color-accent-soft:#fceae7;--color-accent-contrast:#fff;--color-success:#1f7a52;--color-success-soft:#e4f5ed;--color-warning:#a86410;--color-warning-soft:#fdf2df;--color-danger:#c4362c;--color-danger-soft:#fdeae8;--color-info:#25638a;--color-info-soft:#e5f1f8;--color-neutral-badge:#edf2f2;--color-overlay:#0f1c1e75;--login-hero-bg:linear-gradient(155deg, #1b3634 0%, #2d5955 58%, #3c706b 100%);--login-hero-card-bg:#ffffff1a;--login-hero-card-border:#ffffff2e;--login-hero-text:#f6fbfa;--login-hero-muted:#f6fbfad1;--color-logo-plate:#fff;--google-blue:#4285f4;--google-green:#34a853;--google-yellow:#fbbc05;--google-red:#ea4335;--bg:var(--color-bg);--sf:var(--color-surface);--sf-muted:var(--color-surface-muted);--sf-hover:var(--color-surface-hover);--ln:var(--color-border);--ln-strong:var(--color-border-strong);--tx:var(--color-text);--mu:var(--color-text-secondary);--pri:var(--color-primary);--pri-hover:var(--color-primary-hover);--ps:var(--color-primary-soft);--on-pri:var(--color-primary-contrast);--ok:var(--color-success);--oks:var(--color-success-soft);--wn:var(--color-warning);--wns:var(--color-warning-soft);--er:var(--color-danger);--ers:var(--color-danger-soft);--inf:var(--color-info);--infs:var(--color-info-soft);--font-family-base:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.875rem;--font-size-md:.96875rem;--font-size-lg:1.125rem;--font-size-page-title:1.3125rem;--font-size-xl:1.375rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:600;--line-height-tight:1.3;--line-height-base:1.48;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--page-px:.875rem;--page-py:1rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.6875rem;--radius-pill:9999px;--r:var(--radius-md);--border-width:1px;--shadow-card:0 1px 2px #1624270a;--shadow-popover:0 10px 28px #16242724;--shadow-dialog:0 20px 48px #0f1c1e3d;--focus-ring:0 0 0 2px var(--color-primary-soft), 0 0 0 3px var(--color-primary);--z-sticky:10;--z-header:30;--z-popover:60;--z-modal:80;--layout-sidebar-width:232px;--layout-topbar-height:56px;--layout-bottom-nav-height:60px;--layout-form-max-width:760px;--layout-detail-max-width:960px;--layout-doc-max-width:1240px;--layout-desktop-max-width:1280px;--layout-control-height:36px;--layout-touch-target-min:44px}@media (width<=389px){:root{--page-px:.75rem}}@media (width>=768px){:root{--page-px:1rem;--page-py:1.125rem}}@media (width>=1024px){:root{--page-px:1.25rem;--page-py:1.25rem}}@media (width>=1366px){:root{--page-px:1.5rem}}:root[data-theme=dark]{--color-bg:#0f1719;--color-surface:#172326;--color-surface-muted:#1e2d31;--color-surface-hover:#24363b;--color-text:#eaf1f1;--color-text-secondary:#a4b6b9;--color-text-muted:#7b9094;--color-border:#293c40;--color-border-strong:#395257;--color-primary:#5da09a;--color-primary-hover:#71b3ad;--color-primary-soft:#1b3634;--color-primary-contrast:#0c1716;--color-accent:#ef7461;--color-accent-hover:#f38877;--color-accent-soft:#3a1f1b;--color-accent-contrast:#170a08;--color-success:#4cc38a;--color-success-soft:#153326;--color-warning:#f0a944;--color-warning-soft:#362811;--color-danger:#f06a61;--color-danger-soft:#3b1c1a;--color-info:#5eb0dc;--color-info-soft:#162e3d;--color-neutral-badge:#233337;--color-overlay:#050b0cad;--login-hero-bg:linear-gradient(155deg, #102120 0%, #193634 58%, #234946 100%);--login-hero-card-bg:#ffffff0f;--login-hero-card-border:#ffffff24;--login-hero-text:#eaf4f3;--login-hero-muted:#eaf4f3c7;--color-logo-plate:#fff;--shadow-card:0 1px 3px #00000047;--shadow-popover:0 12px 30px #0000007a;--shadow-dialog:0 24px 56px #0000009e}*,:before,:after{box-sizing:border-box}html,body{background-color:var(--color-bg);max-width:100%;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;overflow-x:hidden}:is(html:has(.app-shell),body:has(.app-shell)){height:100dvh;overflow:hidden}button,input,select,option,optgroup,textarea,dialog,table,th,td{font-family:var(--font-family-base)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{box-shadow:var(--focus-ring);outline:none}.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}.tabular-nums,.num,th.num,td.num{font-variant-numeric:tabular-nums}th.num,td.num{white-space:nowrap;text-align:right!important}.list-page{gap:var(--space-3);flex-direction:column;flex:auto;min-width:0;display:flex}.form-narrow-wrap{width:100%;max-width:var(--layout-form-max-width);gap:var(--space-4);flex-direction:column;display:flex}.detail-page-wrap{width:100%;max-width:var(--layout-detail-max-width);gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.form-page-wrap,.doc-page-wrap{width:100%;max-width:var(--layout-doc-max-width);gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.page-title-group{flex-direction:column;gap:2px;min-width:0;display:flex}.breadcrumb{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:2px;display:flex}.breadcrumb a{color:var(--color-text-secondary)}.breadcrumb a:hover{color:var(--color-primary)}.page-title{font-size:1.25rem;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:-.01em;color:var(--color-text);margin:0}@media (width>=768px){.page-title{font-size:var(--font-size-page-title)}}.page-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);max-width:78ch;margin:0}.page-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text);margin:0}.section-block{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.section-header-row{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.surface-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:var(--space-4) var(--space-5);min-width:0}.surface-card-padded{padding:var(--space-4) var(--space-5)}@media (width<=767px){.surface-card,.surface-card-padded{padding:var(--space-4)}}:is(.surface-card:has(>.data-table),.surface-card-flush){padding:0}.stat-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=768px){.stat-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}}.stat-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);flex-direction:column;gap:4px;min-width:0;text-decoration:none;transition:border-color .12s,background-color .12s;display:flex}a.stat-card:hover{border-color:var(--color-primary);text-decoration:none}.stat-card.active{border-color:var(--color-primary);background:var(--color-primary-soft)}.stat-card.active .stat-label{color:var(--color-primary)}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.stat-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-text);line-height:1.25}.btn{min-height:var(--layout-control-height);padding:0 var(--space-3);border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-border-strong);background-color:var(--color-surface);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;line-height:1.2;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}@media (width<=767px){.btn{min-height:var(--layout-touch-target-min);padding:0 var(--space-4);font-size:var(--font-size-base)}}.btn:hover:not(:disabled){border-color:var(--color-primary);background-color:var(--color-surface-hover);text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-contrast)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--color-primary-contrast)}.btn-accent{background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.btn-accent:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-accent-contrast)}.btn-secondary{background-color:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background-color:var(--color-surface-hover);border-color:var(--color-primary)}.btn-ghost{color:var(--color-text-secondary);background-color:#0000;border-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--color-surface-hover);color:var(--color-text);border-color:#0000}.btn-danger{background-color:var(--color-danger);border-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--color-danger);border-color:var(--color-danger);color:#fff;filter:brightness(.93)}.btn-danger-outline{background-color:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.btn-danger-outline:hover:not(:disabled){background-color:var(--color-danger-soft);border-color:var(--color-danger)}.btn-sm,.btn-compact{min-height:32px;font-size:var(--font-size-xs);padding:0 10px}@media (width<=767px){.btn-sm,.btn-compact{min-height:var(--layout-touch-target-min);padding:0 var(--space-3);font-size:var(--font-size-sm)}}.icon-action-btn,.icon-btn{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-action-btn:hover:not(:disabled),.icon-btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border);color:var(--color-text)}@media (width<=767px){.icon-action-btn,.icon-btn{width:var(--layout-touch-target-min);height:var(--layout-touch-target-min)}}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text)}.field-hint{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.field-error{font-size:var(--font-size-xs);color:var(--color-danger);font-weight:var(--font-weight-medium)}.input,.select,.textarea{width:100%;min-width:0;min-height:var(--layout-control-height);border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-border-strong);background-color:var(--color-surface);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-base);padding:6px 11px;line-height:1.4;transition:border-color .12s}@media (width<=767px){.input,.select{min-height:var(--layout-touch-target-min);font-size:16px}}@media (width>=390px) and (width<=767px){.input,.select{font-size:var(--font-size-base)}}.input:hover:not(:disabled):not(:read-only),.select:hover:not(:disabled),.textarea:hover:not(:disabled):not(:read-only){border-color:var(--color-primary)}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.input[readonly],.input:disabled,.select:disabled,.textarea:disabled{background-color:var(--color-surface-muted);color:var(--color-text-secondary)}.textarea{resize:vertical;min-height:76px}.input.error,.select.error,.textarea.error{border-color:var(--color-danger)}.badge{border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;line-height:1.45;display:inline-flex}.badge-neutral{background:var(--color-neutral-badge);color:var(--color-text-secondary)}.badge-info{background:var(--color-info-soft);color:var(--color-info)}.badge-warn{background:var(--color-warning-soft);color:var(--color-warning)}.badge-ok{background:var(--color-success-soft);color:var(--color-success)}.badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.desktop-table-wrap{display:none}.mobile-card-list{flex-direction:column;gap:10px;display:flex}@media (width>=768px){.desktop-table-wrap{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);width:100%;min-width:0;max-width:100%;box-shadow:var(--shadow-card);flex:none;display:block;position:relative;overflow-x:auto}@media (width>=1280px){.desktop-table-wrap:not(.table-scroll-x){overflow-x:visible}}.mobile-card-list{display:none}}.data-table{border-collapse:separate;border-spacing:0;text-align:left;width:100%;font-size:var(--font-size-base)}.data-table th{background:var(--color-surface-muted);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-bottom:var(--border-width) solid var(--color-border);white-space:nowrap;top:calc(-1 * var(--page-py));z-index:3;padding:10px 14px;position:sticky}.desktop-table-wrap.table-scroll-x .data-table th{top:0}.data-table thead tr:first-child th:first-child{border-top-left-radius:calc(var(--radius-md) - 1px)}.data-table thead tr:first-child th:last-child{border-top-right-radius:calc(var(--radius-md) - 1px)}.data-table td{border-bottom:var(--border-width) solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:10px 14px;line-height:1.4}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:last-child td:first-child{border-bottom-left-radius:calc(var(--radius-md) - 1px)}.data-table tbody tr:last-child td:last-child{border-bottom-right-radius:calc(var(--radius-md) - 1px)}.data-table tbody tr:hover td{background:var(--color-surface-hover)}.data-table tbody tr.row-clickable{cursor:pointer}.data-table th.col-actions,.data-table td.col-actions{text-align:right;white-space:nowrap;width:1%}.cell-primary-link{font-weight:var(--font-weight-semibold);color:var(--color-text);text-decoration:none}.cell-primary-link:hover{color:var(--color-primary);text-decoration:underline}.cell-sub{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:2px}.record-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;min-width:0;padding:12px 14px;display:flex}.record-card-head,.record-card-top{justify-content:space-between;align-items:flex-start;gap:var(--space-2);min-width:0;display:flex}.record-card-code{font-weight:var(--font-weight-semibold);color:var(--color-text);text-decoration:none}a.record-card-code:hover{color:var(--color-primary);text-decoration:underline}div.record-card-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.45}dl.record-card-meta{font-size:var(--font-size-xs);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:0;display:grid}dl.record-card-meta dt{color:var(--color-text-secondary);margin-bottom:1px}dl.record-card-meta dd{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);overflow-wrap:anywhere;margin:0}.form-grid-2{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=640px){.form-grid-2{gap:var(--space-3);grid-template-columns:1fr}}.form-actions-bar{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-border);flex-wrap:wrap;display:flex}.filter-bar{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.pagination-bar{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--color-text-secondary);flex-wrap:wrap;margin-top:auto;padding:10px 14px;display:flex}.empty-state-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0}.record-card-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid var(--color-border);flex-wrap:wrap;display:flex}.detail-kv-grid{gap:var(--space-4) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.detail-kv-item{flex-direction:column;gap:3px;min-width:0;display:flex}.detail-kv-item.span-full{grid-column:1/-1}.detail-kv-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.detail-kv-value{font-size:var(--font-size-base);color:var(--color-text);font-weight:var(--font-weight-medium);overflow-wrap:anywhere}@media (width<=640px){.detail-kv-grid{gap:var(--space-3);grid-template-columns:1fr}}.detail-edit-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-4);margin-top:var(--space-4);border-top:var(--border-width) solid var(--color-border);flex-wrap:wrap;display:flex}.alert-banner{justify-content:space-between;align-items:flex-start;gap:var(--space-3);border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-border);font-size:var(--font-size-sm);padding:10px 14px;display:flex}.alert-ok{background:var(--color-success-soft);border-color:color-mix(in srgb, var(--color-success) 32%, var(--color-border));color:var(--color-success)}.alert-warn{background:var(--color-warning-soft);border-color:color-mix(in srgb, var(--color-warning) 35%, var(--color-border));color:var(--color-warning)}.alert-danger{background:var(--color-danger-soft);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));color:var(--color-danger)}.alert-info{background:var(--color-info-soft);border-color:color-mix(in srgb, var(--color-info) 32%, var(--color-border));color:var(--color-info)}.empty-state{padding:var(--space-8) var(--space-4);text-align:center;align-items:center;gap:var(--space-2);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.global-nav-loading.svelte-12qhfyh{z-index:120;pointer-events:none;position:fixed;top:0;left:0;right:0}.global-nav-loading-bar.svelte-12qhfyh{background:linear-gradient(90deg, var(--color-primary-soft) 0%, var(--color-primary) 45%, var(--color-accent) 75%, var(--color-primary-soft) 100%);background-size:220% 100%;width:100%;height:3px;animation:1.1s ease-in-out infinite svelte-12qhfyh-con01-loading-slide}.global-nav-loading-pill.svelte-12qhfyh{background:var(--color-surface);color:var(--color-text);border:var(--border-width) solid var(--color-primary);border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-popover);padding:3px 12px;position:fixed;top:10px;left:50%;transform:translate(-50%)}@keyframes svelte-12qhfyh-con01-loading-slide{0%{background-position:200% 0}to{background-position:-20% 0}}@media (prefers-reduced-motion:reduce){.global-nav-loading-bar.svelte-12qhfyh{background:var(--color-primary);animation:none}}
