/* Beeld refresh (2026-10-21): warm cream paper, white cards, sage actions, orange brand.
   Loaded last; presentation only. No study state, course data or interaction logic. */
:root{--paper:#f6f4ec;--card:#fffefa;--ink:#2c3a31;--muted:#7a8377;--line:#ebe8dd;--green:#557448;--sage:#d3e4bb;--sage-soft:#eef4e4;--orange:#ef8748;--orange-soft:#fdeadf;--card-shadow:0 6px 22px #3c4a3210;color:var(--ink)}
body{background:#eceae1}
.entry-shell{background:var(--paper)}
/* Canal-house skyline: top right in portrait; on desktop beside the heading (see below). Landscape phones skip it for room. */
@media (orientation:portrait){.entry-shell:has(.channels){background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 270 150'%3E%3Cdefs%3E%3ClinearGradient id='f' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='.55' stop-color='%23f6f4ec' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23f6f4ec'/%3E%3C/linearGradient%3E%3ClinearGradient id='l' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23f6f4ec'/%3E%3Cstop offset='.22' stop-color='%23f6f4ec' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M6 72h6v-6h4.5v-6h9v6h4.5v6h6V132H6Z' fill='%23f3dcc8' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='12.6' y='80' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='23.4' y='80' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='12.6' y='104' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='23.4' y='104' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='21' cy='70' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M38 58q5.76 0 7.04-8q1.92-6 8.96-6q7.04 0 8.96 6q1.28 8 7.04 8V132H38Z' fill='%23dfe8cf' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='45.0' y='66' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='56.6' y='66' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='45.0' y='90' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='56.6' y='90' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='45.0' y='114' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='56.6' y='114' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='54' cy='56' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M72 66h5.04l3.36-6v-8h11.200000000000001v8l3.36 6h5.04V132H72Z' fill='%23e9d8cc' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='78.2' y='74' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='88.2' y='74' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='78.2' y='98' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='88.2' y='98' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='86' cy='64' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M102 50h6.800000000000001v-6h5.1v-6h10.2v6h5.1v6h6.800000000000001V132H102Z' fill='%23f6e6c9' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='109.5' y='58' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='121.7' y='58' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='109.5' y='82' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='121.7' y='82' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='109.5' y='106' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='121.7' y='106' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='119' cy='48' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M138 62q5.3999999999999995 0 6.6-8q1.7999999999999998-6 8.4-6q6.6 0 8.4 6q1.2 8 6.6 8V132H138Z' fill='%23d9e5e8' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='144.6' y='70' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='155.4' y='70' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='144.6' y='94' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='155.4' y='94' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='153' cy='60' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M170 54h5.76l3.84-6v-8h12.8v8l3.84 6h5.76V132H170Z' fill='%23f1d3c0' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='177.0' y='62' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='188.6' y='62' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='177.0' y='86' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='188.6' y='86' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='177.0' y='110' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='188.6' y='110' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='186' cy='52' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M204 70h6v-6h4.5v-6h9v6h4.5v6h6V132H204Z' fill='%23e3ead3' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='210.6' y='78' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='221.4' y='78' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='210.6' y='102' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='221.4' y='102' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='219' cy='68' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M236 60q4.68 0 5.72-8q1.56-6 7.280000000000001-6q5.72 0 7.280000000000001 6q1.04 8 5.72 8V132H236Z' fill='%23f2e2cf' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='241.7' y='68' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='251.1' y='68' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='241.7' y='92' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='251.1' y='92' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='249' cy='58' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='18' cy='104' r='16' fill='%23cddcb0'/%3E%3Ccircle cx='32' cy='114' r='12' fill='%23c3d6a3'/%3E%3Crect x='21' y='112' width='3' height='22' fill='%23b5a58f'/%3E%3Cpath d='M0 132h270v18H0Z' fill='%23dde9e9'/%3E%3Cpath d='M14 140h30M70 144h40M150 140h36M214 145h30' stroke='%23f8fbf8' stroke-width='1.5' stroke-linecap='round'/%3E%3Crect width='270' height='150' fill='url(%23f)'/%3E%3Crect width='270' height='150' fill='url(%23l)'/%3E%3C/svg%3E") right -10px top calc(env(safe-area-inset-top) - 2px)/min(56%,300px) auto no-repeat,var(--paper)}}
.brand{color:var(--ink)}
.brand-mark{background:var(--orange);color:#fffaf3;border-radius:14px;box-shadow:none}
.brand small{color:#8c9384}
.header-note{background:var(--sage-soft);color:var(--green)}
.eyebrow{color:#8a917f}
.primary-button,.my-button.primary,.selection-actions .primary-button{background:var(--sage);color:#2f4527;border-color:transparent;font-weight:650;box-shadow:none}
.primary-button:hover,.selection-actions .primary-button:hover:not(:disabled){background:#c7dcab}
.status-pill{background:var(--sage-soft);color:var(--green)}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #8fae6c;outline-offset:3px}
.selection-panel,.memory-section,.my-panel,.empty-card,.article-card{background:var(--card);border-color:var(--line);box-shadow:var(--card-shadow)}
.memory-focus-entry{background:#fde4d4}

/* App tab bar: a floating white bar with a sage pill on the current page. */
@media (max-width:1023px),(hover:none),(pointer:coarse){
 .entry-shell:has(#entry-main) #entry-nav.bottom-nav{width:auto;height:64px;margin:0 14px calc(8px + env(safe-area-inset-bottom));padding:6px;gap:4px;border:1px solid var(--line);border-radius:24px;background:#fffefaf0;box-shadow:0 8px 26px #3c4a3214}
 .entry-shell #entry-nav.bottom-nav a{gap:2px;border-radius:18px;color:#8a917f;font-size:11px}
 .entry-shell #entry-nav.bottom-nav a[aria-current]{background:var(--sage);color:#2f4527;font-weight:650}
 .entry-shell #entry-nav.bottom-nav .icon{width:22px;height:22px}
}

/* Home */
.entry-shell #entry-main:has(.channels) .page-heading{position:relative}
.entry-shell #entry-main:has(.channels) .eyebrow{color:#5f6b5c;letter-spacing:.4px;font-size:13px}
.entry-shell #entry-main:has(.channels) h1{font-weight:750;letter-spacing:-.6px;color:var(--ink);text-shadow:0 0 12px var(--paper)}
.entry-shell #entry-main:has(.channels) .lead{color:var(--muted)}
.entry-shell #entry-main:has(.channels) .stats-placeholder{position:relative;background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--card-shadow);padding:14px 18px 12px}
.entry-shell #entry-main:has(.channels) .stats-placeholder .section-line h2{font-size:16px;font-weight:700}
.today-start{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;border-radius:14px;background:var(--sage);color:#2f4527;font-size:13px;font-weight:650;white-space:nowrap;transition:background .16s}
.today-start:hover{background:#c7dcab}
.today-start .icon{width:15px;height:15px}
.entry-shell #entry-main:has(.channels) .stat-grid{margin-top:12px}
.entry-shell #entry-main:has(.channels) .stat-grid>div{border-color:var(--line)}
.entry-shell #entry-main:has(.channels) .stat-grid strong,.entry-shell #entry-main:has(.channels) .stat-grid>div:first-child strong{color:var(--ink);font-weight:700}
.entry-shell #entry-main:has(.channels) .stat-grid span{color:var(--muted)}
.entry-shell #entry-main:has(.channels) .channels>.section-line h2{font-size:16px;font-weight:700}
.entry-shell #entry-main:has(.channels) .channel{display:flex;flex-direction:column;justify-content:flex-start;padding:0;border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--ink);box-shadow:var(--card-shadow);overflow:hidden;filter:none}
.entry-shell #entry-main:has(.channels) .course-window{position:relative;inset:auto;flex:1 1 auto;width:auto;height:auto;min-height:56px;max-height:none;aspect-ratio:auto;margin:0;border-radius:0;background:#eef1e4;container-type:size;overflow:hidden}
/* One square cell of the 2x2 scene sprite, covering the window at any aspect ratio. */
.entry-shell #entry-main:has(.channels) .course-window::before{content:"";position:absolute;--s:max(200cqw,200cqh);width:var(--s);height:var(--s);left:calc(50cqw - var(--s) * (2 * var(--c) + 1) / 4);top:calc(50cqh - var(--s) * (2 * var(--r) + 1) / 4);background:var(--protected-home-scene, linear-gradient(135deg,#dce7d5,#f5f0e4)) 0 0/100% 100% no-repeat}
.entry-shell #entry-main:has(.channels) .channel-a1 .course-window{--c:0;--r:1}
.entry-shell #entry-main:has(.channels) .channel-a2 .course-window{--c:1;--r:0}
.entry-shell #entry-main:has(.channels) .course-window .level-pill{position:absolute;z-index:1;top:10px;left:10px;padding:4px 11px;border:0;border-radius:12px;background:#fffefae8;color:var(--green);font-size:12px;font-weight:700;letter-spacing:.5px}
.entry-shell #entry-main:has(.channels) .channel-body{flex:none;display:flex;flex-direction:column;padding:10px 12px 12px}
.entry-shell #entry-main:has(.channels) .channel-body h3{font-size:18px;font-weight:700;line-height:1.3;margin:0;letter-spacing:-.2px}
.entry-shell #entry-main:has(.channels) .channel-body p{margin:3px 0 9px;color:var(--muted);font-size:12px;line-height:1.35}
.entry-shell #entry-main:has(.channels) .channel-body .channel-action{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:34px;padding:0 8px 0 12px;border-radius:12px;background:var(--sage-soft);color:var(--ink);font-size:13px;font-weight:650}
.entry-shell #entry-main:has(.channels) .channel-body .channel-action .icon{width:16px;height:16px;padding:0;background:none}
.entry-shell #entry-main:has(.channels) .channel-grid>:is(.channel-flash,.channel-articles){flex-direction:row;align-items:center;gap:10px;padding:10px 10px 10px 12px;background:var(--card);border:1px solid var(--line)}
.entry-shell #entry-main:has(.channels) .channel-icon{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--orange-soft);color:#cf6a2d}
.entry-shell #entry-main:has(.channels) .channel-articles .channel-icon{background:var(--sage-soft);color:var(--green)}
.entry-shell #entry-main:has(.channels) .channel-icon .icon{width:22px;height:22px}
.entry-shell #entry-main:has(.channels) .channel-text{flex:1;min-width:0}
.entry-shell #entry-main:has(.channels) .channel-text h3{margin:0;font-size:14px;font-weight:700;line-height:1.35}
.entry-shell #entry-main:has(.channels) .channel-text p{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.35}
.entry-shell #entry-main:has(.channels) .channel-go{flex:none;width:16px;height:16px;color:#9aa192}
.entry-shell #entry-main:has(.channels) .home-note{display:none}
@media (hover:hover){.entry-shell #entry-main:has(.channels) .channel:hover{border-color:#d9e3c8;box-shadow:0 12px 28px #3c4a321a}}

@media (max-width:1023px),(hover:none),(pointer:coarse){
 .entry-shell #entry-main:has(.channels){grid-template-rows:auto auto minmax(0,1fr);gap:clamp(10px,1.7dvh,16px);padding-top:4px;padding-bottom:8px}
 .entry-shell #entry-main:has(.channels) h1{font-size:clamp(24px,3.6dvh,30px);margin:2px 0 4px}
 .entry-shell #entry-main:has(.channels) .channel-grid{grid-template-rows:minmax(0,1fr) auto;gap:12px}
}
@media (min-width:650px) and (max-height:500px){
 .entry-shell #entry-main:has(.channels){grid-template-rows:auto minmax(0,1fr)}
 .entry-shell #entry-main:has(.channels) .stats-placeholder{align-self:start}
}
@media (max-height:720px) and (max-width:1023px){
 .entry-shell #entry-main:has(.channels) .lead{font-size:11px;line-height:1.35}
 .entry-shell #entry-main:has(.channels) .course-window{min-height:34px}
 .entry-shell #entry-main:has(.channels) .stats-placeholder{padding:10px 14px 9px}
 .entry-shell #entry-main:has(.channels) .stat-grid{margin-top:7px}
 .entry-shell #entry-main:has(.channels) .stat-grid strong{font-size:20px}
 .today-start{min-height:32px;font-size:12px}
 .entry-shell #entry-main:has(.channels) .channel-body{padding:8px 10px 10px}
 .entry-shell #entry-main:has(.channels) .channel-body h3{font-size:16px}
 .entry-shell #entry-main:has(.channels) .channel-body p{margin:1px 0 0;font-size:11px}
 .entry-shell #entry-main:has(.channels) .channel-body .channel-action{min-height:30px;margin-top:6px;font-size:12px}
 .entry-shell #entry-main:has(.channels) .channel-text p{font-size:10px;line-height:1.3}
 .entry-shell #entry-main:has(.channels) .channel-grid>:is(.channel-flash,.channel-articles){padding:8px}
 .entry-shell #entry-main:has(.channels) .channel-icon{width:34px;height:34px;border-radius:11px}
 .entry-shell #entry-main:has(.channels) .channel-icon .icon{width:19px;height:19px}
}
@media (max-width:440px){
 .entry-shell #entry-main:has(.channels) .channel-grid>:is(.channel-flash,.channel-articles){gap:9px;padding:10px}
 .entry-shell #entry-main:has(.channels) .channel-icon{width:38px;height:38px;border-radius:12px}
 .entry-shell #entry-main:has(.channels) .channel-icon .icon{width:20px;height:20px}
 .entry-shell #entry-main:has(.channels) .channel-text h3{font-size:14px;letter-spacing:-.2px;white-space:nowrap}
 .entry-shell #entry-main:has(.channels) .channel-text p{font-size:10.5px}
 .entry-shell #entry-main:has(.channels) .channel-go{display:none}
}
@media (max-width:350px){
 .entry-shell #entry-main:has(.channels) .channel-grid>:is(.channel-flash,.channel-articles){gap:6px;padding:7px}
 .entry-shell #entry-main:has(.channels) .channel-icon{width:28px;height:28px;border-radius:9px}
 .entry-shell #entry-main:has(.channels) .channel-icon .icon{width:17px;height:17px}
 .entry-shell #entry-main:has(.channels) .channel-text h3{font-size:13px}
}

/* Theme directory: white cards, green numbering, clear scene art on the right. */
.is-directory .directory-header h1{font-weight:750;letter-spacing:-.6px}
.is-directory .back-link{color:#5f6b5c}
.directory-meta span{color:#7a8377}
.entry-shell .theme-viewport .theme-list{background:none;padding-left:12px}
.entry-shell .theme-viewport .theme-row::before{display:none}
.entry-shell .theme-viewport .theme-row{background:var(--card);border-color:var(--line);box-shadow:0 4px 16px #3c4a320a}
.entry-shell .theme-viewport .theme-row.is-active{background:var(--card);border-color:#d6e2c3;box-shadow:0 12px 30px #3c4a321a}
.entry-shell .theme-scenery{opacity:1}
/* The first scene cell covers the right half of the card; the sprite is sized from the cell, so any card ratio crops instead of stretching. */
.entry-shell .theme-scenery-art{left:auto;right:0;top:0;width:56%;height:100%;aspect-ratio:auto;background:none;filter:none;opacity:1;container-type:size;overflow:hidden}
.entry-shell .theme-scenery-art::before{content:"";position:absolute;--s:max(100cqw,100cqh);width:calc(var(--s) * var(--scene-cols,1));height:calc(var(--s) * var(--scene-rows,1));left:calc(50cqw - var(--s) / 2);top:clamp(calc(100cqh - var(--s)), calc(50cqh - var(--s) * var(--focus-y,.4)), 0px);background:var(--scene-image,none) 0 0/100% 100% no-repeat}
.entry-shell .theme-row.is-expanded .theme-scenery-art{height:var(--theme-open-heading-height);--focus-y:.3}
.entry-shell .theme-row .theme-scenery::after,.entry-shell .theme-row.is-active .theme-scenery::after{background:linear-gradient(90deg,var(--card) 0%,var(--card) 40%,#fffefab3 50%,#fffefa00 64%)}
.entry-shell .theme-row.is-expanded .theme-scenery{opacity:1}
.entry-shell .theme-row.is-expanded .theme-scenery::after{background:linear-gradient(180deg,#fffefa00 0,#fffefa00 calc(var(--theme-open-heading-height) - 14px),var(--card) calc(var(--theme-open-heading-height) + 6px)),linear-gradient(90deg,var(--card) 0%,var(--card) 40%,#fffefab3 50%,#fffefa00 64%)}
.entry-shell .theme-viewport .theme-number{font:700 15px/1 Inter,"Segoe UI",system-ui,sans-serif;color:var(--green)}
.entry-shell .theme-viewport .theme-label strong{font-weight:750;color:var(--ink)}
.entry-shell .theme-preview{color:var(--muted)}
.entry-shell .theme-count{background:#fffefae6;color:var(--green);padding:3px 8px;border-radius:10px;font-weight:600}
.entry-shell .theme-viewport .theme-row .theme-chevron{color:var(--green)}
.entry-shell .theme-viewport .task-row{display:flex;align-items:center;gap:12px;border-color:var(--line)}
.entry-shell .task-row>span:not(.task-thumb){flex:1}
.task-thumb{flex:none;width:52px;height:52px;border-radius:12px;background-color:var(--sage-soft);background-repeat:no-repeat;box-shadow:inset 0 0 0 1px #3c4a320d}
.entry-shell .task-row strong{font-weight:650;color:var(--ink)}
.entry-shell .task-level{background:var(--sage-soft);color:var(--green);border-radius:7px;font-weight:650}
.entry-shell .task-row>.icon{color:#9aa192}
.entry-shell .progress-draw,.entry-shell .desk-theme-progress .progress-track>span{background:#9cba7a}
.snap-caption{color:#8a917f}
@media (max-width:600px){.task-thumb{width:46px;height:46px;border-radius:11px}}
@media (max-height:450px){.task-thumb{width:38px;height:38px;border-radius:9px}}

/* Word selection: palette only, layout unchanged. */
.selection-search,.selection-library,.selection-word-list,.selection-tabs{background:var(--card);border-color:var(--line)}
.selection-library{box-shadow:var(--card-shadow)}
.selection-level-toggle{background:var(--sage-soft)}
.selection-level:nth-child(2) .selection-level-toggle{background:#eaf1f3}
.selection-level-badge{border-color:#d6e2c3;color:var(--green)}
.selection-theme-number{background:var(--sage-soft);color:var(--green);font-weight:650}
.selection-scope{background:var(--sage-soft);color:var(--green)}
.selection-tabs [aria-selected=true]{background:var(--sage-soft);color:var(--green);box-shadow:inset 0 -3px #8fae6c}
.selection-group{background:#f2f1e8}
.selection-word.is-selected{background:#f4f8ec}
.selection-screen input[type=checkbox]{border-color:#a9bb8f}
.selection-screen input[type=checkbox]:checked{background:#7f9d5f;border-color:#7f9d5f}
.selection-actions button,.selection-word-info button{background:var(--sage-soft);border-color:var(--line);color:var(--green)}
.selection-tools select{background:var(--card);border-color:var(--line)}

/* Desktop web: same palette on the sidebar layout. */
@media (min-width:1024px) and (hover:hover) and (pointer:fine){
 body{background:var(--paper)}
 .entry-shell::before{background:var(--card)}
 .entry-shell::after{background:var(--line)}
 .entry-shell #entry-nav a{color:#6f786b}
 .entry-shell #entry-nav a:hover{background:var(--sage-soft);color:var(--ink)}
 .entry-shell #entry-nav a[aria-current]{background:var(--sage);color:#2f4527}
 .entry-shell:has(.channels){background:var(--paper)}
 .entry-shell #entry-main:has(.channels)>.page-heading{padding-top:34px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 270 150'%3E%3Cdefs%3E%3ClinearGradient id='f' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='.55' stop-color='%23f6f4ec' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23f6f4ec'/%3E%3C/linearGradient%3E%3ClinearGradient id='l' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23f6f4ec'/%3E%3Cstop offset='.22' stop-color='%23f6f4ec' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M6 72h6v-6h4.5v-6h9v6h4.5v6h6V132H6Z' fill='%23f3dcc8' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='12.6' y='80' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='23.4' y='80' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='12.6' y='104' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='23.4' y='104' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='21' cy='70' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M38 58q5.76 0 7.04-8q1.92-6 8.96-6q7.04 0 8.96 6q1.28 8 7.04 8V132H38Z' fill='%23dfe8cf' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='45.0' y='66' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='56.6' y='66' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='45.0' y='90' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='56.6' y='90' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='45.0' y='114' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='56.6' y='114' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='54' cy='56' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M72 66h5.04l3.36-6v-8h11.200000000000001v8l3.36 6h5.04V132H72Z' fill='%23e9d8cc' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='78.2' y='74' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='88.2' y='74' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='78.2' y='98' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='88.2' y='98' width='5.6' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='86' cy='64' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M102 50h6.800000000000001v-6h5.1v-6h10.2v6h5.1v6h6.800000000000001V132H102Z' fill='%23f6e6c9' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='109.5' y='58' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='121.7' y='58' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='109.5' y='82' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='121.7' y='82' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='109.5' y='106' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='121.7' y='106' width='6.8' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='119' cy='48' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M138 62q5.3999999999999995 0 6.6-8q1.7999999999999998-6 8.4-6q6.6 0 8.4 6q1.2 8 6.6 8V132H138Z' fill='%23d9e5e8' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='144.6' y='70' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='155.4' y='70' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='144.6' y='94' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='155.4' y='94' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='153' cy='60' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M170 54h5.76l3.84-6v-8h12.8v8l3.84 6h5.76V132H170Z' fill='%23f1d3c0' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='177.0' y='62' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='188.6' y='62' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='177.0' y='86' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='188.6' y='86' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='177.0' y='110' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='188.6' y='110' width='6.4' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='186' cy='52' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M204 70h6v-6h4.5v-6h9v6h4.5v6h6V132H204Z' fill='%23e3ead3' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='210.6' y='78' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='221.4' y='78' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='210.6' y='102' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='221.4' y='102' width='6.0' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='219' cy='68' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Cpath d='M236 60q4.68 0 5.72-8q1.56-6 7.280000000000001-6q5.72 0 7.280000000000001 6q1.04 8 5.72 8V132H236Z' fill='%23f2e2cf' stroke='%23d8cbbb' stroke-width='.8'/%3E%3Crect x='241.7' y='68' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='251.1' y='68' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='241.7' y='92' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Crect x='251.1' y='92' width='5.2' height='12' rx='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='249' cy='58' r='2' fill='%23fffaf1' stroke='%23d3c4b2' stroke-width='.6'/%3E%3Ccircle cx='18' cy='104' r='16' fill='%23cddcb0'/%3E%3Ccircle cx='32' cy='114' r='12' fill='%23c3d6a3'/%3E%3Crect x='21' y='112' width='3' height='22' fill='%23b5a58f'/%3E%3Cpath d='M0 132h270v18H0Z' fill='%23dde9e9'/%3E%3Cpath d='M14 140h30M70 144h40M150 140h36M214 145h30' stroke='%23f8fbf8' stroke-width='1.5' stroke-linecap='round'/%3E%3Crect width='270' height='150' fill='url(%23f)'/%3E%3Crect width='270' height='150' fill='url(%23l)'/%3E%3C/svg%3E") right 0 top 0/min(46%,250px) auto no-repeat}
 .entry-shell #entry-main:has(.channels) .course-window{flex:none;aspect-ratio:16/10;height:auto}
 .entry-shell #entry-main:has(.channels) .channel-body{padding:14px 18px 18px}
 .entry-shell #entry-main:has(.channels) .channel-body h3{font-size:21px}
 .entry-shell #entry-main:has(.channels) .channel-body p{font-size:13px}
 .entry-shell #entry-main:has(.channels) .channel-grid>:is(.channel-flash,.channel-articles){padding:16px 18px;gap:14px}
 .entry-shell #entry-main:has(.channels) .channel-icon{width:48px;height:48px;border-radius:14px}
 .entry-shell #entry-main:has(.channels) .channel-text h3{font-size:16px}
 .entry-shell #entry-main:has(.channels) .channel-text p{font-size:12px}
 .desk-theme-tab[aria-selected=true]{background:var(--card);border-color:#d6e2c3}
 .desk-theme-tab:hover{background:var(--sage-soft)}
 .desk-theme-tab[aria-selected=true] .theme-number{color:var(--green)}
 .desk-theme-panel{background:var(--card);border-color:var(--line);box-shadow:var(--card-shadow)}
 .desk-task{grid-template-rows:auto auto 1fr auto auto;background:#fff;border-color:var(--line)}
 .desk-task .task-thumb{width:64px;height:64px;border-radius:14px}
 .desk-task:hover{border-color:#cddcb6}
 .desk-task-go{color:var(--green)}
}
@media (min-width:1024px) and (hover:hover) and (pointer:fine) and (max-height:820px){
 .entry-shell #entry-main:has(.channels) .course-window{aspect-ratio:2/1}
 .entry-shell #entry-main:has(.channels) .channel-body{padding:10px 16px 14px}
}
@media (min-width:1024px) and (hover:hover) and (pointer:fine) and (max-height:660px){
 .entry-shell #entry-main:has(.channels) .course-window{aspect-ratio:3/1}
 .entry-shell #entry-main:has(.channels) .channel-body p{margin:2px 0 6px}
}
