@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap");:root{--brand-primary:#0f766e;--brand-primary-dark:#0f766e;--brand-primary-strong:#0b5c56;--brand-accent:#f59e0b;--brand-ink:#14201c;--brand-paper:#f4f7f5;--brand-muted:#5c6f68;--accent-fg:var(--brand-primary);--surface-0:color-mix(in srgb,var(--brand-ink) 3.5%,var(--brand-paper));--surface-1:color-mix(in srgb,#fff 86%,var(--brand-paper));--surface-2:color-mix(in srgb,#fff 94%,var(--brand-paper));--surface:var(--surface-1);--surface-solid:#ffffff;--border:color-mix(in srgb,var(--brand-ink) 12%,transparent);--border-strong:color-mix(in srgb,var(--brand-ink) 22%,transparent);--shadow-sm:0 1px 2px color-mix(in srgb,var(--brand-ink) 7%,transparent);--shadow-md:0 12px 28px color-mix(in srgb,var(--brand-ink) 9%,transparent);--shadow-lg:0 24px 56px color-mix(in srgb,var(--brand-ink) 14%,transparent);--shadow:var(--shadow-md);--danger:#b91c1c;--ok:var(--brand-primary);--success:var(--brand-primary);--success-bg:color-mix(in srgb,var(--success) 12%,var(--surface-solid));--success-border:color-mix(in srgb,var(--success) 38%,var(--border));--success-text:color-mix(in srgb,var(--success) 85%,var(--brand-ink));--warning:var(--brand-accent);--warning-bg:color-mix(in srgb,var(--warning) 15%,var(--surface-solid));--warning-border:color-mix(in srgb,var(--warning) 42%,var(--border));--warning-text:color-mix(in srgb,var(--warning) 62%,var(--brand-ink));--danger-bg:color-mix(in srgb,var(--danger) 12%,var(--surface-solid));--danger-border:color-mix(in srgb,var(--danger) 38%,var(--border));--danger-text:var(--danger);--info:var(--accent-fg);--info-bg:color-mix(in srgb,var(--info) 9%,var(--surface-solid));--info-border:color-mix(in srgb,var(--info) 30%,var(--border));--info-text:color-mix(in srgb,var(--info) 72%,var(--brand-ink));--radius:14px;--radius-sm:10px;--radius-lg:18px;--radius-full:999px;--font-display:"Fraunces",Georgia,serif;--font-body:"DM Sans",system-ui,sans-serif;--nav-h:3.25rem;--sidebar-w:15.5rem;--content-max:1220px}html[data-theme=dark]{--brand-ink:#eaf2ee;--brand-paper:#0a110f;--brand-muted:#93a69e;--surface-0:#070c0a;--surface-1:color-mix(in srgb,#17221d 100%,var(--brand-primary) 4%);--surface-2:color-mix(in srgb,#1d2b24 100%,var(--brand-primary) 5%);--surface:var(--surface-1);--surface-solid:#121b17;--border:color-mix(in srgb,#eaf2ee 13%,transparent);--border-strong:color-mix(in srgb,#eaf2ee 24%,transparent);--shadow-sm:0 1px 2px rgba(0,0,0,0.35);--shadow-md:0 14px 32px rgba(0,0,0,0.4);--shadow-lg:0 28px 64px rgba(0,0,0,0.5);--shadow:var(--shadow-md);--danger:#f87171;--ok:#2dd4bf;--success:#2dd4bf;--brand-primary-strong:#14b8a6;--accent-fg:var(--brand-primary-dark)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100vh;height:100%}html{color-scheme:light dark}body,html{background-color:var(--brand-paper)}body{font-family:var(--font-body);color:var(--brand-ink);background-image:radial-gradient(ellipse 90% 55% at 8% -15%,color-mix(in srgb,var(--brand-primary) 22%,transparent),transparent 55%),radial-gradient(ellipse 70% 45% at 92% 0,color-mix(in srgb,var(--brand-accent) 16%,transparent),transparent 50%),linear-gradient(180deg,color-mix(in srgb,var(--brand-paper) 92%,var(--brand-primary)),var(--brand-paper) 38%);background-attachment:fixed;line-height:1.55;transition:background-color .3s ease,background-image .3s ease,color .3s ease}body:has(.app-shell){background-image:none;background-color:var(--surface-0)}@media (min-width:961px){body:has(.app-shell){padding-left:var(--sidebar-w)}}a{color:var(--accent-fg);text-decoration:none}a:hover{text-decoration:underline}::selection{background:color-mix(in srgb,var(--accent-fg) 30%,transparent)}.shell{max-width:920px;margin:0 auto;padding:1.1rem 1.25rem 4rem}.shell:has(.shell-app){max-width:var(--content-max)}.shell:has(.app-shell){max-width:var(--content-max);padding:1.1rem 1.25rem 3rem}.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--nav-h);margin-bottom:2rem;padding:.55rem .75rem;border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.nav-brand{font-family:var(--font-display);font-weight:700;font-size:1.12rem;color:var(--brand-ink);text-decoration:none;letter-spacing:-.02em}.nav-brand:hover{text-decoration:none;color:var(--accent-fg)}.nav-links{display:flex;flex-wrap:wrap;gap:.55rem .85rem;align-items:center;justify-content:flex-end;font-size:.92rem;font-weight:500}.nav-links>a:not(.btn){color:var(--brand-ink);opacity:.88}.nav-links>a:not(.btn):hover{opacity:1;color:var(--accent-fg)}.nav-skeleton{width:4.5rem;height:1.6rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--brand-ink) 10%,transparent)}.icon{flex:0 0 auto;display:inline-block;vertical-align:middle}.theme-toggle{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-solid) 70%,transparent);color:var(--brand-ink);border-radius:var(--radius-sm);padding:.35rem .6rem;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease}.theme-toggle:hover{border-color:color-mix(in srgb,var(--accent-fg) 45%,var(--border));background:var(--surface-solid)}.theme-toggle-label{min-width:2.6rem;text-align:left}.hero{padding:1.5rem 0 2.5rem;animation:rise .55s ease both}.hero-kicker{margin:0 0 .65rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-muted)}.hero h1{font-family:var(--font-display);font-size:clamp(2.5rem,7vw,3.85rem);line-height:1.05;letter-spacing:-.03em;margin:0 0 .85rem;max-width:12ch}.hero>p{font-size:1.12rem;color:var(--brand-muted);max-width:34ch;margin:0 0 1.6rem}.hero-note{margin-top:1.75rem;max-width:42ch}.cta-row{display:flex;flex-wrap:wrap;gap:.7rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:none;border-radius:var(--radius-sm);padding:.72rem 1.2rem;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;transition:filter .15s ease,background .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-compact,.btn-sm{padding:.42rem .85rem;font-size:.88rem}.btn-icon{padding:.5rem;aspect-ratio:1}.btn-primary,.btn-secondary{background:var(--brand-primary);color:#fff;box-shadow:0 1px 0 color-mix(in srgb,#000 12%,transparent)}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled){filter:brightness(1.08);text-decoration:none}.btn-ghost{background:transparent;color:var(--brand-ink);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:color-mix(in srgb,var(--brand-ink) 6%,transparent);border-color:var(--border-strong);text-decoration:none}.btn-danger{background:transparent;color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 40%,var(--border))}.btn-danger:hover:not(:disabled){background:var(--danger-bg);text-decoration:none}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.45rem 1.5rem;max-width:440px;box-shadow:var(--shadow-md);animation:rise .45s ease both}.panel h2{font-family:var(--font-display);margin:0 0 1rem;font-size:1.55rem;letter-spacing:-.02em}label{display:block;font-size:.84rem;font-weight:600;margin-bottom:.35rem}input[type=date],input[type=email],input[type=file],input[type=number],input[type=password],input[type=search],input[type=text],select,textarea{width:100%;margin-bottom:1rem;padding:.7rem .8rem;border-radius:var(--radius-sm);border:1px solid var(--border);font:inherit;color:var(--brand-ink);background:var(--surface-solid);transition:border-color .15s ease,box-shadow .15s ease}input[type=file]{padding:.55rem .65rem}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235c6f68' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;padding-right:2.1rem}.theme-toggle:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-fg) 70%,white);outline-offset:2px}input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb,var(--accent-fg) 55%,var(--border))}.app-main{display:flex;flex-direction:column;gap:1.15rem}.app-panel{max-width:none;width:100%}.app-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.app-header,.app-header h2{margin-bottom:.35rem}.section-title{font-family:var(--font-display);font-size:1.2rem;margin:0 0 .85rem;letter-spacing:-.02em}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.check-row{border:none;margin:0 0 1rem;padding:0;display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.check-row legend{font-size:.85rem;font-weight:600;margin-bottom:.35rem;padding:0;width:100%}.check{display:inline-flex;align-items:center;gap:.4rem;font-weight:400;margin:0}.check input{width:auto;margin:0}.extraction-list{list-style:none;margin:0;padding:0}.extraction-row{padding:1rem 0;border-top:1px solid var(--border)}.extraction-row:first-child{border-top:none;padding-top:0}.status-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .6rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:650;letter-spacing:.01em;border:1px solid transparent;background:color-mix(in srgb,var(--brand-ink) 7%,transparent);color:var(--brand-muted)}.status-pill[data-status=finished]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.status-pill[data-status=pending],.status-pill[data-status=running]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}.status-pill[data-status=failed],.status-pill[data-status=partial_failure]{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}.status-pill[data-status=no_data]{background:color-mix(in srgb,var(--brand-ink) 7%,transparent);color:var(--brand-muted)}.status-pill[data-status=confirmed],.status-pill[data-status=manual],.status-pill[data-status=parsed]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.status-pill[data-status=parsing],.status-pill[data-status=suggested]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}.status-pill[data-status=unmatched]{background:color-mix(in srgb,var(--brand-ink) 7%,transparent);color:var(--brand-muted)}.status-pill[data-status=parse_failed],.status-pill[data-status=rejected]{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}.error{color:var(--danger)}.error,.ok{font-size:.9rem;margin:0 0 .75rem}.ok{color:var(--success-text)}.muted{font-size:.9rem}.foot,.muted{color:var(--brand-muted)}.foot{margin-top:3rem;padding-top:1.35rem;border-top:1px solid var(--border);font-size:.84rem}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-120% 0}to{background-position:220% 0}}.skeleton{display:block;border-radius:var(--radius-sm);background:linear-gradient(100deg,color-mix(in srgb,var(--brand-ink) 8%,transparent) 30%,color-mix(in srgb,var(--brand-ink) 14%,transparent) 50%,color-mix(in srgb,var(--brand-ink) 8%,transparent) 70%);background-size:250% 100%;animation:shimmer 1.5s ease-in-out infinite}.shell-app{max-width:var(--content-max)}.app-shell{display:block}.app-sidebar{position:fixed;top:0;left:0;z-index:20;width:var(--sidebar-w);height:100dvh;gap:1.1rem;padding:1.1rem;border-right:1px solid var(--border);background:var(--surface-1);overflow-y:auto}.app-sidebar,.app-sidebar-section{display:flex;flex-direction:column}.app-sidebar-section{gap:.3rem}.app-sidebar-heading{margin:0 0 .15rem;padding:0 .55rem;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--brand-muted)}.app-nav{display:flex;flex-direction:column;gap:.1rem}.app-nav-link{display:flex;align-items:center;gap:.7rem;padding:.55rem .6rem;border-radius:var(--radius-sm);color:var(--brand-ink);font-weight:550;font-size:.92rem;text-decoration:none;opacity:.82;transition:background .15s ease,opacity .15s ease,color .15s ease;position:relative}.app-nav-link .icon{color:var(--brand-muted);transition:color .15s ease}.app-nav-link:hover{opacity:1;text-decoration:none;background:color-mix(in srgb,var(--brand-ink) 6%,transparent)}.app-nav-link.is-active{opacity:1;color:var(--accent-fg);background:color-mix(in srgb,var(--accent-fg) 12%,transparent)}.app-nav-link.is-active .icon{color:var(--accent-fg)}.app-nav-badge{margin-left:auto;min-width:1.35rem;height:1.35rem;padding:0 .35rem;border-radius:var(--radius-full);background:var(--brand-accent);color:#1a1200;font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.app-sidebar-divider{border:none;border-top:1px solid var(--border);margin:.1rem 0}.app-field{display:flex;flex-direction:column;gap:.3rem}.app-field-label{padding:0 .15rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-muted)}.app-field select,.app-field-empty,.app-field-value{margin:0;font-size:.88rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.app-field-value{padding:.5rem .65rem;border-radius:var(--radius-sm);background:var(--surface-solid);border:1px solid var(--border);color:var(--brand-ink)}.app-field-empty{padding:.5rem .65rem;border-radius:var(--radius-sm);border:1px dashed var(--border-strong);display:inline-block}.app-sidebar-foot{margin-top:auto;padding-top:.9rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem}.app-account-row{display:flex;align-items:center;gap:.55rem;padding:.3rem .2rem;min-width:0}.app-account-avatar{flex:0 0 auto;width:1.9rem;height:1.9rem;border-radius:var(--radius-full);background:var(--brand-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem}.app-account-email{min-width:0;font-size:.82rem;font-weight:600;color:var(--brand-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-foot-row{display:flex;align-items:center;gap:.4rem}.app-sidebar-foot-row .theme-toggle{flex:1 1 auto;justify-content:center}.app-content{display:flex;flex-direction:column;gap:1.15rem;min-width:0}.app-mobile-bar{display:none}.page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.25rem}.page-header h2{font-family:var(--font-display);margin:0 0 .35rem;font-size:1.7rem;letter-spacing:-.02em}.page-lead{margin:0;max-width:52ch;color:var(--brand-muted);font-size:.95rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:.75rem;gap:.75rem}.stat-card{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);padding:.95rem 1.05rem;transition:border-color .15s ease,transform .15s ease}.stat-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--border)}.stat-label{margin:0;font-size:.76rem;font-weight:650;color:var(--brand-muted);text-transform:uppercase;letter-spacing:.045em}.stat-value{margin:.3rem 0 0;font-family:var(--font-display);font-size:1.65rem;letter-spacing:-.02em;line-height:1.1}.stat-hint{margin:.3rem 0 0;font-size:.8rem}.stat-card.tone-ok{background:color-mix(in srgb,var(--success) 5%,var(--surface-solid))}.stat-card.tone-ok:before{background:var(--success)}.stat-card.tone-ok .stat-value{color:var(--success-text)}.stat-card.tone-warn{background:color-mix(in srgb,var(--warning) 6%,var(--surface-solid))}.stat-card.tone-warn:before{background:var(--warning)}.stat-card.tone-warn .stat-value{color:var(--warning-text)}.stat-card.tone-danger{background:color-mix(in srgb,var(--danger) 5%,var(--surface-solid))}.stat-card.tone-danger:before{background:var(--danger)}.stat-card.tone-danger .stat-value{color:var(--danger-text)}.filter-bar{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.filter-chip{border:1px solid var(--border);background:var(--surface-solid);color:var(--brand-muted);border-radius:var(--radius-full);padding:.38rem .85rem;font:inherit;font-size:.84rem;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.filter-chip:hover{color:var(--brand-ink);border-color:var(--border-strong)}.filter-chip.is-active{color:#fff;border-color:var(--brand-primary);background:var(--brand-primary)}.toolbar-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin:.85rem 0}.search-input{min-width:min(100%,240px);margin:0!important}.data-table-wrap{overflow-x:auto;overflow-y:auto;max-height:70vh;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid)}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th{position:-webkit-sticky;position:sticky;top:0;z-index:1;text-align:left;padding:.7rem .85rem;font-size:.76rem;font-weight:700;color:var(--brand-muted);text-transform:uppercase;letter-spacing:.045em;white-space:nowrap;background:color-mix(in srgb,var(--brand-paper) 75%,var(--surface-solid));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.data-table td,.data-table th{border-bottom:1px solid var(--border)}.data-table td{padding:.75rem .85rem;vertical-align:top}.data-table-compact td{padding:.45rem .7rem;vertical-align:middle}.data-table-compact th{padding:.5rem .7rem}.error-details{margin-top:.35rem}.error-details-summary{cursor:pointer;font-size:.82rem;color:var(--brand-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.error-details[open] .error-details-summary{margin-bottom:.35rem;color:var(--brand-ink)}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .12s ease}.data-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--brand-ink) 1.6%,transparent)}.data-table tbody tr:hover{background:color-mix(in srgb,var(--brand-primary) 7%,transparent)}.data-table tr.is-clickable{cursor:pointer}.data-table .amount-pos{color:var(--success-text)}.data-table .amount-neg,.data-table .amount-pos{font-weight:650;white-space:nowrap;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.data-table .amount-neg{color:var(--danger)}.log-section{border:1px dashed var(--border-strong);border-radius:var(--radius);padding:0}.log-section[open]{padding-bottom:.25rem}.log-summary{cursor:pointer;list-style:none;padding:1rem 1.25rem;font-weight:650;color:var(--brand-ink);display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.log-summary::-webkit-details-marker{display:none}.log-summary:before{content:"›";display:inline-block;margin-right:.15rem;font-size:1.15em;transition:transform .15s ease}.log-section[open]>.log-summary:before{transform:rotate(90deg)}.log-section .app-panel{margin:0 1rem 1rem;width:auto;max-width:none;box-shadow:none}.log-section .app-panel:last-child{margin-bottom:1rem}.row-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.84rem}.detail-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;align-items:start}.detail-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-solid);padding:1.15rem 1.25rem}.detail-panel h3{font-family:var(--font-display);margin:0 0 .85rem;font-size:1.15rem}.detail-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem;margin:0}.detail-grid dt{margin:0;font-size:.75rem;font-weight:600;color:var(--brand-muted);text-transform:uppercase;letter-spacing:.04em}.detail-grid dd{margin:.15rem 0 0;font-size:.95rem;word-break:break-word}.detail-sub{display:block;margin-top:.15rem;font-size:.8rem}.invoice-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);padding:1rem 1.1rem}.invoice-card--highlight{border-color:color-mix(in srgb,var(--brand-accent) 55%,var(--border));background:color-mix(in srgb,var(--brand-accent) 8%,var(--surface-solid))}.invoice-card-header{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:.85rem}.invoice-card-kicker{margin:0;font-size:.75rem;font-weight:600;color:var(--brand-muted);text-transform:uppercase;letter-spacing:.05em}.invoice-card-title{margin:.2rem 0 0;font-family:var(--font-display);font-size:1.35rem;letter-spacing:-.02em}.invoice-card-actions{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--border)}.candidate-list{display:flex;flex-direction:column;gap:.75rem}.empty-state{text-align:center;padding:2.75rem 1rem}.empty-state-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent-fg) 12%,transparent);color:var(--accent-fg);margin-bottom:.85rem}.empty-state h3{font-family:var(--font-display);margin:0 0 .5rem;font-size:1.25rem}.home-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:.85rem;gap:.85rem}.home-card{display:flex;flex-direction:column;gap:.55rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-solid);padding:1.15rem 1.2rem;text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.home-card:hover{text-decoration:none;border-color:color-mix(in srgb,var(--accent-fg) 45%,var(--border));transform:translateY(-2px);box-shadow:var(--shadow-md)}.home-card-icon{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent-fg) 12%,transparent);color:var(--accent-fg);margin-bottom:.15rem}.home-card h3{font-family:var(--font-display);margin:0;font-size:1.2rem}.home-card p{margin:0;color:var(--brand-muted);font-size:.9rem;flex:1 1}.home-card-cta{display:inline-flex;align-items:center;gap:.3rem;font-weight:600;color:var(--accent-fg);font-size:.9rem}.tech-details{margin-top:.5rem;font-size:.85rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface-solid);color:var(--brand-ink);padding:.5rem;border-radius:4px;border:1px solid var(--border)}.tech-details-block{margin-bottom:.75rem;padding-bottom:.75rem}.back-link{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;font-size:.9rem;margin-bottom:.75rem}.amount-lg{font-family:var(--font-display);font-size:1.8rem;letter-spacing:-.02em;margin:.15rem 0 0}.hint-banner{display:flex;gap:.75rem;align-items:flex-start;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--info-bg);padding:.85rem 1rem;font-size:.9rem;color:var(--brand-ink);margin:0 0 1rem}.hint-banner[data-tone=danger]{border-color:var(--danger-border);background:var(--danger-bg)}.hint-banner[data-tone=warn]{border-color:var(--warning-border);background:var(--warning-bg)}.hint-banner[data-tone=ok]{border-color:var(--success-border);background:var(--success-bg)}.hint-banner-icon{flex:0 0 auto;display:inline-flex;margin-top:.1rem;color:var(--info-text)}.hint-banner[data-tone=danger] .hint-banner-icon{color:var(--danger-text)}.hint-banner[data-tone=warn] .hint-banner-icon{color:var(--warning-text)}.hint-banner[data-tone=ok] .hint-banner-icon{color:var(--success-text)}.hint-banner-body{min-width:0;flex:1 1 auto}.hint-banner-body>:first-child{margin-top:0}.hint-banner-body>:last-child{margin-bottom:0}.hint-banner-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.share-link-list{list-style:none;padding:0;margin:.75rem 0 0;font-size:.9rem;display:flex;flex-direction:column;gap:.35rem}.share-link-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.gap-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.35rem}.gap-list-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.3rem 0}.coverage-hero{margin:0 0 1.5rem;padding:1rem 1.05rem 1.1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--brand-primary) 6%,var(--surface-solid))}.coverage-hero.is-incomplete{border-color:var(--danger-border);background:var(--danger-bg)}.coverage-hero.is-complete{border-color:var(--success-border);background:var(--success-bg)}.coverage-hero-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;margin-bottom:.65rem}.coverage-hero-header h3{margin:0;font-size:1.15rem;letter-spacing:-.015em}.coverage-hero-lead{margin:.35rem 0 0;max-width:48ch;font-size:.92rem;color:var(--brand-muted);line-height:1.45}.coverage-meter{height:.5rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--brand-ink) 10%,transparent);overflow:hidden;margin:.85rem 0 .35rem}.coverage-meter-fill{height:100%;width:0;border-radius:inherit;background:var(--brand-primary);transition:width .35s ease}.coverage-meter-fill.is-complete{background:var(--success)}.coverage-meter-label{margin:0 0 1rem;font-size:.82rem;color:var(--brand-muted)}.coverage-section-title{margin:1.1rem 0 .15rem;font-size:.95rem}.coverage-section-hint{margin:0 0 .55rem;font-size:.85rem}.coverage-checklist{list-style:none;padding:0;margin:0}.coverage-checklist-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 0;border-bottom:1px solid var(--border)}.coverage-checklist-item:last-child{border-bottom:none;padding-bottom:.15rem}.coverage-checklist-main{flex:1 1 14rem;min-width:0}.coverage-checklist-main strong{display:block;font-size:.98rem}.coverage-checklist-meta{margin:.2rem 0 0;font-size:.85rem;color:var(--brand-muted)}.coverage-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.coverage-done-list{margin:.35rem 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}.coverage-done-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .55rem;border-radius:var(--radius-full);font-size:.8rem;color:var(--brand-ink)}.accounts-admin,.coverage-done-chip{border:1px solid var(--border);background:var(--surface-solid)}.accounts-admin{margin:0 0 1.25rem;padding:.75rem .9rem;border-radius:var(--radius-sm)}.alert-banner{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.9rem 1rem;margin:0 0 1rem}.alert-banner--danger{border-color:var(--danger-border);background:var(--danger-bg)}.alert-banner-body{flex:1 1 16rem;min-width:0}.alert-banner-title{margin:0 0 .35rem;font-size:1rem;font-weight:650;color:var(--danger);letter-spacing:-.01em}.alert-banner-text{margin:0;font-size:.9rem;color:var(--brand-ink);line-height:1.45}.alert-banner .btn{flex:0 0 auto;align-self:center}.modal-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:1.25rem;background:color-mix(in srgb,#050807 62%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-dialog{width:min(32rem,100%);max-height:min(90vh,40rem);overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-solid);box-shadow:var(--shadow-lg);padding:1.25rem 1.35rem 1.35rem;color:var(--brand-ink)}.modal-kicker{margin:0 0 .35rem;font-size:.78rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--danger)}.modal-title{margin:0;font-family:var(--font-display);font-size:1.45rem;letter-spacing:-.02em;line-height:1.2}.modal-lead{margin:.65rem 0 0;font-size:.95rem;color:var(--brand-muted);line-height:1.45}.modal-error{margin:.85rem 0 0;padding:.75rem .85rem;border:1px solid var(--danger-border);border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--brand-ink);font-size:.9rem;line-height:1.4}.modal-label{display:block;margin:1rem 0 .35rem;font-size:.85rem}.modal-dialog input[type=text]{width:100%;max-width:none;margin-bottom:0}.modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.15rem}.filter-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.75rem;gap:.75rem;align-items:end;margin:.5rem 0 1rem}.filter-fields label{margin-bottom:.3rem}.filter-fields input{margin-bottom:0}.filter-fields-search{grid-column:span 2;min-width:0}.filter-fields-search .search-input{width:100%;min-width:0}.filter-panel{display:flex;flex-direction:column;gap:.65rem;margin:.5rem 0 1rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.filter-panel-meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin:0}.filter-panel .filter-fields{margin:0}.filter-fields-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end}.filter-fields-actions .btn{margin:0}.filter-dirty-hint{margin:0;font-size:.85rem}.pagination-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--border)}.pagination-page{min-width:3.5rem;text-align:center;font-size:.88rem;font-weight:600}.account-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:.65rem;gap:.65rem}.account-summary-card{display:flex;align-items:center;gap:.65rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);padding:.7rem .85rem;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.account-summary-card:hover{border-color:color-mix(in srgb,var(--accent-fg) 40%,var(--border));transform:translateY(-1px)}.account-summary-card.is-active{border-color:var(--accent-fg);background:color-mix(in srgb,var(--accent-fg) 8%,var(--surface-solid))}.account-avatar{flex:0 0 auto;width:2.1rem;height:2.1rem;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.92rem}.account-avatar-all{background:var(--brand-ink)}.account-summary-body{display:flex;flex-direction:column;gap:.1rem;flex:1 1 auto;min-width:0}.account-summary-body strong{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-summary-body .muted{font-size:.78rem}.chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:1.15rem;gap:1.15rem;align-items:start}.chat-main{width:100%}.chat-context,.chat-main{display:flex;flex-direction:column;max-width:none}.chat-context{position:-webkit-sticky;position:sticky;top:1.5rem;gap:1.1rem}.chat-context-section{display:flex;flex-direction:column;gap:.5rem}.chat-context-heading{display:flex;align-items:center;gap:.4rem;margin:0;font-size:.76rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase;color:var(--brand-muted)}.chat-context-rfc{border:1px solid var(--border);border-radius:var(--radius-sm);padding:.65rem .75rem;display:flex;flex-direction:column;gap:.35rem}.chat-context-rfc strong{font-family:var(--font-display);font-size:.95rem;letter-spacing:-.01em}.chat-context-chips{display:flex;flex-wrap:wrap;gap:.3rem}.chat-context-stat-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem 0;border-bottom:1px solid var(--border);font-size:.85rem}.chat-context-stat-row:last-child{border-bottom:none}.chat-context-note{font-size:.78rem;color:var(--brand-muted);line-height:1.45;margin:0}.chat-suggestions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center}.chat-suggestion-chip{border:1px solid var(--border);background:var(--surface-solid);color:var(--brand-ink);border-radius:var(--radius);padding:.6rem .9rem;font:inherit;font-size:.86rem;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease;max-width:20rem}.chat-suggestion-chip:hover{border-color:color-mix(in srgb,var(--accent-fg) 45%,var(--border));background:color-mix(in srgb,var(--accent-fg) 6%,var(--surface-solid));transform:translateY(-1px)}.chat-empty-state{text-align:center;padding:1.75rem 1rem 1.25rem;display:flex;flex-direction:column;align-items:center;gap:1.1rem}.chat-empty-state-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent-fg) 12%,transparent);color:var(--accent-fg)}.chat-thread{display:flex;flex-direction:column;gap:.6rem;min-height:8rem;max-height:32rem;overflow-y:auto;padding:.25rem .1rem}.chat-bubble{max-width:75%;padding:.6rem .85rem;border-radius:var(--radius-sm);font-size:.92rem;line-height:1.45;white-space:pre-wrap}.chat-bubble--user{align-self:flex-end;background:var(--brand-primary);color:#fff}.chat-bubble--assistant{align-self:flex-start;background:var(--surface-solid);border:1px solid var(--border)}.chat-input-row{display:flex;gap:.6rem;margin-top:.9rem}.chat-input-row input{flex:1 1}@media (max-width:860px){.chat-layout,.detail-layout{grid-template-columns:1fr}.chat-context{position:static}}@media (max-width:960px){.app-sidebar{display:none}.app-mobile-bar{display:flex;flex-direction:column;gap:.65rem;padding:.65rem;border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--shadow-sm)}.app-mobile-nav{display:flex;gap:.3rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.app-mobile-nav .app-nav-link{flex:0 0 auto;white-space:nowrap;padding:.5rem .7rem}.app-mobile-fields{display:flex;flex-wrap:wrap;gap:.5rem}.app-mobile-fields .app-field{flex:1 1 9rem}}@media (max-width:640px){.shell{padding:.85rem .9rem 3rem}.filter-fields-actions,.filter-fields-search{grid-column:1/-1}.filter-fields-actions .btn{flex:1 1 auto}.nav{align-items:flex-start;flex-direction:column;padding:.75rem}.nav-links{width:100%;justify-content:flex-start}.theme-toggle-label{display:none}.field-row{grid-template-columns:1fr}.hero h1{max-width:none}.detail-grid{grid-template-columns:1fr}}