/* Cartoon Chaos theme */
:root{--cc-text:#1f1740;--cc-dim:#4f4780}
html,body{background:radial-gradient(circle at 20% 18%, rgba(255,215,74,.28), transparent 18%),radial-gradient(circle at 80% 20%, rgba(90,232,255,.24), transparent 18%),radial-gradient(circle at 76% 82%, rgba(255,118,165,.22), transparent 18%),linear-gradient(180deg,#7ce7ff 0%,#ffe270 100%);color:var(--cc-text)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;background:radial-gradient(circle, rgba(0,0,0,.2) 0 1px, transparent 1.2px);background-size:14px 14px;z-index:0} body>*{position:relative;z-index:1}
h1,h2,h3{color:#1b1636;text-transform:uppercase;letter-spacing:.04em;text-shadow:2px 2px 0 rgba(255,255,255,.55)}
.muted,.admin-status-label,#profileUserInfo,#joinQrText,#mapHelp{color:var(--cc-dim)!important}
.card,.admin-section,.profile-modal,.join-qr-card,.join-player-card,.admin-status-card,.admin-panel,.modal-backdrop .card{background:rgba(255,255,255,.85);border:3px solid #201b43;box-shadow:6px 6px 0 rgba(32,27,67,.22)}
.admin-status-card{background:linear-gradient(135deg, rgba(255,255,255,.9), rgba(255,245,214,.88))}
.admin-tab-button,.sub-tab-button,.button-link,button{border:3px solid #201b43;color:#1d173b;background:linear-gradient(180deg,#fff06a,#ffb84a);box-shadow:4px 4px 0 rgba(32,27,67,.18)}
.admin-tab-button:hover,.sub-tab-button:hover,.button-link:hover,button:hover{transform:translateY(-1px);background:linear-gradient(180deg,#fff686,#ffc367)}
.admin-tab-button.active,.sub-tab-button.active{background:linear-gradient(180deg,#ff75af,#ff5599);color:#fff;border-color:#201b43;box-shadow:0 0 0 3px rgba(255,255,255,.4),4px 4px 0 rgba(32,27,67,.18)}
button.secondary,.secondary-link{background:linear-gradient(180deg,#7ce7ff,#4dbfff)}
button.danger-button{background:linear-gradient(180deg,#ff8d8d,#ff5b7e);color:#290914}
.ready-button{background:linear-gradient(180deg,#93ff61,#53e36d)!important;border-color:#201b43!important;color:#15310c!important;box-shadow:4px 4px 0 rgba(32,27,67,.18)!important}
.status-pill{color:#211c46;border:2px solid #201b43;background:#fff7d9}
.status-pill-good{background:#cbffb7}.status-pill-waiting{background:#ffe8a2}.status-pill-paused{background:#c8c3ff}.status-pill-ended{background:#ffc5d9}
input,select,textarea{color:#221c46;background:#fff;border:2px solid #201b43}
input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 4px rgba(124,231,255,.35)}
.readonly-input{background:#f3f0ff;color:#615a89}
.admin-list>*,.join-player-row{background:rgba(255,255,255,.8);border:2px solid #201b43}
.join-player-avatar,.profile-avatar-preview,.profile-icon-button{border:2px solid #201b43}
.profile-icon-button{background:linear-gradient(180deg,#7ce7ff,#4dbfff)}
.fallback-avatar,.profile-icon-fallback{color:#211c46}.fallback-avatar{background:#fff06a}
.join-qr-placeholder{background:linear-gradient(180deg,#fffbe9,#ffeab6);border:2px dashed #201b43}
.join-qr-image{background:#fff}
#adminMap,.admin-map,.map,.leaflet-container{border:3px solid #201b43;box-shadow:6px 6px 0 rgba(32,27,67,.18)}
.map-status{color:#211c46;background:#fff;border:2px solid #201b43}.map-status.success{background:#cbffb7}.map-status.error{background:#ffc5d9}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fffdf3;color:#1d173b}
a,a:visited{color:#0d5b9f} a:hover{color:#ff2e82}
.status.success{background:#cbffb7;border:2px solid #201b43;color:#163510}.status.error{background:#ffc5d9;border:2px solid #201b43;color:#4a0f24}
.login-card{background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,247,204,.9))}
