@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#17201b;font-synthesis:none;--ink:#17201b;--green:#1d5b45;--lime:#d8f26a;--paper:#fcfbf6;--line:#d9d9ce;background:#f3f1e9;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,.button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible,[role=button]:focus-visible{outline-offset:3px;outline:3px solid #f19a3e}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);background:#fcfbf6cc;justify-content:space-between;align-items:center;height:74px;padding:0 max(24px,50vw - 590px);display:flex}.brand{color:var(--ink);background:0 0;border:0;align-items:center;gap:11px;font-size:19px;font-weight:800;display:flex}.brand span{background:var(--ink);width:34px;height:34px;color:var(--lime);border-radius:7px;place-items:center;font:500 13px DM Mono;display:grid}.status{text-transform:uppercase;letter-spacing:.04em;font:500 11px DM Mono}.status-dot{background:#3aa86f;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 4px #d8ecdf}main{flex:1;width:min(1180px,100% - 40px);margin:0 auto}.steps{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin:30px 0 58px;display:grid}.steps button{color:#737a75;text-transform:capitalize;letter-spacing:.03em;background:0 0;border:0;padding:12px 8px 17px;font-size:12px;font-weight:700;position:relative}.steps button span{border:1px solid #aeb2ad;border-radius:50%;place-items:center;width:23px;height:23px;margin-right:7px;font:11px DM Mono;display:inline-grid}.steps button.active{color:var(--ink)}.steps button.active:after{content:"";background:var(--green);height:3px;position:absolute;bottom:-2px;left:8%;right:8%}.steps button.active span{background:var(--green);color:#fff;border-color:var(--green)}.hero{text-align:center;max-width:850px;margin:0 auto 90px}.eyebrow{color:var(--green);text-transform:uppercase;letter-spacing:.13em;margin-bottom:15px;font:500 11px DM Mono}h1,h2,p{margin-top:0}h1{letter-spacing:-.055em;margin-bottom:20px;font-size:clamp(38px,5vw,66px);line-height:1.03}h1 em{color:var(--green);font-family:Georgia,serif;font-weight:400}.hero>p{color:#5f6862;max-width:630px;margin:0 auto 35px;line-height:1.7}.dropzone{background:var(--paper);border:1.5px dashed #99a39c;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:35px;transition:all .2s;display:flex;box-shadow:0 14px 40px #1f2b230d}.dropzone:hover{border-color:var(--green);transform:translateY(-2px)}.dropzone>strong{font-size:18px}.dropzone>span{color:#737a75;font-size:13px}.dropzone small{color:#747b76;text-transform:uppercase;margin-top:5px;font:10px DM Mono}.dropzone progress{width:min(380px,100%);accent-color:var(--green)}.upload-icon{color:var(--green);background:#e6eddf;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:5px;font-size:26px;display:grid}.primary,.secondary,.text-button{border:0;border-radius:6px;padding:11px 18px;font-weight:700;text-decoration:none;display:inline-block}.primary{background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--lime);margin-top:10px}.primary:hover{background:var(--green)}.primary:disabled{opacity:.5;cursor:wait}.secondary{border:1px solid var(--line);background:var(--paper);color:var(--ink)}.text-button{color:var(--green);background:0 0;text-decoration:underline}.trust-row{color:#68716b;text-transform:uppercase;justify-content:center;gap:28px;margin-top:20px;font:10px DM Mono;display:flex}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px;display:flex}.section-heading h1{overflow-wrap:anywhere;margin-bottom:10px;font-size:clamp(32px,4vw,50px)}.section-heading p{color:#68716b;margin:0}.section-heading .primary{white-space:nowrap;margin-bottom:10px}.metrics{background:var(--ink);color:#fff;border-radius:10px;grid-template-columns:repeat(6,1fr);margin-bottom:25px;display:grid;overflow:hidden}.metric{border-right:1px solid #3d4741;min-width:0;padding:22px 18px}.metric:last-child{border:0}.metric span,.metric small{color:#abb4ae;text-transform:uppercase;font:10px DM Mono;display:block}.metric strong{white-space:nowrap;margin:8px 0 4px;font-size:23px;display:block}.panel{background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px #1f2b230a}.panel-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:22px 25px;display:flex}.panel h2,.panel-title h2{margin-bottom:4px;font-size:17px}.panel-title p{color:#777e79;margin:0;font-size:12px}.filters{background:#e9e9e1;border-radius:6px;padding:3px;display:flex}.filters button{color:#667069;text-transform:capitalize;background:0 0;border:0;padding:6px 9px;font-size:11px}.filters button.selected{color:var(--ink);background:#fff;border-radius:4px;box-shadow:0 1px 4px #ccd0c9}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{color:#6c746f;text-align:left;text-transform:uppercase;background:#f1f1ea;font:10px DM Mono}th,td{vertical-align:top;border-bottom:1px solid #e3e3da;padding:13px 16px}td strong,td small{display:block}td small{color:#727a75;margin-top:3px}td a{color:var(--green);font-family:DM Mono}.severity{text-transform:uppercase;white-space:nowrap;font:600 10px DM Mono}.severity.error{color:#a3372d}.severity.warning{color:#8c5d06}.severity.info{color:#326580}.empty-state{color:#6c746f;padding:30px}.alert{color:#762d27;background:#fff1eb;border-left:5px solid #b34237;border-radius:4px;margin-bottom:25px;padding:14px 18px}.alert strong{margin-bottom:3px;display:block}.repair-grid{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start;gap:22px;display:grid}.settings-panel,.output-panel{padding:24px}.preset{border:1px solid var(--line);cursor:pointer;border-radius:7px;align-items:center;gap:13px;margin-bottom:10px;padding:17px;display:flex}.preset:has(input:checked){border-color:var(--green);background:#eff5e9}.preset span{flex:1}.preset strong,.preset small{display:block}.preset small{color:#69716c;margin-top:3px}.preset b{background:var(--lime);text-transform:uppercase;padding:4px 6px;font:9px DM Mono}.settings-panel h2{border-bottom:1px solid var(--line);margin-top:28px;padding-bottom:9px}.toggle-row{border-bottom:1px solid #e5e5dd;justify-content:space-between;align-items:center;gap:20px;padding:13px 4px;display:flex}.toggle-row small,.toggle-row strong{display:block}.toggle-row small{color:#777e79;margin-top:3px}.toggle-row.risk strong:after{content:" timing/text";color:#9a6415;text-transform:uppercase;margin-left:7px;font:9px DM Mono}input[type=checkbox]{appearance:none;background:#c8ccc8;border-radius:12px;flex:none;width:38px;height:21px;position:relative}input[type=checkbox]:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:all .15s;position:absolute;top:3px;left:3px}input[type=checkbox]:checked{background:var(--green)}input[type=checkbox]:checked:after{left:20px}.field-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.field-row>label,.output-panel>label,.thresholds label{font-size:12px;font-weight:700}.field-row span,.thresholds span{color:#68716b;align-items:center;gap:5px;margin-top:6px;font-size:11px;display:flex}input[type=number],select{width:100%;color:var(--ink);background:#fff;border:1px solid #cfd1ca;border-radius:5px;padding:9px}.output-panel select{margin:8px 0 20px}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0}summary{cursor:pointer;font-size:13px;font-weight:700}.thresholds{gap:11px;margin-top:15px;display:grid}.thresholds input{min-width:0}.notice{color:#6f531a;background:#fff4d8;border-radius:5px;margin-top:20px;padding:13px;font-size:11px;line-height:1.5}.actions{align-items:center;gap:10px;display:flex}.actions .primary{margin-top:0}.preview-toolbar{justify-content:space-between;align-items:center;margin-bottom:15px;font-size:12px;display:flex}.preview-toolbar label{align-items:center;gap:9px;display:flex}.valid{color:var(--green);text-transform:uppercase;font:10px DM Mono}.compare{grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px;display:grid}.compare>div{min-width:0}.compare h2{justify-content:space-between;font-size:14px;display:flex}.compare h2 small{color:#747b76;font:10px DM Mono}.cue{background:var(--paper);border:1px solid var(--line);border-radius:7px;grid-template-columns:35px 1fr;margin-bottom:8px;padding:13px;font-size:12px;display:grid}.cue.changed{background:#fffdf3;border-left:4px solid #e2aa3c}.cue b{color:#7b827d;grid-row:1/3}.cue time{color:var(--green);font:10px DM Mono}.cue p{white-space:pre-wrap;overflow-wrap:anywhere;margin:7px 0 0;line-height:1.5}.change-log{padding:22px}.change-log ol{margin:15px 0 0;padding:0;list-style:none}.change-log li{border-top:1px solid var(--line);gap:13px;padding:9px 0;font-size:12px;display:flex}.change-log code{color:var(--green);min-width:145px}.finish{text-align:center;padding:25px}footer{background:var(--ink);color:#fff;align-items:center;gap:30px;margin-top:80px;padding:35px max(24px,50vw - 590px);display:flex}footer span{color:var(--lime);font-weight:800}footer p{color:#d1d6d2;flex:1;margin:0}footer small{color:#8f9892}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=850px){.metrics{grid-template-columns:repeat(3,1fr)}.metric:nth-child(3){border-right:0}.repair-grid{grid-template-columns:1fr}.trust-row{flex-wrap:wrap}.section-heading{align-items:start}.panel-title{flex-direction:column;align-items:start}}@media (width<=600px){main{width:min(100% - 24px,1180px)}.status{display:none}.steps{margin-bottom:38px}.steps button{font-size:0}.steps button span{margin:0;font-size:11px}.metrics{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2n){border-right:0}.section-heading{flex-direction:column}.section-heading .primary{text-align:center;width:100%}.field-row,.compare{grid-template-columns:1fr}.filters{flex-wrap:wrap}.preview-toolbar,footer{flex-direction:column;align-items:flex-start}.actions{width:100%}.actions>*{text-align:center;flex:1}.change-log li{flex-direction:column;gap:4px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
