
:root{color-scheme:light;background:#f3f5f4;color:#172b29}
body{background:#f3f5f4;color:#172b29}
.top{max-width:none;height:76px;margin:0;padding:0 max(24px,calc((100vw - 1190px)/2));background:#112026;border:0;color:#fff}
.top .brand{color:#fff}.top>span{color:#a9c0b8}
.top .mine{color:#fff;border-color:#45605a;margin-left:auto}.top .mine:hover{border-color:#12a66f}
.layout{margin:60px auto 90px;align-items:start}
.eyebrow{color:#0e8a5b;font-weight:700;letter-spacing:.06em;font-size:11px}
h1{color:#172b29}h1>span{color:#12a66f}.lead{color:#5a6b64;font-size:15px}
.steps li{color:#8a9893;transition:color .3s}.steps li>b{border-color:#cbd7d1;color:#7d8b85;background:transparent;transition:background .3s,border-color .3s,color .3s}
.steps small{color:#93a19b}.steps li.active{color:#123d31}.steps li.active>b{background:#12a66f;border-color:#12a66f;color:#fff;box-shadow:0 6px 16px rgba(18,166,111,.28)}
.promise{border-color:#dbe4df;color:#5d6e67}.promise strong{color:#172b29}.promise>span{color:#12a66f}
.demo-note{color:#93a19b}
.card{background:#fff;border:1px solid #e3eae6;border-radius:22px;padding:36px;box-shadow:0 24px 60px rgba(23,43,41,.07);transition:box-shadow .3s,transform .3s}
.card:hover{box-shadow:0 28px 70px rgba(23,43,41,.1)}
.section-label{color:#0e8a5b;font-weight:700;letter-spacing:.04em}
h2{color:#172b29}.help{color:#5d6e67}
label{color:#40534c;font-weight:600}
input,select{background:#fff;color:#172b29;border:1px solid #cfdcd5;border-radius:12px}
input:focus,select:focus{border-color:#12a66f;outline:0;box-shadow:0 0 0 4px rgba(18,166,111,.12)}
input::placeholder{color:#9aa8a2}input[readonly]{cursor:pointer;background:#fbfcfb}
.address-row button,.primary{border-radius:12px;min-height:52px}
.try-row{border-top-color:#e6ece9;color:#7d8b85}.try-row button{color:#0e8a5b;font-weight:600}
.credit{background:#eef7f2;border-color:#d3e8dc;border-radius:14px}.credit p{color:#5d6e67}.credit-icon{color:#12a66f}
.hint{color:#7d8b85}
.floor{border-bottom-color:#e6ece9}.floor small{color:#7d8b85}.floor-heading span{color:#7d8b85}.floor-heading h3{color:#172b29}
.floor>input[type=checkbox]{accent-color:#12a66f}
.totals{background:#eef7f2;color:#24453a;border-left-color:#12a66f;border-radius:4px 12px 12px 4px}
#message,#address-state{color:#40534c}#message:not(:empty){border-color:#cfe3d7;background:#f7faf8}
.actions a{color:#0e8a5b;font-weight:600}
footer{color:#93a19b}
.search-top{color:#172b29}.search-top button{color:#5d6e67}
#postcode-layer{background:#fff;border:1px solid #e3eae6;border-radius:16px;padding:4px 14px 14px;box-shadow:0 18px 40px rgba(23,43,41,.08)}

.acct{background:#f7faf8;border-color:#dae5de;color:#435b4e;border-radius:14px}.acct b{color:#0e8a5b}
.acct button,.acct .btn-oauth{background:#fff;border-color:#cadfd1;color:#176345}.acct button.buy{color:#0e8a5b}.acct .mock{color:#7d8b85}
.acct input{background:#fff}
.bld{color:#172b29;gap:1px;background:#e0e8e3;border:1px solid #e0e8e3;border-radius:14px;overflow:hidden}
.bld div{background:#f7faf8;border:0;border-radius:0;padding:16px}.bld b{color:#708076}
.prog{background:#f7faf8;border-color:#dae5de;border-radius:14px}.prog li{color:#40534c}.prog li b{color:#12a66f}.prog .state{color:#5d6e67}
.done a.sec{color:#0e8a5b}.done .sum{color:#40534c}
.floor .badge{background:#eef4f0;color:#4f6b5d}
.planbox{background:#f7faf8;border-color:#bfd6c8;border-radius:14px}.planhead b{color:#172b29}.planhead span{color:#5d6e67;border-color:#cfdcd5}
.planbox .help a{color:#0e8a5b}.manual summary{color:#5d6e67}

@media(prefers-reduced-motion:no-preference){.card{animation:lightIn .55s cubic-bezier(.2,.8,.2,1) both}@keyframes lightIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}}

.mine-wrap h1{color:#172b29}.who{color:#40534c}.who b{color:#0e8a5b}.who a,.who button{color:#176345;border-color:#cadfd1;background:#fff}
.who a.login{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;font-size:14px;font-weight:700;border-color:#12a66f;color:#0e8a5b;border-radius:10px}
.job{background:#fff;border-color:#e3eae6;border-radius:18px;box-shadow:0 14px 40px rgba(23,43,41,.06)}
.job .addr{color:#172b29}.job .meta{color:#7d8b85}.job .ttl{color:#40534c}
.cts span{background:#fff}.cts .p{color:#0e8a5b;border-color:#bfe3cf}.cts .f{color:#a06a14;border-color:#ecd7a8}.cts .r{color:#c53030;border-color:#f1c4c4}.cts .u{color:#6b7c75;background:#fff;border-color:#d6e0db}
.acts a{color:#176345;border-color:#cadfd1;background:#fff}.acts a.main{background:#12a66f;border-color:#12a66f;color:#fff}
.state{background:#eef4f0;color:#4f6b5d}
.empty{background:#fff;border-color:#cfdcd5;color:#5d6e67}
.note{color:#7d8b85}
@media(max-width:700px){.top{height:64px;padding:0 18px}.card{padding:24px 20px;border-radius:16px}}


@media(max-width:700px){.try-row button.ex,.ex{display:inline-block;padding:11px 3px}.hint,#next-hint{font-size:12px}.top .mine,.top>span{font-size:12px}.eyebrow,.section-label{font-size:11px}.planbox .help a,.actions a{display:inline-block;padding:10px 0}.top .mine{padding:10px 14px}.acct button,.acct .btn-oauth,.buy,#logout{min-height:40px}.manual summary,details summary{padding:10px 0}}


#postcode-layer{margin-top:4px;background:none;border:0;padding:0;box-shadow:none}
#postcode-frame{height:470px;border:2px solid #12a66f;border-radius:14px;overflow:hidden;background:#fff}
.pc-wait{margin:0;padding:24px 20px;font-size:15px;color:#5d6e67}
#search-help{font-size:15px;color:#40534c;margin-bottom:16px}#search-help b{color:#172b29}
.lookbox{scroll-margin-top:18px;margin-top:6px;border:2px solid;border-radius:16px;padding:20px 20px 18px;word-break:keep-all}
.lookbox .lb-t{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;line-height:1.35;letter-spacing:-.5px}
.lookbox p{margin:10px 0 0;font-size:15px;line-height:1.7}
.lookbox.busy{background:#f2f8f5;border-color:#9fd4bb;color:#14533c}
.lookbox.ok{background:#e9f7f0;border-color:#12a66f;color:#0b5a3d}
.lookbox.err{background:#fff4f2;border-color:#e2685a;color:#9b2c20}
.lookbox .ic{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:19px;color:#fff;background:#12a66f}
.lookbox.err .ic{background:#d9534f}
.lookbox .spin,.primary .spin{flex:none;display:inline-block;width:28px;height:28px;border:4px solid #12a66f;border-right-color:transparent;border-radius:50%;animation:sp .8s linear infinite}
.primary .spin{width:20px;height:20px;border-width:3px;border-color:#fff;border-right-color:transparent}
.lookbox .lb-btn{margin-top:14px;width:100%;min-height:52px;border-radius:12px;border:0;background:#172b29;color:#fff;font-size:16px;font-weight:700}
.lookbox.ok .lb-btn{background:#fff;color:#0b5a3d;border:1px solid #9fd4bb;min-height:46px;font-size:14px}
#next-hint{font-size:14px;color:#40534c;margin-top:14px;line-height:1.6;word-break:keep-all}
#next-hint.warn{background:#fff8e8;border:2px solid #f0c36d;color:#7a4b00;border-radius:12px;padding:14px;font-size:15px;font-weight:700}
#message:not(:empty){font-size:16px;font-weight:700;line-height:1.6;padding:16px 18px;border:2px solid #f0c36d;background:#fff8e8;color:#7a4b00;border-radius:12px;margin-top:16px}
#message.err:not(:empty){border-color:#e2685a;background:#fff4f2;color:#9b2c20}
#continue:disabled{opacity:1;background:#0e8a5b;cursor:progress}
@media(max-width:700px){#postcode-frame{height:440px}.lookbox .lb-t{font-size:19px}}

.top .brand{white-space:nowrap;flex:none}
@media(max-width:420px){.top .brand{font-size:20px}.top .brand .brand-mark{margin-right:.28em!important}}
