/*
 * 学生端 V10 视觉整理
 *
 * 目标：内容清楚、真实图片优先、留白有节奏。这里不叠加粒子、毛玻璃、
 * 3D 或全屏动效；所有页面共用同一套纸张、边线、标题和操作层级。
 */
:root{
  --student-ink:#29475d;
  --student-ink-soft:#617582;
  --student-paper:#fffef9;
  --student-ground:#f3f8f5;
  --student-line:#dbe4de;
  --student-line-warm:#eadfc8;
  --student-mint:#e7f1e9;
  --student-sky:#eaf6fb;
  --student-sand:#fff4de;
  --student-clay:#bf7043;
  --student-green:#356c58;
  --student-radius:18px;
  --student-shadow:0 8px 22px rgba(42,69,66,.08);
}

/* Global shell: a narrow header and a consistent reading width. */
body.adventure:not(.page-student-home){background:var(--student-ground)!important;color:var(--student-ink)}
body.adventure:not(.page-student-home) .site-nav{height:62px!important;min-height:62px!important;background:#fffef9!important;border-bottom:1px solid var(--student-line)!important;box-shadow:none!important}
body.adventure:not(.page-student-home) .site-nav__links{gap:4px!important}
body.adventure:not(.page-student-home) .site-nav__links a{padding:7px 10px!important;border-radius:8px!important;color:#586a79!important;font-size:15px!important;font-weight:850!important}
body.adventure:not(.page-student-home) .site-nav__links a.active{background:var(--student-mint)!important;box-shadow:inset 0 -2px 0 var(--student-green)!important;color:#285b50!important}
body.adventure:not(.page-student-home) .site-nav__logo{font-size:21px!important}
body.adventure:not(.page-student-home) .site-nav__mark{width:35px!important;height:35px!important}
body.adventure:not(.page-student-home) .site-nav__avatar{width:34px!important;height:34px!important;border-radius:11px!important;font-size:15px!important}
body.adventure:not(.page-student-home) .site-nav__user-info b{font-size:14px!important}
body.adventure:not(.page-student-home) .site-nav__user-info small{font-size:11px!important}
body.adventure:not(.page-student-home) .adventure-main{min-height:calc(100dvh - 62px);padding:28px 0 58px!important;background:linear-gradient(180deg,#f0f8fb 0,#f5f8f4 280px,#f3f8f5 100%)!important}
body.adventure:not(.page-student-home) .adv-container{width:min(1320px,calc(100% - 72px))!important}
body.adventure:not(.page-student-home) h1,body.adventure:not(.page-student-home) h2,body.adventure:not(.page-student-home) h3{color:var(--student-ink)}
body.adventure:not(.page-student-home) p{color:var(--student-ink-soft)}
body.adventure:not(.page-student-home) .island-chip,body.adventure:not(.page-student-home) .adv-kicker,body.adventure:not(.page-student-home) .mini-label{border:1px solid var(--student-line-warm)!important;border-radius:999px!important;background:#fff9ee!important;color:#90623e!important;box-shadow:none!important}
body.adventure:not(.page-student-home) .island-button,body.adventure:not(.page-student-home) .adv-btn{border:1px solid #ad6037!important;border-radius:9px!important;background:var(--student-clay)!important;box-shadow:0 3px 0 #95532f!important;color:#fffdf8!important;font-weight:900!important}
body.adventure:not(.page-student-home) .island-button--paper,body.adventure:not(.page-student-home) .adv-btn.secondary{border-color:#b9d0c4!important;background:#fffef9!important;box-shadow:none!important;color:#356957!important}
body.adventure:not(.page-student-home) .island-button:hover,body.adventure:not(.page-student-home) .adv-btn:hover{transform:translateY(-1px)!important}

/* A page title should describe the screen, not consume the screen. */
body.adventure:not(.page-student-home) .game-ribbon{min-height:56px;margin-bottom:16px!important;padding:8px 0!important;border:0!important;border-bottom:1px solid var(--student-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.adventure:not(.page-student-home) .game-ribbon__title{gap:8px!important}
body.adventure:not(.page-student-home) .game-ribbon__title span{display:grid!important;place-items:center;width:30px!important;height:30px!important;border-radius:8px!important;background:var(--student-sand)!important;font-size:15px!important}
body.adventure:not(.page-student-home) .game-ribbon__title b{font-size:18px!important;color:var(--student-ink)!important}
body.adventure:not(.page-student-home) .game-ribbon__title small{font-size:12px!important;color:var(--student-ink-soft)!important}
body.adventure:not(.page-student-home) .game-ribbon__back,body.adventure:not(.page-student-home) .game-ribbon__link{border:1px solid var(--student-line)!important;border-radius:8px!important;background:var(--student-paper)!important;color:#426a5d!important;box-shadow:none!important}

/* Work gallery: show real work first, controls second. */
.page-student-gallery .game-surface,.page-archive-works .archive-detail,.page-archive-favorites .archive-detail{padding:24px!important;border:1px solid var(--student-line)!important;border-radius:var(--student-radius)!important;background:var(--student-paper)!important;box-shadow:var(--student-shadow)!important}
.page-student-gallery .gallery-toolbar{align-items:end!important;padding-bottom:17px!important;border-bottom:1px solid var(--student-line)!important}
.page-student-gallery .gallery-toolbar h1,.page-archive-works .archive-detail__head h1,.page-archive-favorites .archive-detail__head h1{margin:0!important;font-size:clamp(27px,2.8vw,38px)!important;line-height:1.15!important;letter-spacing:-.05em}
.page-student-gallery .gallery-toolbar p,.page-archive-works .archive-detail__head p,.page-archive-favorites .archive-detail__head p{margin:7px 0 0!important;font-size:13px!important}
.page-student-gallery .gallery-toolbar__count{padding:6px 8px!important;border:1px solid var(--student-line)!important;border-radius:7px!important;background:var(--student-mint)!important;color:#477361!important;font-size:12px!important}
.page-student-gallery .gallery-play-filters,.page-archive-works .growth-tabs{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:17px 0!important;padding:0!important;border:0!important;background:none!important}
.page-student-gallery .gallery-play-filters button,.page-archive-works .growth-tabs button{padding:7px 11px!important;border:1px solid var(--student-line)!important;border-radius:7px!important;background:#fff!important;color:#61717a!important;font-size:12px!important;font-weight:850!important}
.page-student-gallery .gallery-play-filters button.active,.page-archive-works .growth-tabs button.active{border-color:#9fc4b1!important;background:var(--student-mint)!important;color:#315f52!important}
.page-student-gallery .gallery-grid,.page-archive-works .gallery-grid,.page-archive-favorites .favorite-work-grid{gap:14px!important}
.page-student-gallery .gallery-card,.page-archive-works .gallery-card,.page-archive-favorites .favorite-work-card{border:1px solid var(--student-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}
.page-student-gallery .gallery-card:hover,.page-archive-works .gallery-card:hover,.page-archive-favorites .favorite-work-card:hover{border-color:#b7ccbd!important;box-shadow:0 7px 16px rgba(42,69,66,.1)!important;transform:translateY(-2px)!important}
.page-student-gallery .gallery-quiet-note{margin-top:20px!important;padding:13px 0 0!important;border-top:1px solid var(--student-line)!important;border-radius:0!important;background:none!important}

/* Creation is a calm desk: upload image + description are equal, readable tasks. */
.page-creation-center .pattern-workbench{display:grid!important;grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr)!important;gap:0!important;padding:0!important;border:1px solid var(--student-line)!important;border-radius:var(--student-radius)!important;background:var(--student-paper)!important;box-shadow:var(--student-shadow)!important;overflow:hidden!important}
.page-creation-center .pattern-form{display:contents!important}
.page-creation-center .pattern-upload-card{min-height:440px!important;margin:0!important;border:0!important;border-right:1px solid var(--student-line)!important;border-radius:0!important;background:#eff5ef!important}
.page-creation-center .pattern-upload-empty{max-width:250px!important;padding:18px!important;border:1px dashed #afc9b7!important;border-radius:12px!important;background:#fbfdf9!important}
.page-creation-center .pattern-upload-empty i{display:grid!important;place-items:center;width:42px!important;height:42px!important;margin:0 auto 9px!important;border-radius:10px!important;background:var(--student-sand)!important;color:#a56840!important;font-size:27px!important;font-style:normal!important}
.page-creation-center .pattern-fields{padding:28px!important;background:#fffef9!important}
.page-creation-center .pattern-fields__head{padding-bottom:16px!important;border-bottom:1px solid var(--student-line)!important}
.page-creation-center .pattern-fields__head h1{font-size:28px!important}.page-creation-center .pattern-fields__head small{font-size:11px!important}
.page-creation-center .pattern-field input,.page-creation-center .pattern-field textarea{border:1px solid #d7e1da!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important}
.page-creation-center .pattern-choice{gap:7px!important;padding:12px!important;border:1px solid var(--student-line)!important;border-radius:10px!important;background:#fbfdf9!important}
.page-creation-center .pattern-choice label{border-radius:7px!important}
.page-creation-center .pattern-actionbar{grid-column:1/-1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:14px 20px!important;border-top:1px solid var(--student-line)!important;background:#f7faf5!important}
.page-creation-center .pattern-actionbar>span{font-size:12px!important;color:#71807e!important}.page-creation-center .pattern-recent{padding-top:14px!important;border-top:1px solid var(--student-line)!important}

/* Stage uses two or three clear choices, not a theatrical wallpaper. */
.page-stage-center .stage-lobby{padding:25px!important;border:1px solid var(--student-line)!important;border-radius:var(--student-radius)!important;background:var(--student-paper)!important;box-shadow:var(--student-shadow)!important}
.page-stage-center .stage-lobby__head{align-items:end!important;padding-bottom:18px!important;border-bottom:1px solid var(--student-line)!important}.page-stage-center .stage-lobby__head p{margin:0 0 5px!important;color:#9a6845!important;font-size:12px!important;font-weight:900!important}.page-stage-center .stage-lobby__head h1{margin:0!important;font-size:clamp(27px,3vw,38px)!important;letter-spacing:-.05em}
.page-stage-center .stage-door-grid{gap:14px!important;margin-top:18px!important}.page-stage-center .stage-door{min-height:230px!important;padding:22px!important;border:1px solid var(--student-line)!important;border-radius:13px!important;box-shadow:none!important;background:#f8fbf7!important}.page-stage-center .stage-door--vr{background:#eef7fb!important}.page-stage-center .stage-door--music{background:#f8f1e7!important}.page-stage-center .stage-door--share{background:#edf6ee!important}
.page-stage-center .stage-door:before,.page-stage-center .stage-door:after{display:none!important}.page-stage-center .stage-door h2{font-size:23px!important}.page-stage-center .stage-door p{font-size:13px!important;line-height:1.6!important}.page-stage-center .stage-door__go{margin-top:18px!important;color:#356b59!important}

/* Archive & settings: same quiet rail, one main sheet, no oversized empty header. */
.page-archive-overview .adventure-main,.page-archive-settings .adventure-main{background:#f3f8f5!important}
.page-archive-overview .archive-achievement__rail,.page-archive-settings .archive-space__rail{border-color:var(--student-line)!important;background:#f8faf6!important;box-shadow:none!important}
.page-archive-overview .archive-achievement__main,.page-archive-settings .archive-settings__sheet{border-color:var(--student-line)!important;border-radius:0!important;background:var(--student-paper)!important;box-shadow:var(--student-shadow)!important}
.page-archive-overview .archive-achievement__head h1,.page-archive-settings .archive-space__head h1{font-size:clamp(28px,3vw,38px)!important;letter-spacing:-.055em!important}
.page-archive-overview .archive-achievement__stats article{min-height:86px!important;padding:14px!important}.page-archive-overview .archive-achievement__stats b{font-size:21px!important}
.page-archive-overview .archive-achievement__feature,.page-archive-overview .archive-achievement__xun-card,.page-archive-overview .archive-achievement__tile>div{border-color:var(--student-line)!important}.page-archive-overview .archive-achievement__feature{min-height:168px!important}.page-archive-overview .archive-achievement__feature-media{background:#edf3ee!important}.page-archive-overview .archive-achievement__gallery-grid{gap:12px!important}.page-archive-overview .archive-achievement__tile>div{height:132px!important}
.page-archive-settings .archive-space--settings{gap:20px!important}.page-archive-settings .archive-settings__sheet{padding:30px 34px!important}.page-archive-settings .archive-settings__photo{padding:17px 0!important;border-bottom:1px solid var(--student-line)!important}.page-archive-settings .archive-settings__form,.page-archive-settings .archive-settings__account{padding:20px 0!important;border-bottom:1px solid var(--student-line)!important}.page-archive-settings input,.page-archive-settings textarea{border:1px solid #d5dfd8!important;border-radius:8px!important;background:#fff!important}

/* My Xun: the individual level image stays visible without becoming a giant mascot hero. */
.page-my-xun .xun-showroom{padding:25px!important;border:1px solid var(--student-line)!important;border-radius:var(--student-radius)!important;background:var(--student-paper)!important;box-shadow:var(--student-shadow)!important}.page-my-xun .xun-showroom__head{align-items:end!important;padding-bottom:17px!important;border-bottom:1px solid var(--student-line)!important}.page-my-xun .xun-showroom__head h1{margin:6px 0!important;font-size:clamp(29px,3vw,39px)!important;letter-spacing:-.055em}.page-my-xun .xun-showroom__grid{gap:16px!important;margin-top:20px!important}.page-my-xun .xun-showroom__stage{min-height:290px!important;border:1px solid var(--student-line)!important;border-radius:13px!important;background:#eef4ed!important}.page-my-xun .xun-pet-stage--showcase{width:min(240px,80%)!important;height:260px!important}.page-my-xun .xun-showroom__info{border:1px solid var(--student-line)!important;border-radius:13px!important;background:#fffdf7!important;box-shadow:none!important}.page-my-xun .xun-showroom__levels{grid-column:1/-1!important;padding-top:18px!important;border-top:1px solid var(--student-line)!important}.page-my-xun .xun-pet-levels--showcase{gap:9px!important}.page-my-xun .xun-pet-level{border:1px solid var(--student-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}

/* Messages, details and public profiles share readable paper panels. */
.page-student-messages .account-messages,.page-artwork-detail .artwork-story-layout,.page-stage-detail .task-bridge,.page-gallery-students .creator-world-hero,.page-student-profile .friend-profile-hero,.page-level-detail .level-story-hero{border:1px solid var(--student-line)!important;border-radius:var(--student-radius)!important;background:var(--student-paper)!important;box-shadow:var(--student-shadow)!important}
.page-student-messages .account-messages{padding:25px!important}.page-student-messages .account-messages__head{padding-bottom:17px!important;border-bottom:1px solid var(--student-line)!important}.page-student-messages .account-messages__head h1{font-size:clamp(28px,3vw,38px)!important}.page-student-messages .account-message-list{gap:10px!important}.page-student-messages .account-message{border-color:var(--student-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
.page-artwork-detail .artwork-story-layout{padding:24px!important}.page-artwork-detail .artwork-frame{border-color:var(--student-line-warm)!important;border-radius:12px!important;box-shadow:none!important}.page-artwork-detail .artwork-story-copy h1{font-size:clamp(28px,3vw,40px)!important}.page-artwork-detail .artwork-detail-note,.page-artwork-detail .artwork-kind-rule,.page-artwork-detail .kind-message-box{border-color:var(--student-line)!important;border-radius:10px!important;box-shadow:none!important}
.page-stage-detail .task-bridge{padding:24px!important}.page-stage-detail .task-paper,.page-stage-detail .task-platform{border-color:var(--student-line)!important;border-radius:12px!important;box-shadow:none!important}.page-stage-detail .task-step-row{gap:8px!important}.page-stage-detail .task-step{border-color:var(--student-line)!important;border-radius:9px!important;background:#fbfdf9!important}
.page-gallery-students .creator-world-hero{padding:28px!important;background:linear-gradient(125deg,#edf7fb,#fffef9)!important}.page-gallery-students .creator-world-hero h1{font-size:clamp(30px,3.7vw,48px)!important}.page-gallery-students .creator-neighborhood{border-left:1px solid var(--student-line)!important;background:transparent!important}.page-gallery-students .creator-house{box-shadow:none!important}.page-student-profile .friend-profile-hero{padding:26px!important}.page-student-profile .friend-house-scene{border-left:1px solid var(--student-line)!important;background:#edf5ed!important}.page-student-profile .friend-growth-strip{margin-top:14px!important;border:1px solid var(--student-line)!important;border-radius:12px!important;background:var(--student-paper)!important;box-shadow:none!important}.page-student-profile .friend-tabs{margin-top:18px!important;border-bottom:1px solid var(--student-line)!important}.page-level-detail .level-story-hero{padding:28px!important;background:linear-gradient(125deg,#edf7fb,#fffdf5)!important}.page-level-detail .level-story-visual{background:transparent!important}.page-level-detail .level-quest-grid{gap:13px!important}.page-level-detail .gentle-help{border:1px solid var(--student-line)!important;border-radius:12px!important;background:#fffdf7!important;box-shadow:none!important}

/* Responsive: preserve content before decoration. */
@media(max-width:900px){
  body.adventure:not(.page-student-home) .adv-container{width:calc(100% - 40px)!important}
  body.adventure:not(.page-student-home) .site-nav{height:auto!important;min-height:56px!important}
  .page-creation-center .pattern-workbench{grid-template-columns:1fr!important}.page-creation-center .pattern-upload-card{min-height:280px!important;border-right:0!important;border-bottom:1px solid var(--student-line)!important}.page-creation-center .pattern-actionbar{align-items:flex-start!important;flex-direction:column!important}
  .page-my-xun .xun-showroom__grid{grid-template-columns:1fr!important}.page-my-xun .xun-showroom__stage{min-height:250px!important}.page-gallery-students .creator-neighborhood,.page-student-profile .friend-house-scene{border-top:1px solid var(--student-line)!important;border-left:0!important}
  .page-archive-settings .archive-settings__sheet{padding:24px!important}
}
@media(max-width:620px){
  body.adventure:not(.page-student-home) .adv-container{width:calc(100% - 24px)!important}
  body.adventure:not(.page-student-home) .adventure-main{padding:18px 0 38px!important}
  .page-student-gallery .game-surface,.page-archive-works .archive-detail,.page-archive-favorites .archive-detail,.page-stage-center .stage-lobby,.page-my-xun .xun-showroom,.page-student-messages .account-messages{padding:17px!important}
  .page-student-gallery .gallery-toolbar,.page-my-xun .xun-showroom__head,.page-stage-center .stage-lobby__head{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
  .page-creation-center .pattern-fields{padding:20px!important}.page-creation-center .pattern-actionbar__buttons{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important}.page-creation-center .pattern-actionbar__buttons .island-button{min-width:0!important;padding-left:8px!important;padding-right:8px!important}
  .page-stage-center .stage-door-grid{grid-template-columns:1fr!important}.page-stage-center .stage-door{min-height:190px!important}
  .page-archive-overview .archive-achievement__tile>div{height:112px!important}.page-archive-settings .archive-settings__sheet{padding:18px!important}
  .page-artwork-detail .artwork-story-layout,.page-stage-detail .task-bridge,.page-level-detail .level-story-hero,.page-student-profile .friend-profile-hero,.page-gallery-students .creator-world-hero{padding:18px!important}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
