:root{--teal: #0b7a70;--teal-2: #0a6a61;--ink: #16232b;--soft: #5a7079;--line: #d7e0e4;--bg: #eef4f5;--card: #ffffff}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font:15px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:radial-gradient(1200px 600px at 50% -10%,#dff0ee,var(--bg));min-height:100%}#app{max-width:720px;margin:0 auto;padding:48px 20px 60px}.brand{display:flex;align-items:center;gap:10px;margin-bottom:6px}.dot{width:12px;height:12px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px #0b7a7026}.brand h1{font-size:22px;margin:0;letter-spacing:-.01em}.tag{color:var(--soft);margin:0 0 26px;font-size:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 1px 2px #1428320d,0 16px 40px #1428320f}.card h2{margin:0 0 4px;font-size:17px}.card .sub{color:var(--soft);margin:0 0 18px;font-size:13.5px}label{display:block;font-size:12.5px;font-weight:600;color:var(--soft);text-transform:uppercase;letter-spacing:.05em;margin:14px 0 6px}input[type=text]{width:100%;font:inherit;padding:11px 13px;border:1px solid var(--line);border-radius:10px;outline:none;background:#fbfdfd}input[type=text]:focus{border-color:var(--teal);background:#fff}button.primary{margin-top:20px;width:100%;font:600 15px system-ui;padding:12px;border:0;border-radius:10px;background:var(--teal);color:#fff;cursor:pointer}button.primary:hover{background:var(--teal-2)}button.primary:disabled{opacity:.6;cursor:default}.cap{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--soft);background:#f2f7f7;border:1px solid var(--line);padding:4px 10px;border-radius:20px;margin-top:16px}.cap b{color:var(--teal);font-variant-numeric:tabular-nums}.roomview{display:flex;flex-direction:column;gap:14px}.roombar{display:flex;align-items:center;justify-content:space-between}.roombar .r{font-weight:600}.roombar .r span{color:var(--soft);font-weight:400}button.ghost{font:600 13px system-ui;padding:8px 14px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);cursor:pointer}button.ghost:hover{border-color:var(--teal);color:var(--teal)}.hint{font-size:13px;color:var(--soft);text-align:center}.hint code{background:#eef4f5;padding:1px 6px;border-radius:5px}.err{color:#b4232a;background:#fbe9ea;border:1px solid #f3c9cc;padding:10px 12px;border-radius:10px;font-size:13.5px;margin-top:14px}.foot{text-align:center;color:#94a7ad;font-size:12px;margin-top:28px}.foot code{background:#e7eef0;padding:1px 5px;border-radius:4px}
