:root{--ink:#123e35;--green:#063f34;--paper:#f7f1e4;--gold:#d9a441;--line:#d9cfbb;--muted:#6d756f}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#f5f2ea;font-family:Arial,sans-serif}button,input,select{font:inherit}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 80% 20%,#315f50,transparent 35%),var(--green);padding:24px}.loginCard{width:min(520px,100%);background:var(--paper);border-radius:28px;padding:48px;box-shadow:0 30px 90px #001b1660}.brand span,.mark{display:grid;place-items:center;border:1px solid var(--gold);color:var(--gold);border-radius:50%;font-family:Georgia,serif}.mark{width:68px;height:68px;font-size:25px}.eyebrow{color:#b87922;font-size:12px;font-weight:800;letter-spacing:.16em}.hero h2,.login h1,.sectionHead h2,.workspace h1{font-family:Georgia,serif;font-weight:500}.login h1{font-size:44px;margin:18px 0 12px}.login form{display:grid;grid-gap:16px;gap:16px;margin-top:30px}label{display:grid;grid-gap:7px;gap:7px;font-size:13px;font-weight:700}input,select{width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}button{border:0;border-radius:10px;background:var(--gold);color:#0a342d;padding:13px 20px;font-weight:800;cursor:pointer}.error{color:#a33131}.shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.shell aside{position:-webkit-sticky;position:sticky;top:0;height:100vh;background:var(--green);color:white;padding:28px 20px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;font-weight:800}.brand span{width:44px;height:44px}.brand small{display:block;color:#a8c0b8;margin-top:4px;font-size:10px;letter-spacing:.1em}.shell nav{display:grid;grid-gap:6px;gap:6px;margin-top:44px}.logout,.shell nav button{background:transparent;color:#d7e2dd;text-align:left}.shell nav button.active,.shell nav button:hover{background:#ffffff12;color:white}.logout{margin-top:auto}.workspace{padding:36px 5vw 80px;max-width:1450px;width:100%}.workspace header{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:34px}.workspace h1{margin:4px 0;font-size:38px}.workspace header select{width:260px}.notice{display:flex;justify-content:space-between;background:#dceddf;padding:14px 18px;border-radius:12px;margin-bottom:20px}.notice button{padding:0 8px;background:transparent}.hero{background:linear-gradient(135deg,var(--green),#1e5a49);color:white;border-radius:24px;padding:44px;max-width:920px}.hero h2{font-size:42px;margin:10px 0}.hero p:last-child{color:#c8d8d2;max-width:650px;line-height:1.6}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-top:24px}.card,.list>div,.stats article{background:white;border:1px solid var(--line);border-radius:16px;padding:24px}.stats b{font-family:Georgia,serif;color:var(--gold);font-size:38px;display:block}.stats span{font-weight:800;display:block;margin:10px 0}.list small,.stats small{color:var(--muted)}.sectionHead{max-width:850px;margin-bottom:28px}.sectionHead h2{font-size:42px;margin:8px 0}.sectionHead>p:last-child{color:var(--muted);line-height:1.6}.card{margin:18px 0}.gridForm,.inline{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));grid-gap:14px;gap:14px;align-items:end}.gridForm{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.list span{font-weight:800}.list small{display:block;margin-top:8px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.tabs button{background:white;border:1px solid var(--line);padding:9px 14px}.tabs button.active{background:var(--green);color:white}.empty{padding:24px;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:14px}.steps{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.steps span{padding:8px 14px;background:#e9e4d8;border-radius:99px;font-size:13px}.steps .on{background:var(--gold);font-weight:800}.importStart{display:grid;grid-template-columns:1fr 2fr auto;grid-gap:16px;gap:16px;align-items:end}.mapping{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin:20px 0}.mapping b{color:#bd3e2c}.tableWrap{overflow:auto;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:12px}td,th{text-align:left;padding:9px;border-bottom:1px solid var(--line);white-space:nowrap}.validation{display:flex;gap:35px;margin-bottom:20px}.validation div{display:grid}.validation b{font-family:Georgia,serif;font-size:35px}.validation span{color:var(--muted)}.validation .ok b{color:#28835d}.validation .bad b{color:#b63d3d}.secondary{background:white;border:1px solid var(--line)}.actions{display:flex;gap:10px;justify-content:flex-end}.historyTitle{margin-top:34px}.linkButton{display:block;background:transparent;color:#a33131;padding:10px 0 0;text-align:left}.loading{padding:50px}@media(max-width:850px){.shell{display:block}.shell aside{position:relative;height:auto}.shell nav{display:flex;overflow:auto;margin-top:20px}.logout{position:absolute;right:20px;top:28px}.workspace{padding:24px}.workspace header{align-items:flex-start;flex-direction:column}.workspace header select{width:100%}.gridForm,.importStart,.inline,.mapping,.stats{grid-template-columns:1fr}.hero{padding:28px}.hero h2,.sectionHead h2{font-size:32px}.loginCard{padding:30px}.login h1{font-size:36px}}