@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&display=swap');
/* Proplet warm-paper UI refactor — visual-only layer. Core gameplay/audio/haptics untouched. */
:root{
  --bg:#FDFBF7;
  --paper:#FFFFFF;
  --ink:#1C1917;
  --muted:#6F6A63;
  --line:#E5E0D8;
  --purple:#C65F36;
  --purple2:#EAB308;
  --mint:#6FA486;
  --coral:#F97316;
  --yellow:#EAB308;
  --blue:#58728A;
  --surface:#FFFFFF;
  --surface-2:#F7F3EC;
  --accent:#EAB308;
  --accent-strong:#C65F36;
  --success:#3F8B68;
  --success-soft:#E6F2EB;
  --shadow:0 16px 38px rgba(62,48,32,.09);
  --soft-shadow:0 4px 14px rgba(62,48,32,.07);
}
html,body{
  background:#FDFBF7!important;
  color:var(--ink);
  font-family:"Outfit","Avenir Next","Avenir Next Rounded","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
}
body{background-image:radial-gradient(circle at 12% 3%,rgba(234,179,8,.055),transparent 27%),radial-gradient(circle at 88% 92%,rgba(63,139,104,.04),transparent 24%)!important}
.ambient{display:none!important}
.card,.ranking-section,.settings-card,.profile-card,.game-info,.current-word,.board-stage{
  background:#fff!important;
  border:1.5px solid #E5E0D8!important;
  box-shadow:var(--soft-shadow)!important;
}
.card{border-radius:20px}
.eyebrow,.stat-label{color:#766F66!important;letter-spacing:.12em}
.muted{color:#6F6A63!important}
.brand-mark,
body:has(#screen-daily.active.home-layout-active) .home-brand .brand-mark{
  background:#EAB308!important;
  color:#1C1917!important;
  box-shadow:0 7px 18px rgba(160,116,6,.17)!important;
  transform:rotate(-2deg)!important;
}
.brand-mark:after,
body:has(#screen-daily.active.home-layout-active) .home-brand .brand-mark:after{
  background:#F97316!important;
  border-color:#FDFBF7!important;
}
.profile-chip{
  background:#fff!important;
  border:1.5px solid #E5E0D8!important;
  box-shadow:0 3px 10px rgba(62,48,32,.06)!important;
}
.avatar-dot,.profile-avatar-big,.home-ranking-avatar,.ranking-privacy-preview>span:first-child{
  background:linear-gradient(145deg,#F2D78A,#E8B88C)!important;
  color:#3E2B1C!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}
.daily-hero,
#screen-daily.home-layout-active .daily-hero{
  background:#B95C36!important;
  border:1.5px solid #A95131!important;
  color:#FFFDF8!important;
  box-shadow:0 15px 34px rgba(129,66,38,.17)!important;
}
.daily-hero:before{background:rgba(255,255,255,.055)!important}
.hero-decor span{background:#FFFDF8!important;color:#7B3A24!important}
.light-pill,.hero-streak{background:rgba(255,255,255,.11)!important;border-color:rgba(255,255,255,.20)!important}
.primary-btn,.quality-release-primary,.release-notes-v3331-account{
  background:#A95031!important;
  color:#FFFDF8!important;
  border:1px solid #91442A!important;
  box-shadow:0 5px 12px rgba(125,63,38,.16)!important;
}
.primary-btn:hover,.quality-release-primary:hover,.release-notes-v3331-account:hover{background:#99472D!important}
.hero-btn{
  background:#FFF4DF!important;
  color:#713A27!important;
  border:1px solid rgba(255,255,255,.62)!important;
  box-shadow:0 7px 18px rgba(93,47,29,.14)!important;
}
.hero-btn:hover{background:#FFEBCB!important}
.secondary-btn,.hero-secondary,.text-btn,.quick-all-btn,.win-utility-btn{
  color:#4D463F!important;
}
.secondary-btn{
  background:#fff!important;
  border:1.5px solid #DDD6CC!important;
  box-shadow:none!important;
}
button{transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease,border-color .15s ease,color .15s ease}
button:active{transform:translateY(1px) scale(.985)}
.home-diff-tile,.home-resume-card{
  background:#fff!important;
  border:1.5px solid #E5E0D8!important;
  box-shadow:0 3px 10px rgba(62,48,32,.045)!important;
}
.home-diff-tile{border-radius:16px!important}
.home-diff-tile[data-diff="easy"],.home-resume-card[data-diff="easy"]{--q:#3F8B68;--qs:#E6F2EB;--qb:#C8E1D3}
.home-diff-tile[data-diff="medium"],.home-resume-card[data-diff="medium"]{--q:#58728A;--qs:#EAF0F3;--qb:#D3DFE5}
.home-diff-tile[data-diff="hard"],.home-resume-card[data-diff="hard"]{--q:#C65F36;--qs:#FAEDE7;--qb:#EECBBB}
.home-diff-tile[data-diff="hardcore"],.home-resume-card[data-diff="hardcore"]{--q:#8D4E42;--qs:#F4E9E5;--qb:#DFC8C0}
.home-competition-card,.profile-account-hub{
  background:#FFFDF9!important;
  border:1.5px solid #E5E0D8!important;
  box-shadow:none!important;
}
.home-progress-level{background:#FFF8DD!important;border-color:#EBD99C!important}
.home-progress-level-icon{background:#F7E8A8!important}
.home-progress-level-track{background:#EFE3BF!important}
.home-progress-level-track b{background:#C98C16!important}
.home-progress-total>strong,.home-ranking-row>b,.home-ranking-selfline,.home-competition-head button,.home-ranking-login,.account-forgot-btn,.profile-edit-inline{color:#A95031!important}
.home-ranking-row.mine,.home-ranking-selfline,.profile-edit-inline{background:#FAEDE7!important}
.home-ranking-you{background:#F4D8CA!important;color:#823E27!important}

/* Board: tactile ivory tiles, strong letters, warm active path, muted emerald completion. */
.board .cell{
  background:#FFFFFF!important;
  color:#1C1917!important;
  border:1.5px solid #E5E0D8!important;
  box-shadow:0 2px 0 rgba(72,54,37,.08),0 4px 10px rgba(72,54,37,.035)!important;
  border-radius:22%!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  display:grid;
  place-items:center;
  transition:transform .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease!important;
}
.board .cell:active{transform:scale(.95)!important}
.board .cell.active{
  background:#F5D56F!important;
  border-color:#C89117!important;
  color:#33260B!important;
  transform:scale(.94)!important;
  box-shadow:0 0 0 3px rgba(214,157,22,.17),0 2px 0 rgba(92,66,15,.12)!important;
  transition-duration:.05s,.05s,.05s,.05s!important;
}
.board .cell.used{
  background:color-mix(in srgb,var(--word-color,#6FA486) 24%,#FFFFFF)!important;
  border-color:color-mix(in srgb,var(--word-color,#6FA486) 54%,#D9E6DE)!important;
  color:#173529!important;
}
.board .cell.just-found{box-shadow:0 0 0 3px rgba(63,139,104,.14),0 2px 0 rgba(72,54,37,.08)!important}
.board .cell.starter-guide{border-color:#EAB308!important;background:#FFF9D9!important}
.board .cell.wrong-flash{border-color:#CF6C5B!important;background:#FCEDEA!important}
#pathLayer .path-active{display:none!important;opacity:0!important}
#pathLayer .path-found{stroke:#3F8B68!important;opacity:.42!important}
#pathLayer .path-guide{stroke:#D49A12!important;opacity:.30!important}
#pathLayer .path-wrong{stroke:#C95D4D!important;opacity:.72!important}
.clean-status{color:#3F8B68!important}
.current-word strong{letter-spacing:.04em}

/* Segmented controls + inputs */
.ranking-segment,.theme-segment,.account-tabs,.league-create-tabs,.team-membership-tabs{
  background:#F3EFE9!important;
  border:1px solid #E5E0D8!important;
}
.ranking-segment button.active,.theme-choice[aria-checked="true"],.account-tab.active,.league-create-tab.active{
  background:#fff!important;
  color:#1C1917!important;
  box-shadow:0 2px 8px rgba(62,48,32,.06)!important;
}
input,select,textarea{
  background:#fff!important;
  color:#1C1917!important;
  border:1.5px solid #DCD4CA!important;
  box-shadow:none!important;
}
input:focus,select:focus,textarea:focus{border-color:#D59B18!important;outline:3px solid rgba(234,179,8,.14)!important}

/* Modal system: paper cards on desktop, bottom sheets for account/settings/stats on mobile. */
.modal{background:rgba(31,27,23,.36)!important;backdrop-filter:blur(3px)}
.modal-card,.quality-release-card,.release-notes-v3331-panel{
  background:#FFFDF9!important;
  border:1.5px solid #E5E0D8!important;
  border-radius:22px!important;
  box-shadow:0 24px 60px rgba(48,38,28,.20)!important;
}
.modal-close,.release-notes-v3331-close{
  width:36px!important;height:36px!important;border-radius:999px!important;
  display:grid!important;place-items:center!important;
  background:#F3EFE9!important;color:#3C3732!important;border:1px solid #E0D8CE!important;
  font-size:0!important;
}
.modal-close svg,.release-notes-v3331-close svg{width:18px;height:18px}
@media(max-width:767px){
  #profileModal,#passwordModal,#teamPinModal,#teamMembershipModal,#supportModeModal,#wordReportModal,#playedLevelsModal,#levelDetailModal,#familyLeagueModal,#rankingPrivacyModal,#supportReportModal,#deleteAccountModal,#progressGuardModal{
    align-items:flex-end!important;
    padding:0!important;
  }
  #profileModal .modal-card,#passwordModal .modal-card,#teamPinModal .modal-card,#teamMembershipModal .modal-card,#supportModeModal .modal-card,#wordReportModal .modal-card,#playedLevelsModal .modal-card,#levelDetailModal .modal-card,#familyLeagueModal .modal-card,#rankingPrivacyModal .modal-card,#supportReportModal .modal-card,#deleteAccountModal .modal-card,#progressGuardModal .modal-card{
    width:100%!important;max-width:none!important;max-height:88dvh!important;overflow:auto!important;
    margin:0!important;border-radius:24px 24px 0 0!important;border-bottom:0!important;
    padding:24px 20px calc(22px + env(safe-area-inset-bottom))!important;
    animation:organicSheetIn .24s cubic-bezier(.2,.75,.25,1);
  }
  @keyframes organicSheetIn{from{transform:translateY(26px);opacity:.55}to{transform:none;opacity:1}}
}

/* Existing purple gradients removed from prominent product surfaces. */
.profile-account-hub,.home-competition-card,.home-ranking-row.mine,.ranking-privacy-note,.account-nudge-card,.progress-guard-card,.push-nudge-card,.install-nudge-card,.helper-offer-card,.calm-confirm-card{
  background-image:none!important;
}
.quality-release-tile,.release-notes-v3331-tile{
  background:#C65F36!important;
  color:#FFFDF8!important;
  box-shadow:0 7px 18px rgba(116,59,34,.12)!important;
}
.quality-release-tile:nth-child(2),.release-notes-v3331-tile.tile-l{background:#6FA486!important}
.quality-release-tile:nth-child(3),.release-notes-v3331-tile.tile-t{background:#EAB308!important;color:#362A0B!important}

/* Vector icon adapter */
.ui-icon{display:inline-flex;align-items:center;justify-content:center;width:1.15em;height:1.15em;flex:0 0 auto;vertical-align:-.16em}
.ui-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ui-icon-only{font-size:0!important}
.ui-icon-only .ui-icon{width:20px;height:20px}
button .ui-icon{margin-right:.42em}
button.ui-icon-only .ui-icon{margin-right:0}
.notification-pref-icon,.install-mini-icon,.ranking-privacy-icon,.rescue-flame,.helper-big-icon,.push-nudge-icon,.install-nudge-icon,.account-nudge-icon,.starter-choice-icon,.calm-confirm-icon{
  color:#A95031!important;
}
.support-choice>span:first-child,.hint-choice>span:first-child{font-size:0!important;color:#A95031!important}
.support-choice>span:first-child .ui-icon,.hint-choice>span:first-child .ui-icon{width:24px;height:24px}

/* Graphical avatar system — 30 bespoke Proplet medallions: forest + craft. */
.organic-avatar-host{
  position:relative!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:50%!important;
  background:#F6EFE2!important;
  color:transparent!important;
  font-size:0!important;
  isolation:isolate;
}
.organic-avatar{
  display:block;
  width:100%;height:100%;
  min-width:100%;min-height:100%;
  border-radius:50%;
  overflow:hidden;
  background:#F6EFE2;
  box-shadow:inset 0 0 0 1px rgba(86,65,42,.16),0 1px 3px rgba(64,47,31,.08);
}
.organic-avatar>svg,.organic-avatar>img{display:block;width:100%;height:100%;object-fit:contain}
.organic-avatar[data-avatar-file]{background-size:100% 100%;background-position:center;background-repeat:no-repeat}
.organic-avatar[data-avatar-file]>.organic-avatar-focus{
  transform:translate(var(--avatar-focus-x,0),var(--avatar-focus-y,0)) scale(var(--avatar-focus-scale,1));
  transform-origin:50% 50%;
  clip-path:circle(var(--avatar-focus-clip,35%) at 50% 50%);
}
#profileChipAvatar.avatar-dot{width:36px!important;height:36px!important;flex:0 0 36px!important;border:2px solid #FFFDF8!important;box-shadow:0 0 0 1px #DED4C6,0 3px 9px rgba(61,44,30,.10)!important}
.profile-avatar-big.organic-avatar-host{width:78px!important;height:78px!important;flex:0 0 78px!important;border:3px solid #FFFDF8!important;box-shadow:0 0 0 1px #D9CDBD,0 8px 18px rgba(61,44,30,.10)!important}
.home-ranking-avatar.organic-avatar-host,.leader-avatar.organic-avatar-host,.leaderboard-avatar.organic-avatar-host,.ranking-avatar.organic-avatar-host{width:36px!important;height:36px!important;min-width:36px!important;flex:0 0 36px!important;border:2px solid #FFFDF8!important;box-shadow:0 0 0 1px #DED4C6!important}
.ranking-privacy-preview>span:first-child.organic-avatar-host{width:58px!important;height:58px!important;flex:0 0 58px!important;border:2px solid #FFFDF8!important;box-shadow:0 0 0 1px #D8CCBC,0 5px 12px rgba(61,44,30,.10)!important}
.leader-name>strong.organic-leader-name,.leader-name>strong:has(.organic-avatar){display:flex!important;align-items:center!important;gap:8px!important}
.leader-name>strong .ranking-avatar{display:inline-flex!important}
#profileCard>.avatar-picker{display:none!important}
#profileCard>.avatar-picker{margin:15px 0 12px;padding:14px;border:1.5px solid #E5E0D8;border-radius:18px;background:#FFFDF9;box-shadow:0 3px 12px rgba(62,48,32,.04)}
.avatar-grid,.profile-edit-avatar-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:9px!important;margin-top:9px!important}
.avatar-group-label{grid-column:1/-1;display:block;margin:5px 2px -1px;color:#887B6B;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.avatar-group-label:first-child{margin-top:0}
.avatar-choice{
  width:100%!important;aspect-ratio:1!important;height:auto!important;min-height:0!important;
  padding:3px!important;border-radius:50%!important;
  background:#F6EFE3!important;border:2px solid #E1D7C8!important;
  box-shadow:0 2px 5px rgba(62,48,32,.06)!important;
  overflow:hidden;cursor:pointer;
}
.avatar-choice:hover{transform:translateY(-1px)!important;border-color:#CDAA55!important;box-shadow:0 5px 12px rgba(80,55,28,.10)!important}
.avatar-choice.selected{border-color:#D69D16!important;box-shadow:0 0 0 3px rgba(234,179,8,.18),0 5px 12px rgba(80,55,28,.10)!important;background:#FFF6D8!important}
.avatar-choice .organic-avatar{pointer-events:none}
.avatar-choice[data-avatar-category="forest"]{background:#F2F5E9!important}
.avatar-choice[data-avatar-category="craft"]{background:#F7EFE4!important}
.avatar-choice.selected .organic-avatar{box-shadow:inset 0 0 0 1px rgba(86,65,42,.12)}

.settings-privacy-icon.organic-private-avatar{width:42px!important;height:42px!important;border-radius:50%!important;padding:2px!important;background:#EFE8DC!important}

/* Tactile achievement / rank medallions. */
.organic-emblem{
  --emblem-bg:#F2E8D7;--emblem-ink:#5D5144;--emblem-edge:#D8CBB8;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:30px;height:30px;min-width:30px;
  border-radius:50%;background:var(--emblem-bg)!important;color:var(--emblem-ink)!important;
  border:1.5px solid var(--emblem-edge);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.46),0 2px 5px rgba(62,48,32,.08);
  vertical-align:middle;
}
.organic-emblem .ui-icon{width:16px!important;height:16px!important;margin:0!important;vertical-align:0!important}
.organic-emblem.tone-amber{--emblem-bg:#F5D77D;--emblem-ink:#6D4A09;--emblem-edge:#D9A62B}
.organic-emblem.tone-coral{--emblem-bg:#F2A07D;--emblem-ink:#6E2F1E;--emblem-edge:#D56F4B}
.organic-emblem.tone-sage{--emblem-bg:#A9C7A5;--emblem-ink:#284D35;--emblem-edge:#739B72}
.organic-emblem.tone-blue{--emblem-bg:#A9C1D0;--emblem-ink:#294A60;--emblem-edge:#718FA4}
.organic-emblem.tone-clay{--emblem-bg:#D8A37F;--emblem-ink:#633E29;--emblem-edge:#B87955}
.organic-emblem.tone-mauve{--emblem-bg:#C9B2C5;--emblem-ink:#554052;--emblem-edge:#9B7F98}
.organic-emblem.tone-ivory{--emblem-bg:#F5EFE4;--emblem-ink:#61574B;--emblem-edge:#D8CDBD}
.profile-badge .organic-emblem{width:42px;height:42px;min-width:42px}.profile-badge .organic-emblem .ui-icon{width:22px!important;height:22px!important}
.level-step-icon .organic-emblem,.profile-rank-icon .organic-emblem{width:32px;height:32px;min-width:32px}
.achievement-summary-icons .organic-emblem,.achievement-peek .organic-emblem{width:27px;height:27px;min-width:27px}
.home-ranking-medal .organic-emblem{width:28px;height:28px;min-width:28px}
.streak-bubble .organic-emblem{width:34px;height:34px;min-width:34px}

/* Larger utility illustrations get a warm paper tile instead of a floating pictogram. */
.notification-pref-icon,.install-mini-icon,.ranking-privacy-icon,.rescue-flame,.helper-big-icon,.push-nudge-icon,.install-nudge-icon,.account-nudge-icon,.starter-choice-icon,.calm-confirm-icon{
  display:grid!important;place-items:center!important;
  border:1.5px solid #E2D7C7!important;border-radius:14px!important;
  background:#FFF8EA!important;box-shadow:0 3px 9px rgba(62,48,32,.06)!important;
}
.notification-pref-icon .ui-icon,.install-mini-icon .ui-icon,.ranking-privacy-icon .ui-icon,.rescue-flame .ui-icon,.helper-big-icon .ui-icon,.push-nudge-icon .ui-icon,.install-nudge-icon .ui-icon,.account-nudge-icon .ui-icon,.starter-choice-icon .ui-icon,.calm-confirm-icon .ui-icon{width:55%!important;height:55%!important;margin:0!important}

/* Footer */
.app-footer{color:#756E66!important}
.app-footer strong{display:none!important}
.app-footer span{font-weight:750!important}
.app-footer a{color:#6B625A!important}

/* Matte slate dark mode */
html[data-theme="dark"]{
  --bg:#1C1C21;--paper:#242428;--surface:#242428;--surface-2:#2B2A2E;--ink:#F2EFE8;--muted:#AAA49C;--line:#3A383D;
  --shadow:0 16px 38px rgba(0,0,0,.22);--soft-shadow:0 4px 14px rgba(0,0,0,.16);
}
html[data-theme="dark"],html[data-theme="dark"] body{background:#1C1C21!important;color:#F2EFE8!important;background-image:none!important}
html[data-theme="dark"] .card,html[data-theme="dark"] .ranking-section,html[data-theme="dark"] .settings-card,html[data-theme="dark"] .profile-card,html[data-theme="dark"] .game-info,html[data-theme="dark"] .current-word,html[data-theme="dark"] .board-stage{
  background:#242428!important;border-color:#3A383D!important;
}
html[data-theme="dark"] .profile-chip,html[data-theme="dark"] .secondary-btn,html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:#29292E!important;color:#F2EFE8!important;border-color:#403E43!important}
html[data-theme="dark"] .board .cell{background:#29292E!important;color:#F2EFE8!important;border-color:#403E43!important;box-shadow:0 2px 0 rgba(0,0,0,.24)!important}
html[data-theme="dark"] .board .cell.used{background:color-mix(in srgb,var(--word-color,#6FA486) 34%,#29292E)!important;color:#F7F4ED!important}
html[data-theme="dark"] .modal-card,html[data-theme="dark"] .quality-release-card,html[data-theme="dark"] .release-notes-v3331-panel{background:#242428!important;border-color:#403E43!important}
html[data-theme="dark"] .modal-close,html[data-theme="dark"] .release-notes-v3331-close{background:#2D2C31!important;color:#F2EFE8!important;border-color:#444147!important}
html[data-theme="dark"] .home-diff-tile,html[data-theme="dark"] .home-resume-card,html[data-theme="dark"] .home-competition-card,html[data-theme="dark"] .profile-account-hub{background:#242428!important;border-color:#3A383D!important;color:#F2EFE8!important}
html[data-theme="dark"] .home-ranking-row.mine,html[data-theme="dark"] .home-ranking-selfline,html[data-theme="dark"] .profile-edit-inline{background:#332720!important}
html[data-theme="dark"] .ranking-segment,html[data-theme="dark"] .theme-segment,html[data-theme="dark"] .account-tabs,html[data-theme="dark"] .league-create-tabs{background:#2B2A2E!important;border-color:#403E43!important}
html[data-theme="dark"] .ranking-segment button.active,html[data-theme="dark"] .theme-choice[aria-checked="true"],html[data-theme="dark"] .account-tab.active,html[data-theme="dark"] .league-create-tab.active{background:#38373C!important;color:#F2EFE8!important}

/* Profile composition polish for the new graphic system. */
#screen-profile .achievement>.organic-emblem{grid-column:1;grid-row:1;width:34px;height:34px;min-width:34px}
#screen-profile .profile-badge>.organic-emblem{grid-column:1;grid-row:1;width:34px;height:34px;min-width:34px}
#screen-profile .achievement>.organic-emblem .ui-icon,#screen-profile .profile-badge>.organic-emblem .ui-icon{width:18px!important;height:18px!important}
#screen-profile .level-step-icon{display:grid;place-items:center}
#screen-profile .level-step-icon>.organic-emblem{margin:auto}
.google-avatar-choice{background:#FFFDF9!important;border:1.5px solid #E0D7CA!important;box-shadow:none!important}
.google-avatar-choice.selected{background:#FFF6D8!important;border-color:#D69D16!important;box-shadow:0 0 0 3px rgba(234,179,8,.14)!important}
.google-avatar-unavailable{background:#F5F0E8!important}
html[data-theme="dark"] .google-avatar-choice{background:#29292E!important;border-color:#403E43!important}
html[data-theme="dark"] .google-avatar-choice.selected{background:#3A3321!important;border-color:#9A7621!important}
html[data-theme="dark"] .google-avatar-unavailable{background:#2B2A2E!important}

/* Phase 2B — bespoke Proplet progress art. These are hand-drawn semantic series, not a shared icon font. */
.proplet-ach-art,.proplet-rank-art{
  --art-bg:#F3EBDD;--art-ink:#5A5147;--art-fill:#D8C8AD;--art-edge:#D8C9B4;
  display:inline-grid!important;place-items:center!important;
  width:34px;height:34px;min-width:34px;
  border-radius:12px;
  color:var(--art-ink)!important;
  background:var(--art-bg)!important;
  border:1.5px solid var(--art-edge);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.38),0 2px 5px rgba(62,48,32,.07);
  overflow:hidden;
}
.proplet-ach-art svg,.proplet-rank-art svg{display:block;width:100%;height:100%;padding:4px}
.proplet-ach-art svg :not(.fill),.proplet-rank-art svg :not(.fill){
  fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round;
}
.proplet-ach-art svg .fill,.proplet-rank-art svg .fill{
  fill:var(--art-fill);stroke:currentColor;stroke-width:1.55;stroke-linejoin:round;
}
.proplet-ach-art.tone-sage,.proplet-rank-art.tone-sage{--art-bg:#E4F0DD;--art-ink:#3E704E;--art-fill:#9FC38E;--art-edge:#C1D8B7}
.proplet-ach-art.tone-blue,.proplet-rank-art.tone-blue{--art-bg:#E5EEF1;--art-ink:#486B7C;--art-fill:#9FB9C7;--art-edge:#C3D4DB}
.proplet-ach-art.tone-coral,.proplet-rank-art.tone-coral{--art-bg:#FAE7DC;--art-ink:#A24E31;--art-fill:#E99770;--art-edge:#EEC4B1}
.proplet-ach-art.tone-clay,.proplet-rank-art.tone-clay{--art-bg:#F3E5D7;--art-ink:#875038;--art-fill:#D59B79;--art-edge:#DFC2A9}
.proplet-ach-art.tone-amber,.proplet-rank-art.tone-amber{--art-bg:#FFF1BF;--art-ink:#8A6510;--art-fill:#E6BE4F;--art-edge:#E8D18B}
.proplet-ach-art.tone-mauve,.proplet-rank-art.tone-mauve{--art-bg:#EFE5EC;--art-ink:#725A70;--art-fill:#C3A4BF;--art-edge:#D9C7D6}
.proplet-rank-art.tone-charcoal{--art-bg:#E9E5DE;--art-ink:#383A3A;--art-fill:#87857F;--art-edge:#CBC4B9}

#screen-profile .achievement>.emoji.bespoke-ready,
#screen-profile .profile-badge>.emoji.bespoke-ready{
  width:34px;height:34px;display:grid!important;place-items:center!important;font-size:0!important;
}
#screen-profile .achievement>.emoji.bespoke-ready .proplet-ach-art,
#screen-profile .profile-badge>.emoji.bespoke-ready .proplet-ach-art{width:34px;height:34px}
#screen-profile .achievement:not(.earned) .proplet-ach-art{filter:saturate(.38);opacity:.55}
#screen-profile .achievement.earned .proplet-ach-art{box-shadow:inset 0 0 0 2px rgba(255,255,255,.48),0 3px 7px rgba(62,48,32,.10)}
#screen-profile .achievement-peek b:has(.proplet-ach-art){display:grid!important;place-items:center!important;font-size:0!important}
#screen-profile .achievement-peek .proplet-ach-art{width:30px;height:30px;min-width:30px;border-radius:10px}
#screen-profile .achievement-peek .proplet-ach-art svg{padding:4px}
#screen-profile .achievement-peek.next .proplet-ach-art{filter:saturate(.35);opacity:.58}
#screen-profile .profile-badge:not(.earned) .proplet-loyalty-art{filter:saturate(.30);opacity:.48}

#screen-profile .level-step-icon:has(.proplet-rank-art),
#screen-profile .profile-rank-icon:has(.proplet-rank-art){
  display:grid!important;place-items:center!important;font-size:0!important;
}
#screen-profile .level-step .proplet-rank-art{width:36px;height:36px;min-width:36px;border-radius:13px}
#screen-profile .profile-rank-icon .proplet-rank-art{width:42px;height:42px;min-width:42px;border-radius:15px}
#screen-profile .level-step:not(.earned):not(.current) .proplet-rank-art{filter:saturate(.25);opacity:.45}
#screen-profile .level-step.current .proplet-rank-art{
  box-shadow:0 0 0 3px rgba(234,179,8,.16),inset 0 0 0 2px rgba(255,255,255,.55),0 4px 10px rgba(92,65,20,.11);
}
#screen-profile .profile-rank-stat{background:linear-gradient(135deg,#FFF7D5 0%,#F8EEDB 100%)!important}
#screen-profile .profile-rank-value{align-items:center!important;gap:10px!important}

/* Phase 2C — light-theme cleanup from Pavel's mobile review. Dark mode intentionally deferred. */
html:not([data-theme="dark"]) #shareDailyBtn.daily-challenge-cta,
html:not([data-theme="dark"]) #winModal .challenge-share-cta{
  color:#FFFDF8!important;
}
/* The detail action uses the secondary white surface, unlike result sharing. */
html:not([data-theme="dark"]) #levelDetailShareBtn.challenge-share-detail-cta{
  color:#4D463F!important;
}
html:not([data-theme="dark"]) #shareDailyBtn.daily-challenge-cta .ui-icon,
html:not([data-theme="dark"]) #winModal .challenge-share-cta .ui-icon,
html:not([data-theme="dark"]) #levelDetailShareBtn.challenge-share-detail-cta .ui-icon{color:inherit!important}

/* Volná hra should sit in the page, not inside a second framed card. Individual difficulty choices stay tactile. */
html:not([data-theme="dark"]) #quickPlayCard.home-free-section{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html:not([data-theme="dark"]) #quickPlayCard.home-free-section .quick-play-head{padding-left:2px;padding-right:2px}
html:not([data-theme="dark"]) #quickPlayCard.home-free-section .home-diff-grid{padding:0!important}

/* The fixed nav must never cover the footer at the bottom of a long profile/ranking page. */
@media(max-width:767px){
  html:not([data-theme="dark"]) .app-footer{margin-bottom:142px!important}
}

/* Remove the last purple note from the primary navigation; keep the game colorful with warm organic accents. */
html:not([data-theme="dark"]) .bottom-nav{
  background:rgba(255,252,244,.94)!important;
  border-color:#DED4C6!important;
  box-shadow:0 12px 30px rgba(73,55,36,.13)!important;
}
html:not([data-theme="dark"]) .bottom-nav button{color:#756B61!important}
html:not([data-theme="dark"]) .bottom-nav button.active{
  background:linear-gradient(145deg,#FAE9DD 0%,#E7F0E2 100%)!important;
  color:#A95031!important;
}
html:not([data-theme="dark"]) .bottom-nav button.active svg{stroke:currentColor!important}

/* Keep mobile ranking avatars inside their column with room before the name. */
@media(max-width:559px){
  #screen-daily .home-ranking-row{grid-template-columns:30px max-content minmax(0,1fr) auto;column-gap:8px}
}
@media(max-width:370px){
  #screen-daily .home-ranking-row{grid-template-columns:28px max-content minmax(0,1fr) auto}
}

/* Returning players can leave the training directly from the instruction card. */
.starter-returning-actions{grid-column:1/-1;display:flex;gap:8px;padding-bottom:8px;border-bottom:1px solid currentColor}
.starter-returning-actions button{flex:1;min-height:42px;padding:8px 10px;border:1.5px solid #9b8df2;border-radius:10px;background:#fff;color:#43366c;font:inherit;font-size:12px;font-weight:850;cursor:pointer}
.starter-returning-actions .onboarding-return-login{background:#6650ac;color:#fff;border-color:#6650ac}
.starter-returning-actions button:focus-visible{outline:3px solid #d78c26;outline-offset:2px}
html[data-theme="dark"] .starter-returning-actions button{background:#30294d;color:#f5edff;border-color:#a99acb}
html[data-theme="dark"] .starter-returning-actions .onboarding-return-login{background:#c7b1f1;color:#281b3f}
