@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700;800;900&family=Noto+Serif+TC:wght@500;700;900&display=swap');
:root{--ink:#28493f;--muted:#778078;--paper:#f8f7f1;--green:#346d57;--lime:#e1ecb8;--coral:#d7795e;--line:#e0e5da;--serif:'Noto Serif TC','BiauKai','KaiTi',serif;--sans:'Noto Sans TC',system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #d78a43;outline-offset:4px}button{border:0}h1,h2,h3,p{margin:0}h1{line-height:1.3;font-weight:800;letter-spacing:-1.5px}h2{font-size:24px;line-height:1.5}h3{font-size:18px}small{font-size:13px}img{max-width:100%}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:20px;background:white;z-index:99;padding:12px}.skip:focus{top:10px}.topbar{height:92px;max-width:1320px;padding:0 40px;margin:auto;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;white-space:nowrap;font-weight:800;font-size:21px;line-height:1.5}.brand small{display:block;font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:500}.brand-mark{position:relative;background:var(--ink);color:#fbf8df;font-family:var(--serif);border-radius:16px 16px 7px 16px;font-size:28px;width:48px;height:49px;text-align:center;line-height:48px}.brand-mark span{position:absolute;right:-6px;top:-8px;color:#e6a861;font-size:20px}.topbar nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:600;height:100%;align-items:center}.topbar nav a{height:100%;display:flex;align-items:center;position:relative}.topbar nav a.active:after{content:'';position:absolute;bottom:20px;left:0;right:0;height:3px;border-radius:3px;background:var(--green)}.header-stars{background:#f0e9d4;border:1px solid #e7ddbe;border-radius:30px;padding:7px 16px;color:#967037;font-weight:700;font-size:14px}main{max-width:1240px;margin:auto;padding:38px 0 60px;min-height:75vh}.eyebrow{font-size:11px;font-weight:800;letter-spacing:3px;color:var(--green);text-transform:uppercase;display:flex;align-items:center;gap:10px}.eyebrow:before{content:'';width:24px;height:2px;background:var(--green)}.hero{display:grid;grid-template-columns:1.02fr 1fr;gap:32px;align-items:center;padding:14px 12px 36px}.hero h1{font-size:51px;margin:15px 0 18px}.hero h1 em{font-style:normal;color:var(--coral);position:relative}.hero p{color:#7b8175;font-size:15px;max-width:410px}.hero-actions{display:flex;gap:14px;align-items:center;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 22px;border-radius:12px;background:var(--green);color:white;font-size:14px;font-weight:700;transition:transform .15s,background .15s}.btn:hover{background:#285740;transform:translateY(-2px)}.btn.secondary{background:transparent;border:1px solid #ccd7c9;color:var(--ink)}.btn.light{background:white;color:var(--ink)}.btn.small{min-height:38px;padding:6px 15px;font-size:13px}.hero-meta{margin-top:24px;color:#8c9188;font-size:12px;display:flex;gap:20px}.hero-meta strong{color:var(--ink)}.hero-art{position:relative;border-radius:38% 42% 36% 44%;min-height:290px;background:#e8efdf;overflow:visible}.hero-art svg{width:100%;height:290px;overflow:visible}.floating-chip{position:absolute;background:#fffef8;border:1px solid #e8e8dc;box-shadow:0 7px 20px #294c3f09;border-radius:16px;padding:10px 17px;display:flex;gap:9px;align-items:center;font-size:12px}.floating-chip.one{left:2%;top:18%}.floating-chip.two{right:-2%;bottom:15%}.floating-chip strong{font-family:var(--serif);font-size:27px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:10px 0 22px}.section-heading h2{font-size:22px}.section-heading p{color:var(--muted);font-size:12px;margin-top:4px}.text-link{font-size:13px;color:var(--green);font-weight:700}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 252px;gap:28px;align-items:start}.island-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.island-card{background:white;border:1px solid #e4e7dc;border-radius:20px;overflow:hidden;transition:transform .2s,box-shadow .2s}.island-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #294c3f09}.card-landscape{height:114px;position:relative;overflow:hidden;background:var(--tint);display:flex;align-items:center;justify-content:center}.card-landscape:before,.card-landscape:after{content:'';position:absolute;width:220px;height:95px;bottom:-65px;border-radius:50%;background:#fff8;transform:rotate(-8deg);left:-25px}.card-landscape:after{left:auto;right:-60px;bottom:-60px;width:270px;background:#ffffff59;transform:rotate(15deg)}.island-art-icon{font-size:55px;z-index:1;filter:drop-shadow(0 8px 4px #0000000a);transition:transform .25s}.island-card:hover .island-art-icon{transform:rotate(-7deg) scale(1.1)}.island-number{position:absolute;top:12px;left:15px;border:1px solid #ffffffb0;color:#3c5c4a99;border-radius:20px;padding:2px 9px;font-size:10px;font-weight:800;letter-spacing:1px}.island-badge{position:absolute;right:14px;top:11px;font-size:18px}.mini-characters{position:absolute;bottom:10px;right:15px;display:flex;gap:6px}.mini-characters span{font-family:var(--serif);font-size:17px;line-height:28px;width:29px;text-align:center;background:#fff9;border-radius:6px;transform:rotate(6deg)}.mini-characters span:nth-child(even){transform:rotate(-7deg)}.card-body{padding:17px 20px 18px}.card-title{display:flex;align-items:center;justify-content:space-between}.card-title h3{font-size:19px}.card-title .arrow{color:#869a82;font-size:19px}.card-body p{font-size:12px;color:var(--muted);margin-top:5px;min-height:20px}.card-bottom{display:flex;gap:10px;align-items:center;margin-top:16px;font-size:10px;color:#8a9286}.track{background:#edf0e7;border-radius:8px;height:5px;flex:1;overflow:hidden}.track i{display:block;background:#6d9d73;height:100%;border-radius:8px}.side-card{background:#fffef8;border:1px solid #e3e6d9;border-radius:20px;padding:22px;margin-bottom:18px}.side-card.green{background:#eaf0e1;border-color:#dde5d2}.side-card h3{font-size:16px}.side-card p{font-size:12px;color:var(--muted);margin-top:10px}.side-card .btn{width:100%;margin-top:17px}.mascot{width:80px;height:90px;display:block;margin:4px auto 15px}.daily-label{display:block;font-size:9px;letter-spacing:2px;font-weight:800;color:#7a8e69;margin-bottom:7px}.daily-word{display:flex;gap:13px;align-items:center;margin-top:16px}.daily-word strong{font-family:var(--serif);font-size:48px;line-height:1;background:#fffef9;width:76px;height:76px;display:grid;place-items:center;border-radius:16px}.daily-word span{font-size:12px;color:var(--green)}.badge-row{display:flex;justify-content:space-between;gap:7px;margin-top:20px}.badge-circle{display:grid;place-items:center;width:47px;height:47px;background:#f2f3e9;border-radius:50%;font-size:23px}.badge-circle.dim{filter:grayscale(1);opacity:.35}.sidebar-note{font-size:11px!important;line-height:1.8}.back{font-size:13px;display:inline-flex;color:var(--muted);margin-bottom:23px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:28px}.page-head h1{font-size:36px;margin:8px 0}.page-head p{font-size:14px;color:var(--muted)}.island-banner{border-radius:24px;background:var(--tint);padding:32px 38px;display:flex;gap:25px;align-items:center;margin-bottom:28px}.island-banner .big-icon{font-size:76px}.island-banner h1{font-size:34px}.island-banner p{font-size:14px;margin-top:8px}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.level-card{background:white;border:1px solid var(--line);padding:24px;border-radius:18px;display:flex;flex-direction:column;gap:13px}.level-card .step{font-size:11px;color:var(--muted);letter-spacing:1px}.level-chars{font-family:var(--serif);font-size:28px;letter-spacing:5px}.level-card .btn{margin-top:auto}.level-card.locked{background:#f0f1e9}.level-intro{background:white;border:1px solid var(--line);border-radius:24px;padding:35px;margin-bottom:24px}.level-intro h1{font-size:32px;margin:10px 0}.level-intro p{color:var(--muted);font-size:14px}.character-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.character-card{background:white;border:1px solid var(--line);border-radius:16px;text-align:center;padding:18px 10px;position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;transition:transform .15s}.character-card:hover{transform:translateY(-3px);border-color:#93ae87}.character-card .char{font-family:var(--serif);font-size:42px;line-height:1.5}.character-card .meaning{font-size:12px;color:var(--muted)}.character-card .done{position:absolute;top:8px;right:9px;font-size:12px;color:#67905e}.char-pronunciation{display:flex;align-items:center;justify-content:center;gap:8px}.zy{display:inline-flex;position:relative;align-items:center;gap:2px;font-family:var(--serif);font-size:13px;line-height:1.25;vertical-align:middle}.zy-body{display:flex;flex-direction:column;align-items:center;min-width:1em}.zy-tone{position:relative;top:-.15em;font-size:1.1em}.zy.neutral{padding-top:.6em}.zy.neutral .zy-tone{position:absolute;top:-.2em;left:0;width:1em;text-align:center}.zy.large{font-size:25px}.learn-layout{display:grid;grid-template-columns:300px 1fr;gap:26px;align-items:start}.word-hero{border:1px solid var(--line);background:#fffef9;border-radius:24px;padding:25px;text-align:center;position:sticky;top:20px}.word-hero .big-char{font-family:var(--serif);font-size:124px;line-height:1.5;display:inline-block}.word-hero .word-emoji{font-size:35px;display:block}.word-hero .char-pronunciation{gap:20px}.radical-tag{display:inline-block;border-radius:20px;background:#eaf0df;color:#5a7958;font-size:12px;padding:5px 13px}.word-hero .btn{width:100%;margin-top:18px}.word-hero .mini-caption{font-size:11px;color:var(--muted);margin-top:12px}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:22px;flex-wrap:wrap}.tabs button{background:transparent;border-bottom:3px solid transparent;padding:12px 17px;font-size:14px;font-weight:700}.tabs button.active{border-color:var(--green);color:var(--green)}.lesson-panel{background:white;border:1px solid var(--line);border-radius:20px;padding:28px;min-height:310px}.lesson-panel h2{font-size:23px;margin-bottom:14px}.lesson-panel p{color:#617164;font-size:15px;line-height:2}.lesson-panel .audio-btn{margin:18px 0}.audio-btn{background:#e9f0e1;border:1px solid #dae6cd;color:#52714c;border-radius:30px;min-height:40px;padding:8px 17px;font-size:13px;font-weight:600}.origin-sequence{display:flex;align-items:center;gap:18px;justify-content:center;background:#f7f7ef;border-radius:15px;margin:20px 0;padding:20px}.origin-sequence figure{margin:0;text-align:center}.origin-sequence .picture{font-size:48px;display:grid;place-items:center;height:75px}.origin-sequence img{height:72px;object-fit:contain;mix-blend-mode:multiply}.origin-sequence .modern{font-family:var(--serif);font-size:58px;line-height:75px}.origin-sequence figcaption{font-size:10px;color:var(--muted)}.note{font-size:12px!important;color:#8c907e!important;border-left:3px solid #dfdfa7;padding-left:12px;margin:18px 0}.source-link{font-size:12px;color:var(--green);text-decoration:underline;text-underline-offset:4px}.puzzle-row{display:flex;align-items:center;justify-content:center;gap:10px;margin:24px 0}.part{background:#e3eef0;color:#477586;display:inline-grid;place-items:center;width:65px;height:70px;border-radius:14px;font-family:var(--serif);font-size:40px}.part:nth-child(3){background:#f6ead0;color:#9c7c40}.sentence{font-family:var(--serif);font-size:26px!important;color:var(--ink)!important;line-height:1.9!important;margin-top:18px}.sentence mark{color:var(--coral);background:#faeee4;border-radius:5px;padding:0 3px}.word-line{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.word-line strong{font-family:var(--serif);font-size:35px}.learn-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:24px;align-items:center;flex-wrap:wrap}.small-words{display:flex;gap:8px;flex-wrap:wrap}.small-words a{padding:4px 10px;font-family:var(--serif);border-radius:6px;border:1px solid var(--line);background:white;font-size:19px}.small-words a.active{background:var(--ink);color:white}.writing-grid{width:260px;height:260px;margin:16px auto;background:linear-gradient(to right,transparent calc(50% - .5px),#d7dfcf calc(50% - .5px),#d7dfcf calc(50% + .5px),transparent calc(50% + .5px)),linear-gradient(to bottom,transparent calc(50% - .5px),#d7dfcf calc(50% - .5px),#d7dfcf calc(50% + .5px),transparent calc(50% + .5px)),#fafbf5;border:1px solid #d7dfcf;border-radius:12px;overflow:hidden;touch-action:none}.writing-controls{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}.writing-controls button{background:#eaf0e2;border-radius:9px;padding:8px 14px;font-size:13px}.writing-status{text-align:center;font-size:13px;min-height:30px;color:var(--green)}.searchbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:24px}.searchbar input,.searchbar select{padding:12px 16px;border:1px solid #d7dfd1;border-radius:12px;background:white;color:var(--ink);min-height:48px}.searchbar input{flex:1;min-width:200px}.empty{padding:50px;text-align:center;border:1px dashed #cdd7c5;border-radius:20px;color:var(--muted);background:#fbfcf6}.quiz-shell{max-width:820px;margin:auto}.quiz-top{display:flex;gap:18px;align-items:center;margin-bottom:25px;font-size:12px;color:var(--muted)}.quiz-top .track{height:7px}.quiz-card{background:white;border:1px solid var(--line);border-radius:26px;padding:35px;text-align:center;min-height:430px}.quiz-type{font-size:11px;letter-spacing:2px;color:var(--green);font-weight:800}.quiz-card h1{font-size:29px;letter-spacing:0;margin:18px 0 22px}.quiz-picture{font-size:80px;line-height:1.5;margin:10px 0 25px}.answers{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;max-width:570px;margin:24px auto 0}.answer{border:2px solid #e4e9dc;border-radius:16px;background:#fafbf6;min-height:88px;font-family:var(--serif);font-size:40px;transition:background .15s}.answer:hover{border-color:#9ebc8d}.answer.correct{background:#e1efd2;border-color:#6f9b57;opacity:1}.answer.wrong{background:#fae7df;border-color:#d58b76;opacity:1}.answer.word-answer{font-family:var(--sans);font-size:20px}.feedback{font-size:15px;min-height:32px;margin-top:24px;font-weight:700}.feedback.error{color:#b5604b}.feedback.success{color:#51803f}.treasure-board{width:240px;height:240px;margin:15px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.treasure-board button{border:1px dashed #bbcdb4;background:#f2f7eb;border-radius:12px;font-size:26px}.treasure-board .center{background:#dceaca;cursor:default;font-size:40px}.treasure-board button.selected{background:#c9e1b7;border:2px solid #679952}.result-medal{font-size:80px;line-height:1.4;margin-bottom:15px}.result-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:25px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.stat{background:white;border:1px solid var(--line);border-radius:18px;padding:25px;text-align:center}.stat strong{font-size:36px;display:block}.stat span{color:var(--muted);font-size:12px}.badge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.badge-card{background:white;border:1px solid var(--line);border-radius:18px;padding:24px;text-align:center}.badge-card .emoji{font-size:40px}.badge-card p{font-size:12px;color:var(--muted);margin:8px 0}.badge-card.pending{opacity:.55}.article{max-width:880px;margin:auto}.article h1{font-size:34px;margin-bottom:12px}.article h2{font-size:23px;margin-top:30px;margin-bottom:13px}.article p,.article li{font-size:14px;color:#65715f}.article section{background:white;border:1px solid var(--line);border-radius:18px;margin:20px 0;padding:25px}.article section h2{margin-top:0}.article a{color:var(--green);text-decoration:underline}.article .btn{color:white;text-decoration:none}.article .btn.secondary{color:var(--ink)}.article details{margin:12px 0}.article summary{cursor:pointer}.article table{width:100%;border-collapse:collapse;font-size:12px}.article td,.article th{padding:9px;border-bottom:1px solid var(--line);text-align:left}.settings-row{display:flex;align-items:center;gap:13px;margin:15px 0;flex-wrap:wrap}.settings-row label{font-size:14px}.settings-row select{padding:8px;border:1px solid var(--line);border-radius:8px;background:white}.print-sheet{display:none}footer{max-width:1240px;margin:0 auto;border-top:1px solid var(--line);padding:25px 0 35px;display:flex;justify-content:space-between;font-size:11px;color:#929788}footer a{color:#687e66}#toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%,20px);background:#29493f;color:white;padding:12px 22px;border-radius:12px;opacity:0;transition:.2s;pointer-events:none;z-index:10;font-size:14px;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}#audio-dock{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;background:#fffef8;border:1px solid #d9e3ce;border-radius:18px;box-shadow:0 10px 40px #244b4020;padding:10px 16px;z-index:9;max-width:95vw}#audio-label{font-size:12px;white-space:nowrap}#audio-dock audio{height:35px;width:260px}#audio-close{background:transparent;font-size:24px}.loading{padding:80px;text-align:center}.confetti{font-size:24px;letter-spacing:12px;color:#d8ac59}.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.game-tile{background:white;border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:14px}.game-tile .emoji{font-size:40px}.game-tile p{font-size:13px;color:var(--muted)}.game-tile .btn{margin-top:auto}.review-chip{display:inline-block;background:#f7e8d5;border-radius:20px;padding:4px 11px;color:#987245;font-size:11px}.own-drawing{display:block;width:100%;max-width:120px;height:80px}.word-search-count{font-size:12px;color:var(--muted);margin:0 0 15px}.no-wrap{white-space:nowrap}
@media(min-width:1450px){.hero h1{font-size:55px}}@media(max-width:1300px){main,footer{margin-left:40px;margin-right:40px}.topbar{padding:0 40px}.dashboard{grid-template-columns:minmax(0,1fr) 235px;gap:22px}.hero h1{font-size:45px}}@media(max-width:1000px){.topbar{gap:20px;padding:0 25px}.topbar nav{gap:17px}.brand{font-size:18px}main,footer{margin-left:25px;margin-right:25px}.hero h1{font-size:38px}.hero-art{min-height:240px}.hero-art svg{height:240px}.dashboard{grid-template-columns:1fr}.dashboard aside{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.side-card{margin-bottom:0;padding:18px}.mascot{height:60px;margin-bottom:10px}.character-grid{grid-template-columns:repeat(5,1fr)}.learn-layout{grid-template-columns:250px 1fr}.word-hero{padding:18px}.level-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.topbar{height:auto;min-height:78px;padding:16px 20px;flex-wrap:wrap;gap:14px}.brand{font-size:17px}.brand-mark{width:40px;height:42px;line-height:42px;font-size:24px}.brand small{font-size:9px}.topbar nav{order:3;width:100%;height:35px;justify-content:space-between;font-size:12px;margin:0;gap:8px}.topbar nav a.active:after{bottom:-5px}.header-stars{margin-left:auto;font-size:12px;padding:4px 12px}main{padding-top:25px;margin:0 20px}.hero{grid-template-columns:1fr;padding:5px 0 25px;gap:20px}.hero h1{font-size:39px;margin-top:12px}.hero p{font-size:14px;max-width:100%}.hero-art{min-height:210px;margin:0 15px}.hero-art svg{height:210px}.hero-meta{margin-top:18px;font-size:11px}.hero-actions{margin-top:20px}.floating-chip{padding:7px 12px;font-size:10px}.floating-chip strong{font-size:22px}.section-heading{align-items:flex-end;margin-top:15px}.section-heading h2{font-size:20px}.section-heading p{font-size:11px}.island-grid{gap:13px}.card-landscape{height:96px}.island-art-icon{font-size:44px}.card-body{padding:13px}.card-title h3{font-size:17px}.card-body p{font-size:11px;min-height:38px}.mini-characters{right:10px;bottom:7px}.mini-characters span{font-size:14px;line-height:23px;width:23px}.island-number{font-size:8px;padding:1px 6px;left:10px}.card-bottom{font-size:9px;gap:5px;margin-top:10px}.dashboard aside{grid-template-columns:1fr}.side-card .mascot{float:left;margin:0 16px 0 0;width:64px;height:75px}.side-card .btn{width:auto}.side-card.green{display:none}.badge-row{justify-content:flex-start;gap:15px}.sidebar-note{margin-top:4px!important}.page-head h1{font-size:29px}.page-head{flex-direction:column;align-items:flex-start}.island-banner{padding:23px;gap:15px}.island-banner .big-icon{font-size:51px}.island-banner h1{font-size:28px}.island-banner p{font-size:12px}.level-grid{grid-template-columns:1fr}.level-card{padding:22px}.level-intro{padding:24px}.level-intro h1{font-size:27px}.character-grid{grid-template-columns:repeat(3,1fr);gap:10px}.character-card{padding:14px 6px}.character-card .char{font-size:35px}.learn-layout{grid-template-columns:1fr;gap:17px}.word-hero{position:static;padding:18px;display:grid;grid-template-columns:1fr 1fr;align-items:center}.word-hero .char-pronunciation{grid-row:span 3;gap:15px}.word-hero .big-char{font-size:97px}.word-hero .word-emoji{font-size:28px}.word-hero .btn{margin-top:10px}.word-hero .mini-caption{grid-column:span 2}.radical-tag{font-size:11px}.lesson-panel{padding:23px;min-height:280px}.tabs{gap:1px;margin-bottom:15px}.tabs button{padding:10px 12px;font-size:13px}.origin-sequence{gap:12px;padding:15px 8px}.origin-sequence .picture{font-size:40px}.origin-sequence img{height:60px}.origin-sequence .modern{font-size:49px}.lesson-panel h2{font-size:22px}.lesson-panel p{font-size:14px}.sentence{font-size:24px!important}.quiz-card{padding:25px 18px}.quiz-card h1{font-size:24px}.quiz-picture{font-size:65px}.answers{gap:10px}.answer{min-height:78px;font-size:35px}.stats{gap:10px}.stat{padding:18px 9px}.stat strong{font-size:28px}.stat span{font-size:10px}.badge-grid{grid-template-columns:repeat(2,1fr);gap:12px}.game-grid{grid-template-columns:1fr}.article h1{font-size:29px}.article section{padding:20px}.article h2{font-size:20px}#audio-dock{gap:6px;padding:9px 10px}#audio-label{max-width:70px;white-space:normal;font-size:10px}#audio-dock audio{width:220px}.writing-grid{width:250px;height:250px}footer{margin:0 20px;gap:12px;flex-wrap:wrap;font-size:10px}.searchbar select{flex:1;font-size:13px;min-width:100px}.searchbar input{width:100%;flex-basis:100%}.empty{padding:30px}.level-chars{font-size:31px}.btn{font-size:13px}.section-heading .text-link{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{body{background:white}.topbar,main,footer,#audio-dock,#toast{display:none!important}.print-sheet{display:block;color:black;padding:0;font-family:var(--serif)}.print-sheet h1{font-size:24pt;letter-spacing:0;margin:0 0 8mm}.print-sheet p{font-size:12pt}.print-word{display:flex;align-items:center;gap:5mm;margin:8mm 0;break-inside:avoid}.print-label{font-size:29pt;width:18mm}.practice-cell{width:26mm;height:26mm;border:1px solid #555;position:relative;display:grid;place-items:center;font-size:48pt;color:#ccc;background:linear-gradient(90deg,transparent 49.5%,#bbb 49.5%,#bbb 50%,transparent 50%),linear-gradient(transparent 49.5%,#bbb 49.5%,#bbb 50%,transparent 50%)}@page{size:A4;margin:16mm}}

main:focus{outline:none}

.worksheet-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.worksheet-links a{display:inline-flex;align-items:center;gap:7px;background:#eeebfa;color:#7868b9!important;text-decoration:none!important;padding:12px 16px;border-radius:12px;font-size:14px;min-height:48px}.worksheet-links a:hover{background:#e4dff5}.worksheet-all{margin:16px 0;font-weight:600}.worksheet-all a{font-size:14px}.article #worksheet-download{color:white;text-decoration:none}
