:root{--bg:#f3f1f2;--card:#ffffff;--ink:#1d1a1d;--muted:#8a818a;--muted-2:#a89fa6;--line:#e8e3e6;--line-soft:#f0ecee;--wine:#138a82;--wine-deep:#0b4f4a;--wine-accent:#16a89e;--wine-soft:#e6f5f3;--req:#0f857d;--amber:#b07a16;--amber-dot:#e0a93b;--green:#2f8a5b;--green-bg:#e8f4ec;--red:#c0392b;--red-bg:#fbeae8;--amber-bg:#fdf4e3;--shadow:0 1px 2px rgba(28,18,24,0.05),0 8px 24px rgba(28,18,24,0.04);--radius:16px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}.serif{font-family:Iowan Old Style,Palatino Linotype,Palatino,Book Antiqua,Georgia,Times New Roman,serif;letter-spacing:-.2px}.wrap{max-width:1240px;margin:0 auto;padding:26px 28px 90px}.eyebrow{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:600;color:var(--muted)}.hero{position:relative;border-radius:22px;padding:34px 38px 0;color:#fff;overflow:hidden;background:radial-gradient(120% 160% at 88% 12%,#1fb8ac 0,#108a82 42%,#0a5651 100%),linear-gradient(105deg,#20b6ab,#128a82 45%,#0a5651);box-shadow:0 18px 50px rgba(10,86,81,.32)}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(80% 120% at 10% 0,rgba(255,255,255,.06),transparent 60%);pointer-events:none}.hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.brand-badge{background:#fff;border-radius:14px;padding:10px 16px;box-shadow:0 6px 18px rgba(10,70,66,.2);display:inline-flex;margin-bottom:18px}.brand-badge img{height:54px;width:auto;display:block}.hero .eyebrow{color:rgba(255,255,255,.62);display:flex;align-items:center;gap:7px}.hero h1{font-size:40px;font-weight:600;letter-spacing:-.5px;margin:14px 0 12px;line-height:1.05}.hero p.lead{max-width:620px;font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.82);margin:0 0 26px}.hero p.lead b{color:#fff;font-weight:600}.statuspill{display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border-radius:30px;font-size:11.5px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.9);white-space:nowrap}.statuspill .dot{width:8px;height:8px;border-radius:50%;background:var(--amber-dot);box-shadow:0 0 0 3px rgba(224,169,59,.25)}.statuspill.ready .dot{background:#5fd398;box-shadow:0 0 0 3px rgba(95,211,152,.25)}.statuspill.run .dot{background:#6fb6ff;box-shadow:0 0 0 3px rgba(111,182,255,.25)}.hero-files{text-align:right;font-size:11.5px;color:rgba(255,255,255,.55);margin-top:8px}.stepper{display:flex;align-items:center;gap:4px;margin:4px -38px 0;padding:18px 38px 24px;overflow-x:auto;scrollbar-width:none}.stepper::-webkit-scrollbar{display:none}.step{gap:9px;padding:8px 14px;border-radius:30px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.82);font-size:12.5px;font-weight:500;white-space:nowrap;flex:none}.step,.step .num{display:inline-flex;align-items:center}.step .num{justify-content:center;width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.16);font-size:11px;font-weight:700}.step-sep{color:rgba(255,255,255,.28);flex:none;font-size:13px}.cols{display:grid;grid-template-columns:1fr 340px;grid-gap:26px;gap:26px;margin-top:30px;align-items:start}@media (max-width:980px){.cols{grid-template-columns:1fr}}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px;gap:12px}.section-head h2{font-size:24px;font-weight:600;margin:0;letter-spacing:-.3px}.section-sub{color:var(--muted);font-size:13.5px;margin:0 0 18px}.tinytag{font-size:11px;letter-spacing:.8px;text-transform:uppercase;font-weight:600;color:var(--amber)}.tinytag.ok{color:var(--green)}.slots{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:620px){.slots{grid-template-columns:1fr}}.slot{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px 0;box-shadow:var(--shadow);transition:border-color .15s,box-shadow .15s,transform .05s}.slot.drag{border-color:var(--wine-accent);box-shadow:0 0 0 3px var(--wine-soft)}.slot.filled{border-color:#cfe6d8}.slot-head{display:flex;gap:12px;align-items:flex-start}.slot-ico{width:38px;height:38px;border-radius:11px;background:var(--wine-soft);color:var(--wine-accent);display:flex;align-items:center;justify-content:center;flex:none}.slot.filled .slot-ico{background:var(--green-bg);color:var(--green)}.slot-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.slot-title h3{font-size:14.5px;font-weight:600;margin:0}.badge{font-size:9.5px;letter-spacing:.7px;text-transform:uppercase;font-weight:700;padding:3px 7px;border-radius:5px}.badge.req{color:var(--req);background:var(--wine-soft)}.badge.opt{color:var(--muted);background:var(--line-soft)}.slot-exts{font-size:11px;letter-spacing:.4px;color:var(--muted-2);margin-top:3px;text-transform:uppercase}.slot-hint{font-size:12.5px;color:var(--muted);margin:9px 0 0;line-height:1.5}.slot-drop{margin:14px -18px 0;border-top:1px dashed var(--line);padding:13px 18px;display:flex;align-items:center;gap:8px;color:var(--muted-2);font-size:12.5px;cursor:pointer}.slot-drop:hover{color:var(--wine-accent)}.slot-files{margin:12px -18px 0;border-top:1px solid var(--line-soft)}.slot-file{display:flex;align-items:center;gap:8px;padding:9px 18px;font-size:12.5px;border-bottom:1px solid var(--line-soft)}.slot-file:last-child{border-bottom:none}.slot-file .nm{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-file .sz{color:var(--muted-2);font-size:11px}.slot-file .x{cursor:pointer;color:var(--muted-2);border:none;background:none;font-size:13px;padding:2px 4px}.slot-file .x:hover{color:var(--red)}.client-head{margin-top:32px}.field-row{display:grid;grid-template-columns:1fr 220px;grid-gap:16px;gap:16px}@media (max-width:620px){.field-row{grid-template-columns:1fr}}.field label{display:flex;align-items:center;gap:6px;font-size:11px;letter-spacing:1px;text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:7px}.field input{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--card);font-size:14px;font-family:inherit;color:var(--ink);box-shadow:var(--shadow)}.field input:focus{outline:none;border-color:var(--wine-accent);box-shadow:0 0 0 3px var(--wine-soft)}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel-head h3{margin:0;font-size:16px;font-weight:600}.panel-head .count{font-size:13px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.progress{height:6px;border-radius:6px;background:var(--line-soft);overflow:hidden;margin-bottom:16px}.progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--wine-accent),var(--wine));border-radius:6px;transition:width .25s ease}.checkrow{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:13px;border-top:1px solid var(--line-soft)}.checkrow:first-of-type{border-top:none}.checkrow .ic{flex:none;display:inline-flex}.checkrow .lbl{flex:1 1;color:var(--ink)}.checkrow.off .lbl{color:var(--muted-2)}.checkrow .req-tag{font-size:9.5px;letter-spacing:.6px;text-transform:uppercase;font-weight:700;color:var(--req)}.panel.get h3{display:flex;align-items:center;gap:8px}.get-row{display:flex;gap:10px;align-items:flex-start;padding:7px 0;font-size:13px;color:#41383f}.get-row .ic{flex:none;margin-top:1px}.panel .foot{margin-top:14px;padding-top:13px;border-top:1px solid var(--line-soft);font-size:11px;color:var(--muted-2);gap:6px}.panel .foot,.runbar{display:flex;align-items:center}.runbar{margin-top:28px;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:9px;background:linear-gradient(100deg,var(--wine-accent),var(--wine));color:#fff;border:none;border-radius:12px;padding:14px 26px;font-size:14.5px;font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 8px 20px rgba(16,138,130,.24)}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn.secondary{background:#fff;color:var(--wine);border:1px solid var(--wine-accent);box-shadow:var(--shadow)}.btn.ghost{background:transparent;color:var(--muted);border:none;box-shadow:none;padding:10px 12px}.btn.ghost:hover{color:var(--red);filter:none}.banner{border-radius:12px;padding:13px 15px;margin-top:16px;font-size:13px}.banner.error{background:var(--red-bg);color:var(--red);border:1px solid #eebfb9}.banner.warn{background:var(--amber-bg);color:var(--amber);border:1px solid #ecd2a3}.progress-box{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;margin-top:16px}.spinner{width:17px;height:17px;border:3px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;flex:none}.spinner.dark{border-color:rgba(109,31,51,.2);border-top-color:var(--wine-accent)}@keyframes spin{to{transform:rotate(1turn)}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:20px;box-shadow:var(--shadow)}.card h2{margin:0 0 14px;font-size:18px;font-weight:600}.card h3{font-size:14px;margin:18px 0 8px}.note{color:var(--muted)}.note,.status{font-size:12px}.status{display:inline-block;padding:4px 13px;border-radius:20px;font-weight:700;letter-spacing:.3px}.status.notready{background:var(--red-bg);color:var(--red)}.status.corrections{background:var(--amber-bg);color:var(--amber)}.status.ready{background:var(--green-bg);color:var(--green)}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin:18px 0}@media (max-width:640px){.summary-grid{grid-template-columns:repeat(2,1fr)}}.metric.saving{background:#eaf5ef;color:var(--green)}.pillar-row{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 16px}.pillar{display:inline-block;font-size:11px;font-weight:600;padding:2px 9px;border-radius:20px;white-space:nowrap}.pillar-compliance{background:#e0f2f0;color:#0f857d}.pillar-atowatchlist{background:var(--amber-bg);color:var(--amber)}.pillar-taxsaving{background:var(--green-bg);color:var(--green)}.metric{border-radius:12px;padding:16px;text-align:center}.metric .n{font-size:28px;font-weight:700;line-height:1}.metric .l{font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin-top:6px}.metric.must{background:var(--red-bg);color:var(--red)}.metric.should{background:var(--amber-bg);color:var(--amber)}.metric.note{background:var(--green-bg);color:var(--green)}.kv{display:grid;grid-template-columns:170px 1fr;grid-gap:6px 14px;gap:6px 14px;font-size:13px}.kv dt{color:var(--muted)}.kv dd{margin:0}table.findings{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:8px}table.findings td,table.findings th{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}table.findings th{background:var(--wine-soft);font-weight:600}table.findings tr.must td:first-child{border-left:3px solid var(--red)}table.findings tr.should td:first-child{border-left:3px solid var(--amber)}table.findings tr.note td:first-child{border-left:3px solid var(--green)}.sev-tag{font-weight:700;font-size:11px;white-space:nowrap}.sev-tag.must{color:var(--red)}.sev-tag.should{color:var(--amber)}.sev-tag.note{color:var(--green)}details.appendix{margin-top:12px}details.appendix summary{cursor:pointer;font-weight:600;padding:8px 0}.memo{background:var(--wine-soft);border-left:3px solid var(--wine-accent);padding:12px 14px;border-radius:6px;font-size:13px;white-space:pre-wrap}.scroll-x{overflow-x:auto}