:root{color:#172033;font-synthesis:none;background:#eef4ff;font-family:Inter,ui-rounded,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body{min-width:320px;min-height:100dvh;margin:0;overflow-x:hidden}button,input{font:inherit}button{color:#172033;cursor:pointer;touch-action:manipulation;background:#dce7ff;border:0;border-radius:.8rem;min-height:44px;font-size:1rem;font-weight:700}button:focus-visible,input:focus-visible+span{outline-offset:2px;outline:3px solid #ffbd3e}button:disabled{cursor:default}.word-card{background:#fffffff5;border:1px solid #78a2e21f;border-radius:11px;grid-template-columns:30px minmax(0,1fr) fit-content(88px);align-items:center;gap:10px;min-width:0;height:50px;padding:0 10px;display:grid;position:relative;box-shadow:0 5px 14px #2d5da61a}.review-back-button:focus-visible,.result-page .action-button:focus-visible,.review-page .action-button:focus-visible{outline-offset:2px;outline:3px solid #174ea6}.word-card-index,.word-card-english,.word-card-chinese{min-width:0}.word-card-index{color:#185fbd;background:#e4efff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:14px;font-weight:800;line-height:1;display:grid}.word-card-english{color:#1558be;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;line-height:1.2;overflow:hidden}.word-card-chinese{color:#173c78;text-overflow:ellipsis;white-space:nowrap;justify-self:end;max-width:88px;font-size:15px;font-weight:800;line-height:1.2;overflow:hidden}.app{width:100%;max-width:430px;min-height:100dvh;margin:0 auto;padding:clamp(.75rem,4vw,1rem)}.result-page{flex-direction:column;justify-content:center;gap:1rem;display:flex}.home-page{--home-width:min(76.5vw, 329px);isolation:isolate;background:radial-gradient(circle at 50% 38%,#fffffffa 0 18%,#fafcffb8 40%,#0000 64%),linear-gradient(#f5f8ff 0%,#edf4ff 68%,#e5efff 100%);grid-template-rows:72px auto minmax(0,1fr);align-items:start;height:100dvh;min-height:100dvh;padding:0;display:grid;position:relative;overflow:hidden auto}.home-background{z-index:0;color:#7faef7;pointer-events:none;position:absolute;inset:0;overflow:hidden}.home-background:before,.home-background:after{content:"";background:radial-gradient(55% 100% at 14% 100%,#cde0ffe0 0 69%,#0000 70%),radial-gradient(62% 110% at 82% 100%,#cde0ffd1 0 67%,#0000 68%);border-radius:52% 48% 0 0/30% 34% 0 0;height:25%;position:absolute;bottom:-9%;left:-24%;right:-24%}.home-background:after{background:radial-gradient(58% 105% at 22% 100%,#dceafff0 0 70%,#0000 71%),radial-gradient(58% 105% at 78% 100%,#dceaffe6 0 70%,#0000 71%);height:27%;bottom:-13%;left:-34%;right:-34%}.decor-letter{color:#5791eb38;font-size:calc(var(--home-width) * .08);font-style:italic;font-weight:800;line-height:1;position:absolute}.decor-letter-a{top:37%;left:3%;transform:rotate(-6deg)}.decor-letter-b{top:32%;right:3%;transform:rotate(8deg)}.decor-letter-c{top:72%;left:3%;transform:rotate(-4deg)}.decor-spark,.decor-spark:before{width:calc(var(--home-width) * .018);aspect-ratio:1;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);content:"";background:#5b94ef33;position:absolute}.decor-spark-one{top:44%;right:11%}.decor-spark-two{bottom:26%;left:9%}.decor-spark:before{top:calc(var(--home-width) * .08);left:calc(var(--home-width) * .06);width:55%}.home-toolbar{z-index:2;justify-content:space-between;align-items:center;width:100%;height:72px;padding:14px 18px;display:flex;position:relative}.toolbar-entry{color:#4774b5;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:0 8px;font-size:13px;font-weight:700;display:inline-flex}.toolbar-entry svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px;height:17px}.toolbar-entry:focus-visible{outline-color:#2f68d8}.toolbar-entry:disabled{cursor:default;opacity:1}.home-card-stage{z-index:1;place-items:start center;width:100%;padding-top:clamp(42px,5.5dvh,48px);display:grid;position:relative}.home-footer-space{z-index:1;width:100%;height:100%;min-height:0;position:relative}@media (width<=430px) and (height<=700px){.home-page{height:700px;min-height:700px}}.home-card-scene{z-index:1;width:var(--home-width);perspective:1200px}.home-card{aspect-ratio:417/642;width:100%;transform-style:preserve-3d;will-change:transform;transition:transform .7s ease-in-out;position:relative}.home-card.is-flipped{transform:rotateY(180deg)}.home-card-face{border-radius:calc(var(--home-width) * .08);box-shadow:0 calc(var(--home-width) * .05) calc(var(--home-width) * .08) #2f5dab38, 0 calc(var(--home-width) * .009) calc(var(--home-width) * .026) #3464b324, inset 0 0 0 calc(var(--home-width) * .024) #ffffffd1;backface-visibility:hidden;background:radial-gradient(circle at 50% 28%,#fff 0%,#ffffffdb 34%,#0000 72%),linear-gradient(155deg,#fdfefe 0%,#edf4ff 100%);border:1px solid #74a3eb59;position:absolute;inset:0;overflow:hidden}.home-card-face:before{z-index:4;inset:calc(var(--home-width) * .024);border-radius:calc(var(--home-width) * .056);content:"";pointer-events:none;border:1px solid #76a6ed3d;position:absolute}.home-card-front{color:#183b75;cursor:pointer}.home-card-trigger{z-index:5;background:0 0;width:100%;height:100%;position:absolute;inset:0}.home-card-trigger:focus-visible{border-radius:inherit;outline-offset:-.4rem}.home-card-back{pointer-events:none;transform:rotateY(180deg)}.home-card[data-phase=back] .home-card-back{pointer-events:auto}.home-card[data-phase=back] .home-card-front{pointer-events:none}.language-mark{aspect-ratio:1.4;width:18%;display:block;position:absolute}.language-mark span{aspect-ratio:1;color:#fff;width:59%;font-size:calc(var(--home-width) * .05);box-shadow:0 calc(var(--home-width) * .02) calc(var(--home-width) * .035) #2f68d840;border-radius:21%;place-items:center;font-weight:800;display:grid;position:absolute}.language-mark span:first-child{background:linear-gradient(145deg,#5f9dfb,#2d72e7);top:2%;left:4%;transform:rotate(-9deg)}.language-mark span:last-child{color:#2f68d8;background:#fff;bottom:0;right:3%;transform:rotate(8deg)}.home-card-front .language-mark{top:21.8%;left:50%;transform:translate(-50%)}.home-card-title{color:#0b3f8c;width:100%;font-size:calc(var(--home-width) * .091);text-align:center;white-space:nowrap;margin:0;font-weight:800;line-height:1.2;position:absolute;top:36.8%;left:50%;transform:translate(-50%)}.home-card-slogan{color:#3f76c3;width:100%;font-size:calc(var(--home-width) * .046);text-align:center;white-space:nowrap;font-weight:700;line-height:1.2;position:absolute;top:48%;left:0}.front-sparkle{width:calc(var(--home-width) * .025);aspect-ratio:1;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:#3478dc;position:absolute;top:72.5%;left:50%;transform:translate(-50%)}.front-sparkle:before,.front-sparkle:after{width:calc(var(--home-width) * .05);content:"";background:radial-gradient(circle,#3478dc 0 2px,#0000 2.5px) 0/8px 4px no-repeat,linear-gradient(#8bb5f5,#8bb5f5) 100%/55% 1px no-repeat;height:2px;position:absolute;top:45%}.front-sparkle:before{right:calc(100% + var(--home-width) * .018)}.front-sparkle:after{left:calc(100% + var(--home-width) * .018);transform:scaleX(-1)}.home-card-hint{color:#3471c8;width:100%;font-size:calc(var(--home-width) * .043);text-align:center;white-space:nowrap;font-weight:700;line-height:1.2;position:absolute;top:78.5%;left:0}.front-chevron{width:calc(var(--home-width) * .08);height:calc(var(--home-width) * .085);position:absolute;top:86.5%;left:50%;transform:translate(-50%)}.front-chevron:before,.front-chevron:after{width:calc(var(--home-width) * .055);aspect-ratio:1;border-right:calc(var(--home-width) * .009) solid #2f73dd;border-bottom:calc(var(--home-width) * .009) solid #2f73dd;content:"";position:absolute;left:50%;transform:translate(-50%)rotate(45deg)}.front-chevron:before{top:0}.front-chevron:after{top:calc(var(--home-width) * .025)}h1{color:#183b75;text-align:center;margin:0;font-size:clamp(1.375rem,6vw,1.75rem)}.home-subtitle{text-align:center;margin:0;font-size:1rem;font-weight:700}.difficulty-actions{grid-template-columns:1fr;gap:1rem;display:grid}.difficulty-actions button{color:#fff;background:#2f68d8;width:100%;min-height:60px;font-size:1.125rem}.home-card-back h1{color:#0b3f8c;width:100%;font-size:calc(var(--home-width) * .084);white-space:nowrap;line-height:1.2;position:absolute;top:17%;left:0}.home-card-back .language-mark{top:7%;left:50%;transform:translate(-50%)}.home-card-back .home-subtitle{color:#4d6f9f;width:100%;font-size:calc(var(--home-width) * .043);line-height:1.2;position:absolute;top:25.5%;left:0}.home-card-back .difficulty-actions{gap:calc(var(--home-width) * .04);width:89%;display:grid;position:absolute;top:34.8%;left:5.5%}.difficulty-actions .difficulty-option{--difficulty-color:#2f68d8;--difficulty-soft:#e8f0ff;grid-template-columns:calc(var(--home-width) * .18) minmax(0, 1fr) calc(var(--home-width) * .025);gap:calc(var(--home-width) * .04);width:100%;height:calc(var(--home-width) * .25);min-height:0;padding:calc(var(--home-width) * .035) calc(var(--home-width) * .045);border-radius:calc(var(--home-width) * .032);box-shadow:0 calc(var(--home-width) * .02) calc(var(--home-width) * .04) #32548c2b;color:var(--difficulty-color);text-align:left;background:#fffffff0;border:1px solid #7a95be29;align-items:center;display:grid}.difficulty-actions .difficulty-option-easy{--difficulty-color:#11a94d;--difficulty-soft:#def5e7}.difficulty-actions .difficulty-option-normal{--difficulty-color:#f2a900;--difficulty-soft:#fff1d5}.difficulty-actions .difficulty-option-hard{--difficulty-color:#7d3fe2;--difficulty-soft:#eee3ff}.difficulty-option:focus-visible{outline-offset:2px;outline:3px solid #2f68d8}.difficulty-icon-box{aspect-ratio:1;background:var(--difficulty-soft);width:100%;color:var(--difficulty-color);border-radius:20%;place-items:center;display:grid}.difficulty-icon{fill:currentColor;width:67%;height:67%;overflow:visible}.difficulty-icon .sprout-stem,.difficulty-icon .trophy-lines{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.7px}.difficulty-copy{gap:calc(var(--home-width) * .012);min-width:0;line-height:1.15;display:grid}.difficulty-copy strong{color:var(--difficulty-color);font-size:calc(var(--home-width) * .057);white-space:nowrap}.difficulty-copy small{color:#3f5f8f;font-size:calc(var(--home-width) * .036);white-space:nowrap;font-weight:700}.difficulty-arrow{width:calc(var(--home-width) * .025);aspect-ratio:1;border-top:calc(var(--home-width) * .007) solid var(--difficulty-color);border-right:calc(var(--home-width) * .007) solid var(--difficulty-color);transform:rotate(45deg)}.result-actions{grid-template-columns:1fr;gap:.75rem;display:grid}.result-actions button,.secondary-action{width:100%;min-height:48px}.primary-action{color:#fff;background:#2f68d8}[role=status]{text-align:center;background:#fff3cf;border-radius:.75rem;margin:0;padding:.75rem}.game-page{isolation:isolate;background:radial-gradient(circle at 50% 30%,#fffffffa 0 20%,#f9fcffcc 46%,#0000 70%),linear-gradient(#f7faff 0%,#f1f6ff 72%,#e8f1ff 100%);grid-template-rows:64px 108px max-content 48px;align-content:start;gap:14px;width:100%;max-width:430px;min-height:100dvh;padding:12px clamp(18px,6.15vw,24px) 18px;display:grid;position:relative;overflow-x:hidden}.game-toolbar,.game-progress-card,.card-grid,.game-moves{z-index:1;position:relative}.game-background{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.game-background:before,.game-background:after{content:"";background:radial-gradient(55% 100% at 15% 100%,#caddffb8 0 68%,#0000 69%),radial-gradient(56% 100% at 72% 100%,#d7e5ffc2 0 68%,#0000 69%);border-radius:50% 50% 0 0;height:24%;position:absolute;bottom:-7%;left:-20%;right:-20%}.game-background:after{opacity:.7;bottom:-13%;transform:scaleX(-1)}.game-toolbar{justify-content:space-between;align-items:center;display:flex}.game-back-button{background:0 0;border-radius:50%;width:44px;min-width:44px;min-height:44px;padding:0;position:relative}.game-back-button span:before,.game-back-button span:after{content:"";transform-origin:0;background:#0b347f;border-radius:999px;height:3px;position:absolute;top:50%;left:12px}.game-back-button span:before{width:20px;transform:translateY(-50%)}.game-back-button span:after{width:11px;transform:translateY(-50%)rotate(45deg);box-shadow:0 0 #0000}.game-back-button:before{content:"";transform-origin:0;background:#0b347f;border-radius:999px;width:11px;height:3px;position:absolute;top:50%;left:12px;transform:translateY(-50%)rotate(-45deg)}.game-timer{color:#0b347f;font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin:0;font-size:16px;font-weight:800;display:inline-flex}.timer-icon{border:2px solid;border-radius:50%;width:16px;height:16px;display:inline-block;position:relative}.timer-icon:before{content:"";background:currentColor;border-radius:2px 2px 0 0;width:5px;height:3px;position:absolute;top:-5px;left:4px}.timer-icon:after{content:"";transform-origin:bottom;background:currentColor;border-radius:999px;width:2px;height:5px;position:absolute;top:3px;left:6px;transform:rotate(-18deg)}.game-progress-card{background:#fffffff5;border:1px solid #dae6f9c2;border-radius:14px;place-items:center;width:min(61.5vw,264px);min-height:108px;margin-inline:auto;padding:16px 24px;display:grid;box-shadow:0 8px 22px #2a579c24}.game-progress-card strong{color:#0b4ab8;font-size:28px;line-height:1}.game-progress-card>span{color:#24477e;font-size:14px;font-weight:700}.game-progress-track{background:#dfe5ef;border-radius:999px;width:100%;height:9px;overflow:hidden}.game-progress-track>span{border-radius:inherit;background:#13b967;height:100%;transition:width .24s;display:block}.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-content:center;gap:clamp(8px,2.56vw,10px);width:100%;min-height:0;display:grid}.card-grid[data-card-count="12"]{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid[data-card-count="30"]{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(5px,1.8vw,7px)}.memory-card{aspect-ratio:1.08;perspective:800px;overflow-wrap:anywhere;background:0 0;width:100%;min-width:0;min-height:0;padding:0;font-size:clamp(.7rem,3.35vw,.96rem);line-height:1.1;display:block;position:relative;overflow:visible}.memory-card:disabled{opacity:1}.memory-card-inner{border-radius:inherit;transform-style:preserve-3d;will-change:transform;transition:transform .36s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.memory-card-face{overflow-wrap:anywhere;backface-visibility:hidden;border:1px solid #dce8fa;border-radius:8px;place-items:center;padding:.25rem;display:grid;position:absolute;inset:0;overflow:hidden;box-shadow:0 4px 12px #2a579c1f}.memory-card-back{color:#7da7ef;background:#f3f7ff}.memory-card-front{color:#0f58bd;background:#fff;font-weight:800;transform:rotateY(180deg)}.memory-card.is-english .memory-card-front{color:#0aa76a}.card-language-mark{width:30px;height:24px;position:relative}.card-language-mark-en,.card-language-mark-zh{border-radius:4px;place-items:center;width:21px;height:21px;font-size:11px;font-weight:800;line-height:1;display:grid;position:absolute}.card-language-mark-en{z-index:1;color:#fff;background:linear-gradient(145deg,#81adf6,#5b8fe8);top:0;left:0;transform:rotate(-8deg)}.card-language-mark-zh{z-index:2;color:#3f78d8;background:#fff;border:1px solid #e2eafb;bottom:0;right:0;transform:rotate(8deg);box-shadow:0 2px 5px #31599b2e}.memory-card.is-face-up .memory-card-inner{transform:rotateY(180deg)}.memory-card.is-face-up{animation:.36s cubic-bezier(.4,0,.2,1) card-reveal}.memory-card.is-matched{animation:.36s cubic-bezier(.4,0,.2,1) card-match}.memory-card.is-matched .memory-card-front{background:#fff;border-color:#59d692}.memory-card.is-mismatch{animation:.24s ease-in-out card-mismatch}.memory-card.is-mismatch .memory-card-front{border-color:#ff7c86}.memory-card.is-matched:after,.memory-card.is-mismatch:after{z-index:3;color:#fff;pointer-events:none;border:2px solid #fff;border-radius:50%;place-items:center;width:19px;height:19px;font-size:12px;font-weight:900;line-height:1;display:grid;position:absolute;top:-7px;right:-7px}.memory-card.is-matched:after{content:"✓";background:#13b967}.memory-card.is-mismatch:after{content:"×";background:#f05d68}.game-moves{color:#123a7c;text-align:center;background:#e7f0ff;border-radius:999px;place-self:center;min-width:116px;margin:0;padding:7px 18px;font-size:16px;font-weight:800}@keyframes card-reveal{0%{transform:scale(.98)}to{transform:scale(1)}}@keyframes card-match{50%{transform:scale(1.04)}}@keyframes card-mismatch{25%{transform:translate(-2px)}75%{transform:translate(2px)}}.secondary-action{flex:none}.result-page,.review-page{isolation:isolate;color:#12366f;background:radial-gradient(circle at 50% 24%,#fffffffa 0 20%,#f9fcffd1 47%,#0000 72%),linear-gradient(#f5f9ff 0%,#eef5ff 68%,#e6f0ff 100%);width:100%;max-width:430px;min-height:100dvh;position:relative;overflow-x:hidden;box-shadow:0 0 28px #305b9e14}.result-background,.review-background{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.result-background:before,.result-background:after,.review-wave:before,.review-wave:after{content:"";transform-origin:50% 100%;background:#caddff61;border-radius:50% 50% 0 0;width:144%;height:150px;position:absolute;bottom:-76px;left:-22%;transform:rotate(-5deg)}.result-background:after,.review-wave:after{background:#e2edffc2;width:142%;height:168px;bottom:-94px;left:-16%;transform:rotate(6deg)}.result-celebration,.result-stat-card,.result-actions,.review-toolbar,.review-count,.review-word-list,.review-actions{z-index:1;position:relative}.result-page{flex-direction:column;justify-content:flex-start;gap:0;padding:44px clamp(18px,5.65vw,22px) 22px;display:flex}.result-celebration{color:#2568dd;text-align:center;justify-items:center;display:grid}.result-celebration svg{filter:drop-shadow(0 8px 10px #366ac624);background:#ffffffe0;border:1px solid #759ddc29;border-radius:50%;width:104px;height:104px;margin:0 0 10px;padding:12px;display:block;overflow:visible;box-shadow:0 8px 20px #2b579c1a}.result-celebration svg>:first-child{color:#285ee5}.result-celebration svg>:nth-child(2){color:#7447ef}.result-celebration svg>:nth-child(3){color:#ffc247}.result-celebration svg>:nth-child(4){color:#29b98a}.result-celebration svg>:nth-child(5){color:#ff7187}.result-celebration svg>:nth-child(6){color:#9b62ef}.result-celebration h1{color:#0f3777;letter-spacing:.01em;margin:0;font-size:32px;font-weight:900;line-height:1.2}.result-celebration p{color:#355987;margin:5px 0 0;font-size:15px;font-weight:600;line-height:1.45}.result-stat-card{background:#fffffff7;border:1px solid #759ddc29;border-radius:17px;margin-top:22px;overflow:hidden;box-shadow:0 10px 24px #2b579c1c}.result-stat-row{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;height:60px;padding:0 16px;display:grid;position:relative}.result-stat-row:not(:last-child):after{content:"";background:#e7eef9;height:1px;position:absolute;bottom:0;left:16px;right:16px}.result-stat-row>svg{border-radius:50%;width:32px;height:32px;padding:7px}.result-stat-row--green>svg{color:#1aaa6b;background:#dcf6e9}.result-stat-row--blue>svg{color:#2678ec;background:#dfecff}.result-stat-row--purple>svg{color:#6d4ce9;background:#eee7ff}.result-stat-row--gold>svg{color:#f3ad22;background:#fff1d2}.result-stat-label{color:#173e7b;min-width:0;font-size:16px;font-weight:800;line-height:1.2}.result-stat-value{color:#123d86;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:23px;font-weight:900;line-height:1}.result-stat-row--gold .result-stat-value{font-size:17px}.result-stat-value.is-highlighted{color:#087a49}.result-actions{grid-template-columns:1fr;gap:12px;margin-top:auto;padding-top:clamp(24px,4dvh,34px);display:grid}.review-actions{gap:12px;margin-top:14px;display:grid}.result-page .action-button,.review-page .action-button{border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:9px;width:100%;height:54px;min-height:54px;padding:0 18px;font-size:16px;font-weight:800;line-height:1;display:flex}.result-page .action-button svg,.review-page .action-button svg{flex:none;width:20px;height:20px}.result-page .action-button--primary,.review-page .action-button--primary{color:#fff;background:linear-gradient(135deg,#2f74ea 0%,#1456d3 100%);border-color:#2461d3;box-shadow:0 8px 18px #1c59cc3b}.result-page .action-button--secondary,.review-page .action-button--secondary{color:#164582;background:#fffffff7;border-color:#6b95d62e;box-shadow:0 6px 15px #3058971a}.review-page{flex-direction:column;justify-content:flex-start;padding:12px clamp(16px,5.15vw,20px) 16px;display:flex}.review-wave{position:absolute;inset:0}.review-toolbar{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-height:44px;display:grid}.review-back-button{color:#173b72;background:0 0;border-radius:12px;grid-column:1;place-items:center;width:44px;height:44px;min-height:44px;padding:10px;display:grid}.review-back-button svg{width:24px;height:24px}.review-toolbar h1{color:#112f65;text-align:center;text-overflow:ellipsis;white-space:nowrap;grid-column:2;margin:0;font-size:20px;font-weight:900;line-height:1.2;overflow:hidden}.review-count{color:#536b8d;text-align:center;margin:8px 0 10px;font-size:14px;font-weight:600;line-height:20px}.review-word-list{gap:8px;min-width:0;display:grid}@media (height<=700px){.game-page{min-height:700px;overflow-y:auto}}@media (prefers-reduced-motion:reduce){.home-card,.memory-card-inner{transition-duration:1ms}.memory-card.is-face-up,.memory-card.is-matched,.memory-card.is-mismatch{animation:none}}.library-select-page{color:#173c78;background:radial-gradient(circle at 50% 18%,#fffffff5,#0000 42%),linear-gradient(#f2f8ff 0%,#e6f1ff 100%);min-height:100dvh;padding:1rem;overflow:hidden auto}.library-select-header{grid-template-columns:52px minmax(0,1fr) 52px;align-items:start;gap:.5rem;padding:.5rem .25rem 1.2rem;display:grid}.library-back-button{color:#1f5da8;background:#ffffffb3;border-radius:16px;place-items:center;width:52px;height:52px;min-height:52px;padding:0;font-size:2.2rem;font-weight:500;line-height:1;display:grid;box-shadow:0 6px 16px #417bc524}.library-select-heading{text-align:center;min-width:0}.library-select-heading h1{color:#0e3974;text-overflow:ellipsis;white-space:nowrap;margin:.2rem 0 .45rem;font-size:clamp(1.8rem,8vw,2.1rem);line-height:1.15;overflow:hidden}.library-select-heading p{color:#315e9c;margin:0;font-size:1rem;line-height:1.35}.library-list{gap:.9rem;min-width:0;display:grid}.library-card{background:#fffffff5;border-radius:20px;grid-template-columns:72px minmax(0,1fr) 112px;align-items:center;gap:.85rem;min-width:0;min-height:112px;padding:.8rem .85rem;animation:.45s both library-card-enter;display:grid;box-shadow:0 8px 18px #407dc729}.library-card:nth-child(2){animation-delay:50ms}.library-card:nth-child(3){animation-delay:.1s}.library-card:nth-child(4){animation-delay:.15s}.library-card:nth-child(5){animation-delay:.2s}.library-icon{background:#edf7ff;border-radius:17px;place-items:center;width:64px;height:76px;display:grid}.library-icon-blue{color:#55a8f5}.library-icon-green{color:#48c395}.library-icon-yellow{color:#f4bb48}.library-icon-red{color:#ef765f}.library-icon-purple{color:#9175db}.library-book-icon{width:52px;height:64px;overflow:visible}.library-book-icon path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.library-book-icon path:first-of-type{fill:currentColor;stroke-width:2px}.library-book-icon text{fill:#fff;font-size:.82rem;font-weight:700}.library-copy{min-width:0}.library-copy h2{color:#123b78;text-overflow:ellipsis;white-space:nowrap;margin:0 0 .45rem;font-size:1.05rem;line-height:1.2;overflow:hidden}.library-copy p{overflow-wrap:anywhere;color:#7a91b5;margin:0;font-size:.84rem;line-height:1.35}.library-action{justify-items:end;gap:.55rem;min-width:0;display:grid}.library-action strong{color:#6a82a8;white-space:nowrap;font-size:.95rem;font-weight:700;line-height:1.2}.library-use-button{color:#438ff0;white-space:nowrap;background:#fff;border:2px solid #bfddff;border-radius:999px;width:106px;min-height:44px;padding:0 .7rem;font-size:.9rem;line-height:1}.library-use-button.is-current{color:#fff;background:#4b96f6;border-color:#4b96f6;box-shadow:0 6px 12px #4b96f640}.library-tip{color:#6d8dbb;text-align:center;margin:1.2rem 0 .4rem;font-size:.84rem;line-height:1.5}@keyframes library-card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=370px){.library-card{grid-template-columns:60px minmax(0,1fr) 94px;gap:.55rem;padding-inline:.65rem}.library-icon{width:56px;height:68px}.library-book-icon{width:46px;height:58px}.library-use-button{width:88px;min-height:44px;font-size:.82rem}.library-copy h2{font-size:.95rem}.library-copy p{font-size:.76rem}}@media (prefers-reduced-motion:reduce){.library-card{animation-duration:1ms}}
