:root{color:#1b2821;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f6f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}#root{min-height:100vh}.shell{width:min(100%,760px);min-height:100vh;margin:0 auto;padding:32px 24px 64px}.brand{letter-spacing:-.03em;align-items:center;gap:10px;font-size:1.1rem;font-weight:750;display:flex}.brand-mark{color:#fff;background:#296c50;border-radius:10px;place-items:center;width:32px;height:32px;font-family:Georgia,serif;display:grid}.card{background:#fff;border-radius:28px;margin-top:72px;padding:clamp(28px,7vw,56px);box-shadow:0 18px 48px #1d3b2b1c}.auth-card,.ready-card{max-width:590px;margin-inline:auto}.eyebrow{color:#397357;letter-spacing:.12em;margin:0 0 12px;font-size:.72rem;font-weight:800}h1{color:#1b2821;letter-spacing:-.05em;max-width:580px;margin:0;font-family:Georgia,serif;font-size:clamp(2.25rem,6vw,4rem);line-height:1.03}.lede{color:#56645c;max-width:500px;margin:20px 0 30px;line-height:1.6}.form{gap:18px;display:grid}label{color:#334238;gap:8px;font-size:.9rem;font-weight:700;display:grid}input{color:#1b2821;background:#fff;border:1px solid #cbd7ce;border-radius:11px;outline:none;width:100%;padding:13px 14px;font-weight:450}input:focus{border-color:#296c50;box-shadow:0 0 0 3px #296c5024}button{color:#fff;cursor:pointer;background:#296c50;border:0;border-radius:11px;padding:14px 18px;font-weight:750;transition:background .18s,transform .18s}button:hover:not(:disabled){background:#1c553d;transform:translateY(-1px)}button:disabled{cursor:wait;opacity:.65}.text-button{color:#397357;background:0 0;width:auto;margin-top:18px;padding:0;font-size:.9rem;font-weight:700}.text-button:hover:not(:disabled){color:#1c553d;background:0 0}.message{color:#704d0c;background:#fff4da;border-radius:10px;margin:0;padding:11px 12px;font-size:.9rem;line-height:1.4}.grid-form{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-form .message,.grid-form button{grid-column:1/-1}.optional{color:#7a887e;font-size:.78rem;font-weight:500}.next-list{border:1px solid #d9e4db;border-radius:14px;align-items:center;gap:14px;margin:13px 0;padding:15px;display:flex}.next-list span{color:#276146;background:#dceee0;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:.85rem;font-weight:800;display:grid}.next-list div{gap:3px;display:grid}.next-list small{color:#65756a}.ready-card button:not(.text-button){width:100%;margin-top:18px}@media (width<=560px){.shell{padding:24px 16px 48px}.card{border-radius:20px;margin-top:42px}.grid-form{grid-template-columns:1fr}}.upload{text-align:center;cursor:pointer;background:#f7fbf7;border:2px dashed #9dbda8;border-radius:16px;place-content:center;justify-items:center;min-height:142px}.upload input{opacity:0;width:1px;height:1px;position:absolute}.upload small{color:#65756a;font-weight:500}.mapping{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0;display:grid}select{color:#1b2821;background:#fff;border:1px solid #cbd7ce;border-radius:11px;width:100%;padding:12px}.preview-label{color:#65756a;margin:20px 0 8px;font-size:.85rem;font-weight:700}.table-wrap{border:1px solid #d9e4db;border-radius:12px;margin-bottom:20px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.82rem}th,td{text-align:left;white-space:nowrap;border-bottom:1px solid #e4ece5;padding:10px 12px}th{color:#355540;background:#f4f8f4}@media (width<=560px){.mapping{grid-template-columns:1fr}}
