@font-face{font-family:Bricolage;src:url('/fonts/bricolage-grotesque-700-0.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-400-0.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-600-1.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--blue:#2538e8;--lime:#dcfa72;--ink:#18203a;--muted:#4c5570;--paper:#f5f7fc;--line:#d6dcec;--white:#fff;--warn:#805000;--warn-bg:#fff3d8;--green:#145d41;--green-bg:#e9f5ee;--danger:#a42b32;--radius:12px;--shadow:0 16px 40px #18203a12}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--line) var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.65 Manrope,sans-serif}::selection{background:var(--lime);color:var(--ink)}a{color:var(--blue);text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue)}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}input,select,textarea{caret-color:var(--blue)}h1,h2,h3{font-family:Bricolage,sans-serif;line-height:1.1;letter-spacing:-.03em;text-wrap:balance}h1{font-size:clamp(34px,4.5vw,62px);margin:0 0 24px}h2{font-size:30px;margin:0 0 20px}h3{font-size:22px;margin:0 0 12px}p{margin:0 0 16px;max-width:72ch}small,.small{font-size:12px;line-height:1.6}.muted{color:var(--muted)}.mono-number{font-variant-numeric:tabular-nums}.skip{position:absolute;top:-70px;left:20px;background:var(--lime);padding:10px;z-index:10}.skip:focus{top:10px}.topbar{max-width:1400px;margin:auto;padding:22px 4%;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px;font:700 43px/1 Bricolage,sans-serif;text-decoration:none;letter-spacing:-.04em;color:var(--blue)}.topbar nav{display:flex;gap:26px;flex-wrap:wrap}.topbar nav a{font-size:13px;color:var(--ink);text-decoration:none}.topbar nav a:hover{text-decoration:underline}.footer{max-width:1400px;margin:60px auto 0;padding:22px 4%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}#main{max-width:1400px;padding:48px 4%;margin:auto;min-height:68vh}.loading{padding:50px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--blue);background:var(--blue);color:white;text-decoration:none;border-radius:var(--radius);padding:12px 20px;font-weight:600;font-size:14px;transition:background .16s ease-out}.button:hover{background:#1826ba}.button.secondary{background:var(--white);color:var(--blue)}.button.secondary:hover{background:#edf0ff}.button.quiet{border-color:var(--line);background:transparent;color:var(--ink);padding:8px 12px}.button.quiet:hover{background:var(--white)}.button.danger{border-color:var(--danger);color:var(--danger);background:var(--white)}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;padding:30px 0 64px}.hero h1{font-size:clamp(43px,5.8vw,78px);max-width:10ch}.hero h1 span{color:var(--blue)}.hero .lead{font-size:18px;max-width:43ch;margin-bottom:28px}.offer-line{margin:24px 0;color:var(--muted);font-size:13px}.offer-line strong{color:var(--ink);font-size:19px}.sample-sheet{background:var(--white);padding:34px;border-radius:var(--radius);box-shadow:var(--shadow);transform:rotate(1.3deg)}.sample-sheet h2{font-size:29px;margin-bottom:6px}.sample-sheet .sample-note{font-size:12px;margin-bottom:26px;color:var(--muted)}.sample-step{display:grid;grid-template-columns:25px 1fr auto;gap:12px;padding:16px 0;border-top:1px solid var(--line);align-items:start}.step-number{font-weight:600;color:var(--blue)}.sample-step span:last-child{font-size:11px;background:var(--paper);padding:3px 7px;border-radius:5px;white-space:nowrap}.sample-bottom{margin-top:24px;padding-top:20px;border-top:2px solid var(--blue);font-size:13px}.section-strip{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:40px 0;border-top:1px solid var(--line)}.section-strip h2{font-size:28px}.plain-list{list-style:none;padding:0;margin:0}.plain-list li{padding:12px 0;border-bottom:1px solid var(--line)}.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px}.page-title h1{font-size:42px;margin-bottom:10px}.page-title p{color:var(--muted)}.form-page{max-width:760px;margin:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .full{grid-column:1/-1}label{display:block;font-weight:600;font-size:13px}label .hint{display:block;font-weight:400;font-size:12px;color:var(--muted);margin-top:4px}input:not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #aab4ce;border-radius:8px;padding:10px 12px;background:white;color:var(--ink);margin-top:7px;min-height:45px}input::placeholder,textarea::placeholder{color:#5d6580;opacity:1}textarea{min-height:95px;resize:vertical}input[type=checkbox]{accent-color:var(--blue);width:17px;height:17px;vertical-align:middle;margin:0 8px 0 0}.checkbox{display:flex;align-items:center;font-weight:400;font-size:13px;gap:3px}.form-actions{margin-top:28px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.help{font-size:12px;color:var(--muted);margin-top:14px}.panel{background:white;border-radius:var(--radius);padding:26px}.workspace{display:grid;grid-template-columns:190px minmax(0,1fr);gap:34px}.side-nav{display:flex;flex-direction:column;gap:5px;align-self:start;position:sticky;top:20px}.side-nav a{padding:10px 12px;color:var(--muted);text-decoration:none;border-radius:8px;font-size:13px}.side-nav a.active{background:var(--blue);color:white;font-weight:600}.side-nav a:hover:not(.active){background:#e8ecf8}.workspace-main{min-width:0}.workspace-main h2{margin-top:6px}.demo-banner{padding:12px 16px;background:var(--lime);border-radius:8px;font-size:13px;margin-bottom:24px;color:var(--ink)}.note{padding:16px 18px;border:1px solid var(--line);border-radius:8px;font-size:13px;margin:18px 0;background:var(--white)}.note.warning{background:var(--warn-bg);border-color:#e6c98d;color:#674000}.note.success{background:var(--green-bg);border-color:#a4cbb5;color:var(--green)}.empty{padding:38px 0;max-width:65ch}.empty h2{font-size:28px}.badge{display:inline-block;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:600;background:#e9edfc;color:#263979;white-space:nowrap}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.green{background:var(--green-bg);color:var(--green)}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:26px 0}.summary-cell{padding:0 0 18px;border-bottom:1px solid var(--line)}.summary-cell .label{font-size:12px;color:var(--muted);margin-bottom:8px}.summary-cell .value{font-size:24px;line-height:1.25;font-family:Bricolage,sans-serif}.summary-cell .detail{font-size:12px;color:var(--muted);margin-top:8px}.table-scroll{overflow:auto;margin:18px 0 28px}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th,td{border-bottom:1px solid var(--line);padding:13px 12px;vertical-align:top}th{font-weight:600;background:#edf0f8;color:#333e5c}td:first-child,th:first-child{padding-left:0}table th:first-child{padding-left:12px}.table-scroll table{min-width:560px}.project-list a{display:grid;grid-template-columns:1fr auto;gap:20px;padding:23px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.project-list h3{font-size:23px;margin-bottom:6px}.project-list p{font-size:13px;color:var(--muted);margin:0}.condition-row{padding:24px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 240px;gap:15px 24px}.condition-row h3{font-size:19px;margin:4px 0}.condition-row .condition-note{grid-column:1/-1}.task-item{padding:22px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;font-weight:600}summary::after{content:'+';font-size:24px;color:var(--blue)}details[open]>summary::after{content:'−'}details>summary::-webkit-details-marker{display:none}.task-grid{margin-top:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.task-grid .full{grid-column:1/-1}.deps{display:flex;flex-wrap:wrap;gap:12px;margin-top:9px}.record{border-top:1px solid var(--line);padding:24px 0}.record h3{font-size:20px}.record .actions{margin-top:18px}.record-form{padding-top:28px;margin-top:30px;border-top:2px solid var(--blue)}.quote-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.file-list a{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.save-state{font-size:12px;color:var(--muted)}#notice:not(:empty){max-width:1288px;margin:18px auto 0;padding:13px 18px;background:var(--warn-bg);color:#674000;border-radius:8px;font-size:13px}#notice.success{background:var(--green-bg);color:var(--green)}.ops-numbers{display:flex;gap:40px;flex-wrap:wrap;margin:30px 0}.ops-numbers strong{display:block;font:700 30px Bricolage,sans-serif}.ops-numbers span{font-size:12px;color:var(--muted)}.report{background:white;max-width:900px;padding:36px;margin:auto}.report .brand{font-size:36px;margin-bottom:30px}.report h1{font-size:35px}.report h2{font-size:24px;margin-top:32px}.report .report-rule{height:3px;background:var(--blue);margin:24px 0}.report ul{padding-left:20px}.report li{margin-bottom:10px}.report p,.report td{font-size:13px}.market{max-width:980px;margin:auto}.market .intro{font-size:19px;max-width:65ch}.market section{padding:36px 0;border-top:1px solid var(--line)}.market h2{font-size:28px}.market .form-grid{max-width:720px}.market .result{padding:22px 0;font-size:20px;font-family:Bricolage,sans-serif}.error-text{color:var(--danger)}
@media(max-width:1000px){.hero{gap:35px}.hero h1{font-size:58px}.workspace{grid-template-columns:155px minmax(0,1fr);gap:22px}.condition-row{grid-template-columns:1fr}.condition-row .condition-note{grid-column:auto}.topbar nav{gap:15px}}
@media(max-width:700px){.topbar{padding:18px 5%;gap:20px;align-items:flex-start}.brand{font-size:35px}.topbar nav{gap:8px 16px;justify-content:flex-end;max-width:220px}.topbar nav a{font-size:11px}#main{padding:30px 5%}.hero{grid-template-columns:1fr;padding-top:8px;gap:38px}.hero h1{font-size:55px;max-width:12ch}.hero .lead{font-size:16px}.sample-sheet{transform:none;padding:23px}.section-strip{grid-template-columns:1fr;gap:26px}.page-title{display:block}.page-title h1{font-size:34px}.page-title .actions{margin-top:18px}.workspace{display:block}.side-nav{position:static;flex-direction:row;overflow:auto;white-space:nowrap;margin-bottom:26px;padding-bottom:8px}.side-nav a{flex-shrink:0;font-size:12px}.form-grid,.task-grid{grid-template-columns:1fr}.form-grid .full,.task-grid .full{grid-column:auto}.summary-grid{gap:20px}.summary-cell .value{font-size:21px}.panel{padding:20px}.footer{padding:20px 5%;display:block}.footer span{display:block;margin:6px 0}.report{padding:20px}.quote-head{display:block}.quote-head .badge{margin-top:8px}.ops-numbers{gap:24px}.button{padding:11px 16px}.condition-row{padding:19px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media print{body{background:white;font:11px/1.45 sans-serif}.topbar,.footer,.side-nav,.page-title,.demo-banner,#notice,.no-print{display:none!important}#main{padding:0;max-width:none;min-height:0}.workspace{display:block}.report{padding:0;max-width:none}.report h1{font-size:25px}.report h2{font-size:18px;break-after:avoid}.report table{font-size:10px}.report tr{break-inside:avoid}.report a{color:inherit;text-decoration:none}.report .brand{font-size:30px}.table-scroll{overflow:visible}.table-scroll table{min-width:0}.note{break-inside:avoid}h2,h3{break-after:avoid}@page{size:A4;margin:16mm}}
