.archive-selectors.hidden{display:none!important}
.archive-collection-list{display:grid;gap:10px}
.archive-collection-card{padding:14px 16px;border:1px solid rgba(43,94,153,.55);border-radius:10px;background:rgba(5,23,53,.72)}
.archive-collection-card:hover{border-color:#6b61df;background:rgba(13,39,83,.82)}
.archive-collection-card h3{margin:0 0 6px;color:#eef3ff;font-size:15px;line-height:1.45}
.archive-collection-card p{margin:5px 0;color:#a9badb;font-size:11px;line-height:1.55}
.archive-collection-card .collection-pinyin{color:#70eaff;font-style:italic}
.archive-collection-card .collection-meaning{color:#dbe5f7}
.archive-collection-card details{margin-top:10px;padding-top:8px;border-top:1px solid rgba(43,94,153,.3);color:#b8c8e5;font-size:10px}
.archive-collection-card summary{cursor:pointer;color:#d5a5ff;font-weight:700}
.archive-collection-card details p{color:#dbe5f7}
#riddleOverview{display:none}
#screenVocab[data-archive-section="riddles"] .archive-title{display:none}
#screenVocab[data-archive-section="riddles"] #riddleOverview{display:flex;align-items:center;gap:16px;min-height:145px;padding:14px;border:1px solid #009dff;border-radius:20px;background:linear-gradient(90deg,#00132c 20%,#00132c77),url('../assets/dictionary-night-scene-v1.webp') center/cover;box-shadow:0 0 14px #008dff33;margin-bottom:12px}
#riddleOverview h1{font-size:24px;color:#fff;margin:0 0 8px;line-height:1.15}
#riddleOverview p{font-size:13px;line-height:1.5;color:#51efff;margin:0}
#riddleOverview>b{margin-left:auto;padding:12px;border:1px solid #198fff;border-radius:18px;background:#001535ba;font-size:25px;color:white;box-shadow:0 0 10px #189bff}
#riddleOverview small{display:block;font-size:12px}
.riddle-bulb{flex:0 0 90px;height:105px;background:url('../assets/riddles-reference-v1.webp') 5% 8.6%/680% auto;border-radius:15px}
#screenVocab[data-archive-section="riddles"] .archive-command,#screenVocab[data-archive-section="riddles"] #archiveCollectionPane{background:transparent;border:0;box-shadow:none;padding:0}
#screenVocab[data-archive-section="riddles"] .archive-pane-head{display:none}
#screenVocab[data-archive-section="riddles"] .archive-selectors{display:grid;gap:10px;margin-bottom:14px}
#screenVocab[data-archive-section="riddles"] .archive-selectors>div{display:flex;align-items:center;gap:7px;padding:10px;border:1px solid #0099ec;border-radius:16px;background:#00152b}
#screenVocab[data-archive-section="riddles"] .archive-selectors small{min-width:62px;color:#bbafff;font-size:11px}
#screenVocab[data-archive-section="riddles"] .archive-selectors button{flex:1;min-width:0;height:35px;border:1px solid #168eef;border-radius:12px;background:#031932;color:#ccc3ff;padding:3px 6px;font-size:12px}
#screenVocab[data-archive-section="riddles"] .archive-selectors button.active{background:linear-gradient(#0087ff,#005bff);color:white;box-shadow:0 0 9px #00cfff}
.archive-favorites-toggle{white-space:nowrap}
.collection-star{float:right;background:transparent;border:0;color:#64a8ff;font-size:29px;cursor:pointer;line-height:1;padding:0 4px}
.collection-star[aria-pressed="true"]{color:#ffce43}
.riddle-card{display:flex;gap:14px;padding:8px;border:1px solid #0094e6;border-radius:18px;background:linear-gradient(110deg,#031a34,#000e20);overflow:hidden}
.riddle-art{flex:0 0 110px;min-height:134px;border-radius:13px;background-image:url('../assets/riddles-reference-v1.webp');background-size:470.5% auto;background-position-x:3.8%;align-self:stretch}
.riddle-art.art-0{background-position-y:36.9%}.riddle-art.art-1{background-position-y:53.5%}.riddle-art.art-2{background-position-y:69.8%}.riddle-art.art-3{background-position-y:86.2%}.riddle-art.art-4{background-position-y:100%}
.riddle-content{flex:1;min-width:0;padding:5px 8px 3px 0}
.riddle-card h3{font-size:18px;color:#fff;line-height:1.45;padding-right:27px}
.riddle-card .collection-pinyin{color:#00eaff;font-size:13px;font-style:normal}
.riddle-card .collection-meaning{font-size:13px;color:#cccee7}
.riddle-speak{background:transparent;border:0;color:#23baff;font-size:19px;cursor:pointer}
.riddle-card details{border-color:#008ae1;font-size:13px;margin-top:8px}
.riddle-card summary{list-style:none;display:inline-block;border:1px solid #009eff;background:linear-gradient(#00326a,#001531);color:#00eaff;padding:7px 14px;border-radius:13px}
.riddle-card summary::-webkit-details-marker{display:none}
#grammarFavoritesPanel{margin:12px 0}#grammarFavoritesPanel button:not(.collection-star){background:transparent;border:0;color:#dcf3ff;text-align:left;cursor:pointer}
@media(max-width:600px){
 #screenVocab[data-archive-section="riddles"] #riddleOverview{gap:9px;min-height:118px;padding:10px}
 #riddleOverview h1{font-size:20px}#riddleOverview p{font-size:11px}#riddleOverview>b{font-size:20px;padding:7px}
 .riddle-bulb{flex-basis:64px;height:82px}#riddleOverview small{font-size:10px}
 #screenVocab[data-archive-section="riddles"] .archive-selectors small{min-width:47px;font-size:9px}
 #screenVocab[data-archive-section="riddles"] .archive-selectors>div{gap:4px;padding:7px}
 #screenVocab[data-archive-section="riddles"] .archive-selectors button{font-size:10px;padding:2px;height:33px}
 .riddle-card{gap:9px;padding:6px}.riddle-art{flex-basis:65px;min-height:125px;background-size:600% auto}.riddle-card h3{font-size:15px}.riddle-card .collection-pinyin,.riddle-card .collection-meaning{font-size:11px}.riddle-content{padding-right:1px}.riddle-card summary{font-size:11px;padding:6px 9px}
}


#screenVocab .archive-tabs, #screenGrammar .archive-tabs { display: none !important; }

.riddle-card img.riddle-art{background:none!important;object-fit:contain;width:82px;flex:0 0 82px;height:115px;min-height:0;align-self:center;border-radius:12px}.riddle-speak{display:inline-flex;align-items:center;vertical-align:middle;padding:3px;line-height:1;border-radius:6px}.riddle-speak:hover{background:#056ab344}.riddle-speak:focus-visible{outline:2px solid #23baff}.riddle-bulb{background-image:url('../assets/riddle-question.webp');background-size:contain;background-position:center;background-repeat:no-repeat}@media(max-width:600px){.riddle-card img.riddle-art{width:62px;flex-basis:62px;height:94px}}
#mRoot #screenVocab[data-archive-section="riddles"] .archive-command,#mRoot #screenVocab[data-archive-section="riddles"] #archiveCollectionPane{padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
#mRoot #screenVocab[data-archive-section="riddles"]{display:flex;flex-direction:column;gap:10px;padding-bottom:16px!important}
#mRoot #screenVocab[data-archive-section="riddles"].hidden{display:none!important}
#mRoot #screenVocab[data-archive-section="riddles"] #riddleOverview{margin:0 0 10px!important}
#mRoot #screenVocab[data-archive-section="riddles"] .archive-selectors{margin:0!important;gap:8px!important}
#mRoot #screenVocab[data-archive-section="riddles"] .archive-selectors>div{margin:0!important}
#mRoot #screenVocab[data-archive-section="riddles"] .archive-pane-head{display:none!important}
#mRoot #screenVocab[data-archive-section="riddles"] .archive-collection-list{gap:10px!important}
#mRoot .riddle-card{display:grid!important;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px!important;padding:10px!important;margin:0!important;border-radius:18px!important;min-height:174px;box-sizing:border-box;background:linear-gradient(110deg,#001a32,#000d1d)!important;border:1px solid #009deb!important}
#mRoot .riddle-card img.riddle-art{width:76px!important;height:102px!important;min-height:0!important;object-fit:cover!important;object-position:center!important;display:block;border-radius:12px!important;background:none!important}
#mRoot .riddle-content{position:relative;display:flex;flex-direction:column;align-self:stretch;padding:0!important;min-width:0;gap:4px}
#mRoot .riddle-card h3{font-size:15px!important;line-height:1.4!important;margin:0!important;padding:0 24px 0 0!important;min-height:42px}
#mRoot .riddle-card .collection-star{position:absolute;top:0;right:0;font-size:25px!important;padding:0!important;float:none}
#mRoot .riddle-card .collection-pinyin{font-size:11px!important;line-height:1.45!important;font-weight:400!important;margin:0!important;color:#00e2ef!important;min-height:32px}
#mRoot .riddle-card .collection-meaning{font-size:11px!important;line-height:1.45!important;font-weight:400!important;margin:0!important;color:#c9d2e7!important;min-height:32px}
#mRoot .riddle-card details{margin:0!important;margin-top:auto!important;padding-top:6px!important;border-top:1px solid #087bb0!important;line-height:1.4!important}
#mRoot .riddle-card summary{font-size:11px!important;line-height:1.3!important;padding:6px 10px!important;min-height:28px;border-radius:12px!important;color:#00e9f6!important;font-weight:600!important}
#mRoot .riddle-speak{font-size:16px!important;padding:2px!important;vertical-align:middle}
#mRoot .riddle-speak svg{width:18px;height:18px}
#mRoot .riddle-bulb{background-image:url('../assets/riddle-question-v2.webp')!important;background-size:cover!important;width:66px;flex-basis:66px!important;height:80px!important;border-radius:12px}
@media(min-width:600px){#mRoot .riddle-card{grid-template-columns:105px minmax(0,1fr);min-height:178px}#mRoot .riddle-card img.riddle-art{width:105px!important;height:132px!important}#mRoot .riddle-card h3{font-size:19px!important}#mRoot .riddle-card .collection-pinyin,#mRoot .riddle-card .collection-meaning{font-size:14px!important}}
@media(max-width:360px){#mRoot .riddle-card{grid-template-columns:58px minmax(0,1fr);gap:8px!important;min-height:174px}#mRoot .riddle-card img.riddle-art{width:58px!important;height:84px!important}#mRoot .riddle-card h3{font-size:14px!important}}


#mRoot .riddle-bulb { background-image: url('../assets/riddles-bulb-v1.webp') !important; background-size: contain !important; background-repeat: no-repeat !important; background-position: center !important; width: 76px !important; height: 86px !important; flex: 0 0 76px !important; border-radius: 0 !important; }
#mRoot #screenVocab[data-archive-section="words"] .archive-selectors{display:grid!important;gap:8px!important;margin:10px 0 0!important;padding:0!important}
#mRoot #screenVocab[data-archive-section="words"] .archive-selectors>div{display:flex!important;align-items:center!important;gap:5px!important;padding:8px!important;margin:0!important;border:1px solid #009deb!important;border-radius:16px!important;background:#00152b!important}
#mRoot #screenVocab[data-archive-section="words"] .archive-selectors small{flex:0 0 58px!important;min-width:0!important;color:#bab0ef!important;font-size:10px!important;font-weight:500!important}
#mRoot #screenVocab[data-archive-section="words"] .archive-selectors button{flex:1!important;min-width:0!important;height:40px!important;padding:4px!important;border:1px solid #009dec!important;border-radius:14px!important;background:#031932!important;color:#ccc3ed!important;font-size:12px!important;font-weight:500!important;box-shadow:none!important;cursor:pointer}
#mRoot #screenVocab[data-archive-section="words"] .archive-selectors button.active{background:linear-gradient(#078fff,#006cff)!important;color:#fff!important;border-color:#039fff!important;box-shadow:0 0 11px #00cfff88!important;font-weight:700!important}
#mRoot #screenVocab[data-archive-section="words"] .archive-selectors button:focus-visible{outline:2px solid #78efff;outline-offset:2px}
#mRoot #screenVocab[data-archive-section="words"] .archive-favorites-toggle{font-size:11px!important;white-space:nowrap}
@media(max-width:360px){#mRoot #screenVocab[data-archive-section="words"] .archive-selectors small{flex-basis:46px!important;font-size:9px!important}#mRoot #screenVocab[data-archive-section="words"] .archive-selectors button{font-size:10px!important;height:36px!important}#mRoot #screenVocab[data-archive-section="words"] .archive-favorites-toggle{font-size:9px!important}}


#archiveWordsPages{display:none!important}#mRoot #screenVocab .dictionary-hanzi{display:flex!important;align-items:center;justify-content:center;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;font-size:min(30px,calc(66px / var(--hanzi-count,1)))!important;line-height:1.2!important;padding:4px!important;overflow:hidden!important}#archiveWordsList .dictionary-card{content-visibility:auto;contain-intrinsic-size:auto 86px}@media(max-width:600px){#mRoot #screenVocab .dictionary-hanzi{font-size:min(26px,calc(43px / var(--hanzi-count,1)))!important;}}

@media(max-width:600px){#mRoot #screenVocab .dictionary-hanzi{font-size:min(26px,calc(40px / var(--hanzi-count,1)))!important;}}

#archiveWordCounts{border:1px solid #008de0;background:#00162e;border-radius:15px;margin:10px 0;padding:12px}#archiveWordCounts.hidden{display:none!important}#archiveWordCounts h3{font-size:13px;color:#a8d5ff;margin:0 0 10px}.dictionary-count-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.dictionary-count-grid button{display:flex;flex-direction:column;gap:5px;border:1px solid #168ad0;border-radius:10px;background:#031b37;color:#c6d1ed;padding:9px 4px;font-size:11px;cursor:pointer}.dictionary-count-grid button b{color:#6cddff;font-size:13px}.dictionary-count-grid button.active{background:#006bdb;border-color:#00bbff;color:white}.dictionary-count-grid button.active b{color:white}
#archiveStrokeModal{z-index:10000;background:#000b1abf;backdrop-filter:blur(8px);padding:16px;box-sizing:border-box}
#archiveStrokeModal .archive-stroke-modal-card{width:min(920px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;padding:0 18px 18px;border:2px solid #188dff;border-radius:26px;background:linear-gradient(#031632dd,#031632f2),url('../assets/dictionary-night-scene-v1.webp') center/cover;box-shadow:0 0 28px #00bdff35;text-align:left;box-sizing:border-box}
#archiveStrokeModal .modal-header{position:relative;display:flex;align-items:flex-start;justify-content:center;text-align:center;padding:24px 30px 22px;margin:0 -18px 16px;background:linear-gradient(#00102b55,#00102b99),url('../assets/dictionary-night-scene-v1.webp') center/cover;border-bottom:1px solid #147edc}
#archiveStrokeModal .modal-header h3{color:#f4f6ff;font-size:32px}#archiveStrokeModal .modal-header p{color:#b5caf0;font-size:16px}
#archiveStrokeModal .archive-stroke-close{position:absolute;right:15px;top:15px;color:white;font-size:25px;width:34px;height:34px}
#archiveStrokeModal .archive-stroke-writers{display:block;padding:0;overflow:visible}
.stroke-character-tabs{display:flex;gap:7px;margin-bottom:12px;flex-wrap:wrap}.stroke-character-tabs:has(button:only-child){display:none}
.stroke-character-tabs button{background:#001b36;color:#bee0ff;border:1px solid #008eef;border-radius:10px;min-width:42px;height:38px;font-size:22px;cursor:pointer}.stroke-character-tabs button.active{background:#006fff;box-shadow:0 0 10px #00cfff}
.stroke-main-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}.stroke-character-panel{border:2px solid #3adeff;border-radius:22px;background:#001b3b;overflow:hidden;box-shadow:0 0 12px #02c7ff55}
.stroke-large-canvas{width:100%;display:flex;justify-content:center;position:relative;background:linear-gradient(90deg,transparent calc(50% - 1px),#7195c966 50%,transparent calc(50% + 1px)),linear-gradient(transparent calc(50% - 1px),#7195c966 50%,transparent calc(50% + 1px)),linear-gradient(#00193888,#00193888),url('../assets/dictionary-night-scene-v1.webp') center/cover}
.stroke-character-panel footer{display:flex;align-items:center;justify-content:center;gap:32px;padding:8px;border-top:1px solid #0b7199}.stroke-character-panel footer b{font-size:32px;color:white}
#archiveStrokeModal button{cursor:pointer}#archiveStrokeModal button:focus-visible{outline:2px solid #91f7ff;outline-offset:3px}
.stroke-character-panel footer button,.stroke-info button,.stroke-example button{background:transparent;color:#13ddf5;border:0;display:inline-flex;align-items:center;justify-content:center;padding:4px}.stroke-character-panel footer button{width:42px;height:42px;border:1px solid #0ddfff;border-radius:50%;box-shadow:0 0 9px #00cfff44}
.stroke-main-layout aside{display:flex;flex-direction:column;gap:12px;min-width:0}.stroke-info,.stroke-example{border:1px solid #197ce5;background:#03182ddd;border-radius:16px;padding:16px}.stroke-info h3,.stroke-example h3,.stroke-order h3{color:#eff7ff;font-size:21px;margin:0 0 10px}
.stroke-info dl{margin:0}.stroke-info dl>div{display:grid;grid-template-columns:42% 1fr;gap:10px;padding:12px 0;border-top:1px solid #164777}.stroke-info dt{color:#abc6e7;font-size:14px}.stroke-info dd{margin:0;color:#ecf6ff;font-size:15px;display:flex;align-items:center;justify-content:space-between;gap:6px;overflow-wrap:anywhere}.stroke-info dl>div:first-child dd{color:#03dfe7}
.stroke-example{border-color:#8250ee;background:linear-gradient(#171040ba,#171040ca),url('../assets/dictionary-night-scene-v1.webp') center/cover}.stroke-example h3{color:#bd81ff;display:flex;justify-content:space-between}.stroke-example b{font-size:24px;color:white}.stroke-example p{color:#bad0f5;line-height:1.45;font-size:14px;margin:7px 0 0}
.stroke-order{padding:16px;margin-top:16px;border:1px solid #1666a2;border-radius:18px;background:#01142ccc}.stroke-order h3{display:flex;justify-content:space-between;gap:10px}.stroke-order small{font-size:13px;color:#afc8e9;align-self:center;font-weight:400}
.stroke-steps{display:flex;gap:10px;overflow-x:auto;padding:3px 0 9px;scrollbar-width:thin;scrollbar-color:#008ccd #00142e}.stroke-step{position:relative;flex:0 0 84px;height:99px;background:#031a35;border:1px solid #197ccb;border-radius:10px;padding:14px 3px 3px}.stroke-step span{position:absolute;top:4px;left:5px;color:#66e7ff;border:1px solid #16aee2;border-radius:50%;width:18px;height:18px;font-size:11px;display:grid;place-items:center}.stroke-step svg{width:100%;height:100%}.stroke-step.active{border-color:#54f0ff;background:#06436b}
#archiveStrokeModal .archive-stroke-status{text-align:center;color:#b1caec;margin:14px 0;font-size:13px;min-height:18px}
#archiveStrokeModal .archive-stroke-actions{display:grid;grid-template-columns:2fr 1fr;gap:12px}#archiveStrokeModal .archive-stroke-actions button{height:55px;font-size:20px;border:1px solid #41d9ff;border-radius:16px;background:linear-gradient(110deg,#8944ff,#552dff,#00b2ff);box-shadow:0 0 12px #188dff44;color:white;padding:8px}#archiveStrokeModal .archive-stroke-actions button+button{background:#041b36}
@media(max-width:600px){#archiveStrokeModal{padding:9px}#archiveStrokeModal .archive-stroke-modal-card{max-height:calc(100dvh - 18px);padding:0 12px 12px;border-radius:19px}#archiveStrokeModal .modal-header{margin:0 -12px 12px;padding:21px 30px 18px}#archiveStrokeModal .modal-header h3{font-size:23px}#archiveStrokeModal .modal-header p{font-size:11px}.stroke-main-layout{grid-template-columns:1fr;gap:12px}.stroke-large-canvas{max-height:290px}.stroke-character-panel footer b{font-size:26px}.stroke-main-layout aside{display:grid;grid-template-columns:1fr;gap:10px}.stroke-info,.stroke-example{padding:12px}.stroke-info h3,.stroke-example h3,.stroke-order h3{font-size:17px}.stroke-info dl>div{padding:8px 0}.stroke-info dt,.stroke-info dd{font-size:12px}.stroke-example b{font-size:21px}.stroke-example p{font-size:12px}.stroke-order{padding:10px;margin-top:12px}.stroke-order small{font-size:10px}.stroke-step{flex-basis:65px;height:79px}#archiveStrokeModal .archive-stroke-actions button{font-size:14px;height:43px;border-radius:13px}#archiveStrokeModal .archive-stroke-status{font-size:11px}}

@media(max-width:600px){
 #archiveStrokeModal.open{display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
 #archiveStrokeModal .archive-stroke-modal-card{width:100%!important;height:calc(100dvh - 18px)!important;max-height:calc(100dvh - 18px)!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto auto;overflow:hidden!important;padding:0 10px 10px!important;gap:0}
 #archiveStrokeModal .modal-header{margin:0 -10px 8px!important;padding:16px 28px 12px!important;min-height:66px;box-sizing:border-box}
 #archiveStrokeModal .modal-header h3{font-size:22px!important}
 #archiveStrokeModal .modal-header p{font-size:11px!important;margin-top:3px!important}
 #archiveStrokeModal .archive-stroke-writers{overflow-y:auto!important;overflow-x:hidden!important;min-height:0!important;padding:0 2px 8px!important;scrollbar-width:thin;scrollbar-color:#168aff #00142e;overscroll-behavior:contain}
 #archiveStrokeModal .stroke-main-layout{display:flex!important;flex-direction:column!important;gap:10px!important}
 #archiveStrokeModal .stroke-character-panel{flex-shrink:0;border-radius:16px!important}
 #archiveStrokeModal .stroke-large-canvas{height:clamp(170px,32dvh,260px);max-height:260px!important;align-items:center!important}
 #archiveStrokeModal .stroke-large-canvas>svg{height:100%!important;width:auto!important;max-width:100%!important;aspect-ratio:1}
 #archiveStrokeModal .stroke-character-panel footer{padding:4px!important;gap:24px!important}
 #archiveStrokeModal .stroke-character-panel footer b{font-size:24px!important}
 #archiveStrokeModal .stroke-character-panel footer button{width:32px!important;height:32px!important}
 #archiveStrokeModal .stroke-info{padding:10px!important}
 #archiveStrokeModal .stroke-info dl{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
 #archiveStrokeModal .stroke-info dl>div{display:flex;flex-direction:column;gap:4px;padding:7px 0!important}
 #archiveStrokeModal .stroke-info dt{font-size:10px!important}#archiveStrokeModal .stroke-info dd{font-size:12px!important}
 #archiveStrokeModal .stroke-info h3,#archiveStrokeModal .stroke-example h3{font-size:15px!important;margin-bottom:6px!important}
 #archiveStrokeModal .stroke-order{margin-top:10px!important;padding:9px!important}
 #archiveStrokeModal .stroke-order h3{font-size:15px!important;margin-bottom:6px!important}
 #archiveStrokeModal .stroke-step{height:75px!important;flex-basis:62px!important}
 #archiveStrokeModal .archive-stroke-status{margin:7px 0!important;min-height:16px!important;font-size:10px!important}
 #archiveStrokeModal .archive-stroke-actions{gap:8px!important}
 #archiveStrokeModal .archive-stroke-actions button{height:42px!important;font-size:14px!important}
}
body:has(#archiveStrokeModal.open){overflow:hidden!important}
/* Compact reference composition: preserve the two-column arrangement on phones. */
@media(max-width:600px){
 #archiveStrokeModal .archive-stroke-modal-card{height:auto!important;max-height:calc(100dvh - 20px)!important;width:100%!important;display:block!important;padding:0 9px 10px!important;overflow:hidden!important;border-radius:18px!important}
 #archiveStrokeModal .modal-header{margin:0 -9px 9px!important;padding:16px 25px 13px!important;min-height:0!important}
 #archiveStrokeModal .modal-header h3{font-size:clamp(18px,5vw,23px)!important}
 #archiveStrokeModal .modal-header p{font-size:10px!important}
 #archiveStrokeModal .archive-stroke-close{top:9px!important;right:8px!important;font-size:20px!important;width:25px!important;height:25px!important}
 #archiveStrokeModal .archive-stroke-writers{overflow:visible!important;padding:0!important}
 #archiveStrokeModal .stroke-character-tabs{gap:5px!important;margin-bottom:7px!important}
 #archiveStrokeModal .stroke-character-tabs button{min-width:28px!important;height:27px!important;font-size:17px!important;border-radius:7px!important}
 #archiveStrokeModal .stroke-main-layout{display:grid!important;grid-template-columns:1.15fr 1fr!important;gap:8px!important;align-items:stretch!important}
 #archiveStrokeModal .stroke-character-panel{border-radius:13px!important;min-width:0!important}
 #archiveStrokeModal .stroke-large-canvas{height:clamp(150px,34dvh,235px)!important;max-height:none!important;align-items:center!important}
 #archiveStrokeModal .stroke-large-canvas>svg{width:100%!important;height:100%!important;max-width:100%!important}
 #archiveStrokeModal .stroke-character-panel footer{padding:4px!important;gap:18px!important}
 #archiveStrokeModal .stroke-character-panel footer b{font-size:21px!important}
 #archiveStrokeModal .stroke-character-panel footer button{width:27px!important;height:27px!important}
 #archiveStrokeModal .stroke-character-panel footer button svg{width:16px!important;height:16px!important}
 #archiveStrokeModal .stroke-main-layout aside{display:flex!important;flex-direction:column!important;gap:7px!important;min-width:0!important}
 #archiveStrokeModal .stroke-info,#archiveStrokeModal .stroke-example{padding:7px!important;border-radius:10px!important}
 #archiveStrokeModal .stroke-info h3,#archiveStrokeModal .stroke-example h3{font-size:12px!important;margin-bottom:5px!important;line-height:1.2!important}
 #archiveStrokeModal .stroke-info dl{display:block!important}
 #archiveStrokeModal .stroke-info dl>div{display:grid!important;grid-template-columns:44% minmax(0,1fr)!important;gap:5px!important;padding:6px 0!important}
 #archiveStrokeModal .stroke-info dt,#archiveStrokeModal .stroke-info dd{font-size:9px!important;line-height:1.3!important}
 #archiveStrokeModal .stroke-info button,#archiveStrokeModal .stroke-example button{padding:1px!important}
 #archiveStrokeModal .stroke-info button svg,#archiveStrokeModal .stroke-example button svg{width:13px!important;height:13px!important}
 #archiveStrokeModal .stroke-example b{font-size:15px!important;line-height:1.25!important}
 #archiveStrokeModal .stroke-example p{font-size:9px!important;line-height:1.35!important;margin-top:4px!important}
 #archiveStrokeModal .stroke-order{padding:8px!important;margin-top:9px!important;border-radius:12px!important}
 #archiveStrokeModal .stroke-order h3{font-size:12px!important;margin-bottom:6px!important}
 #archiveStrokeModal .stroke-order small{font-size:9px!important}
 #archiveStrokeModal .stroke-steps{gap:5px!important;padding:0!important;overflow-x:auto!important;scrollbar-width:none!important}
 #archiveStrokeModal .stroke-step{flex:0 0 40px!important;height:53px!important;border-radius:6px!important;padding:9px 2px 2px!important}
 #archiveStrokeModal .stroke-step span{width:12px!important;height:12px!important;font-size:8px!important;top:2px!important;left:3px!important}
 #archiveStrokeModal .archive-stroke-status{font-size:9px!important;line-height:1.3!important;margin:8px 0!important;min-height:0!important}
 #archiveStrokeModal .archive-stroke-actions{display:grid!important;grid-template-columns:2fr 1fr!important;gap:7px!important}
 #archiveStrokeModal .archive-stroke-actions button{height:36px!important;font-size:12px!important;padding:4px!important;border-radius:11px!important}
}
@media(max-width:600px) and (max-height:620px){
 #archiveStrokeModal .modal-header{padding-top:11px!important;padding-bottom:9px!important;margin-bottom:7px!important}
 #archiveStrokeModal .stroke-large-canvas{height:29dvh!important}
 #archiveStrokeModal .stroke-info dl>div{padding:4px 0!important}
 #archiveStrokeModal .stroke-step{height:46px!important;flex-basis:36px!important}
 #archiveStrokeModal .archive-stroke-status{margin:5px 0!important}
}
/* Visible horizontal thumb for the stroke sequence on every screen size. */
#archiveStrokeModal .stroke-steps{overflow-x:scroll!important;scrollbar-width:thin!important;scrollbar-color:#21c9ff #061c38!important;padding-bottom:7px!important}
#archiveStrokeModal .stroke-steps::-webkit-scrollbar{height:7px!important;display:block!important}
#archiveStrokeModal .stroke-steps::-webkit-scrollbar-track{background:#061c38;border-radius:8px;border:1px solid #124675}
#archiveStrokeModal .stroke-steps::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#167fff,#28dfff);border-radius:8px;border:1px solid #4adfff;min-width:28px}
#archiveStrokeModal .stroke-steps::-webkit-scrollbar-thumb:hover{background:#62eaff}
#idiomOverview,#idiomControls{display:none}
#screenVocab[data-archive-section="chengyu"] .archive-title,#screenVocab[data-archive-section="chengyu"] .archive-selectors,#screenVocab[data-archive-section="chengyu"] .archive-pane-head{display:none!important}
#screenVocab[data-archive-section="chengyu"] #idiomOverview{display:flex;align-items:center;position:relative;gap:14px;min-height:160px;border:1px solid #00bfff;border-radius:20px;padding:16px;background:linear-gradient(90deg,#00152eaa,#00152e33),url('../assets/dictionary-night-scene-v1.webp') center/cover;box-shadow:0 0 13px #00cfff22;box-sizing:border-box}
#idiomOverview img{width:90px;height:120px;object-fit:contain;flex-shrink:0}
#idiomOverview h1{color:#f6f8ff;margin:0 0 7px;font-size:28px;line-height:1.15}
#idiomOverview p{color:#bbccef;margin:0;font-size:14px;line-height:1.4}
#idiomOverview>b{position:absolute;right:15px;bottom:12px;padding:6px 12px;background:#001533c9;border:1px solid #0cb7ff;border-radius:13px;color:white;font-size:13px}
#screenVocab[data-archive-section="chengyu"] #idiomControls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:12px}
.idiom-search{display:flex;align-items:center;gap:9px;border:1px solid #009bf2;background:#00152e;border-radius:14px;padding:10px 12px;min-width:0}.idiom-search>span{color:#57deff;font-size:24px}.idiom-search input{width:100%;min-width:0;background:transparent;border:0;outline:none;color:#eff7ff;font-size:14px}.idiom-search input::placeholder{color:#98b8e2}
.idiom-favorites{border:1px solid #009bf2;border-radius:14px;background:#001b38;color:#edf3ff;padding:10px 14px;font-weight:700;cursor:pointer}.idiom-favorites.active{background:#006bff;box-shadow:0 0 10px #02cfff77}
#mRoot #screenVocab[data-archive-section="chengyu"] .archive-command,#mRoot #screenVocab[data-archive-section="chengyu"] #archiveCollectionPane{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;margin:0!important}
#mRoot #screenVocab[data-archive-section="chengyu"]{display:flex;flex-direction:column;gap:12px}#mRoot #screenVocab[data-archive-section="chengyu"].hidden{display:none!important}
#screenVocab .idiom-card{padding:16px!important;border:1px solid #00a4f8!important;border-radius:20px!important;background:linear-gradient(110deg,#001b38,#001124)!important;margin:0!important;box-sizing:border-box}
.idiom-card-top{display:flex;align-items:center;gap:12px}.idiom-card-top h3{font-size:29px!important;line-height:1.2!important;margin:0!important;color:#fff!important}.idiom-audio{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid #188fee;border-radius:50%;color:#92ceff;background:#003266;cursor:pointer;flex-shrink:0}.idiom-card-top .collection-star{margin-left:auto;float:none!important;font-size:30px!important;padding:0!important;flex-shrink:0}.idiom-open{background:transparent;color:#aed5ff;border:0;font-size:34px;line-height:1;cursor:pointer;padding:0 2px}
#screenVocab .idiom-card .collection-pinyin{color:#03e4ef!important;font-size:17px!important;font-style:italic!important;margin:8px 0 10px!important;line-height:1.3!important}
#screenVocab .idiom-card .collection-meaning,#screenVocab .idiom-card .idiom-literal{font-size:14px!important;color:#b8cdef!important;line-height:1.45!important;margin:5px 0 0!important;font-weight:400!important}.idiom-card .collection-meaning b{color:#f1f5ff}.idiom-card .idiom-literal b{color:#b6cef5}
@media(max-width:600px){#screenVocab[data-archive-section="chengyu"] #idiomOverview{min-height:126px;padding:12px;gap:9px;border-radius:17px}#idiomOverview img{width:62px;height:95px}#idiomOverview h1{font-size:20px}#idiomOverview p{font-size:10px;max-width:220px;padding-bottom:17px}#idiomOverview>b{font-size:10px;right:10px;bottom:9px;padding:4px 8px}#screenVocab[data-archive-section="chengyu"] #idiomControls{gap:7px;margin-top:10px}.idiom-search{padding:6px 9px;gap:6px}.idiom-search input{font-size:11px}.idiom-favorites{font-size:11px;padding:7px 9px}#screenVocab .idiom-card{padding:12px!important;border-radius:17px!important}.idiom-card-top{gap:9px}.idiom-card-top h3{font-size:24px!important}.idiom-audio{width:28px;height:28px}.idiom-audio svg{width:18px;height:18px}.idiom-card-top .collection-star{font-size:26px!important}.idiom-open{font-size:28px}#screenVocab .idiom-card .collection-pinyin{font-size:14px!important;margin:6px 0 8px!important}#screenVocab .idiom-card .collection-meaning,#screenVocab .idiom-card .idiom-literal{font-size:12px!important}.archive-collection-list:has(.idiom-card){gap:10px!important}}

#screenGrammar .archive-title,#grammarFavoritesPanel{display:none!important}
html[data-mobile] #mRoot[data-mpage="grammar"]::before{display:none!important}
html[data-mobile] #mRoot[data-mpage="grammar"] .m-host-wrap{padding:62px 12px 78px!important;background:#001025!important}
#mRoot #screenGrammar .neo-card{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
#mRoot #screenGrammar .archive-selectors{display:grid;gap:0;border:1px solid #047db7;border-radius:14px;overflow:hidden;margin:0 0 10px}
#mRoot #screenGrammar .archive-selectors>div{display:flex;align-items:center;gap:5px;padding:7px;background:#001a30;border-bottom:1px solid #06547a}
#mRoot #screenGrammar .archive-selectors small{flex:0 0 62px;color:#b8b1ea;font-size:10px;text-transform:uppercase}
#mRoot #screenGrammar .archive-selectors button{flex:1;min-width:0;height:31px;padding:3px;border:1px solid #048ecc;border-radius:20px;color:#b6c1e4;background:#00152b;font-size:10px;cursor:pointer}
#mRoot #screenGrammar .archive-selectors button.active{background:linear-gradient(#008bff,#0051ff);color:white;border-color:#00bbff;box-shadow:0 0 9px #008dff;font-weight:700}
.grammar-searchbar{display:grid;grid-template-columns:1fr 36px;gap:8px;margin:0 0 9px}.grammar-searchbar label{display:flex;align-items:center;gap:8px;padding:7px 9px;min-width:0;border:1px solid #008ecc;border-radius:9px;background:#00152b}.grammar-searchbar label span{font-size:22px;color:#c5d9ff}.grammar-searchbar input{width:100%;min-width:0;color:#cfe4ff;background:transparent;border:0;font-size:11px;outline:none}.grammar-searchbar input::placeholder{color:#9cadcf}.grammar-searchbar>button{border:1px solid #008ecc;background:#00152b;border-radius:9px;color:#c5d9ff;font-size:24px;cursor:pointer}
.grammar-reference-hero{position:relative;padding:12px;min-height:128px;box-sizing:border-box;border:1px solid #00aeff;border-radius:13px;background:linear-gradient(90deg,#001327 5%,#001327aa 55%,#00132711),url('../assets/dictionary-night-scene-v1.webp') center/cover;box-shadow:0 0 9px #00aaff44;margin-bottom:8px}
#grammarIdBadge{display:inline-block;color:#27e6ff;font-size:10px;border:1px solid #00a5c8;border-radius:20px;padding:3px 8px;margin-bottom:6px}
#grammarReferenceFavorite{position:absolute;right:8px;top:8px;width:29px;height:31px;border:1px solid #078ad0;border-radius:8px;background:#001438bb;color:#aac7ff;font-size:23px;cursor:pointer}#grammarReferenceFavorite[aria-pressed="true"]{color:#ffd34e}
#grammarTitle{color:white;font-size:21px;line-height:1.15;max-width:77%;margin:0 0 6px}
#grammarHeroSummary{font-size:11px;line-height:1.4;color:#bcc9ec;max-width:76%;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.grammar-reference-block{margin-bottom:7px;padding:9px 10px;border:1px solid #063e72;border-radius:12px;background:linear-gradient(120deg,#021a30,#031428);color:#c5d3ed}
.grammar-reference-block[hidden]{display:none!important}.grammar-reference-block h3{display:flex;align-items:center;gap:9px;font-size:12px;color:#e6ecff;margin:0 0 6px;line-height:1.2}.grammar-reference-block h3 i{font-style:normal;display:grid;place-items:center;width:21px;height:21px;border:1px solid #1493ff;border-radius:50%;background:linear-gradient(#007fff,#002acb);color:white;font-size:12px;flex-shrink:0}
#grammarExplanation{margin:0 0 0 30px;font-size:11px;line-height:1.4;color:#b7c6e7}
#grammarStructureText{margin-left:30px;padding:9px 7px;border:1px solid #8255ff;border-radius:9px;background:linear-gradient(90deg,#12183b,#281247,#091a30);text-align:center;color:#d0d6ff;font-size:11px;line-height:1.4;white-space:pre-wrap}
.grammar-example{display:flex;align-items:center;gap:9px;padding:6px 7px;border:1px solid #045181;border-radius:11px;background:#001528;margin:4px 0}.grammar-example>button{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border:1px solid #096bd0;border-radius:50%;background:linear-gradient(#063468,#001c3e);color:#9ecaff;cursor:pointer}.grammar-example>button svg{width:17px;height:17px}.grammar-example>div{flex:1;min-width:0}.grammar-example b{display:block;font-size:12px;color:white;font-weight:600}.grammar-example span{display:block;color:#ad87ed;font-size:10px;line-height:1.2}.grammar-example p{color:#a7c4e7;font-size:10px;line-height:1.2;margin:1px 0 0}.grammar-example .grammar-example-open{flex-basis:23px;width:23px;height:23px;font-size:21px}
#screenGrammar .nav-footer{display:flex;gap:8px;justify-content:space-between;margin:10px 0 0;padding:0;border:0}#screenGrammar .nav-footer button{flex:1;min-height:33px;font-size:11px;border:1px solid #007fda;border-radius:11px;background:#001933;color:#bfc6ea;padding:6px;cursor:pointer}#screenGrammar .nav-footer button:last-child{background:linear-gradient(#008dff,#005bff);color:white;box-shadow:0 0 9px #008dff77}
@media(min-width:600px){#screenGrammar{max-width:720px;margin:auto}.grammar-reference-hero{min-height:170px}#grammarTitle{font-size:28px}.grammar-reference-block{padding:14px}.grammar-reference-block h3{font-size:16px}#grammarExplanation,#grammarStructureText{font-size:14px}.grammar-example b{font-size:17px}.grammar-example span,.grammar-example p{font-size:13px}}

/* Revised Grammar reference: no search and three bottom actions. */
#screenGrammar .grammar-searchbar{display:none!important}
#mRoot #screenGrammar .archive-selectors{border-radius:15px!important;margin-bottom:12px!important}
#mRoot #screenGrammar .archive-selectors>div{padding:8px!important;gap:6px!important}
#mRoot #screenGrammar .archive-selectors button{height:34px!important;font-size:11px!important}
#mRoot #screenGrammar .archive-selectors small{flex-basis:64px!important;font-size:11px!important}
#mRoot #screenGrammar .archive-favorites-toggle{white-space:nowrap;font-size:10px!important}
#screenGrammar .grammar-reference-hero{min-height:145px!important;padding:12px!important;border-radius:15px!important;background:linear-gradient(90deg,#001327ee,#00132788 55%,#00132708),url('../assets/dictionary-night-scene-v1.webp') center/cover!important;margin-bottom:10px!important}
#screenGrammar #grammarTitle{font-size:24px!important;line-height:1.12!important;max-width:81%!important;margin-bottom:8px!important}
#screenGrammar #grammarHeroSummary{font-size:12px!important;line-height:1.4!important;max-width:77%!important}
#screenGrammar .grammar-reference-block{padding:10px!important;margin-bottom:9px!important;border-radius:15px!important}
#screenGrammar .grammar-reference-block h3{font-size:14px!important;gap:10px!important;margin-bottom:7px!important}
#screenGrammar .grammar-reference-block h3 i{width:25px!important;height:25px!important;font-size:15px!important;box-shadow:0 0 8px #005dff55}
#screenGrammar #grammarExplanation{margin-left:35px!important;font-size:12px!important;line-height:1.45!important}
#screenGrammar #grammarStructureText{margin-left:35px!important;font-size:12px!important;padding:10px 7px!important;border-radius:10px!important}
#screenGrammar .grammar-example{padding:6px 7px!important;border-radius:13px!important;gap:10px!important;margin:5px 0!important}
#screenGrammar .grammar-example>button{width:34px!important;height:34px!important;flex-basis:34px!important}
#screenGrammar .grammar-example>button svg{width:20px!important;height:20px!important}
#screenGrammar .grammar-example b{font-size:14px!important;line-height:1.25!important}
#screenGrammar .grammar-example span,#screenGrammar .grammar-example p{font-size:11px!important;line-height:1.25!important}
#screenGrammar .nav-footer{display:grid!important;grid-template-columns:1.12fr 1fr 1.12fr!important;gap:7px!important;margin-top:22px!important;padding-bottom:4px!important}
#screenGrammar .nav-footer button{min-height:38px!important;padding:6px 3px!important;font-size:11px!important;border-radius:12px!important}
#screenGrammar .nav-footer .grammar-all-topics{background:linear-gradient(#009bff,#005bff)!important;color:white!important;border-color:#00cbff!important;box-shadow:0 0 9px #008dff66!important}
#screenGrammar .nav-footer [hidden]{display:none!important}
@media(min-width:600px){#screenGrammar .grammar-reference-hero{min-height:200px!important}#screenGrammar #grammarTitle{font-size:31px!important}#screenGrammar #grammarHeroSummary,#screenGrammar #grammarExplanation,#screenGrammar #grammarStructureText{font-size:15px!important}}
#screenGrammar .nav-footer button{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1.2!important;text-indent:0!important}
#screenGrammar #grammarReferenceFavorite{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:0!important;line-height:1!important;text-indent:0!important}
#screenGrammar #grammarReferenceFavorite[hidden]{display:none!important}
