@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_fcbcbf{font-family:Inter,Inter Fallback;font-style:normal}.__variable_fcbcbf{--font-inter:"Inter","Inter Fallback"}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f5f5f7;--surface:#fff;--surface2:#f0f0f2;--border:#e4e4e7;--border2:#c4c4cc;--text:#18181b;--text2:#71717a;--text3:#a1a1aa;--accent:#4f46e5;--accent-2:#4338ca;--accent-fg:#fff;--green:#059669;--green-bg:#ecfdf5;--red:#dc2626;--red-bg:#fef2f2;--amber:#d97706;--amber-bg:#fffbeb;--radius:8px;--radius-lg:14px;--shadow-sm:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow:0 4px 12px #00000012,0 1px 3px #0000000d}@media (prefers-color-scheme:dark){:root{--bg:#09090b;--surface:#18181b;--surface2:#27272a;--border:#3f3f46;--border2:#52525b;--text:#fafafa;--text2:#a1a1aa;--text3:#71717a;--accent:#818cf8;--accent-2:#6366f1;--accent-fg:#09090b;--green:#34d399;--green-bg:#022c22;--red:#f87171;--red-bg:#1c0a0a;--amber:#fbbf24;--amber-bg:#1c1200;--shadow-sm:0 1px 3px #0000004d;--shadow:0 4px 16px #0006}}body{font-family:var(--font-inter,"Inter",system-ui,sans-serif);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:14px;line-height:1.6}.app{max-width:780px;margin:0 auto;padding:48px 24px 100px}.header{gap:14px;margin-bottom:28px;position:-webkit-sticky;position:sticky;top:0;z-index:50;background:var(--bg);padding:16px 0 12px;margin-top:-16px;border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}.header,.header-icon{align-items:center;display:flex}.header-icon{background:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;width:40px;height:40px;box-shadow:0 2px 8px #4f46e559}.header-icon svg{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.header-text h1{letter-spacing:-.4px;font-size:20px;font-weight:600}.header-text p{color:var(--text3);margin-top:2px;font-size:13px}.steps-nav{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:28px;display:flex;overflow:hidden}.step-tab{text-align:center;color:var(--text3);cursor:default;letter-spacing:.01em;background:none;border:none;border-right:1px solid var(--border);flex:1 1;padding:11px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.step-tab:last-child{border-right:none}.step-tab.active{background:var(--accent);color:var(--accent-fg);font-weight:600}.step-tab.done{color:var(--green)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:22px 24px}.card-title{letter-spacing:.07em;text-transform:uppercase;color:var(--text3);margin-bottom:18px;font-size:11px;font-weight:600}.field{margin-bottom:14px}.field:last-child{margin-bottom:0}label{color:var(--text2);margin-bottom:6px;font-size:12px;font-weight:500;display:block}input[type=date],input[type=email],input[type=password],input[type=text],input[type=url],select,textarea{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);-webkit-appearance:none;outline:none;padding:9px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f46e51f}textarea{resize:vertical;min-height:80px;line-height:1.7}.row{grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;display:grid}.note{color:var(--text3);margin-top:5px;font-size:11px;line-height:1.5}.pills{flex-wrap:wrap;gap:6px;display:flex}.pill{border:1px solid var(--border);cursor:pointer;background:var(--surface2);color:var(--text2);border-radius:20px;padding:6px 15px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.pill:hover{border-color:var(--border2);color:var(--text)}.pill.active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);box-shadow:0 2px 6px #4f46e540}.btn{cursor:pointer;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);letter-spacing:.01em;align-items:center;gap:7px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn:hover{background:var(--surface2);border-color:var(--border2)}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:transparent;box-shadow:0 2px 8px #4f46e54d}.btn.primary:hover{background:var(--accent-2);box-shadow:0 3px 12px #4f46e566}.btn.success{background:var(--green-bg);color:var(--green);border-color:var(--green)}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-row{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.msg{border-radius:var(--radius);margin-top:12px;padding:11px 15px;font-size:13px;line-height:1.5}.msg.error{background:var(--red-bg);color:var(--red);border:1px solid var(--red)}.msg.success{background:var(--green-bg);color:var(--green);border:1px solid var(--green)}.msg.loading{background:var(--surface2);color:var(--text2);align-items:center;gap:8px;display:flex}.spin{border:2px solid var(--border2);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.stats{grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:14px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:14px 18px}.stat-label{color:var(--text3);letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:500}.stat-val{color:var(--text);letter-spacing:-.5px;margin-top:4px;font-size:26px;font-weight:700}.report-out{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);white-space:pre-wrap;word-break:break-word;max-height:440px;color:var(--text);padding:16px 18px;overflow-y:auto}.report-edit,.report-out{font-family:DM Mono,Courier New,monospace;font-size:12.5px;line-height:1.85}.report-edit{width:100%;min-height:200px}.char-checks{flex-direction:column;gap:3px;margin-top:12px;display:flex}.char-line{justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.char-text{color:var(--text3);text-overflow:ellipsis;white-space:nowrap;flex:1 1;overflow:hidden}.char-badge{border-radius:10px;flex-shrink:0;padding:1px 7px;font-size:10px;font-weight:600}.char-badge.ok{background:var(--green-bg);color:var(--green)}.char-badge.warn{background:var(--amber-bg);color:var(--amber)}.project-option{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:13px;transition:background .1s;display:flex}.project-option:hover{background:var(--surface2)}.project-option[data-selected=true]{background:var(--accent);color:var(--accent-fg)}.project-option[data-selected=true] .project-option-key{color:#ffffffa6}.sheet-info{color:var(--text2);flex-direction:column;gap:8px;font-size:13px;display:flex}.sheet-info>div{background:var(--surface2);border-radius:var(--radius);border:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.sheet-info strong{color:var(--text);font-weight:600}.progress-track{background:var(--border);border-radius:99px;height:6px;overflow:hidden}.progress-fill{height:100%;border-radius:99px;transition:width .4s ease,background .4s ease}.skeleton{background:linear-gradient(90deg,var(--surface2) 25%,var(--border) 50%,var(--surface2) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.bulk-row{transition:border-left-color .3s ease}@keyframes pulse-success{0%{box-shadow:0 0 0 0 rgba(5,150,105,.35)}60%{box-shadow:0 0 0 8px rgba(5,150,105,0)}to{box-shadow:0 0 0 0 rgba(5,150,105,0)}}.stat-success{animation:pulse-success .9s ease}@media (max-width:600px){.app{padding:0 16px 80px}.header{padding:14px 0 10px}.stats{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.stat-val{font-size:20px}.row{grid-template-columns:1fr}.card{padding:16px}.header-text h1{font-size:16px}.header-text p{font-size:11px}.pills{gap:4px}.pill{padding:5px 11px;font-size:11px}.btn{padding:8px 14px;font-size:12px}}