:root{color:#f2f0e9;background:#161714;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--ink: #f2f0e9;--muted: #8e9188;--line: #353730;--surface: #1d1f1b;--accent: #e7a941}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100svh;background:#161714}button,input{font:inherit}.shell{width:min(1180px,calc(100% - 48px));min-height:100svh;margin:0 auto;display:flex;flex-direction:column}.topline{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);animation:enter .5s ease both}.brand{color:var(--ink);text-decoration:none;font-size:20px;font-weight:600;letter-spacing:-.04em}.brand span{color:var(--muted);font-weight:400}.runtime-state{display:flex;align-items:center;gap:10px;color:var(--muted);font:12px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}.runtime-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 #e7a94159;animation:loading 1.4s infinite}.runtime-dot.ready{background:#8fc77a;animation:none}.runtime-dot.error{background:#df6c5f;animation:none}main{flex:1;display:grid;grid-template-rows:minmax(420px,1fr) auto;padding:48px 0 32px}.house{position:relative;width:min(820px,100%);margin:auto;display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;border:1px solid var(--line);animation:enter .65s 80ms ease both}.room{min-height:170px;padding:24px;display:flex;align-items:flex-end;justify-content:space-between;background:var(--surface);transition:background-color .32s ease}.room:nth-child(odd){border-right:1px solid var(--line)}.room:nth-child(-n+2){border-bottom:1px solid var(--line)}.room.is-on{background:#2a261c}.room.changed{animation:room-change .6s ease}.eyebrow,.environment span{margin:0 0 10px;color:var(--muted);font:11px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.room strong{display:block;font-size:17px;font-weight:500}.room small{display:block;max-width:220px;margin-top:8px;color:var(--muted)}.level{color:var(--accent);font:20px/1 ui-monospace,SFMono-Regular,Consolas,monospace;transition:transform .24s ease}.room.changed .level{transform:translateY(-4px)}.environment{position:absolute;right:-1px;top:-37px;display:flex;align-items:baseline;gap:12px;font:12px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.environment span{margin:0 0 0 14px}.environment strong{color:var(--ink);font-weight:400}.command-zone{width:min(940px,100%);margin:48px auto 0;animation:enter .7s .16s ease both}form{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--ink)}input{min-width:0;padding:20px 0;color:var(--ink);background:transparent;border:0;outline:0;font-size:clamp(20px,3vw,34px);letter-spacing:-.035em}input::placeholder{color:#676a62}button{padding:0 0 0 24px;display:flex;align-items:center;gap:14px;color:var(--accent);background:transparent;border:0;cursor:pointer;font:12px/1 ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase}button span:last-child{font-size:20px;transition:transform .18s ease}button:hover span:last-child{transform:translate(3px,-3px)}.working button{opacity:.45;pointer-events:none}.result{min-height:58px;padding-top:13px;display:flex;gap:28px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.result span{flex:0 0 150px;color:var(--muted);text-transform:uppercase}.result p{margin:0;color:#c4c5be}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes loading{50%{box-shadow:0 0 0 7px #e7a94100}}@keyframes room-change{30%{box-shadow:inset 0 0 0 2px var(--accent)}}@media(max-width:720px){.shell{width:min(100% - 28px,560px)}.topline{height:68px}main{padding-top:54px;grid-template-rows:auto auto}.house{grid-template-columns:1fr;grid-template-rows:repeat(4,auto)}.room{min-height:112px;border:0!important;border-bottom:1px solid var(--line)!important}.room:last-of-type{border-bottom:0!important}.environment{top:-33px;left:-14px;right:auto;gap:8px}.environment span:nth-of-type(2),.environment strong:nth-of-type(2){display:none}.command-zone{margin-top:32px}form{grid-template-columns:1fr 42px}button{padding-left:8px;justify-content:flex-end}button span:first-child{display:none}.result{display:block}.result span{display:block;margin-bottom:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}
