/* Local OFL fonts. Chinese operational content stays in a legible sans face. */
@font-face{font-family:BeeSong;src:url('fonts/NotoSerifTC.ttf') format('truetype');font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:BeeIansui;src:url('fonts/Iansui-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:BeeSans;src:url('fonts/NotoSansTC.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:BeePirate;src:url('fonts/PirataOne-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--display:BeeSong,'Noto Serif TC',serif;--body:BeeSans,'Noto Sans TC',sans-serif;--island:BeeIansui,cursive;--pirate:BeePirate,serif}
body{font-family:var(--body);font-size:18px;line-height:1.8}
button,input,select,textarea{font-family:var(--body)}
h1,h2{font-family:var(--display)!important;font-weight:900!important;letter-spacing:.025em;line-height:1.45!important;text-wrap:pretty}
h1{font-size:clamp(32px,3.8vw,48px)}h2{font-size:clamp(27px,3vw,36px)}
.classroom-toolbar h1{font-size:clamp(30px,3.4vw,44px);max-width:24em}.classroom-toolbar{align-items:flex-start;gap:28px}.classroom-toolbar p,.classroom-toolbar label{font-size:17px;line-height:1.8}.classroom-toolbar label{flex:0 1 390px;min-width:260px}.classroom-toolbar select{font-size:18px;min-height:52px;max-width:100%;padding:12px 38px 12px 14px}.case-current-title{font-size:18px;line-height:1.8;font-family:var(--island)}
.topbar{gap:24px;flex-wrap:wrap}.topbar nav{gap:14px;flex-wrap:wrap}.topbar nav a{font-size:17px;min-height:44px;display:inline-flex;align-items:center;padding:8px 12px}.brand-name small{font-size:14px;line-height:1.6}.brand-name{font-family:var(--body)}
.class-intro,.class-puzzle{padding:clamp(20px,3vw,38px)}.class-intro>h2,.class-puzzle h2{font-size:clamp(28px,3vw,38px)}.class-event{font-family:var(--island);font-size:clamp(23px,2.5vw,29px);line-height:1.85;padding:24px}.class-intro p,.class-section-head p,.class-bank>p,.class-check-row p,.class-step-row,.class-note-toolbar,.class-unlock{font-size:18px;line-height:1.85}
.class-bank h3,.frame-heading{font-size:23px;line-height:1.7}.class-piece,.class-cell .class-piece{font-family:var(--body);font-size:18px;line-height:1.85;min-height:84px;padding:14px;overflow-wrap:anywhere;word-break:normal}.class-cell .piece-grip{flex-basis:32px}.piece-grip small{font-size:12px}.class-cell>header>b{font-size:20px;line-height:1.6}.class-cell>header>span{font-size:15px}.class-cell>p{font-size:18px;line-height:1.85}.class-placement{font-size:17px!important;line-height:1.85}.class-cell .secondary,.class-bank>.secondary,.class-note-toolbar .secondary{font-size:16px;min-height:46px;padding:10px 12px;white-space:normal}.class-note summary,.class-note label{font-size:16px;line-height:1.8}.class-note textarea{font:18px/1.9 var(--body);min-height:130px;padding:14px}.class-count{font-size:17px}.class-cell{padding:20px}.cci-frame{gap:18px}.sipoc-frame{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.class-hmw p{font-family:var(--island);font-size:25px;line-height:1.85}.class-gate{padding:28px}.class-gate h3{font-size:24px}.class-gate label{font-size:19px;line-height:1.9;padding:16px}.class-gate input{width:18px;height:18px;margin-right:8px}
button.primary,button.secondary,.studio-links button{font-size:18px;line-height:1.65;min-height:48px;padding:12px 18px;white-space:normal;overflow-wrap:anywhere}.class-step-row,.studio-links,.class-check-row{flex-wrap:wrap;gap:16px}.class-status{font-size:17px;line-height:1.85}
.bee-wing>span,.bee-legend,.screen-takeaway,.island-name{font-family:var(--island)}.bee-wing>span{font-size:clamp(16px,2.1vw,25px);font-weight:400;letter-spacing:.12em}.bee-wing b{font-family:var(--pirate);font-weight:400;letter-spacing:.035em;font-size:clamp(19px,3vw,34px)}.bee-wing small{font-size:clamp(12px,1.4vw,16px)}.bee-legend{font-size:18px}.bee-guide-title small{font-size:16px}.bee-hmw{font-family:var(--body)}.bee-hmw small{font-size:clamp(9px,1vw,12px)}.eyebrow,.vault-kicker,.screen-step-label{font-family:var(--pirate);letter-spacing:.07em;font-size:18px}.eyebrow:lang(zh-Hant){font-family:var(--pirate),var(--body)}
.class-reference-grid h3,.grand-islands h4{font-size:23px;line-height:1.7;font-family:var(--island);font-weight:400}.class-reference-grid p{font-size:18px;line-height:1.9}.grand-workbench label,.grand-workbench p{font-size:18px;line-height:1.9}.grand-workbench h3{font-size:26px;line-height:1.65}.grand-workbench input:not([type=checkbox]),.grand-workbench select,.grand-workbench textarea{font:18px/1.9 var(--body);padding:14px;min-height:52px}.grand-workbench textarea{min-height:140px}.grand-islands{gap:24px}.grand-islands article{padding:24px}.grand-context,.grand-workbench pre{font:17px/1.9 var(--body);padding:20px;overflow-wrap:anywhere}#grand-output,#class-treasure,.prompt-output,.studio-export{font:18px/1.95 var(--body);min-height:340px;padding:20px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;box-sizing:border-box}
.hmw-vault{width:min(1240px,calc(100vw - 40px));font-family:var(--body)}.hmw-vault h2{font-family:var(--display)!important;font-size:clamp(28px,3vw,38px);font-weight:900!important;line-height:1.5!important}.hmw-vault h3,.hmw-vault h4{font-family:var(--island);font-weight:400;font-size:27px;line-height:1.65}.hmw-vault .vault-kicker{font-family:var(--pirate);font-size:20px}.hmw-vault p,.hmw-vault label{line-height:1.9}.vault-head{gap:24px}.vault-head>div{min-width:0}.vault-head .vault-close{position:sticky;top:12px;flex-shrink:0}.vault-tabs button{font-family:var(--island);font-size:23px;font-weight:400;line-height:1.65;min-height:76px}.vault-tabs b{font-family:var(--pirate);font-weight:400;font-size:29px}.vault-actions{gap:16px}.vault-actions button{min-height:52px;flex:0 1 auto}#vault-prompt{font:18px/1.95 var(--body);height:clamp(340px,55vh,620px);padding:24px}.vault-inner{padding:30px 38px 38px}.vault-detail{padding:30px}.vault-password-row{align-items:stretch}.vault-password-row button{flex:0 0 auto}
.service-table,.lane-table,.operation-screen table{font-family:var(--body);font-size:17px;line-height:1.85}.service-table td p,.lane-node p,.operation-screen td{font-size:17px;line-height:1.85}.diagram-scroll{max-width:100%;overflow:auto}.lane-node{overflow-wrap:anywhere}.screen-mission,.screen-purpose,.screen-next,.joint-teaching{font-size:18px;line-height:1.85}.screen-takeaway{font-size:24px;line-height:1.9}.screen-tabs{flex-wrap:wrap}.screen-tabs button{font-size:18px;line-height:1.7;min-height:52px;white-space:normal}.screen-purpose h5{font-size:23px;line-height:1.75}.operation-screen button{white-space:normal;min-height:46px;font-size:17px}
.exam-landing h1,.hero-copy h1{font-size:clamp(36px,4.4vw,62px)}.drag-card{font-size:18px;line-height:1.85}.drop-zone h4{font-size:20px;line-height:1.7}.drop-zone{min-width:0}.concept-options button{font-size:18px;line-height:1.85;white-space:normal}.exam-concept h5{font-size:22px;line-height:1.8}.concept-result{font-size:18px;line-height:1.9}.module-bank h4,.thinking-board h4{font-size:21px}.exam-background{font-size:18px;line-height:1.85}.pilot-draft textarea,.treasure-form textarea{font:18px/1.9 var(--body)}
@media(max-width:1200px){.sipoc-frame{grid-template-columns:repeat(3,minmax(0,1fr))}.classroom-toolbar{flex-wrap:wrap}.classroom-toolbar label{flex-basis:100%;max-width:540px}.class-reference-grid{grid-template-columns:1fr}.bee-legend{font-size:17px}}
@media(max-width:760px){.cci-frame,.sipoc-frame{grid-template-columns:repeat(2,minmax(0,1fr))}.class-bank>div{grid-template-columns:1fr}.grand-islands{grid-template-columns:1fr}.topbar{padding:18px 20px}.classroom-shell{padding:22px 16px}.class-note-toolbar{align-items:flex-start;flex-direction:column}.bee-guide{padding:18px 10px 14px}.bee-guide-title{align-items:flex-start;flex-direction:column;gap:7px}.bee-legend{font-size:16px;line-height:1.8}.hmw-vault{width:calc(100vw - 16px)}.vault-inner{padding:22px 18px}.vault-detail{padding:20px}.vault-tabs{grid-template-columns:1fr}.vault-tabs button{min-height:62px}.vault-actions button{flex-basis:100%}#vault-prompt{padding:16px}.screen-tabs button{font-size:17px}.class-section-head{flex-wrap:wrap}}
@media(max-width:480px){.cci-frame,.sipoc-frame{grid-template-columns:1fr}.class-cell{padding:20px}.class-intro,.class-puzzle{padding:20px 16px}.class-gate{padding:20px 16px}.bee-legend{flex-direction:column;gap:4px}.bee-wing{min-height:72px}.bee-wing small{font-size:11px}.bee-wing>span{font-size:16px;letter-spacing:0;margin:5px 0}.bee-wing b{font-size:19px}.bee-hmw small{display:none}.bee-hmw{font-size:13px}.topbar nav a{font-size:16px}.vault-head{padding:22px 18px}.hmw-vault h2{font-size:27px}.class-step-row>button{flex:1 1 100%}.class-event{padding:18px;font-size:24px}.classroom-toolbar label{min-width:0;width:100%}.grand-workbench>section{padding:20px 16px}}
