:root{--ink:#252722;--paper:#f4f0e7;--card:#fbfaf6;--line:#d8d2c7;--red:#c84630;--green:#234b3e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{color:inherit}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;height:70px;padding:0 4.5vw;display:flex}.brand{color:inherit;align-items:center;gap:10px;font-family:Georgia,serif;font-size:25px;text-decoration:none;display:flex}.brand-mark{width:34px;height:34px;color:var(--paper);background:var(--ink);border-radius:50%;place-items:center;font-style:italic;display:grid}.version{border:1px solid var(--line);letter-spacing:.14em;text-transform:uppercase;margin-left:5px;padding:4px 8px;font:9px Arial,sans-serif}.save-state{text-transform:uppercase;letter-spacing:.09em;align-items:center;gap:8px;font-size:11px;display:flex}.save-state span{background:#4b8066;border-radius:50%;width:7px;height:7px}.intro{grid-template-columns:1.35fr .65fr;align-items:end;gap:80px;max-width:1440px;margin:auto;padding:64px 4.5vw 50px;display:grid}.eyebrow{color:var(--red);letter-spacing:.17em;text-transform:uppercase;margin:0 0 16px;font-size:11px;font-weight:700}h1{letter-spacing:-.045em;margin:0;font:clamp(42px,5.3vw,76px)/.98 Georgia,serif}.lede{color:#5a5a53;max-width:470px;margin:0 0 3px;font:16px/1.6 Georgia,serif}.steps{grid-template-columns:repeat(3,1fr);max-width:1440px;margin:auto;padding:0 4.5vw;display:grid}.steps button{border:0;border-top:1px solid var(--line);text-align:left;text-transform:uppercase;letter-spacing:.13em;cursor:pointer;background:0 0;padding:16px 0;font-size:10px}.steps button span{color:#99958b;margin-right:12px}.steps button.active{border-top:3px solid var(--red);color:var(--red);padding-top:14px;font-weight:700}.workspace{grid-template-columns:minmax(420px,.78fr) minmax(540px,1.22fr);gap:20px;max-width:1440px;margin:0 auto;padding:22px 4.5vw 70px;display:grid}.controls,.pattern-card{background:var(--card);border:1px solid var(--line);min-height:670px}.controls{flex-direction:column;display:flex}.section-heading{border-bottom:1px solid var(--line);padding:26px 30px 23px}.section-heading>div{align-items:baseline;gap:13px;display:flex}.section-heading span{color:var(--red);font:italic 17px Georgia,serif}.section-heading h2{margin:0;font:27px Georgia,serif}.section-heading p{color:#77736b;margin:8px 0 0 30px;font-size:12px}.measure-grid{grid-template-columns:1fr 1fr;gap:19px 18px;padding:24px 30px;display:grid}.measure-field>span{text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px;font-size:11px;font-weight:700;display:block}.measure-field>div{border:1px solid var(--line);background:#fff;align-items:center;height:43px;display:flex}.measure-field input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0 12px;font:20px Georgia,serif}.measure-field input:focus{box-shadow:inset 0 0 0 2px var(--red)}.measure-field em{color:#9a968d;padding-right:12px;font:11px Arial,sans-serif}.measure-field small{color:#929087;margin-top:5px;font:10px/1.3 Arial,sans-serif;display:block}.control-footer{border-top:1px solid var(--line);justify-content:space-between;gap:12px;margin-top:auto;padding:20px 30px;display:flex}.control-footer button{border:1px solid var(--ink);cursor:pointer;text-transform:uppercase;letter-spacing:.11em;min-height:45px;padding:0 20px;font-size:10px;font-weight:700}.control-footer button:disabled{opacity:.3;cursor:not-allowed}.secondary{background:0 0}.primary{background:var(--ink);min-width:170px;color:#fff!important}.primary span{color:#e9b264;margin-left:20px}.fit-panel,.summary-panel{padding:32px 30px}.fit-panel fieldset{border:0;padding:0}.fit-panel legend{margin-bottom:14px;font:20px Georgia,serif}.choice-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.choice-grid label{border:1px solid var(--line);cursor:pointer;background:#fff;padding:18px 14px}.choice-grid label.selected{border:2px solid var(--red);background:#fff9f5;padding:17px 13px}.choice-grid input{opacity:0;position:absolute}.choice-grid strong,.choice-grid span{text-transform:capitalize;display:block}.choice-grid strong{font:16px Georgia,serif}.choice-grid span{color:#858178;margin-top:7px;font-size:10px}.range-field{margin-top:35px;display:block}.range-field>span{justify-content:space-between;display:flex}.range-field b{color:var(--red);font:20px Georgia,serif}.range-field input{width:100%;accent-color:var(--red);margin:18px 0 8px}.range-field small{color:#858178;font-size:10px}.formula-card{border-left:3px solid var(--green);background:#edf0e9;margin-top:36px;padding:20px}.formula-card span,.formula-card code,.formula-card strong{display:block}.formula-card span{letter-spacing:.15em;text-transform:uppercase;color:var(--green);font-size:9px}.formula-card code{white-space:normal;color:#535c55;margin:11px 0;font-size:11px}.formula-card strong{font:17px Georgia,serif}.summary-panel{grid-template-columns:1fr 1fr;gap:12px;display:grid}.summary-panel>div{border:1px solid var(--line);background:#fff;min-height:90px;padding:19px}.summary-panel span,.summary-panel strong{display:block}.summary-panel span{color:#77736b;text-transform:uppercase;margin-bottom:10px;font-size:10px}.summary-panel strong{font:19px Georgia,serif}.summary-panel aside{color:#f5f1e8;background:var(--green);grid-column:1/-1;padding:20px}.summary-panel aside strong{font:18px Georgia,serif}.summary-panel aside p{opacity:.75;margin:8px 0 0;font-size:12px;line-height:1.5}.pattern-card{flex-direction:column;display:flex;overflow:hidden}.pattern-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:78px;padding:18px 24px;display:flex}.pattern-toolbar span,.pattern-toolbar strong{display:block}.pattern-toolbar span{color:#868279;letter-spacing:.15em;text-transform:uppercase;margin-bottom:5px;font-size:9px}.pattern-toolbar strong{font:17px Georgia,serif}.scale-pill{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.1em;padding:8px 10px;font-size:9px}.canvas-wrap{background:#eee9df;flex:1;min-height:510px;position:relative;overflow:hidden}.canvas-wrap svg{width:100%;height:100%;display:block}.pattern-piece{fill:#f8f5ed;stroke:var(--ink);stroke-width:2px;vector-effect:non-scaling-stroke}.sleeve{fill:#f0eadf}.fold-line{stroke:var(--red);stroke-width:2px;stroke-dasharray:8 5}.guide{stroke:#817d75;stroke-width:1px;stroke-dasharray:4 4}.piece-label{fill:#494b45;letter-spacing:.13em;font:700 8px Arial,sans-serif}.measure-label{fill:var(--red);font:9px Georgia,serif}.notch{fill:var(--red)}.canvas-note{border:1px solid var(--line);background:#fbfaf6ee;gap:10px;max-width:170px;padding:12px 14px;display:flex;position:absolute;bottom:17px;right:17px}.canvas-note>span{color:var(--red)}.canvas-note p{color:#77736b;margin:0;font-size:10px;line-height:1.4}.canvas-note strong{color:var(--ink);font-size:11px;display:block}.pattern-footer{border-top:1px solid var(--line);align-items:center;gap:25px;min-height:48px;padding:0 24px;display:flex}.pattern-footer p{color:#77736b;text-transform:uppercase;align-items:center;gap:7px;margin:0;font-size:9px;display:flex}.legend-line{border-top:2px solid var(--ink);width:22px}.legend-line.dashed{border-top:1px dashed #777}.legend-dot{background:var(--red);border-radius:50%;width:6px;height:6px}.page-note{border-top:1px solid var(--ink);color:#6d6a63;justify-content:space-between;gap:30px;max-width:1440px;margin:auto;padding:25px 4.5vw 38px;display:flex}.page-note span{color:var(--red);font:italic 12px Georgia,serif}.page-note p{max-width:550px;margin:0;font-size:10px;line-height:1.5}@media (width<=980px){.intro{grid-template-columns:1fr;gap:25px}.workspace{grid-template-columns:1fr}.controls,.pattern-card{min-height:auto}.canvas-wrap{height:580px}}@media (width<=620px){.save-state,.version{display:none}.intro{padding-top:42px}h1{font-size:43px}.steps{padding:0 20px}.steps button{text-align:center}.steps button span{margin:0 0 5px;display:block}.workspace{padding:15px 12px 45px}.measure-grid,.choice-grid{grid-template-columns:1fr}.canvas-wrap{height:430px;min-height:430px}.pattern-footer{flex-wrap:wrap;gap:12px;padding-block:12px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.download{border:1px solid var(--ink);background:var(--red);color:#fff;cursor:pointer;text-align:left;grid-column:1/-1;justify-content:space-between;align-items:center;gap:20px;padding:17px 20px;display:flex}.download span{color:#fff;text-transform:none;margin:0;font:17px Georgia,serif}.download small{text-transform:uppercase;letter-spacing:.08em;opacity:.8;font-size:9px}.download:disabled{cursor:not-allowed;filter:grayscale();opacity:.45}.grain-line{stroke:var(--green);stroke-width:1px;stroke-dasharray:5 3}.pattern-piece.back{fill:#f1ece2}.pattern-piece.neckband{fill:#e9eee8}.scale-pill.valid{color:var(--green);border-color:#5f806f}.scale-pill.invalid{border-color:var(--red);color:var(--red)}.status-ok{color:var(--green)}.status-error{color:var(--red)}.validation-card,.issues-card{border:1px solid var(--line);background:#fff;grid-column:1/-1}.validation-card header{border-bottom:1px solid var(--line);justify-content:space-between;padding:13px 16px;font:15px Georgia,serif;display:flex}.validation-card header span{color:var(--green)}.validation-card p{border-bottom:1px solid #eeeae1;align-items:center;gap:11px;margin:0;padding:10px 16px;display:flex}.validation-card p:last-child{border-bottom:0}.validation-card i{border-radius:50%;place-items:center;width:19px;height:19px;font:11px Arial,sans-serif;display:grid}.validation-card .passed i{color:#fff;background:var(--green)}.validation-card .failed i{color:#fff;background:var(--red)}.validation-card p>span{color:var(--ink);margin:0;font-size:10px}.validation-card small{color:#817d75;margin-top:3px;font-size:9px;display:block}.issues-card{padding:7px 15px}.issues-card p{border-bottom:1px solid #eeeae1;grid-template-columns:55px 1fr;gap:9px;margin:0;padding:8px 0;font-size:10px;line-height:1.4;display:grid}.issues-card p:last-child{border-bottom:0}.issues-card strong{text-transform:uppercase;font:700 9px Arial,sans-serif}.issues-card .warning strong{color:#9a651b}.issues-card .error strong{color:var(--red)}.profiles-workspace{flex-direction:column;display:flex}.profile-toolbar{border-bottom:1px solid var(--line);background:#f0ece3;justify-content:space-between;align-items:end;gap:14px;padding:19px 30px;display:flex}.profile-toolbar label{flex:1}.profile-toolbar label>span,.profile-meta label>span{letter-spacing:.1em;text-transform:uppercase;color:#716e67;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.profile-toolbar select,.profile-meta input{border:1px solid var(--line);width:100%;height:39px;color:var(--ink);background:#fff;outline:0;padding:0 11px}.profile-toolbar select:focus,.profile-meta input:focus{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.profile-toolbar>div{gap:6px;display:flex}.profile-toolbar .danger-action{color:var(--red);border-color:#d9a99f}.profile-toolbar .danger-action:disabled{cursor:not-allowed;opacity:.35}.profile-toolbar button,.profile-actions button,.guided-nav button{border:1px solid var(--ink);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;min-height:39px;padding:0 12px;font-size:9px;font-weight:700}.profile-meta{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;padding:18px 30px;display:grid}.profile-meta .notes{grid-column:1/-1}.profile-actions{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:12px 30px;display:flex}.profile-actions>div{display:flex}.profile-actions button{border-color:var(--line);min-height:34px}.mode-switch .selected{color:#fff;border-color:var(--green);background:var(--green)}.profile-notice{color:var(--green);background:#e9eee8;border-bottom:1px solid #ced8d0;margin:0;padding:9px 30px;font-size:10px}.measure-field>span{justify-content:space-between;align-items:center;gap:6px;display:flex}.measure-field>span b{color:#9b978e;letter-spacing:.08em;font-size:7px}.measure-field.warning>div,.guided-input.warning>div{border-color:#b47b29}.measure-field.error>div,.guided-input.error>div{border-color:var(--red)}.measure-field.warning small,.guided-input.warning small{color:#95631c}.measure-field.error small,.guided-input.error small{color:var(--red)}.measurement-guide{border:1px solid var(--line);background:#f4f0e7;grid-template-columns:140px 1fr;gap:18px;margin:0 30px 25px;padding:18px;display:grid}.body-diagram{background:#e8e2d7;place-items:center;min-height:170px;display:grid;position:relative;overflow:hidden}.body-diagram svg{width:122px;height:158px}.body-diagram svg>path:not(.active-measure),.body-diagram svg>circle:first-child{fill:none;stroke:#716e67;stroke-width:1.2px}.body-diagram .active-measure{fill:none;stroke:var(--red);stroke-width:3px;stroke-linecap:round}.body-diagram .measure-point{fill:#fff;stroke:var(--red);stroke-width:2px}.body-diagram>span{color:#fff;background:var(--red);letter-spacing:.08em;text-transform:uppercase;padding:4px 6px;font-size:8px;font-weight:700;position:absolute;bottom:7px;left:8px}.measurement-guide .guide-kicker{color:var(--red);letter-spacing:.14em;text-transform:uppercase;margin:2px 0 7px;font-size:8px;font-weight:700}.measurement-guide h3{margin:0;font:21px Georgia,serif}.measurement-guide h3+p{color:#5e5c56;margin:9px 0;font-size:11px;line-height:1.5}.measurement-guide small{border-top:1px solid var(--line);color:#77736b;padding-top:9px;font-size:9px;line-height:1.45;display:block}.guided-mode{padding-top:22px}.guided-progress{justify-content:space-between;align-items:center;gap:14px;margin:0 30px 17px;display:flex}.guided-progress>span{letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700}.guided-progress>div{gap:4px;display:flex}.guided-progress i{background:var(--line);width:18px;height:3px}.guided-progress i.done{background:var(--red)}.guided-input{margin:0 30px;display:block}.guided-input>span{justify-content:space-between;margin-bottom:7px;font:17px Georgia,serif;display:flex}.guided-input>span b{color:#928e85;letter-spacing:.1em;text-transform:uppercase;font:7px Arial,sans-serif}.guided-input>div{border:1px solid var(--line);background:#fff;align-items:center;height:52px;display:flex}.guided-input input{background:0 0;border:0;outline:0;width:100%;padding:0 14px;font:25px Georgia,serif}.guided-input em{color:#8d8981;padding-right:14px;font:11px Arial,sans-serif}.guided-input small{color:#77736b;margin-top:6px;font-size:9px;display:block}.guided-nav{justify-content:space-between;margin:22px 30px 28px;display:flex}.guided-nav button:last-child{color:#fff;background:var(--ink)}.guided-nav button:disabled{opacity:.3;cursor:not-allowed}.material-workspace{flex-direction:column;display:flex}.material-section{border-bottom:1px solid var(--line);padding:24px 30px}.material-section>header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px;display:flex}.material-section>header>div{align-items:baseline;gap:10px;display:flex}.material-section>header span{color:var(--red);font:italic 12px Georgia,serif}.material-section h3{margin:0;font:20px Georgia,serif}.material-section header small{color:#8d8981;letter-spacing:.08em;text-transform:uppercase;font-size:8px}.preset-field{margin-bottom:14px;display:block}.preset-field>span,.material-grid label>span,.stretch-calculator label>span{color:#716e67;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:8px;font-weight:700;display:block}.preset-field select,.material-grid input,.material-grid select,.stretch-calculator input{border:1px solid var(--line);width:100%;height:39px;color:var(--ink);background:#fff;outline:0;padding:0 10px}.preset-field select:focus,.material-grid input:focus,.material-grid select:focus,.stretch-calculator input:focus{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.material-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.material-grid .wide{grid-column:1/-1}.unit-input{border:1px solid var(--line);background:#fff;align-items:center;display:flex}.unit-input input{border:0;min-width:0}.unit-input em{color:#908c83;white-space:nowrap;padding-right:10px;font:9px Arial,sans-serif}.stretch-lab{background:#f4f0e7}.stretch-calculator{grid-template-columns:1fr auto 1fr 110px;align-items:end;gap:10px;display:grid}.stretch-arrow{color:var(--red);padding-bottom:12px}.stretch-result{color:#fff;background:var(--green);grid-template-columns:1fr auto;align-items:center;min-height:61px;padding:8px 10px;display:grid}.stretch-result small{letter-spacing:.1em;text-transform:uppercase;font-size:7px}.stretch-result strong{font:19px Georgia,serif}.stretch-result button{color:#fff;cursor:pointer;letter-spacing:.08em;text-align:left;text-transform:uppercase;background:0 0;border:0;border-top:1px solid #fff3;grid-column:1/-1;padding:4px 0 0;font-size:7px}.material-grid.compact{margin-top:16px}.check-field{border:1px solid var(--line);cursor:pointer;background:#fff;gap:10px;margin-top:16px;padding:12px;display:flex}.check-field input{accent-color:var(--green)}.check-field strong,.check-field small{display:block}.check-field strong{margin-bottom:3px;font-size:10px}.check-field small{color:#7c786f;font-size:9px}.ease-section .choice-grid{margin-bottom:20px}.ease-grid{grid-template-columns:1fr auto 1fr auto 1fr auto 1.05fr;align-items:end;gap:7px;display:grid}.ease-grid>span{color:#97938a;padding-bottom:13px}.ease-grid label>span{min-height:34px;margin-bottom:5px;font-size:9px;font-weight:700;display:block}.ease-grid label small{color:#969188;margin-top:3px;font-size:7px;font-weight:400;display:block}.ease-grid input{border:0;outline:0;width:100%;min-width:0;height:39px;padding:0 8px;font:16px Georgia,serif}.ease-total{color:#fff;background:var(--red);min-height:39px;padding:6px 9px}.ease-total small,.ease-total strong{display:block}.ease-total small{letter-spacing:.08em;text-transform:uppercase;font-size:7px}.ease-total strong{margin-top:2px;font:15px Georgia,serif}.ease-section .formula-card{margin-top:20px}.formula-card>small{color:#77736b;margin-top:10px;font-size:8px;line-height:1.4;display:block}.wash-test-section{background:#ece8de}.wash-intro{border:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;padding:17px;display:flex}.wash-intro strong{font:16px Georgia,serif}.wash-intro p{color:#77736b;max-width:400px;margin:6px 0 0;font-size:9px;line-height:1.5}.wash-intro button,.wash-nav button,.wash-actions button{border:1px solid var(--ink);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:0 0;min-height:38px;padding:0 13px;font-size:8px;font-weight:700}.wash-intro button{color:#fff;background:var(--ink)}.wash-progress{border:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,1fr);display:grid}.wash-progress button{border:0;border-right:1px solid var(--line);color:#8a867e;cursor:pointer;letter-spacing:.05em;text-transform:uppercase;background:0 0;align-items:center;gap:7px;padding:10px 7px;font-size:8px;font-weight:700;display:flex}.wash-progress button:last-child{border-right:0}.wash-progress button.active{color:var(--red);background:#fff7f3}.wash-progress button.done{color:var(--green)}.wash-progress i{border:1px solid;border-radius:50%;place-items:center;width:19px;height:19px;font:8px Arial,sans-serif;display:grid}.wash-stage{padding-top:16px}.protocol-note{border-left:3px solid var(--green);background:#f7faf5;padding:14px 16px}.protocol-note.amber{background:#fff8ed;border-left-color:#a96b1f}.protocol-note strong{font:14px Georgia,serif}.protocol-note p,.protocol-note ol{color:#6d6a63;margin:7px 0 0;font-size:9px;line-height:1.55}.protocol-note ol{padding-left:17px}.protocol-preset{margin-top:14px;display:block}.protocol-preset>span{color:#716e67;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:8px;font-weight:700;display:block}.protocol-preset select{border:1px solid var(--line);width:100%;height:39px;color:var(--ink);background:#fff;padding:0 10px}.protocol-preset small{color:#837f77;margin-top:5px;font-size:7px;line-height:1.4;display:block}.wash-stage .material-grid{margin-top:15px}.material-grid textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:72px;color:var(--ink);background:#fff;outline:0;padding:10px;font:10px/1.4 Arial,sans-serif}.material-grid textarea:focus{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.wash-help{color:#7d7971;margin:10px 0 0;font-size:8px;line-height:1.45}.wash-settings input:disabled{color:#aaa69d;background:#eeeae2}.wash-results{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:17px;display:grid}.wash-results>div{color:#fff;background:var(--green);padding:13px}.wash-results small,.wash-results strong,.wash-results span{display:block}.wash-results small{letter-spacing:.1em;text-transform:uppercase;opacity:.7;font-size:7px}.wash-results strong{margin:4px 0;font:23px Georgia,serif}.wash-results span{text-transform:uppercase;opacity:.7;font-size:7px}.wash-nav,.wash-actions{justify-content:flex-end;gap:7px;margin-top:16px;display:flex}.wash-nav button:first-child{margin-right:auto}.wash-nav button:last-child,.wash-actions .primary-action{color:#fff;background:var(--ink)}.wash-actions .apply{border-color:var(--red);background:var(--red)}.wash-actions button:disabled{cursor:not-allowed;opacity:.35}.wash-notice{color:var(--green);background:#eff5f0;border:1px solid #c7d5cb;margin:13px 0 0;padding:9px 11px;font-size:9px}.wash-history{border:1px solid var(--line);background:#fff;margin-top:18px}.wash-history>header{border-bottom:1px solid var(--line);letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;padding:10px 12px;font-size:9px;display:flex}.wash-history article{border-bottom:1px solid #eeeae1;grid-template-columns:1fr auto auto;align-items:center;gap:11px;padding:10px 35px 10px 12px;display:grid;position:relative}.wash-history article:last-child{border-bottom:0}.wash-history article strong,.wash-history article small{display:block}.wash-history article strong{font:13px Georgia,serif}.wash-history article small{color:#827e76;text-transform:uppercase;margin-top:3px;font-size:7px}.wash-history article p{gap:5px;margin:0;display:flex}.wash-history article p span{color:var(--green);background:#edf2ed;padding:4px 6px;font-size:8px}.wash-history article>button{border:1px solid var(--ink);cursor:pointer;text-transform:uppercase;background:0 0;padding:5px 8px;font-size:7px;font-weight:700}.wash-history article .remove-test{width:20px;color:var(--red);border:0;padding:2px;font-size:15px;position:absolute;right:8px}.print-panel{border:1px solid var(--ink);background:#f4f0e7;grid-column:1/-1}.print-panel>header{color:#fff;background:var(--ink);justify-content:space-between;align-items:center;padding:15px 17px;display:flex}.print-panel header span,.print-panel header strong{display:block}.print-panel header span{color:#d4cfc5;letter-spacing:.13em;text-transform:uppercase;margin:0 0 4px;font-size:7px}.print-panel header strong{font:17px Georgia,serif}.print-panel header b{color:#e9b264;font:12px Georgia,serif}.print-settings{grid-template-columns:repeat(4,1fr);gap:9px;padding:16px;display:grid}.print-settings label>span{color:#716e67;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:8px;font-weight:700;display:block}.print-settings select{border:1px solid var(--line);width:100%;height:39px;color:var(--ink);background:#fff;padding:0 8px}.print-settings input{border:0;outline:0;width:100%;min-width:0;height:37px;padding:0 8px}.print-check{margin:0 16px}.seam-toggle{background:#f2f7f2;border-color:#bfc9bf;margin-top:8px}.allowance-settings{grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 16px 0;display:grid}.allowance-settings label>span,.allowance-settings>div>span{color:#716e67;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:7px;font-weight:700;display:block}.allowance-settings input{border:0;outline:0;width:100%;min-width:0;height:35px;padding:0 8px}.allowance-settings>div{border:1px solid var(--line);background:#e8e4da;min-height:58px;padding:8px 10px}.allowance-settings>div strong,.allowance-settings>div small{display:block}.allowance-settings>div strong{font:15px Georgia,serif}.allowance-settings>div small{color:#7f7a72;margin-top:3px;font-size:7px}.tile-preview{border:1px solid var(--line);background:#fff;grid-template-columns:minmax(120px,.7fr) 1fr;align-items:center;gap:16px;margin:15px 16px 0;padding:13px;display:grid}.tile-map{background:#ddd8ce;border:1px solid #bbb5aa;gap:2px;padding:5px;display:grid}.tile-map i{color:#8a857b;background:#faf8f2;border:1px solid #d0c9bd;place-items:center;min-height:18px;font:6px Arial,sans-serif;display:grid}.tile-map i.empty{background:0 0;border-color:#0000}.tile-preview p{margin:0}.tile-preview p strong,.tile-preview p span{display:block}.tile-preview p strong{margin-bottom:6px;font:14px Georgia,serif}.tile-preview p span{color:#7d7970;margin-top:3px;font-size:8px}.print-warning{background:#fff8ed;border-left:3px solid #a96b1f;margin:13px 16px;padding:11px 13px}.print-warning strong{font:13px Georgia,serif}.print-warning p{color:#6e685f;margin:4px 0 0;font-size:8px;line-height:1.45}.print-trace{color:var(--green);background:#eff5f0;border:1px solid #c7d5cb;margin:0 16px 12px;padding:9px 11px;font-size:8px}.print-trace strong{letter-spacing:.08em;text-transform:uppercase;margin-right:7px;font-family:Arial,sans-serif;font-size:7px}.pdf-download{border:1px solid var(--red);color:#fff;background:var(--red);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;width:calc(100% - 32px);margin:0 16px 16px;padding:14px;display:flex}.pdf-download span{color:#fff;text-transform:none;margin:0;font:15px Georgia,serif}.pdf-download small{letter-spacing:.08em;text-transform:uppercase;opacity:.8;font-size:7px}.pdf-download:disabled{cursor:not-allowed;filter:grayscale();opacity:.4}.project-hub{max-width:1440px;margin:18px auto 0;padding:0 4.5vw}.project-summary{border:1px solid var(--ink);width:100%;color:var(--ink);cursor:pointer;text-align:left;background:#ece8de;grid-template-columns:1fr auto 24px;align-items:center;gap:22px;padding:16px 18px;display:grid}.project-summary>div span,.project-summary>div strong{display:block}.project-summary>div span{color:var(--red);letter-spacing:.13em;text-transform:uppercase;margin-bottom:4px;font-size:8px;font-weight:700}.project-summary>div strong{font:17px Georgia,serif}.project-summary p{text-align:right;margin:0}.project-summary p span,.project-summary p b{display:block}.project-summary p span{color:#79756d;margin-top:4px;font-size:8px}.project-summary p b{letter-spacing:.06em;text-transform:uppercase;font-size:8px}.project-summary p .dirty{color:#a06418}.project-summary p .saved{color:var(--green)}.project-summary>i{color:var(--red);text-align:center;font:23px Georgia,serif}.project-body{border:1px solid var(--ink);background:#fbfaf6;border-top:0}.empty-project{grid-template-columns:1fr auto;align-items:center;gap:20px;padding:26px;display:grid}.empty-project strong{font:19px Georgia,serif}.empty-project p{color:#716e67;margin:5px 0 0;font-size:10px;line-height:1.5}.empty-project button,.project-toolbar button,.project-actions button{border:1px solid var(--ink);cursor:pointer;letter-spacing:.07em;text-transform:uppercase;background:0 0;min-height:38px;padding:0 13px;font-size:8px;font-weight:700}.empty-project button{color:#fff;background:var(--ink)}.project-toolbar{border-bottom:1px solid var(--line);background:#f0ece3;align-items:end;gap:8px;padding:14px 18px;display:flex}.project-toolbar label{flex:1}.project-toolbar label span,.project-meta label span{color:#716e67;letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;font-size:8px;font-weight:700;display:block}.project-toolbar select,.project-meta input,.project-meta select,.project-meta textarea{border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);background:#fff;outline:0;padding:0 10px}.project-toolbar .danger-action{color:var(--red);border-color:#d3a69e}.project-meta{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;padding:16px 18px;display:grid}.project-meta .wide{grid-column:1/-1}.project-meta textarea{resize:vertical;min-height:66px;padding:9px 10px;font:10px/1.4 Arial,sans-serif}.revision-editor{border-bottom:1px solid var(--line);padding:16px 18px}.revision-editor header{justify-content:space-between;gap:16px;display:flex}.revision-editor header strong,.revision-editor header small{display:block}.revision-editor header strong{font:16px Georgia,serif}.revision-editor header small{color:#77736b;margin-top:3px;font-size:8px}.revision-editor header b{color:var(--green);font:9px monospace}.revision-editor>div{margin-top:10px;display:flex}.revision-editor input{border:1px solid var(--line);outline:0;flex:1;min-width:0;height:40px;padding:0 11px}.revision-editor button{border:1px solid var(--ink);color:#fff;background:var(--ink);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;padding:0 14px;font-size:8px;font-weight:700}.revision-editor button:disabled{cursor:not-allowed;opacity:.3}.revision-history>header{border-bottom:1px solid var(--line);letter-spacing:.09em;text-transform:uppercase;justify-content:space-between;padding:11px 18px;font-size:8px;display:flex}.revision-history article{border-bottom:1px solid #ece7de;align-items:stretch;display:flex}.revision-history article.active{background:#f0f5ef}.revision-select{cursor:pointer;text-align:left;background:0 0;border:0;flex:1;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:10px 18px;display:grid}.revision-select>i{color:#fff;background:#87837b;border-radius:50%;place-items:center;width:28px;height:28px;font:9px Georgia,serif;display:grid}.revision-history article.active .revision-select>i{background:var(--green)}.revision-select span strong,.revision-select span small{display:block}.revision-select span strong{font:13px Georgia,serif}.revision-select span small{color:#817d75;text-transform:uppercase;margin-top:3px;font-size:7px}.revision-select code{color:#77736b;font-size:7px}.load-revision{border:0;border-left:1px solid var(--line);color:var(--green);cursor:pointer;letter-spacing:.07em;text-transform:uppercase;background:0 0;padding:0 13px;font-size:7px;font-weight:700}.project-actions{background:#f0ece3;justify-content:flex-end;gap:7px;padding:12px 18px;display:flex}.project-actions button:disabled{cursor:not-allowed;opacity:.3}.project-notice{color:var(--green);background:#edf4ee;border-top:1px solid #c9d6cc;margin:0;padding:10px 18px;font-size:9px}@media (width<=620px){.profile-toolbar,.profile-actions{flex-direction:column;align-items:stretch}.profile-toolbar>div,.profile-actions>div{grid-template-columns:1fr 1fr;display:grid}.profile-meta{grid-template-columns:1fr}.profile-meta .notes{grid-column:auto}.measurement-guide{grid-template-columns:1fr}.body-diagram{min-height:190px}.material-grid,.stretch-calculator{grid-template-columns:1fr}.material-grid .wide{grid-column:auto}.stretch-arrow{display:none}.ease-grid{grid-template-columns:1fr 1fr}.ease-grid>span{display:none}.wash-intro{flex-direction:column;align-items:stretch}.wash-results{grid-template-columns:1fr}.wash-actions{grid-template-columns:1fr;display:grid}.wash-history article{grid-template-columns:1fr}.print-settings,.allowance-settings{grid-template-columns:1fr 1fr}.tile-preview{grid-template-columns:1fr}.project-summary{grid-template-columns:1fr 24px}.project-summary p{display:none}.empty-project,.project-meta{grid-template-columns:1fr}.project-meta .wide{grid-column:auto}.project-toolbar{flex-direction:column;align-items:stretch}.project-toolbar label,.project-toolbar button{width:100%}.revision-select{grid-template-columns:30px 1fr}.revision-select code{display:none}.load-revision{max-width:82px}}@media (width<=520px){.download{flex-direction:column;align-items:flex-start}}
