@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-bg:#f7f7f5;--color-surface:#fff;--color-surface-2:#f2f2ef;--color-surface-3:#e9e9e5;--color-backdrop:#14161866;--color-border:#e4e4df;--color-border-strong:#cfcfc8;--color-text:#1c1d1f;--color-text-muted:#62646a;--color-text-subtle:#8d8f95;--color-text-inverse:#fff;--color-accent:#0b6e83;--color-accent-hover:#095b6c;--color-accent-contrast:#fff;--color-accent-soft:#e6f2f4;--color-accent-soft-hover:#d6eaee;--color-accent-text:#08576a;--color-focus:#0b6e8359;--color-success:#1f7a4d;--color-success-soft:#e8f4ed;--color-success-text:#17603c;--color-warning:#a35f00;--color-warning-soft:#fcf2e1;--color-warning-text:#7d4900;--color-danger:#c0362c;--color-danger-hover:#a12c23;--color-danger-soft:#fcecea;--color-danger-text:#9a2a21;--color-info:var(--color-accent);--color-info-soft:var(--color-accent-soft);--color-info-text:var(--color-accent-text);--color-status-leer:var(--color-text-subtle);--color-status-entwurf:#b07a10;--color-status-fertig:var(--color-accent);--color-status-abgezeichnet:var(--color-success);--font-sans:"Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-input:1rem;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tight:-.011em;--tracking-title:-.02em;--tracking-caps:.04em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-full:999px;--shadow-sm:0 1px 2px #1416180f;--shadow-md:0 1px 2px #1416180d, 0 4px 12px #14161812;--shadow-lg:0 2px 6px #1416180f, 0 16px 40px #14161824;--control-height:2.5rem;--control-height-sm:2rem;--control-height-lg:3rem;--content-width:60rem;--content-width-narrow:40rem;--header-height:3.5rem;--tabbar-height:3.75rem;--ease:cubic-bezier(.2, 0, 0, 1);--duration-fast:.12s;--duration:.2s;--z-header:20;--z-tabbar:30}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-bg:#131416;--color-surface:#1b1c1f;--color-surface-2:#222327;--color-surface-3:#2b2c31;--color-backdrop:#0009;--color-border:#2e3034;--color-border-strong:#43454b;--color-text:#ececee;--color-text-muted:#a3a5ab;--color-text-subtle:#75777e;--color-text-inverse:#131416;--color-accent:#3fa9be;--color-accent-hover:#5bbbce;--color-accent-contrast:#0b1416;--color-accent-soft:#15292e;--color-accent-soft-hover:#1a343a;--color-accent-text:#7cc8d7;--color-focus:#3fa9be73;--color-success:#3fae75;--color-success-soft:#15261d;--color-success-text:#7fd0a4;--color-warning:#d99a3a;--color-warning-soft:#2b2112;--color-warning-text:#eabb72;--color-danger:#e5675c;--color-danger-hover:#ee8279;--color-danger-soft:#2d1817;--color-danger-text:#f19c94;--color-status-entwurf:#d9a640;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 1px 2px #0000004d, 0 4px 12px #0000004d;--shadow-lg:0 2px 6px #00000059, 0 16px 40px #00000073}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scrollbar-gutter:stable}body{background:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);letter-spacing:var(--tracking-tight);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}#root{isolation:isolate;min-height:100dvh}h1,h2,h3,h4{font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-title);text-wrap:balance}p{text-wrap:pretty}ul,ol{padding:0;list-style:none}img,svg,video,canvas,iframe{max-width:100%;display:block}svg{flex-shrink:0}input,button,textarea,select{font:inherit;letter-spacing:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}a{color:var(--color-accent-text);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--color-accent)}strong,b{font-weight:var(--weight-semibold)}code,kbd,pre{font-family:var(--font-mono);font-size:.92em}hr{border:0;border-top:1px solid var(--color-border)}table{border-collapse:collapse;border-spacing:0}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;accent-color:var(--color-accent);cursor:pointer;margin:0}::selection{background:var(--color-accent-soft-hover);color:var(--color-text)}::placeholder{color:var(--color-text-subtle);opacity:1}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner,.spinner:after,.boot:after{animation-duration:1.6s!important;animation-iteration-count:infinite!important}}.page{width:100%;max-width:var(--content-width);padding:var(--space-5) var(--space-4) var(--space-7);gap:var(--space-5);flex-direction:column;margin-inline:auto;display:flex}@media (width>=48rem){.page{padding:var(--space-6) var(--space-6) var(--space-8);gap:var(--space-6)}}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.page-header-text{gap:var(--space-1);flex-direction:column;flex:16rem;min-width:0;display:flex}.page-title{font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);line-height:var(--leading-tight)}.page-subtitle{color:var(--color-text-muted);font-size:var(--text-base)}.page-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width>=48rem){.page-title{font-size:var(--text-2xl)}}.stack,.stack-sm,.stack-lg{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.stack-sm{gap:var(--space-2)}.stack-lg{gap:var(--space-6)}.row,.row-wrap{align-items:center;gap:var(--space-2);min-width:0;display:flex}.row-wrap{flex-wrap:wrap}.spacer{flex:auto}.grid-2,.grid-3{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=40rem){.grid-2,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=60rem){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4);min-width:0}@media (width>=48rem){.card{padding:var(--space-5)}}.card-header{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.card-header:last-child{margin-bottom:0}.card-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);line-height:var(--leading-tight)}.card-body{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.divider{border:0;border-top:1px solid var(--color-border);margin-block:var(--space-2);width:100%}.muted{color:var(--color-text-muted)}.small{font-size:var(--text-sm)}.boot{background:var(--color-bg);place-items:center;min-height:100dvh;display:grid}.boot:after{content:"";border:2px solid var(--color-surface-3);border-top-color:var(--color-text-subtle);opacity:0;width:1.25rem;height:1.25rem;animation:spin .7s linear infinite, fade-in var(--duration) var(--ease) .4s forwards;border-radius:50%}.btn{--btn-bg:var(--color-surface);--btn-bg-hover:var(--color-surface-2);--btn-fg:var(--color-text);--btn-border:var(--color-border-strong);justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-4);border:1px solid var(--btn-border);border-radius:var(--radius-md);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--text-base);font-weight:var(--weight-medium);white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer;transition:background-color var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);line-height:1;text-decoration:none;display:inline-flex}.btn:hover{background:var(--btn-bg-hover);color:var(--btn-fg)}.btn:active:not(:disabled){transform:translateY(.5px)}.btn:focus-visible{box-shadow:0 0 0 3px var(--color-focus);outline:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}a.btn[aria-disabled=true]{pointer-events:none}.btn svg{width:1.125rem;height:1.125rem}.btn .spinner{opacity:.8;border-color:currentColor #0000 currentColor currentColor;width:1rem;height:1rem}.btn-primary{--btn-bg:var(--color-accent);--btn-bg-hover:var(--color-accent-hover);--btn-fg:var(--color-accent-contrast);--btn-border:transparent;box-shadow:var(--shadow-sm)}.btn-secondary{--btn-bg:var(--color-surface);--btn-bg-hover:var(--color-surface-2);--btn-fg:var(--color-text);--btn-border:var(--color-border-strong);box-shadow:var(--shadow-sm)}.btn-ghost{--btn-bg:transparent;--btn-bg-hover:var(--color-surface-2);--btn-fg:var(--color-text-muted);--btn-border:transparent}.btn-ghost:hover{color:var(--color-text)}.btn-danger{--btn-bg:var(--color-danger);--btn-bg-hover:var(--color-danger-hover);--btn-fg:var(--color-text-inverse);--btn-border:transparent}.btn-sm{min-height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm);gap:var(--space-1)}.btn-sm svg{width:1rem;height:1rem}.btn-lg{min-height:var(--control-height-lg);padding:0 var(--space-5);font-size:var(--text-lg)}.btn-icon{width:var(--control-height);min-width:var(--control-height);font-size:var(--text-xl);padding:0}.btn-icon.btn-sm{width:var(--control-height-sm);min-width:var(--control-height-sm);font-size:var(--text-lg)}.btn-icon.btn-lg{width:var(--control-height-lg);min-width:var(--control-height-lg)}.input,.select,.textarea{width:100%;min-height:var(--control-height);padding:var(--space-2) var(--space-3);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);font-size:var(--text-input);line-height:var(--leading-tight);box-shadow:var(--shadow-sm);transition:border-color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease);display:block}@media (width>=48rem) and (pointer:fine){.input,.select,.textarea{font-size:var(--text-base)}}.input:hover,.select:hover,.textarea:hover{border-color:var(--color-text-subtle)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible,.input:focus,.select:focus,.textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-focus);outline:none}.input:disabled,.select:disabled,.textarea:disabled{background:var(--color-surface-2);color:var(--color-text-muted);cursor:not-allowed}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--color-danger)}.input[aria-invalid=true]:focus,.textarea[aria-invalid=true]:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.input[type=number]{font-variant-numeric:tabular-nums}.input[type=date],.input[type=week]{min-height:var(--control-height)}.select{appearance:none;padding-right:var(--space-6);background-image:linear-gradient(45deg, transparent 50%, var(--color-text-muted) 50%), linear-gradient(135deg, var(--color-text-muted) 50%, transparent 50%);cursor:pointer;background-position:calc(100% - 1rem),calc(100% - .7rem);background-repeat:no-repeat;background-size:.3rem .3rem}.textarea{min-height:5.5rem;line-height:var(--leading-normal);resize:vertical;field-sizing:content}.checkbox{align-items:flex-start;gap:var(--space-2);font-size:var(--text-base);line-height:var(--leading-normal);cursor:pointer;display:inline-flex}.checkbox>input[type=checkbox],.checkbox>input[type=radio]{margin-top:calc(.5lh - .5625rem)}input.checkbox{display:inline-block}.field{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.field-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text)}.field-hint{font-size:var(--text-sm);color:var(--color-text-muted)}.field-row{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));align-items:start;display:grid}.segmented{background:var(--color-surface-3);border-radius:var(--radius-md);scrollbar-width:none;align-items:stretch;gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segmented-item{justify-content:center;align-items:center;gap:var(--space-1);min-height:calc(var(--control-height) - 6px);padding:0 var(--space-3);border-radius:calc(var(--radius-md) - 2px);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease);flex:1 0 auto;display:inline-flex;position:relative}.segmented-item:hover{color:var(--color-text)}.segmented-item.is-active,.segmented-item[aria-pressed=true],.segmented-item[aria-checked=true],.segmented-item[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.segmented-item:has(input:checked){background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.segmented-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:0}.segmented-item:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:0}.segmented-item input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.segmented-item:disabled{opacity:.5;cursor:not-allowed}.chip{align-items:center;gap:var(--space-1);max-width:100%;min-height:1.75rem;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);white-space:nowrap;text-overflow:ellipsis;transition:background-color var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);line-height:1;text-decoration:none;display:inline-flex;overflow:hidden}button.chip,a.chip,label.chip{cursor:pointer}button.chip:hover,a.chip:hover,label.chip:hover{border-color:var(--color-border-strong);color:var(--color-text)}.chip-active{background:var(--color-accent-soft);color:var(--color-accent-text);border-color:#0000}button.chip-active:hover,a.chip-active:hover,label.chip-active:hover{background:var(--color-accent-soft-hover);color:var(--color-accent-text);border-color:#0000}.chip-remove{width:1.125rem;height:1.125rem;margin-right:calc(var(--space-1) * -1);border-radius:var(--radius-full);color:inherit;font-size:var(--text-sm);opacity:.7;cursor:pointer;place-items:center;line-height:1;display:inline-grid}.chip-remove:hover{opacity:1;background:var(--color-surface-3)}.chip-active .chip-remove:hover{background:var(--color-accent-soft-hover)}.badge{--badge-color:var(--color-status-leer);min-height:1.5rem;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);white-space:nowrap;align-items:center;gap:.375rem;line-height:1;display:inline-flex}.badge:before{content:"";background:var(--badge-color);border-radius:50%;flex-shrink:0;width:.4375rem;height:.4375rem}.badge-leer{--badge-color:transparent;color:var(--color-text-subtle)}.badge-leer:before{box-shadow:inset 0 0 0 1.5px var(--color-status-leer)}.badge-entwurf{--badge-color:var(--color-status-entwurf);color:var(--color-text)}.badge-fertig{--badge-color:var(--color-status-fertig);background:var(--color-accent-soft);color:var(--color-accent-text);border-color:#0000}.badge-abgezeichnet{--badge-color:var(--color-status-abgezeichnet);background:var(--color-success-soft);color:var(--color-success-text);border-color:#0000}.alert{--alert-fg:var(--color-info-text);--alert-bg:var(--color-info-soft);--alert-bar:var(--color-info);padding:var(--space-3) var(--space-4);padding-left:calc(var(--space-4) + 3px);border-radius:var(--radius-md);background:var(--alert-bg);color:var(--alert-fg);font-size:var(--text-base);line-height:var(--leading-normal);position:relative;overflow:hidden}.alert:before{content:"";background:var(--alert-bar);width:3px;position:absolute;inset:0 auto 0 0}.alert a{color:inherit;font-weight:var(--weight-medium)}.alert>*+*{margin-top:var(--space-2)}.alert-info{--alert-fg:var(--color-info-text);--alert-bg:var(--color-info-soft);--alert-bar:var(--color-info)}.alert-error{--alert-fg:var(--color-danger-text);--alert-bg:var(--color-danger-soft);--alert-bar:var(--color-danger)}.alert-success{--alert-fg:var(--color-success-text);--alert-bg:var(--color-success-soft);--alert-bar:var(--color-success)}.alert-warning{--alert-fg:var(--color-warning-text);--alert-bg:var(--color-warning-soft);--alert-bar:var(--color-warning)}.spinner{border:2px solid var(--color-surface-3);border-top-color:var(--color-accent);vertical-align:middle;border-radius:50%;flex-shrink:0;width:1.25rem;height:1.25rem;animation:.7s linear infinite spin;display:inline-block}.empty-state{align-items:center;gap:var(--space-2);padding:var(--space-7) var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);text-align:center;flex-direction:column;display:flex}.empty-state-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title)}.empty-state-body{max-width:28rem;color:var(--color-text-muted)}.empty-state-action{margin-top:var(--space-3)}.progress{background:var(--color-surface-3);border-radius:var(--radius-full);width:100%;height:.375rem;position:relative;overflow:hidden}.progress-bar{background:var(--color-accent);border-radius:inherit;max-width:100%;height:100%;transition:width var(--duration) var(--ease)}.dialog{border:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);width:100%;max-width:100%;max-height:min(92dvh,100%);color:var(--color-text);box-shadow:var(--shadow-lg);border-bottom:0;margin:auto auto 0;padding:0;overflow:hidden}.dialog[open]{animation:sheet-in var(--duration) var(--ease);flex-direction:column;display:flex}.dialog::backdrop{background:var(--color-backdrop);animation:fade-in var(--duration) var(--ease)}@media (width>=40rem){.dialog{width:calc(100% - var(--space-6));border-bottom:1px solid var(--color-border);border-radius:var(--radius-lg);max-width:32rem;max-height:min(85dvh,48rem);margin:auto}.dialog[open]{animation:dialog-in var(--duration) var(--ease)}.dialog-wide{max-width:48rem}}.dialog-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.dialog-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);min-width:0}.dialog-body{gap:var(--space-4);padding:var(--space-5);overscroll-behavior:contain;flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.dialog-footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);padding-bottom:max(var(--space-3), env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface-2);flex-wrap:wrap-reverse;flex-shrink:0;display:flex}@media (width<=39.99rem){.dialog-footer>.btn{flex:100%}}.table{width:100%;font-size:var(--text-base);font-variant-numeric:tabular-nums}.table th,.table td{padding:var(--space-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border)}.table th:first-child,.table td:first-child{padding-left:0}.table th:last-child,.table td:last-child{padding-right:0}.table thead th{padding-block:var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-caps);white-space:nowrap;vertical-align:bottom}.table tbody tr:last-child>*{border-bottom:0}.table tfoot td,.table tfoot th{border-top:1px solid var(--color-border-strong);font-weight:var(--weight-semibold);border-bottom:0}.table .table-num,.table-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}}.app{flex-direction:column;min-height:100dvh;display:flex}.app-header{z-index:var(--z-header);background:var(--color-bg);border-bottom:1px solid var(--color-border);padding-top:env(safe-area-inset-top);position:sticky;top:0}.app-header-inner{align-items:center;gap:var(--space-4);width:100%;max-width:var(--content-width);height:var(--header-height);padding-inline:var(--space-4);margin-inline:auto;display:flex}.app-brand{align-items:center;gap:var(--space-2);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);border-radius:var(--radius-sm);text-decoration:none;display:inline-flex}.app-brand:hover{color:var(--color-text)}.logo-mark-bg{fill:var(--color-accent)}.logo-mark-fg{stroke:var(--color-accent-contrast)}.app-main{flex-direction:column;flex:auto;min-width:0;display:flex}.app-nav{z-index:var(--z-tabbar);height:calc(var(--tabbar-height) + env(safe-area-inset-bottom));padding:0 var(--space-1) env(safe-area-inset-bottom);background:var(--color-surface);border-top:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;inset:auto 0 0}.app-nav-link{min-width:0;color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:0;border-radius:var(--radius-md);transition:color var(--duration-fast) var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:.1875rem;text-decoration:none;display:flex}.app-nav-link:hover{color:var(--color-text)}.app-nav-icon{border-radius:var(--radius-full);width:3rem;height:1.75rem;transition:background-color var(--duration-fast) var(--ease);place-items:center;display:grid}.app-nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.app-nav-link.is-active{color:var(--color-accent-text)}.app-nav-link.is-active .app-nav-icon{background:var(--color-accent-soft)}.app-logout{margin-left:auto}.app-logout-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-main{padding-bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom))}@media (width>=48rem){.app-header-inner{padding-inline:var(--space-6);gap:var(--space-6)}.app-nav{align-items:center;gap:var(--space-1);background:0 0;border:0;height:auto;padding:0;display:flex;position:static}.app-nav-link{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--text-sm);letter-spacing:var(--tracking-tight);transition:color var(--duration-fast) var(--ease), background-color var(--duration-fast) var(--ease);flex-direction:row}.app-nav-link:hover{background:color-mix(in srgb, var(--color-surface-3) 60%, transparent)}.app-nav-icon{display:none}.app-nav-link.is-active{background:var(--color-surface-3);color:var(--color-text)}.app-logout-label{clip-path:none;width:auto;height:auto;position:static;overflow:visible}.app-main{padding-bottom:0}}.login{min-height:100dvh;padding:var(--space-5) var(--space-4) max(var(--space-8), 12dvh);background:radial-gradient(60rem 30rem at 50% -10%, var(--color-accent-soft), transparent 70%), var(--color-bg);flex-direction:column;justify-content:center;align-items:center;display:flex}.login-card{gap:var(--space-6);width:100%;max-width:24rem;padding:var(--space-6) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;display:flex}@media (width>=40rem){.login-card{padding:var(--space-7) var(--space-6) var(--space-6)}}.login-brand{align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;display:flex}.login-brand .logo-mark{margin-bottom:var(--space-2)}.login-title{font-size:var(--text-xl)}.login-subtitle{max-width:18rem;color:var(--color-text-muted);font-size:var(--text-sm)}.login-form{gap:var(--space-4);flex-direction:column;display:flex}.login-password{position:relative}.login-password .input{padding-right:6.5rem}.login-toggle{top:50%;right:var(--space-1);position:absolute;transform:translateY(-50%)}.login-toggle:active:not(:disabled){transform:translateY(-50%)}.login-submit{width:100%}
