@import"https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;700;800&family=JetBrains+Mono:wght@400;600&display=swap";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&family=Sora:wght@400;500;600;700;800&display=swap";:root{--cream: #fff8ea;--sand: #ffe0b2;--amber: #ff9f1c;--orange: #f26b38;--mint: #6ec2a2;--ink: #1d2939;--ink-soft: #475467;--ink-deep: #101828;--card: rgba(255, 250, 242, .78);--card-strong: rgba(255, 244, 224, .9);--border: rgba(214, 151, 79, .7);--border-strong: #cf8534;--shadow: 0 18px 44px rgba(63, 41, 14, .2);--shadow-soft: 0 10px 24px rgba(94, 52, 14, .14);--frame-max: 1400px;--ease-smooth: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#ae67266b;border-radius:999px}*::-webkit-scrollbar-track{background:#fff1d66b}body{margin:0;font-family:"Baloo 2",cursive;color:var(--ink);background:radial-gradient(circle at 6% 10%,#ffecbfd6,#ffecbf00 36%),radial-gradient(circle at 94% 0%,#f1943e59,#f1943e00 30%),linear-gradient(140deg,#ffe5b8,#ffd294 42%,#f3b56f);min-height:100vh;background-attachment:fixed;line-height:1.35}h1,h2,h3,h4,strong{margin:0}a{color:inherit}input,select,button{font:inherit}button{cursor:pointer}.home-shell,.battle-shell{position:relative;min-height:100vh;padding:1.25rem}.page-frame{width:min(var(--frame-max),100%);margin:0 auto;display:grid;gap:.85rem}.kinetic-enter{animation:section-swap .32s var(--ease-smooth)}.section-panel{animation:section-swap .26s var(--ease-smooth)}.tilt-card,.tilt-card-soft{transform-style:preserve-3d;will-change:transform}.tilt-card:hover{transform:perspective(1100px) rotateX(2deg) rotateY(-2deg) translateY(-5px)}.cat-card.tilt-card-soft:hover,.tilt-card-soft:hover{transform:perspective(1400px) rotateX(1.2deg) translateY(-4px)}.signed-home-shell{isolation:isolate}.signed-home-shell:before,.signed-home-shell:after{content:"";position:fixed;width:420px;height:420px;border-radius:999px;pointer-events:none;filter:blur(2px);z-index:0}.signed-home-shell:before{top:-140px;left:-110px;background:radial-gradient(circle,#fff4dceb,#fff4dc00 68%)}.signed-home-shell:after{right:-100px;bottom:-170px;background:radial-gradient(circle,#f0883673,#f0883600 70%)}.auth-only-shell{display:grid;place-items:center}.auth-only-center{position:relative;z-index:1;width:min(1300px,100%);display:grid;gap:.9rem;justify-items:center;transform-origin:top center}.center-eyebrow{text-align:center}.catcode-wordmark{text-align:center;font-size:clamp(3rem,9vw,7rem);letter-spacing:.03em;line-height:.95;margin:0;font-weight:800;color:#1e293b;text-shadow:0 3px 0 #ffe6bf,0 8px 24px rgba(124,68,15,.32)}.catcode-subtitle{margin:0;color:#6f4314;text-align:center;font-size:clamp(.95rem,2.2vw,1.2rem)}.auth-meme-grid{width:100%;display:grid;gap:1rem;align-items:stretch;grid-template-columns:minmax(220px,280px) minmax(320px,560px) minmax(220px,280px)}.centered-auth-card{justify-self:center;width:min(560px,100%);min-height:100%;box-shadow:0 22px 42px #60320a4d,0 0 0 3px #fff2dd8c;position:relative;overflow:hidden}.auth-card-glow:before{content:"";position:absolute;inset:-30% auto auto -20%;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle,#ffffff73,#fff0 70%);pointer-events:none}.meme-column{display:grid;gap:.8rem;align-content:center}.meme-card{margin:0;border-radius:1rem;overflow:hidden;border:2px solid #e5ad60;background:#fff7e7;box-shadow:0 10px 26px #5e350d33;transition:transform .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth)}.meme-card:hover{box-shadow:0 18px 32px #5e350d3d}.meme-card img{display:block;width:100%;height:190px;object-fit:cover}.meme-card figcaption{padding:.5rem .65rem .7rem;font-size:.92rem;color:#74471b}.home-bg-pattern{position:fixed;inset:0;pointer-events:none;opacity:.32;background-image:radial-gradient(circle at 10px 10px,rgba(242,107,56,.3) 2px,transparent 3px),radial-gradient(circle at 24px 8px,rgba(110,194,162,.26) 3px,transparent 4px),radial-gradient(circle at 16px 22px,rgba(242,107,56,.2) 4px,transparent 5px);background-size:44px 44px;z-index:-1}.cat-floaters{position:fixed;inset:0;pointer-events:none;z-index:0}.cat-floater{position:absolute;width:clamp(70px,10vw,130px);aspect-ratio:1 / 1;border-radius:1rem;border:1px solid rgba(212,148,82,.55);box-shadow:0 16px 34px #74461738;object-fit:cover;opacity:.9}.floater-a{left:1.4rem;top:5.2rem;animation:bob-float 7s ease-in-out infinite}.floater-b{right:1.8rem;top:9.8rem;animation:bob-float 8.4s ease-in-out infinite reverse}.floater-c{right:2.5rem;bottom:2rem;animation:bob-float 9.1s ease-in-out infinite}.cat-header,.battle-header{position:relative;z-index:1;background:linear-gradient(135deg,#fffaeff0,#ffe8badb),radial-gradient(circle at 8% 15%,#ffffffd9,#fff0 45%);border:2px solid var(--border);border-radius:1.3rem;padding:1.1rem 1.25rem;box-shadow:var(--shadow),inset 0 1px #ffffffb3;display:flex;align-items:center;justify-content:space-between;gap:1rem;overflow:hidden}.cat-header h1,.battle-header h1{font-size:clamp(2rem,3.5vw,3.1rem);letter-spacing:.03em;line-height:.95;color:var(--ink-deep);text-shadow:0 2px 0 rgba(255,236,191,.9)}.battle-header h1{font-size:clamp(1.6rem,2.4vw,2.25rem)}.cinematic-header:before{content:"";position:absolute;right:-80px;top:-110px;width:300px;height:300px;border-radius:999px;background:radial-gradient(circle,#f4943e57,#f4943e00 72%);pointer-events:none}.header-copy{position:relative;z-index:1}.header-side{display:grid;justify-items:end;gap:.45rem;position:relative;z-index:1}.header-meme{width:clamp(160px,18vw,240px);height:clamp(70px,7.5vw,100px);object-fit:cover;border-radius:.95rem;border:1px solid rgba(194,112,39,.45);box-shadow:var(--shadow-soft)}.eyebrow{margin:0;font-size:.85rem;letter-spacing:.09em;text-transform:uppercase;color:#9c5a1a}.tagline{margin-top:.25rem;color:#5f4a2f;font-size:clamp(1rem,1.3vw,1.25rem)}.status-pill{border-radius:999px;border:1px solid #cc8840;background:#fff7e6e6;padding:.5rem .95rem;font-size:.95rem;color:#75451a;box-shadow:inset 0 1px #fffc}.notif-button{border-radius:999px;border:1px solid #cc8840;background:#fff7e6e6;color:#75451a;padding:.4rem .75rem;font-size:.85rem;font-weight:700}.notif-button.has-unread{border-color:#b04f21;background:#ffe5d2f2}.notification-panel{position:fixed;top:6.5rem;right:1rem;z-index:50;width:min(380px,calc(100vw - 2rem));max-height:400px;border:1px solid #d08f4a;border-radius:.95rem;background:#fff9ebfa;box-shadow:var(--shadow-soft);padding:.55rem;display:grid;gap:.5rem}.notification-panel-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.notification-list{display:grid;gap:.4rem;max-height:300px;overflow-y:auto}.notification-item{border:1px solid #dfb16f;border-radius:.75rem;padding:.45rem .55rem;background:#fffbf2f0;display:grid;gap:.12rem;text-align:left}.notification-item.unread{border-color:#c97132;background:#ffefd5f2}.notification-item span{color:#5a4b3b;font-size:.88rem}.notification-item small{color:#8b5a2e;font-size:.75rem}.notification-list p{margin:.3rem .2rem;color:#6a4a2a}.home-grid{position:relative;z-index:1;margin-top:1.1rem;display:grid;gap:1rem;grid-template-columns:1fr}.signed-home-shell .cat-header{margin-bottom:1rem}.lobby-layout{position:relative;z-index:1;display:grid;grid-template-columns:300px minmax(0,1fr);gap:1.25rem;align-items:start}.lobby-sidebar{display:grid;gap:.9rem;align-content:start;height:fit-content;position:sticky;top:1rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(160deg,#fff9ece0,#ffe9c6bd),radial-gradient(circle at 85% 10%,#ffffff73,#fff0 50%)}.sidebar-identity{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:center;padding:.35rem .2rem .45rem;border-bottom:1px dashed rgba(200,124,51,.45)}.cat-avatar{width:60px;height:60px;border-radius:18px;border:1px solid var(--border-strong);background:linear-gradient(145deg,#ffca78,#f09f44),radial-gradient(circle at 30% 30%,rgba(255,255,255,.45),transparent 55%);color:#4a250d;display:grid;place-items:center;font-size:1.5rem;font-weight:800;box-shadow:0 8px 18px #9654173b}.sidebar-nav{display:grid;gap:.6rem}.sidebar-link{border:1px solid rgba(202,138,67,.65);border-radius:1rem;background:linear-gradient(145deg,#fff9eef2,#ffeed5e6),radial-gradient(circle at 88% 10%,#ffffffa6,#fff0 42%);color:#5a3a16;padding:.72rem .75rem;text-align:left;display:grid;gap:.25rem;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease;box-shadow:inset 0 1px #ffffffa6}.sidebar-link:hover{transform:translateY(-2px) scale(1.01);border-color:#cc7f38;box-shadow:0 12px 24px #a05f2233}.sidebar-link-head{display:flex;align-items:center;gap:.45rem}.sidebar-icon{width:24px;height:24px;border-radius:8px;border:1px solid rgba(200,130,58,.55);background:#ffeecdeb;display:grid;place-items:center;font-size:.9rem}.sidebar-link span{font-weight:800}.sidebar-link small{font-size:.76rem;color:#88521f}.nav-badge{justify-self:start;margin-top:.12rem;border-radius:999px;border:1px solid #ce8b40;background:#fff1d2eb;color:#76431a;font-size:.76rem;font-weight:700;padding:.08rem .48rem}.sidebar-link.active{border-color:#b56a24;background:linear-gradient(145deg,#ffd899,#ffc978),radial-gradient(circle at 84% 12%,#ffffff7a,#fff0 45%);color:#45250e;box-shadow:0 10px 24px #b56a243d;position:relative}.sidebar-link.active:before{content:"";position:absolute;left:-1px;top:15%;width:4px;height:70%;border-radius:999px;background:#8a4d1d}.lobby-content{min-width:0;display:grid;gap:1.15rem;align-content:start}.lobby-content>*{animation:panel-in .22s ease}.content-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.3rem}.content-head h2{font-size:clamp(1.35rem,2vw,1.9rem)}.content-head p{max-width:56ch}.content-pills{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}.content-pills span{border-radius:999px;border:1px solid #d89d53;background:#fff3daed;color:#7a4b1d;padding:.18rem .62rem;font-size:.84rem;font-weight:700}.section-grid{display:grid;gap:1.1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.section-grid-single{grid-template-columns:1fr}.friends-section{display:grid;gap:1.1rem;grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start}.muted-inline{font-size:.93rem;color:#7b4a1d!important}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.stats-grid>div{border:1px solid #db9f56;border-radius:.95rem;background:linear-gradient(160deg,#fff8ebf5,#ffe9bfdb),radial-gradient(circle at 86% 14%,#ffffffb3,#fff0 42%);padding:.75rem .8rem;display:grid;gap:.18rem;box-shadow:var(--shadow-soft)}.stats-grid span{font-size:.8rem;color:#885521}.stats-grid strong{font-size:1.3rem;color:#1f2937}.ranked-grid{margin-top:.2rem}.achievement-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.achievement-badge{border:1px solid rgba(212,158,87,.7);border-radius:.95rem;padding:.58rem;background:#fff9eceb;display:grid;gap:.45rem;opacity:.6;filter:grayscale(.28);transition:transform .18s ease,opacity .18s ease,filter .18s ease,box-shadow .18s ease}.achievement-badge img{width:100%;height:130px;object-fit:cover;border-radius:.7rem;border:1px solid rgba(203,132,61,.5)}.achievement-badge div{display:grid;gap:.15rem}.achievement-badge span{color:#64462a;font-size:.86rem}.achievement-badge small{color:#8b5a2e;font-size:.74rem}.achievement-badge.unlocked{opacity:1;filter:none;box-shadow:0 10px 22px #9b5a1d2e}.achievement-badge:hover{transform:translateY(-2px)}.mini-meme{margin:0;border:1px solid rgba(205,137,67,.7);border-radius:.95rem;overflow:visible}.mini-meme img{width:100%;height:150px;object-fit:cover;display:block}.cosmetic-preview{display:flex;align-items:center;gap:.45rem}.cosmetic-dot{width:16px;height:16px;border-radius:999px;border:1px solid rgba(0,0,0,.18)}.history-list{display:grid;gap:.55rem;max-height:320px;overflow-y:auto}.history-card{border:1px solid #d8a05a;border-radius:.82rem;padding:.55rem .62rem;background:#fff8ebf2;display:grid;gap:.25rem}.history-head{display:flex;justify-content:space-between;gap:.65rem;flex-wrap:wrap}.history-head span{color:#7b4e21;font-size:.82rem}.history-code-preview{margin:0;border:1px solid #dcb277;border-radius:.66rem;background:#fff2daeb;padding:.4rem .5rem;max-height:90px;overflow:auto;font-family:JetBrains Mono,monospace;font-size:.72rem;color:#463325}.section-span-two{grid-column:1 / -1}.friend-add-row{display:grid;grid-template-columns:1fr auto;gap:.5rem}.friend-list,.challenge-list{display:grid;gap:.5rem;max-height:300px;overflow-y:auto}.friend-item,.challenge-item{border:1px solid #dba45b;border-radius:1rem;background:linear-gradient(145deg,#fffaf0f0,#ffeccbde);padding:.62rem .72rem;display:flex;justify-content:space-between;align-items:center;gap:.56rem;box-shadow:0 8px 20px #94581e1a}.friend-item.active{border-color:#b9742d;background:linear-gradient(145deg,#ffe9c0,#ffd591)}.friend-name-button{border:0;background:transparent;color:#2a3342;font-weight:700;text-align:left;padding:0;cursor:pointer;display:grid;gap:.1rem}.friend-name-button small{color:#7d4c1f;font-size:.74rem;text-transform:lowercase}.friend-unread-badge{border-radius:999px;border:1px solid #be6830;background:#f6703f29;color:#8f2d1d;padding:.08rem .46rem;font-size:.74rem;font-weight:700}.friend-actions{display:flex;flex-wrap:wrap;gap:.35rem}.challenge-item p{margin:0;font-size:.9rem}.challenge-list-large{max-height:350px}.leaderboard-list{display:grid;gap:.45rem;max-height:390px;overflow-y:auto}.leaderboard-item{border:1px solid #d9aa67;border-radius:.8rem;padding:.45rem .6rem;background:#fff8ebf0;display:grid;gap:.12rem}.leaderboard-item span{color:#5f4630}.leaderboard-item small{color:#8a5a2b;font-size:.75rem}.queue-actions{display:flex;gap:.6rem}.queue-size-row{display:flex;gap:.6rem;flex-wrap:wrap}.queue-size-row span{border:1px solid #e2b368;background:#fff8ebf2;border-radius:999px;padding:.26rem .66rem;font-size:.85rem;color:#7d4c19;font-weight:700}.meme-strip{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.chat-log{border:1px solid #d99e51;border-radius:.9rem;background:linear-gradient(155deg,#fff8e7f2,#ffefd3e6);padding:.6rem;height:clamp(250px,34vh,380px);overflow-y:auto;display:grid;gap:.52rem}.chat-message{border:1px solid #e1b470;border-radius:.7rem;background:#fffffce0;padding:.5rem .58rem}.chat-message.own-message{border-color:#ca7f2f;background:#ffeccaf2}.chat-meta{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:#8b551c;margin-bottom:.2rem}.chat-message p{margin:0;color:#334155}.chat-input-row{display:grid;grid-template-columns:1fr auto;gap:.55rem}.friend-list-tall{max-height:360px}.friend-chat-card{min-height:430px}.cat-card{background:linear-gradient(145deg,var(--card),var(--card-strong)),radial-gradient(circle at 10% 6%,#ffffffb3,#fff0 45%);border:1px solid var(--border);border-radius:1.24rem;padding:1.2rem;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.75rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform .2s ease,box-shadow .2s ease}.cat-card:hover{transform:translateY(-2px);box-shadow:0 20px 44px #58320f33}.cat-card.tilt-card-soft:hover{transform:perspective(1400px) rotateX(1.2deg) translateY(-4px)}.cat-card h2{font-size:1.35rem;color:var(--ink-deep);letter-spacing:.01em}.cat-card p{margin:0;color:var(--ink-soft)}.auth-form{display:flex;flex-direction:column;gap:.6rem}label{display:flex;flex-direction:column;gap:.28rem;font-size:.92rem}input,select{border:1px solid #d49a54;border-radius:.76rem;padding:.58rem .68rem;background:#fffaf2e6;color:var(--ink);transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}input:focus,select:focus{outline:none;border-color:#cd7d2e;box-shadow:0 0 0 3px #f26b3833;background:#fffefb}.button{border:1px solid #bd652f;background:linear-gradient(145deg,#f3703c,#f29f45),linear-gradient(180deg,#ffffff26,#fff0);color:#fffef8;border-radius:.8rem;padding:.6rem .95rem;font-weight:700;transition:transform .14s ease,filter .2s ease,box-shadow .2s ease;box-shadow:0 8px 18px #b863263d}.button:hover:enabled{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 12px 20px #b863264d}.button:disabled{opacity:.52;cursor:not-allowed}.button.ghost{background:#fff9edf5;color:#8d4d20;border:1px solid #d3944a;box-shadow:none}.button.mini{font-size:.82rem;padding:.34rem .6rem}.switch-mode{border:0;background:transparent;color:#8f4b1e;text-align:left;padding:0;font-size:.92rem}.duration-picker{display:flex;gap:.5rem}.duration{border:1px solid #cf8f41;border-radius:.72rem;background:#fff6e4f2;padding:.46rem .8rem;font-weight:700}.duration.active{background:linear-gradient(145deg,#8cd8bd,#65c4a2);border-color:#2f8d6e;color:#10392b;box-shadow:0 8px 18px #30907040}.room-banner{border:1px dashed #bc7d39;border-radius:.85rem;background:#fff6e7;padding:.65rem;display:grid;gap:.3rem}.room-banner strong{font-family:JetBrains Mono,monospace;font-size:1.2rem;letter-spacing:.08em}.feedback{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);background:#122636;color:#eff8ff;border-radius:999px;padding:.6rem 1rem;z-index:5;max-width:calc(100vw - 2rem);text-align:center}.feedback.error{background:#7a221e}@keyframes section-swap{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes panel-in{0%{opacity:0;transform:translateY(10px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes timer-pulse{0%{box-shadow:0 0 #ce4f4247}70%{box-shadow:0 0 0 10px #ce4f4200}to{box-shadow:0 0 #ce4f4200}}.battle-shell{background:radial-gradient(circle at 90% -10%,#f3923559,#f3923500 36%),linear-gradient(165deg,#ffe8bf,#fbd39a 50%,#f8c188)}.battle-frame{display:grid;gap:.75rem}.battle-bg-pattern{opacity:.22;mix-blend-mode:multiply}.arena-header{position:relative}.arena-header:after{content:"";position:absolute;inset:auto 1rem .55rem;border-radius:999px;border-top:1px dashed rgba(164,93,33,.3);pointer-events:none}.arena-meta{margin:.25rem 0 0;color:#805119;font-size:.94rem;letter-spacing:.01em}.battle-header p{margin:.25rem 0 0;color:#805119}.battle-timer{min-width:110px;text-align:center;font-family:JetBrains Mono,monospace;font-weight:700;border-radius:.86rem;border:2px solid #d98c3f;background:linear-gradient(150deg,#fff8e9,#ffe5b8);padding:.35rem .75rem;font-size:1.35rem;box-shadow:0 10px 18px #b0612333}.battle-timer.urgent{border-color:#ce4f42;color:#8f1f16;background:linear-gradient(150deg,#fff2ef,#ffcbbd);animation:timer-pulse .95s infinite}.battle-banner{margin-top:.45rem;border-radius:1rem;border:1px solid #d08b45;background:linear-gradient(145deg,#fff7e5f5,#ffe9c0e6),radial-gradient(circle at 95% 10%,#ffffff80,#fff0 42%);padding:.68rem .8rem;display:flex;justify-content:space-between;align-items:center;gap:.8rem;box-shadow:var(--shadow-soft)}.battle-banner-copy{font-size:.98rem;color:#6b4520}.battle-banner-stack{display:grid;gap:.16rem}.battle-banner-stack small{color:#7c4e22;font-size:.8rem}.battle-banner-actions{display:flex;align-items:center;gap:.45rem}.battle-grid{margin-top:.45rem;display:grid;gap:.85rem;grid-template-columns:1fr}.battle-left,.battle-right{border:1px solid #de9f53;border-radius:1.1rem;background:linear-gradient(145deg,#fff9ecf5,#ffecc9e6),radial-gradient(circle at 10% 8%,#ffffffb3,#fff0 40%);min-height:360px;box-shadow:var(--shadow)}.battle-left{padding:.95rem;display:flex;flex-direction:column;gap:.65rem;overflow:hidden}.player-row{display:flex;justify-content:space-between;background:#fff6e5f0;border:1px solid #e7b66f;border-radius:.7rem;padding:.45rem .58rem}.difficulty{width:fit-content;border-radius:999px;padding:.2rem .6rem;background:#ffe8bf;border:1px solid #df9b47;color:#764617}.tabs{display:flex;flex-wrap:wrap;gap:.5rem}.tabs button{border:1px solid #cf9245;background:#fff8eaf2;border-radius:.72rem;padding:.38rem .72rem;font-size:.92rem;font-weight:700;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.tabs button:hover{transform:translateY(-1px);border-color:#b66f2b;box-shadow:0 6px 14px #b46c282e}.tabs button.active{background:linear-gradient(145deg,#ffd591,#ffc877);border-color:#ba7629;box-shadow:0 8px 16px #b56a2433}.tab-panel{overflow-y:auto;max-height:min(52vh,560px);padding-right:.25rem;display:grid;gap:.62rem;scrollbar-gutter:stable}.tab-panel p{margin:0;line-height:1.4;color:#3e4a58}.result{border-radius:.78rem;border:1px solid #d89f54;background:linear-gradient(145deg,#fff8e8f5,#ffeccde6);padding:.6rem}.result h4{margin-bottom:.25rem}.result.pass{border-color:#55a57f;background:#ebfff5}.result.fail{border-color:#ce6860;background:#fff0ed}.analysis-panel{font-size:.94rem;color:#334155}.analysis-panel pre,.analysis-panel code{font-family:JetBrains Mono,monospace}.battle-right{display:flex;flex-direction:column;overflow:hidden}.editor-toolbar{border-bottom:1px solid #e6b775;padding:.68rem .72rem;display:flex;justify-content:space-between;align-items:center;gap:.7rem;background:#fff7e3d6}.editor-toolbar span{color:#845321;font-weight:700}.language-box{display:grid;gap:.28rem}.language-box label{font-size:.82rem;color:#8c5a28;text-transform:uppercase;letter-spacing:.06em}.editor-wrap{flex:1;min-height:clamp(300px,44vh,620px)}.editor-actions{border-top:1px solid #e6b775;padding:.68rem .72rem;display:flex;justify-content:flex-end;gap:.5rem;background:#fff7e3d6}.loading-state{min-height:100vh;display:grid;place-items:center;font-size:1.2rem;color:#5f3f18}.loading-state.error-state{display:flex;flex-direction:column;gap:.8rem}.loading-state.error-state a{padding:.5rem .8rem;border-radius:.7rem;background:#fff5e4;border:1px solid #cb7a2f;text-decoration:none}body{background:#f5efe6;color:#1f2933}.home-bg-pattern,.battle-bg-pattern,.cat-floaters,.signed-home-shell:before,.signed-home-shell:after{display:none!important}.home-shell,.battle-shell{background:#f5efe6}.cat-header,.battle-header,.cat-card,.battle-left,.battle-right,.notification-panel,.battle-banner{background:#fdfbf7;border:1px solid #d5cbbb;box-shadow:0 1px 2px #11182714}.cat-header,.battle-header,.cat-card,.battle-left,.battle-right{border-radius:1rem}.status-pill,.notif-button{background:#f3f4f6;border:1px solid #d0d5dd;color:#475467}.notif-button.has-unread{border-color:#fdba74;background:#fff6ed;color:#9a3412}.button{border:1px solid #d95a11;background:#ea6b1d;color:#fff;border-radius:.875rem;box-shadow:0 8px 14px #d9581233}.button.ghost{background:#fff;border-color:#d0d5dd;color:#475467;box-shadow:none}input,select{border:1px solid #d0d5dd;background:#fff;border-radius:.875rem}input:focus,select:focus{border-color:#ea6b1d;box-shadow:0 0 0 3px #ea6b1d29}.cat-header h1,.battle-header h1{text-shadow:none}.eyebrow,.tagline,.battle-header p,.arena-meta{color:#667085}@media(min-width:940px){.home-grid{grid-template-columns:1fr 1.2fr 1fr}.battle-grid{grid-template-columns:minmax(330px,1fr) minmax(460px,1.35fr)}}@media(max-width:1280px){.lobby-layout{grid-template-columns:250px minmax(0,1fr)}.content-head{flex-direction:column}.content-pills{justify-content:flex-start}}@media(max-width:1080px){.battle-grid{grid-template-columns:1fr}.battle-left,.battle-right{min-height:auto}.tab-panel{max-height:44vh}.editor-wrap{min-height:360px}}@keyframes bob-float{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}@media(max-width:620px){.status-pill{font-size:.78rem}.home-shell,.battle-shell{padding:.8rem}.header-meme{display:none}.battle-banner{flex-direction:column;align-items:flex-start}.battle-banner-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.battle-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.2rem}.battle-tabs button{flex:0 0 auto}.battle-timer{width:100%}.editor-actions{flex-wrap:wrap;justify-content:stretch}.editor-actions .button{flex:1;min-width:120px}.queue-actions{flex-direction:column}.notification-panel{top:7.4rem;right:.75rem;width:min(420px,calc(100vw - 1.5rem));max-height:min(58vh,420px)}.content-head{flex-direction:column}.content-pills{justify-content:flex-start}.player-row{font-size:.94rem}.tab-panel{max-height:36vh}.editor-wrap{min-height:260px}}@media(max-width:1180px){.auth-meme-grid{grid-template-columns:1fr minmax(320px,560px) 1fr}.meme-card img{height:160px}}@media(max-width:940px){.cat-floaters{display:none}.auth-meme-grid{grid-template-columns:1fr}.meme-column{grid-template-columns:1fr 1fr}.meme-card img{height:180px}.cat-header{flex-direction:column;align-items:flex-start}.header-side{width:100%;justify-items:start}.notification-panel{top:8.8rem}.lobby-layout{grid-template-columns:1fr}.lobby-sidebar{position:static}.section-grid,.friends-section{grid-template-columns:1fr}.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.meme-column,.sidebar-nav,.stats-grid{grid-template-columns:1fr}.chat-log{height:230px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}:root{--cc-color-bg: #f5efe6;--cc-color-surface: #fdfbf7;--cc-color-surface-strong: #ffffff;--cc-color-text: #1f2933;--cc-color-muted: #667085;--cc-color-border: #ddd4c6;--cc-color-border-strong: #cfc3b1;--cc-color-primary: #ea6b1d;--cc-color-primary-strong: #d95812;--cc-color-success: #177b5b;--cc-color-danger: #b5473a;--cc-color-nav: #faf7f2;--cc-space-1: .25rem;--cc-space-2: .5rem;--cc-space-3: .75rem;--cc-space-4: 1rem;--cc-space-5: 1.25rem;--cc-space-6: 1.5rem;--cc-space-8: 2rem;--cc-space-10: 2.5rem;--cc-radius-sm: .5rem;--cc-radius-md: .875rem;--cc-radius-lg: 1rem;--cc-radius-xl: 1.125rem;--cc-radius-full: 9999px;--cc-shadow-sm: 0 1px 2px rgba(17, 24, 39, .08);--cc-shadow-md: 0 8px 20px rgba(17, 24, 39, .1);--cc-shadow-lg: 0 18px 36px rgba(17, 24, 39, .14);--cc-font-sans: "Sora", "Segoe UI", "Inter", system-ui, -apple-system, sans-serif;--cc-font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace}.cc-home-root{min-height:100vh;padding:var(--cc-space-5);background:var(--cc-color-bg);font-family:var(--cc-font-sans);color:var(--cc-color-text);line-height:1.45}.cc-home-root h1{margin:0;font-size:clamp(1.8rem,2.8vw,2.5rem);line-height:1.1;letter-spacing:-.02em}.cc-home-root h2{margin:0;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.2;letter-spacing:-.01em}.cc-home-root h3{margin:0;font-size:1.1rem;line-height:1.25}.cc-home-root p{margin:0}.cc-auth-layout{min-height:calc(100vh - 2 * var(--cc-space-5));display:grid;place-items:center}.cc-auth-card{width:min(460px,100%)}.cc-login-layout{min-height:calc(100vh - 2 * var(--cc-space-5));width:min(1120px,100%);margin:0 auto;display:grid;gap:var(--cc-space-5);align-content:center}.cc-login-hero{display:grid;gap:var(--cc-space-3);justify-items:center;text-align:center}.cc-login-hero h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.06;letter-spacing:-.02em}.cc-login-hero p{margin:0;max-width:44ch;color:var(--cc-color-muted)}.cc-brand-logo{display:block;height:auto;width:auto;max-width:100%}.cc-brand-logo--login{width:clamp(220px,44vw,420px)}.cc-brand-logo--topbar{width:clamp(170px,24vw,300px);margin-top:var(--cc-space-1)}.cc-focus-ring:focus-visible{outline:none;box-shadow:0 0 0 3px #ea6b1d33}.cc-login-card{width:min(480px,100%);justify-self:center}.cc-credits{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-lg);background:var(--cc-color-surface);box-shadow:var(--cc-shadow-sm);padding:var(--cc-space-3) var(--cc-space-4);display:flex;justify-content:space-between;align-items:center;gap:var(--cc-space-3)}.cc-credits p{margin:0;color:var(--cc-color-muted);font-size:.88rem;font-weight:600}.cc-credits__links{display:inline-flex;gap:var(--cc-space-2)}.cc-credits__icon{width:2rem;height:2rem;border-radius:var(--cc-radius-full);border:1px solid var(--cc-color-border);background:#fff;color:#334155;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .16s ease,border-color .16s ease,color .16s ease}.cc-credits__icon:hover{transform:translateY(-1px);border-color:var(--cc-color-primary);color:var(--cc-color-primary)}.cc-credits__icon svg{width:1rem;height:1rem}.cc-credits--login{width:min(480px,100%);justify-self:center}.cc-auth-head{display:grid;gap:var(--cc-space-2);margin-bottom:var(--cc-space-3)}.cc-auth-head p{margin:0;color:var(--cc-color-muted)}.cc-auth-switch{background:none;border:0;color:var(--cc-color-primary);font:inherit;font-weight:600;text-align:left;padding:0}.cc-auth-meta{margin-top:var(--cc-space-2);font-size:.9rem;color:var(--cc-color-muted)}.cc-login-alert{border-radius:var(--cc-radius-md);border:1px solid transparent;padding:var(--cc-space-2) var(--cc-space-3);font-size:.85rem}.cc-login-alert--error{border-color:#b53d1059;background:#ffece5e6;color:#8c3718}.cc-login-alert--success{border-color:#207b4b59;background:#e6faf0e6;color:#17633a}.cc-toast{position:fixed;left:50%;bottom:var(--cc-space-5);transform:translate(-50%);max-width:calc(100vw - 2rem);border-radius:var(--cc-radius-full);background:#13263a;color:#eff7ff;padding:var(--cc-space-3) var(--cc-space-5);font-size:.95rem;box-shadow:var(--cc-shadow-md);z-index:30}.cc-toast.error{background:#8d2c24}.cc-app-shell{width:min(1440px,100%);margin:0 auto;display:grid;gap:var(--cc-space-4)}.cc-topbar{display:flex;justify-content:space-between;align-items:center;gap:var(--cc-space-4);border:1px solid var(--cc-color-border-strong);border-radius:var(--cc-radius-xl);background:var(--cc-color-surface);padding:var(--cc-space-5) var(--cc-space-6);box-shadow:var(--cc-shadow-sm)}.cc-topbar__eyebrow{margin:0;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cc-color-muted);font-weight:700}.cc-topbar__title{margin:var(--cc-space-1) 0 0;font-size:clamp(1.6rem,2.2vw,2.1rem)}.cc-topbar__actions{display:flex;align-items:center;gap:var(--cc-space-3);flex-wrap:wrap;justify-content:flex-end}.cc-app-shell__body{display:grid;grid-template-columns:290px minmax(0,1fr);gap:var(--cc-space-4);align-items:start}.cc-sidebar{position:sticky;top:var(--cc-space-4);display:grid;gap:var(--cc-space-4);border:1px solid var(--cc-color-border-strong);border-radius:var(--cc-radius-xl);background:var(--cc-color-surface);padding:var(--cc-space-4);box-shadow:var(--cc-shadow-sm)}.cc-sidebar__identity{display:grid;grid-template-columns:auto 1fr;gap:var(--cc-space-3);align-items:center;padding-bottom:var(--cc-space-4);border-bottom:1px solid var(--cc-color-border)}.cc-sidebar__avatar{width:52px;height:52px;border-radius:.9rem;background:#ffe9d6;border:1px solid #efc5a1;display:grid;place-items:center;font-weight:700;color:#7a3d14}.cc-sidebar__name{margin:0;font-weight:700}.cc-sidebar__meta,.cc-sidebar__status{margin:0;color:var(--cc-color-muted);font-size:.85rem}.cc-sidebar__nav{display:grid;gap:var(--cc-space-2)}.cc-nav-item{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-lg);background:var(--cc-color-nav);text-align:left;padding:var(--cc-space-3);color:var(--cc-color-text);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.cc-nav-item:hover{border-color:var(--cc-color-border-strong);transform:translateY(-1px);box-shadow:var(--cc-shadow-sm)}.cc-nav-item.active{border-color:#e3b98e;background:#fffaf4;box-shadow:inset 2px 0 0 var(--cc-color-primary)}.cc-nav-item__head{display:flex;align-items:center;gap:var(--cc-space-2);font-weight:700}.cc-nav-item__icon{width:24px;height:24px;border-radius:var(--cc-radius-sm);border:1px solid #e6d8c8;background:#fff;display:grid;place-items:center;font-size:.8rem}.cc-nav-item__icon-symbol{font-size:.9rem;line-height:1;color:#475467}.cc-nav-item__badge{margin-left:auto;border-radius:var(--cc-radius-full);background:#f3f4f6;border:1px solid #d3d9e2;color:#475467;font-size:.75rem;font-weight:700;padding:.1rem .45rem}.cc-nav-item small{display:block;margin-top:var(--cc-space-1);color:var(--cc-color-muted)}.cc-sidebar__footer{margin-top:var(--cc-space-2)}.cc-main{min-width:0;display:grid;gap:var(--cc-space-4)}.cc-main__header{border:1px solid var(--cc-color-border-strong);border-radius:var(--cc-radius-xl);background:var(--cc-color-surface);padding:var(--cc-space-5) var(--cc-space-6);box-shadow:var(--cc-shadow-sm)}.cc-main__header h2{margin:0;font-size:clamp(1.2rem,2vw,1.55rem)}.cc-main__header p{margin:var(--cc-space-2) 0 0;color:var(--cc-color-muted)}.cc-stat-strip{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-lg);background:var(--cc-color-surface);padding:var(--cc-space-3);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--cc-space-3);box-shadow:var(--cc-shadow-sm)}.cc-section-grid{display:grid;gap:var(--cc-space-4);align-items:start}.cc-section-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-section-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cc-col-span-2{grid-column:span 2}.cc-col-span-3{grid-column:span 3}.cc-form-grid{display:grid;gap:var(--cc-space-3)}.cc-inline-group{display:flex;gap:var(--cc-space-2);flex-wrap:wrap;align-items:flex-end}.cc-list{display:grid;gap:var(--cc-space-2);max-height:330px;overflow:auto}.cc-list-item{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:var(--cc-color-surface-strong);padding:var(--cc-space-3);display:grid;gap:var(--cc-space-2);box-shadow:var(--cc-shadow-sm)}.cc-list-item__row{display:flex;align-items:center;gap:var(--cc-space-2);justify-content:space-between}.cc-list-item__meta{color:var(--cc-color-muted);font-size:.85rem}.cc-chat-log{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:var(--cc-color-surface-strong);padding:var(--cc-space-3);min-height:260px;max-height:400px;overflow:auto;display:grid;gap:var(--cc-space-2);box-shadow:var(--cc-shadow-sm)}.cc-chat-msg{border-radius:var(--cc-radius-md);border:1px solid #e7d0b4;background:#fffefc;padding:var(--cc-space-2) var(--cc-space-3)}.cc-chat-msg.own{border-color:#edb07a;background:#fff3e8}.cc-chat-msg__meta{display:flex;justify-content:space-between;gap:var(--cc-space-2);color:var(--cc-color-muted);font-size:.78rem}.cc-chat-msg p{margin:var(--cc-space-1) 0 0}.cc-notif-panel{position:fixed;top:5.6rem;right:var(--cc-space-5);width:min(360px,calc(100vw - 2rem));max-height:min(60vh,420px);z-index:40}.cc-notif-list{display:grid;gap:var(--cc-space-2);max-height:300px;overflow:auto}.cc-notif-item{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:var(--cc-color-surface-strong);padding:var(--cc-space-2) var(--cc-space-3);text-align:left;box-shadow:var(--cc-shadow-sm)}.cc-notif-item.unread{border-color:#efc49d;background:#fff8f1}.cc-notif-item span{display:block;color:var(--cc-color-muted);font-size:.85rem}.cc-notif-item small{color:#8d5d2d;font-size:.75rem}.cc-badges{display:grid;gap:var(--cc-space-3)}.cc-badges__summary{margin:0;color:var(--cc-color-muted);font-size:.9rem}.cc-badges__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--cc-space-3)}.cc-badge-card{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:#fffefc;padding:var(--cc-space-3);display:grid;grid-template-columns:auto 1fr;gap:var(--cc-space-2);align-items:start;opacity:.56}.cc-badge-card.earned{opacity:1;border-color:#df9f60}.cc-badge-card__icon{width:34px;height:34px;border-radius:var(--cc-radius-sm);background:#fff2df;border:1px solid #e7be93;display:grid;place-items:center;font-size:1rem}.cc-badge-card strong{display:block}.cc-badge-card p{margin:var(--cc-space-1) 0;color:var(--cc-color-muted);font-size:.84rem}.cc-badge-card small{color:#8a5628;font-size:.76rem}.cc-card{border:1px solid var(--cc-color-border-strong);border-radius:var(--cc-radius-lg);background:var(--cc-color-surface);box-shadow:var(--cc-shadow-sm);padding:var(--cc-space-4);display:grid;gap:var(--cc-space-3)}.cc-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--cc-space-3)}.cc-card__headings{display:grid;gap:var(--cc-space-1)}.cc-card__title{margin:0;font-size:1.08rem}.cc-card__subtitle{margin:0;color:var(--cc-color-muted);font-size:.9rem}.cc-card__body{display:grid;gap:var(--cc-space-3)}.cc-btn{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);font:inherit;font-weight:600;cursor:pointer;transition:transform .16s ease,filter .16s ease,border-color .16s ease,background-color .16s ease}.cc-btn:hover:enabled{transform:translateY(-1px);filter:brightness(1.02)}.cc-btn:disabled{opacity:.55;cursor:not-allowed}.cc-btn--sm{padding:.45rem .7rem;font-size:.82rem}.cc-btn--md{padding:.56rem .92rem;font-size:.9rem}.cc-btn--block{width:100%}.cc-btn--primary{background:var(--cc-color-primary);color:#fff;border-color:var(--cc-color-primary-strong);box-shadow:0 6px 14px #d958123d}.cc-btn--secondary{background:#fff;border-color:var(--cc-color-border-strong);color:#344054}.cc-btn--ghost{background:transparent;border-color:transparent;color:#475467}.cc-input-wrap{display:grid;gap:var(--cc-space-1)}.cc-input-label{color:#344054;font-size:.86rem;font-weight:600}.cc-input{width:100%;border:1px solid var(--cc-color-border-strong);background:var(--cc-color-surface-strong);border-radius:var(--cc-radius-md);color:var(--cc-color-text);padding:.62rem .78rem;font:inherit;box-shadow:var(--cc-shadow-sm)}.cc-input:focus{outline:none;border-color:var(--cc-color-primary);box-shadow:0 0 0 3px #ea6b1d2e}.cc-input--invalid{border-color:#b53d1099;box-shadow:0 0 0 3px #b53d101f}.cc-input-hint{color:var(--cc-color-muted);font-size:.76rem}.cc-input-error{color:var(--cc-color-danger);font-size:.76rem}.cc-pill{display:inline-flex;align-items:center;border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);padding:.16rem .55rem;font-size:.76rem;font-weight:600}.cc-pill--default{background:#f8fafc;color:#475467}.cc-pill--primary{background:#fff6ed;color:#9a3412;border-color:#fdba74}.cc-pill--success{background:#ecfdf3;color:#027a48;border-color:#a6f4c5}.cc-pill--muted{background:#f2f4f7;color:#475467;border-color:#d9dee5}.cc-stat-tile{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:var(--cc-color-surface-strong);padding:var(--cc-space-3);display:grid;gap:var(--cc-space-1);box-shadow:var(--cc-shadow-sm)}.cc-stat-tile__label{color:var(--cc-color-muted);font-size:.78rem}.cc-stat-tile__value{font-size:1.18rem}.cc-stat-tile__hint{color:var(--cc-color-muted)}.cc-stat-tile--compact{padding:.65rem .75rem}.cc-stat-tile--compact .cc-stat-tile__label{font-size:.72rem}.cc-stat-tile--compact .cc-stat-tile__value{font-size:.95rem}.cc-empty{border:1px dashed var(--cc-color-border);border-radius:var(--cc-radius-md);background:#ffffffa8;padding:var(--cc-space-4)}.cc-empty__title{margin:0}.cc-empty__description{margin:var(--cc-space-2) 0 0;color:var(--cc-color-muted)}.cc-empty__action{margin-top:var(--cc-space-3)}.cc-kpi-grid{display:grid;gap:var(--cc-space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.cc-rating-chart{display:grid;gap:var(--cc-space-3)}.cc-rating-chart__meta{display:grid;gap:var(--cc-space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.cc-rating-chart__meta>div{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:var(--cc-color-surface-strong);padding:var(--cc-space-2) var(--cc-space-3);display:grid;gap:.1rem;min-height:3.8rem}.cc-rating-chart__label{color:var(--cc-color-muted);font-size:.74rem}.cc-rating-chart__meta strong{font-size:1.15rem;line-height:1.1}.cc-rating-chart__meta span{font-size:.92rem}.cc-rating-chart__surface{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:#fff;padding:var(--cc-space-2);overflow-x:auto}.cc-rating-chart__svg{width:100%;min-width:640px;height:auto;display:block}.cc-rating-chart__plot{fill:#fff}.cc-rating-chart__grid{stroke:#ece4d8;stroke-width:1;shape-rendering:crispEdges}.cc-rating-chart__tick{fill:#667085;font-size:11px;font-weight:600;font-family:var(--cc-font-sans)}.cc-rating-chart__line{fill:none;stroke:var(--cc-color-primary);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.cc-rating-chart__dot{fill:#fff;stroke:var(--cc-color-primary);stroke-width:2}.cc-table-list{display:grid;gap:var(--cc-space-2)}.cc-table-list--scroll{max-height:34rem;overflow:auto;padding-right:var(--cc-space-1)}.cc-table-row{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);padding:var(--cc-space-3);background:var(--cc-color-surface-strong);display:flex;justify-content:space-between;gap:var(--cc-space-3);align-items:center}.cc-table-row p{margin:0}.cc-inline-actions{display:flex;gap:var(--cc-space-2);flex-wrap:wrap}.cc-topbar-metrics{display:flex;flex-wrap:wrap;align-items:center;gap:var(--cc-space-2)}.cc-topbar-metric{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#f8f5ef;color:#475467;padding:.18rem .6rem;font-size:.76rem;font-weight:600}.cc-mini-strip{display:grid;gap:var(--cc-space-2);grid-template-columns:repeat(4,minmax(0,1fr))}.cc-badges-panel{display:grid;gap:var(--cc-space-3)}.cc-badges-panel__head{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-lg);background:var(--cc-color-surface-strong);padding:var(--cc-space-3);display:flex;align-items:center;justify-content:space-between;gap:var(--cc-space-3)}.cc-badges-panel__label{font-size:.82rem;font-weight:600;color:var(--cc-color-muted)}.cc-badges-panel__summary{margin-top:var(--cc-space-1);font-size:.9rem;color:var(--cc-color-text)}.cc-badges-panel__filters{display:flex;align-items:center;gap:var(--cc-space-2);flex-wrap:wrap}.cc-filter-btn{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#fff;color:#475467;padding:.3rem .68rem;font-size:.75rem;font-weight:600;text-transform:capitalize}.cc-filter-btn.active{border-color:var(--cc-color-primary-strong);background:var(--cc-color-primary);color:#fff}.cc-badges-panel__select-wrap select{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#fff;color:#475467;padding:.32rem .62rem;font-size:.75rem;font-weight:600}.cc-badges-grid{display:grid;gap:var(--cc-space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.cc-badge-item{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-lg);background:var(--cc-color-surface-strong);padding:var(--cc-space-3);box-shadow:var(--cc-shadow-sm);opacity:.78;filter:grayscale(.15);display:grid;gap:var(--cc-space-2)}.cc-badge-item:focus-visible{outline:none;box-shadow:0 0 0 3px #ea6b1d2e}.cc-badge-item.earned{opacity:1;filter:none;border-color:#efc49d}.cc-badge-item__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--cc-space-2)}.cc-badge-item__icon{width:3rem;height:3rem;border-radius:.75rem;border:1px solid var(--cc-color-border);background:#fff;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.cc-badge-item__image{width:100%;height:100%;object-fit:cover}.cc-badge-item__fallback{width:2rem;height:2rem;border-radius:var(--cc-radius-full);border:1px solid #efc49d;background:#fff5ec;color:#9a3412;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.72rem}.cc-badge-chip{border:1px solid #d4dae4;border-radius:var(--cc-radius-full);background:#f2f4f7;color:#475467;padding:.18rem .5rem;font-size:.7rem;font-weight:700}.cc-badge-chip.earned{border-color:#a6f4c5;background:#ecfdf3;color:#027a48}.cc-badge-item__body{display:grid;gap:.35rem}.cc-badge-item__title-row{display:flex;align-items:center;gap:var(--cc-space-2);justify-content:space-between}.cc-badge-item__title-row h3{font-size:.95rem}.cc-badge-item__title-row span{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#f8f5ef;color:#475467;padding:.14rem .44rem;font-size:.68rem;font-weight:600}.cc-badge-item p{color:var(--cc-color-muted);font-size:.82rem}.cc-badge-item small{border-top:1px solid var(--cc-color-border);padding-top:var(--cc-space-2);color:var(--cc-color-muted);font-size:.74rem}.cc-skeleton{display:inline-block;width:100%;height:.92rem;border-radius:var(--cc-radius-full);background:linear-gradient(90deg,#eceff3 25%,#e3e8ef,#eceff3 75%);background-size:220% 100%;animation:cc-skeleton-wave 1.2s ease-in-out infinite}.cc-skeleton--line{height:.85rem}.cc-skeleton--value{height:1rem;width:3.2rem}.cc-skeleton--tile{height:4.2rem;border-radius:var(--cc-radius-md)}.cc-skeleton--card{height:9.8rem;border-radius:var(--cc-radius-lg)}.cc-skeleton--row{height:2.2rem;border-radius:var(--cc-radius-md)}.cc-loading-layout{min-height:calc(100vh - 2 * var(--cc-space-5));width:min(1120px,100%);margin:0 auto;display:grid;align-content:center;gap:var(--cc-space-4)}.cc-loading-layout__header{display:grid;gap:var(--cc-space-2)}.cc-loading-layout__grid{display:grid;gap:var(--cc-space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.cc-loading-layout__list{display:grid;gap:var(--cc-space-2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@keyframes cc-skeleton-wave{0%{background-position:100% 50%}to{background-position:0 50%}}@media(max-width:1200px){.cc-stat-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.cc-home-root{padding:var(--cc-space-3)}.cc-login-layout{min-height:auto;align-content:start;padding-top:var(--cc-space-2)}.cc-app-shell__body{grid-template-columns:1fr}.cc-sidebar{position:static}.cc-sidebar__nav{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-section-grid.cols-2,.cc-section-grid.cols-3{grid-template-columns:1fr}.cc-col-span-2,.cc-col-span-3{grid-column:auto}.cc-notif-panel{top:auto;bottom:var(--cc-space-4);left:var(--cc-space-3);right:var(--cc-space-3);width:auto}.cc-mini-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-loading-layout{min-height:auto;align-content:start;padding-top:var(--cc-space-2)}.cc-loading-layout__grid{grid-template-columns:1fr}}@media(max-width:640px){.cc-topbar{flex-direction:column;align-items:flex-start}.cc-topbar__actions{width:100%;justify-content:flex-start}.cc-topbar-metrics{width:100%}.cc-topbar-metric{font-size:.72rem}.cc-sidebar__nav{grid-template-columns:1fr}.cc-stat-strip{grid-template-columns:1fr 1fr}.cc-kpi-grid,.cc-rating-chart__meta{grid-template-columns:1fr}.cc-rating-chart__svg{min-width:520px}.cc-badges-panel__head,.cc-credits{flex-direction:column;align-items:flex-start}}.cc-br-shell{min-height:100vh;background:var(--cc-color-bg);color:var(--cc-color-text)}.cc-br-appbar{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--cc-color-border);background:color-mix(in srgb,var(--cc-color-surface) 95%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cc-br-appbar__container{width:min(1440px,100%);margin:0 auto;padding:var(--cc-space-3) var(--cc-space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--cc-space-4);flex-wrap:wrap}.cc-br-appbar__left{min-width:280px;flex:1;display:grid;gap:var(--cc-space-2)}.cc-br-appbar__title-row{display:flex;align-items:center;gap:var(--cc-space-2);flex-wrap:wrap}.cc-br-appbar__title-row h1{margin:0;font-size:clamp(1.2rem,1.6vw,1.55rem);font-weight:700;line-height:1.2}.cc-br-appbar__chips{display:flex;flex-wrap:wrap;gap:var(--cc-space-2)}.cc-br-chip{display:inline-flex;align-items:center;gap:var(--cc-space-1);border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#fff;color:#344054;padding:.2rem .6rem;font-size:.74rem;font-weight:600}.cc-br-dot{width:.48rem;height:.48rem;border-radius:var(--cc-radius-full);display:inline-block}.cc-br-dot.success{background:var(--cc-color-success)}.cc-br-dot.danger{background:var(--cc-color-danger)}.cc-br-appbar__right{display:flex;align-items:center;gap:var(--cc-space-3);margin-left:auto}.cc-br-timer{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:#fff;padding:.45rem .82rem;text-align:right;min-width:98px}.cc-br-timer span{display:block;color:var(--cc-color-muted);font-size:.68rem;margin-bottom:.08rem}.cc-br-timer strong{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}.cc-br-timer.active{border-color:#f4b184;color:var(--cc-color-primary)}.cc-br-grid{width:min(1440px,100%);margin:0 auto;padding:var(--cc-space-4) var(--cc-space-5) var(--cc-space-6);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--cc-space-4)}.cc-br-grid__left{grid-column:span 5;display:grid;gap:var(--cc-space-4);min-width:0}.cc-br-grid__right{grid-column:span 7;min-width:0}.cc-br-players{padding:var(--cc-space-4)}.cc-br-players__head{display:flex;justify-content:space-between;align-items:center;gap:var(--cc-space-2)}.cc-br-players__head h2{margin:0;font-size:1.12rem}.cc-br-players__head span{color:var(--cc-color-muted);font-size:.78rem}.cc-br-players__grid{margin-top:var(--cc-space-3);display:grid;gap:var(--cc-space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.cc-br-player-tile{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:var(--cc-color-surface-strong);padding:var(--cc-space-3);display:grid;gap:var(--cc-space-1)}.cc-br-player-tile small{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--cc-color-muted)}.cc-br-player-tile strong{font-size:.95rem}.cc-br-player-tile p{margin:0;color:var(--cc-color-muted);font-size:.75rem}.cc-br-progress{margin-top:var(--cc-space-1)}.cc-br-progress__meta{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;color:var(--cc-color-muted)}.cc-br-progress__track{margin-top:var(--cc-space-1);height:.35rem;border-radius:var(--cc-radius-full);background:#e4e7ec;overflow:hidden}.cc-br-progress__fill{height:100%;background:#98a2b3}.cc-br-progress__fill.primary{background:var(--cc-color-primary)}.cc-br-badge-strip{margin-top:var(--cc-space-3);display:flex;flex-wrap:wrap;gap:var(--cc-space-2)}.cc-br-badge-pill{display:inline-flex;align-items:center;gap:var(--cc-space-1);border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#f8fafc;color:#667085;padding:.16rem .46rem;font-size:.68rem;font-weight:600}.cc-br-badge-pill.earned{border-color:#a6f4c5;background:#ecfdf3;color:#027a48}.cc-br-badge-pill__short{width:1.05rem;height:1.05rem;border-radius:var(--cc-radius-full);border:1px solid currentColor;display:inline-flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:700}.cc-br-badge-pill__state{color:inherit;opacity:.86}.cc-br-problem{padding:var(--cc-space-4)}.cc-br-problem__head{display:flex;align-items:center;justify-content:space-between;gap:var(--cc-space-3);margin-bottom:var(--cc-space-3)}.cc-br-problem__head h2{margin:0;font-size:1.16rem}.cc-br-problem__head span{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#fff;color:#475467;padding:.2rem .5rem;font-size:.72rem;font-weight:600}.cc-br-tabs{display:flex;flex-wrap:wrap;gap:var(--cc-space-2);margin-bottom:var(--cc-space-3)}.cc-br-tab{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-full);background:#fff;color:#667085;padding:.33rem .72rem;font-size:.8rem;font-weight:600}.cc-br-tab.active{border-color:#f4b184;background:#fff6ed;color:var(--cc-color-primary)}.cc-br-problem__content{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:var(--cc-color-surface-strong);min-height:430px;max-height:560px;overflow:auto;padding:var(--cc-space-3)}.cc-br-stack{display:grid;gap:var(--cc-space-2)}.cc-br-stack p{margin:0;color:#344054;font-size:.9rem;line-height:1.5}.cc-br-spec{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-sm);background:#fff;padding:var(--cc-space-2) var(--cc-space-3);display:grid;gap:var(--cc-space-1)}.cc-br-spec strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--cc-color-muted)}.cc-br-preline{margin:0;white-space:pre-line;font-family:var(--cc-font-mono);font-size:.84rem;line-height:1.45;color:#344054}.cc-br-result-card{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-sm);background:#fff;padding:var(--cc-space-3);display:grid;gap:var(--cc-space-1)}.cc-br-result-card.pass{border-color:#a6f4c5;background:#f2fcf6}.cc-br-result-card.fail{border-color:#fecdca;background:#fef3f2}.cc-br-result-card h4{margin:0;font-size:.86rem}.cc-br-result-card p{font-size:.82rem}.cc-br-gemini-loading{display:grid;gap:var(--cc-space-2)}.cc-br-editor{min-height:710px;display:grid;grid-template-rows:auto 1fr auto;gap:var(--cc-space-3);padding:var(--cc-space-4)}.cc-br-editor__toolbar{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:var(--cc-space-3)}.cc-br-editor__lang{max-width:220px;width:100%;display:grid;gap:var(--cc-space-1)}.cc-br-editor__lang span{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cc-color-muted)}.cc-br-editor__status{color:var(--cc-color-muted);font-size:.82rem}.cc-br-editor__surface{border:1px solid var(--cc-color-border);border-radius:var(--cc-radius-md);background:#0b1220;min-height:480px;overflow:hidden}.cc-br-editor__mount{height:100%;min-height:480px}.cc-br-editor__actions{display:flex;justify-content:flex-end;gap:var(--cc-space-2);flex-wrap:wrap}.cc-br-spinner{width:.78rem;height:.78rem;border-radius:var(--cc-radius-full);border:2px solid currentColor;border-right-color:transparent;display:inline-block;animation:cc-br-spin .7s linear infinite}@keyframes cc-br-spin{to{transform:rotate(1turn)}}@media(max-width:1200px){.cc-br-grid__left,.cc-br-grid__right{grid-column:span 12}.cc-br-editor{min-height:600px}.cc-br-problem__content{min-height:360px}}@media(max-width:900px){.cc-br-appbar__container,.cc-br-grid{padding:var(--cc-space-3)}.cc-br-players__grid{grid-template-columns:1fr}}@media(max-width:640px){.cc-br-appbar__right{width:100%;justify-content:space-between}.cc-br-editor__actions{position:sticky;bottom:0;width:calc(100% + var(--cc-space-2));margin-left:calc(var(--cc-space-1) * -1);margin-right:calc(var(--cc-space-1) * -1);padding:var(--cc-space-2);border-top:1px solid var(--cc-color-border);background:color-mix(in srgb,var(--cc-color-surface) 96%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:stretch}.cc-br-editor__actions .cc-btn{flex:1;justify-content:center}}
