:root{--ink:#171a18;--muted:#6e736f;--paper:#f4f2eb;--white:#fff;--green:#164b3b;--lime:#d8f04a;--line:#d9ddd6;--blue:#205f84;--red:#d95b48}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}.screen{display:none;min-height:100vh}.screen.active{display:block}.landing{position:relative;background:url('assets/paper-warehouse.png') center/cover no-repeat}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,12,10,.58),rgba(9,12,10,.18),rgba(9,12,10,.56))}.brand{font:800 23px/1 Manrope;letter-spacing:.12em}.brand span{display:inline-block;width:9px;height:9px;background:var(--lime);border-radius:50%;margin-left:4px}.brand.light{position:absolute;z-index:2;top:38px;left:5vw;color:white}.glass{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(92vw,600px);padding:58px 48px;border:1px solid rgba(255,255,255,.24);border-radius:28px;background:rgba(20,23,20,.42);backdrop-filter:blur(18px);box-shadow:0 30px 90px rgba(0,0,0,.3);text-align:center;color:#fff}.glass h1{font:700 clamp(34px,5vw,58px)/1.05 Manrope;margin:0 0 38px}.choice{display:flex;gap:14px;justify-content:center}.choice button{width:160px;border:1px solid rgba(255,255,255,.7);border-radius:99px;padding:16px;background:transparent;color:#fff;font:700 17px DM Sans;cursor:pointer}.choice button:first-child,.choice button:hover{background:var(--lime);border-color:var(--lime);color:var(--ink)}.topbar{height:78px;padding:0 5vw;background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.step{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.14em}.page{width:min(1180px,90vw);margin:0 auto;padding:58px 0 90px}.page.narrow{width:min(880px,90vw)}.eyebrow{text-transform:uppercase;letter-spacing:.17em;color:var(--green);font-size:12px;font-weight:700;margin-bottom:13px}h2{font:700 clamp(36px,5vw,64px)/1.02 Manrope;margin:0 0 42px;letter-spacing:-.045em}h2 em{font-style:normal;color:var(--green)}h3{font:700 17px Manrope;margin:35px 0 18px}.cut-card,.paper-card{background:#fff;border:1px solid var(--line);border-radius:22px;margin:0 0 22px;overflow:hidden;box-shadow:0 7px 24px rgba(20,30,24,.04)}.cut-grid{display:grid;grid-template-columns:minmax(310px,1fr) minmax(400px,1.25fr)}.form-pane{padding:28px}.visual-pane{background:#eef0eb;padding:28px;display:flex;flex-direction:column;min-height:560px}.section-title{font:700 13px Manrope;text-transform:uppercase;letter-spacing:.1em;margin:22px 0 12px;color:var(--green)}.section-title:first-child{margin-top:0}.fields,.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.fields.three{grid-template-columns:repeat(3,1fr)}label{font-size:12px;font-weight:600;color:#5c625e;display:flex;flex-direction:column;gap:7px}input,textarea{width:100%;border:1px solid #d5dad3;border-radius:10px;background:#fafbf8;padding:12px 13px;font:500 15px DM Sans;color:var(--ink);outline:none}input:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(22,75,59,.1)}textarea{resize:vertical;min-height:90px}.wide{grid-column:1/-1}.mode{margin:20px 0 0;display:flex;gap:8px}.mode button{border:1px solid var(--line);padding:9px 12px;background:#fff;border-radius:9px;font-weight:700;color:var(--muted)}.mode button.active{background:var(--green);color:#fff}.canvas-wrap{flex:1;display:grid;place-items:center;min-height:330px}.cut-svg{width:100%;height:100%;max-height:390px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{padding:13px;background:#fff;border-radius:10px}.stat b{display:block;font:700 20px Manrope}.stat span{font-size:11px;color:var(--muted)}.card-head{display:flex;align-items:center;justify-content:space-between;padding:19px 25px;border-bottom:1px solid var(--line)}.card-head b{font:700 16px Manrope}.remove{border:0;background:none;color:#9b4d43;cursor:pointer}.paper-body{padding:26px;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:14px}.actions{display:flex;gap:10px;margin-top:28px;align-items:center}.actions .primary:last-child{margin-left:auto}.actions.end{justify-content:flex-end}.actions.end .primary{margin-left:0}button{font-family:inherit}.primary,.secondary,.ghost{border:0;border-radius:99px;padding:13px 21px;font-weight:700;cursor:pointer}.primary{background:var(--green);color:#fff}.secondary{background:#fff;border:1px solid var(--green);color:var(--green)}.ghost{background:transparent;color:var(--muted)}.back{border:0;background:none;padding:0;margin-bottom:36px;color:var(--green);font-weight:700;cursor:pointer}.intro{color:var(--muted);margin:-25px 0 28px}.term{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:10px;display:flex;flex-direction:row;align-items:flex-start;gap:14px;font-size:14px;color:var(--ink)}.term input{width:20px;height:20px;accent-color:var(--green)}.quote-page{width:min(980px,92vw)}.quote-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.quote-toolbar .back{margin:0}.quote-toolbar>div{display:flex;gap:9px}#quote{background:#fff;padding:55px;border-radius:4px;box-shadow:0 10px 40px rgba(20,30,24,.08);min-height:900px}.q-head{display:flex;justify-content:space-between;border-bottom:3px solid var(--green);padding-bottom:24px}.q-title{font:800 28px Manrope;color:var(--green)}.q-meta{text-align:right;font-size:12px;color:var(--muted)}.q-parties{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:35px 0}.q-parties p{line-height:1.7;margin:0;font-size:13px}.q-table{width:100%;border-collapse:collapse;font-size:13px}.q-table th{text-align:left;background:var(--green);color:#fff;padding:12px}.q-table td{padding:13px 12px;border-bottom:1px solid var(--line)}.q-total{text-align:right;font:700 22px Manrope;margin:24px 0}.q-terms{margin-top:50px;border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:var(--muted)}@media(max-width:800px){.cut-grid{grid-template-columns:1fr}.visual-pane{min-height:480px}.paper-body{grid-template-columns:1fr 1fr}.fields.three{grid-template-columns:1fr 1fr}.glass{padding:45px 22px}.page{padding-top:40px}.form-grid{grid-template-columns:1fr}.quote-toolbar{align-items:flex-start;gap:20px}.quote-toolbar>div{flex-direction:column}.q-parties{grid-template-columns:1fr}#quote{padding:30px 22px}}@media print{body{background:#fff}.topbar,.quote-toolbar{display:none}.quote-page{width:100%;padding:0}.quote-screen{display:block!important}#quote{box-shadow:none;padding:20px;min-height:0}}
