:root{--paper:#f3e9d2;--paper-deep:#eaddbd;--card:#fbf5e6;--wood-dark:#4a3220;--wood-mid:#6f4a2c;--wood-soft:#8a6238;--ink:#3a2c1b;--ink-soft:#6b5740;--line:#d8c69e;--brass:#c0883a;--brass-deep:#a06d27;--good:#4f8a4a;--radius:14px;--shadow-card:0 1px 0 #fff8 inset,0 6px 18px -10px #5c3a1e55}@theme inline{--color-background:var(--paper);--color-foreground:var(--ink);--color-accent:var(--brass);--font-body:var(--font-nunito),"Nunito",system-ui,sans-serif;--font-display:var(--font-bitter),"Bitter",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--ink);background:radial-gradient(1200px 500px at 50% -200px,#fcf6e6 0,transparent 70%),var(--paper);line-height:1.55;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(#0000000a 1px,transparent 0);background-size:4px 4px;opacity:.5}body>*{position:relative;z-index:1}a{color:var(--brass-deep);text-decoration:none}h1,h2,h3{font-family:var(--font-display);line-height:1.15;letter-spacing:0}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid #c0883a66;outline-offset:3px}.font-body{font-family:var(--font-body)}.font-display{font-family:var(--font-display)}.tabular-nums{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ctl-page{max-width:880px;margin:0 auto;padding:0 16px 64px}.ctl-topbar{position:sticky;top:0;z-index:40;background:linear-gradient(180deg,#4a3220,#3a2718);color:#f3e6c8;box-shadow:0 6px 16px -10px #000a}.ctl-topbar-inner{max-width:1080px;margin:0 auto;width:100%;min-height:64px;display:flex;align-items:center;gap:14px;padding:10px 16px}.ctl-brand,.ctl-footer-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:800;font-size:18px;color:#f3e6c8}.ctl-brand small{display:block;font-family:var(--font-body);font-size:11px;font-weight:700;color:#d8c49a}.ctl-brand-mark{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(160deg,var(--brass),var(--brass-deep));color:#2c1d0e;box-shadow:0 2px 0 #0004,inset 0 0 0 2px #ffffff22}.ctl-nav{margin-left:auto;display:flex;gap:4px}.ctl-mobile-nav a,.ctl-nav a,.ctl-navgroup__btn{color:#e9d8b3;font-size:13.5px;font-weight:800;padding:8px 11px;border-radius:9px}@media (hover:hover) and (pointer:fine){.ctl-dropdown a:hover,.ctl-mobile-nav a:hover,.ctl-nav a:hover,.ctl-navgroup__btn:hover{background:#ffffff18;color:#fff}}.ctl-dropdown a,.ctl-nav a,.ctl-navgroup__btn{transition:transform .16s ease-out}.ctl-dropdown a:active,.ctl-nav a:active,.ctl-navgroup__btn:active{transform:scale(.97)}.ctl-navgroup{position:relative}.ctl-navgroup__btn{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;font-family:inherit;cursor:pointer}.ctl-nav-chevron{opacity:.7}.ctl-navgroup__btn[aria-expanded=true]{background:#ffffff18;color:#fff}.ctl-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:50;min-width:200px;display:grid;gap:2px;padding:6px;background:linear-gradient(180deg,#4a3220,#3a2718);border:1px solid #ffffff26;border-radius:12px;box-shadow:0 10px 24px -14px #000c;transform-origin:top left;animation:ctl-dropdown-in .18s ease-out}.ctl-dropdown a{display:block;white-space:nowrap}@keyframes ctl-dropdown-in{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:none}}.ctl-menu-btn{display:none;margin-left:auto;border:0;background:transparent;color:#f3e6c8;padding:8px;cursor:pointer}.ctl-mobile-nav{display:none;border-top:1px solid #ffffff18;padding:8px 16px 14px}.ctl-mobile-group>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;cursor:pointer;color:#e9d8b3;font-size:13.5px;font-weight:800;padding:8px 11px;border-radius:9px}.ctl-mobile-group>summary::-webkit-details-marker{display:none}.ctl-mobile-group[open]>summary .ctl-nav-chevron{transform:rotate(180deg)}.ctl-mobile-group__items{display:grid;padding-left:10px;border-left:1px solid #ffffff26;margin:2px 0 6px 11px}.ctl-hero{padding:30px 0 8px;text-align:center}.ctl-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;color:var(--brass-deep);background:#fff7e6;border:1px solid var(--line);padding:5px 12px;border-radius:999px}.ctl-eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px #4f8a4a33}.ctl-hero h1{font-size:clamp(2rem,6vw,3.15rem);font-weight:800;margin:16px 0 8px}.ctl-hero h1 span{color:var(--wood-mid)}.ctl-hero__media{margin:18px auto 0;max-width:560px}.ctl-hero__media img{display:block;width:auto;max-width:100%;height:auto;max-height:200px;margin:0 auto;object-fit:cover;border-radius:12px;border:1px solid var(--line);box-shadow:var(--shadow-card)}.ctl-lead{margin:0 auto;max-width:620px;color:var(--ink-soft);font-size:1rem;font-weight:700}.ctl-updated{display:inline-flex;margin:16px auto 0;color:var(--ink-soft);background:#fff7e6;border:1px solid var(--line);border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:800}.ctl-tool-stack{display:grid;gap:28px}.ctl-finder{margin:22px auto 0;width:100%;max-width:640px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-card);padding:14px}.ctl-search-row{display:flex;align-items:center;gap:10px;background:#fff;border:2px solid var(--line);border-radius:13px;padding:4px 6px 4px 14px;color:var(--wood-soft)}.ctl-search-row:focus-within{border-color:var(--brass);box-shadow:0 0 0 4px #c0883a22}.ctl-search-row input{flex:1 1;min-width:0;border:0;outline:0;background:transparent;padding:12px 0;color:var(--ink);font-size:17px;font-weight:800}.ctl-search-row input::placeholder{color:#b29a72;font-weight:700}.ctl-clear{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:9px;background:var(--paper-deep);color:var(--ink-soft);cursor:pointer;font-weight:900}.ctl-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:12px}.ctl-chip{display:inline-flex;align-items:center;gap:7px;min-height:36px;border:1px solid var(--line);background:#fff8ea;color:var(--ink);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:800;cursor:pointer}.ctl-chip span{width:11px;height:11px;border-radius:3px;box-shadow:inset 0 0 0 1px #00000018}.ctl-recent{background:#f6ead0}.ctl-results{display:grid;gap:8px;margin-top:12px}.ctl-result{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px;text-align:left}.ctl-code-badge{width:54px;height:54px;display:grid;place-items:center;border-radius:11px;color:#fff;font-family:var(--font-display);font-size:20px;font-weight:800;box-shadow:0 2px 0 #0003,inset 0 0 0 2px #ffffff33}.ctl-result h3{margin:0;font-size:17px;font-weight:800}.ctl-result p,.ctl-result small{display:flex;align-items:center;gap:6px;margin:2px 0 0;color:var(--ink-soft);font-size:13px;font-weight:700}.ctl-result p span{width:11px;height:11px;border-radius:3px}.ctl-build-list button,.ctl-option-list button,.ctl-result button,.ctl-share-actions button{border:1px solid var(--line);background:var(--paper);color:var(--wood-mid);border-radius:9px;padding:8px 11px;font-size:12.5px;font-weight:900;cursor:pointer}.ctl-finder-hint,.ctl-no-result{margin:11px 0 0;text-align:center;color:#9a835f;font-size:12.5px;font-weight:700}.ctl-section{margin-top:40px}.ctl-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}.ctl-checklist h2,.ctl-planner h2,.ctl-section h2,.ctl-share h2{margin:0;color:var(--ink);font-size:24px;font-weight:800}.ctl-checklist p,.ctl-method p,.ctl-planner p,.ctl-section-head p,.ctl-section>p,.ctl-share p{margin:3px 0 0;color:var(--ink-soft);font-size:14px;font-weight:700}.ctl-map{display:grid;gap:12px}.ctl-map-tabs{justify-self:end;display:inline-flex;gap:6px;background:var(--paper-deep);padding:4px;border:1px solid var(--line);border-radius:11px}.ctl-map-tabs button{border:0;background:transparent;color:var(--ink-soft);border-radius:8px;padding:8px 14px;font-size:13.5px;font-weight:900;cursor:pointer}.ctl-map-tabs button.is-active{background:#fff;color:var(--ink);box-shadow:0 2px 6px -3px #0003}.ctl-shelf-unit{background:linear-gradient(180deg,#6f4a2c,#5a3a21);border-radius:var(--radius);padding:12px 12px 14px;box-shadow:0 10px 26px -16px #2c1c0e,0 0 0 1px #00000022}.ctl-shelf-label{margin:2px 2px 9px;color:#e9cf9f;font-family:var(--font-display);font-size:12px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.ctl-shelf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:9px}.ctl-aisle-tile{position:relative;overflow:hidden;min-height:66px;border:0;border-radius:9px;background:var(--card);box-shadow:0 3px 0 #0003;cursor:pointer;text-align:left;padding:10px 11px 11px 15px}.ctl-aisle-tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:var(--spine,#999)}.ctl-aisle-tile.is-highlighted{box-shadow:0 0 0 3px var(--brass),0 8px 18px -6px #0007;transform:translateY(-2px)}.ctl-aisle-code{display:block;color:var(--ink);font-family:var(--font-display);font-size:16px;font-weight:800}.ctl-aisle-name{color:var(--ink-soft);font-size:12.5px;font-weight:800}.ctl-shelf-board{height:10px;margin:0 2px;border-radius:0 0 6px 6px;background:linear-gradient(180deg,#3a2718,#2c1c10);box-shadow:0 4px 8px -4px #000a}.ctl-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card)}.ctl-table{width:100%;border-collapse:collapse;min-width:680px}.ctl-table td,.ctl-table th{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}.ctl-table th{background:#fff8ea;color:var(--wood-mid);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.ctl-swatch{display:inline-flex;align-items:center;gap:8px}.ctl-swatch:before{content:"";width:14px;height:14px;border-radius:4px;background:var(--swatch);box-shadow:inset 0 0 0 1px #00000022}.ctl-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.ctl-card,.ctl-checklist,.ctl-faq details,.ctl-method,.ctl-panel,.ctl-planner{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow-card)}.ctl-card h3,.ctl-panel h3{margin:0;font-size:17px;font-weight:800}.ctl-card p,.ctl-card span,.ctl-panel p{display:block;margin:6px 0 0;color:var(--ink-soft);font-size:13px;font-weight:700}.ctl-card span{color:var(--brass-deep);font-weight:900}.ctl-milestone{max-width:640px;margin:18px auto 0;display:flex;gap:14px;align-items:center;background:linear-gradient(180deg,#fff7e3,#fbeecb);border:1px solid var(--line);border-radius:14px;padding:13px 15px}.ctl-milestone strong{font-family:var(--font-display)}.ctl-bar,.ctl-progress{height:10px;overflow:hidden;border-radius:999px;background:#e7d6ad}.ctl-bar span,.ctl-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brass),var(--brass-deep))}.ctl-video{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--wood-dark);aspect-ratio:16/9}.ctl-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.ctl-faq{display:grid;gap:12px}.ctl-faq details{margin-top:10px}.ctl-faq summary{cursor:pointer;color:var(--ink);font-weight:900}.ctl-faq p{margin:8px 0 0;color:var(--ink-soft);font-size:14px;font-weight:700}.ctl-planner-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.ctl-planner h3{margin:0 0 10px;font-size:16px}.ctl-build-list,.ctl-check-grid,.ctl-option-list{display:grid;gap:8px}.ctl-option-list button{text-align:left;background:#fff8ea}.ctl-option-list span{display:block;margin-top:2px;color:var(--ink-soft);font-size:12px}.ctl-build-list{padding-left:0;list-style:none}.ctl-build-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 10px;font-weight:800}.ctl-build-summary{display:grid;gap:6px;margin-top:12px;color:var(--ink-soft);font-size:13px;font-weight:800}.ctl-build-summary code{overflow-wrap:anywhere;color:var(--wood-mid)}.ctl-progress{margin:12px 0 8px}.ctl-check-grid{margin-top:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.ctl-check-grid label{display:flex;align-items:center;gap:10px;background:#fff8ea;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-weight:800}.ctl-share{margin-top:40px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:linear-gradient(160deg,#4a3220,#3a2718);color:#f3e6c8;border-radius:18px;padding:22px}.ctl-share h2{color:#fff;font-size:20px}.ctl-share p{color:#d8c49a}.ctl-share>div:first-child{flex:1 1;min-width:220px}.ctl-share-actions{display:flex;flex-wrap:wrap;gap:9px}.ctl-share-actions button{background:linear-gradient(180deg,var(--brass),var(--brass-deep));color:#2c1d0e;box-shadow:0 3px 0 #0004}.ctl-footer{margin-top:16px;background:linear-gradient(180deg,#4a3220,#3a2718);color:#d8c49a}.ctl-footer-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:28px;padding:34px 16px}.ctl-footer p{max-width:32rem;color:#d8c49a;font-size:14px;font-weight:700}.ctl-footer h2{margin:0 0 10px;color:#fff;font-size:14px}.ctl-footer nav{display:grid;align-content:start;gap:8px}.ctl-footer a{color:#e9d8b3;font-size:14px;font-weight:800}.ctl-footer-bottom{max-width:1080px;margin:0 auto;border-top:1px solid #ffffff18;padding:16px;color:#d8c49a;font-size:13px;font-weight:700}@media (max-width:760px){.ctl-nav{display:none}.ctl-menu-btn{display:inline-grid}.ctl-mobile-nav{display:grid}.ctl-section-head{display:block}.ctl-result{grid-template-columns:auto 1fr}.ctl-result button{grid-column:1/-1;min-height:42px}.ctl-footer-inner,.ctl-planner-grid{grid-template-columns:1fr}.ctl-map-tabs{justify-self:stretch}.ctl-map-tabs button{flex:1 1}}html>iframe[id^=container-]{top:76px!important;bottom:auto!important;margin-block:0!important}html[data-nav-open]>iframe[id^=container-]{top:380px!important}@media (max-width:760px){html[data-nav-open]>iframe[id^=container-]{top:300px!important}.ctl-mobile-nav{max-height:calc(300px - 64px - 12px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:16px}}@media (prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}