:root{--bg:#f4efe7;--surface:#fffcf7db;--surface-strong:#fffdf9;--surface-muted:#f0e7db;--text:#1f2933;--muted:#6a7480;--line:#1f29331f;--accent:#0f766e;--accent-strong:#115e59;--shadow:0 20px 50px #4755691f;--radius-xl:28px;--radius-lg:20px;--radius-md:14px;--font-sans:"Avenir Next", "Segoe UI", sans-serif;color:var(--text);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#0f766e2e,#0000 24rem),radial-gradient(circle at 100% 0,#c278031f,#0000 20rem),linear-gradient(#f7f3ec 0%,#efe7db 100%);line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}h1,h2,p{margin:0}#app{min-height:100vh}.shell{width:min(1180px,100% - 2rem);margin:0 auto;padding:1.5rem 0 3rem}.topbar,.panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.topbar{border-radius:var(--radius-xl);justify-content:space-between;align-items:end;gap:1.25rem;padding:1.5rem;display:flex}.topbar h1{letter-spacing:-.04em;font-size:clamp(2rem,4vw,3.25rem);line-height:1}.topbar-actions{flex-wrap:wrap;align-items:end;gap:1rem;display:flex}.layout{gap:1.25rem;margin-top:1.25rem;display:grid}.panel{border-radius:var(--radius-xl);padding:1.5rem}.hero-panel{grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr);align-items:stretch;gap:1.25rem;display:grid}.panel-copy{gap:.75rem;max-width:42rem;display:grid}.panel-copy h2,.section-heading h2{letter-spacing:-.03em;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.05}.panel-copy p:last-child{color:var(--muted)}.upload-card{align-content:center;display:grid}.upload-dropzone{text-align:center;border-radius:var(--radius-lg);background:linear-gradient(180deg, #0f766e14, #ffffff80), var(--surface-strong);border:1.5px dashed #0f766e59;place-content:center;gap:.35rem;min-height:220px;padding:1.5rem;display:grid}.upload-title{font-size:1.1rem;font-weight:600}.upload-subtitle,.eyebrow{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:700}#key-file{width:100%;margin-top:.9rem}.tabs{border:1px solid var(--line);background:#fffcf7b8;border-radius:999px;gap:.5rem;width:fit-content;padding:.35rem;display:inline-flex}.tab,.button{border:1px solid #0000;border-radius:999px;padding:.8rem 1.1rem;transition:all .18s}.tab{color:var(--muted);background:0 0}.tab.is-active{background:var(--text);color:#fff}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.section-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.25rem;display:flex}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-bottom:1rem;display:grid}.stat-card,.field input,.field select,.table-shell{background:var(--surface-strong);border:1px solid var(--line)}.stat-card{border-radius:var(--radius-md);gap:.25rem;padding:1rem;display:grid}.stat-card span,.field span,.pagination span{color:var(--muted);font-size:.92rem}.stat-card strong{font-size:1.25rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.field{gap:.45rem;display:grid}.field input,.field select{width:100%;min-height:48px;color:var(--text);border-radius:14px;padding:.8rem .95rem}.button{background:var(--accent);color:#fff}.button:hover{background:var(--accent-strong)}.button-ghost{color:var(--text);border-color:var(--line);background:0 0}.button-ghost:hover{background:var(--surface-muted)}.form-actions,.pagination{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.form-actions{grid-column:1/-1;padding-top:.25rem}.table-shell{border-radius:var(--radius-lg);overflow:hidden}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:.95rem 1rem}thead{background:var(--surface-muted)}thead tr,tbody tr+tr{border-bottom:1px solid var(--line)}.empty-cell{text-align:center;color:var(--muted);padding:3rem 1rem}@media (width<=960px){.hero-panel,.content-grid,.form-grid{grid-template-columns:1fr}.topbar,.section-heading{align-items:start}.topbar,.topbar-actions,.section-heading{flex-direction:column}.tabs{justify-content:space-between;width:100%}}@media (width<=640px){.shell{width:min(100% - 1rem,100%);padding-top:.5rem}.topbar,.panel{border-radius:22px;padding:1rem}.stats-grid{grid-template-columns:1fr}th,td{padding-inline:.75rem;font-size:.94rem}}
