:root{font-family:Helvetica,Arial,sans-serif;color:#f7f5fb;background:#0c0911;--gold:#ffbf00;--purple:#53159a;--orange:#f47721;--green:#16844c;--red:#b93643}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 0,#422171,#0c0911 60%)}.card{width:min(100%,620px);padding:28px;background:#17121f;border:1px solid #514362;border-radius:14px;box-shadow:0 30px 90px #000}.brand{color:var(--gold);font:bold 52px/1 Georgia,serif;letter-spacing:.13em;text-shadow:0 0 24px #ffae3e66}.room-label{color:#aaa0b6;font-size:12px;font-weight:900;letter-spacing:.2em}h1{margin:12px 0 8px;font-size:34px}.muted{color:#aaa1b1;line-height:1.5}form{display:grid;gap:17px;margin-top:24px}label{display:grid;gap:7px;color:#c0b7c9;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}input{width:100%;padding:15px;color:white;background:#0c0911;border:1px solid #655875;border-radius:7px;font:18px Helvetica,Arial,sans-serif}button,.button{display:block;width:100%;padding:15px;text-align:center;color:white;background:var(--orange);border:0;border-radius:8px;font-weight:900;text-decoration:none;font-size:17px}button:disabled{opacity:.4}.notice{margin:18px 0;padding:16px;border-radius:8px;line-height:1.45}.notice.good{color:#dcffeb;background:#143b27;border:1px solid #3a8d61}.notice.bad{color:#ffe0e3;background:#421923;border:1px solid #984354}.waiting{margin-top:22px;padding:18px;background:#241d2d;border:1px solid #493d56;border-radius:8px;color:#bbb1c5;font-weight:800;line-height:1.45}.choice-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:26px 0}.choice-buttons button{aspect-ratio:1;background:var(--purple);border:2px solid #8f6fba;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.choice-buttons button.selected{background:var(--orange);border-color:#ffd09b;transform:translateY(-4px);box-shadow:0 12px 35px #f4772155}.choice-buttons img{width:68%;height:60%;object-fit:contain}.choice-buttons span{font-weight:900}.confirm{margin-top:12px}.install{width:min(100%,650px)}.install .brand{font-size:38px}.install input{font-size:16px}@media(max-width:500px){.card{padding:22px}.choice-buttons{gap:7px}.choice-buttons button{padding:7px}.choice-buttons span{font-size:12px}}

