

.cc-theme {
  --panel:#271a10; --panel-2:#31221590; --panel-row:#3a2817; --panel-row-hi:#46331f;
  --text:#ece0c8; --text-dim:#c3b08d; --head:#f4ead5;
  --beige:#e7d6b2; --beige-2:#dcc89f; --on-beige:#3a2614;
  --acc:#d99f5b; --acc-d:#bd8038; --acc-soft:rgba(217,159,91,.16);
  --line:rgba(236,224,200,.12); --line-2:rgba(236,224,200,.22);
  --cherry:#d56a6a;
  --shadow:0 10px 30px rgba(12,7,3,.42); --shadow-sm:0 4px 14px rgba(12,7,3,.32);
}



#cafe-bg-img{ position:fixed; left:0; top:-6%; width:100%; height:112%; z-index:-3; pointer-events:none;
  background-color:#b88f57; background-position:center center; background-size:cover; background-repeat:no-repeat; will-change:transform; }
#cafe-bg{ position:fixed; inset:0; width:100%; height:100%; z-index:-1; display:block; pointer-events:none; background:transparent; }
.cc-theme::after{ content:""; position:fixed; inset:0; z-index:-2; pointer-events:none;
  background:radial-gradient(135% 125% at 50% 26%, rgba(26,16,8,.30), rgba(12,7,3,.62)); }
.cc-theme #star-canvas{ display:none !important; }


.cc-theme main, .cc-theme footer{ transition:opacity .3s ease; }
.cc-theme.cc-loading main, .cc-theme.cc-loading footer{ opacity:0 !important; }


.cc-theme{ background:transparent !important; color:var(--text);
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif; }
.cc-theme a{ color:var(--acc); }
.cc-theme .muted{ color:var(--text-dim) !important; }
.cc-theme main{ display:block !important; position:relative; z-index:1; }
.cc-theme{ overflow-x:clip; }
.cc-theme .container{ max-width:840px; margin:0 auto; padding:1rem clamp(.7rem,3vw,1.4rem) 3rem; }


.cc-panel,.cc-card{ background:linear-gradient(180deg,rgba(46,31,19,.94),rgba(33,22,13,.96));
  border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); padding:clamp(1rem,3vw,1.5rem); }


.cc-theme nav{ background:rgba(231,214,178,.97); backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(58,38,20,.25); box-shadow:0 2px 14px rgba(20,12,5,.25); position:sticky; top:0; z-index:50; }
.cc-theme .logo{ background:none !important; background-image:none !important;
  -webkit-background-clip:initial !important; background-clip:initial !important;
  -webkit-text-fill-color:var(--on-beige) !important; color:var(--on-beige) !important; filter:none !important; letter-spacing:.5px; }
.cc-theme .logo:hover{ filter:none !important; transform:none; }
.cc-theme .logo::after{ content:" ☕"; }
.cc-theme .header-user,.cc-theme .header-username{ color:#5a3c1f; }
.cc-theme .header-separator{ color:rgba(58,38,20,.4); }
.cc-theme .nav-icon-btn{ color:#5a3c1f; background:transparent; border-radius:10px; }
.cc-theme .nav-icon-btn:hover{ color:var(--on-beige); background:rgba(120,80,40,.16); }


.cc-theme .xp-bar-container{ background:linear-gradient(180deg,rgba(46,31,19,.94),rgba(33,22,13,.96));
  border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow-sm); padding:.7rem 1rem; margin:1rem 0 .4rem; }
.cc-theme .xp-level-number{ background:linear-gradient(135deg,var(--acc),var(--acc-d)); color:#2a1a0c; box-shadow:0 2px 8px rgba(0,0,0,.3); }
.cc-theme .xp-level-title{ color:var(--text-dim); }
.cc-theme .xp-bar-track{ background:#1d130a; border:1px solid var(--line); }
.cc-theme .xp-progress-fill{ background:linear-gradient(90deg,var(--acc),var(--acc-d)); }
.cc-theme .xp-bar-text{ color:var(--text-dim); }
.cc-theme .xp-coins-display .coin-value{ color:var(--head); }


.cc-theme .glow-btn{ background:linear-gradient(135deg,var(--acc),var(--acc-d)); color:#2a1a0c; border:none; font-weight:700; box-shadow:0 4px 14px rgba(120,75,30,.4); }
.cc-theme .glow-btn:hover{ filter:brightness(1.07); }
.cc-theme .glow-btn:disabled{ filter:grayscale(.4); cursor:not-allowed; }
.cc-theme .ghost-btn-sm{ background:var(--panel-row); color:var(--text); border:1px solid var(--line-2); }
.cc-theme .ghost-btn-sm:hover{ background:var(--panel-row-hi); }


.cc-theme footer{ background:rgba(220,200,160,.97); border-top:1px solid rgba(58,38,20,.25); color:#5a3c1f; position:relative; z-index:1; }
.cc-theme footer h4{ color:var(--on-beige); }
.cc-theme .footer-link,.cc-theme .footer-contact a{ color:#8a5a26; }
.cc-theme .footer-link:hover{ color:var(--on-beige); }
.cc-theme .social-links a{ color:#6b4520; }
.cc-theme .social-links a:hover{ color:var(--on-beige); }
.cc-theme .footer-bottom{ border-top:1px solid rgba(58,38,20,.18); }
.cc-theme footer .muted{ color:#7a5630 !important; }


.cc-theme .side-drawer{ background:linear-gradient(180deg,#4a3019,#3a2414) !important; border-left:1px solid var(--line-2); color:var(--head); }
.cc-theme .drawer-header{ border-bottom:1px solid var(--line); }
.cc-theme .drawer-header .teko-title{ color:var(--head); }
.cc-theme .close-btn{ color:var(--text-dim); }
.cc-theme .close-btn:hover{ color:var(--head); }
.cc-theme .menu-section-heading{ color:var(--acc) !important; opacity:.9 !important; }
.cc-theme .menu-divider{ background:var(--line); }
.cc-theme .menu-link,.cc-theme .menu-sublink{ color:#e7d6b2 !important; opacity:1; }
.cc-theme .menu-link span,.cc-theme .menu-sublink span{ color:#e7d6b2 !important; }
.cc-theme .menu-link i,.cc-theme .menu-sublink i,
.cc-theme .menu-link .icon-game,.cc-theme .menu-link .icon-time,.cc-theme .menu-link .icon-reflex,
.cc-theme .menu-sublink .icon-game,.cc-theme .menu-sublink .icon-time,.cc-theme .menu-sublink .icon-reflex{ color:var(--acc) !important; opacity:1 !important; }
.cc-theme .menu-link:hover,.cc-theme .menu-sublink:hover{ background:var(--acc-soft); }
.cc-theme .menu-link:hover span,.cc-theme .menu-sublink:hover span{ color:var(--head) !important; }
.cc-theme .menu-link.active-link{ background:linear-gradient(135deg,rgba(217,159,91,.3),rgba(217,159,91,.14)) !important; box-shadow:inset 3px 0 0 var(--acc) !important; }
.cc-theme .menu-link.active-link span{ color:#ffe9c4 !important; }
.cc-theme .menu-expand-btn{ color:var(--text-dim); }
.cc-theme .menu-sub{ background:rgba(0,0,0,.18); }
.cc-theme .overlay-bg{ background:rgba(15,9,4,.55); }


.cc-theme .modal-overlay{ background:rgba(15,9,4,.6); }
.cc-theme .modal-box{ background:linear-gradient(180deg,#2e1f13,#231710) !important; border:1px solid var(--line-2) !important; box-shadow:var(--shadow) !important; color:var(--text); }
.cc-theme .modal-box.glass-panel{ backdrop-filter:none; }
.cc-theme .modal-header .teko-title,.cc-theme .modal-header h2{ color:var(--head); }
.cc-theme .lang-option{ background:var(--panel-row); border:1px solid var(--line); color:var(--text); }
.cc-theme .lang-option:hover{ background:var(--panel-row-hi); }
.cc-theme .lang-option.active{ background:linear-gradient(135deg,var(--acc),var(--acc-d)); color:#2a1a0c; border-color:transparent; }


.cc-theme .seo-cards-title,.cc-theme .cc-section-title,.cc-theme .cc-h1,.cc-theme .cc-sub,.cc-theme .cc-seo-h1,.cc-theme .cc-seo-lead{
  text-shadow:0 1px 2px rgba(20,12,5,.6), 0 2px 18px rgba(20,12,5,.5); }
.cc-theme .seo-cards-title,.cc-theme .cc-section-title{ color:var(--head); }


.cc-theme .seo-section{ position:relative; z-index:1; }
.cc-theme .seo-card{ background:linear-gradient(180deg,rgba(46,31,19,.95),rgba(33,22,13,.97));
  border:1px solid var(--line); box-shadow:var(--shadow-sm); color:var(--text-dim); border-radius:16px; }
.cc-theme .seo-card h3{ color:var(--head); }
.cc-theme .seo-card p{ color:var(--text-dim); }
.cc-theme .seo-card strong{ color:var(--text); }
.cc-theme .seo-card i,.cc-theme .seo-card .seo-card-icon{ color:var(--acc); }
.cc-theme .seo-card a{ color:var(--acc); font-weight:600; }
.cc-theme .ms-articles-box,.cc-theme .section-box{ background:linear-gradient(180deg,rgba(46,31,19,.95),rgba(33,22,13,.97)); border:1px solid var(--line); box-shadow:var(--shadow); border-radius:18px; }
.cc-theme .faq-section{ background:linear-gradient(180deg,rgba(46,31,19,.95),rgba(33,22,13,.97)); border:1px solid var(--line); box-shadow:var(--shadow-sm); }
.cc-theme .faq-section>.faq-question,.cc-theme .faq-section-title,.cc-theme h2,.cc-theme h3{ color:var(--head); }
.cc-theme .faq-item{ border-bottom:1px solid var(--line); }
.cc-theme .faq-question{ color:var(--text); }
.cc-theme .faq-answer{ color:var(--text-dim); }
.cc-theme .faq-answer a{ color:var(--acc); }
.cc-theme .faq-question:hover{ color:var(--acc); }


.cc-theme .lb-cat-tab{ background:var(--panel-row); color:var(--text-dim); border:1px solid var(--line-2); border-radius:999px; }
.cc-theme .lb-cat-tab:hover{ background:var(--panel-row-hi); color:var(--text); }
.cc-theme .lb-cat-tab.active,.cc-theme .lb-cat-tab.clicks.active{ background:linear-gradient(135deg,var(--acc),var(--acc-d)); color:#2a1a0c; border-color:transparent; box-shadow:0 4px 12px rgba(120,75,30,.34); }
.cc-theme .lb-cat-tab.coffee.active{ background:linear-gradient(135deg,#7a4a25,#5a3a22); color:var(--head); }
.cc-theme #lb-table,.cc-theme .lb-table.section-box{ background:linear-gradient(180deg,rgba(46,31,19,.96),rgba(33,22,13,.98)); border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow-sm); overflow:hidden; }
.cc-theme .leaderboard-table-header,.cc-theme .lb-head,.cc-theme #lb-head{ background:#1f150b; color:var(--text-dim); border-bottom:1px solid var(--line-2); }
.cc-theme .lb-row{ border-bottom:1px solid var(--line); color:var(--text); }
.cc-theme .lb-row:nth-child(even){ background:rgba(255,255,255,.03); }
.cc-theme .lb-row:hover{ background:var(--acc-soft); }
.cc-theme .lb-row.highlight-row{ background:linear-gradient(90deg,rgba(217,159,91,.22),rgba(217,159,91,.07)); box-shadow:inset 3px 0 0 var(--acc); font-weight:600; }
.cc-theme .lb-rank,.cc-theme .player-name{ color:var(--text); }
.cc-theme .player-tag{ color:var(--text-dim); }
.cc-theme .cps-value{ color:var(--acc); font-weight:700; }
.cc-theme .lb-your-rank-bar,.cc-theme #your-rank-bar{ background:linear-gradient(135deg,#34241590,#2a1c1290); border:1px solid var(--line-2); border-radius:14px; color:var(--text); box-shadow:var(--shadow-sm); }
.cc-theme .yr-label{ color:var(--text-dim); } .cc-theme .yr-value{ color:var(--head); }
.cc-theme .empty-state,.cc-theme .loading-indicator{ color:var(--text-dim); }
.cc-theme .empty-state i{ color:var(--acc); }
.lb-mode-levels .leaderboard-table-header,.lb-mode-levels .lb-row{ grid-template-columns:50px 1fr 100px; }
@media (min-width:768px){ .lb-mode-levels .leaderboard-table-header,.lb-mode-levels .lb-row{ grid-template-columns:70px 1fr 120px; } }
.lb-medal-mini{ font-size:.9em; }


.cc-theme .rank-row{ display:flex; align-items:center; gap:.7rem; padding:.55rem .8rem; border-radius:10px; color:var(--text); }
.cc-theme .rank-row+.rank-row{ margin-top:.3rem; }
.cc-theme .rank-row:nth-child(even){ background:rgba(255,255,255,.03); }
.cc-theme .rank-row.me{ background:linear-gradient(90deg,rgba(217,159,91,.22),rgba(217,159,91,.07)); box-shadow:inset 3px 0 0 var(--acc); font-weight:600; }
.cc-theme .rank-pos{ color:var(--acc); font-weight:700; min-width:2.6rem; }
.cc-theme .rank-name{ flex:1; } .cc-theme .rank-score{ color:var(--text-dim); font-variant-numeric:tabular-nums; }


.cc-play-wrap{ width:min(800px,95vw); margin:0 auto; position:relative; z-index:1; }
.cc-wrap{ display:flex; flex-direction:column; gap:1.1rem; margin-top:1rem; }
.cc-stage-card{ min-width:0; }
.cc-side{ min-width:0; }
#cc-rank-section{ width:min(800px,95vw); margin:1.1rem auto 0; }

.cc-h1{ font-family:'Teko','Inter',sans-serif; font-size:clamp(2rem,6vw,3rem); line-height:1; letter-spacing:.5px; color:var(--head); margin:.2rem 0 .1rem; text-align:center; }
.cc-h1 .cc-h1-accent{ color:var(--acc); }
.cc-sub{ text-align:center; color:#e7dcc6; max-width:60ch; margin:0 auto 1rem; }
.cc-seo-h1{ font-family:'Teko','Inter',sans-serif; font-size:clamp(2rem,5vw,2.8rem); line-height:1; letter-spacing:.5px; color:var(--head); text-align:center; margin:2.2rem auto .45rem; }
.cc-seo-lead{ max-width:68ch; margin:0 auto 1rem; text-align:center; color:#e7dcc6; line-height:1.65; }


.cc-res{ display:grid; grid-template-columns:repeat(4,1fr); gap:.6rem; margin-bottom:1rem; }
@media(max-width:520px){ .cc-res{ grid-template-columns:repeat(2,1fr); } }
.cc-res .cc-chip{ background:linear-gradient(180deg,rgba(46,31,19,.94),rgba(33,22,13,.96)); border:1px solid var(--line); border-radius:14px; padding:.6rem .7rem; text-align:center; box-shadow:var(--shadow-sm); }
.cc-chip .cc-chip-k{ display:block; font-size:.66rem; letter-spacing:.08em; text-transform:uppercase; color:var(--acc); }
.cc-chip .cc-chip-v{ display:block; font-size:1.15rem; font-weight:800; color:var(--head); font-variant-numeric:tabular-nums; }


.cc-stage-card{ display:flex; flex-direction:column; align-items:center; gap:.6rem; }
#cc-cafe-stage{ position:relative; width:100%; min-height:clamp(300px,40vh,440px); display:flex; align-items:center; justify-content:center; border-radius:20px; overflow:hidden;
  background:radial-gradient(120% 120% at 50% 35%, #3a2817, #271a10 70%, #1d130a);
  border:1px solid var(--line-2); box-shadow:inset 0 2px 18px rgba(0,0,0,.35), var(--shadow); }
#cc-cafe{ position:absolute; inset:0; width:100%; height:100%; z-index:2; border:none; background:transparent; cursor:pointer; padding:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.5rem; -webkit-tap-highlight-color:transparent; outline:none; }
#cc-cafe:focus{ outline:none; }
#cc-cafe-img{ width:clamp(200px,26vw,360px); height:auto; filter:drop-shadow(0 14px 26px rgba(0,0,0,.5)); pointer-events:none; user-select:none; transition:transform .08s ease; }
#cc-cafe:hover #cc-cafe-img{ transform:translateY(-3px) scale(1.03); }
#cc-cafe:active #cc-cafe-img{ transform:scale(.96); }
img.cc-cafe-img.cc-fallback,span.cc-cafe-img.cc-fallback{ font-size:140px; line-height:1; filter:none; }
.cc-cafe-badge{ background:linear-gradient(135deg,var(--acc),var(--acc-d)); color:#2a1a0c; font-weight:700; font-size:.82rem; padding:.22rem .7rem; border-radius:999px; box-shadow:0 3px 9px rgba(0,0,0,.35); }
.cc-cafe-hint{ color:var(--text-dim); font-size:.82rem; }
@keyframes ccPulse{ 0%{ transform:scale(1);} 40%{ transform:scale(.95);} 100%{ transform:scale(1);} }
#cc-cafe.cc-pulse #cc-cafe-img{ animation:ccPulse .18s ease; }

#cc-float-layer{ position:absolute; inset:0; pointer-events:none; z-index:3; overflow:hidden; }
.cc-float{ position:absolute; transform:translate(-50%,-50%); font-weight:800; color:var(--head); text-shadow:0 1px 3px rgba(0,0,0,.6); animation:ccFloat 1.05s ease-out forwards; font-size:1.05rem; }
.cc-float-frenzy{ color:var(--acc); font-size:1.25rem; }
.cc-float-gold{ color:#ffd479; font-size:1.1rem; }
@keyframes ccFloat{ 0%{ opacity:0; transform:translate(-50%,-30%) scale(.8);} 18%{ opacity:1;} 100%{ opacity:0; transform:translate(-50%,-150%) scale(1.05);} }
.cc-golden{ position:absolute; z-index:4; width:56px; height:56px; border:none; background:transparent; cursor:pointer; animation:ccGolden 1.6s ease-in-out infinite; filter:drop-shadow(0 0 10px rgba(255,200,60,.85)); }
.cc-golden img{ width:100%; height:100%; } .cc-golden-emoji{ font-size:44px; }
@keyframes ccGolden{ 0%,100%{ transform:translateY(0) rotate(-6deg);} 50%{ transform:translateY(-8px) rotate(6deg);} }

#cc-buff-bar{ display:none; flex-wrap:wrap; gap:.5rem; justify-content:center; width:100%; }
.cc-buff{ display:inline-flex; align-items:center; gap:.4rem; font-weight:700; font-size:.82rem; padding:.3rem .7rem; border-radius:999px; }
.cc-buff.rush{ background:rgba(217,159,91,.2); color:var(--acc); border:1px solid rgba(217,159,91,.4); }
.cc-buff.frenzy{ background:rgba(213,106,106,.18); color:#e69; border:1px solid rgba(213,106,106,.34); }


.cc-tabs{ display:flex; gap:.35rem; flex-wrap:wrap; margin-bottom:.8rem; }
.cc-tab{ flex:1 1 auto; min-width:0; background:var(--panel-row); border:1px solid var(--line-2); color:var(--text-dim); border-radius:11px; padding:.5rem .45rem; font-weight:700; font-size:.8rem; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:.3rem; transition:all .12s ease; -webkit-tap-highlight-color:transparent; }
.cc-tab:hover{ background:var(--panel-row-hi); color:var(--text); }
.cc-tab:focus{ outline:none; }
.cc-tab.active{ background:linear-gradient(135deg,var(--acc),var(--acc-d)); color:#2a1a0c; border-color:transparent; box-shadow:0 4px 12px rgba(120,75,30,.34); }
.cc-tabpane{ display:none; } .cc-tabpane.active{ display:block; animation:ccFade .18s ease; }
@keyframes ccFade{ from{ opacity:0; transform:translateY(4px);} to{ opacity:1; transform:none;} }
.cc-card-h{ font-family:'Teko','Inter',sans-serif; font-size:1.5rem; color:var(--head); margin:0 0 .6rem; letter-spacing:.5px; display:flex; align-items:center; justify-content:space-between; }


.cc-amt{ display:flex; gap:.35rem; margin-bottom:.7rem; }
.cc-amt-btn{ flex:1; background:var(--panel-row); border:1px solid var(--line-2); color:var(--text-dim); border-radius:9px; padding:.34rem; font-weight:700; font-size:.8rem; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.cc-amt-btn:focus{ outline:none; }
.cc-amt-btn.active{ background:var(--acc); color:#2a1a0c; border-color:transparent; }


.cc-shop{ display:flex; flex-direction:column; gap:.5rem; }
.cc-shop-row{ display:flex; align-items:center; gap:.7rem; width:100%; text-align:left; cursor:pointer;
  background:var(--panel-row); border:1px solid var(--line); border-left:4px solid var(--acc-d);
  border-radius:13px; padding:.6rem .7rem; transition:background .12s ease; -webkit-tap-highlight-color:transparent; outline:none; }
.cc-shop-row:hover{ background:var(--panel-row-hi); }
.cc-shop-row:focus,.cc-shop-row:focus-visible,.cc-shop-row:active{ outline:none; background:var(--panel-row); }
.cc-shop-row:hover:focus{ background:var(--panel-row-hi); }
.cc-shop-row.locked{ opacity:.5; cursor:not-allowed; }
.cc-shop-ic{ width:42px; height:42px; flex:none; display:flex; align-items:center; justify-content:center; background:#1f150b; border-radius:11px; overflow:hidden; }
.cc-shop-ic .cc-pic{ width:34px; height:34px; object-fit:contain; } .cc-shop-ic .cc-pic.cc-fallback{ font-size:24px; width:auto; height:auto; }
.cc-shop-main{ flex:1; min-width:0; display:flex; flex-direction:column; gap:.1rem; }
.cc-shop-name{ font-weight:700; color:var(--head); }
.cc-shop-sub{ font-size:.78rem; color:var(--text-dim); }
.cc-shop-cost{ color:var(--acc); font-weight:700; white-space:nowrap; } .cc-shop-cost i{ font-size:.72em; }
.cc-shop-right{ flex:none; display:flex; flex-direction:column; align-items:flex-end; gap:.1rem; }
.cc-shop-owned{ font-weight:800; font-size:1.05rem; color:var(--text); font-variant-numeric:tabular-nums; }
.cc-shop-amt{ font-size:.72rem; color:var(--text-dim); }


#cc-upgrades{ display:flex; flex-direction:column; gap:.5rem; }
.cc-upg{ display:flex; align-items:center; gap:.7rem; width:100%; text-align:left; cursor:pointer; background:var(--panel-row); border:1px solid var(--line); border-radius:13px; padding:.55rem .7rem; transition:background .12s ease; -webkit-tap-highlight-color:transparent; outline:none; }
.cc-upg:hover{ background:var(--panel-row-hi); } .cc-upg:focus{ outline:none; }
.cc-upg.afford{ border-color:rgba(217,159,91,.5); }
.cc-upg-ic{ width:40px; height:40px; flex:none; display:flex; align-items:center; justify-content:center; background:#1f150b; border-radius:11px; color:var(--acc); font-size:1.05rem; }
.cc-upg-body{ flex:1; min-width:0; display:flex; flex-direction:column; gap:.1rem; }
.cc-upg-name{ font-weight:700; color:var(--head); } .cc-upg-desc{ font-size:.78rem; color:var(--text-dim); }
.cc-upg-cost{ flex:none; color:var(--acc); font-weight:700; white-space:nowrap; } .cc-upg-cost i{ font-size:.72em; }


.cc-cafe-head{ font-family:'Teko','Inter',sans-serif; font-size:1.3rem; color:var(--head); margin-bottom:.5rem; display:flex; align-items:center; gap:.4rem; }
.cc-cafe-head i{ color:var(--acc); }
.cc-cafe-built{ display:flex; flex-wrap:wrap; gap:.35rem; margin-bottom:.7rem; }
.cc-cafe-done{ font-size:.72rem; font-weight:600; color:#9fce7a; background:rgba(120,170,90,.14); border:1px solid rgba(120,170,90,.3); border-radius:999px; padding:.16rem .5rem; }
.cc-cafe-done i{ font-size:.8em; }
.cc-cafe-hint2{ font-size:.78rem; color:var(--text-dim); margin:.7rem 0 0; }
.cc-cafe-allmsg{ text-align:center; color:var(--acc); padding:1rem; font-weight:600; }
.cc-cu{ display:flex; align-items:center; gap:.7rem; width:100%; text-align:left; cursor:pointer; background:var(--panel-row); border:1px solid var(--line); border-radius:14px; padding:.7rem .8rem; transition:all .12s ease; -webkit-tap-highlight-color:transparent; outline:none; }
.cc-cu:focus{ outline:none; }
.cc-cu-ic{ width:46px; height:46px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:12px; background:#1f150b; color:var(--acc); font-size:1.2rem; }
.cc-cu-body{ flex:1; min-width:0; display:flex; flex-direction:column; gap:.12rem; }
.cc-cu-name{ font-weight:800; color:var(--head); }
.cc-cu-mult{ color:#2a1a0c; background:var(--acc); font-size:.72rem; padding:.04rem .4rem; border-radius:999px; margin-left:.25rem; }
.cc-cu-desc{ font-size:.78rem; color:var(--text-dim); }
.cc-cu-cost{ font-size:.85rem; color:var(--acc); font-weight:700; margin-top:.15rem; }
.cc-cu-state{ flex:none; font-size:.74rem; font-weight:700; color:var(--text-dim); white-space:nowrap; }
.cc-cu.active{ border-color:var(--acc); box-shadow:0 0 0 1px var(--acc) inset; }
.cc-cu.afford{ background:linear-gradient(180deg,#3a2817,#46331f); box-shadow:0 4px 14px rgba(120,75,30,.3); }
.cc-cu.afford .cc-cu-state{ color:var(--acc); }


.cc-prestige{ background:linear-gradient(180deg,rgba(70,40,40,.5),rgba(46,28,20,.55)); border:1px solid rgba(213,106,106,.3); border-radius:14px; padding:1rem; margin-bottom:1rem; }
.cc-prestige-head{ font-family:'Teko','Inter',sans-serif; font-size:1.4rem; color:var(--head); display:flex; align-items:center; gap:.4rem; }
.cc-prestige-head i{ color:var(--cherry); }
.cc-prestige-desc{ font-size:.82rem; color:var(--text-dim); margin:.4rem 0 .7rem; }
.cc-prestige-stat{ display:flex; justify-content:space-between; padding:.35rem 0; border-bottom:1px solid var(--line); }
.cc-prestige-stat span{ color:var(--text-dim); font-size:.86rem; } .cc-prestige-stat b{ color:var(--head); }
.cc-pshop-head{ font-family:'Teko','Inter',sans-serif; font-size:1.25rem; color:var(--head); margin:.2rem 0 .6rem; display:flex; align-items:center; gap:.4rem; flex-wrap:wrap; }
.cc-pshop-head i{ color:var(--cherry); }
#cc-pshop-list{ display:flex; flex-direction:column; gap:.5rem; }
.cc-ps{ display:flex; align-items:center; gap:.7rem; width:100%; text-align:left; cursor:pointer; background:var(--panel-row); border:1px solid var(--line); border-radius:13px; padding:.55rem .7rem; transition:background .12s ease; -webkit-tap-highlight-color:transparent; outline:none; }
.cc-ps:hover{ background:var(--panel-row-hi); } .cc-ps:focus{ outline:none; }
.cc-ps.afford{ border-color:rgba(213,106,106,.5); }
.cc-ps.done{ opacity:.6; cursor:default; }
.cc-ps-ic{ width:40px; height:40px; flex:none; display:flex; align-items:center; justify-content:center; background:#1f150b; border-radius:11px; color:var(--cherry); font-size:1.05rem; }
.cc-ps-body{ flex:1; min-width:0; display:flex; flex-direction:column; gap:.1rem; }
.cc-ps-name{ font-weight:700; color:var(--head); } .cc-ps-desc{ font-size:.78rem; color:var(--text-dim); }
.cc-ps-cost{ flex:none; color:var(--cherry); font-weight:700; white-space:nowrap; }
.cc-ps.done .cc-ps-cost{ color:#9fce7a; }


.cc-ach-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:.5rem; }
.cc-ach{ display:flex; align-items:center; gap:.5rem; background:var(--panel-row); border:1px solid var(--line); border-radius:11px; padding:.5rem .6rem; opacity:.5; filter:grayscale(.5); }
.cc-ach i{ color:var(--text-dim); font-size:1rem; } .cc-ach-name{ font-size:.78rem; color:var(--text-dim); font-weight:600; }
.cc-ach.got{ opacity:1; filter:none; background:linear-gradient(180deg,#3a2817,#46331f); border-color:rgba(217,159,91,.45); }
.cc-ach.got i{ color:var(--acc); } .cc-ach.got .cc-ach-name{ color:var(--head); }


.cc-stat{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.5rem .2rem; border-bottom:1px solid var(--line); }
.cc-stat span{ color:var(--text-dim); font-size:.88rem; } .cc-stat b{ color:var(--head); font-variant-numeric:tabular-nums; }
.cc-settings{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.9rem; }
.cc-settings button{ flex:1 1 46%; background:var(--panel-row); border:1px solid var(--line-2); color:var(--text-dim); border-radius:10px; padding:.5rem; font-weight:600; font-size:.82rem; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:.4rem; }
.cc-settings button:hover{ background:var(--panel-row-hi); color:var(--text); }
#cc-set-reset{ color:#e08; }
#cc-io-text{ width:100%; min-height:120px; border-radius:10px; border:1px solid var(--line-2); background:#1d130a; color:var(--text); padding:.6rem; font-family:monospace; font-size:.78rem; resize:vertical; }

.cc-welcome-amt{ display:inline-block; font-size:1.6rem; font-weight:800; color:var(--acc); margin:.4rem 0; }


.cc-toast{ position:fixed; left:50%; bottom:26px; transform:translateX(-50%) translateY(20px); background:#1c120a; color:var(--head); padding:.7rem 1.1rem; border-radius:999px; font-weight:700; font-size:.9rem; box-shadow:0 8px 24px rgba(0,0,0,.5); border:1px solid var(--line-2); opacity:0; pointer-events:none; transition:opacity .2s ease, transform .2s ease; z-index:200; max-width:90vw; text-align:center; }
.cc-toast.show{ opacity:1; transform:translateX(-50%) translateY(0); }

.cc-cta{ text-align:center; margin:1rem 0; }
.cc-section-title{ font-family:'Teko','Inter',sans-serif; font-size:1.7rem; color:var(--head); text-align:center; margin:2rem 0 1rem; letter-spacing:.5px; }
.cc-side{ display:flex; flex-direction:column; gap:1rem; }




.cc-theme .side-drawer,
.cc-theme .side-drawer nav,
.cc-theme .side-drawer .drawer-nav-compact {
  background-color:#2e1d10 !important; background-image:none !important; box-shadow:none !important;
}
.cc-theme .side-drawer .menu-link,
.cc-theme .side-drawer .menu-link span,
.cc-theme .side-drawer .menu-sublink,
.cc-theme .side-drawer .menu-sublink span   { color:#f4ead5 !important; opacity:1 !important; }
.cc-theme .side-drawer .menu-section-heading { color:#e0a96a !important; opacity:1 !important; }
.cc-theme .side-drawer .menu-link i,
.cc-theme .side-drawer .menu-sublink i,
.cc-theme .side-drawer .menu-expand-btn      { color:#e0a96a !important; opacity:1 !important; }
.cc-theme .side-drawer .menu-link:hover      { background:rgba(217,159,91,.18) !important; }
.cc-theme .side-drawer .menu-divider         { background:rgba(244,234,213,.16) !important; }

.cc-theme .side-drawer .menu-link.active-link span { color:#fff3df !important; }


@media (max-width:560px){
  .cc-theme .cc-section-title + div[style*="grid-template-columns"]{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:.5rem !important; max-width:100% !important;
  }
  .cc-theme .container{ padding-left:14px !important; padding-right:14px !important; box-sizing:border-box; }
}


.cc-theme .cc-shop-row,
.cc-theme .cc-upg,
.cc-theme .cc-cu,
.cc-theme .cc-ps,
.cc-theme .cc-tab,
.cc-theme .cc-chip,
.cc-theme #cc-cafe-stage {
  -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none;
  -webkit-tap-highlight-color:transparent;
}


#articles-modal .articles-list{ display:flex; flex-direction:column; gap:.55rem; margin:.3rem 0 .9rem; }
#articles-modal .article-row{ display:block; text-decoration:none; color:#f4ead5;
  border:1px solid rgba(244,234,213,.16); border-radius:12px; padding:.7rem .85rem;
  transition:border-color .12s, background .12s, transform .12s; }
#articles-modal .article-row:hover{ border-color:#d99f5b; background:rgba(217,159,91,.12); transform:translateY(-2px); }
#articles-modal .article-row b{ display:block; font-size:.98rem; margin-bottom:.18rem; }
#articles-modal .article-row span{ display:block; font-size:.82rem; line-height:1.4; color:#cbb892; }
#articles-modal .articles-all{ display:block; text-align:center; text-decoration:none; font-weight:700;
  padding:.7rem; border-radius:12px; color:#2e1d10; background:linear-gradient(135deg,#e8b667,#d99f5b); }
#articles-modal .articles-all:hover{ filter:brightness(1.06); }
