:root{--bg:#071018;--panel:#0d1e2b;--panel2:#10283a;--line:#ffffff1c;--text:#eef7ff;--muted:#9fb7ca;--green:#3ddc97;--blue:#41a7ff;--amber:#fc6;--shadow:0 30px 80px #00000057;--radius:22px;color:var(--text);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 18% -6%, #41a7ff47, transparent 34%), radial-gradient(circle at 90% 10%, #3ddc9733, transparent 28%), var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0;line-height:1.45}button,input,textarea,select{font:inherit;color:inherit}button:disabled,input:disabled{opacity:.78;cursor:not-allowed}.app{grid-template-columns:280px 1fr;min-height:100vh;display:grid}.side{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#050d14b8;height:100vh;padding:24px;position:sticky;top:0}.brand{letter-spacing:-.04em;align-items:center;gap:12px;margin-bottom:30px;font-size:20px;font-weight:950;display:flex}.mark{background:linear-gradient(135deg, var(--green), var(--blue));color:#041018;border-radius:13px;place-items:center;width:38px;height:38px;font-weight:1000;display:grid}.nav{gap:8px;display:grid}.nav a,.nav-disabled{color:var(--muted);border-radius:14px;align-items:center;gap:10px;padding:12px 13px;text-decoration:none;display:flex}.nav-disabled{opacity:.55;cursor:not-allowed;justify-content:space-between}.nav-disabled small{text-transform:uppercase;letter-spacing:.06em;color:#9fb7cab3;font-size:10px}.nav a.active{color:#dffff1;background:#3ddc971f;border:1px solid #3ddc9740}.sidefoot{border:1px solid var(--line);background:#ffffff0e;border-radius:18px;padding:16px;position:absolute;bottom:24px;left:24px;right:24px}.sidefoot small{color:var(--muted);margin-top:5px;display:block}.content{width:100%;min-width:0}.main{padding:18px 34px 42px}.top{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.crumb{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:800}.title h1{letter-spacing:-.06em;margin:0;font-size:clamp(31px,4vw,52px);line-height:.98}.title p{color:var(--muted);max-width:760px;margin-top:9px}.actions{flex-wrap:wrap;gap:10px;display:flex}.btn{cursor:pointer;border:0;border-radius:14px;padding:12px 16px;font-weight:950;transition:transform .18s,background .18s}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--green);color:#03130d;box-shadow:0 18px 40px #3ddc9738}.btn.secondary{border:1px solid var(--line);color:#dcefff;background:#ffffff13}.btn.full{width:100%}.layout{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:20px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(#10283aed,#0a1925eb);overflow:hidden}.cardhead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;display:flex}.cardhead h2{letter-spacing:-.02em;margin:0;font-size:17px}.badge{color:#bde4ff;background:#41a7ff1f;border:1px solid #41a7ff40;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950}.badge.green{color:#c9ffe8;background:#3ddc971f;border-color:#3ddc9740}.body{padding:20px}.grid{gap:14px;display:grid}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:1fr 1fr 1fr}.field label{text-transform:uppercase;letter-spacing:.08em;color:#b5cadb;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:950;display:flex}.hint{color:var(--muted);text-transform:none;letter-spacing:0;font-size:11px;font-weight:700}.control{background:#050d149e;border:1px solid #ffffff21;border-radius:14px;outline:none;width:100%;padding:13px}.control:focus{border-color:#3ddc979e;box-shadow:0 0 0 4px #3ddc971a}select.control{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#9fb7ca 50%),linear-gradient(135deg,#9fb7ca 50%,#0000 50%);background-position:calc(100% - 18px) 19px,calc(100% - 13px) 19px;background-repeat:no-repeat;background-size:5px 5px,5px 5px}.divider{background:var(--line);height:1px;margin:20px 0}.seg{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);color:#d8e9f6;cursor:pointer;background:#ffffff0e;border-radius:999px;padding:9px 12px;font-size:13px;font-weight:900}.chip.active{color:#dffff1;background:#3ddc9729;border-color:#3ddc9761}.chip.warn{color:#ffe1a1;background:#ffcc661c;border-color:#ffcc664d}.linebar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.linebar h3{color:#dbeefa;margin:0;font-size:14px}.items{gap:10px;display:grid}.item{border:1px solid var(--line);background:#ffffff0b;border-radius:16px;grid-template-columns:78px 1fr 86px 92px 44px;align-items:center;gap:8px;padding:10px;display:grid}.item.header{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;background:0 0;border:0;padding:0 10px;font-size:11px;font-weight:950}.mini{background:#050d148c;border:1px solid #ffffff1f;border-radius:12px;width:100%;min-width:0;padding:10px}.x{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px}.source-pill{color:#bde4ff;text-transform:uppercase;background:#41a7ff1a;border:1px solid #41a7ff3d;border-radius:999px;justify-self:center;padding:5px 7px;font-size:10px;font-weight:950}.totals{gap:10px;display:grid}.row{color:var(--muted);justify-content:space-between;gap:18px;display:flex}.row strong{color:var(--text)}.row.total{color:#fff;border-top:1px solid var(--line);margin-top:4px;padding-top:14px;font-size:22px}.summary{position:sticky;top:24px}.quote-sheet{color:#142230;background:#f8fbff;border-radius:18px;padding:18px;box-shadow:inset 0 0 0 1px #040f1914}.sheet-top{border-bottom:2px solid #203a50;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:12px;display:flex}.sheet-logo{letter-spacing:-.05em;color:#0b2539;font-weight:1000}.sheet-title{text-align:right;font-weight:950}.sheet-grid{grid-template-columns:1fr 1fr;gap:7px 14px;margin:12px 0;font-size:12px;display:grid}.sheet-grid b{color:#334b5e}.sheet-table{border-collapse:collapse;width:100%;margin-top:13px;font-size:11px}.sheet-table th{color:#183247;text-align:left;background:#dfeaf4;padding:7px}.sheet-table td{border-bottom:1px solid #d7e1ea;padding:7px}.sheet-note{color:#506a80;background:#eef5fb;border:1px dashed #b8c8d8;border-radius:10px;margin-top:12px;padding:9px;font-size:11px}.toast{color:#06130d;box-shadow:var(--shadow);opacity:0;pointer-events:none;background:#dffff1;border-radius:15px;padding:13px 16px;font-weight:950;transition:all .2s;position:fixed;bottom:24px;right:26px;transform:translateY(12px)}.toast.show{opacity:1;transform:translateY(0)}.mobilebar{display:none}.required{color:var(--green);margin-left:3px}.warnline{color:#ffe4a6;background:#ffcc661a;border:1px solid #ffcc6640;border-radius:15px;gap:10px;margin-top:14px;padding:12px 13px;font-size:13px;display:flex}.empty-state{border:1px dashed var(--line);color:var(--muted);background:#ffffff09;border-radius:18px;padding:22px}.empty-state h3{color:var(--text);margin:0 0 6px}.empty-state p{margin:0}.draft-list{gap:12px;display:grid}.draft-row{border:1px solid var(--line);background:#ffffff0b;border-radius:18px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:16px;display:grid}.draft-row h3{margin:0 0 4px}.draft-row p,.draft-row small{color:var(--muted);margin:0}.draft-total{font-size:20px;font-weight:950}.draft-actions{gap:8px;display:flex}.generation-result{color:#dffff1;background:#3ddc9714;border:1px solid #3ddc9742;border-radius:14px;gap:7px;margin-top:14px;padding:12px;font-size:12px;display:grid}.generation-result code{overflow-wrap:anywhere;white-space:pre-wrap;color:#bde4ff;display:block}.download-link{background:var(--green);color:#03130d;border-radius:12px;justify-content:center;align-items:center;padding:10px 12px;font-weight:950;text-decoration:none;display:inline-flex}.download-link.secondary{border:1px solid var(--line);color:#dcefff;background:#ffffff17}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);border-radius:var(--radius);width:min(480px,100%);box-shadow:var(--shadow);background:linear-gradient(#10283af5,#0a1925f0);padding:28px}.auth-brand{margin-bottom:18px}.auth-card h1{letter-spacing:-.05em;margin:4px 0 8px;font-size:36px}.auth-card p{color:var(--muted);margin:0 0 20px}.auth-card form{gap:16px;display:grid}.auth-error{color:#ffd0d0;background:#ff5c5c1a;border:1px solid #ff5c5c59;border-radius:12px;padding:10px 12px;font-weight:800}.session-strip{color:var(--muted);justify-content:flex-end;align-items:center;gap:12px;padding:18px 34px 0;font-size:13px;display:flex}.session-strip strong{color:var(--text)}@media (width<=1060px){.app{grid-template-columns:1fr}.side{display:none}.layout{grid-template-columns:1fr}.summary{position:relative;top:auto}.mobilebar{border-bottom:1px solid var(--line);z-index:20;background:#050d14d1;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.mobilebar .brand{margin:0}.main{padding:22px 18px 34px}.top{flex-direction:column;align-items:flex-start}.grid.two,.grid.three{grid-template-columns:1fr}.item{grid-template-columns:62px 1fr}.item.header{display:none}.x{justify-self:end}}
