@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{font-family:IBM Plex Sans,sans-serif;color:#0f172a;background-color:#f8fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--accent: #0f766e;--accent-soft: rgba(15, 118, 110, .14);--text-strong: #0f172a;--text-muted: #334155;--text-subtle: #64748b;--panel: rgba(255, 255, 255, .88);--surface: rgba(248, 250, 252, .9);--shadow-soft: 0 20px 60px rgba(15, 23, 42, .08);--shadow-lift: 0 16px 40px rgba(15, 23, 42, .16)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(251,146,60,.18),transparent 45%),radial-gradient(circle at 15% 30%,rgba(16,185,129,.18),transparent 45%),#f8fafc}#root{max-width:1100px;margin:0 auto;padding:clamp(1.4rem,4vw,3rem)}h1,h2,.eyebrow{font-family:Space Grotesk,sans-serif}button,input{font-family:inherit}a{color:inherit}.page{display:flex;flex-direction:column;gap:2.5rem}.hero{display:grid;gap:.6rem}.eyebrow{text-transform:uppercase;letter-spacing:.3em;font-size:.72rem;font-weight:700;color:var(--accent)}.hero h1{font-size:clamp(2rem,3.4vw,3.2rem);margin:0;color:var(--text-strong)}.subtitle{font-size:1.05rem;color:var(--text-muted);margin:0;max-width:52ch}.panel{background:var(--panel);border-radius:24px;padding:clamp(1.4rem,3vw,2rem);box-shadow:var(--shadow-soft);border:1px solid rgba(15,20,32,.08)}.upload{display:grid;gap:1.4rem;align-items:center}.upload-card{background:linear-gradient(135deg,#10b98129,#fb923c29);border:1px dashed rgba(15,23,42,.3);border-radius:20px;padding:1.6rem;display:grid;gap:.55rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.upload-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.upload-title{font-size:1.2rem;font-weight:700;color:var(--text-strong)}.upload-desc{color:var(--text-muted)}.upload-note{font-size:.85rem;color:var(--text-subtle)}.upload-input{display:none}.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;background:var(--surface);border-radius:16px;padding:1rem 1.2rem}.summary .label{font-size:.85rem;color:var(--text-subtle);margin:0}.summary .value{font-size:1.1rem;font-weight:700;margin:.25rem 0 0}.controls{display:grid;gap:1.4rem;margin-top:1.6rem}.field{display:grid;gap:.6rem}.field label{font-weight:600;color:var(--text-strong)}.input-wrap{display:flex;align-items:center;background:var(--surface);border-radius:12px;border:1px solid rgba(15,23,42,.15);padding:0 .8rem}.input-wrap input{border:none;background:transparent;padding:.75rem .2rem;flex:1;font-size:1rem;color:var(--text-strong)}.input-wrap span{color:var(--text-subtle);font-weight:600}.input-wrap input:focus{outline:none}.buttons{display:flex;flex-wrap:wrap;gap:.9rem;align-items:center}button{border:none;border-radius:999px;padding:.8rem 1.6rem;font-weight:700;font-size:.95rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-lift)}.primary:hover:not(:disabled){transform:translateY(-1px)}.ghost{background:transparent;border:1px solid rgba(15,23,42,.2);color:var(--text-strong)}.download{padding:.8rem 1.6rem;border-radius:999px;background:var(--accent-soft);color:var(--text-strong);font-weight:700;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;box-shadow:var(--shadow-soft)}.download:hover{transform:translateY(-1px)}.error{color:#b91c1c;font-weight:600;margin:0}.file-list{display:grid;gap:1.2rem}.list-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;color:var(--text-strong)}.list-header h2{margin:0;font-size:1.1rem}.list-header span{color:var(--text-subtle)}.list-body{max-height:280px;overflow:auto;background:var(--surface);border-radius:16px;padding:1rem 1.2rem}.list-body ul{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}.list-body li{display:flex;justify-content:space-between;gap:1rem;font-size:.95rem;color:var(--text-strong)}.list-body li span:last-child{color:var(--text-subtle);white-space:nowrap}.empty{color:var(--text-subtle);margin:0}@media(max-width:720px){.panel{padding:1.2rem}.buttons{flex-direction:column;align-items:stretch}.download{text-align:center}}
