:root{--h3d-red:#ff4c3b;--h3d-red-deep:#d93425;--h3d-orange:#ff8e2d;--h3d-red-soft:#fff0ee;--h3d-orange-soft:#fff4e8;--h3d-ink:#222;--h3d-line:#e8e1de;--h3d-paper:#fffdf8;--h3d-grid:#f1c9c2;--h3d-extrude:#e9d8d3;--h3d-extrude-2:#d9c3bd;--h3d-ok:#1fa463;--h3d-bad:#e5484d;--h3d-spring:cubic-bezier(.34, 1.56, .64, 1);--h3d-ease:cubic-bezier(.22, 1, .36, 1);--h3d-han:"Noto Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif}.himi-confetti-canvas{z-index:9999;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}@keyframes h3d-shimmer{to{background-position:-220% 0}}@keyframes h3d-bob{50%{transform:translateY(-3px)rotate(-4deg)}}@keyframes h3d-pop{40%{transform:scale(1.12)}}@keyframes h3d-shake{25%{transform:translate(-6px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}@keyframes h3d-ripple{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}@keyframes h3d-float{50%{transform:translateY(-7px)}}@keyframes h3d-shadow{50%{opacity:.55;transform:translate(-50%)scaleX(.78)}}@keyframes h3d-rise{0%{opacity:0;transform:translate3d(0,18px,-60px)rotateX(8deg)}to{opacity:1;transform:none}}@keyframes h3d-deal{0%{opacity:0;transform:translate3d(60px,-10px,80px)rotateY(-28deg)rotate(6deg)}}@keyframes h3d-option{0%{opacity:0;transform:translateY(18px)rotateX(-25deg)}}@keyframes h3d-star{0%{transform:scale(0)rotate(-40deg)}to{transform:scale(1)rotate(0)}}@keyframes h3d-spin{to{transform:rotate(1turn)}}@keyframes h3d-bubble{0%{opacity:0;transform:scale(.6)translateY(10px)}}.hsk-3d .hsk-guided-main{perspective:1400px}.hsk-3d .hsk-guided-main>section{animation:h3d-rise .6s var(--h3d-ease) backwards}.hsk-3d .hsk-3d-tube{background:#f4f1f0;border-radius:999px;gap:3px;height:14px;padding:2px;display:flex;position:relative;overflow:visible;box-shadow:inset 0 2px 4px #783c2824,inset 0 -1px #fff}.hsk-3d .hsk-3d-tube-seg{background:#e8e1de8c;border-radius:999px;flex-basis:0;min-width:6px;display:block;position:relative;overflow:hidden}.hsk-3d .hsk-3d-tube-seg>span{border-radius:inherit;background:linear-gradient(180deg, #ff7a5c, var(--h3d-red) 55%, var(--h3d-red-deep));transition:width .7s var(--h3d-ease);display:block;position:absolute;inset:0 auto 0 0;box-shadow:inset 0 2px #ffffff73}.hsk-3d .hsk-3d-tube-seg>span:after{content:"";background:linear-gradient(100deg,#0000 30%,#ffffff8c 50%,#0000 70%) 0 0/220% 100%;animation:2.6s linear infinite h3d-shimmer;position:absolute;inset:0}.hsk-3d .hsk-3d-runner{pointer-events:none;width:34px;height:34px;transition:left .7s var(--h3d-ease);margin:-20px 0 0 -17px;position:absolute;top:50%}.hsk-3d .hsk-3d-runner img{object-fit:contain;filter:drop-shadow(0 3px 4px #783c284d);width:100%;height:100%;animation:1.6s ease-in-out infinite h3d-bob}.hsk-3d .hsk-guided-sections button{transition:transform .25s var(--h3d-spring), background .25s, color .25s, box-shadow .25s}.hsk-3d .hsk-guided-sections button.is-active{background:linear-gradient(180deg, #ff6a4f, var(--h3d-red));transform:translateY(-2px);box-shadow:0 10px 18px -8px #ff4c3bcc,inset 0 -3px #00000024,inset 0 2px #ffffff59}.hsk-3d .hsk-3d-section-done{color:var(--h3d-ok)}.hsk-3d .hsk-guided-footer button{transition:transform .18s var(--h3d-ease), box-shadow .18s var(--h3d-ease)}.hsk-3d .hsk-guided-footer button.is-primary{background:linear-gradient(180deg, #ff6a4f, var(--h3d-red));box-shadow:0 5px 0 var(--h3d-red-deep), 0 12px 22px -10px #ff4c3bcc, inset 0 2px 0 #ffffff4d}.hsk-3d .hsk-guided-footer button.is-primary:hover{transform:translateY(-1px)}.hsk-3d .hsk-guided-footer button.is-primary:active{box-shadow:0 1px 0 var(--h3d-red-deep), 0 4px 10px -6px #ff4c3bcc, inset 0 2px 0 #ffffff4d;transform:translateY(4px)}.hsk-3d .hsk-3d-speak{position:relative}.hsk-3d .hsk-3d-speak.is-playing:before,.hsk-3d .hsk-3d-speak.is-playing:after{content:"";border:2px solid var(--h3d-red);pointer-events:none;animation:h3d-ripple 1.1s var(--h3d-ease) 2;border-radius:50%;position:absolute;inset:0}.hsk-3d .hsk-3d-speak.is-playing:after{animation-delay:.35s}.hsk-3d .hsk-guided-audio{background:radial-gradient(circle at 35% 30%, #ff9a6b, var(--h3d-red) 60%, var(--h3d-red-deep));box-shadow:0 6px 0 var(--h3d-red-deep), 0 16px 26px -10px #ff4c3bcc, inset 0 3px 2px #ffffff59;transition:transform .18s var(--h3d-ease), box-shadow .18s}.hsk-3d .hsk-guided-audio:hover{background:radial-gradient(circle at 35% 30%, #ff9a6b, var(--h3d-red) 60%, var(--h3d-red-deep));transform:translateY(-1px)}.hsk-3d .hsk-guided-audio:active{box-shadow:0 1px 0 var(--h3d-red-deep), 0 6px 12px -8px #ff4c3bcc, inset 0 3px 2px #ffffff59;transform:translateY(5px)}.hsk-3d .hsk-3d-word-nav{scrollbar-width:none;gap:8px;width:fit-content;max-width:100%;margin:12px auto 0;padding:4px 2px 8px;display:flex;overflow-x:auto}.hsk-3d .hsk-3d-word-nav::-webkit-scrollbar{display:none}.hsk-3d .hsk-3d-word-nav button{cursor:pointer;color:#8a807c;border:1px solid var(--h3d-line);height:50px;box-shadow:0 4px 0 var(--h3d-line);font:700 20px var(--h3d-han);transition:transform .3s var(--h3d-spring), box-shadow .3s, color .2s;background:#fff;border-radius:12px;flex:0 0 44px;place-items:center;display:grid}.hsk-3d .hsk-3d-word-nav button:hover{transform:translateY(-3px)}.hsk-3d .hsk-3d-word-nav button.is-seen{color:var(--h3d-ink)}.hsk-3d .hsk-3d-word-nav button.is-on{color:#fff;background:linear-gradient(180deg, #ff6a4f, var(--h3d-red));box-shadow:0 4px 0 var(--h3d-red-deep), 0 12px 18px -8px #ff4c3bb3;border-color:#0000;transform:translateY(-4px)scale(1.06)}.hsk-3d .hsk-3d-deck{perspective:1200px;min-height:430px;position:relative}.hsk-3d .hsk-3d-deck-ghost{transform-origin:50% 100%;background:#fff;border:1px solid #dce6f0;border-radius:28px;position:absolute;inset:0}.hsk-3d .hsk-3d-deck-ghost.is-far{opacity:.45;transform:translate3d(0,22px,-120px)rotate(-2deg)}.hsk-3d .hsk-3d-deck-ghost.is-near{opacity:.75;transform:translate3d(0,12px,-60px)rotate(2.2deg)}.hsk-3d .hsk-3d-card{transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(calc(var(--ry,0deg) + var(--flip,0deg)));transition:transform .8s var(--h3d-spring);animation:h3d-deal .7s var(--h3d-spring) backwards;position:absolute;inset:0}.hsk-3d .hsk-3d-card.is-flipped{--flip:180deg}.hsk-3d .hsk-3d-face{cursor:pointer;backface-visibility:hidden;position:absolute;inset:0;overflow:hidden}.hsk-3d .hsk-3d-face:after{content:"";pointer-events:none;background:radial-gradient(380px circle at var(--mx,50%) var(--my,30%), #ffffff8c, transparent 45%);mix-blend-mode:soft-light;position:absolute;inset:0}.hsk-3d .hsk-3d-card .hsk-guided-character-card{min-height:0;box-shadow:inset 0 1px #fff,0 18px 40px -22px #783c2859,0 3px 8px -4px #783c281f}.hsk-3d .hsk-3d-card .hsk-guided-word-glyph>strong{text-shadow:1px 1px 0 var(--h3d-extrude), 2px 2px 0 var(--h3d-extrude), 3px 3px 0 var(--h3d-extrude), 4px 4px 0 var(--h3d-extrude-2), 5px 5px 0 var(--h3d-extrude-2), 6px 6px 0 var(--h3d-extrude-2), 10px 16px 22px #783c2838;transform:translateZ(40px)}.hsk-3d .hsk-3d-flip-hint{cursor:pointer;color:#8a807c;white-space:nowrap;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 12px;font-size:12px;font-weight:650;display:inline-flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.hsk-3d .hsk-3d-flip-hint:hover{color:var(--h3d-red);background:var(--h3d-red-soft)}.hsk-3d .hsk-3d-face.is-back{color:#fff;background:linear-gradient(160deg, var(--h3d-red), var(--h3d-orange));border-radius:28px;flex-direction:column;gap:16px;padding:28px;display:flex;transform:rotateY(180deg)}.hsk-3d .hsk-3d-face.is-back .hsk-3d-flip-hint{color:#fff}.hsk-3d .hsk-3d-face.is-back .hsk-3d-flip-hint:hover{background:#ffffff2e}.hsk-3d .hsk-3d-back-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.hsk-3d .hsk-3d-back-head strong{font:900 68px/1 var(--h3d-han);text-shadow:3px 4px #00000024}.hsk-3d .hsk-3d-back-head span{background:#fff3;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800}.hsk-3d .hsk-3d-back-grid{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.hsk-3d .hsk-3d-back-grid>div{background:#ffffff29;border-radius:14px;min-width:0;padding:10px 12px;box-shadow:inset 0 1px #ffffff40}.hsk-3d .hsk-3d-back-grid>div.is-wide{grid-column:1/-1}.hsk-3d .hsk-3d-back-grid dt{letter-spacing:.06em;text-transform:uppercase;opacity:.88;font-size:11px;font-weight:800}.hsk-3d .hsk-3d-back-grid dd{gap:2px;margin:2px 0 0;font-size:15px;font-weight:650;line-height:1.4;display:grid}.hsk-3d .hsk-3d-back-grid dd b{font-family:var(--h3d-han);font-size:18px}.hsk-3d .hsk-3d-meaning-box{background:linear-gradient(135deg, var(--h3d-red-soft), var(--h3d-orange-soft));border-radius:21px;margin:6px 0 4px;padding:24px;position:relative;overflow:hidden}.hsk-3d .hsk-3d-meaning-box h2{z-index:1;margin:0;position:relative}.hsk-3d .hsk-3d-meaning-box>span{color:var(--h3d-red);opacity:.07;font:900 150px/1 var(--h3d-han);pointer-events:none;position:absolute;bottom:-36px;right:-8px}.hsk-3d .hsk-guided-meaning-card,.hsk-3d .hsk-guided-example-card{box-shadow:inset 0 1px #fff,0 18px 40px -22px #783c284d,0 3px 8px -4px #783c281a}.hsk-3d .hsk-guided-save-word{transition:transform .25s var(--h3d-spring), background .2s, border-color .2s}.hsk-3d .hsk-guided-save-word.is-saved{animation:h3d-pop .45s var(--h3d-spring)}.hsk-3d .hsk-guided-collocations span{transition:transform .25s var(--h3d-spring), box-shadow .25s}.hsk-3d .hsk-guided-collocations span:hover{transform:translateY(-2px);box-shadow:0 6px 12px -8px #783c2859}.hsk-3d .hsk-guided-writing-picker{perspective:600px}.hsk-3d .hsk-guided-writing-picker button{box-shadow:0 5px 0 var(--h3d-line), 0 10px 16px -10px #783c2840;transition:transform .35s var(--h3d-spring), box-shadow .3s;position:relative}.hsk-3d .hsk-guided-writing-picker button:hover{transform:translateY(-4px)rotateX(10deg)}.hsk-3d .hsk-guided-writing-picker button[aria-pressed=true]{background:linear-gradient(180deg, #ff6a4f, var(--h3d-red));box-shadow:0 5px 0 var(--h3d-red-deep), 0 16px 22px -10px #ff4c3bcc;border-color:#0000;transform:translateY(-6px)scale(1.04)}.hsk-3d .hsk-guided-writing-picker button.is-done:after,.himi-writing-studio.is-3d .himi-writing-lesson-characters button.completed:after{content:"";background:var(--h3d-ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center / 12px no-repeat;border-radius:50%;width:20px;height:20px;position:absolute;top:-6px;right:-6px;box-shadow:0 3px 6px -2px #1fa46399}.hsk-3d .hsk-guided-writing-modes{position:relative}.hsk-3d .hsk-guided-writing-modes button{transition:background .25s,color .25s,box-shadow .25s}.hsk-3d .hsk-guided-writing-modes button[aria-pressed=true]{background:linear-gradient(180deg, #ff6a4f, var(--h3d-red));box-shadow:0 6px 12px -6px #ff4c3bcc,inset 0 2px #ffffff4d}.hsk-3d-paper-wrap{perspective:1000px;width:min(360px,100%)}.hsk-3d .hsk-3d-paper{background:var(--h3d-paper);width:100%;transform:rotateX(var(--paper-tilt,0deg));transition:transform .6s var(--h3d-ease), box-shadow .4s;border:0;border-radius:22px;overflow:visible;box-shadow:inset 0 2px #fff,0 0 0 1px #eadfd6,0 26px 40px -20px #783c2873,0 8px 0 -2px #eee2d8,0 14px 0 -5px #e2d4c8}.hsk-3d .hsk-3d-paper.is-watch{--paper-tilt:10deg}.hsk-3d .hsk-3d-paper-wrap:hover .hsk-3d-paper{--paper-tilt:0deg}.hsk-3d .hsk-3d-paper>span{border-color:var(--h3d-grid);background:0 0;border-style:dashed;border-width:0}.hsk-3d .hsk-3d-paper>span:first-child{border-top-width:1px;height:0}.hsk-3d .hsk-3d-paper>span:nth-child(2){border-left-width:1px;width:0}.hsk-3d .hsk-3d-paper>span.is-diagonal{opacity:.7;border-top-width:1px;width:142%;height:0;top:50%;left:-21%;transform:rotate(45deg)}.hsk-3d .hsk-3d-paper>span.is-diagonal.is-reverse{transform:rotate(-45deg)}.hsk-3d .hsk-3d-paper>div{border-radius:22px;overflow:hidden}.hsk-3d .hsk-3d-paper.is-ok-flash,.himi-writing-studio.is-3d .himi-writing-board-shell.is-ok-flash{box-shadow:0 0 0 4px #1fa46380,0 26px 40px -20px #783c2873}.hsk-3d .hsk-3d-paper.is-bad-flash,.himi-writing-studio.is-3d .himi-writing-board-shell.is-bad-flash{animation:.4s h3d-shake;box-shadow:0 0 0 4px #e5484d73,0 26px 40px -20px #783c2873}.hsk-3d-stamp{z-index:4;width:54px;height:54px;color:var(--h3d-red);border:2.5px solid var(--h3d-red);font:900 13px/1.1 var(--h3d-han);text-align:center;opacity:0;transition:transform .5s var(--h3d-spring), opacity .3s;pointer-events:none;border-radius:10px;place-items:center;display:grid;position:absolute;bottom:12px;right:12px;transform:rotate(-12deg)scale(0)}.hsk-3d-stamp.is-on{opacity:.9;transform:rotate(-12deg)scale(1)}.himi-stroke-dots{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:14px;display:flex}.himi-stroke-dots i{color:#8a807c;border:1px solid var(--h3d-line);width:26px;height:26px;transition:all .35s var(--h3d-spring);background:#fbf7f5;border-radius:9px;place-items:center;font:700 11px/1 Inter,system-ui,sans-serif;display:grid}.himi-stroke-dots i.is-on{color:#fff;background:var(--h3d-orange);border-color:#0000;transform:translateY(-2px);box-shadow:0 4px 8px -3px #ff8e2db3}.himi-stroke-dots i.is-ok{color:#fff;background:var(--h3d-ok);border-color:#0000}.hsk-3d .hsk-guided-writing-layout>aside{gap:8px;box-shadow:inset 0 1px #fff,0 18px 40px -22px #783c284d}.hsk-3d .hsk-guided-writing-layout>aside>strong{font-family:var(--h3d-han);text-shadow:1px 1px 0 var(--h3d-extrude), 2px 2px 0 var(--h3d-extrude), 3px 3px 0 var(--h3d-extrude-2), 4px 4px 0 var(--h3d-extrude-2), 8px 12px 16px #783c2833;font-weight:900;animation:4s ease-in-out infinite h3d-float}.hsk-3d .hsk-guided-writing-layout>aside div button{border-radius:50%}.hsk-3d-coach,.himi-writing-studio.is-3d .himi-3d-coach{text-align:left;align-items:flex-end;gap:8px;width:100%;margin-top:8px;display:flex}.hsk-3d-coach img,.himi-3d-coach img{object-fit:contain;filter:drop-shadow(0 6px 6px #783c2838);flex:none;width:58px;height:58px}.hsk-3d-coach p,.himi-3d-coach p{background:var(--h3d-orange-soft);animation:h3d-bubble .5s var(--h3d-spring) both;transform-origin:0 100%;border-radius:16px 16px 16px 4px;padding:10px 12px;line-height:1.45;color:var(--h3d-ink)!important;margin:0!important;font-size:13px!important}.hsk-3d .hsk-3d-streak{vertical-align:top;color:#b25e14;background:var(--h3d-orange-soft);min-height:35px;animation:h3d-pop .5s var(--h3d-spring);border-radius:999px;align-items:center;gap:6px;margin-left:8px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.hsk-3d .hsk-3d-streak svg{color:var(--h3d-orange)}.hsk-3d .hsk-3d-pedestal{padding-bottom:22px;position:relative}.hsk-3d .hsk-3d-pedestal>span{text-shadow:1px 1px 0 var(--h3d-extrude), 2px 2px 0 var(--h3d-extrude), 3px 3px 0 var(--h3d-extrude-2), 4px 4px 0 var(--h3d-extrude-2), 5px 5px 0 var(--h3d-extrude-2);animation:3.6s ease-in-out infinite h3d-float;display:inline-block}.hsk-3d .hsk-3d-pedestal:after{content:"";background:radial-gradient(closest-side,#783c2842,#0000);border-radius:50%;width:140px;height:16px;animation:3.6s ease-in-out infinite h3d-shadow;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.hsk-3d .hsk-guided-practice-options{perspective:900px}.hsk-3d .hsk-guided-practice-options button{animation:h3d-option .52s var(--h3d-spring) backwards;animation-delay:calc(var(--option-index,0) * 60ms);transition:transform .18s var(--h3d-ease), box-shadow .18s, border-color .2s, background .2s, opacity .2s;box-shadow:0 5px #e3e8ee,0 12px 20px -14px #313f5b4d}.hsk-3d .hsk-guided-practice-options button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px #e3e8ee,0 16px 24px -14px #313f5b59}.hsk-3d .hsk-guided-practice-options button:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px #e3e8ee}.hsk-3d .hsk-guided-practice-options button.is-correct{animation:h3d-pop .45s var(--h3d-spring);box-shadow:0 5px #4cc08f}.hsk-3d .hsk-guided-practice-options button.is-correct .hsk-guided-practice-letter{color:#fff;background:var(--h3d-ok)}.hsk-3d .hsk-guided-practice-options button.is-wrong{animation:.4s h3d-shake;box-shadow:0 5px #f09a96}.hsk-3d .hsk-guided-practice-options button.is-wrong .hsk-guided-practice-letter{color:#fff;background:var(--h3d-bad)}.hsk-3d .hsk-guided-practice-options button.is-dim{opacity:.5}.hsk-3d .hsk-guided-practice-feedback{text-align:left;animation:h3d-bubble .5s var(--h3d-spring) both;align-items:center;gap:14px;margin-top:22px;padding:12px 18px;font-size:13px;font-weight:600;display:flex}.hsk-3d .hsk-guided-practice-feedback img{object-fit:contain;filter:drop-shadow(0 6px 6px #783c2840);flex:none;width:56px;height:56px;margin-top:-26px}.hsk-3d .hsk-guided-practice-feedback strong{font-size:17px;display:block}.hsk-3d .hsk-3d-trophy{place-items:center;display:grid;position:relative}.hsk-3d .hsk-3d-rays{background:repeating-conic-gradient(from 0deg, #ff8e2d29 0 10deg, transparent 10deg 24deg);border-radius:50%;animation:18s linear infinite h3d-spin;position:absolute;inset:-40px;-webkit-mask:radial-gradient(closest-side,#000 40%,#0000);mask:radial-gradient(closest-side,#000 40%,#0000)}.hsk-3d .hsk-3d-trophy img{filter:drop-shadow(0 14px 14px #783c2838);animation:3s ease-in-out infinite h3d-float;position:relative}.hsk-3d .hsk-3d-stars{align-items:flex-end;gap:10px;margin:-4px 0 10px;display:flex}.hsk-3d .hsk-3d-stars svg{color:#e8e1de;fill:currentColor;stroke:none;width:44px;height:44px;animation:h3d-star .6s var(--h3d-spring) forwards;animation-delay:calc(.3s + var(--star-index,0) * .22s);transform:scale(0)}.hsk-3d .hsk-3d-stars svg:nth-child(2){width:56px;height:56px}.hsk-3d .hsk-3d-stars svg.is-on{color:#ffb02e;filter:drop-shadow(0 4px #d9771a)}.hsk-3d .hsk-guided-completion-stats article{box-shadow:0 5px #ffe2dd,0 12px 20px -14px #ff4c3b4d}.hsk-3d .hsk-guided-completion nav a{transition:transform .18s var(--h3d-ease), box-shadow .18s}.hsk-3d .hsk-guided-completion nav a:last-child{box-shadow:0 5px 0 var(--h3d-red-deep), 0 14px 26px #ff443d33}.hsk-3d .hsk-guided-completion nav a:last-child:active{box-shadow:0 1px 0 var(--h3d-red-deep);transform:translateY(4px)}@media (width<=820px){.hsk-3d .hsk-3d-deck{min-height:360px}.hsk-3d .hsk-3d-back-head strong{font-size:52px}}@media (width<=620px){.hsk-3d .hsk-3d-deck{min-height:320px}.hsk-3d .hsk-3d-word-nav button{flex-basis:40px;height:46px;font-size:18px}.hsk-3d .hsk-3d-face.is-back{gap:12px;padding:20px}.hsk-3d .hsk-3d-back-grid dd{font-size:13px}.hsk-3d .hsk-3d-streak{margin:8px 0 0}.hsk-3d .hsk-3d-stars svg{width:34px;height:34px}.hsk-3d .hsk-3d-stars svg:nth-child(2){width:44px;height:44px}}.himi-writing-studio.is-3d .himi-writing-lesson-progress{position:relative;overflow:visible;box-shadow:inset 0 2px 4px #783c2824,inset 0 -1px #fff}.himi-writing-studio.is-3d .himi-writing-lesson-progress>span:first-child{background:linear-gradient(180deg, #ff7a5c, var(--h3d-red) 55%, var(--h3d-red-deep));transition:width .7s var(--h3d-ease);position:relative;overflow:hidden;box-shadow:inset 0 2px #ffffff73}.himi-writing-studio.is-3d .himi-writing-lesson-progress>span:first-child:after{content:"";background:linear-gradient(100deg,#0000 30%,#ffffff8c 50%,#0000 70%) 0 0/220% 100%;animation:2.6s linear infinite h3d-shimmer;position:absolute;inset:0}.himi-writing-studio.is-3d .himi-writing-lesson-progress>.himi-3d-runner{width:34px;height:34px;box-shadow:none;pointer-events:none;transition:left .7s var(--h3d-ease);background:0 0;border-radius:0;margin:-20px 0 0 -17px;display:block;position:absolute;top:50%}.himi-writing-studio.is-3d .himi-writing-lesson-progress>.himi-3d-runner:after{display:none}.himi-writing-studio.is-3d .himi-writing-board-shell.grid-mi .himi-writing-grid-line.is-diagonal-one,.himi-writing-studio.is-3d .himi-writing-board-shell.grid-mi .himi-writing-grid-line.is-diagonal-two{opacity:.7;display:block}.himi-writing-studio.is-3d .himi-writing-grid-line{border-color:var(--h3d-grid);border-style:dashed}.himi-writing-studio.is-3d .himi-3d-runner img{object-fit:contain;filter:drop-shadow(0 3px 4px #783c284d);width:100%;height:100%;animation:1.6s ease-in-out infinite h3d-bob}.himi-writing-studio.is-3d .himi-writing-lesson-characters{perspective:600px}.himi-writing-studio.is-3d .himi-writing-lesson-characters button{box-shadow:0 5px 0 var(--h3d-line), 0 10px 16px -10px #783c2840;transition:transform .35s var(--h3d-spring), box-shadow .3s;position:relative}.himi-writing-studio.is-3d .himi-writing-lesson-characters button:hover{transform:translateY(-4px)rotateX(10deg)}.himi-writing-studio.is-3d .himi-writing-lesson-characters button.active{background:linear-gradient(180deg, #ff6a4f, var(--h3d-red));box-shadow:0 5px 0 var(--h3d-red-deep), 0 16px 22px -10px #ff4c3bcc;border-color:#0000;transform:translateY(-6px)scale(1.04)}.himi-writing-studio.is-3d .himi-writing-mode-tabs button{transition:transform .25s var(--h3d-spring), box-shadow .25s, background .25s, color .25s}.himi-writing-studio.is-3d .himi-writing-mode-tabs button.active{transform:translateY(-1px);box-shadow:0 6px 12px -6px #ff4c3b99,inset 0 2px #ffffff4d}.himi-writing-studio.is-3d .himi-3d-paper-wrap{perspective:1100px;justify-items:center;width:100%;display:grid}.himi-writing-studio.is-3d .himi-writing-board-shell{background:var(--h3d-paper);transform:rotateX(var(--paper-tilt,0deg));transition:transform .6s var(--h3d-ease), box-shadow .4s;box-shadow:inset 0 2px #fff,0 0 0 1px #eadfd6,0 26px 40px -20px #783c2873,0 8px 0 -2px #eee2d8,0 14px 0 -5px #e2d4c8}.himi-writing-studio.is-3d .himi-writing-board-shell.is-watch{--paper-tilt:9deg}.himi-writing-studio.is-3d .himi-3d-paper-wrap:hover .himi-writing-board-shell{--paper-tilt:0deg}.himi-writing-studio.is-3d .himi-writing-board-shell.grid-tian .himi-writing-grid-line[class*=is-diagonal],.himi-writing-studio.is-3d .himi-writing-board-shell.grid-none .himi-writing-grid-line{display:none}.himi-writing-studio.is-3d .himi-3d-tools{color:#8a807c;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 16px;margin-top:12px;font-size:12px;font-weight:600;display:flex}.himi-writing-studio.is-3d .himi-3d-tools label,.himi-writing-studio.is-3d .himi-3d-tools>div{align-items:center;gap:8px;display:flex}.himi-writing-studio.is-3d .himi-3d-grid-toggle{border:1px solid var(--h3d-line);background:#fff;border-radius:11px;display:inline-flex;overflow:hidden}.himi-writing-studio.is-3d .himi-3d-grid-toggle button{cursor:pointer;color:#5d5552;min-height:32px;font:700 12px/1 var(--h3d-han);background:0 0;border:0;padding:0 10px}.himi-writing-studio.is-3d .himi-3d-grid-toggle button[aria-pressed=true]{color:var(--h3d-red);background:var(--h3d-red-soft)}.himi-writing-studio.is-3d .himi-3d-tools input[type=range]{width:110px;accent-color:var(--h3d-red)}.himi-writing-studio.is-3d .himi-writing-board-actions button{transition:transform .18s var(--h3d-ease), box-shadow .18s}.himi-writing-studio.is-3d .himi-writing-board-actions button.primary{box-shadow:0 5px 0 var(--h3d-red-deep), 0 12px 22px -10px #ff4c3bcc, inset 0 2px 0 #ffffff4d}.himi-writing-studio.is-3d .himi-writing-board-actions button.primary:active{box-shadow:0 1px 0 var(--h3d-red-deep);transform:translateY(4px)}.himi-writing-studio.is-3d .himi-writing-character-card>strong{font-family:var(--h3d-han);text-shadow:1px 1px 0 var(--h3d-extrude), 2px 2px 0 var(--h3d-extrude), 3px 3px 0 var(--h3d-extrude-2), 4px 4px 0 var(--h3d-extrude-2), 8px 12px 16px #783c2833;font-weight:900;animation:4s ease-in-out infinite h3d-float}.himi-writing-studio.is-3d .himi-3d-section-label{color:var(--h3d-red);letter-spacing:.08em;text-transform:uppercase;margin-top:6px;font-size:11px;font-weight:800}.himi-stroke-order{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;width:100%;display:grid}.himi-stroke-order.is-loading{background:linear-gradient(90deg,#f4efec,#fbf7f5,#f4efec) 0 0/200% 100%;border-radius:10px;min-height:44px;animation:1.4s linear infinite h3d-shimmer}.himi-stroke-order svg{aspect-ratio:1;background:var(--h3d-paper);border:1px solid #eadfd6;border-radius:10px;width:100%}.himi-score-ring{width:120px;height:120px;margin:4px auto 0;position:relative}.himi-score-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.himi-score-ring circle{fill:none;stroke-width:12px;stroke-linecap:round}.himi-score-ring .is-track{stroke:#f4efec}.himi-score-ring .is-value{stroke:url(#himi-score-gradient);transition:stroke-dashoffset 1.2s var(--h3d-ease)}.himi-score-ring>span{text-align:center;align-content:center;place-items:center;display:grid;position:absolute;inset:0}.himi-score-ring strong{color:var(--h3d-ink);font-variant-numeric:tabular-nums;font-size:30px;font-weight:800;line-height:1}.himi-score-ring small{color:#8a807c;font-size:11px;font-weight:600}.himi-writing-studio.is-3d .himi-writing-lesson-footer .is-next{box-shadow:0 5px 0 var(--h3d-red-deep), 0 12px 22px -10px #ff4c3bcc;transition:transform .18s var(--h3d-ease), box-shadow .18s}.himi-writing-studio.is-3d .himi-writing-lesson-footer .is-next:active{box-shadow:0 1px 0 var(--h3d-red-deep);transform:translateY(4px)}@media (prefers-reduced-motion:reduce){.hsk-3d *,.hsk-3d :before,.hsk-3d :after,.himi-writing-studio.is-3d *,.himi-writing-studio.is-3d :before,.himi-writing-studio.is-3d :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hsk-3d .hsk-3d-paper.is-watch,.himi-writing-studio.is-3d .himi-writing-board-shell.is-watch{--paper-tilt:0deg}}.hsk-3d .hsk-guided-writing-layout .hsk-3d-coach{text-align:center;flex-direction:column;align-items:center}.hsk-3d .hsk-guided-writing-layout .hsk-3d-coach p{transform-origin:50% 0;border-radius:16px}.hsk-3d .hsk-3d-word-nav button{border-radius:15px;flex-basis:56px;height:62px;font-size:26px}.hsk-3d .hsk-3d-flip-hint{min-height:40px;padding:0 16px;font-size:15px}.hsk-3d .hsk-3d-back-head span{padding:8px 16px;font-size:15px}.hsk-3d .hsk-3d-back-grid{gap:12px}.hsk-3d .hsk-3d-back-grid>div{border-radius:18px;padding:14px 16px}.hsk-3d .hsk-3d-back-grid dt{font-size:13px}.hsk-3d .hsk-3d-back-grid dd{font-size:19px}.hsk-3d .hsk-3d-back-grid dd b{font-size:24px}.hsk-3d .himi-stroke-dots{gap:8px}.hsk-3d .himi-stroke-dots i{border-radius:11px;width:34px;height:34px;font-size:14px}.hsk-3d .hsk-guided-writing-layout .hsk-3d-coach p{font-size:15px!important}.hsk-3d .hsk-3d-coach img{width:72px;height:72px}.hsk-3d .hsk-3d-streak{min-height:35px;font-size:14px}.hsk-3d .hsk-guided-practice-feedback{font-size:16px}.hsk-3d .hsk-guided-practice-feedback strong{font-size:21px}.hsk-3d .hsk-guided-practice-feedback img{width:72px;height:72px}.hsk-3d .hsk-3d-stamp{width:66px;height:66px;font-size:16px}.himi-writing-studio.is-3d .himi-3d-coach{text-align:center;flex-direction:column;align-self:stretch;align-items:center}.himi-writing-studio.is-3d .himi-3d-coach p{transform-origin:50% 0;border-radius:16px}.himi-writing-studio.is-3d .himi-writing-character-card{gap:6px}.himi-writing-studio.is-3d .himi-writing-lesson-characters{padding-block:10px 8px}.himi-writing-studio.is-3d.himi-writing-lesson-session .himi-writing-board-shell{width:min(100%,clamp(220px,36vw,340px),max(180px,100dvh - 580px))}.himi-writing-studio.is-3d .himi-stroke-dots{gap:5px;margin-top:10px}.himi-writing-studio.is-3d .himi-stroke-dots i{border-radius:7px;width:22px;height:22px;font-size:10px}.himi-writing-studio.is-3d .himi-3d-tools{margin-top:8px}.himi-writing-studio.is-3d .himi-stroke-order{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:4px}.himi-writing-studio.is-3d .himi-stroke-order svg{border-radius:8px}.himi-writing-studio.is-3d .himi-score-ring{width:92px;height:92px}.himi-writing-studio.is-3d .himi-score-ring strong{font-size:24px}.himi-writing-studio.is-3d .himi-score-ring small{font-size:10px}.himi-writing-studio.is-3d .himi-3d-coach img{width:48px;height:48px}.himi-writing-studio.is-3d .himi-writing-character-card{scrollbar-width:thin;overflow-y:auto}@media (height<=860px){.himi-writing-studio.is-3d .himi-3d-coach img{display:none}}@media (width<=620px){.hsk-3d .hsk-3d-word-nav button{flex-basis:46px;height:52px;font-size:21px}}
