
    :root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#192c27;background:#f5f5ee}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d49b4a;outline-offset:3px}.shell{max-width:1240px;margin:auto;padding:24px}.top{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #dce1d7;padding-bottom:18px}.brand{font-weight:800;font-size:1.15rem;letter-spacing:-.03em}.brand small{display:block;font-weight:500;color:#64756b;font-size:.76rem;letter-spacing:0}.topnav{display:flex;gap:20px;color:#506459;font-size:.86rem}.topnav strong{color:#173d30}.eyebrow{color:#857348;font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;font-weight:800}h1{font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.05em;margin:8px 0}p{line-height:1.5}.intro{color:#65746b;margin:0 0 24px}.steps{display:flex;gap:8px;margin:22px 0 26px}.step{height:5px;border-radius:99px;background:#d9ded5;flex:1}.step.active{background:#19543e}.grid{display:grid;grid-template-columns:minmax(290px,340px) minmax(0,1fr);gap:20px}.card{background:#fff;border:1px solid #dfe5dc;border-radius:18px;box-shadow:0 8px 28px #23372b0a}.controls,.summary{padding:22px}.card h2{font-size:1.08rem;margin:0 0 18px;letter-spacing:-.02em}.field{margin:0 0 18px}.field label{display:block;font-size:.82rem;font-weight:700;margin-bottom:8px}.field input,.field select{width:100%;padding:12px;border:1px solid #cbd5cb;border-radius:10px;background:#fff;color:#1c3529}.plans{display:grid;grid-template-columns:1fr 1fr;gap:8px}.plan{padding:12px 8px;border:1px solid #cbd5cb;border-radius:10px;background:#fff;text-align:center;font-weight:700;font-size:.82rem;color:#405449}.plan.active{border:2px solid #19543e;background:#e8f2eb;color:#174b36}.hint,.demo{font-size:.75rem;color:#718076}.demo{background:#fff5dc;border:1px solid #ecdcb4;padding:10px 12px;border-radius:9px}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hidden{display:none!important}.map-card{padding:18px}.map-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin:4px 4px 14px}.map-heading h2{margin:0 0 5px}.map-heading p{margin:0;color:#718076;font-size:.8rem}.badge{background:#edf3ea;color:#315c43;border-radius:99px;padding:7px 10px;font-size:.72rem;font-weight:800;white-space:nowrap}.plan-wrap{background:#f7f8f3;border:1px solid #d8dfd4;border-radius:14px;padding:15px;overflow:auto}.floor{position:relative;min-width:580px;height:485px;background:#fbfcf8;border:3px solid #758a76;border-radius:12px;overflow:hidden}.floor:before{content:"";position:absolute;inset:67px 110px 102px 127px;border:1px dashed #d4ded2;border-radius:16px}.landmark{position:absolute;background:#e9eee7;color:#536458;border:1px solid #cbd9cb;border-radius:8px;padding:6px 8px;font-size:.68rem;font-weight:750;text-align:center}.stairs{left:12px;top:16px;width:100px;height:75px;background:repeating-linear-gradient(0deg,#e4e9e3 0 10px,#d3ddd3 10px 12px)}.balcony{left:10px;top:110px;width:88px;height:185px;writing-mode:vertical-rl;transform:rotate(180deg);display:grid;place-items:center;background:#e9f3ee}.entrance{left:13px;bottom:16px;width:95px;background:#d6e9dc;border-color:#8faf96}.washroom{left:125px;bottom:15px;width:94px;height:80px;display:grid;place-items:center}.reception{left:245px;bottom:15px;width:107px;height:70px;display:grid;place-items:center}.printer{left:135px;top:14px;width:117px}.inverter{left:262px;top:14px;width:95px}.center-label{position:absolute;left:40%;top:48%;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#a6b4a7;font-weight:800}.seat{position:absolute;width:53px;height:45px;border:2px solid #4f9f68;border-radius:10px;background:#e7f4e8;color:#165333;font-size:.85rem;font-weight:850;display:grid;place-items:center;box-shadow:0 3px 0 #cee1ce}.seat:hover:not(:disabled){transform:translateY(-2px)}.seat.selected{background:#174f37;border-color:#174f37;color:#fff;box-shadow:0 0 0 4px #bbd8c1}.seat.unavailable{background:#e8ebe7;border-color:#c6d0c7;color:#829187;box-shadow:none;cursor:not-allowed}.seat.pending{background:#fff1da;border-color:#d6a34b;color:#856019;box-shadow:none;cursor:not-allowed}.seat.out{background:#f3e7e3;border-color:#d3a69a;color:#a06456;box-shadow:none;cursor:not-allowed}.seat.current{background:#e5edf8;border-color:#6886b2;color:#385c88;box-shadow:none;cursor:not-allowed}.s1{right:17px;top:38px}.s2{right:17px;top:91px}.s3{right:17px;top:144px}.s4{right:17px;top:197px}.s5{right:17px;top:250px}.s6{right:17px;top:303px}.s7{right:17px;top:356px}.s8{right:78px;bottom:18px}.s9{right:17px;bottom:18px}.s10{left:130px;bottom:130px}.s11{left:130px;bottom:185px}.s12{left:130px;top:169px}.s13{left:130px;top:111px}.s14{left:373px;top:15px}.legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin:15px 3px 2px;font-size:.73rem;color:#5a6b5f}.legend span{display:flex;align-items:center;gap:6px}.swatch{width:13px;height:13px;border-radius:4px;background:#e7f4e8;border:1px solid #4f9f68}.swatch.unavailable{background:#e8ebe7;border-color:#c6d0c7}.swatch.pending{background:#fff1da;border-color:#d6a34b}.swatch.selected{background:#174f37;border-color:#174f37}.swatch.current{background:#e5edf8;border-color:#6886b2}.below{display:grid;grid-template-columns:1fr 340px;gap:20px;margin-top:20px}.note{padding:20px;color:#5d6d62;font-size:.86rem}.note h2{color:#192c27}.summary dl{display:grid;grid-template-columns:1fr auto;gap:9px;margin:0 0 20px;font-size:.84rem}.summary dt{color:#66776b}.summary dd{margin:0;font-weight:750;text-align:right}.total{border-top:1px solid #e2e8e0;padding-top:14px;font-size:1rem}.primary{width:100%;background:#19543e;color:#fff;border:0;border-radius:11px;padding:13px;font-weight:800}.primary:disabled{background:#aab9ae;cursor:not-allowed}.message{margin:11px 0 0;font-size:.77rem;color:#64756b}.mode{display:flex;align-items:center;gap:8px;margin-top:13px;font-size:.78rem;color:#4d6557}.mode input{accent-color:#19543e}.footer{padding:20px 0;text-align:center;color:#8a998e;font-size:.72rem}@media(max-width:850px){.grid,.below{grid-template-columns:1fr}.topnav{display:none}.shell{padding:15px}.map-card{padding:12px}.controls,.summary{padding:18px}.plan-wrap{padding:8px}.floor{height:485px}.below{margin-top:14px}.summary{position:sticky;bottom:8px;z-index:2;box-shadow:0 12px 30px #213d2930}.note{order:2}}@media(max-width:500px){.map-heading{display:block}.badge{display:inline-block;margin-top:9px}.plans{grid-template-columns:1fr 1fr}}
    /* Primary floor-plan revision: preserve the tall room, balcony and stair proportions. */
    .grid{grid-template-columns:minmax(270px,320px) minmax(0,1fr);align-items:start}.map-card{min-width:0}.plan-wrap{padding:12px}.floor{min-width:0;width:100%;height:auto;aspect-ratio:900/1500;background:#fbfdf9;border:0;border-radius:4px;overflow:hidden}.floor:before{display:none}.room{position:absolute;left:32%;top:13%;width:65%;height:84%;border:5px solid #244d40;border-radius:7px;background:#fefffc}.stair-block{position:absolute;left:1%;top:1%;width:28%;height:32%;border:2px solid #abc6b8;border-radius:8px;background:repeating-linear-gradient(0deg,#f8fcf9 0 7%,#bad1c4 7.2% 7.5%)}.balcony-block{position:absolute;left:16%;top:33%;width:13%;height:64%;background:#e3f5ed;border:2px solid #b3d1c0;border-radius:5px}.map-label{position:absolute;z-index:1;color:#3f6455;font-weight:700;font-size:clamp(.42rem,.95vw,.82rem);text-align:center}.stairs-label{left:31%;top:5%;writing-mode:vertical-rl}.balcony-label{left:20%;top:55%;writing-mode:vertical-rl;letter-spacing:.15em}.feature{position:absolute;z-index:1;border:1px solid #a9c4b6;background:#f6fbf7;border-radius:8px;color:#52695c;display:grid;place-items:center;text-align:center;font-size:clamp(.37rem,.8vw,.78rem);padding:2px}.feature.printer{left:36%;top:15%;width:28%;height:6%;background:#fbfaf5;border-color:#d4c59d}.feature.locker{left:50%;top:57%;width:20%;height:5%}.feature.washroom{left:52%;top:67%;width:19%;height:29%;border:3px solid #2b5245;background:#f4faf7;writing-mode:vertical-rl;letter-spacing:.1em}.feature.toilet{left:54%;top:71%;width:6%;height:9%;border-color:#d4c59d}.feature.basin{left:54%;top:86%;width:6%;height:9%;border-color:#d4c59d}.feature.ac{left:76%;top:92%;width:17%;height:3.5%}.entrance-gap{position:absolute;z-index:2;left:31.5%;top:40%;width:2%;height:7%;background:#fbfdf9}.door-label{position:absolute;left:34%;top:40.4%;font-size:clamp(.4rem,.9vw,.75rem);color:#496858;writing-mode:vertical-rl}.lower-door{position:absolute;z-index:2;left:32%;top:65%;width:9%;height:1%;background:#fbfdf9}.seat{z-index:3;width:7.3%;height:6.25%;border-radius:9px;font-size:clamp(.65rem,1.7vw,1.18rem);box-shadow:none}.seat.horizontal{width:10.42%;height:4.38%}.seat.selected{box-shadow:0 0 0 3px #afd5b8}.s1{left:84%;top:15%}.s2{left:84%;top:23%}.s3{left:84%;top:31%}.s4{left:84%;top:39%}.s5{left:84%;top:47%}.s6{left:84%;top:55%}.s7{left:84%;top:63%}.s8{left:84%;top:71%}.s9{left:84%;top:79%}.s10{left:34%;top:53%}.s11{left:34%;top:48%}.s12{left:35%;top:30%}.s13{left:35%;top:22%}.s14{left:65%;top:15%}.chair{position:absolute;width:2.6%;height:2.4%;background:#e7f3eb;border:1px solid #83af96;border-radius:5px;z-index:2}.c1{left:80%;top:17%}.c2{left:80%;top:25%}.c3{left:80%;top:33%}.c4{left:80%;top:41%}.c5{left:80%;top:49%}.c6{left:80%;top:57%}.c7{left:80%;top:65%}.c8{left:80%;top:73%}.c9{left:80%;top:81%}.c10{left:46%;top:54%}.c11{left:46%;top:49%}.c12{left:44%;top:32%}.c13{left:44%;top:24%}.c14{left:69%;top:21%}.seat-list{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:16px}.seat-list button{min-height:44px;border:1px solid #84ad8f;border-radius:9px;background:#ecf7ee;color:#165333;font-weight:800}.seat-list button.selected{background:#174f37;color:#fff}.seat-list button:disabled{background:#e8ebe7;color:#7b8980;border-color:#c6d0c7;cursor:not-allowed}.seat-list button.pending:disabled{background:#fff1da;color:#856019;border-color:#d6a34b}.seat-list button.current:disabled{background:#e5edf8;color:#385c88;border-color:#6886b2}.mobile-list-label{font-size:.78rem;font-weight:750;color:#536d5b;margin:14px 2px 0}@media(max-width:850px){.grid,.below{grid-template-columns:1fr}.floor{height:auto;min-width:0}.map-card{max-width:720px;margin:auto;width:100%}.seat-list{grid-template-columns:repeat(7,1fr)}}@media(max-width:500px){.shell{padding:12px}.map-card{padding:10px}.plan-wrap{padding:4px}.seat{border-width:1.5px;border-radius:5px;font-size:clamp(.55rem,2.7vw,.8rem)}.room{border-width:3px}.feature.washroom{border-width:2px}.seat-list{grid-template-columns:repeat(7,1fr);gap:5px}.seat-list button{font-size:.8rem}.map-heading p{font-size:.73rem}.summary{position:static}}
    /* Keep the stairs and washroom attached to the refined floor plan. */
    .stair-block{left:16%;width:13%}.stairs-label{left:29.8%;top:5%}.feature.washroom{left:32%;top:65%;width:40%;height:32%;border:4px solid var(--forest);background:#f4faf7;writing-mode:initial;display:block;padding:0}.wash-divider{position:absolute;left:50%;top:0;bottom:0;border-left:1px solid #a9c4b6}.washroom-title{position:absolute;right:9%;top:35%;writing-mode:vertical-rl;letter-spacing:.15em;font-weight:800}.feature.toilet{left:55%;top:70%;width:6%;height:9%}.feature.basin{left:55%;top:85%;width:6%;height:9%}.lower-door{left:40%;top:64.8%;width:5%;height:1%;z-index:4;background:#fffefa}@media(max-width:500px){.feature.washroom{border-width:2px}.lower-door{height:.7%}}
    /* Rich Earth & Forest is the default palette. */
    :root{--ivory:#FDFBF7;--forest:#1B4332;--gold:#D4AF37;--charcoal:#212529;color:var(--charcoal);background:var(--ivory)}body{background:var(--ivory)}.brand,.card h2,h1,.note h2{color:var(--charcoal)}.topnav strong,.badge,.plan.active,.eyebrow{color:var(--forest)}.step.active,.seat.selected,.swatch.selected,.seat-list button.selected{background:var(--forest);border-color:var(--forest)}.plan.active{background:#edf4ee;border-color:var(--forest)}.plan:disabled{background:#f5f3ed;color:#8a8d83;border-style:dashed;cursor:not-allowed}.card{background:#fffefb;border-color:#e4dfd3}.plan-wrap{background:var(--ivory);border-color:#e3dccc}.floor,.entrance-gap,.lower-door{background:var(--ivory)}.room{background:#fffefa;border-color:var(--forest)}.seat,.seat-list button,.swatch{background:#edf7ef;border-color:var(--forest);color:var(--forest)}.seat.selected,.seat-list button.selected{color:#fff}.seat.pending,.seat-list button.pending:disabled,.swatch.pending{background:#fff3d8;border-color:#b68b33;color:#684d14}.primary{background:var(--gold);color:#212529}.primary:hover:not(:disabled){background:#c6a12d}.primary:disabled{background:#d6ceb5;color:#5c5a50}.demo{background:#fff7e5;border-color:#dec78b;color:#5d5130}.mode input{accent-color:var(--forest)}button:focus-visible,input:focus-visible,select:focus-visible{outline-color:var(--gold)}
  