.lego-time-shell{max-width:1080px;margin:0 auto;padding:12px 22px 130px;font-family:'Noto Sans TC',sans-serif;color:#382d22}
.lego-time-shell[hidden],.lego-time-view[hidden]{display:none!important}
.lego-time-shell button,.lego-time-shell input{font-family:inherit}
.ltt-font-toggle-slot{display:inline-flex;align-items:center;margin-left:0}
.ltt-font-toggle-slot .word-ctl-btn{min-height:36px;padding:6px 12px;display:inline-flex;align-items:center;gap:6px;border:1.5px solid rgba(139,99,16,.28);border-radius:999px;color:#7a5510;background:rgba(139,99,16,.1);font-family:'Noto Sans TC',sans-serif;font-size:14px;font-weight:700;line-height:1;cursor:pointer}
.ltt-font-toggle-slot .word-ctl-btn::after{content:'標準字體'}
.ltt-font-toggle-slot .word-ctl-btn[data-font-mode="modern"]::after{content:'現代字體'}
.ltt-font-toggle-slot .word-ctl-btn:hover,.ltt-font-toggle-slot .word-ctl-btn:focus-visible{border-color:#c8973a;background:#fff4d8;outline:none}
.lego-time-head{display:flex;align-items:center;justify-content:flex-start;gap:14px;margin-bottom:18px}
.lego-time-head[hidden]{display:none!important}
a.lego-time-back{display:inline-flex;align-items:center;text-decoration:none;box-sizing:border-box}
.lego-time-view[data-time-view="time-category"]>.lego-time-head{width:100%;margin:0 0 12px}
.lego-time-back{min-height:36px;padding:6px 12px;border:1.5px solid #d4b87a;border-radius:999px;color:#8b6310;background:#fffaf0;font-size:14px;font-weight:700;cursor:pointer}
.lego-time-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.lego-time-card-grid.is-single{grid-template-columns:minmax(0,520px);justify-content:center}
.lego-time-card-grid.is-four{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin:0 auto}
.lego-time-card{min-height:160px;padding:20px;border:1.5px solid #e0d2a8;border-radius:20px;background:#fff;color:#382d22;text-align:left;box-shadow:0 8px 24px rgba(90,62,10,.09);display:flex;align-items:center;gap:18px}
button.lego-time-card{cursor:pointer}
button.lego-time-card:hover,button.lego-time-card:focus-visible{transform:translateY(-2px);box-shadow:0 12px 28px rgba(90,62,10,.15)}
.lego-time-card[disabled]{opacity:.54;cursor:not-allowed;transform:none}
.lego-time-card-icon{font-size:40px;line-height:1;flex:0 0 auto}
.lego-time-card-body{display:block;min-width:0;flex:1}
.lego-time-card strong{display:block;margin-bottom:8px;color:#5a3e0a;font-family:'Noto Serif TC',serif;font-size:19px;font-weight:900}
.lego-time-card-body>span{display:block;color:#776b5d;font-size:13px;line-height:1.6}
.lego-time-card em{display:inline-block;margin-top:14px;padding:5px 12px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#e8a020,#d85a30);font-size:12px;font-style:normal;font-weight:800}
.lego-time-card[disabled] em{background:#aaa49a}
.lego-time-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.lego-time-category-card{width:100%;font:inherit;cursor:pointer}
.lego-time-category-card .gh-title{white-space:normal;overflow:visible;text-overflow:clip}
.ltt-panel{padding:14px;border-radius:24px;background:#f8f1e3;box-shadow:0 12px 34px rgba(90,62,10,.12)}
.ltt-level-groups{display:grid;gap:12px;margin-bottom:16px}
.ltt-level-group{overflow:hidden;border:1.5px solid rgba(212,184,122,.72);border-radius:20px;background:#fff;box-shadow:0 5px 22px rgba(90,62,10,.1)}
.ltt-level-group-head{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;background:linear-gradient(180deg,#f5e9bc,#fffdf8);text-align:center}
.ltt-level-group-icon{font-size:24px;line-height:1}
.ltt-level-group-head strong{color:#5a3e0a;font-family:'Noto Serif TC',serif;font-size:18px;font-weight:700;letter-spacing:1px}
.ltt-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px}
.lego-time-shell .ltt-level{min-height:96px;padding:12px 14px;display:flex;align-items:center;justify-content:center;gap:10px;border:1.5px solid #e3cf9c;border-radius:16px;color:#5a3e0a;background:linear-gradient(180deg,#fffdf8,#fff);font-family:'Noto Sans TC',sans-serif;text-align:center;cursor:pointer;box-shadow:0 4px 14px rgba(90,62,10,.08);transition:transform .15s,box-shadow .15s,border-color .15s,background .15s}
.ltt-level:hover:not(:disabled),.ltt-level:focus-visible{transform:translateY(-2px);box-shadow:0 9px 22px rgba(90,62,10,.14);border-color:#c8973a;outline:none}
.ltt-level-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#fff4d8;font-size:21px;line-height:1;flex:0 0 auto}
.ltt-level-copy{display:block;min-width:0}.ltt-level-copy strong{display:block;font-family:'Noto Serif TC',serif;font-size:16px;font-weight:700;line-height:1.35}
.ltt-level-description{display:block;margin-top:4px;color:#776b5d;font-size:13px;line-height:1.4}
.ltt-level-status{display:block;margin-top:6px;color:#8b6310;font-size:11px;font-weight:800;line-height:1.35}
.ltt-level.is-picked:not(.is-active){border-color:#5e9477;background:linear-gradient(180deg,#edf7f0,#fff)}
.ltt-level.is-picked .ltt-level-status{color:#2f6b4f}
.ltt-level.is-active{border-color:#c8973a;background:linear-gradient(180deg,#fff4d8,#fffdf8);box-shadow:0 0 0 3px rgba(200,151,58,.18),0 9px 22px rgba(90,62,10,.13)}
.ltt-level.is-active .ltt-level-icon{color:#fff;background:linear-gradient(135deg,#c8973a,#8b6310)}
.ltt-level:disabled{opacity:.5;cursor:not-allowed;transform:none}
.ltt-setup{overflow:hidden;padding:0;border:1.5px solid rgba(212,184,122,.72);border-radius:20px;background:#fff;box-shadow:0 5px 22px rgba(90,62,10,.1)}
.ltt-setup-head{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;background:linear-gradient(180deg,#f5e9bc,#fffdf8);text-align:center}
.ltt-setup-icon{font-size:24px;line-height:1}
.ltt-setup h3{margin:0;color:#5a3e0a;font-family:'Noto Serif TC',serif;font-size:18px;font-weight:700;letter-spacing:1px}
.ltt-rounds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:10px}
.lego-time-shell .ltt-round{min-height:76px;padding:12px 14px;border:1.5px solid #e3cf9c;border-radius:16px;color:#5a3e0a;background:linear-gradient(180deg,#fffdf8,#fff);font-family:'Noto Serif TC',serif;font-size:16px;font-weight:700;line-height:1.35;cursor:pointer;box-shadow:0 4px 14px rgba(90,62,10,.08);transition:transform .15s,box-shadow .15s,border-color .15s,background .15s}
.ltt-round:hover:not(:disabled),.ltt-round:focus-visible{transform:translateY(-2px);box-shadow:0 8px 20px rgba(90,62,10,.13)}
.ltt-round:disabled{opacity:.45;cursor:not-allowed}
.ltt-setup>[data-time-setup-note]{margin:0 10px 10px;padding:8px 12px;border-radius:12px;color:#8b6310;background:#fff4d8;font-size:12px;font-weight:700;line-height:1.5;text-align:center}
.ltt-notice{margin:0 10px 10px;padding:8px 12px;border-radius:12px;color:#8b6310;background:#fff4d8;font-size:12px;font-weight:700;text-align:center}.ltt-notice:empty{display:none}
.ltt-play{padding:24px;border:1.5px solid #e0d2a8;border-radius:22px;background:#fff;box-shadow:0 8px 24px rgba(90,62,10,.09)}
.ltt-play-head{display:grid;grid-template-columns:1fr auto;gap:7px 16px;align-items:center}
.ltt-direction{color:#8b6310;font-size:15px;font-weight:900;letter-spacing:.4px}
.ltt-progress{justify-self:end;color:#5a3e0a;font-size:18px;font-weight:900}
.ltt-progress-track{grid-column:1/-1;height:10px;overflow:hidden;border-radius:999px;background:#eee7db}
.ltt-progress-bar{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#c8973a,#d85a30);transition:width .2s}
.ltt-calendar{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:6px;margin:18px 0}
.ltt-day{min-width:0;padding:8px 3px;border:1px solid #ead8ad;border-radius:10px;background:linear-gradient(180deg,#fffdf7,#fff8ea);text-align:center;color:#6f6254;font-size:11px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.ltt-day>span:first-child{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ltt-day.is-complete{color:#6b4600;border-color:#c99a3c;background:linear-gradient(180deg,#f8e4ad,#fff3cf);font-weight:800;box-shadow:0 3px 10px rgba(139,99,16,.12)}
.ltt-studs{display:flex;justify-content:center;gap:3px;margin-top:5px}.ltt-studs i{width:8px;height:8px;border:1px solid currentColor;border-radius:50%;background:#fff}.ltt-studs i.is-filled{background:currentColor}
.ltt-question{position:relative;width:90%;height:128px;min-height:128px;margin-inline:auto;padding:18px;display:grid;place-items:center;box-sizing:border-box;border-radius:18px;background:linear-gradient(180deg,#f7e6be,#fff8e8);text-align:center}
.ltt-combo{position:absolute;top:12px;left:18px;right:18px;min-height:22px;color:#d85a30;font-weight:900}
.ltt-prompt{margin:0;overflow-wrap:anywhere;color:#5a3e0a;font-family:'Noto Serif TC','Noto Sans Thai','Sarabun',serif;font-size:clamp(26px,5vw,40px);font-weight:700;line-height:1.35}
.ltt-prompt-note{display:block;margin-top:6px;color:#8b6310;font:700 13px 'Sarabun','Noto Sans Thai',sans-serif;letter-spacing:.2px}
.ltt-prompt[lang="th"],.ltt-choices[lang="th"] .ltt-choice,.ltt-type-form input[lang="th"]{font-family:'Sarabun','Noto Sans Thai',sans-serif}
body.rg-modern-font .ltt-prompt[lang="th"],body.rg-modern-font .ltt-choices[lang="th"] .ltt-choice,body.rg-modern-font .ltt-type-form input[lang="th"]{font-family:'Noto Sans Thai','Sarabun',sans-serif}
.ltt-answer{margin-top:18px}
.ltt-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ltt-choice{min-height:58px;padding:10px;border:1.5px solid #d4b87a;border-radius:14px;color:#5a3e0a;background:#fff;font-family:'Sarabun','Noto Sans Thai','Noto Sans TC',sans-serif;font-size:19px;font-weight:700;cursor:pointer}
.ltt-choice:hover,.ltt-choice:focus-visible{background:#fff4d8;border-color:#8b6310}
.ltt-type-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.ltt-type-form input{min-width:0;min-height:52px;padding:10px 13px;border:1.5px solid #d4b87a;border-radius:13px;font-family:'Sarabun','Noto Sans Thai','Noto Sans TC',sans-serif;font-size:19px}
.ltt-answer-stack{display:grid;gap:9px}.ltt-review-action{justify-self:start;min-height:38px;padding:7px 13px;border:1.5px dashed #c8973a;border-radius:999px;color:#8b6310;background:#fff9eb;font-size:12px;font-weight:800;cursor:pointer}.ltt-review-action:hover,.ltt-review-action:focus-visible{border-style:solid;background:#fff4d8}
.ltt-secondary.ltt-keyboard-toggle{justify-self:start;min-height:38px!important;padding:7px 13px!important;font-size:13px;font-weight:400}
.ltt-float-keyboard{position:fixed;z-index:1200;right:16px;bottom:16px;width:min(var(--ltt-float-keyboard-width,540px),calc(100vw - 24px));min-width:380px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);padding:0 10px 10px;box-sizing:border-box;overflow:auto;resize:both;border:1.5px solid #c8973a;border-radius:16px;background:#fffdf8;box-shadow:0 16px 45px rgba(56,45,34,.26);font-family:'Noto Sans TC','Sarabun','Noto Sans Thai',sans-serif;color:#382d22}
.ltt-float-keyboard[hidden]{display:none!important}.ltt-float-keyboard.is-disabled .ltt-float-keyboard-keys{opacity:.48}
.ltt-float-keyboard-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 -10px 8px;padding:8px 10px;border-bottom:1px solid #ead8ad;border-radius:15px 15px 0 0;background:#fff4d8;cursor:move;touch-action:none;user-select:none}
.ltt-float-keyboard.is-dragging .ltt-float-keyboard-head{cursor:grabbing}.ltt-float-keyboard-head strong{color:#5a3e0a;font-size:14px}
.ltt-float-keyboard-actions{display:flex;gap:5px}.ltt-float-keyboard-actions button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #d4b87a;border-radius:9px;color:#5a3e0a;background:#fff;font:900 18px/1 'Noto Sans TC',sans-serif;cursor:pointer}.ltt-float-keyboard-actions button:hover,.ltt-float-keyboard-actions button:focus-visible{border-color:#8b6310;background:#fffaf0;outline:none}.ltt-float-keyboard-actions button:disabled{opacity:.35;cursor:not-allowed}
.ltt-float-keyboard-keys{display:grid;gap:4px;min-width:350px}.ltt-float-keyboard-keys .tk-row{display:flex;justify-content:center;gap:4px}.ltt-float-keyboard-keys .tk-key{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:20px;max-width:none;height:46px;padding:3px 2px;border:1.5px solid #d4b87a;border-radius:7px;color:#382d22;background:#fff;font-family:'Sarabun','Noto Sans Thai',sans-serif;cursor:pointer;user-select:none;overflow:hidden}.ltt-float-keyboard-keys .tk-key:hover,.ltt-float-keyboard-keys .tk-key:focus-visible{border-color:#8b6310;background:#fff4d8;outline:none}.ltt-float-keyboard-keys .tk-key:active{transform:scale(.96)}
.ltt-float-keyboard-keys .tk-latin{position:absolute;top:2px;left:4px;color:#8a7c6c;font:700 8px/1 'Noto Sans TC',sans-serif}.ltt-float-keyboard-keys .tk-shift{color:#a57824;font-size:9px;line-height:1.2}.ltt-float-keyboard-keys .tk-base{color:#382d22;font-size:16px;font-weight:700;line-height:1.25}.ltt-float-keyboard-keys.shift-on .tk-shift{color:#382d22;font-size:16px;font-weight:700}.ltt-float-keyboard-keys.shift-on .tk-base{color:#a57824;font-size:9px;font-weight:400}.ltt-float-keyboard-keys .tk-wide{flex:1.6;font:800 11px/1.2 'Noto Sans TC',sans-serif}.ltt-float-keyboard-keys .tk-space{flex:4;max-width:none;font:800 11px/1.2 'Noto Sans TC',sans-serif}.ltt-float-keyboard-keys button:disabled{opacity:.45;cursor:not-allowed;transform:none}
.ltt-submit,.ltt-secondary{min-height:48px;padding:10px 18px;border-radius:999px;font-weight:800;cursor:pointer}.ltt-submit{border:0;color:#fff;background:linear-gradient(135deg,#e8a020,#d85a30)}.ltt-secondary{border:1.5px solid #d4b87a;color:#8b6310;background:#fffaf0}
.ltt-submit:disabled,.ltt-secondary:disabled{opacity:.45;cursor:not-allowed}
.ltt-speech p{min-height:28px;margin:0 0 10px;color:#5a3e0a;font-weight:700;text-align:center}.ltt-speech p:empty{display:none}.ltt-speech-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.ltt-speech-controls button{width:132px;height:36px;min-height:36px;padding:7px 10px;box-sizing:border-box;font-size:14px;line-height:1.2}
.ltt-feedback{margin-top:12px;padding:11px 13px;border-radius:12px;color:#776b5d;background:#f7f3eb}.ltt-feedback:empty{display:none}.ltt-feedback.is-correct{color:#2f6b4f;background:#edf7f0}.ltt-feedback.is-wrong{color:#a33d35;background:#fff0ee}.ltt-feedback-message{display:block}.ltt-play-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:18px}.ltt-save-action{display:inline-flex}.ltt-save-action:empty{display:none}.ltt-save-word{height:36px;min-height:36px;padding:7px 10px;box-sizing:border-box;font-size:14px;line-height:1.2;cursor:pointer;touch-action:manipulation}.ltt-save-word:disabled{cursor:not-allowed;opacity:.55}
.ltt-abandon{display:block;width:132px;height:36px;min-height:36px;margin:0;padding:7px 10px;box-sizing:border-box;font-size:14px;line-height:1.2;scroll-margin-bottom:110px}
.ltt-play:has(.ltt-speech){padding-bottom:18px}
.ltt-unavailable-card{max-width:720px;margin:0 auto;padding:28px;border:1.5px solid #e0d2a8;border-radius:22px;background:#fff;box-shadow:0 8px 24px rgba(90,62,10,.09);text-align:center}
.ltt-unavailable-card strong{display:block;color:#5a3e0a;font-family:'Noto Serif TC',serif;font-size:24px}
.ltt-unavailable-card p{margin:10px auto 0;max-width:520px;color:#776b5d}
.ltt-unavailable-card span{display:inline-block;margin-top:18px;padding:7px 16px;border-radius:999px;color:#756f65;background:#e9e4db;font-weight:800}
@media(max-width:619px){
  body[data-gsh-game="lego"] [data-reading-login-component="header"] h1{font-size:24px!important}
  body[data-gsh-game="lego"] [data-reading-login-component="header"] .page-sub{font-size:14px}
  .lego-time-shell{padding:12px 10px 125px}.lego-time-head{align-items:center}.lego-time-card-grid{grid-template-columns:1fr}.lego-time-card{min-height:0}
  .lego-time-card-grid.is-four{grid-template-columns:1fr}.ltt-panel{padding:8px;border-radius:18px}.ltt-level-group-head,.ltt-setup-head{padding:9px 12px}.ltt-levels{grid-template-columns:1fr;gap:8px;padding:8px}.ltt-level{min-height:78px;padding:10px 12px}.ltt-play{padding:14px}.ltt-rounds{grid-template-columns:1fr;gap:8px;padding:8px}.ltt-round{min-height:68px;padding:10px 12px}.ltt-calendar{gap:3px}.ltt-day{padding:7px 1px;font-size:11px}.ltt-choices{grid-template-columns:1fr}.ltt-type-form{grid-template-columns:1fr}.ltt-type-form .ltt-submit{width:100%}
}
@media(max-width:767px){.ltt-keyboard-toggle,.ltt-float-keyboard{display:none!important}}
@media(max-width:340px){.lego-time-shell{padding-inline:6px}.ltt-level{padding-inline:10px}.ltt-level-icon{width:36px;height:36px;font-size:20px}.ltt-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}}
