/* New salon base. No dependency on the former landing theme. */
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font:14px Arial,sans-serif}body{background:#074475;color:#222}button,a,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}.hidden,[hidden]{display:none!important}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #099ec9;outline-offset:2px}.app-shell{min-height:100dvh}.topbar{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#0966b1,#326c98);padding:8px 18px;min-height:46px;color:#fff}.brand{display:flex;gap:8px;align-items:center}.brand-mark{font-size:23px;font-weight:bold}.brand small{display:block;font-size:10px}.top-actions{display:flex;align-items:center;gap:5px}.ghost{padding:6px 10px;border:1px solid #7d9fb8;background:linear-gradient(#548bab,#316383);color:white;text-decoration:none;border-radius:2px}.online-dot{font-size:11px}.landing{padding:20px 12px;max-width:1100px;margin:auto}.hero,.auth-visual{display:none}.auth-stage{width:400px;max-width:100%;margin:0 auto;background:#f4eae7;border:6px solid #7396b0;border-radius:15px;padding:20px;color:#333}.panel-head{text-align:center;border-bottom:1px solid #bbb;margin-bottom:12px}.panel-head .mini{display:none}.panel-head h2{font-size:20px;margin:0 0 10px;color:#36566d}.panel-head p{font-size:12px;color:#777}.tabs{display:flex;gap:4px;justify-content:center;margin:8px 0}.tabs button{background:#ddd;border:1px solid #aaa;padding:6px 14px}.tabs .active{background:#be3434;color:#fff;border-color:#aa2929}form label,.auth-panel label{display:block;margin:8px 0;color:#555;font-size:12px}input,select{padding:7px;border:1px solid #bbb;background:#fff;color:#333}#authForm input,.guest-entry input{width:100%;min-height:36px}.gold-btn{padding:9px 18px;background:linear-gradient(#e85b56,#bc2726);color:white;border:1px solid #aa2524;border-radius:3px}#authSubmit{display:block;margin:12px auto;min-width:138px}#authSubmit b{display:none}.guest-entry{border-top:1px solid #bbb;margin-top:16px;padding-top:8px}.guest-entry h3{font-size:14px}.guest-entry p,.password-policy{font-size:11px;line-height:1.4}.guest-challenge-row{display:flex;align-items:center;gap:7px}.guest-challenge-row output{font:bold 21px monospace;letter-spacing:4px;color:#b5262d;flex:1;background:repeating-linear-gradient(0deg,#fff 0 3px,#ddd 3px 4px);padding:6px}.secure-row,.auth-help,.auth-features{display:none}
.modal{position:fixed;inset:0;display:grid;place-items:center;background:#0006;z-index:1000;padding:12px}.modal-card{width:420px;max-width:100%;max-height:calc(100dvh - 24px);overflow:auto;background:#eee;border:1px solid #777;border-radius:3px;padding:14px;color:#222;box-shadow:2px 3px 12px #0005}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #aaa;margin-bottom:10px}.modal-head h3{font-size:16px;margin:5px 0 10px}.modal-head button{background:#a92c35;color:#fff;border:1px solid #85212a;padding:2px 8px}.modal-card>label{display:block;margin:8px 0}.modal-card input:not([type=checkbox]),.modal-card select{width:100%;margin-top:4px}.modal-card button{padding:6px 10px}.modal-card small{font-size:11px}.account-actions{display:flex;gap:8px}.room-options label{display:block}.avatar-option{padding:2px;background:#eee;border:1px solid #aaa}.avatar-option img{width:32px;height:32px}.avatar-option.selected{outline:2px solid #058eb9}.avatar-row{display:flex;flex-wrap:wrap;gap:4px}.radio-bar{display:flex;align-items:center;gap:6px;background:#222;color:white;padding:6px}.radio-bar input{width:70px}.radio-title{font-size:10px}.radio-bar audio{display:none}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:30000;background:#222;color:white;padding:12px 18px;border-radius:4px;max-width:90vw}#toast:empty{display:none}.waiting-room.hidden{display:none!important}.waiting-card{background:#e5eee8;color:#123421;border:1px solid #869d8d}.waiting-head{display:flex;justify-content:space-between}.waiting-count b{display:block}.waiting-leave{background:#a22d35;color:#fff;border:0;padding:5px}.lobby-empty{font-size:12px;padding:7px;color:#444}.danger-account{background:#a22d35;color:#fff;border:0}
@media(max-width:600px){.topbar{padding:6px}.brand b{font-size:12px}.top-actions .online-dot{display:none}.auth-stage{padding:14px;border-width:4px}.landing{padding:12px 8px}}

#toast{display:none!important}#toast.show:not(:empty){display:block!important}
