@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;0,9..144,900;1,9..144,400;1,9..144,600&family=JetBrains+Mono:wght@400;500&display=swap";@import "https://api.fontshare.com/v2/css?f[]=general-sans@400,500,600&display=swap";:root{--color-ink:#0e2a2c;--color-ink-soft:#1f4044;--color-accent:#c97b4f;--color-accent-soft:#e0a381;--color-accent-strong:#b66a40;--color-surface:#fbf8f3;--color-surface-elevated:#fff;--color-surface-sunken:#f4efe6;--color-divider:#e8e0d0;--color-text:#1a1a1a;--color-text-muted:#5c5c5c;--color-text-subtle:#8b8682;--color-text-on-ink:#f4efe6;--color-success:#2d6a4f;--color-success-soft:#d7e5dc;--color-warning:#b8860b;--color-warning-soft:#f5e8c3;--color-danger:#a4243b;--color-danger-soft:#f0d5da;--color-info:#395b6e;--color-info-soft:#d4dee5;--font-display:"Fraunces", "Iowan Old Style", "Apple Garamond", Georgia, serif;--font-body:"General Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:2.5rem;--text-4xl:3.5rem;--text-display:5rem;--leading-tight:1.1;--leading-snug:1.25;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.05em;--tracking-wider:.08em;--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;--space-9:6rem;--space-10:8rem;--space-11:12rem;--container-narrow:720px;--container:1080px;--container-wide:1320px;--radius-sm:4px;--radius-md:6px;--radius-lg:12px;--radius-xl:20px;--radius-pill:999px;--shadow-xs:0 1px 2px #0e2a2c0a;--shadow-sm:0 2px 8px #0e2a2c0f;--shadow-md:0 6px 24px #0e2a2c14;--shadow-lg:0 16px 48px #0e2a2c1f;--shadow-focus-accent:0 0 0 3px #c97b4f40;--shadow-focus-ink:0 0 0 3px #0e2a2c26;--duration-fast:.12s;--duration-base:.2s;--duration-slow:.36s;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--z-base:1;--z-sticky:100;--z-fixed:200;--z-modal-backdrop:900;--z-modal:1000;--z-toast:1100}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tabular{font-variant-numeric:tabular-nums}.container{max-width:var(--container);padding:0 var(--space-5);margin:0 auto}.container-wide{max-width:var(--container-wide);padding:0 var(--space-5);margin:0 auto}.container-narrow{max-width:var(--container-narrow);padding:0 var(--space-5);margin:0 auto}.btn{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--text-sm);border-radius:var(--radius-md);transition:all var(--duration-base) var(--ease-out-expo);cursor:pointer;border:0;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.btn:focus-visible{box-shadow:var(--shadow-focus-accent);outline:none}.btn-primary{background:var(--color-ink);color:var(--color-text-on-ink)}.btn-primary:hover{background:var(--color-ink-soft);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-accent{background:var(--color-accent);color:var(--color-surface);font-weight:600}.btn-accent:hover{background:var(--color-accent-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{color:var(--color-ink);border:1px solid var(--color-ink);background:0 0}.btn-outline:hover{background:#0e2a2c0f}.btn-ghost{color:var(--color-ink-soft);background:0 0}.btn-ghost:hover{background:#0e2a2c0f}.btn-danger{background:var(--color-danger);color:var(--color-surface)}.btn-danger:hover{filter:brightness(.92)}.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--text-md)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn-block{justify-content:center;width:100%;display:flex}.badge{align-items:center;gap:var(--space-2);padding:4px var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm);text-transform:lowercase;font-variant:small-caps;letter-spacing:.05em;font-weight:500;line-height:1;display:inline-flex}.badge-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.badge-success{background:var(--color-success-soft);color:var(--color-success)}.badge-success .badge-dot{background:var(--color-success)}.badge-warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge-warning .badge-dot{background:var(--color-warning)}.badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.badge-danger .badge-dot{background:var(--color-danger)}.badge-info{background:var(--color-info-soft);color:var(--color-info)}.badge-info .badge-dot{background:var(--color-info)}.badge-neutral{color:var(--color-text-muted);background:#0e2a2c0f}.badge-neutral .badge-dot{background:var(--color-text-subtle)}.card{background:var(--color-surface-elevated);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-xs)}.card-interactive{cursor:pointer;transition:all var(--duration-base) var(--ease-out-expo)}.card-interactive:hover{border-color:var(--color-ink-soft);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.form-label{font-size:var(--text-sm);color:var(--color-ink);margin-bottom:var(--space-2);font-weight:500;display:block}.form-input{width:100%;height:44px;padding:0 var(--space-4);background:var(--color-surface-elevated);border:1px solid var(--color-divider);border-radius:var(--radius-sm);color:var(--color-text);transition:border-color var(--duration-fast), box-shadow var(--duration-fast);display:block}.form-input:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus-accent);outline:none}.form-input::placeholder{color:var(--color-text-subtle)}.form-textarea{height:auto;min-height:120px;padding:var(--space-3) var(--space-4);resize:vertical}.form-helper{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.form-error{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-danger)}.form-input.is-invalid{border-color:var(--color-danger)}.topbar{background:var(--color-surface-elevated);border-bottom:1px solid var(--color-divider);padding:var(--space-4) 0;z-index:var(--z-sticky);position:sticky;top:0}.topbar-inner{max-width:var(--container-wide);padding:0 var(--space-5);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.logo{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-ink);align-items:center;gap:var(--space-2);font-weight:600;display:inline-flex}.logo-mark{background:var(--color-ink);width:28px;height:28px;color:var(--color-accent);border-radius:var(--radius-sm);font-family:var(--font-display);place-items:center;font-size:16px;font-style:italic;font-weight:900;display:grid}.nav-links{gap:var(--space-6);align-items:center;display:flex}.nav-link{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:500}.nav-link:hover{color:var(--color-ink)}.app-shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.app-sidebar{background:var(--color-ink);color:var(--color-text-on-ink);padding:var(--space-5);gap:var(--space-5);z-index:50;flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.app-sidebar-overlay{z-index:999;background:#0e2a2c80;display:none;position:fixed;inset:0}.mobile-topbar{background:var(--color-ink);color:var(--color-text-on-ink);padding:var(--space-3) var(--space-4);z-index:100;justify-content:space-between;align-items:center;display:none;position:sticky;top:0}.mobile-topbar .logo{color:var(--color-text-on-ink);font-size:var(--text-md)}.mobile-topbar__hamburger{color:var(--color-text-on-ink);cursor:pointer;padding:var(--space-2);background:0 0;border:0;flex-direction:column;gap:4px;display:flex}.mobile-topbar__hamburger span{background:currentColor;border-radius:2px;width:22px;height:2px;display:block}.mobile-topbar__avatar{-o-object-fit:cover;object-fit:cover;background:var(--color-accent);border-radius:50%;width:32px;height:32px}.mobile-topbar__close{top:var(--space-3);right:var(--space-3);color:var(--color-text-on-ink);cursor:pointer;z-index:2;background:0 0;border:0;font-size:24px;line-height:1;display:none;position:absolute}.mobile-drawer{background:var(--color-ink);width:280px;max-width:85vw;height:100vh;color:var(--color-text-on-ink);padding:var(--space-5);gap:var(--space-3);transition:transform var(--duration-base) var(--ease-out-expo);z-index:1000;flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%)}.mobile-drawer.is-open{transform:translate(0)}.mobile-drawer .logo{color:var(--color-text-on-ink)}.mobile-drawer .mobile-topbar__close{display:block}.mobile-drawer__nav{padding-top:var(--space-3);border-top:1px solid #f4efe61f;flex-direction:column;gap:2px;display:flex}.mobile-drawer__link{padding:var(--space-3);color:#f4efe6d9;font-size:var(--text-sm);border-radius:var(--radius-sm);transition:background var(--duration-fast), color var(--duration-fast);text-decoration:none}.mobile-drawer__link:hover{background:var(--color-ink-soft);color:var(--color-text-on-ink)}.mobile-drawer__cta{padding-top:var(--space-4);gap:var(--space-2);border-top:1px solid #f4efe61f;flex-direction:column;margin-top:auto;display:flex}@media (width<=768px){.app-shell{grid-template-columns:1fr}.mobile-topbar{display:flex}.app-sidebar{width:280px;max-width:85vw;height:100vh;transition:transform var(--duration-base) var(--ease-out-expo);z-index:1000;position:fixed;top:0;left:0;transform:translate(-100%)}.app-sidebar.is-open{transform:translate(0)}.app-sidebar.is-open+.app-sidebar-overlay,.app-sidebar-overlay.is-open,.app-sidebar .mobile-topbar__close{display:block}.topbar.topbar--public{display:none}}.app-sidebar .logo{color:var(--color-text-on-ink)}.sidebar-section{font-family:var(--font-display);font-style:italic;font-size:var(--text-xs);color:var(--color-accent-soft);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-2)}.sidebar-link{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:#f4efe6b3;border-radius:var(--radius-sm);transition:all var(--duration-fast);cursor:pointer;display:flex}.sidebar-link:hover{background:var(--color-ink-soft);color:var(--color-text-on-ink)}.sidebar-link.active{background:var(--color-ink-soft);color:var(--color-text-on-ink);border-left:3px solid var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding-left:calc(var(--space-3) - 3px)}.app-main{padding:var(--space-6);gap:var(--space-6);flex-direction:column;display:flex}.app-topbar{background:var(--color-surface-elevated);border-bottom:1px solid var(--color-divider);margin:calc(var(--space-6) * -1) calc(var(--space-6) * -1) 0;padding:var(--space-4) var(--space-6);justify-content:space-between;align-items:center;display:flex}.breadcrumb{font-size:var(--text-xs);color:var(--color-text-subtle);gap:var(--space-2);display:flex}.breadcrumb a:hover{color:var(--color-ink)}.breadcrumb span:not(:last-child):after{content:" / ";margin-left:var(--space-2);color:var(--color-divider)}.section-head{margin-bottom:var(--space-7);gap:var(--space-3);flex-direction:column;display:flex}.section-label{font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);font-weight:500}.section-head h2{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.02em;color:var(--color-ink);max-width:18ch;margin:0;font-weight:400;line-height:1.05}.section-head h2 em{color:var(--color-accent);font-style:italic}.page-section{padding:var(--space-9) 0}.empty-state{padding:var(--space-9) var(--space-5);text-align:center}.empty-state h2{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-ink);margin:0 0 var(--space-3);font-style:italic;font-weight:400}.empty-state p{font-size:var(--text-base);color:var(--color-text-muted);max-width:36ch;margin:0 auto var(--space-5)}@keyframes reveal-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:reveal-up .7s var(--ease-out-expo) backwards}.reveal-1{animation-delay:50ms}.reveal-2{animation-delay:.18s}.reveal-3{animation-delay:.32s}.reveal-4{animation-delay:.46s}.banner{padding:var(--space-3) var(--space-5);align-items:center;gap:var(--space-4);font-size:var(--text-sm);border-bottom:1px solid var(--color-divider);display:flex}.banner-trial{background:var(--color-accent-soft);color:var(--color-ink)}.banner-warning{background:var(--color-warning-soft);color:var(--color-warning)}.banner-danger{background:var(--color-danger-soft);color:var(--color-danger)}.auth-main{min-height:calc(100vh - 76px);padding:var(--space-8) var(--space-5);place-items:center;display:grid}.auth-card{width:100%;max-width:440px;padding:var(--space-7)}.auth-title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-ink);margin:0 0 var(--space-2);letter-spacing:-.02em;font-weight:400}.auth-title em{color:var(--color-accent);font-style:italic}.auth-subtitle{font-size:var(--text-sm);color:var(--color-text-muted);margin:0 0 var(--space-6);line-height:1.5}.auth-footer{margin-top:var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.auth-footer-link{font-size:var(--text-sm);color:var(--color-text-muted);text-underline-offset:3px;text-decoration:underline}.auth-footer-link:hover{color:var(--color-ink)}.auth-status{padding:var(--space-3) var(--space-4);background:var(--color-success-soft);color:var(--color-success);border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:var(--space-5)}.form-group{margin-bottom:var(--space-4)}.form-group:last-of-type{margin-bottom:var(--space-5)}.form-checkbox{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer;display:inline-flex}.form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}@media (width<=768px){html,body,.app-shell{max-width:100vw;overflow-x:hidden}.app-main{min-width:0;max-width:100%;overflow-x:hidden}[style*="grid-template-columns: 1fr 320px"],[style*="grid-template-columns: 1fr 280px"],[style*="grid-template-columns: 1fr 240px"],[style*="grid-template-columns: 1fr 220px"],[style*="grid-template-columns: 1fr 200px"],[style*="grid-template-columns: 320px 1fr"],[style*="grid-template-columns: 280px 1fr"],[style*="grid-template-columns: 240px 1fr"],[style*="grid-template-columns: 220px 1fr"],[style*="grid-template-columns: 200px 1fr"],[style*="grid-template-columns: 1fr 1fr"],[style*="grid-template-columns: 1fr 1.5fr auto auto"]{grid-template-columns:1fr!important}.card{padding:var(--space-4)}.card>table,.card .table-wrap>table{min-width:540px}.card{-webkit-overflow-scrolling:touch;overflow-x:auto}img{max-width:100%;height:auto}.app-main{padding:var(--space-4);gap:var(--space-4)}.app-topbar{margin:calc(var(--space-4) * -1) calc(var(--space-4) * -1) 0;padding:var(--space-3) var(--space-4);flex-wrap:wrap}.page-section{padding:var(--space-6) 0}.banner{gap:var(--space-2);padding:var(--space-3);flex-wrap:wrap}.banner .btn{flex-shrink:0}.auth-main{padding:var(--space-5) var(--space-3)}.auth-card{padding:var(--space-5)}}@media (width<=640px){[style*="grid-template-columns: 1fr 1fr"],[style*="grid-template-columns: 180px 1fr"]{grid-template-columns:1fr!important}.form-input,select.form-input,textarea.form-input{font-size:16px}.btn{min-height:40px;padding:var(--space-3) var(--space-4)}.btn-sm{min-height:36px}.container,.container-wide,.container-narrow{padding:0 var(--space-3)}.topbar-inner{gap:var(--space-3);flex-wrap:wrap}.nav-links{gap:var(--space-3);font-size:var(--text-xs);flex-wrap:wrap}.footer-grid{gap:var(--space-5)!important;grid-template-columns:1fr!important}}.checklist-header{gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-divider);flex-direction:column;display:flex}.checklist-header__top{justify-content:space-between;align-items:flex-start;gap:var(--space-5);flex-wrap:wrap;display:flex}.checklist-header__meta{gap:var(--space-5);font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.checklist-header__meta strong{color:var(--color-ink);font-weight:500}.checklist-title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-ink);letter-spacing:-.01em;margin:0;font-weight:400;line-height:1.1}.checklist-title em{color:var(--color-accent);font-style:italic}.checklist-subtitle{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.progress{align-items:center;gap:var(--space-4);display:flex}.progress__bar{background:var(--color-surface-sunken);border-radius:var(--radius-pill);flex:1;height:6px;position:relative;overflow:hidden}.progress__fill{background:var(--color-accent);border-radius:var(--radius-pill);height:100%;transition:width var(--duration-slow) var(--ease-out-expo)}.progress__label{font-family:var(--font-display);font-style:italic;font-size:var(--text-md);color:var(--color-ink);text-align:right;min-width:64px}.progress--complete .progress__fill{background:var(--color-success)}.checklist-items{gap:var(--space-4);margin-top:var(--space-6);flex-direction:column;display:flex}.item-card{background:var(--color-surface-elevated);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-5);transition:all var(--duration-base) var(--ease-out-expo);position:relative}.item-card[data-status=approved]{background:linear-gradient(0deg, #2d6a4f08, #2d6a4f08), var(--color-surface-elevated);border-color:#2d6a4f33}.item-card[data-status=correction_requested]{background:linear-gradient(0deg, #a4243b0a, #a4243b0a), var(--color-surface-elevated);border-color:#a4243b40}.item-card[data-status=submitted],.item-card[data-status=in_review]{background:linear-gradient(0deg, #395b6e08, #395b6e08), var(--color-surface-elevated);border-color:#395b6e33}.item-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.item-card__head:focus-visible{outline:none}.item-card__title-block{flex:1}.item-card__title{font-family:var(--font-body);font-size:var(--text-md);color:var(--color-ink);margin:0 0 var(--space-1);font-weight:500;line-height:1.3}.item-card__title .item-card__index{color:var(--color-text-subtle);margin-right:var(--space-2);font-variant-numeric:tabular-nums;font-size:var(--text-sm)}.item-card__desc{color:var(--color-text-muted);font-size:var(--text-sm);margin:0;line-height:1.5}.item-card__chevron{transition:transform var(--duration-base);color:var(--color-text-subtle);font-size:var(--text-lg);line-height:1}.item-card[data-open=true] .item-card__chevron{transform:rotate(90deg)}.item-card__body{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-divider);gap:var(--space-5);flex-direction:column;display:flex}.docs-list{gap:var(--space-2);flex-direction:column;display:flex}.doc-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-sunken);border-radius:var(--radius-sm);transition:border-color var(--duration-fast);border:1px solid #0000;display:flex}.doc-row:hover{border-color:var(--color-divider)}.doc-row__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.doc-row__name{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink);word-break:break-all}.doc-row__meta{font-size:var(--text-xs);color:var(--color-text-muted)}.doc-row__actions{gap:var(--space-2);flex-shrink:0;display:flex}.dropzone{border:2px dashed var(--color-divider);border-radius:var(--radius-md);padding:var(--space-6);text-align:center;background:var(--color-surface);cursor:pointer;transition:all var(--duration-base);position:relative}.dropzone:hover,.dropzone.is-dragging{border-color:var(--color-accent);background:var(--color-accent-soft);background:linear-gradient(0deg, #c97b4f0d, #c97b4f0d), var(--color-surface)}.dropzone.is-uploading{border-style:solid;border-color:var(--color-accent);pointer-events:none;opacity:.6}.dropzone__icon{width:40px;height:40px;margin:0 auto var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-sunken);color:var(--color-ink);font-size:var(--text-xl);place-items:center;display:grid}.dropzone__primary{font-family:var(--font-display);font-size:var(--text-md);color:var(--color-ink);margin:0 0 var(--space-1);font-style:italic}.dropzone__hint{font-size:var(--text-xs);color:var(--color-text-muted);margin:0}.dropzone__input{opacity:0;cursor:pointer;position:absolute;inset:0}.thread{gap:var(--space-3);flex-direction:column;display:flex}.thread__title{font-family:var(--font-display);font-style:italic;font-size:var(--text-md);color:var(--color-ink);margin:0 0 var(--space-1)}.thread__list{gap:var(--space-3);flex-direction:column;display:flex}.thread__item{gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider);display:flex}.thread__item:last-child{border-bottom:0}.thread__avatar{border-radius:var(--radius-pill);background:var(--color-ink);width:32px;height:32px;color:var(--color-text-on-ink);font-family:var(--font-display);font-size:var(--text-sm);flex-shrink:0;place-items:center;font-weight:600;display:grid}.thread__avatar--client{background:var(--color-accent)}.thread__body{flex:1;min-width:0}.thread__meta{font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-1)}.thread__meta strong{color:var(--color-ink);font-weight:500}.thread__text{font-size:var(--text-sm);color:var(--color-text);white-space:pre-wrap;word-wrap:break-word}.thread__form textarea{min-height:80px}.thread__form-actions{margin-top:var(--space-2);justify-content:flex-end;display:flex}.item-actions{gap:var(--space-3);padding-top:var(--space-4);border-top:1px dashed var(--color-divider);flex-wrap:wrap;display:flex}.correction-box{border-radius:var(--radius-sm);padding:var(--space-4);gap:var(--space-3);background:#a4243b0d;border:1px solid #a4243b33;flex-direction:column;display:flex}.correction-box__label{font-family:var(--font-display);color:var(--color-danger);margin:0;font-style:italic}.list-table{border-collapse:collapse;width:100%}.list-table thead{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle)}.list-table th{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);font-weight:500}.list-table td{padding:var(--space-4);border-bottom:1px solid var(--color-divider);font-size:var(--text-sm);color:var(--color-ink)}.list-table tr:last-child td{border-bottom:0}.list-table tr:hover td{background:var(--color-surface-sunken)}.page-toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.page-title{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--color-ink);letter-spacing:-.02em;margin:0;font-weight:400}.page-title em{color:var(--color-accent);font-style:italic}.checklist-card-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.checklist-card{background:var(--color-surface-elevated);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-5);gap:var(--space-3);transition:all var(--duration-base);color:inherit;flex-direction:column;text-decoration:none;display:flex}.checklist-card:hover{border-color:var(--color-ink-soft);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.checklist-card__period{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.checklist-card__name{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-ink);margin:0;line-height:1.2}.checklist-card__client{font-size:var(--text-sm);color:var(--color-text-muted);margin:0}.checklist-card__footer{padding-top:var(--space-3);border-top:1px solid var(--color-divider);margin-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.ai-block{margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-sunken);border-left:3px solid var(--color-accent);gap:var(--space-2);flex-direction:column;display:flex}.ai-block[data-variant=info]{border-left-color:var(--color-info);background:var(--color-info-soft)}.ai-block[data-variant=success]{border-left-color:var(--color-success);background:var(--color-success-soft)}.ai-block[data-variant=danger]{border-left-color:var(--color-danger);background:var(--color-danger-soft)}.ai-block[data-variant=neutral]{border-left-color:var(--color-divider)}.ai-block__header{align-items:center;gap:var(--space-2);display:flex}.ai-tag{padding:2px var(--space-2);font-family:var(--font-mono);color:var(--color-surface);background:var(--color-ink);border-radius:var(--radius-sm);letter-spacing:.08em;align-items:center;font-size:10px;font-weight:600;display:inline-flex}.ai-block__status{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.ai-block__body{gap:var(--space-2);flex-direction:column;display:flex}.ai-block__category{font-size:var(--text-sm);color:var(--color-ink)}.ai-block__category strong{font-weight:600}.ai-block__confidence{font-size:var(--text-xs);color:var(--color-text-muted);margin-left:var(--space-1)}.ai-block__summary{font-size:var(--text-sm);color:var(--color-text);margin:0;line-height:1.5}.ai-block[data-variant=warning]{border-left-color:var(--color-warning);background:var(--color-warning-soft)}.ai-block__disclaimer{font-size:var(--text-xs);color:var(--color-text-muted);margin:0;font-style:italic;line-height:1.4}.ai-block__warning{font-size:var(--text-xs);color:var(--color-danger);margin:var(--space-2) 0 0;font-weight:500}.extracted-data-block{gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}.extracted-data__section{gap:var(--space-2);flex-direction:column;display:flex}.extracted-data__section--suggested{border-top:1px dashed var(--color-divider);padding-top:var(--space-3);margin-top:var(--space-2)}.extracted-data__title{font-size:var(--text-xs);color:var(--color-ink);text-transform:uppercase;letter-spacing:.04em;margin:0;font-weight:600}.extracted-data__title--suggested{color:var(--color-text-muted);font-weight:500}.extracted-data{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.extracted-data__row{gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface-elevated);border-radius:var(--radius-sm);font-size:var(--text-sm);grid-template-columns:minmax(160px,30%) 1fr;align-items:baseline;display:grid}.extracted-data__row[data-low-confidence]{background:var(--color-warning-soft)}.extracted-data__label{color:var(--color-text-muted);font-size:var(--text-xs)}.extracted-data__reason{color:var(--color-text-subtle);margin-top:2px;font-size:10px;font-weight:400;display:block}.extracted-data__value{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.extracted-data__text{color:var(--color-ink);font-weight:500;font-family:var(--font-mono);font-size:var(--text-xs)}.extracted-data__empty{color:var(--color-text-subtle)}.extracted-data__confidence{color:var(--color-text-muted);font-size:10px;font-family:var(--font-mono);background:#0e2a2c0d;border-radius:3px;padding:1px 4px}.copy-btn{cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast);background:0 0;border:0;padding:2px 6px;font-size:12px;line-height:1}.copy-btn:hover{background:#0e2a2c0f}.copy-btn.is-copied{color:var(--color-success)}[x-cloak]{display:none!important}.stat-card{background:var(--color-surface-elevated);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-5);gap:var(--space-2);border-left-style:solid;border-left-width:4px;border-left-color:var(--color-divider);transition:all var(--duration-base);color:inherit;flex-direction:column;text-decoration:none;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card[data-traffic=ok]{border-left-color:var(--color-success)}.stat-card[data-traffic=warn]{border-left-color:var(--color-warning)}.stat-card[data-traffic=bad]{border-left-color:var(--color-danger)}.stat-card[data-traffic=info]{border-left-color:var(--color-info)}.stat-card[data-traffic=accent]{border-left-color:var(--color-accent)}.stat-card__label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-card__value{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--color-ink)}.stat-card__value[data-traffic=ok]{color:var(--color-success)}.stat-card__value[data-traffic=warn]{color:var(--color-warning)}.stat-card__value[data-traffic=bad]{color:var(--color-danger)}.stat-card__hint{font-size:var(--text-xs);color:var(--color-text-muted)}.traffic{align-items:center;gap:var(--space-2);font-size:var(--text-xs);padding:4px var(--space-3);border-radius:var(--radius-pill);font-weight:500;display:inline-flex}.traffic-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.traffic-ok{background:var(--color-success-soft);color:var(--color-success)}.traffic-ok .traffic-dot{background:var(--color-success);animation:2s ease-in-out infinite pulse-ok}.traffic-warn{background:var(--color-warning-soft);color:var(--color-warning)}.traffic-warn .traffic-dot{background:var(--color-warning)}.traffic-bad{background:var(--color-danger-soft);color:var(--color-danger)}.traffic-bad .traffic-dot{background:var(--color-danger);animation:1.4s ease-in-out infinite pulse-bad}@keyframes pulse-ok{0%,to{box-shadow:0 0 #2d6a4f66}50%{box-shadow:0 0 0 6px #2d6a4f00}}@keyframes pulse-bad{0%,to{box-shadow:0 0 #c5303066}50%{box-shadow:0 0 0 6px #c5303000}}.mini-progress{background:var(--color-surface-sunken);border-radius:var(--radius-pill);flex:1;height:6px;overflow:hidden}.mini-progress__fill{height:100%;transition:width var(--duration-base);border-radius:var(--radius-pill)}.mini-progress__fill[data-traffic=ok]{background:var(--color-success)}.mini-progress__fill[data-traffic=warn]{background:var(--color-warning)}.mini-progress__fill[data-traffic=bad]{background:var(--color-danger)}.dashboard-hero{padding:var(--space-6);border-radius:var(--radius-md);color:var(--color-text-on-ink);background:linear-gradient(135deg, var(--color-ink) 0%, var(--color-ink-soft) 100%);justify-content:space-between;align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.dashboard-hero[data-traffic=ok]{background:linear-gradient(135deg, #1f4e33 0%, var(--color-success) 100%)}.dashboard-hero[data-traffic=warn]{background:linear-gradient(135deg, #8b5a1b 0%, var(--color-warning) 100%)}.dashboard-hero[data-traffic=bad]{background:linear-gradient(135deg, #6b1b1b 0%, var(--color-danger) 100%)}.dashboard-hero__icon{flex-shrink:0;font-size:48px;line-height:1}.dashboard-hero__title{font-family:var(--font-display);font-size:var(--text-2xl);margin:0 0 var(--space-2);line-height:1.15}.dashboard-hero__sub{font-size:var(--text-sm);opacity:.9;margin:0}@media (width<=768px){.checklist-card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.checklist-header{padding-bottom:var(--space-3)}.checklist-header__top{align-items:stretch;gap:var(--space-3);flex-direction:column}.checklist-title{font-size:var(--text-xl)}.progress,.item-card__head{gap:var(--space-2);flex-wrap:wrap}.item-card__title{font-size:var(--text-md)}.item-card__desc{font-size:var(--text-xs)}.extracted-data__row{gap:var(--space-1);grid-template-columns:1fr}.extracted-data__label{font-size:10px}.page-title{font-size:var(--text-2xl)}}@media (width<=640px){.dashboard-hero{padding:var(--space-4);text-align:left;flex-direction:column;align-items:stretch}.dashboard-hero>div:first-child{flex-direction:column;align-items:flex-start!important;gap:var(--space-3)!important}.dashboard-hero__icon{font-size:32px}.dashboard-hero__title{font-size:var(--text-xl)}.dashboard-hero__sub{font-size:var(--text-xs)}.dashboard-hero a.btn,.dashboard-hero button.btn{justify-content:center;width:100%}.stat-card{padding:var(--space-4)}.stat-card__value{font-size:var(--text-2xl)}.doc-row{align-items:stretch;gap:var(--space-2);flex-direction:column}.doc-row__actions{flex-wrap:wrap;justify-content:flex-start}.dropzone{padding:var(--space-4)}.field-row{gap:var(--space-2)!important;grid-template-columns:1fr!important}.field-row>*{width:100%}.field-row select{min-width:0!important}}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-surface);margin:0;line-height:1.5}a{color:inherit;transition:color var(--duration-fast);text-decoration:none}button{cursor:pointer;background:0 0;border:0;font-family:inherit}img,svg,video{max-width:100%;display:block}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}::selection{background:var(--color-accent);color:var(--color-surface)}
