:root{--paper:#f1f5f0;--surface:#fafcf8;--ink:#102a43;--muted:#52687a;--blue:#075985;--blue-dark:#063b5c;--grid:#b8d5de;--mark:#c53d2f;--mark-dark:#8f261d;--success:#28734d;--warning:#8a5700;--line:rgba(7,89,133,.28);--shadow:4px 4px 0 rgba(6,59,92,.16);font-family:Avenir Next,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.5;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background-color:var(--paper);background-image:linear-gradient(rgba(7,89,133,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(7,89,133,.045) 1px,transparent 1px);background-size:24px 24px}button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}a{color:var(--blue-dark);text-decoration-thickness:1.5px;text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--mark);outline-offset:3px}.skip-link{position:fixed;z-index:100;left:16px;top:8px;transform:translateY(-150%);background:var(--surface);padding:10px 14px;border:2px solid var(--ink)}.skip-link:focus{transform:none}.site-header{max-width:1240px;margin:auto;padding:20px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.wordmark{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none;font-family:Rockwell,Roboto Slab,Georgia,serif;font-size:14px;line-height:1.05;letter-spacing:.04em;text-transform:uppercase}.wordmark svg{width:40px;height:40px;fill:none;stroke:var(--blue);stroke-width:2}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{font-weight:700;text-decoration:none;border-bottom:2px solid transparent}.site-header nav a:hover{border-color:var(--mark)}main{display:block}.blueprint-grid{background-image:linear-gradient(rgba(7,89,133,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(7,89,133,.08) 1px,transparent 1px);background-size:24px 24px}.hero{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:minmax(0,5.5fr) minmax(380px,6.5fr);min-height:650px;border-inline:1px solid var(--line)}.hero-copy{padding:80px 48px 64px;align-self:center}.drawing-label{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:800;color:var(--blue);margin:0 0 16px;font-variant-numeric:tabular-nums}.hero h1,.legal h1,.not-found h1,.demo-head h1{font-family:Rockwell,Roboto Slab,Georgia,serif;font-size:clamp(2.65rem,6vw,4.8rem);line-height:.96;letter-spacing:-.045em;max-width:9ch;margin:0 0 24px;color:var(--blue-dark)}.lede{font-size:1.25rem;line-height:1.45;max-width:48ch;margin:0 0 28px}.hero-action{display:flex;align-items:center;gap:16px;margin-bottom:32px}.hero-action span{font-size:.9rem;color:var(--muted);max-width:20ch}.button,.file-button{min-height:46px;border:2px solid var(--blue-dark);padding:10px 18px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;background:var(--surface);box-shadow:var(--shadow);transition:transform .18s,box-shadow .18s}.button:hover,.file-button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #063b5c2e}.button:active,.file-button:active{transform:translate(2px,2px);box-shadow:none}.button.primary{background:var(--blue-dark);color:#fff}.button.secondary{background:var(--surface);color:var(--blue-dark)}.button:disabled,.text-button:disabled{opacity:.5;cursor:not-allowed}.plain-facts{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:.95rem}.plain-facts li{display:flex;gap:10px}.plain-facts li:before{content:"⌙";color:var(--mark);font-weight:900}.hero-art{margin:44px 32px 44px 0;align-self:center;background:var(--surface);padding:12px 12px 16px;border:1px solid var(--blue);box-shadow:12px 12px #07598521;position:relative}.hero-art:before,.hero-art:after{content:"";position:absolute;width:22px;height:22px;border-color:var(--mark);border-style:solid}.hero-art:before{top:-8px;left:-8px;border-width:2px 0 0 2px}.hero-art:after{right:-8px;bottom:-8px;border-width:0 2px 2px 0}.hero-art img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover}.hero-art figcaption{font-family:Rockwell,Georgia,serif;font-size:.82rem;margin-top:10px;color:var(--muted)}.workbench{max-width:1240px;margin:0 auto;padding:80px 28px;border-inline:1px solid var(--line);background:#fafcf8d1}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:end;margin-bottom:32px}.section-heading .drawing-label{grid-column:1/-1;margin:0}.section-heading h2,.how-section h2,.boundary-section h2,.price-section h2{font-family:Rockwell,Roboto Slab,Georgia,serif;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;margin:0;color:var(--blue-dark)}.section-heading p{margin:0;color:var(--muted);font-size:1.05rem}.practice-app{border:2px solid var(--blue-dark);background:var(--surface);box-shadow:8px 8px #063b5c1f;min-height:320px}.loading-state{padding:32px}.builder-panel{display:grid;grid-template-columns:5fr 7fr;border-bottom:2px solid var(--blue-dark)}.builder-panel>section{padding:28px}.builder-panel>section+section{border-left:1px solid var(--line)}.builder-panel h3,.library h3,.round-screen h3,.round-result h3{font-family:Rockwell,Georgia,serif;font-size:1.45rem;margin:0;color:var(--blue-dark)}.builder-panel>section>div:first-child,.library-head>div:first-child{display:flex;align-items:center;gap:12px;margin-bottom:22px}.step-number{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--blue);font-family:monospace;font-size:.75rem;color:var(--blue)}.file-button{margin-bottom:10px}.import-zone>p{font-size:.82rem;color:var(--muted);margin:0 0 20px}.import-zone code{font-size:.78rem}.import-zone details{border-top:1px solid var(--line);padding-top:14px}.import-zone summary{font-weight:800;cursor:pointer;min-height:44px;padding-block:10px}#prompt-form{display:grid;gap:8px}textarea,input,select{border:1.5px solid var(--blue);background:#fff;min-height:44px;padding:8px;border-radius:0}textarea{resize:vertical}fieldset{border:0;padding:0;margin:0}legend,label{font-weight:700;font-size:.9rem}.segmented{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 22px}.segmented button{min-height:44px;padding:8px 14px;border:1.5px solid var(--blue);background:transparent;font-weight:700;cursor:pointer;text-transform:capitalize}.segmented button[aria-pressed=true]{background:var(--blue-dark);color:#fff}.settings-row{display:flex;gap:12px}.settings-row label{display:grid;gap:5px;flex:1}.selection-note{border-block:1px solid var(--line);padding:12px 0}.selection-note b{font-family:Rockwell,Georgia,serif;font-size:1.4rem;color:var(--mark-dark)}.builder-actions{display:flex;gap:10px;flex-wrap:wrap}.form-status{min-height:24px;color:var(--success);font-weight:700}.form-status.error{color:var(--mark-dark)}.library{padding:28px}.library-head{display:flex;justify-content:space-between;align-items:center}.library-head h3 span{font-family:monospace;font-size:.8rem;vertical-align:super;border:1px solid var(--blue);padding:2px 5px}.library-actions{display:flex;gap:18px}.text-button{min-height:44px;padding:8px 2px;border:0;border-bottom:1.5px solid currentColor;background:none;font-weight:800;cursor:pointer}.text-button.danger{color:var(--mark-dark)}.prompt-list{list-style:none;counter-reset:prompt;padding:0;margin:12px 0 0}.prompt-list li{counter-increment:prompt;display:grid;grid-template-columns:40px minmax(0,1fr) auto 44px;gap:12px;align-items:center;border-top:1px solid var(--line);padding:14px 0;transition:transform .18s}.prompt-list li:before{content:counter(prompt,decimal-leading-zero);font-family:monospace;color:var(--blue)}.prompt-copy{display:grid;min-width:0}.prompt-copy b,.prompt-copy span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prompt-copy span{color:var(--muted);font-size:.87rem}.prompt-list fieldset{display:flex;gap:5px}.tag input{position:absolute;opacity:0;pointer-events:none}.tag span{display:block;padding:6px 9px;border:1px solid var(--line);font-size:.73rem;cursor:pointer;color:var(--muted)}.tag input:focus-visible+span{outline:3px solid var(--mark);outline-offset:2px}.tag input:checked+span{color:#fff;background:var(--blue-dark);border-color:var(--blue-dark)}.tag.today input:checked+span{background:var(--mark-dark);border-color:var(--mark-dark)}.tag.weak input:checked+span{background:#79500b;border-color:#79500b}.icon-button{width:44px;height:44px;border:0;background:transparent;font-size:1.6rem;cursor:pointer;color:var(--mark-dark)}.empty-state{display:flex;gap:24px;align-items:center;border-top:1px solid var(--line);padding:40px 0}.empty-state h4{font-family:Rockwell,Georgia,serif;font-size:1.3rem;margin:0}.empty-state p{margin:4px 0}.empty-dial{width:86px;height:86px;display:grid;place-items:center;border:2px solid var(--blue);border-radius:50%;font:2rem Rockwell,serif;color:var(--blue)}.round-note{border-top:1px solid var(--line);padding-top:14px;color:var(--muted)}.round-screen{padding:32px}.round-top{display:flex;align-items:start;justify-content:space-between}.round-stage{min-height:360px;display:grid;grid-template-columns:160px 1fr;gap:48px;align-items:center;max-width:850px;margin:0 auto}.timer-dial{--progress:360deg;width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--mark) var(--progress),var(--grid) 0);position:relative}.timer-dial:after{content:"";position:absolute;inset:10px;background:var(--surface);border-radius:50%}.timer-dial span,.timer-dial small{z-index:1}.timer-dial span{font:3rem Rockwell,Georgia,serif;line-height:1}.timer-dial small{color:var(--muted)}.prompt-sheet{border:2px solid var(--blue-dark);padding:32px;background-image:linear-gradient(transparent 31px,#0759851f 32px);background-size:100% 32px;min-height:250px;display:flex;flex-direction:column;justify-content:space-between}.prompt-sheet>p{font:1.65rem/1.35 Rockwell,Georgia,serif;margin:0 0 32px}.answer{border-top:2px solid var(--mark);padding-top:12px}.answer span{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--mark-dark);font-weight:800}.answer p{font-size:1.1rem}.rating-actions{display:flex;justify-content:flex-end;gap:12px;max-width:850px;margin:0 auto}kbd{font:inherit;font-size:.75rem;border:1px solid currentColor;padding:2px 5px;margin-left:8px}.keyboard-note{text-align:right;color:var(--muted);font-size:.78rem}.round-result{text-align:center;padding:64px 24px}.round-result h3{font-size:2rem}.result-measure{width:180px;height:180px;border:2px solid var(--blue);border-radius:50%;display:grid;place-content:center;margin:24px auto}.result-measure span{font:3.5rem Rockwell,Georgia,serif;color:var(--mark-dark)}.result-measure small{max-width:12ch}.how-section{max-width:1240px;margin:0 auto;padding:88px 48px;border-inline:1px solid var(--line)}.how-section h2{max-width:12ch}.how-section ol{list-style:none;counter-reset:how;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-block:2px solid var(--blue-dark)}.how-section li{counter-increment:how;padding:28px;min-height:180px}.how-section li+li{border-left:1px solid var(--line)}.how-section li:before{content:"0" counter(how);display:block;font:1rem monospace;color:var(--mark-dark);margin-bottom:38px}.how-section li b,.how-section li span{display:block}.how-section li b{font:1.3rem Rockwell,Georgia,serif}.how-section li span{color:var(--muted);margin-top:6px}.boundary-section,.price-section{max-width:1240px;margin:0 auto;padding:80px 48px;display:grid;grid-template-columns:1fr 1fr;gap:48px;border:1px solid var(--line);border-top:0;background:var(--surface)}.boundary-section>div:last-child{border-left:3px solid var(--mark);padding-left:28px;font-size:1.1rem}.price-section{background:var(--blue-dark);color:#fff}.price-section .drawing-label{color:#a8d8e5}.price-section h2{color:#fff}.price-section .button.primary{background:#fff;color:var(--blue-dark)}.fine-print{font-size:.78rem;color:#c8d8df}.license-form{align-self:center}.license-form label{display:block;margin-bottom:7px}.license-form>div{display:flex}.license-form input{flex:1;min-width:0}.license-form .button{box-shadow:none}.license-form .form-status{color:#fff}.demo-banner{background:var(--mark-dark);color:#fff;min-height:44px;padding:5px max(16px,calc((100% - 1184px)/2));display:flex;justify-content:space-between;align-items:center;font-size:.88rem}.demo-banner .text-button{color:#fff;margin-left:16px}.demo-head{max-width:1240px;margin:0 auto;padding:56px 48px 40px;border-inline:1px solid var(--line)}.demo-head h1{font-size:clamp(2.5rem,5vw,4rem);max-width:14ch}.demo-head>p:last-child{font-size:1.1rem;max-width:58ch}.demo-workbench{padding-top:24px}.legal,.not-found{max-width:1000px;margin:0 auto;padding:72px 48px;min-height:650px;border-inline:1px solid var(--line)}.legal h1,.not-found h1{font-size:clamp(2.5rem,6vw,4.5rem);max-width:14ch}.legal h2{font:1.5rem Rockwell,Georgia,serif;color:var(--blue-dark);margin-top:36px}.legal p{max-width:66ch;font-size:1.05rem}.not-found{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.not-found:after{content:"?";position:absolute;right:12vw;font:20rem Rockwell,serif;color:#07598512}footer{max-width:1240px;margin:0 auto;padding:32px 28px;display:grid;grid-template-columns:1fr auto auto;gap:32px;border-top:2px solid var(--blue-dark);font-size:.82rem;align-items:center}footer nav{display:flex;gap:20px}footer p{margin:0}.toast{position:fixed;right:20px;bottom:20px;z-index:50;max-width:340px;background:var(--blue-dark);color:#fff;border-left:5px solid var(--mark);padding:14px 18px;box-shadow:var(--shadow)}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:760px){.site-header{padding:14px 16px}.site-header nav{gap:14px}.site-header nav a:nth-child(2){display:none}.hero{grid-template-columns:1fr;min-height:0;border:0}.hero-copy{padding:56px 20px 32px}.hero h1{font-size:3.2rem}.hero-action{align-items:flex-start;flex-direction:column}.hero-art{margin:0 20px 48px}.workbench{padding:56px 16px;border:0}.section-heading,.builder-panel{grid-template-columns:1fr}.builder-panel>section+section{border-left:0;border-top:1px solid var(--line)}.builder-panel>section,.library{padding:20px}.settings-row{flex-direction:column}.library-head{align-items:flex-start;gap:12px}.library-actions{flex-direction:column;gap:0}.prompt-list li{grid-template-columns:28px 1fr 44px}.prompt-list fieldset{grid-column:2/-1;grid-row:2}.round-screen{padding:20px}.round-stage{grid-template-columns:1fr;gap:20px;padding:30px 0}.timer-dial{width:110px;height:110px;justify-self:center}.prompt-sheet{min-height:280px;padding:22px}.keyboard-note{display:none}.how-section{padding:64px 20px;border:0}.how-section ol{grid-template-columns:1fr}.how-section li{min-height:0}.how-section li+li{border-left:0;border-top:1px solid var(--line)}.how-section li:before{margin-bottom:16px}.boundary-section,.price-section{padding:56px 20px;grid-template-columns:1fr;gap:24px;border-inline:0}.license-form>div{flex-direction:column}.demo-banner{align-items:flex-start;padding:7px 12px;gap:8px}.demo-banner>span:last-child{display:flex}.demo-banner .text-button{margin-left:8px}.demo-head{padding:48px 20px 24px;border:0}.legal,.not-found{padding:56px 20px;border:0}.not-found:after{display:none}footer{grid-template-columns:1fr;padding:28px 20px}footer nav{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.button:hover,.file-button:hover{transform:none}}.site-header nav a{min-height:44px;display:inline-flex;align-items:center}.plan-name{display:grid;gap:5px;margin:14px 0}.tag span{min-height:44px;display:flex;align-items:center}.saved-plans{border-top:2px solid var(--blue-dark);margin-top:24px;padding-top:20px}.saved-plans h4{font:1.2rem Rockwell,Georgia,serif;margin:0 0 8px}.saved-plans ul{list-style:none;padding:0;margin:0}.saved-plans li{display:grid;grid-template-columns:1fr auto 44px;align-items:center;gap:12px;border-top:1px solid var(--line);padding:8px 0}.saved-plans li>span{display:grid}.saved-plans small{color:var(--muted)}.error-state{padding:40px;max-width:60ch}.error-state h3{font:1.5rem Rockwell,Georgia,serif;margin:0 0 8px}@media(max-width:760px){.saved-plans li{grid-template-columns:1fr 44px}.saved-plans .use-plan{grid-row:2;grid-column:1;justify-self:start}}
