/* 興華探索學園 · 活力探險主題。只調整呈現，不改變獎勵與權限。 */
:root{--teal:#087f82;--ink:#173f4b;--muted:#536e78;--line:#d7e7e9;--orange:#efb633;background:#f2f9fb}
body{background:radial-gradient(circle at 95% 4%,#e1f3fa 0,transparent 32%),#f2f9fb}
.sidebar{background:#154753;padding:24px 16px;overflow-y:auto}
.brand{gap:9px;font-size:19px;line-height:1.5}
.brandmark{flex:none;width:50px;height:50px;border:0;border-radius:50%;background:transparent;color:#ffcd57;box-shadow:none;font-size:35px}
.brandmark img{width:100%;height:100%;object-fit:contain}
.brand small{font-size:12px;letter-spacing:1.1px;color:#c6e7e8}
.school{margin:22px 0 17px;padding:9px 10px;border:1px solid #38616b;border-radius:10px;color:#e1f0ec;font-size:13px}
#nav{gap:7px}
#nav a{padding:9px 11px;min-height:48px;border:1px solid transparent;border-radius:14px;gap:10px;font-weight:600;color:#deedef}
#nav a>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#ffffff12;font-size:21px;flex:none}
#nav a.active{background:#ffce62;color:#233f43;border-color:#ffdf8d;box-shadow:0 3px 0 #987033}
#nav a.active>span{background:#fff6d9}
#nav a:hover:not(.active){background:#2b626d;border-color:#53818a}
.sidebar-foot{margin-top:auto;padding-top:18px;padding-bottom:4px;border-top:1px dashed #527782;line-height:1.6}
.sidebar-foot b{color:#ffda80}.sidebar-foot p{font-size:13px}.domain{color:#cfe5e8;font-size:12px}
.workspace>header{background:#ffffffeb}.notice{border-bottom:1px solid #f0e0b9}
h1,h2,h3{font-weight:800}h1{letter-spacing:.02em}
.eyebrow{letter-spacing:1.6px;color:#147579;font-size:12px}
.intro{padding-bottom:17px;border-bottom:2px solid #dcecef}
.panel{border-radius:20px;border-color:#d7e7e9;box-shadow:0 5px 0 #dfedef66}
.btn{border-radius:12px;border:1px solid #bed5d9;border-bottom-width:3px;min-height:44px;background:#fff;font-weight:700;transition:background .15s,box-shadow .15s}
.btn.primary{background:#087f82;border-color:#056064;color:#fff;box-shadow:0 2px 0 #05606420}
.btn.danger{color:#a33430;border-color:#dcaea9;background:#fff8f7}
.btn:not(:disabled):active{transform:translateY(1px);box-shadow:none}
.btn:disabled{opacity:.55}.btn.small{font-size:14px}
.tag,.pill{border-radius:9px;font-size:13px;font-weight:600;background:#e4f4f0;color:#21645d}
.stat{border-radius:16px;border-top:4px solid #23a5a0;background:#fff;box-shadow:0 3px 0 #e0ebef66}
.stat:nth-child(2){border-top-color:#e8ad2f}.stat:nth-child(3){border-top-color:#7d78c8}
.stat span{font-size:14px}.stat strong{color:#076c73;font-weight:800}
select,input:not([type=checkbox]):not([type=radio]),textarea{border-radius:11px}
progress{height:14px;background:#dcebed}
progress::-webkit-progress-bar{background:#dcebed}
progress::-webkit-progress-value{background:linear-gradient(90deg,#078987,#51b6a4)}
progress::-moz-progress-bar{background:#078987;border-radius:10px}
.character.panel,.complete-fitting{background-image:radial-gradient(ellipse at 50% 38%,#ffffffc9 0 28%,transparent 29%),linear-gradient(145deg,#dbf3f4,#eaf7fc);border-color:#b8dedf}
.character .charlabel{border:1px solid #acd5d7;box-shadow:0 3px 0 #bfdcde;color:#15535c;font-weight:700}
.character .complete-outfit,.complete-fitting>.complete-outfit{filter:drop-shadow(0 10px 7px #24566015)}
.level{color:#087f82;text-shadow:0 3px 0 #d8efea}
.next{border-radius:14px;background:#fff7dd;border:1px solid #e7cb7e;color:#68501f}
.timeline{gap:10px}.milestone{border:1px dashed #b7cfd5;border-radius:14px;background:#f0f6f8;line-height:1.6}
.milestone.active{background:#e4f4ed;border:1px solid #8bc8b7;box-shadow:0 3px 0 #c8e6da;color:#165e57}
.badge-card{border-radius:20px;border-bottom-width:4px;background:#fffdf5;border-color:#e6d79e}
.badge-card.locked{background:#f0f5f7;border-color:#d4e1e6}
.badge-card p{font-size:14px}.badge-card h3{color:#285463}
.character-choice{border-radius:20px;border-color:#cbdfe5;border-bottom-width:4px;background:linear-gradient(#f4fbfc,#fff)}
.character-choice.chosen{border-color:#0e8582;box-shadow:0 0 0 2px #0e858233;background:#eaf8f4}
.character-choice .complete-outfit{background:#edf6f8;border-radius:50%}
.closet-item{border-radius:18px}.closet-item.is-preview{border-color:#0b8684;background:#effaf6}
.item-preview{border-radius:14px;background:#edf7f9}
.closet-wallet{border-left:5px solid #eeb431}
.product-icon{border-radius:16px;background:#edf8f4}.product:nth-child(3n+2) .product-icon{background:#fff4d9}.product:nth-child(3n) .product-icon{background:#f0edfc}
.product .price{color:#0b7477}.selection{background:#e7f6f1;border:1px solid #c6e5db;border-radius:12px}
.reward{border-radius:12px;background:#f5fafb}.reward.selected{border-color:#188b82;background:#e6f7ef;box-shadow:inset 4px 0 #188b82}
.student{border-radius:15px}.student[aria-pressed=true]{background:#e8f8ef;border-color:#16867b}
.teacher-view .seat-card .seat{background:#e8f1f5;border-radius:6px;padding:1px 4px;color:#315461;font-weight:700}
.teacher-view .panel{border-radius:16px;box-shadow:0 3px 0 #dfecef55}
.teacher-view .intro{border:0;padding:0}.teacher-view .student.seat-card{border-radius:12px}
.teacher-view .channel-tabs .btn{border-radius:10px}.teacher-view .layout-switch .btn{border-radius:0;box-shadow:none}
.task-card{border-top-color:#28a48c}.task-progress{accent-color:#138d7c}
.board-winner.rank-1{background:#fff6d9;border:1px solid #e6c363}.board-heading>span{color:#9f6d0a}
.growth-source{border-radius:15px}.growth-source.selected{border-color:#16867b;background:#e7f7ee}
.channel-tabs .btn.primary,.closet-tabs .btn.primary{background:#156d79;border-color:#0d4f5a}
#confirm-character::before{content:'✦ ';color:#ffdf79}
#wear-outfit::before,#confirm-outfit-buy::before{content:'✦ ';color:#ffdf79}
.character .btn{margin:4px;max-width:100%}
#login-screen{background:radial-gradient(circle at 20% 20%,#cbeeee,transparent 48%),radial-gradient(circle at 80% 90%,#ffedba,transparent 45%),#eef8fb}
#login-screen>.panel{border-radius:28px;border:1px solid #badadd;box-shadow:0 10px 0 #cde4e666;text-align:center}
.login-emblem{display:block;width:96px;height:96px;object-fit:contain;margin:0 auto 12px}
#login-screen h1{font-size:30px}.account-actions .btn{box-shadow:none}
#toast{border-radius:16px;border:1px solid #639497;box-shadow:0 6px 20px #103c4b26}
dialog{border-radius:22px;box-shadow:0 14px 60px #183f4930}
@media(hover:hover){.btn.primary:not(:disabled):hover{background:#086b6e}.character-choice:hover,.item-preview:hover{border-color:#69b5b1;box-shadow:0 3px 12px #277f7a18}}
@media(max-width:820px){.sidebar{padding:14px 16px;overflow:visible}.brand{font-size:20px}.brandmark{width:43px;height:43px}#nav{gap:8px}#nav a{padding:7px 10px;min-height:44px;flex-shrink:0}#nav a>span{width:28px;height:28px;font-size:19px}.school{padding:0;border:0}.sidebar-foot{display:none}.intro{gap:12px}.intro h1{font-size:25px}.panel{border-radius:17px}}
@media(max-width:500px){.intro{flex-wrap:wrap}.intro>label{width:100%}.intro h1{font-size:24px}.btn{padding-left:11px;padding-right:11px}.brand small{font-size:12px}.timeline{gap:6px}.stat{padding:14px}.character .charlabel{font-size:14px;padding:8px 14px}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:not(:disabled):active{transform:none}}
