/* Shared visual system for the existing, local-only check-in prototype. */
:root{--paper:#faf8f3;--surface:#fff;--band:#e6eeeb;--ink:#203c40;--muted:#526467;--sea:#245b62;--sea-hover:#193f45;--line:#d8dcd6;--gold:#964f32;--gold-soft:#964f32;--danger:#a2382b;--band-ink:#203c40;--warn:#775322;--field-bg:#fff;color-scheme:light}
body{background:#faf8f3;color:#203c40}.site-header{background:rgba(250,248,243,.97);border-bottom:1px solid #d8dcd6;backdrop-filter:blur(12px)}h1,h2,h3{font-weight:400;letter-spacing:-.025em}h1{font-size:clamp(2.4rem,5vw,4.3rem);max-width:17ch}h1 em,h2 em{color:#964f32}.wrap.narrow{max-width:1000px}.brand b{font-weight:400;letter-spacing:.17em}.brand span{font-size:.64rem;letter-spacing:.15em}.role-nav{display:flex;gap:26px;border-bottom:1px solid #d8dcd6;margin-bottom:24px;padding:24px 0 12px}.role-nav a{font-size:.98rem;padding:7px 0;border-bottom:2px solid transparent}.role-nav a:hover{border-color:#964f32}.proto{background:#eee9df;border:1px solid #d8dcd6;border-left:3px solid #964f32;box-shadow:none;padding:18px 22px;font-size:.9rem;display:flex;align-items:center;justify-content:space-between;gap:24px}.proto p{font-size:.85rem;max-width:67ch}.proto .textlink{white-space:normal;text-align:left;line-height:1.5}.ci-head{padding-top:45px;padding-bottom:30px}.ci-head>.lead{font-size:1.05rem;max-width:60ch}.ci-head .eyebrow{color:#526467;font-size:.75rem;letter-spacing:0;text-transform:none}.horizon{display:none}.panel{background:#fff;border:1px solid #d8dcd6;border-radius:2px;box-shadow:none;padding:28px}.panel h2{font-size:2rem;margin-bottom:22px}.panel h3{font-size:1.25rem}.btn{border-radius:2px;letter-spacing:0;text-transform:none;min-height:48px;font-weight:500}.btn.primary{background:#245b62;color:#fff}.btn.primary:hover{background:#193f45}.btn.ghost{color:#245b62;border-color:#245b62}.field label{font-size:.88rem;letter-spacing:0;text-transform:none}.field input,.field select,.field textarea{border:1px solid #d8dcd6;min-height:48px;background:#fff;border-radius:2px}.steps{border-top:1px solid #d8dcd6;border-bottom:1px solid #d8dcd6;background:none;padding-block:20px}.steps li{font-size:.88rem;text-transform:none;letter-spacing:0}.steps li::before{background:#eee9df;color:#203c40;border:0}.steps li[aria-current]::before{background:#245b62;color:#fff}.apts{gap:12px}.apt{border:1px solid #d8dcd6;border-radius:2px;background:#faf8f3}.apt.active{background:#e6eeeb;border-color:#245b62}.host{background:#e6eeeb;color:#203c40;border-block:1px solid #d8dcd6;margin-top:0;padding-block:40px}.host h2 em{color:#964f32}.host .eyebrow{color:#526467}.host .panel{background:#fff;border-color:#d8dcd6;color:#203c40}.host input,.host textarea,.host select{background:#faf8f3;color:#203c40;border-color:#d8dcd6}.host .field>label,.host .hint,.host .note{color:#526467}.host .btn.primary{background:#245b62;color:#fff}.host .btn.primary:hover{background:#193f45}.host .btn.ghost{color:#245b62;border-color:#245b62}.host-grid{gap:20px}.host .codes{font-size:.83rem}.host .codes input{max-width:100%;min-width:0}.codes>span{overflow-wrap:anywhere}.report-wrap{max-width:100%;overflow:auto}.summary dd{overflow-wrap:anywhere}.xml{background:#faf8f3!important;color:#203c40;border:1px solid #d8dcd6;max-width:100%;overflow:auto}.msgbox{background:#e6eeeb;border:1px solid #d8dcd6}.msgbox textarea{background:#fff;max-width:100%;overflow-wrap:anywhere}.legal{background:#faf8f3;font-size:.84rem}.pending{color:#775322}.steps li.done::before{color:#fff;background:#245b62}.skip-ci{position:fixed;top:12px;left:20px;z-index:100;background:#faf8f3;padding:12px 18px;transform:translateY(-200%)}.skip-ci:focus{transform:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #964f32;outline-offset:4px}main{padding-bottom:40px}.host h2{font-size:2.3rem}.howto{font-size:.87rem}.label{text-transform:none;letter-spacing:0}.footer{border-color:#d8dcd6}.verdict{background:#e6eeeb;color:#203c40}.verdict.bad{background:#f6e5df;color:#8b3025}.steps li{min-width:0}.steps span{overflow-wrap:anywhere}.head-actions{gap:16px}
@media(max-width:46em){.wrap.narrow{width:calc(100% - 36px);margin-inline:auto}.proto{flex-direction:column;align-items:start;gap:12px}.ci-head{padding-block:30px 20px}.panel{padding:22px 18px}.host h2{font-size:1.9rem}.role-nav{padding-top:18px}.brand span{font-size:.55rem}.head-actions{gap:10px}.head-actions .back{font-size:.83rem}.host-grid{grid-template-columns:minmax(0,1fr)}.apts{grid-template-columns:minmax(0,1fr)}.apt{padding:14px 16px}.apt input{flex-shrink:0}.codes{grid-template-columns:minmax(70px,1fr) minmax(60px,1fr) 46px 32px!important}.codes input{width:100%;padding-inline:5px;font-size:.82rem}.steps{gap:6px}.steps li{font-size:.79rem}.steps li::before{width:27px;height:27px}.panel h2{font-size:1.6rem}.ci-head .lead{font-size:.96rem}.host .note{font-size:.8rem}.summary{grid-template-columns:minmax(80px,.7fr) minmax(0,1.3fr)}.site-header>.wrap{width:calc(100% - 30px)}.brand b{font-size:1.1rem}.lang-select{font-size:.8rem;max-width:110px}}
@media(max-width:46em){.steps li::before{width:100%;height:2px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
