@font-face{font-family:StairSans;font-weight:100 900;src:url('/static/fonts/instrumentsans.woff2') format('woff2');font-display:swap}body.stair-planner{--bg:#f4f7f8;--surface:#fff;--text:#20282b;--muted:#536168;--accent:#1b6c80;--border:#e1e7e9;background:var(--bg);color:var(--text);font-family:StairSans,system-ui,sans-serif}.stair-planner .wrap{max-width:1260px}.stair-planner .site-header{background:transparent;border:0}.stair-planner .hero{text-align:left;padding:24px 0 20px}.stair-planner h1{font-size:32px;letter-spacing:-.025em;line-height:1.12;max-width:none;margin-bottom:10px}.stair-planner .lead{max-width:780px;margin:0;font-size:17px}.stair-planner #tool{padding:0;background:none;border:0;box-shadow:none;max-width:none}.stair-planner button,.stair-planner input,.stair-planner select,.stair-planner textarea{font:inherit;border-radius:6px;min-height:44px}.stair-planner input,.stair-planner select,.stair-planner textarea{width:100%;background:#fff;color:#20282b;border:1px solid #b5c2c8;padding:9px 10px}.stair-planner label{display:grid;gap:6px;font-size:14px;color:#34434a}.stair-planner button{background:#fff;color:#26363e;border:1px solid #bac7cd;padding:9px 14px;cursor:pointer}.stair-planner button:hover{background:#e9eff1}.stair-planner button:disabled{opacity:.45;cursor:not-allowed}.stair-planner :focus-visible{outline:3px solid #1b6c80;outline-offset:3px}.stair-planner h2{font-size:20px;letter-spacing:-.01em;margin:0 0 16px}.sp-toolbar{display:flex;align-items:end;gap:16px;margin:10px 0 24px;flex-wrap:wrap}.sp-toolbar>label{flex:1;min-width:210px;max-width:560px}.sp-split{position:relative;display:flex;gap:0}.sp-split>[data-sp=save]{background:#20282b;color:#fff;border-radius:6px 0 0 6px}.sp-split>[data-sp=menu]{background:#20282b;color:#fff;border-radius:0 6px 6px 0;border-left-color:#536168}.sp-split #sp-menu{position:absolute;right:0;top:calc(100% + 8px);width:245px;padding:6px;background:#fff;z-index:10;box-shadow:0 8px 28px #20303d24;border:1px solid #d8e0e4;border-radius:8px}.sp-split #sp-menu button{width:100%;text-align:left;border:0}.sp-split #sp-menu[hidden]{display:none}.sp-saved{position:relative}.sp-saved summary{min-height:44px;padding:10px;cursor:pointer}.sp-library>div{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px}.sp-library{min-width:220px}.sp-work{display:grid;grid-template-columns:248px minmax(0,1fr);gap:8px;background:#eaf0f2;border-radius:16px;padding:8px 8px 8px 0}.sp-measure{padding:20px 20px 20px 16px;display:flex;flex-direction:column;gap:16px}.sp-measure p{font-size:13px;line-height:1.5;color:#536168}.sp-measure details{font-size:14px}.sp-measure details[open]{display:grid;gap:12px}.sp-measure details summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.sp-check{display:flex!important;align-items:start;gap:10px!important;line-height:1.5}.sp-check input{width:19px;min-height:19px;margin-top:2px;accent-color:#1b6c80}.sp-sheet{min-width:0;background:#fff;border:1px solid #e1e7e9;border-radius:12px;padding:24px}.sp-sheet-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.sp-sheet-title span{font-size:13px;color:#536168}.sp-sheet .out{padding:0;margin:0;min-height:0;background:none;border:0}.sp-sheet .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;background:none}.sp-sheet .stat{padding:0;border:0;background:none;box-shadow:none;border-radius:0}.sp-sheet .stat b{font-size:27px;font-weight:500;white-space:nowrap}.sp-sheet .stat span{font-size:13px}.sp-diagram{display:block;width:100%;height:auto;margin:24px 0 8px}.sp-findings{display:grid;gap:7px;font-size:14px;padding:16px;background:#edf4f6}.sp-findings strong{color:#1b6c80;font-weight:600}.sp-note{font-size:13px;color:#536168;line-height:1.6}.sp-options{margin:32px 0;padding:24px;background:#fff;border-radius:12px}.sp-options>p{max-width:800px;font-size:14px}.sp-comparison table{min-width:540px}.sp-comparison td:not(:first-child),.sp-comparison th:not(:first-child){text-align:right}.sp-comparison button{min-width:125px}.sp-comparison button[aria-pressed=true]{color:#fff;background:#1b6c80;border-color:#1b6c80}.sp-brief{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:24px;background:#fff;border-radius:12px}.sp-brief p{font-size:14px}.sp-brief-values dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px}.sp-brief-values dd{text-align:right;font-variant-numeric:tabular-nums}.sp-status{min-height:24px;color:#1b6c80}.sp-print-report{display:none}.stair-planner .result,.stair-planner .stat{box-shadow:none}.stair-planner .tool-layout{display:block}.stair-planner .content{max-width:900px}.stair-planner .sp-sheet .stats{font-variant-numeric:tabular-nums}@media(max-width:850px){.sp-work{grid-template-columns:220px minmax(0,1fr)}.sp-sheet{padding:18px}.sp-sheet .stats{grid-template-columns:1fr 1fr}.sp-sheet-title{display:block}.sp-brief{gap:24px}.sp-sheet .stat b{font-size:24px}}@media(max-width:600px){.stair-planner .wrap{padding-left:16px;padding-right:16px}.stair-planner h1{font-size:29px}.sp-work{display:flex;flex-direction:column;padding:0;background:none;gap:16px}.sp-measure{padding:20px;background:#eaf0f2;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.sp-measure h2,.sp-measure>.sp-check,.sp-measure>details{grid-column:1/-1}.sp-measure>label:first-of-type{grid-column:1/-1}.sp-sheet{padding:20px 16px}.sp-sheet .stats{gap:18px}.sp-sheet-title span{display:block;margin-bottom:18px}.sp-diagram{margin:16px 0}.sp-options{padding:20px 16px}.sp-brief{display:block;padding:20px 16px}.sp-brief-values{margin-top:24px}.sp-toolbar{gap:12px}.sp-toolbar>label{max-width:none;flex-basis:100%}.sp-saved{flex:1}.sp-sheet .stat b{font-size:25px}.sp-options .table-wrap{margin:0 -5px}.sp-options>p{line-height:1.6}}@media print{@page{size:A4;margin:16mm}body.stair-planner>*{display:none!important}body.stair-planner>.sp-print-report{display:block!important;background:white;color:#111;font-family:Arial,sans-serif;font-size:10pt}.sp-print-report h1{font-size:20pt}.sp-print-report h2{font-size:14pt}.sp-print-report canvas{display:block;width:100%;height:auto;break-inside:avoid}.sp-print-report p{margin:5pt 0;line-height:1.4;overflow-wrap:anywhere}.sp-print-report{overflow:visible}}

.stair-planner h1,.stair-planner h2,.stair-planner h3,.stair-planner .brand,.stair-planner .stat b{font-family:StairSans,system-ui,sans-serif}.stair-planner .sp-comparison thead{background:none}.stair-planner .sp-comparison th{background:none;color:#536168;font-weight:500}.stair-planner .sp-sheet .stat b{color:#20282b}

body.stair-planner{--fg:#20282b;--card:#fff;--font:StairSans,system-ui,sans-serif;--head:StairSans,system-ui,sans-serif;color-scheme:light}.stair-planner .sp-comparison,.stair-planner .sp-brief-values{font-variant-numeric:tabular-nums}@media(max-width:600px){.stair-planner h1{font-size:24px}}

.sp-save-feedback{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:-8px 0 20px}.sp-save-feedback .sp-status{margin:0;min-height:22px;flex:1;min-width:220px;font-size:14px}.sp-saved-count{margin-left:7px;color:#536168;font-variant-numeric:tabular-nums}.sp-library-dialog,.sp-copy-dialog{width:min(1000px,calc(100vw - 32px));max-width:1000px;max-height:calc(100dvh - 40px);overflow:auto;margin:auto;padding:28px;background:#fff;color:#20282b;border:1px solid #c7d1d6;border-radius:12px;font:14px/1.55 StairSans,system-ui,sans-serif}.sp-copy-dialog{width:min(520px,calc(100vw - 32px))}.sp-library-dialog::backdrop,.sp-copy-dialog::backdrop{background:#1e2d366b}.sp-library-dialog header,.sp-copy-dialog header{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:24px}.sp-library-dialog header h2,.sp-copy-dialog header h2{margin:0;font-size:24px}.sp-library-dialog header p{margin:8px 0 0;color:#536168;max-width:650px}.sp-library-dialog header>button,.sp-copy-dialog header>button{width:44px;flex-shrink:0;font-size:24px;padding:0}.sp-library-tools{display:flex;align-items:end;gap:24px;justify-content:space-between}.sp-library-tools label{width:55%}.sp-library-help{font-size:13px;color:#536168;margin:16px 0 24px;max-width:800px}.sp-project-record{display:grid;grid-template-columns:155px minmax(0,1fr) 135px;align-items:center;gap:24px;padding:20px 0;border-top:1px solid #e1e7e9}.sp-project-record canvas{width:155px;height:auto;display:block;background:#fff}.sp-project-record h3{font:500 20px/1.3 StairSans,system-ui,sans-serif;margin:0 0 10px;overflow-wrap:anywhere}.sp-project-record p{margin:5px 0;font-variant-numeric:tabular-nums}.sp-project-record span,.sp-project-record small{display:block;font-size:13px;color:#536168}.sp-project-record small{margin-top:8px}.sp-project-actions{display:grid;gap:8px}.sp-project-actions>[data-open]{background:#20282b;color:white}.sp-library-empty{padding:36px 24px;margin:20px 0;background:#edf3f5;text-align:center}.sp-library-empty h3{font-size:20px;margin:0 0 10px}.sp-library-empty p{max-width:600px;margin:auto}.sp-library-status,.sp-copy-status{min-height:24px;color:#1b6c80}.sp-library-status button{margin-left:12px}.sp-copy-dialog>label{margin-bottom:18px}.sp-copy-dialog>p{font-size:14px;color:#536168}.sp-copy-dialog>[data-sp=confirm-copy]{background:#20282b;color:#fff}.stair-planner dialog[hidden]{display:none}.stair-planner .sp-save-feedback>[hidden]{display:none}@media(max-width:800px){.sp-project-record{grid-template-columns:120px minmax(0,1fr);gap:18px}.sp-project-record canvas{width:120px}.sp-project-actions{grid-column:2;display:flex}.sp-library-tools{align-items:start;flex-direction:column;gap:12px}.sp-library-tools label{width:100%}}@media(max-width:500px){.sp-toolbar{gap:10px}.sp-toolbar>[data-sp=copy]{font-size:13px}.sp-library-dialog,.sp-copy-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:18px}.sp-library-dialog header h2,.sp-copy-dialog header h2{font-size:21px}.sp-library-dialog header{gap:12px;margin-bottom:18px}.sp-project-record{grid-template-columns:85px minmax(0,1fr);gap:14px}.sp-project-record canvas{width:85px}.sp-project-record h3{font-size:18px}.sp-project-record p{font-size:13px}.sp-project-record span,.sp-project-record small{font-size:12px}.sp-project-actions{grid-column:1/-1}.sp-project-actions button{flex:1}.sp-library-empty{padding:26px 18px}.sp-save-feedback{gap:10px;margin-bottom:18px}}
