/* Configurator composition; palette matches the approved home. */
body.configurator-page #coase-configurator{--cg-bg:#0b1418;--cg-panel:rgba(11,26,34,.76);--cg-panel-strong:rgba(10,22,29,.86);--cg-fg:#dae4e9;--cg-ink:#eef3f5;--cg-muted:#a9bcc5;--cg-line:rgba(182,201,209,.30);--cg-line-strong:rgba(198,214,221,.62);--cg-accent:#e3baa2;--cg-copper:#d58972;--cg-selection:rgba(227,186,162,.10);--cg-selection-strong:rgba(227,186,162,.14);background:var(--cg-bg);color:var(--cg-fg)}
body.configurator-page{background:#0b1418}
body.configurator-page .library-atmosphere{display:none}
body.configurator-page #coase-configurator .cg-wrap{max-width:1320px;margin:auto;padding:48px 32px 80px}
body.configurator-page #coase-configurator .cg-hero{padding:0 0 28px;align-items:flex-start}
body.configurator-page #coase-configurator .cg-hero h1{font:400 clamp(40px,4.3vw,60px)/1.1 Georgia,serif;letter-spacing:-.03em}
body.configurator-page #coase-configurator .cg-hero .cg-small{font-size:16px;line-height:1.6;margin-top:16px;max-width:56ch}
body.configurator-page #coase-configurator .configurator-context{background:transparent;border:0;border-top:1px solid var(--cg-line);padding:20px 0;margin:0 0 28px}
body.configurator-page #coase-configurator .cg-steps{gap:12px;margin:0 0 32px;display:flex}
body.configurator-page #coase-configurator .cg-step{border:1px solid var(--cg-line);border-radius:28px;background:transparent;padding:12px 22px;min-height:48px;font-size:14px}
body.configurator-page #coase-configurator .cg-step[aria-current]{border-color:var(--cg-accent);background:var(--cg-selection)}
body.configurator-page #coase-configurator .cg-main{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start;padding:0}
body.configurator-page #coase-configurator .cg-main>section{min-width:0}
body.configurator-page #coase-configurator .cg-aside{display:flex;flex-direction:column;gap:12px;position:sticky;top:96px;border:0;padding:0;min-width:0;max-height:calc(100vh - 112px);overflow-y:auto;scrollbar-width:thin}
#coase-configurator .rq-form{display:flex;flex-direction:column;gap:20px}
#coase-configurator .rq-section{padding:28px;background:var(--cg-panel);border:1px solid var(--cg-line);border-radius:14px}
#coase-configurator .rq-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:28px}
#coase-configurator .rq-section-head h2{font:400 28px/1.2 Georgia,serif}
#coase-configurator .rq-section-head>span{font:11px/1.4 Consolas,monospace;letter-spacing:.12em;color:var(--cg-muted)}
#coase-configurator .rq-list{display:grid;gap:28px}
#coase-configurator .rq-grid{display:grid;grid-template-columns:1fr;gap:28px}
#coase-configurator .rq-question{min-width:0}
#coase-configurator .rq-question-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:12px;font-size:15px}
#coase-configurator .rq-question-head small{display:block;font-size:12px;color:var(--cg-muted);font-weight:400;margin-top:4px}
body.configurator-page #coase-configurator .rq-tbd{background:none;border:0;border-bottom:1px dashed var(--cg-line);color:var(--cg-muted);padding:4px 0;min-height:32px;font-size:12px;cursor:pointer}
#coase-configurator .rq-tbd[aria-pressed=true]{color:var(--cg-accent);border-color:var(--cg-accent)}
#coase-configurator .rq-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#coase-configurator .rq-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.configurator-page #coase-configurator .rq-chip,body.configurator-page #coase-configurator .rq-card{border:1px solid var(--cg-line);border-radius:10px;background:var(--cg-panel-strong);color:var(--cg-muted);cursor:pointer;text-align:left;min-height:44px;padding:10px 12px;font-size:14px;transition:border-color .15s,background .15s}
body.configurator-page #coase-configurator .rq-card{display:flex;flex-direction:column;gap:6px;padding:16px}
#coase-configurator .rq-card>span{color:var(--cg-fg);font-size:15px}
#coase-configurator .rq-card small{font-size:12px;line-height:1.45;color:var(--cg-muted)}
body.configurator-page #coase-configurator .rq-chip{display:inline-flex;align-items:center;gap:8px}
body.configurator-page #coase-configurator :is(.rq-card,.rq-chip):hover{border-color:var(--cg-line-strong)}
body.configurator-page #coase-configurator :is(.rq-card,.rq-chip)[aria-pressed=true]{border-color:var(--cg-accent);background:var(--cg-selection-strong);color:var(--cg-fg)}
#coase-configurator .rq-tick{width:14px;height:14px;border:1px solid var(--cg-line-strong);border-radius:3px;flex:none}
#coase-configurator [aria-pressed=true]>.rq-tick{background:var(--cg-accent);border-color:var(--cg-accent)}
#coase-configurator [aria-pressed=true]>.rq-tick::after{content:'âœ“';display:block;color:var(--cg-bg);font-size:12px;line-height:12px;text-align:center}
#coase-configurator .rq-is-tbd :is(.rq-cards,.rq-chips){opacity:.75}
#coase-configurator .rq-suggest{border:1px dashed var(--cg-line);border-radius:12px;padding:20px 24px}
#coase-configurator .rq-suggest small{display:block;font:11px/1.5 Consolas,monospace;letter-spacing:.1em;color:var(--cg-muted)}
#coase-configurator .rq-suggest strong{display:block;font:400 24px/1.3 Georgia,serif;margin:8px 0}
#coase-configurator .rq-suggest p{font-size:14px;color:var(--cg-muted)}
#coase-configurator .rq-meter{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--cg-muted)}
#coase-configurator .rq-meter>div{height:4px;background:var(--cg-line);flex:1;overflow:hidden;border-radius:4px}
#coase-configurator .rq-meter i{display:block;height:100%;background:var(--cg-accent);transition:width .25s}
#coase-configurator .rq-sheet{background:var(--cg-panel-strong);color:var(--cg-ink);padding:26px;border-radius:6px;box-shadow:inset 0 0 0 1px var(--cg-line),0 18px 55px rgba(3,10,14,.20);display:flex;flex-direction:column;gap:20px;font-size:12px;flex-shrink:0}
#coase-configurator .rq-sheet-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--cg-line);padding-bottom:12px}
#coase-configurator .rq-sheet-head b{font:400 19px Georgia,serif}
#coase-configurator .rq-sheet-head>span{font:9px/1.5 Consolas,monospace;text-align:right;color:var(--cg-muted)}
#coase-configurator .rq-sheet h3{color:var(--cg-ink);font:400 25px/1.15 Georgia,serif}
body.configurator-page #coase-configurator .rq-sheet section{margin:0;padding:0;border:0}
#coase-configurator .rq-sheet h4{font:400 10px/1.4 Consolas,monospace;letter-spacing:.12em;color:var(--cg-muted);margin:0 0 8px}
#coase-configurator .rq-sheet dl{margin:0}
#coase-configurator .rq-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;border-bottom:1px solid var(--cg-line);padding:7px 0}
#coase-configurator .rq-row dt{color:var(--cg-muted)}
#coase-configurator .rq-row dd{margin:0;font-weight:500;overflow-wrap:anywhere}
#coase-configurator .rq-row dd.rq-empty{font-weight:400;font-style:italic;color:var(--cg-muted)}
#coase-configurator .rq-sheet-foot{font:10px/1.5 Consolas,monospace;color:var(--cg-muted)}
#coase-configurator .rq-structure-summary{border-top:1px solid var(--cg-line);padding-top:12px}
body.configurator-page #coase-configurator .cg-aside .rq-sheet-note{font-size:12px;margin:0;line-height:1.5}
#coase-configurator .rq-flash{animation:rq-flash .8s ease}
@keyframes rq-flash{from{background:rgba(227,186,162,.28)}to{background:transparent}}
@media(max-width:980px){
 body.configurator-page #coase-configurator .cg-main{grid-template-columns:1fr}
 body.configurator-page #coase-configurator .cg-aside{position:static;max-height:none;overflow:visible;max-width:600px;width:100%;margin:auto}
}
@media(max-width:700px){
 body.configurator-page #coase-configurator .cg-wrap{padding:32px 20px 56px}
 #coase-configurator .rq-grid,#coase-configurator .rq-cards,#coase-configurator .rq-chips{grid-template-columns:1fr}
 #coase-configurator .rq-section{padding:20px}
 body.configurator-page #coase-configurator .cg-step{padding:10px 14px}
 body.configurator-page #coase-configurator .cg-steps{flex-wrap:wrap}
}

/* Completion cues and validation stay with the question, before Structure. */
#coase-configurator{--cg-error:#ffaaa5}
#coase-configurator :is(.rq-help,.rq-completion){font-size:14px;line-height:1.6;color:var(--cg-muted)}
#coase-configurator .rq-question{scroll-margin-top:110px;border:1px solid transparent;border-radius:10px;padding:16px;margin:-1px -17px}
#coase-configurator .rq-list{gap:24px}
#coase-configurator .rq-list>.rq-question+.rq-question{border-top-color:var(--cg-line);border-top-left-radius:0;border-top-right-radius:0}
body.configurator-page #coase-configurator :is(.rq-chip,.rq-card){width:100%;height:100%;min-height:52px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
#coase-configurator .rq-question-head>span{font-size:17px;color:var(--cg-fg)}
#coase-configurator .rq-section-head>span{letter-spacing:0;white-space:nowrap;font-size:12px}
#coase-configurator .rq-group-action{display:flex;justify-content:flex-end;border-top:1px solid var(--cg-line);padding-top:16px;margin-top:28px}
body.configurator-page #coase-configurator .rq-group-action button{font-size:15px;min-height:44px}
body.configurator-page #coase-configurator .rq-invalid{border:1px solid var(--cg-error);border-radius:10px;background:#ffaaa509}
#coase-configurator .rq-invalid .rq-question-head>span{color:var(--cg-error)}
body.configurator-page #coase-configurator .rq-invalid :is(.rq-card,.rq-chip){border-color:#aa625c}
body.configurator-page #coase-configurator .rq-field-error{color:var(--cg-error);font-size:14px;line-height:1.5;margin-top:12px}
body.configurator-page #coase-configurator .rq-open-points .rq-field-error{color:var(--cg-error)}
#coase-configurator .rq-question>.rq-field-error{margin:0 0 12px}
#coase-configurator .rq-error-summary{border:1px solid var(--cg-error);border-radius:12px;padding:20px;color:var(--cg-error);scroll-margin-top:110px;background:#ffaaa509}
#coase-configurator .rq-error-summary p{font-size:14px;margin-top:6px;color:var(--cg-fg)}
#coase-configurator .rq-error-summary>div{display:flex;flex-wrap:wrap;gap:0 20px;margin-top:10px}
body.configurator-page #coase-configurator .rq-error-summary button{color:var(--cg-error);text-decoration:underline;text-underline-offset:4px;min-height:44px;font-size:14px}
#coase-configurator #cg-open-confirmation{padding:12px;border:1px solid transparent;border-radius:10px;margin-top:12px}
body.configurator-page #coase-configurator #cg-open-confirmation.rq-invalid{border-color:var(--cg-error)}
body.configurator-page #coase-configurator #cg-open-confirmation .cg-check{margin:0;padding:0;font-size:15px}
#coase-configurator #cg-open-confirmation.rq-invalid input{outline:2px solid var(--cg-error);outline-offset:3px}
body.configurator-page #coase-configurator :is(button,a,input,summary):focus-visible{outline:2px solid var(--cg-accent);outline-offset:4px}
body.configurator-page #coase-configurator .rq-invalid :focus-visible{outline-color:var(--cg-error)}
@media(prefers-reduced-motion:reduce){#coase-configurator .rq-flash{animation:none}#coase-configurator :is(.rq-card,.rq-chip,.rq-meter i){transition:none}}

/* Structure and Export share the same section, card and action language. */
body.configurator-page #coase-configurator :is(.cg-selected,.cg-detail,.rq-export){background:var(--cg-panel);border:1px solid var(--cg-line);border-radius:14px;padding:28px;margin:0 0 20px}
body.configurator-page #coase-configurator .cg-selected h3{font:400 32px/1.2 Georgia,serif;letter-spacing:-.02em}
body.configurator-page #coase-configurator .cg-selected p{font-size:15px;line-height:1.6;color:var(--cg-muted);margin-top:12px}
#coase-configurator .rq-kicker{display:block;font:11px/1.5 Consolas,monospace;color:var(--cg-accent);letter-spacing:.12em;margin-bottom:12px}
#coase-configurator .rq-structure-count{border-top:1px solid var(--cg-line);padding-top:16px;margin-top:20px;color:var(--cg-fg);font-size:15px}
#coase-configurator .rq-structure-count>span:last-child{display:block;color:var(--cg-muted);font-size:13px;margin-top:6px}
body.configurator-page #coase-configurator[data-step="1"] #cg-content>details:not(.cg-detail){margin:0 0 20px;padding:20px 28px;border:1px dashed var(--cg-line);border-radius:12px}
body.configurator-page #coase-configurator :is(.cg-detail,.rq-included)>summary{font:400 24px/1.3 Georgia,serif;color:var(--cg-fg);min-height:44px;padding:0}
body.configurator-page #coase-configurator .cg-detail[open]>summary{margin-bottom:20px}
body.configurator-page #coase-configurator .cg-block-grid{grid-template-columns:1fr;gap:10px}
body.configurator-page #coase-configurator .cg-block{min-height:60px;border:1px solid var(--cg-line);border-radius:10px;background:var(--cg-panel-strong);padding:16px;gap:14px;font-size:15px;line-height:1.4}
body.configurator-page #coase-configurator .cg-block:has(input:checked){border-color:var(--cg-accent);background:var(--cg-selection)}
body.configurator-page #coase-configurator .cg-block small{color:var(--cg-muted);font-size:13px;line-height:1.55;margin-top:6px}
body.configurator-page #coase-configurator .cg-tag{color:var(--cg-accent);font-style:normal;border:1px solid var(--cg-line);padding:3px 6px;border-radius:4px;font-size:10px}
body.configurator-page #coase-configurator .cg-primary{border-radius:28px;background:var(--cg-accent);color:var(--cg-bg);border:1px solid var(--cg-accent);padding:12px 22px;min-height:48px}
body.configurator-page #coase-configurator .cg-primary:hover:not(:disabled){background:var(--cg-ink)}
body.configurator-page #coase-configurator .cg-actions{margin:24px 0;gap:16px 28px}
body.configurator-page #coase-configurator .rq-review-list{margin:0}
#coase-configurator .rq-review-list>div{display:grid;grid-template-columns:minmax(120px,1fr) 1.5fr;gap:24px;padding:12px 0;border-bottom:1px solid var(--cg-line);font-size:15px}
#coase-configurator .rq-review-list>div:last-child{border-bottom:0}
#coase-configurator .rq-review-list dt{color:var(--cg-muted)}
#coase-configurator .rq-review-list dd{margin:0;color:var(--cg-fg)}
#coase-configurator .rq-review-list dd.rq-review-open{color:var(--cg-accent);font-style:italic}
body.configurator-page #coase-configurator .rq-included{margin-top:20px}
body.configurator-page #coase-configurator .rq-open-points{background:var(--cg-selection);border:1px solid var(--cg-accent);border-radius:14px;padding:24px;margin-bottom:20px}
body.configurator-page #coase-configurator .rq-open-points h3{font:400 26px Georgia,serif}
body.configurator-page #coase-configurator .rq-open-points p{font-size:14px;margin-top:12px;color:var(--cg-muted)}
body.configurator-page #coase-configurator .rq-open-points .cg-check{border:0;background:transparent;padding:12px 0;margin-top:8px}
#coase-configurator .rq-export h2{font:400 28px/1.2 Georgia,serif}
#coase-configurator .rq-export p{margin-top:12px;line-height:1.6;color:var(--cg-muted)}
#coase-configurator .rq-export .cg-actions{margin-bottom:0}
@media(max-width:700px){
 body.configurator-page #coase-configurator :is(.cg-selected,.cg-detail,.rq-export){padding:20px}
 body.configurator-page #coase-configurator .cg-selected h3{font-size:27px}
 #coase-configurator .rq-review-list>div{grid-template-columns:1fr;gap:6px}
 body.configurator-page #coase-configurator .cg-block{padding:14px;gap:10px}
}

/* Match inherited controls and shell colors without changing their geometry. */
body.configurator-page{color:#dae4e9}
body.configurator-page header.nav{background:rgba(11,20,24,.9);border-color:rgba(182,201,209,.30);box-shadow:none}
body.configurator-page header.nav :is(.brand,.menu-toggle){color:#eef3f5;border-color:rgba(182,201,209,.30)}
body.configurator-page header.nav .brand span{color:#d58972}
body.configurator-page header.nav nav a{color:#dae4e9;border-color:rgba(182,201,209,.30)}
body.configurator-page header.nav nav a:is(:hover,[aria-current]){color:#e3baa2;border-color:#e3baa2}
body.configurator-page #coase-configurator :is(h1,h2,h3){color:var(--cg-ink)}
body.configurator-page #coase-configurator :is(.cg-step,.cg-defaults,.cg-check,.cg-block,.configurator-context){color:var(--cg-fg)}
body.configurator-page #coase-configurator :is(.cg-field .cg-small,.cg-note li,.configurator-context p){color:var(--cg-muted)}
body.configurator-page #coase-configurator .cg-step[aria-current]{color:var(--cg-accent)}
body.configurator-page #coase-configurator .cg-field select{color:var(--cg-ink);border-bottom-color:var(--cg-line-strong)}
body.configurator-page #coase-configurator .cg-field select:is(:hover,:focus-visible){border-bottom-color:var(--cg-accent)}
body.configurator-page #coase-configurator .cg-field select option{background:var(--cg-bg);color:var(--cg-ink)}
body.configurator-page #coase-configurator input[type=checkbox]{background:var(--cg-panel-strong);border-color:var(--cg-line-strong)}
body.configurator-page #coase-configurator input[type=checkbox]:checked{background:var(--cg-selection);border-color:var(--cg-accent)}
body.configurator-page #coase-configurator .cg-primary:hover:not(:disabled){border-color:var(--cg-ink)}
body.configurator-page #coase-configurator .cg-document{background:var(--cg-panel-strong)}
body.configurator-page #coase-configurator .configurator-context strong{color:var(--cg-ink)}
body.configurator-page #coase-configurator .configurator-context a{color:var(--cg-accent)}
