*{-webkit-tap-highlight-color:transparent}.cp-bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.cp-bg-glow{position:absolute;border-radius:50%;filter:blur(50px);opacity:0.18}.cp-bg-glow--a{width:500px;height:400px;top:-100px;left:-100px;background:radial-gradient(ellipse,#c97a35 0%,transparent 70%);animation:cpGlowDrift 14s ease-in-out infinite alternate}.cp-bg-glow--b{width:400px;height:300px;bottom:80px;right:-80px;background:radial-gradient(ellipse,#8B5E3C 0%,transparent 70%);animation:cpGlowDrift 18s ease-in-out infinite alternate-reverse}@keyframes cpGlowDrift{0%{transform:translate(0,0) scale(1)}100%{transform:translate(40px,30px) scale(1.1)}}.cp-bg-glow--c{width:280px;height:200px;top:42%;left:50%;transform:translateX(-50%);background:radial-gradient(ellipse,#7A5030 0%,transparent 70%);animation:cpGlowDrift 22s ease-in-out infinite alternate;opacity:0.10}:root{--cp-bg:#1a0f09;--cp-surface:rgba(255,230,180,0.07);--cp-border:rgba(255,210,140,0.18);--cp-cream:#F5EDD8;--cp-gold:#E8801C;--cp-caramel:#c97a35;--cp-muted:rgba(245,237,216,0.45);--cp-topbar-h:62px;--cp-card-empty:rgba(255,210,140,0.08);--cp-card-filled:rgba(255,210,140,0.14);--cp-card-sel:rgba(200,114,42,0.85);--cp-yellow:rgba(185,78,45,0.88);--cp-green:rgba(172,125,22,0.88);--cp-blue:rgba(100,62,22,0.88);--cp-purple:rgba(72,98,38,0.88);--cp-max-w:480px}body{background:var(--cp-bg);background-image:linear-gradient(rgba(10,5,2,0.60),rgba(10,5,2,0.60)),url('images/game-wallpaper.webp');background-size:cover;background-position:center;background-attachment:fixed;min-height:100vh;min-height:100dvh;overflow-x:hidden;font-family:'DM Sans',system-ui,sans-serif;color:var(--cp-cream)}#cp-footer-placeholder{display:none}.cp-footer{display:none}.cp-topbar{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(26,15,9,0.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--cp-border);height:var(--cp-topbar-h)}.cp-topbar-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 6px;max-width:var(--cp-max-w);margin:0 auto;height:100%}.cp-home-logo{display:flex;align-items:center;opacity:0.55;transition:opacity 0.2s;text-decoration:none;flex-shrink:0}.cp-home-logo:hover{opacity:0.9}.cp-home-logo img{display:block;width:32px;height:32px}.cp-topbar-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(26px,5vw,36px);font-weight:400;color:#f2e8d0;letter-spacing:0;text-shadow:0 2px 20px rgba(0,0,0,0.7)}.cp-topbar-title em{font-style:italic;color:#c97a35;font-family:'Cormorant Garamond',Georgia,serif}.cp-main{position:relative;z-index:1;padding-top:var(--cp-topbar-h);max-width:var(--cp-max-w);margin:0 auto;padding-left:14px;padding-right:14px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0))}.cp-page{display:none}.cp-page.active{display:block}.cp-how{background:rgba(10,5,2,0.96);border:1px solid var(--cp-border);border-radius:10px;padding:11px 14px;margin-bottom:8px;margin-top:16px;overflow:hidden}.cp-how summary{font-family:'DM Sans',sans-serif;font-size:0.78rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--cp-muted);cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}.cp-how summary::-webkit-details-marker{display:none}.cp-how summary::after{content:'▾';font-size:0.8rem;opacity:0.6;transition:transform 0.2s}.cp-how[open] summary::after{transform:rotate(180deg)}.cp-how-body{margin-top:10px;font-size:0.78rem;color:var(--cp-cream);line-height:1.65;text-shadow:0 1px 3px rgba(0,0,0,0.8)}.cp-how-body p{margin-bottom:7px}.cp-legend{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-top:8px}.cp-legend-item{display:flex;align-items:center;gap:7px;font-size:0.74rem;font-weight:700;color:var(--cp-cream)}.cp-legend-dot{width:14px;height:14px;border-radius:4px;flex-shrink:0}#cp-solved{display:flex;flex-direction:column;gap:5px;margin-bottom:6px}.cp-solved-group{border-radius:10px;padding:10px 14px;animation:cpReveal 0.4s cubic-bezier(0.34,1.5,0.64,1) both}@keyframes cpReveal{from{opacity:0;transform:scale(0.96) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}.cp-solved-group[data-level="0"]{background:var(--cp-yellow)}.cp-solved-group[data-level="1"]{background:var(--cp-green)}.cp-solved-group[data-level="2"]{background:var(--cp-blue)}.cp-solved-group[data-level="3"]{background:var(--cp-purple)}.cp-solved-name{font-size:0.78rem;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:rgba(255,255,255,0.95)}.cp-solved-words{font-size:0.75rem;color:rgba(255,255,255,0.75);margin-top:2px;font-weight:600}.cp-oneaway{text-align:center;font-size:0.78rem;font-weight:700;color:var(--cp-gold);height:18px;margin-bottom:4px}#cp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}.cp-card{aspect-ratio:1.05/1;display:flex;align-items:center;justify-content:center;text-align:center;padding:4px 3px;background:var(--cp-card-empty);border:1.5px solid var(--cp-border);border-radius:10px;box-shadow:inset 0 1px 0 rgba(255,230,160,0.05);font-family:'DM Sans',sans-serif;font-size:clamp(0.58rem,2.6vw,0.74rem);font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--cp-cream);cursor:pointer;user-select:none;touch-action:manipulation;transition:background 0.12s,border-color 0.12s,transform 0.12s;line-height:1.2}.cp-card:hover{background:rgba(255,210,140,0.18);border-color:rgba(255,210,140,0.35)}.cp-card.selected{background:var(--cp-card-sel);border-color:var(--cp-caramel);color:#fff;transform:translateY(-2px) scale(1.04);box-shadow:0 4px 16px rgba(200,114,42,0.35)}.cp-card.wrong-shake{animation:cpWrongShake 0.38s ease}@keyframes cpWrongShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}.cp-card.correct-pop{animation:cpCorrectPop 0.32s cubic-bezier(0.34,1.56,0.64,1)}@keyframes cpCorrectPop{0%{transform:scale(1)}50%{transform:scale(1.12)}100%{transform:scale(1)}}.cp-timer-row{display:flex;align-items:center;justify-content:center;gap:8px;padding:4px 0 6px}.cp-timer-label{font-size:0.7rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:var(--cp-muted)}.cp-timer-val{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:400;color:var(--cp-caramel);min-width:42px;text-align:center}.cp-mistakes-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.cp-mistakes-label{font-size:0.7rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:var(--cp-muted)}.cp-dots{display:flex;gap:6px}.cp-dot{width:11px;height:11px;border-radius:50%;background:rgba(255,210,140,0.15);border:1.5px solid rgba(255,210,140,0.20);transition:background 0.25s,transform 0.25s}.cp-dot.used{background:var(--cp-caramel);border-color:var(--cp-gold);transform:scale(0.82)}.cp-btn-row{display:flex;gap:7px}.cp-btn{flex:1;height:46px;border:none;border-radius:10px;font-family:'DM Sans',sans-serif;font-size:0.8rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;cursor:pointer;touch-action:manipulation;transition:all 0.16s}.cp-btn-secondary{background:rgba(26,15,9,0.70);color:var(--cp-cream);border:1px solid var(--cp-border)}.cp-btn-secondary:hover{background:rgba(255,210,140,0.12);border-color:rgba(255,210,140,0.30)}.cp-btn-primary{background:var(--cp-caramel);color:#fff;box-shadow:0 3px 12px rgba(200,114,42,0.35)}.cp-btn-primary:hover{background:var(--cp-gold);transform:translateY(-1px)}.cp-btn-primary:disabled{background:rgba(255,210,140,0.10);color:var(--cp-muted);box-shadow:none;transform:none;cursor:not-allowed}#cp-toast{position:fixed;top:calc(var(--cp-topbar-h) + 48px);left:50%;transform:translateX(-50%) translateY(-8px);background:rgba(26,15,9,0.95);border:1px solid rgba(255,210,140,0.25);color:var(--cp-cream);padding:8px 18px;border-radius:20px;font-size:0.82rem;font-weight:700;white-space:nowrap;pointer-events:none;opacity:0;z-index:300;backdrop-filter:blur(6px);transition:opacity 0.2s,transform 0.2s}#cp-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}#cp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:55vh;gap:16px}.cp-loading-paw{animation:cpPawPulse 1s ease-in-out infinite}@keyframes cpPawPulse{0%,100%{transform:scale(1);opacity:0.6}50%{transform:scale(1.14);opacity:1}}.cp-loading-text{font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;color:var(--cp-caramel);opacity:0.8}#cp-error{display:none;flex-direction:column;align-items:center;justify-content:center;min-height:55vh;gap:14px;text-align:center;padding:20px}#cp-error.visible{display:flex}.cp-error-emoji{font-size:2.8rem}.cp-error-title{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:400;color:var(--cp-cream)}.cp-error-msg{font-size:0.82rem;color:var(--cp-muted);max-width:260px;line-height:1.5}.cp-btn-retry{background:var(--cp-caramel);color:#fff;border:none;border-radius:10px;padding:11px 26px;font-family:'DM Sans',sans-serif;font-size:0.85rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;cursor:pointer}#cp-completion{display:none;flex-direction:column;align-items:center;gap:14px;padding:10px 0 20px;text-align:center;animation:cpFadeUp 0.4s ease both}#cp-completion.visible{display:flex}@keyframes cpFadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.cp-completion-paw{font-size:3rem;animation:cpBounce 1.2s ease infinite}@keyframes cpBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}.cp-completion-title{font-family:'Cormorant Garamond',serif;font-size:1.7rem;font-weight:400;color:var(--cp-cream)}.cp-completion-msg{font-family:'Cormorant Garamond',serif;font-size:1rem;font-style:italic;color:var(--cp-muted)}.cp-stats{display:flex;gap:12px}.cp-stat-box{background:var(--cp-surface);border:1px solid var(--cp-border);border-radius:10px;padding:10px 18px;min-width:76px}.cp-stat-val{font-family:'Cormorant Garamond',serif;font-size:1.9rem;font-weight:400;color:var(--cp-caramel);line-height:1}.cp-stat-lbl{font-size:0.66rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--cp-muted);margin-top:2px}.cp-share-grid{background:rgba(26,15,9,0.55);border:1px solid var(--cp-border);border-radius:10px;padding:10px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;width:100%}.cp-share-cell{aspect-ratio:1;border-radius:3px}.cp-btn-share{width:100%;height:50px;background:var(--cp-caramel);color:#fff;border:none;border-radius:10px;font-family:'DM Sans',sans-serif;font-size:0.9rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;cursor:pointer;box-shadow:0 3px 14px rgba(200,114,42,0.4);transition:all 0.16s}.cp-btn-share:hover{background:var(--cp-gold);transform:translateY(-1px)}.cp-btn-lb{width:100%;height:46px;background:rgba(255,210,140,0.08);color:var(--cp-cream);border:1px solid var(--cp-border);border-radius:10px;font-family:'DM Sans',sans-serif;font-size:0.82rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;cursor:pointer;transition:all 0.16s}.cp-btn-lb:hover{background:rgba(255,210,140,0.16);border-color:rgba(255,210,140,0.30)}.cp-overlay{position:fixed;inset:0;z-index:180;display:flex;align-items:center;justify-content:center;background:rgba(14,8,3,0.46);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);padding:20px;animation:cpOverlayIn 0.22s ease}.cp-overlay[hidden]{display:none}@keyframes cpOverlayIn{from{opacity:0}to{opacity:1}}.cp-panel{background:linear-gradient(160deg,#2e1a0c,#1e1008);border:1.5px solid rgba(255,210,140,0.22);border-radius:24px;padding:28px 24px 24px;width:100%;max-width:380px;position:relative;animation:cpPanelUp 0.28s cubic-bezier(0.34,1.4,0.64,1);max-height:90dvh;overflow-y:auto}@keyframes cpPanelUp{from{transform:translateY(30px) scale(0.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.cp-panel-close{position:absolute;top:10px;right:10px;width:44px;height:44px;border-radius:50%;background:rgba(255,210,140,0.1);border:1px solid rgba(255,210,140,0.2);color:var(--cp-muted);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s}.cp-panel-close:hover{background:rgba(255,210,140,0.2);color:var(--cp-cream)}.cp-panel-title{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--cp-cream);margin-bottom:6px;text-align:center}.cp-panel-sub{font-size:13px;color:var(--cp-muted);text-align:center;margin-bottom:18px}.cp-lb-list{display:flex;flex-direction:column;gap:14px;margin-top:22px;margin-bottom:20px}.cp-name-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.75);display:flex;align-items:center;justify-content:center;z-index:99999;animation:cpOverlayIn 0.18s ease}.cp-name-modal[hidden]{display:none}.cp-name-panel{background:linear-gradient(160deg,#2e1a0c,#1e1008);border:1.5px solid rgba(255,210,140,0.22);border-radius:24px;padding:22px 18px 20px;width:90%;max-width:360px;position:relative}.cp-name-input{width:100%;box-sizing:border-box;background:rgba(255,255,255,0.12);border:2px solid rgba(244,207,138,0.85);border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:16px;color:#fff;outline:none;display:block;-webkit-appearance:none;min-height:52px;-webkit-text-fill-color:#fff;font-family:'DM Sans',sans-serif}.cp-name-input:focus{border-color:#c97a35}.cp-name-input::placeholder{color:var(--cp-muted)}.cp-name-submit{display:block;width:100%;padding:14px;border-radius:16px;border:none;background:linear-gradient(135deg,#f4cf8a,#c97a35);color:#2c1a0a;font-size:15px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif}.cp-name-skip{width:100%;background:none;border:none;color:var(--cp-muted);font-size:13px;cursor:pointer;padding:8px;text-decoration:underline;margin-top:6px;font-family:'DM Sans',sans-serif}#cp-char-popup{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(120%);z-index:400;pointer-events:none;display:flex;align-items:flex-end;gap:10px;transition:transform 0.38s cubic-bezier(0.34,1.5,0.64,1);max-width:var(--cp-max-w);padding:0 14px;will-change:transform}#cp-char-popup.show{transform:translateX(-50%) translateY(0)}.cp-char-img{width:90px;height:90px;object-fit:contain;display:block;flex-shrink:0;filter:drop-shadow(0 4px 16px rgba(0,0,0,0.55))}.cp-char-bubble{background:rgba(26,15,9,0.96);border:1.5px solid var(--cp-border);border-radius:16px 16px 16px 4px;padding:10px 14px;font-family:'Cormorant Garamond',serif;font-size:0.95rem;font-style:italic;color:var(--cp-cream);max-width:230px;line-height:1.45;backdrop-filter:blur(6px);box-shadow:0 8px 32px rgba(0,0,0,0.5)}.cp-char-bubble strong{display:block;font-family:'DM Sans',sans-serif;font-size:0.66rem;font-style:normal;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--cp-caramel);margin-bottom:3px}.cp-comp-character{display:flex;align-items:flex-end;gap:12px;margin-bottom:4px}.cp-comp-char-img{width:80px;height:80px;object-fit:contain;display:block;flex-shrink:0;filter:drop-shadow(0 4px 20px rgba(0,0,0,0.6));animation:cpCharBob 2.4s ease-in-out infinite}@keyframes cpCharBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}.cp-comp-char-speech{background:rgba(26,15,9,0.90);border:1.5px solid var(--cp-border);border-radius:16px 16px 16px 4px;padding:10px 14px;font-family:'Cormorant Garamond',serif;font-size:0.92rem;font-style:italic;color:var(--cp-cream);line-height:1.5;text-align:left}.cp-comp-char-speech strong{display:block;font-family:'DM Sans',sans-serif;font-size:0.66rem;font-style:normal;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--cp-caramel);margin-bottom:3px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important}}:focus-visible{outline:2px solid var(--cp-caramel);outline-offset:2px;border-radius:4px}


/* ================================================================
   LIGHT MODE
================================================================ */
/* ── wallpaper & body (was .light body - BUG: light is ON body, not parent) ── */
body.light {
  background: #f7f0e0 url('images/game-wallpaper.webp') center center / cover no-repeat;
  color: #1a0f09;
}
@supports (-webkit-touch-callout: none) {
  body.light { background-attachment: scroll; }
}

/* ── topbar ── */
.light .cp-topbar {
  background: rgba(247,240,224,0.94);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(26,15,9,0.10);
  box-shadow: 0 1px 12px rgba(26,15,9,0.06);
}
.light .cp-home-logo { opacity: 0.75; }
.light .cp-home-logo img { filter: brightness(0) opacity(0.65); }
.light .cp-topbar-title { color: #1a0f09; text-shadow: none; }
.light .cp-topbar-title em { color: #a85e1a; }

/* ── floating particles – dark so they show on cream ── */


/* ── game glows off ── */
.light .cp-bg-glow--a, .light .cp-bg-glow--b, .light .cp-bg-glow--c { opacity: 0; }

/* ── cards ── */
.light .cp-card {
  background: rgba(255,255,255,0.72);
  border-color: rgba(26,15,9,0.13);
  color: #1a0f09;
  box-shadow: 0 2px 8px rgba(26,15,9,0.08), inset 0 1px 0 rgba(255,255,255,0.6);
}
.light .cp-card:hover {
  background: rgba(255,255,255,0.90);
  border-color: rgba(26,15,9,0.22);
  box-shadow: 0 4px 14px rgba(26,15,9,0.11);
}
.light .cp-card.selected {
  background: var(--cp-card-sel);
  color: #fff;
  border-color: #a85e1a;
  box-shadow: 0 4px 16px rgba(168,94,26,0.28);
}

/* ── misc elements ── */
.light .cp-dot { background: rgba(26,15,9,0.10); border-color: rgba(26,15,9,0.15); }
.light .cp-dot.used { background: #a85e1a; border-color: #a85e1a; }
.light .cp-timer-label, .light .cp-mistakes-label { color: rgba(26,15,9,0.80); }
.light .cp-timer-val { color: #a85e1a; }
.light .cp-btn-secondary { background: rgba(255,255,255,0.55); color: #1a0f09; border-color: rgba(26,15,9,0.16); }
.light .cp-btn-secondary:hover { background: rgba(255,255,255,0.80); }
.light .cp-btn-primary:disabled { background: rgba(255,255,255,0.55); color: rgba(26,15,9,0.55); border: 1px solid rgba(26,15,9,0.16); box-shadow: none; }
.light .cp-panel { background: linear-gradient(160deg,#fdf5e4,#f5edd8); border-color: rgba(26,15,9,0.12); }
.light .cp-overlay { background: rgba(245,237,216,0.24); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.light #cp-toast { background: rgba(26,15,9,0.90); color: #F5EDD8; }
.light .cp-loading-text { color: #a85e1a; }
.light .cp-loading-paw { filter: brightness(0) opacity(0.55); }
.light .cp-stat-box { background: rgba(255,255,255,0.60); border-color: rgba(26,15,9,0.13); }
.light .cp-stat-val { color: #a85e1a; }
.light .cp-stat-lbl { color: rgba(26,15,9,0.50); }
.light .cp-completion-title { color: #1a0f09; }
.light .cp-completion-msg { color: rgba(26,15,9,0.55); }
.light .cp-share-grid { background: rgba(26,15,9,0.05); border-color: rgba(26,15,9,0.12); }
.light .cp-oneaway { color: #a85e1a; }
.light .cp-how { background: rgba(255,255,255,0.60); border-color: rgba(26,15,9,0.12); }
.light .cp-how summary { color: rgba(26,15,9,0.55); }
.light .cp-how-body { color: #1a0f09; text-shadow: none; }


/* ── light-mode wallpaper system (::before pseudo-element) ──
   body carries plain cream; wallpaper lives in ::before for clean
   mobile crop control. Light mode uses a 25% cream wash. */
body.light{
  position:relative;
  background-color:#f7f0e0;
  background-image:none;
  background-attachment:scroll;
}
body.light::before{
  content:'';
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(245,237,216,0.12),rgba(245,237,216,0.12)),url('images/game-wallpaper.webp');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  filter:none;
  opacity:1;
}
body.light::after{
  content:none;
  display:none;
}
body.light .cp-bg{z-index:1;}
body.light .cp-bg-glow{display:none;opacity:0;}
body.light .cp-main{position:relative;z-index:10;}
body.light .cp-topbar{z-index:200;}
/* Mobile: scale to viewport height so content stays visible - intentional crop */
@media (max-width:900px){
  body.light::before{
    background-size:auto 100dvh;
    background-position:center center;
  }
}
@media (max-width:900px) and (orientation:landscape){
  body.light::before{background-size:cover;background-position:center center;}
}

/* ── home logo light-mode visibility ── */
.light .cp-home-logo,
body.light .cp-home-logo{
  opacity:1;
}
.light .cp-home-logo img,
body.light .cp-home-logo img{
  filter:brightness(0) saturate(100%) sepia(23%) saturate(740%) hue-rotate(346deg) brightness(78%) contrast(92%);
  opacity:1;
}

/* ── leaderboard panel clears navbar ── */
#cp-overlay-lb{
  align-items:flex-start;
  overflow-y:auto;
  padding-top:calc(var(--cp-topbar-h, 62px) + 10px);
}

/* ── light-mode leaderboard panel text ── */
.light .cp-panel-title,
body.light .cp-panel-title{
  color:#2c1a0a;
}
.light .cp-panel-sub,
body.light .cp-panel-sub{
  color:rgba(44,26,10,.65);
}
.light .cp-panel-close,
body.light .cp-panel-close{
  color:rgba(44,26,10,.55);
}
.light .cp-panel-close::before,
body.light .cp-panel-close::before{
  background:rgba(26,15,9,.08);
  border-color:rgba(26,15,9,.14);
}

/* ── mobile light-mode alignment fix ── */
/* ── stats pair (TIME + MISTAKES) - equal-width boxes matching button style ── */
.cp-stats-pair{display:flex;gap:7px;margin-bottom:10px;}
.cp-stat-pill{
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  height:46px;
  padding:6px 10px;
  background:rgba(26,15,9,0.70);
  border:1.5px solid rgba(255,210,140,0.30);
  border-radius:10px;
  box-sizing:border-box;
}
.cp-stat-pill .cp-timer-label,
.cp-stat-pill .cp-mistakes-label{
  font-size:0.65rem;
  font-weight:700;
  letter-spacing:0.07em;
  text-transform:uppercase;
  color:var(--cp-muted);
}
.cp-stat-pill .cp-timer-val{
  font-family:'Cormorant Garamond',serif;
  font-size:0.9rem;
  font-weight:400;
  color:var(--cp-caramel);
  text-align:center;
}
.cp-stat-pill .cp-dots{display:flex;gap:5px;}
.cp-stat-pill .cp-dot{width:10px;height:10px;}
body.light .cp-stat-pill{
  background:rgba(255,255,255,0.80);
  border-color:rgba(26,15,9,0.14);
}
body.light .cp-stat-pill .cp-timer-label,
body.light .cp-stat-pill .cp-mistakes-label{color:rgba(44,26,10,0.55);}
body.light .cp-stat-pill .cp-timer-val{color:#2c1a0a;}

/* v1.5.208 - mobile light-mode alignment fix */
body.light .cp-stats-pair{
  display:flex;
  align-items:stretch;
  gap:7px;
  width:100%;
}
body.light .cp-stats-pair #cp-timer-row,
body.light .cp-stats-pair #cp-mistakes-row{
  flex:1 1 0;
  width:auto;
  min-width:0;
  max-width:none;
  margin:0;
  height:46px;
  padding:6px 10px;
  box-sizing:border-box;
}
body.light #cp-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
}
body.light #cp-grid .cp-card{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
@media (max-width:480px){
  body.light .cp-main{padding-left:14px;padding-right:14px;}
}

/* v1.5.221 - Connect Paws name prompt light-mode styling */
body.light .cp-name-modal {
  background: rgba(245,237,216,0.82);
}
body.light .cp-name-panel {
  background: linear-gradient(160deg,#fdf5e4,#f5edd8);
  border-color: rgba(26,15,9,0.14);
  box-shadow: 0 18px 46px rgba(44,26,10,0.18);
}
body.light .cp-name-panel .cp-panel-title {
  color: #2c1a0a;
}
body.light .cp-name-panel .cp-panel-sub {
  color: rgba(44,26,10,0.68);
}
body.light .cp-name-panel .cp-panel-close {
  background: rgba(26,15,9,0.06);
  border-color: rgba(26,15,9,0.14);
  color: rgba(44,26,10,0.55);
}
body.light .cp-name-input {
  background: rgba(255,255,255,0.72);
  border-color: rgba(168,94,26,0.75);
  color: #2c1a0a;
  -webkit-text-fill-color: #2c1a0a;
}
body.light .cp-name-input::placeholder {
  color: rgba(44,26,10,0.48);
}
body.light .cp-name-skip {
  color: rgba(44,26,10,0.52);
}


/* v1.5.228: add a small breathing gap above solved Connect Paws answers */
#cp-solved{padding-top:12px;}


/* v1.5.245 - Consistency pass: align icon buttons, streak, panel close, and sub text with Paw Words
   ─────────────────────────────────────────────────────────────────────────────────────────────── */

/* Icon buttons & streak badge are now centralised in styles.css (see v1.5.283 pass) */

/* Light mode: sub text muted in dark brown */
body.light .cp-panel-sub,.light .cp-panel-sub{color:rgba(44,26,10,0.55)}


/* v1.5.254 - Score-submission modal aligned with Paw Words reference
   ─────────────────────────────────────────────────────────────────────────── */

/* ── Submit title: Bree Serif 22px matching Paw Words ────────────────────────── */
.cp-submit-title{
  font-family:'Bree Serif',Georgia,serif;
  font-size:22px;
  font-weight:700;
  color:#f4cf8a;
  text-align:center;
  margin-bottom:6px;
}

/* ── Light mode submit title ──────────────────────────────────────────────── */
body.light .cp-submit-title,
.light .cp-submit-title{
  color:#2c1a0a;
}
