/* Charcoal, ivory and a restrained warm gold. Shared by every app role. */
body.qy-premium,body.qy-premium[data-view]{--paper:#0d0e10;--panel:#17181b;--panel-2:#1e1f22;--soft:#232427;--line:#303135;--lime:#d9b778;--gold:#d9b778;--ink:#f3f0e9;--muted:#96969c;--silver:#d6c9b5;background:#0d0e10;color:var(--ink)}
.qy-premium button,.qy-premium a{-webkit-tap-highlight-color:transparent}.qy-icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}.qy-premium button:focus-visible,.qy-premium a:focus-visible{outline:2px solid #e6c78e;outline-offset:4px}.qy-premium button:disabled{cursor:default;filter:none;opacity:.45}
.qy-premium .layout{max-width:1540px;grid-template-columns:224px minmax(0,1fr)}.qy-premium .sidebar{padding:36px 22px;background:#111214!important;border-color:#292a2e!important}.qy-premium main{padding:27px 38px 45px}.qy-premium .topbar{min-height:56px;margin-bottom:28px;padding-bottom:22px;border-color:#2c2c2f}.qy-wordmark{font-family:Georgia,serif;font-weight:800;font-size:32px;letter-spacing:-3px;color:var(--gold);line-height:1}.qy-premium .logo{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.qy-premium .logo b{font-size:24px;font-weight:600;letter-spacing:3px}.qy-premium .logo small{width:100%;font-size:8px;letter-spacing:1.8px;color:#89878a;margin-top:1px}.qy-premium .breadcrumb{gap:13px}.qy-premium .breadcrumb b{font-size:18px;font-weight:600;letter-spacing:2px}.qy-premium .breadcrumb small{font-size:7px;color:#8b898b;letter-spacing:1.5px}.qy-premium .breadcrumb .qy-wordmark{font-size:30px}.qy-premium .side-caption{font-size:10px;letter-spacing:1px;color:#77777d;margin:48px 12px 17px}
.qy-premium .nav{gap:7px}.qy-premium .nav button{display:flex;align-items:center;gap:13px;padding:14px;color:#929298;font-size:13px;border-radius:9px;font-weight:500}.qy-premium .nav button.active{background:#2c2821!important;color:#e2c58f!important;box-shadow:inset 2px 0 #d9b778}.qy-premium .nav button:hover{background:#1c1d20}.qy-premium .side-bottom{line-height:1.8}.qy-club-motto{font-size:20px;font-weight:600;color:#bbb8b1;letter-spacing:2px}.qy-premium .side-bottom small{display:block;font-size:8px;letter-spacing:1.5px;margin:16px 0;color:#6c6c72}.qy-premium .side-bottom a{color:#88868a;font-size:10px;text-decoration:none}.qy-premium .top-actions{gap:12px}.qy-premium .top-actions #modeBtn{background:#17181b;border:1px solid #393a3f;border-radius:7px;color:#c9c6c1;padding:8px 12px;min-width:70px}.qy-premium .top-actions .avatar{background:#27282b!important;border:1px solid #44413b;color:#d7bd90!important;width:34px;height:34px;font-size:12px}.qy-notification{border:0!important;background:transparent!important;padding:7px!important;color:#b9b9bd!important}.qy-notification .qy-icon{width:23px;height:23px}
.qy-premium .eyebrow{font-size:9px;font-weight:600;letter-spacing:1.8px;color:#a19177}.qy-premium .sub{font-size:12px;color:#98989e}.qy-premium h2{font-size:17px;font-weight:650;letter-spacing:.3px}.qy-premium .intro h1{font-size:28px}.qy-premium .card{background:linear-gradient(145deg,#1b1c1f,#151619)!important;border-color:#303136!important;border-radius:15px;box-shadow:none}.qy-premium .button{background:linear-gradient(110deg,#efd39a,#c8a365);border:1px solid #c5a064;color:#211c14;border-radius:8px;font-weight:650}.qy-premium .button.outline{background:#ffffff03;border-color:#46433c;color:#dfceae}.qy-premium .button .qy-icon{width:16px;height:16px;margin-left:7px}.qy-premium .link{color:#cbb48d;font-size:11px}.qy-premium .section{margin-top:25px}.qy-premium .section-head{margin-bottom:14px}.qy-premium .chip{background:#29261f;color:#cfb98f;border:1px solid #514633}.qy-premium .notice{background:#1e1d1a;border:1px solid #443c2d;color:#c6bba7}.qy-premium input,.qy-premium select,.qy-premium textarea{background:#121316;border-color:#444248;color:#e8e5df}.qy-premium .modal{background:#18191c;border-color:#46413a}.qy-premium .tabs button.active{background:#d8bc8b;color:#211c15}.qy-premium .pill{border-color:#393733;background:#23221f;color:#c8bca5}.qy-premium .footer-note{color:#62636a;font-size:10px;line-height:2.2}.qy-premium .footer-note a{color:#a29a8b;text-decoration:none}.qy-premium .course-cover{background:linear-gradient(135deg,#39342c,#1c1c20)}.qy-premium .day.today{border-color:#d9b778}.qy-premium .day.selected{background:#383026;box-shadow:none}.qy-premium .stats .stat{background:#191a1d!important;border-color:#333439!important}.qy-premium .stats .stat strong{color:#dfc594!important}
.qy-home-intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.qy-home-intro h1{font-size:28px;font-weight:650;margin:7px 0;letter-spacing:.5px}.qy-home-intro .sub{margin:0}.qy-season{font-size:22px;color:#aaa095;letter-spacing:1px;font-family:Georgia,serif}.qy-season span{display:block;font-family:inherit;font-size:10px;text-align:right;color:#78777a;letter-spacing:2px;margin-top:3px}.qy-dashboard{display:grid;grid-template-columns:minmax(340px,.95fr) minmax(0,1fr);gap:28px;align-items:start}.qy-player-column{min-width:0}.qy-home-content{min-width:0}
.qy-premium .qy-player-card{padding:23px 22px 19px;border:1px solid #4a4132!important;background:radial-gradient(ellipse at 22% 45%,#4d423028,transparent 57%),linear-gradient(135deg,#202023,#121316 68%)!important;overflow:hidden;position:relative;text-align:left;border-radius:17px;isolation:isolate}.qy-player-card:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.4;background:repeating-linear-gradient(133deg,transparent 0 32px,#cdb38308 33px 34px,transparent 35px 37px)}.qy-player-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;position:relative;z-index:2}.qy-player-heading h2{font-size:20px;margin-top:5px;letter-spacing:.6px}.qy-player-heading .eyebrow{font-size:8px;letter-spacing:1.5px;color:#8c8170}.qy-switch{background:#14151970;border:1px solid #575148;color:#d0ccc5;border-radius:7px;display:flex;gap:6px;align-items:center;padding:8px 10px;font-size:10px;white-space:nowrap}.qy-switch .qy-icon{width:14px;height:14px}.qy-player-body{display:grid;grid-template-columns:49% 51%;position:relative;min-height:365px;margin-top:21px}.qy-character{position:relative;min-width:0;margin-left:-28px;margin-right:-10px;align-self:stretch;display:flex;align-items:flex-end;justify-content:center}.qy-character-image{width:118%;height:375px;max-width:none;object-fit:contain;object-position:bottom;position:relative;z-index:2;filter:drop-shadow(0 9px 15px #000b);animation:qy-breathe 6s ease-in-out infinite}.qy-character-halo{position:absolute;inset:11% -5% 0 -10%;background:radial-gradient(ellipse at 50% 55%,#c29d5627,transparent 66%);filter:blur(8px)}.qy-character-number{position:absolute;font-family:Georgia,serif;font-size:140px;font-weight:700;transform:rotate(-11deg);color:#e8dcc40a;top:15%;left:-4%;letter-spacing:-12px}.qy-character-ground{position:absolute;bottom:1px;left:11%;right:0;height:18px;background:#e6c99122;border-radius:50%;filter:blur(10px)}.qy-growth{align-self:center;position:relative;z-index:3;padding:0 0 7px 7px;min-width:0}.qy-player-name{font-size:17px;font-weight:700;display:flex;align-items:center;flex-wrap:wrap;gap:5px}.qy-player-name span{font-size:8px;font-weight:500;color:#ae9c7f;padding:3px 5px;border:1px solid #5a4d37;border-radius:4px}.qy-grade{font-size:10px;color:#919096;margin:4px 0 18px}.qy-level{font-family:Arial,sans-serif;font-size:70px;font-weight:800;letter-spacing:-3px;line-height:.95;color:#e7c58c;white-space:nowrap}.qy-level span{font-size:27px;letter-spacing:0}.qy-xp-label{font-size:12px;font-weight:600;margin-top:24px;color:#ddd7cd}.qy-xp-value{font-size:13px;color:#c2c0bd;margin-top:6px;white-space:nowrap}.qy-xp-value b{font-size:18px;color:#f0ebe1;font-weight:600}.qy-xp-value span{font-size:10px;color:#8c8b90}.qy-xp-bar{margin:10px 0 6px;height:8px;background:#3e3e42}.qy-xp-bar div{background:linear-gradient(90deg,#f1d49e,#d4b375);box-shadow:0 0 9px #ddbb6b44}.qy-xp-next{font-size:9px;color:#817d77;margin:0}.qy-badges{margin-top:23px;padding-top:16px;border-top:1px solid #3a3732}.qy-badges h3{font-size:11px;color:#d0ccc5;font-weight:500;margin-bottom:12px}.qy-badge-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.qy-growth-badge{padding:0;background:none;min-width:0;color:#d5b77f;display:flex;flex-direction:column;align-items:center}.qy-growth-badge .qy-hex{position:relative;display:grid;place-items:center;width:43px;height:47px;background:#aa8c58;clip-path:polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%)}.qy-growth-badge .qy-hex:before{content:'';position:absolute;inset:2px;background:#1e1e20;clip-path:inherit}.qy-growth-badge .qy-icon{position:relative;z-index:1;width:23px;height:23px;stroke-width:1.8}.qy-growth-badge b{font-size:9px;white-space:nowrap;font-weight:500;margin-top:7px;color:#c3b99f}.qy-growth-badge small{font-size:9px;color:#ad9a79;margin-top:3px}.qy-growth-badge.locked{opacity:.46}.qy-growth-badge.earned .qy-hex{background:#e6c888}.qy-growth-badge.earned .qy-hex:before{background:#3b3325}.qy-card-detail{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #38342c;padding:15px 0 13px;font-size:10px;color:#a29a89;margin-top:5px}.qy-card-detail>span{display:flex;align-items:center;gap:5px}.qy-card-detail .qy-icon{width:14px;height:14px}.qy-card-detail button{display:flex;align-items:center;gap:3px;color:#a9a49a;background:transparent;font-size:10px}.qy-premium .qy-growth-button{width:100%;height:48px;display:flex;align-items:center;justify-content:center;position:relative;font-size:14px;letter-spacing:1px;background:linear-gradient(105deg,#edcf94,#ccaa6e 88%);box-shadow:inset 0 1px #f7e4b9}.qy-growth-button .qy-icon{position:absolute;right:16px;width:20px!important;height:20px!important}.qy-add-child{display:block;margin:13px auto 0;font-size:10px;color:#a99b82;background:transparent}.qy-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #303035;border-radius:13px;margin-top:17px;padding:19px 0;background:#17181b}.qy-stats>div{text-align:center;border-right:1px solid #343237}.qy-stats>div:last-child{border:0}.qy-stats strong{display:block;font-size:24px;color:#dbcfbb;font-family:Arial,sans-serif}.qy-stats small{font-size:11px;font-weight:400;color:#8c8780}.qy-stats span{display:block;font-size:10px;color:#87858b;margin-top:6px}
.qy-next-training{position:relative;overflow:hidden;min-height:234px;border:1px solid #3f3c35;border-radius:15px;background:radial-gradient(ellipse at 100% 20%,#6f624029,transparent 55%),#1c1d20;padding:24px}.qy-next-copy{position:relative;z-index:2}.qy-next-training h2{font-size:27px;line-height:1.4;margin:13px 0 15px;font-weight:650;letter-spacing:.5px}.qy-next-training p{font-size:12px;margin:0;color:#d2c4a9}.qy-next-training p span{font-size:9px;color:#8d8475}.qy-next-training .sub{font-size:10px;margin-top:2px;color:#9c9994}.qy-next-training .button{margin-top:17px;padding:9px 12px;font-size:10px}.qy-diamond{position:absolute;width:150px;height:150px;border:1px solid #c7ad7455;transform:rotate(45deg);right:-5px;bottom:20px;border-radius:3px;box-shadow:0 0 0 25px #a18e6110,0 0 0 50px #a18e6107;background:linear-gradient(135deg,#c3ae7911,#c3ae7903)}.qy-diamond:before{content:'';position:absolute;inset:35px;border:1px solid #c6b47d55}.qy-diamond span{position:absolute;inset:67px;border-radius:50%;background:#cbb7844a}.qy-diamond:after{content:'';position:absolute;width:7px;height:7px;background:#c5ae7c;left:32px;top:32px;box-shadow:77px 0 #c5ae7c,0 77px #c5ae7c,77px 77px #c5ae7c}.qy-premium .qy-task-card,.qy-premium .qy-events{padding:6px 20px}.qy-mission{padding:15px 0;margin:0;border-bottom:1px solid #2c2d31;gap:12px}.qy-mission:last-child{border-bottom:0}.qy-mission-icon{width:35px;height:35px;background:#2a2927;color:#bba581;border:1px solid #454037;border-radius:9px;display:grid;place-items:center;flex-shrink:0}.qy-mission-icon .qy-icon{width:19px;height:19px}.qy-mission h3{font-size:12px;margin:0 0 2px}.qy-mission .sub{font-size:10px;margin:0;color:#8e8678}.qy-task-start{padding:6px;color:#9d9079;background:none}.qy-task-start .qy-icon{width:17px;height:17px}.qy-task-done{display:flex;align-items:center;gap:3px;font-size:10px;color:#c4b18d;white-space:nowrap}.qy-task-done .qy-icon{width:14px;height:14px}.qy-premium .qy-events .event{gap:12px;padding:17px 0}.qy-events .date{background:#242424;border:1px solid #494138;border-radius:7px;padding:5px;min-width:43px;color:#d5c3a1}.qy-events .date small{font-size:8px;color:#8d8474;letter-spacing:1px}.qy-events .date b{font-size:19px;font-family:Arial,sans-serif;font-weight:500}.qy-events .event-body h3{font-size:12px;font-weight:600}.qy-events .event-body p{font-size:9px;line-height:1.8;color:#85838a}.qy-event-link{background:transparent;color:#9b8a6f;padding:5px}.qy-event-link .qy-icon{width:17px;height:17px}.qy-registration{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:22px 24px;background:#18191b;border:1px solid #323236;border-radius:12px}.qy-registration>div{display:flex;align-items:center;gap:13px}.qy-registration-icon{display:grid;place-items:center;width:40px;height:40px;color:#bfa77e;border:1px solid #494238;border-radius:50%}.qy-registration b{font-size:12px;color:#c4c0b8;font-weight:500}.qy-registration small{display:block;font-size:10px;color:#7d7c83;margin-top:6px}.qy-registration .button{font-size:10px;white-space:nowrap;padding:10px 13px}
.qy-player-page{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1fr);gap:28px;align-items:start}.qy-premium .locker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.qy-premium .equipment{border-color:#3b3934;box-shadow:none!important;background:#191a1d;border-radius:12px}.qy-premium .equipment-art{animation:none!important;background:radial-gradient(ellipse at 50% 60%,#51412d55,#1c1d20 70%)!important;text-shadow:none!important;height:98px;font-size:42px}.qy-premium .equipment.qy-equipped{border-color:#a68d5b;box-shadow:inset 0 0 0 1px #d7b47d22!important}.qy-premium .equipment-body{padding:13px}.qy-premium .equipment .button{font-size:11px}.qy-premium .equipment small{font-size:10px}.qy-locker-note{margin:0 0 17px}.qy-small-note{font-size:9px;color:#7b7873;line-height:1.7;margin:15px 0 0}.qy-premium .qy-equipment-preview{height:260px;border-radius:12px;background:radial-gradient(ellipse,#5c4d3140,transparent 60%);margin:15px 0}.qy-equipment-preview svg{height:240px}.qy-equipped-list>div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid #323236;font-size:11px}.qy-equipped-list span{color:#88868d}.qy-equipped-list b{font-weight:500;color:#c8b48e}.qy-child-option{width:100%;display:flex;align-items:center;gap:12px;background:#202125;color:#dedbd4;border:1px solid #38383d;border-radius:10px;padding:13px;text-align:left;margin-top:12px}.qy-child-option.selected{border-color:#b49763}.qy-child-option>span:nth-child(2){flex:1}.qy-child-option small{display:block;font-size:10px;color:#969199;margin-top:5px}.qy-child-initial{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#494030;color:#e1c58f}.qy-record-total{margin-top:24px;padding:20px;border:1px solid #4a4030;border-radius:10px;background:#27231d}.qy-record-total span{display:block;font-size:11px;color:#b6a386}.qy-record-total strong{display:block;font-size:34px;color:#e9cc93;margin-top:6px}.qy-record-total small{font-size:13px;font-weight:400}.qy-gold{color:#d9b778;font-size:11px;white-space:nowrap}.qy-record-icon{color:#bfa373}.qy-demo-note{font-size:11px!important;color:#b9a482!important}.qy-welcome-card{text-align:center}.qy-welcome-card img{object-fit:contain}.qy-scene-moonfield .qy-character-halo{background:radial-gradient(ellipse,#919eb429,transparent 65%)}.qy-scene-skyisland .qy-character-halo{background:radial-gradient(ellipse,#a3c5b733,transparent 65%)}.qy-scene-galaxypark .qy-character-halo{background:radial-gradient(ellipse,#b4a5cd33,transparent 65%)}.qy-effect-glow .qy-character-image{filter:drop-shadow(0 0 14px #d9b77866)}.qy-effect-stars .qy-character:after,.qy-effect-aurora .qy-character:after{content:'✧';position:absolute;left:13%;top:36%;font-size:23px;color:#e2bf80;text-shadow:65px -47px 0 #d5b77b88,133px 124px 0 #d5b77b66;animation:qy-twinkle 4s ease-in-out infinite;z-index:3}.qy-effect-aurora .qy-character-halo{background:radial-gradient(ellipse,#979dba44,transparent 65%)}
@keyframes qy-breathe{50%{transform:translateY(-4px)}}@keyframes qy-twinkle{50%{opacity:.35}}
@media(min-width:1350px){.qy-premium main{padding:30px 50px}.qy-dashboard{grid-template-columns:minmax(420px,1fr) minmax(0,1fr)}.qy-player-body{min-height:395px}.qy-character-image{height:405px}.qy-level{font-size:78px}.qy-growth{padding-left:14px}.qy-premium .qy-player-card{padding:25px}.qy-badges{margin-top:27px}.qy-growth-badge .qy-hex{width:49px;height:54px}.qy-growth-badge b{font-size:10px}.qy-next-training{min-height:248px}}
@media(max-width:1150px) and (min-width:761px){.qy-premium .layout{grid-template-columns:180px minmax(0,1fr)}.qy-premium main{padding:23px}.qy-premium .sidebar{padding:30px 16px}.qy-dashboard,.qy-player-page{grid-template-columns:minmax(300px,1fr) minmax(0,.9fr);gap:18px}.qy-premium .qy-player-card{padding:20px 15px 16px}.qy-character-image{height:340px}.qy-player-body{min-height:340px;grid-template-columns:47% 53%}.qy-level{font-size:58px}.qy-growth{padding-left:0}.qy-growth-badge .qy-hex{width:37px;height:41px}.qy-growth-badge b{font-size:8px}.qy-player-heading h2{font-size:17px}.qy-player-heading .eyebrow{font-size:7px}.qy-switch{padding:7px;font-size:9px}.qy-next-training{padding:20px;min-height:225px}.qy-next-training h2{font-size:23px}.qy-diamond{right:-70px}.qy-registration{padding:18px}.qy-registration>div b{font-size:11px}.qy-registration small{font-size:9px}.qy-player-page .locker-grid{gap:9px}.qy-premium .equipment-body{padding:10px}.qy-premium .equipment h3{font-size:11px}.qy-events .event-body h3{font-size:11px}.qy-task-card .task-body h3{font-size:11px}}
@media(max-width:920px) and (min-width:761px){.qy-dashboard,.qy-player-page{grid-template-columns:1fr}.qy-dashboard .qy-player-column{display:grid;grid-template-columns:1fr 115px;gap:16px}.qy-stats{display:flex;flex-direction:column;justify-content:space-around;margin:0}.qy-stats>div{border:0}.qy-registration{flex-wrap:wrap}.qy-player-body{grid-template-columns:50% 50%}.qy-character-image{height:350px}.qy-player-heading h2{font-size:20px}.qy-level{font-size:70px}.qy-growth{padding-right:20px}.qy-growth-badge .qy-hex{width:43px;height:47px}}
@media(max-width:760px){.qy-premium .layout{display:block}.qy-premium main{padding:0 17px 96px}.qy-premium .topbar{min-height:70px;padding:18px 0 15px;margin-bottom:22px;gap:10px}.qy-premium .mobile-brand{display:flex;gap:10px;align-items:center;font-size:17px;letter-spacing:1px;font-weight:500}.qy-premium .mobile-brand .qy-wordmark{font-size:31px}.qy-premium .top-actions{gap:9px}.qy-premium .top-actions #modeBtn{font-size:10px;padding:7px 9px;min-width:59px}.qy-premium .top-actions .avatar{height:28px;width:28px;font-size:10px}.qy-notification .qy-icon{height:21px;width:21px}.qy-premium .top-actions .mode[aria-label="查看通知"]{display:inline-flex}.qy-home-intro{margin-bottom:20px}.qy-home-intro h1{font-size:23px;margin:8px 0 6px}.qy-home-intro .eyebrow{font-size:8px;letter-spacing:1.5px}.qy-home-intro .sub{font-size:11px}.qy-season{font-size:19px}.qy-season span{font-size:8px}.qy-dashboard,.qy-player-page{display:grid;grid-template-columns:1fr;gap:25px}.qy-premium .qy-player-card{padding:20px 17px 17px;border-radius:16px}.qy-player-heading h2{font-size:20px}.qy-switch{padding:8px 9px;font-size:10px}.qy-player-body{grid-template-columns:49% 51%;min-height:345px;margin-top:16px}.qy-character{margin-left:-28px;margin-right:-12px}.qy-character-image{height:351px;width:123%;object-fit:contain}.qy-growth{padding:0 0 6px 2px}.qy-player-name{font-size:15px;gap:5px}.qy-player-name span{font-size:7px;padding:3px 4px}.qy-grade{font-size:9px;margin:4px 0 18px}.qy-level{font-size:65px}.qy-level span{font-size:26px}.qy-xp-label{margin-top:21px;font-size:11px}.qy-xp-value{font-size:12px}.qy-xp-value b{font-size:17px}.qy-badges{margin-top:21px;padding-top:14px}.qy-badges h3{font-size:10px;margin-bottom:11px}.qy-badge-row{gap:4px}.qy-growth-badge .qy-hex{width:40px;height:45px}.qy-growth-badge b{font-size:8px}.qy-growth-badge small{font-size:8px}.qy-growth-badge .qy-icon{height:22px;width:22px}.qy-xp-next{font-size:8px}.qy-card-detail{margin-top:0;font-size:9px;padding:13px 0}.qy-card-detail button{font-size:9px}.qy-premium .qy-growth-button{height:46px;font-size:13px}.qy-stats{margin-top:14px;padding:16px 0}.qy-stats strong{font-size:23px}.qy-stats span{font-size:9px}.qy-next-training{min-height:220px;padding:22px}.qy-next-training h2{font-size:25px;margin:12px 0}.qy-diamond{right:-3px;bottom:20px;opacity:.8}.qy-registration{display:block;margin-top:25px;padding:20px}.qy-registration .button{margin-top:16px;width:100%;display:flex;justify-content:center;align-items:center}.qy-registration b{font-size:11px}.qy-registration small{font-size:9px}.qy-premium .bottomnav{background:#121316f5;border-top:1px solid #3a3630;padding:10px 3px max(12px,env(safe-area-inset-bottom));gap:0;backdrop-filter:blur(15px)}.qy-premium .bottomnav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#83838a;font-size:9px;padding:2px 0;border-radius:0;min-height:40px;background:transparent!important}.qy-premium .bottomnav button .qy-icon{width:21px;height:21px}.qy-premium .bottomnav button.active{background:transparent!important;color:#e1bf83!important}.qy-premium .bottomnav button.active .qy-icon{stroke-width:2.2;filter:drop-shadow(0 0 6px #e4bf7b22)}.qy-premium .intro{margin-bottom:22px}.qy-premium .intro h1{font-size:23px}.qy-premium .intro .sub{font-size:11px}.qy-premium .equipment-art{height:105px}.qy-premium .locker-grid{gap:12px}.qy-premium .equipment-body{padding:13px}.qy-premium .footer-note{font-size:9px;margin-top:28px}.qy-player-page #qyMissions{scroll-margin-top:20px}.qy-player-page #qyLocker{scroll-margin-top:20px}.qy-premium .install-tip{background:#1b1c1ff5;border-color:#5c503c}.qy-premium .role-menu{background:#1b1c1f;border-color:#5c503c}.qy-premium .role-menu button.active{background:#d8bc8b}.qy-premium .modal-actions{flex-wrap:wrap}.qy-premium .modal-actions .button{font-size:12px}.qy-premium .calendar-classic .day{min-height:55px}}
@media(max-width:360px){.qy-premium main{padding-left:12px;padding-right:12px}.qy-premium .top-actions{gap:5px}.qy-premium .mobile-brand{gap:7px}.qy-premium .qy-player-card{padding:18px 13px 14px}.qy-player-body{min-height:325px;grid-template-columns:47% 53%}.qy-character-image{height:325px}.qy-level{font-size:60px}.qy-level span{font-size:23px}.qy-growth-badge .qy-hex{width:37px;height:41px}.qy-growth-badge b{font-size:8px}.qy-player-heading h2{font-size:18px}.qy-switch{font-size:9px;padding:7px}.qy-grade{margin-bottom:15px}.qy-xp-label{margin-top:17px}}
@media(prefers-reduced-motion:reduce){.qy-premium *{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Reference-led app layout: dark club chrome, warm paper, compact everyday cards.
   This layer only changes presentation; all role and record logic stays upstream. */
body.qy-premium,body.qy-premium[data-view]{--paper:#f3f0e9;--panel:#fffefa;--panel-2:#eee9df;--soft:#f0ebe1;--line:#e5dfd4;--lime:#ba8b3e;--gold:#b68b45;--ink:#26251f;--muted:#78756d;--silver:#786446;background:#eeebe4;color:var(--ink)}
.qy-premium .layout{max-width:1440px;min-height:100dvh;background:#f3f0e9}
.qy-premium main{padding:0 34px 36px;min-width:0}
.qy-premium .sidebar{background:#161718!important;color:#f2eee5;border-color:#292a2b!important}
.qy-premium .logo b,.qy-premium .breadcrumb b,.qy-premium .mobile-brand{color:#f7f3e9}
.qy-premium .logo .qy-wordmark,.qy-premium .breadcrumb .qy-wordmark,.qy-premium .mobile-brand .qy-wordmark{color:#dfba73}
.qy-premium .topbar{min-height:90px;margin:0 -34px 27px;padding:19px 34px;background:#161718;border-bottom:1px solid #2f2e2b;align-items:center}
.qy-premium .top-actions #modeBtn{background:#222324;border-color:#49463f;color:#eadfc9;min-height:35px}
.qy-premium .top-actions .avatar{display:grid;color:#dec18d!important;cursor:pointer}
.qy-premium .qy-notification{color:#d3b372!important}
.qy-premium .nav button{color:#a5a39e}.qy-premium .nav button.active{background:#302a20!important;color:#e5c38b!important}
.qy-premium .card{background:#fffefa!important;border:1px solid #e6dfd3!important;box-shadow:0 3px 10px #3d332405;border-radius:14px}
.qy-premium .sub{color:#79766e}.qy-premium .eyebrow{color:#97825e}
.qy-premium .button{background:linear-gradient(115deg,#f1d497,#d9b26e);border-color:#d7b06a;color:#322714;min-height:39px}
.qy-premium .button.outline{background:#fffefa;border-color:#d4c5a9;color:#7f602b}
.qy-premium .link{color:#896b36}.qy-premium .button:disabled{opacity:.48}
.qy-premium .chip,.qy-premium .pill{background:#f5eddb;color:#82632e;border-color:#e6d5b4}
.qy-premium .notice{background:#ede7da;border-color:#ddd1bd;color:#6d604b;font-size:11px;line-height:1.7}
.qy-premium [data-membership-source]{padding:10px 14px;margin-bottom:22px;border-radius:9px}
.qy-premium [data-membership-source] .link{display:inline-block;margin-left:7px;font-weight:600}
.qy-premium .modal,.qy-premium .role-menu{background:#fffdf8;border-color:#ded2bb;color:#29271f}
.qy-premium input,.qy-premium select,.qy-premium textarea{background:#fffefa;border-color:#d8d1c6;color:#29271f}
.qy-premium input::placeholder,.qy-premium textarea::placeholder{color:#999389}
.qy-premium .tabs button{color:#726b60;background:#eee8dc}.qy-premium .tabs button.active{background:#d8b575;color:#312718}
.qy-premium .status-box,.qy-premium .receipt{background:#f1ede5;border-color:#ded6c7;color:#6d665b}
.qy-premium .status-box.ok{background:#edf3e9;border-color:#cfddc7;color:#55704b}
.qy-premium .status-box.bad{background:#faeeea;border-color:#e3c5ba;color:#975445}
.qy-premium .step-line span{background:#ebe7de;color:#928a7e}.qy-premium .step-line .done{background:#e5eddf;color:#5b7350}.qy-premium .step-line .current{background:#ead9b8;color:#77582e}
.qy-premium .stats .stat{background:#fffefa!important;border-color:#e4dbce!important}.qy-premium .stats .stat strong{color:#98733b!important}
.qy-premium .course-cover{background:linear-gradient(120deg,#343631,#191d1c);color:#f8f1e1}.qy-premium .course-cover .pill{background:#302c23;color:#e0c48c;border-color:#615139}
.qy-premium .course-card .course-content{color:#2b2923}.qy-premium .price{color:#3c3529}
.qy-premium .day.selected{background:#eadbbd;color:#5c4828}.qy-premium .day.today{border-color:#be9658}
.qy-premium .quick,.qy-premium .task-state{background:#f3eddf;border-color:#e2d7c3;color:#61513b}
.qy-premium .channel.active{background:#f0e5cf;border-color:#dfcaa3}.qy-premium .bubble{background:#eee9df;color:#343029}.qy-premium .mine .bubble{background:#e6c88f;color:#382d1d}
.qy-premium .chat-type{color:#8e7957}.qy-premium .chat-header,.qy-premium .chat-compose,.qy-premium .chat-channels{border-color:#e5ded1}
.qy-premium .text-button{color:#826536}.qy-premium .danger{color:#a25246}.qy-premium .completion{color:#537344}.qy-premium .empty{color:#7d7567}
.qy-premium .reward-banner{background:#f3e8d2;border-color:#dfcba6}.qy-premium .level-chip{background:#f0e1c4;color:#7b5e2f;border-color:#d9bf8c}
.qy-premium .equipment{background:#fffefa;border-color:#e0d8c9}.qy-premium .equipment-art{background:radial-gradient(ellipse at 50% 60%,#e8decb,#f8f4ec 75%)!important}
.qy-premium .equipment.qy-equipped{border-color:#b79151;box-shadow:inset 0 0 0 1px #d9bd8922!important}.qy-premium .rarity{color:#947445}
.qy-premium .qy-small-note{color:#887f70}.qy-premium .qy-child-option{background:#f7f2e8;color:#3e382d;border-color:#e3d6c0}.qy-premium .qy-child-option.selected{border-color:#bc975a}
.qy-premium .qy-child-option small{color:#8b806e}.qy-premium .qy-child-initial{background:#ead8b4;color:#806234}
.qy-premium .qy-record-total{background:#f3ead6;border-color:#e3d0a8}.qy-premium .qy-record-total strong{color:#89662e}.qy-premium .qy-record-total span{color:#857353}.qy-premium .qy-gold{color:#a67f40}
.qy-premium .qy-equipped-list>div{border-color:#e3dbcc}.qy-premium .qy-equipped-list b{color:#816132}.qy-premium .qy-equipped-list span{color:#8e8371}
.qy-premium .footer-note{color:#9b9488}.qy-premium .footer-note a{color:#8c7a5e}
.qy-premium .install-tip{background:#fffdf6;border-color:#d9c396;color:#4f4535;box-shadow:0 10px 40px #1e1b1520}
/* The interactive 3D stage keeps its own dark palette and existing controls. */
.qy-premium .qy-3d-card,.qy-premium .qy-3d-admin-card,.qy-premium .qy-player-card{--ink:#f3f0e9;--muted:#aaa398;color:#f3f0e9;background:linear-gradient(145deg,#282925,#171a1b)!important;border-color:#4b4638!important}
.qy-premium .qy-3d-card .sub,.qy-premium .qy-3d-admin-card .sub{color:#aaa398}
.qy-premium .qy-3d-card .eyebrow{color:#c8ab74}.qy-premium .qy-3d-card .qy-small-note{color:#a69b85}
.qy-premium .qy-3d-card .button.outline,.qy-premium .qy-3d-admin-card .button.outline{background:#2b2a24;border-color:#756447;color:#d9c496}
.qy-premium .qy-3d-card .chip{background:#322c21;color:#ddc58e;border-color:#67583a}
/* Home follows a single reading order on phones. */
.qy-home-intro{margin-bottom:23px;gap:15px}.qy-home-intro h1{font-size:27px;letter-spacing:.2px;margin:7px 0}.qy-home-intro .sub{font-size:13px}
.qy-home-child{display:flex;align-items:center;gap:8px;border:1px solid #ded1b9;background:#fbf7ee;color:#8c754d;border-radius:20px;padding:9px 12px;white-space:nowrap;font-size:11px}.qy-home-child svg{height:14px;width:14px}
.qy-home-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.8fr);gap:24px;align-items:start}.qy-home-primary,.qy-home-secondary{min-width:0}
.qy-home-hero{min-height:263px;border-radius:15px;overflow:hidden;position:relative;isolation:isolate;background:radial-gradient(ellipse at 100% 20%,#b68b4526,transparent 60%),linear-gradient(115deg,#28241c,#141414 60%,#30291e);padding:29px;color:#fff9e8;box-shadow:inset 0 0 0 1px #ffffef13}
.qy-home-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(115deg,transparent 0 55px,#f1e7c606 56px 58px,transparent 59px 110px)}
.qy-hero-copy{position:relative;z-index:2;max-width:71%}.qy-home-hero .eyebrow{font-size:8px;letter-spacing:1.65px;color:#b7b99c}.qy-home-hero h2{font-size:31px;line-height:1.35;letter-spacing:1px;margin:20px 0 11px;color:#fff9e9}
.qy-home-hero p{font-size:11px;color:#d1c7b4;margin:0}.qy-home-hero button{display:flex;align-items:center;gap:12px;color:#e8cd97;background:transparent;padding:0;margin-top:23px;font-size:11px}.qy-home-hero button svg{width:15px;height:15px}
.qy-hero-art{position:absolute;inset:0;pointer-events:none;z-index:1}.qy-field-diamond{position:absolute;width:205px;height:205px;border:1px solid #c4bb923d;transform:rotate(45deg);right:-2px;bottom:-28px;background:#b2b38108;box-shadow:0 0 0 35px #c4bb9207,0 0 0 70px #c4bb9204}
.qy-field-diamond:after{content:'';position:absolute;inset:50px;border:1px solid #c4bb9233}.qy-hero-ball{position:absolute;right:33px;bottom:40px;width:85px;height:85px;border-radius:50%;background:radial-gradient(circle at 30% 24%,#fffdf0,#ddd2af 65%,#a69b78);box-shadow:12px 21px 20px #0005;transform:rotate(-20deg);display:grid;place-items:center;color:#927443}.qy-hero-ball svg{width:78px;height:78px;stroke-width:.65}
.qy-hero-bat{position:absolute;right:79px;bottom:20px;width:19px;height:178px;border-radius:15px 15px 6px 6px;background:linear-gradient(90deg,#9a743e,#d8b77c 45%,#b38d53);transform:rotate(35deg);box-shadow:7px 12px 15px #0004}.qy-hero-bat:after{content:'';position:absolute;width:9px;height:57px;background:repeating-linear-gradient(0deg,#252b24 0 3px,#434638 4px 6px);bottom:-4px;left:5px;border-radius:0 0 4px 4px}
.qy-hero-stamp{position:absolute;right:33px;top:24px;color:#d7bb8427;font-size:47px;font-family:Georgia,serif;font-weight:bold;letter-spacing:-5px}
.qy-premium .qy-home-course{display:flex;align-items:center;gap:15px;padding:19px 20px;margin-top:15px}.qy-home-course-icon{color:#b39052}.qy-home-course-icon svg{width:28px;height:28px}.qy-home-course>div{flex:1;min-width:0}.qy-home-course small{font-size:9px;color:#a18f70}.qy-home-course h2{font-size:15px;margin:3px 0 4px}.qy-home-course p{color:#8d8373;font-size:11px;margin:0}.qy-home-course .button{font-size:11px;padding:9px 12px;white-space:nowrap}.qy-home-course .button svg{height:13px;width:13px;margin-left:5px}
.qy-home-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:13px 0}.qy-premium .qy-metric{display:flex;align-items:center;text-align:left;padding:16px 18px;gap:12px;min-width:0;color:#302b23}.qy-metric-icon{color:#b99555;display:flex}.qy-metric-icon svg{width:29px;height:29px}.qy-metric>span:nth-child(2){flex:1}.qy-metric small{font-size:10px;color:#8b8170;display:block}.qy-metric strong{display:block;font-size:25px;line-height:1.2;margin-top:3px;font-family:Arial,sans-serif;font-weight:650}.qy-metric em{font-size:10px;font-weight:400;font-style:normal;margin-left:5px;color:#968a76}.qy-metric>.qy-icon{width:13px;height:13px;color:#b5aa97}
.qy-premium .qy-home-tasks{padding:21px 22px}.qy-home-tasks .section-head{margin-bottom:13px}.qy-home-tasks .section-head h2{font-size:15px}.qy-home-tasks .section-head .sub{font-size:10px;margin:4px 0 0;color:#9b8f7a}.qy-home-tasks .link{display:flex;align-items:center;gap:2px;font-size:10px}.qy-home-tasks .link svg{height:12px;width:12px}
.qy-home-progress{height:4px;margin:0 0 3px;background:#eae4d9}.qy-home-progress>div{background:linear-gradient(90deg,#d3ad64,#ead2a0)}
.qy-premium .qy-mission{padding:15px 0;gap:12px;border-color:#ece6dc}.qy-premium .qy-mission-icon{background:#f5eddc;color:#ad894b;border-color:#e8d8b9;width:36px;height:36px}.qy-premium .qy-mission h3{font-size:12px;color:#454034}.qy-premium .qy-mission .sub{font-size:11px;color:#b08a49;margin-top:3px}.qy-premium .qy-task-start{min-height:36px;min-width:30px;color:#a58b5e}.qy-premium .qy-task-done{color:#71815b}
.qy-home-links{padding:23px!important}.qy-home-links .section-head{margin-bottom:5px}.qy-home-links h2{margin-top:7px;font-size:18px}.qy-home-links>button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:19px 0;border-bottom:1px solid #eee7db;background:transparent;color:#474033}.qy-home-links>button:last-child{border:0;padding-bottom:2px}.qy-link-icon{color:#b08a4b;display:grid;place-items:center;flex-shrink:0;width:32px;height:32px}.qy-home-links>button>span:nth-child(2){flex:1}.qy-home-links b{font-size:12px;font-weight:600;display:block}.qy-home-links small{font-size:10px;color:#9b8e7a;display:block;margin-top:5px}.qy-home-links>button>.qy-icon{width:14px;height:14px;color:#a48f69}
.qy-premium .qy-home-membership{padding:24px;margin-top:17px;background:#f6efe0!important;border-color:#e8d8bb!important}.qy-home-membership .qy-link-icon{width:37px;height:37px;border:1px solid #ddc69b;border-radius:50%;margin-bottom:16px}.qy-home-membership h2{font-size:16px}.qy-home-membership p{font-size:11px;color:#97876b;line-height:1.8;margin:9px 0 19px}.qy-home-membership .button{font-size:11px;width:100%;padding:11px 9px;background:#fcf9f1!important}.qy-home-membership .button svg{width:13px;height:13px;margin-left:4px}
.qy-home-motto{text-align:center;padding:36px 10px 12px;color:#ac9a77}.qy-home-motto .qy-wordmark{font-size:40px;opacity:.65}.qy-home-motto p{font-size:11px;letter-spacing:2px;margin:14px 0 9px}.qy-home-motto small{font-size:7px;letter-spacing:1.5px;color:#b4a68c}
@media(min-width:1350px){.qy-premium main{padding:0 45px 40px}.qy-premium .topbar{margin-left:-45px;margin-right:-45px;padding-left:45px;padding-right:45px}.qy-home-hero{min-height:280px;padding:32px}.qy-home-hero h2{font-size:34px}.qy-home-grid{gap:28px}}
@media(max-width:1100px) and (min-width:761px){.qy-premium main{padding:0 24px 36px}.qy-premium .topbar{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.qy-home-grid{grid-template-columns:1fr}.qy-home-secondary{display:grid;grid-template-columns:1fr 1fr;gap:16px}.qy-home-membership{margin-top:0!important}.qy-home-motto{display:none}.qy-home-hero{min-height:245px}}
@media(max-width:760px){
 .qy-premium main{padding:0 14px 95px}.qy-premium .topbar{min-height:65px;padding:14px 17px;margin:0 -14px 14px;gap:8px;align-items:center}.qy-premium .mobile-brand{font-size:17px;gap:9px;white-space:nowrap}.qy-premium .mobile-brand .qy-wordmark{font-size:30px}.qy-premium .top-actions{flex-wrap:nowrap;max-width:none;gap:7px}.qy-premium .top-actions #modeBtn{font-size:10px;min-height:29px;padding:5px 8px;min-width:50px}.qy-premium .top-actions .avatar{display:none}.qy-premium .qy-notification{padding:5px!important}.qy-premium .qy-notification .qy-icon{width:21px;height:21px}
 .qy-premium [data-membership-source]{font-size:9px;line-height:1.65;padding:8px 10px;margin-bottom:16px}.qy-premium [data-membership-source] .link{margin-left:0;display:block;font-size:9px}
 .qy-home-intro{margin:0 3px 16px;gap:8px}.qy-home-intro .eyebrow{display:none}.qy-home-intro h1{font-size:21px;margin:0 0 5px}.qy-home-intro .sub{font-size:10px}.qy-home-child{padding:7px 9px;font-size:9px;gap:5px}.qy-home-child svg{width:12px;height:12px}
 .qy-home-grid{display:block}.qy-home-hero{min-height:192px;padding:20px;border-radius:12px}.qy-hero-copy{max-width:73%}.qy-home-hero .eyebrow{font-size:6px;letter-spacing:1px}.qy-home-hero h2{font-size:25px;margin:13px 0 8px;line-height:1.3;letter-spacing:.5px}.qy-home-hero p{font-size:9px}.qy-home-hero button{font-size:9px;margin-top:17px;gap:7px}.qy-home-hero button svg{width:12px;height:12px}.qy-field-diamond{width:145px;height:145px;bottom:-25px;right:-2px}.qy-field-diamond:after{inset:34px}.qy-hero-ball{width:67px;height:67px;right:22px;bottom:32px}.qy-hero-ball svg{width:61px;height:61px}.qy-hero-bat{height:137px;right:60px;bottom:14px;width:15px}.qy-hero-bat:after{width:7px;left:4px;height:42px}.qy-hero-stamp{font-size:37px;right:26px;top:18px}
 .qy-premium .qy-home-course{padding:13px 12px;gap:10px;margin-top:10px;border-radius:11px}.qy-home-course-icon svg{width:24px;height:24px}.qy-home-course small{font-size:8px}.qy-home-course h2{font-size:13px;margin:3px 0}.qy-home-course p{font-size:9px}.qy-home-course .button{font-size:10px;padding:8px 9px;min-height:35px;border-radius:9px}.qy-home-course .button svg{margin-left:2px;width:11px;height:11px}
 .qy-home-metrics{gap:9px;margin:10px 0}.qy-premium .qy-metric{padding:13px 12px;gap:9px;border-radius:11px}.qy-metric-icon svg{height:25px;width:25px}.qy-metric small{font-size:9px}.qy-metric strong{font-size:23px}.qy-metric em{font-size:9px;margin-left:4px}.qy-metric>.qy-icon{height:11px;width:11px}
 .qy-premium .qy-home-tasks{padding:17px 15px;border-radius:12px}.qy-home-tasks .section-head{margin-bottom:11px}.qy-home-tasks .section-head h2{font-size:14px}.qy-home-tasks .section-head .sub{font-size:9px}.qy-home-tasks .link{font-size:9px}.qy-premium .qy-mission{padding:13px 0;gap:10px}.qy-premium .qy-mission h3{font-size:11px}.qy-premium .qy-mission .sub{font-size:10px}.qy-premium .qy-mission-icon{width:32px;height:32px}.qy-mission-icon .qy-icon{height:18px;width:18px}
 .qy-home-secondary{display:block;margin-top:15px}.qy-home-links{padding:19px!important}.qy-home-links .section-head{margin-bottom:0}.qy-home-links .eyebrow{font-size:7px}.qy-home-links h2{font-size:16px;margin-top:5px}.qy-home-links>button{padding:15px 0}.qy-home-links b{font-size:11px}.qy-home-links small{font-size:9px}.qy-premium .qy-home-membership{padding:19px;margin-top:13px}.qy-home-membership .qy-link-icon{float:left;margin:0 11px 15px 0;width:34px;height:34px}.qy-home-membership h2{font-size:14px;margin-top:2px}.qy-home-membership p{font-size:10px;margin:5px 0 15px}.qy-home-membership .button{clear:both;min-height:40px}.qy-home-motto{display:none}
 .qy-premium .bottomnav{background:#171819;border-top:1px solid #38352f;padding:9px 6px max(11px,env(safe-area-inset-bottom));gap:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));box-shadow:0 -3px 12px #1916090b;backdrop-filter:none}.qy-premium .bottomnav button{font-size:10px;min-height:42px;gap:5px;color:#9f9e99;position:relative}.qy-premium .bottomnav button .qy-icon{height:21px;width:21px}.qy-premium .bottomnav button.active{color:#e6c07b!important}.qy-premium .bottomnav button.active:after{content:'';position:absolute;bottom:-7px;width:22px;height:2px;background:#d8b16a;border-radius:2px}
 .qy-premium .intro h1{font-size:23px}.qy-premium .footer-note{font-size:9px;margin-top:22px}.qy-premium .modal{padding:23px 20px}.qy-premium .role-menu{background:#fffdf7}.qy-premium .role-menu button{color:#594e3b}.qy-premium .role-menu button.active{background:#e8c992;color:#49391f}
}
@media(max-width:360px){.qy-premium main{padding-left:11px;padding-right:11px}.qy-premium .topbar{margin-left:-11px;margin-right:-11px;padding-left:14px;padding-right:14px}.qy-home-intro h1{font-size:19px}.qy-home-hero{padding:18px;min-height:185px}.qy-home-hero h2{font-size:23px}.qy-home-hero p{font-size:8px}.qy-home-hero .eyebrow{font-size:5px}.qy-home-course .button{font-size:9px;padding:7px}.qy-home-course h2{font-size:12px}.qy-home-course-icon svg{width:21px;height:21px}.qy-premium .qy-metric{padding:12px 10px;gap:7px}.qy-metric-icon svg{height:22px;width:22px}.qy-metric small{font-size:8px}.qy-premium .qy-home-tasks{padding:16px 13px}.qy-premium .top-actions{gap:5px}}
/* Keep inherited service-station icons legible on the light cards. */
.qy-premium .task-icon{background:#f3ead7;color:#a2824c;border:1px solid #e5d7bd}.qy-premium .event .date{background:#f1e7d3;color:#8e6a35;border:1px solid #e0ccaa}.qy-premium .event .date small{color:#9b8563}

/* Calendar owns its colors: do not inherit the legacy dark .day surface. */
.qy-premium .calendar-redesign{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;max-width:980px;margin:0 auto}
.qy-premium .calendar-redesign .card{min-width:0;padding:24px}
.qy-premium .calendar-month-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}
.qy-premium .calendar-season{display:block;color:#655a47;font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.6px;margin-bottom:5px}
.qy-premium #calendarMonthTitle{color:#26251f;font-size:30px;line-height:1.3;letter-spacing:-.5px}
.qy-premium #calendarMonthTitle span{color:#655a47;font-size:13px;font-weight:500;letter-spacing:0;margin-left:7px}
.qy-premium .calendar-controls{gap:8px;flex-shrink:0}
.qy-premium .calendar-controls button{display:grid;place-items:center;padding:0;width:44px;height:44px;background:#fffefa;border:1px solid #b9ab93;border-radius:12px;color:#342c20;font-size:28px;line-height:1}
.qy-premium .calendar-controls button:disabled{background:#f3f0e9;border-color:#dfd8cb;color:#8c8579;opacity:1;cursor:not-allowed;filter:none}
.qy-premium .calendar-redesign .calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:0;min-width:0}
.qy-premium .calendar-redesign .dow{padding:0 0 10px;font-size:13px;line-height:20px;color:#655a47;font-weight:600;text-align:center}
.qy-premium .calendar-redesign .dow:first-child,.qy-premium .calendar-redesign .dow:nth-child(7){color:#805c24}
.qy-premium .calendar-month-divider{grid-column:1 / -1;display:flex;align-items:center;min-width:0;margin:10px 0 1px;padding:0 2px 8px;border-bottom:1px solid #ded3bd;color:#765a2c;font-size:17px;font-weight:750;line-height:1.3;letter-spacing:.02em}
.qy-premium .calendar-month-divider:first-of-type{margin-top:2px}
.qy-premium .calendar-redesign .day{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;width:100%;min-height:66px;margin:0;padding:8px 2px;background:#f4f1eb;border:1px solid transparent;border-radius:12px;color:#302c24;line-height:1.25;overflow:visible;text-align:center;box-shadow:none;position:relative;transition:background .15s,border-color .15s}
.qy-premium .calendar-redesign .day.weekend{color:#71501f}
.qy-premium .calendar-redesign .day.mark{background:#f4e7ca;border-color:#e4d1a8;color:#47351c}
.qy-premium .calendar-redesign .day.today{border:2px solid #8a6427}
.qy-premium .calendar-redesign .day.selected{background:#24231f;border:2px solid #24231f;color:#fff5dc;box-shadow:0 0 0 2px #fffefa,0 0 0 3px #a87b32}
.qy-premium .calendar-redesign .day.selected.today{border-color:#e9c784}
.qy-premium .calendar-redesign .day:hover{filter:none;background:#e9dfcc}
.qy-premium .calendar-redesign .day.selected:hover{background:#343027}
.qy-premium .calendar-redesign .day:focus-visible,.qy-premium .calendar-redesign button:focus-visible,.qy-premium .calendar-registration button:focus-visible{outline:3px solid #825b1f;outline-offset:3px;z-index:1}
.qy-premium .calendar-day-number{font-size:19px;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.25}
.qy-premium .calendar-day-markers{height:7px;display:flex;align-items:center;justify-content:center;gap:4px}
.qy-premium .calendar-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;background:#8a6427;border-radius:50%;border:1px solid #8a6427}
.qy-premium .calendar-dot.calendar-dot-event{background:transparent;border:2px solid #4c5550;border-radius:1px;transform:rotate(45deg)}
.qy-premium .day.selected .calendar-dot{background:#edcf8c;border-color:#edcf8c}
.qy-premium .day.selected .calendar-dot-event{background:transparent;border-color:#edcf8c}
.qy-premium .calendar-legend{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:#655a47;font-size:12px;line-height:1.6;padding-top:20px}
.qy-premium .calendar-legend>span{display:flex;align-items:center;gap:6px}
.qy-premium .calendar-today-key{display:block;width:12px;height:12px;border:2px solid #8a6427;border-radius:4px}
.qy-premium .calendar-legend .calendar-month-total{margin-left:auto}
.qy-premium .calendar-hint{font-size:13px;color:#655a47;line-height:1.7;margin:12px 0 0}
.qy-premium .calendar-agenda{scroll-margin-top:16px}
.qy-premium .calendar-agenda-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid #e6dfd3}
.qy-premium .calendar-section-label{display:block;font-size:10px;letter-spacing:1.1px;color:#75613f;margin-bottom:7px;font-weight:600}
.qy-premium #calendarAgendaTitle{font-size:20px;line-height:1.5;color:#26251f;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0}
.qy-premium .calendar-result-count{display:inline-block;border-radius:20px;padding:3px 8px;background:#f0e8d8;color:#6e5327;font-size:12px;font-weight:500;line-height:1.5}
.qy-premium .calendar-agenda .button,.qy-premium .calendar-registration .button{min-height:44px;font-size:13px;padding:10px 15px;white-space:normal;line-height:1.5;text-align:center}
.qy-premium .calendar-agenda-header>.button{flex-shrink:0;padding:8px 12px}
.qy-premium .calendar-agenda-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px 0;border-bottom:1px solid #e6dfd3}
.qy-premium .calendar-agenda-item:last-child{border-bottom:0;padding-bottom:0}
.qy-premium .calendar-agenda-item .date{min-width:0;width:54px;align-self:start;border:1px solid #e3d8c1;border-radius:12px;padding:8px 4px;background:#f2eadb;color:#503f26}
.qy-premium .calendar-agenda-item .date b{display:block;font-size:24px;line-height:1.3}
.qy-premium .calendar-agenda-item .date small{display:block;font-size:11px;color:#6b5c44;line-height:1.6}
.qy-premium .calendar-kind{display:inline-block;color:#785624;font-size:11px;line-height:1.4;margin-bottom:5px;font-weight:600}
.qy-premium .calendar-kind-event{color:#4a5a4d}
.qy-premium .calendar-agenda-item .event-body{min-width:0}
.qy-premium .calendar-agenda-item h3{color:#26251f;font-size:16px;line-height:1.6;white-space:normal;overflow-wrap:anywhere;margin:0 0 5px}
.qy-premium .calendar-agenda-item p{color:#655e51;font-size:13px;line-height:1.7;margin:0;white-space:normal;overflow-wrap:anywhere}
.qy-premium .calendar-agenda-item .calendar-time{color:#443b2f;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
.qy-premium .calendar-empty{text-align:center;padding:30px 6px 10px;color:#655a47}
.qy-premium .calendar-empty>span{font-size:29px;color:#9a712c}
.qy-premium .calendar-empty h3{color:#3b342a;font-size:16px;margin:12px 0 5px}
.qy-premium .calendar-empty p{font-size:13px;line-height:1.8;margin:0 0 18px}
.qy-premium .calendar-registration{max-width:980px;margin:28px auto 0}
.qy-premium .calendar-registration .section-head{gap:12px;align-items:center;flex-wrap:wrap}
.qy-premium .calendar-registration .link{min-height:44px;font-size:13px;text-align:left;padding:6px 0}
.qy-premium .calendar-registration h2{font-size:20px}
.qy-premium .calendar-registration .calendar-course{padding:22px;min-width:0}
.qy-premium .calendar-course h3{font-size:17px;line-height:1.6;color:#26251f;margin:7px 0}
.qy-premium .calendar-course .sub,.qy-premium .calendar-course-dates{font-size:13px;line-height:1.8;color:#655e51}
.qy-premium .calendar-course-dates{margin:12px 0 0}
.qy-premium .calendar-course-price{font-size:18px;font-weight:700;color:#775622;margin:8px 0 0}
@media(min-width:1001px){.qy-premium .calendar-month-card{padding:28px 36px}.qy-premium .calendar-redesign .day{min-height:74px}.qy-premium .calendar-agenda-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}.qy-premium .calendar-agenda-item{grid-template-columns:50px minmax(0,1fr);gap:8px 12px}.qy-premium .calendar-agenda-item .date{grid-row:1 / 3;width:50px}.qy-premium .calendar-agenda-item>.button{grid-column:2;justify-self:start}.qy-premium .calendar-agenda-item:last-child{padding-bottom:22px}.qy-premium .calendar-empty{grid-column:1 / -1}}
@media(max-width:760px){
 .qy-premium .calendar-redesign{gap:18px}.qy-premium .calendar-redesign .card{padding:17px 14px;border-radius:16px}.qy-premium .calendar-month-header{margin-bottom:20px;gap:8px}.qy-premium .calendar-season{font-size:11px}.qy-premium #calendarMonthTitle{font-size:27px}.qy-premium #calendarMonthTitle span{font-size:12px;margin-left:5px}.qy-premium .calendar-controls{gap:6px}
 .qy-premium .calendar-redesign .calendar{gap:4px}.qy-premium .calendar-redesign .day{min-height:58px;border-radius:10px;padding:7px 1px}.qy-premium .calendar-day-number{font-size:18px}.qy-premium .calendar-redesign .dow{font-size:12px;padding-bottom:7px}.qy-premium .calendar-day-markers{gap:3px}.qy-premium .calendar-legend{gap:11px;padding-top:17px;font-size:11px}.qy-premium .calendar-hint{font-size:12px}
 .qy-premium .calendar-agenda-header{padding-bottom:16px;gap:8px}.qy-premium #calendarAgendaTitle{font-size:18px}.qy-premium .calendar-section-label{font-size:9px}.qy-premium .calendar-agenda-header>.button{font-size:12px;padding:8px 10px}
 .qy-premium .calendar-agenda-item{grid-template-columns:49px minmax(0,1fr);gap:7px 12px;padding:20px 0}.qy-premium .calendar-agenda-item .date{grid-row:1 / 3;width:49px}.qy-premium .calendar-agenda-item>.button{grid-column:2;justify-self:start;margin-top:3px;font-size:13px}.qy-premium .calendar-agenda-item h3{font-size:16px}.qy-premium .calendar-agenda-item p{font-size:13px}.qy-premium .calendar-agenda-item .calendar-time{font-size:14px}.qy-premium .calendar-agenda-item:last-child{padding-bottom:3px}
 .qy-premium .calendar-registration{margin-top:22px}.qy-premium .calendar-registration .calendar-course{padding:20px}.qy-premium .calendar-registration h2{font-size:19px}
}
@media(max-width:360px){.qy-premium .calendar-redesign .card{padding:16px 10px}.qy-premium .calendar-redesign .calendar{gap:2px}.qy-premium .calendar-redesign .day{min-height:56px;border-radius:9px}.qy-premium .calendar-day-number{font-size:17px}.qy-premium #calendarMonthTitle{font-size:25px}.qy-premium #calendarMonthTitle span{font-size:11px}.qy-premium .calendar-legend{gap:9px}.qy-premium .calendar-legend .calendar-month-total{margin-left:0;flex-basis:100%;padding-top:3px}.qy-premium .calendar-agenda-header{flex-wrap:wrap}.qy-premium .calendar-agenda-header>.button{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.qy-premium .calendar-redesign .day{transition:none}}

/* Homepage reference: dark greeting and image carousel, followed by ivory season cards.
   All selectors stay inside the homepage; calendar/player/admin palettes are untouched. */
.qy-premium[data-page="home"] main{background:linear-gradient(#161718 0 330px,#f3f0e9 520px)}
.qy-premium[data-page="home"] .topbar{border-bottom:0;margin-bottom:0}
.qy-premium[data-page="home"] .qy-home-intro{color:#fff9ed;margin:0 0 20px;padding-top:8px;min-height:87px}
.qy-premium[data-page="home"] .qy-home-intro h1{font-size:28px;line-height:1.4;font-weight:700;margin:0 0 8px}
.qy-premium[data-page="home"] .qy-home-intro .sub{color:#d8d4c8;font-size:14px;line-height:1.6}
.qy-premium[data-page="home"] .qy-home-child{background:#242622;border-color:#6b6457;color:#eed7aa;min-height:40px}
.qy-home-carousel{position:relative;isolation:isolate;overflow:hidden;border-radius:16px;background:#222a24;touch-action:pan-y}
.qy-home-carousel .qy-home-hero{height:310px;min-height:0;padding:0;border-radius:0;box-shadow:none;position:relative}
.qy-home-carousel [hidden]{display:none!important}
.qy-banner-photo{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:70% 36%;filter:brightness(.8)}
.qy-home-carousel .qy-home-hero:after{z-index:1;background:linear-gradient(90deg,#0c0c0c88,transparent 90%),linear-gradient(0deg,#111111f2,transparent 67%);pointer-events:none}
.qy-home-carousel .qy-banner-link{position:absolute;display:block;inset:0;z-index:2;width:100%;height:100%;margin:0;padding:28px 27px 55px;text-align:left;color:#fffdf6;background:none;border:0;border-radius:0;cursor:pointer}
.qy-banner-copy{display:flex;justify-content:flex-end;align-items:flex-start;flex-direction:column;height:100%;position:relative}
.qy-banner-copy>small{font-size:12px;line-height:1.6;color:#eee9d9;font-weight:500;margin:0 0 7px}
.qy-banner-title{display:block;font-size:35px;line-height:1.28;font-weight:750;letter-spacing:.5px;color:#fffdf6;text-shadow:0 2px 12px #0008}
.qy-banner-underline{width:164px;height:4px;background:linear-gradient(90deg,#e8bd64,#c4973b55);border-radius:50%;transform:rotate(-7deg);margin-top:10px}
.qy-home-carousel .qy-banner-family{background:radial-gradient(ellipse at 90% 0,#74603e,#30291e 60%,#171717)}
.qy-home-carousel .qy-banner-tasks{background:radial-gradient(ellipse at 90% 0,#8e7046,#3a3024 70%)}
.qy-home-carousel .qy-hero-art{z-index:0;opacity:.9}
.qy-home-carousel .qy-hero-ball{bottom:73px;right:35px}
.qy-home-carousel .qy-hero-bat{bottom:48px}
.qy-banner-controls{display:flex;align-items:center;justify-content:center;gap:3px;position:absolute;z-index:3;bottom:2px;left:0;right:0;pointer-events:none}
.qy-banner-controls button{pointer-events:auto}
.qy-banner-dots{display:flex;align-items:center;gap:0}
.qy-home-carousel .qy-banner-dot{display:grid;place-items:center;margin:0;padding:0;width:36px;height:40px;background:transparent;border:0;border-radius:6px}
.qy-banner-dot>span{width:7px;height:7px;background:#ddd9c78a;border-radius:10px}
.qy-banner-dot[aria-pressed="true"]>span{width:18px;height:7px;background:#fffdf5}
.qy-home-carousel .qy-banner-arrow{display:grid;place-items:center;width:40px;height:40px;min-height:40px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:#fff8e9}
.qy-banner-arrow:first-child svg{transform:rotate(180deg)}
.qy-home-carousel .qy-banner-arrow .qy-icon{width:17px;height:17px}
.qy-home-carousel button:focus-visible{outline:3px solid #fff1cf;outline-offset:-5px}
.qy-home-carousel .qy-banner-link:focus-visible{outline-offset:-6px}
.qy-home-season-panel{padding:12px;background:#edeae4;border:1px solid #e3dfd4;border-radius:18px;margin:0 -1px}
.qy-premium[data-page="home"] .qy-home-course{margin:0;padding:18px 16px;gap:13px;min-height:88px}
.qy-premium[data-page="home"] .qy-home-course h2{font-size:16px;line-height:1.5;margin:0 0 4px;color:#2a2925;font-weight:700}
.qy-home-course h2>span{font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:4px}
.qy-premium[data-page="home"] .qy-home-course p{font-size:13px;color:#686356;font-variant-numeric:tabular-nums}
.qy-premium[data-page="home"] .qy-home-course .button{font-size:13px;padding:10px 13px;min-height:44px;border-radius:12px}
.qy-premium[data-page="home"] .qy-home-metrics{margin:12px 0;gap:12px}
.qy-premium[data-page="home"] .qy-metric{padding:17px 14px;gap:12px;background:#fffcf5!important;min-height:92px}
.qy-premium[data-page="home"] .qy-metric small{font-size:12px;color:#6d6658;line-height:1.4}
.qy-premium[data-page="home"] .qy-metric strong{font-size:31px;line-height:1.2;color:#252522;letter-spacing:-.6px}
.qy-premium[data-page="home"] .qy-metric em{font-size:12px;color:#4d493e;margin-left:3px;letter-spacing:0}
.qy-premium[data-page="home"] .qy-metric-icon{color:#bd9348}
.qy-premium[data-page="home"] .qy-metric-icon svg{width:32px;height:32px}
.qy-premium[data-page="home"] .qy-home-tasks{padding:17px 17px 13px}
.qy-premium[data-page="home"] .qy-home-tasks .section-head{margin-bottom:9px;gap:8px}
.qy-premium[data-page="home"] .qy-home-tasks .section-head h2{font-size:17px;font-weight:700;color:#292921}
.qy-premium[data-page="home"] .qy-home-tasks .link{font-size:12px;color:#706954;min-height:40px;white-space:nowrap}
.qy-season-task{display:flex;align-items:center;gap:12px;width:100%;min-width:0;padding:7px 0 10px;color:#2c2b25;text-align:left;background:none}
.qy-season-task-ball{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at 33% 28%,#fff,#ebe9e0);color:#88675b}
.qy-season-task-ball svg{width:39px;height:39px;stroke-width:1.1}
.qy-season-task-copy{flex:1;min-width:0}
.qy-season-task-copy b{font-size:14px;line-height:1.5;display:block}
.qy-season-task-copy>small{font-size:12px;color:#77705f;display:block;margin-top:5px;line-height:1.5}
.qy-season-task-xp{color:#94691f;white-space:nowrap;font-size:18px;font-weight:650}
.qy-season-task-xp small{font-size:12px;font-weight:500}
.qy-season-task>.qy-icon{width:14px;height:14px;color:#8e7b59;margin-left:-5px}
.qy-season-summary,.qy-season-dates{font-size:11px;line-height:1.7;color:#6c6352;margin:7px 0 0}
.qy-season-summary{border-top:1px solid #eee8dd;padding-top:8px}
.qy-season-dates{font-variant-numeric:tabular-nums;margin-top:2px;color:#7a705e}
.qy-premium[data-page="home"] .qy-home-source{margin:15px 0 0;font-size:11px;grid-column:1 / -1}
@media(min-width:1101px){.qy-premium[data-page="home"] .qy-home-secondary>.qy-home-links{margin-top:0}.qy-premium[data-page="home"] .qy-home-secondary{padding-top:0}}
@media(max-width:760px){
 .qy-premium[data-page="home"] main{background:linear-gradient(#161718 0 280px,#f3f0e9 460px)}
 .qy-premium[data-page="home"] .topbar{min-height:66px;margin-bottom:0}
 .qy-premium[data-page="home"] .qy-home-intro{padding:9px 3px 0;margin-bottom:16px;min-height:83px;gap:8px}
 .qy-premium[data-page="home"] .qy-home-intro h1{font-size:24px;line-height:1.4;margin-bottom:6px}
 .qy-premium[data-page="home"] .qy-home-intro .sub{font-size:12px}
 .qy-premium[data-page="home"] .qy-home-child{font-size:10px;padding:8px;gap:5px;min-height:38px;max-width:100px;white-space:normal;text-align:left}
 .qy-home-carousel{border-radius:13px}
 .qy-home-carousel .qy-home-hero{height:220px;min-height:220px}
 .qy-home-carousel .qy-banner-link{padding:18px 17px 48px}
 .qy-banner-title{font-size:28px;line-height:1.25;letter-spacing:.2px}
 .qy-banner-copy>small{font-size:10px;line-height:1.5;margin-bottom:6px;max-width:77%}
 .qy-banner-underline{width:145px;height:3px;margin-top:8px}
 .qy-home-carousel .qy-hero-ball{right:18px;bottom:59px}.qy-home-carousel .qy-hero-bat{bottom:40px}
 .qy-home-season-panel{padding:9px;margin:0 -4px;border-radius:15px}
 .qy-premium[data-page="home"] .qy-home-course{min-height:82px;padding:13px 12px;gap:10px;border-radius:12px}
 .qy-premium[data-page="home"] .qy-home-course h2{font-size:14px;line-height:1.45}
 .qy-premium[data-page="home"] .qy-home-course p{font-size:12px}
 .qy-premium[data-page="home"] .qy-home-course .button{font-size:12px;padding:9px;min-height:42px}
 .qy-premium[data-page="home"] .qy-home-course .button svg{width:12px;height:12px;margin-left:2px}
 .qy-premium[data-page="home"] .qy-home-metrics{gap:9px;margin:10px 0}
 .qy-premium[data-page="home"] .qy-metric{min-height:82px;padding:13px 11px;gap:9px;border-radius:12px}
 .qy-premium[data-page="home"] .qy-metric small{font-size:11px}
 .qy-premium[data-page="home"] .qy-metric strong{font-size:29px}
 .qy-premium[data-page="home"] .qy-metric em{font-size:11px}
 .qy-premium[data-page="home"] .qy-metric-icon svg{width:28px;height:28px}
 .qy-premium[data-page="home"] .qy-home-tasks{padding:12px 13px;border-radius:12px}
 .qy-premium[data-page="home"] .qy-home-tasks .section-head{margin-bottom:3px}
 .qy-premium[data-page="home"] .qy-home-tasks .section-head h2{font-size:16px}
 .qy-premium[data-page="home"] .qy-home-tasks .link{font-size:11px;min-height:36px}
 .qy-season-task{gap:9px;padding:8px 0}
 .qy-season-task-ball{width:35px;height:35px}.qy-season-task-ball svg{width:34px;height:34px}
 .qy-season-task-copy b{font-size:13px}.qy-season-task-copy>small{font-size:11px;margin-top:4px}
 .qy-season-task-xp{font-size:16px}.qy-season-task-xp small{font-size:10px}
 .qy-season-summary,.qy-season-dates{font-size:10px}
}
@media(max-width:360px){
 .qy-premium[data-page="home"] .qy-home-intro h1{font-size:21px}.qy-premium[data-page="home"] .qy-home-intro .sub{font-size:11px}
 .qy-home-carousel .qy-home-hero{height:195px;min-height:195px}.qy-banner-title{font-size:25px}
 .qy-premium[data-page="home"] .qy-home-course{padding:12px 9px;gap:8px}.qy-premium[data-page="home"] .qy-home-course h2{font-size:12px}.qy-premium[data-page="home"] .qy-home-course .button{font-size:11px;padding:8px 7px}
 .qy-premium[data-page="home"] .qy-metric{padding:12px 9px;gap:7px}.qy-premium[data-page="home"] .qy-metric strong{font-size:27px}.qy-premium[data-page="home"] .qy-metric small{font-size:10px}
 .qy-premium[data-page="home"] .qy-home-tasks{padding:11px}.qy-season-task{gap:7px}.qy-season-task-copy b{font-size:12px}.qy-season-task-ball{width:30px;height:30px}.qy-season-task-ball svg{width:30px;height:30px}.qy-season-task-xp{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.qy-home-carousel *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* The authorized poster is cropped only in CSS; full original remains viewable. */
.qy-banner-poster-image{position:absolute;inset:0;background:url('/assets/qy-recruitment-preview.png') 26.35% 70% / 296.5% auto no-repeat}
.qy-banner-label{position:absolute;top:15px;left:17px;background:#151714cc;border:1px solid #e8d5a76b;color:#fff2d2;padding:5px 9px;border-radius:5px;font-size:11px;line-height:1.5;font-weight:600;letter-spacing:.5px}
.qy-home-carousel .qy-banner-recruitment:after{background:linear-gradient(0deg,#0b0d0bf2,transparent 80%)}
.qy-course-preview{font-size:10px;white-space:nowrap;border-left:1px solid #cfc4b0;padding-left:6px;margin-left:5px;color:#7c6c4e}
.qy-recruitment-preview{margin:15px -5px;background:#111;border-radius:8px;overflow:hidden}
.qy-recruitment-preview img{display:block;width:100%;height:auto}
.qy-premium .qy-poster-notice{background:#f6e8c9;padding:12px;border-radius:8px;font-size:12px;color:#594319;line-height:1.7}
@media(max-width:760px){.qy-banner-label{top:12px;left:13px;font-size:10px;padding:4px 7px}.qy-home-carousel .qy-banner-recruitment .qy-banner-title{font-size:27px}.qy-home-carousel .qy-banner-recruitment .qy-banner-copy>small{font-size:11px}.qy-course-preview{font-size:9px;padding-left:5px;margin-left:3px}}
@media(max-width:360px){.qy-home-carousel .qy-banner-recruitment .qy-banner-title{font-size:24px}.qy-course-preview{display:none}}

/* Event application uses the existing membership and coach-review flow. */
.qy-home-course button.qy-course-preview{display:inline;background:none;border:0;border-left:1px solid #cfc4b0;border-radius:0;padding:2px 0 2px 6px;min-height:26px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.qy-event-facts{padding:15px;background:#f4ecda;border:1px solid #dfcea8;border-radius:9px;margin:16px 0;color:#5f4d29}.qy-event-facts b{font-size:18px}.qy-event-facts p{font-size:13px;line-height:1.9;margin:7px 0 0}.qy-event-real-notice{padding:12px;border-left:3px solid #b79555;background:#f7f0df;font-size:12px!important;line-height:1.8!important;color:#675637!important}.qy-premium .qy-event-intent{padding:18px;margin:0 0 18px;border-color:#cbb27d!important;background:#fff9ec!important}.qy-event-intent h2{font-size:17px;margin:6px 0}.qy-event-intent p{font-size:12px;color:#75664b;line-height:1.7;margin:6px 0}.qy-event-intent .row{justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-top:10px}.qy-event-intent .button{font-size:12px}.qy-event-roster .event{align-items:flex-start}.qy-event-roster .event p{line-height:1.8}
/* Three full horizontal posters. Both slides remain painted while the track moves. */
.qy-poster-carousel{background:#151614;border:1px solid #5e5135;box-shadow:0 8px 24px #0002}
.qy-poster-carousel .qy-banner-viewport{overflow:hidden;width:100%}
.qy-poster-carousel .qy-banner-slides{display:flex;align-items:stretch;width:100%;transition:transform .68s cubic-bezier(.22,.72,.18,1);will-change:transform}
.qy-poster-carousel .qy-home-hero{flex:0 0 100%;min-width:0;height:auto;min-height:0;margin:0;background:#151614;overflow:hidden}
.qy-poster-carousel .qy-home-hero:after{display:none}
.qy-poster-carousel .qy-banner-link,.qy-poster-carousel .qy-banner-static{display:block;position:relative;inset:auto;width:100%;height:auto;min-height:0;padding:0;margin:0;border:0;border-radius:0;background:#131411;line-height:0}
.qy-poster-carousel .qy-banner-link{cursor:pointer;touch-action:pan-y}
.qy-poster-carousel .qy-home-hero img{display:block;width:100%;height:auto;aspect-ratio:1983/793;object-fit:contain;filter:none;user-select:none;-webkit-user-drag:none}
.qy-banner-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:50px;padding:9px 16px;border-bottom:1px solid #c6a56626;color:#eee3ca;line-height:1.5}
.qy-banner-caption b{font-size:13px;white-space:nowrap}.qy-banner-caption span{font-size:11px;color:#c6bdab;text-align:right}
.qy-poster-carousel .qy-banner-controls{position:relative;bottom:auto;min-height:44px;padding:2px 10px;gap:4px;background:#191a17}
.qy-poster-carousel .qy-banner-play{position:absolute;right:10px;top:5px;min-height:36px;min-width:46px;border:1px solid #8e805c;background:#25251e;color:#f0dfb9;border-radius:6px;font-size:11px;padding:5px 9px}
.qy-home-course{position:relative;isolation:isolate}
.qy-home-course .qy-course-card-open{position:absolute;inset:0;z-index:1;width:100%;height:100%;min-height:0;margin:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}
.qy-home-course .qy-course-card-copy,.qy-home-course .qy-home-course-icon{pointer-events:none;position:relative;z-index:1}
.qy-home-course .qy-course-register{position:relative;z-index:2}
.qy-home-course .qy-course-card-open:focus-visible{outline:3px solid #8d681c;outline-offset:3px}
.qy-info-page{max-width:1060px;margin:0 auto}.qy-info-back{display:inline-block;margin:4px 0 20px;min-height:40px;color:#7a602c;font-weight:650}
.qy-info-heading{background:radial-gradient(ellipse at 95% 20%,#75603c44,transparent 55%),repeating-linear-gradient(135deg,#ffffff03 0 2px,transparent 2px 26px),#191a17;border:1px solid #75633d;border-radius:18px;color:#fbf5e6;padding:34px;margin-bottom:22px}
.qy-info-heading h1{font-size:38px;line-height:1.35;letter-spacing:1px;margin:12px 0 14px;color:#fff8e8}.qy-info-heading h1:focus{outline:none}.qy-info-heading p{color:#d3c5a8;font-size:15px;line-height:1.8;margin:0}.qy-info-heading .eyebrow{color:#d8b769}
.qy-info-facts{padding:24px;margin-bottom:22px}.qy-info-facts dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0}.qy-info-facts dt{color:#7a6c50;font-size:12px;margin-bottom:5px;letter-spacing:.8px}.qy-info-facts dd{font-size:16px;font-weight:650;line-height:1.6;margin:0}.qy-info-facts>p{margin:22px 0 0;padding-top:16px;border-top:1px solid #dfd3bc;font-size:14px;color:#685c45;line-height:1.8}
.qy-original-poster,.qy-guide-poster{margin:0 0 24px}.qy-original-poster img,.qy-guide-poster img{display:block;width:100%;height:auto;border-radius:14px;background:#171815}.qy-original-poster figcaption,.qy-guide-poster figcaption{font-size:12px;line-height:1.8;color:#736348;margin-top:10px}.qy-info-page figcaption a{color:#6e5018;text-decoration:underline;text-underline-offset:3px}
.qy-info-enroll{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px;border-color:#c7ab72;background:linear-gradient(130deg,#f5eddb,#fffcf3);margin-top:24px}.qy-info-enroll h2{font-size:23px;margin:7px 0 10px}.qy-info-enroll p{max-width:650px;font-size:14px;line-height:1.9;color:#6c604b;margin:0}.qy-info-enroll>.button{flex-shrink:0;min-height:48px}.qy-info-actions{display:flex;flex-direction:column;gap:10px;flex-shrink:0}.qy-info-actions .button{display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;min-height:46px}
.qy-guide-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.qy-guide-copy{display:grid;gap:18px}.qy-guide-copy .card{padding:25px}.qy-guide-copy h2{font-size:23px;margin:8px 0 14px}.qy-guide-copy p{font-size:14px;line-height:1.85;color:#6a5d47;margin:8px 0 0}.qy-guide-steps{list-style:none;padding:0;margin:20px 0 0;counter-reset:join}.qy-guide-steps li{position:relative;padding:0 0 20px 44px;counter-increment:join}.qy-guide-steps li:last-child{padding-bottom:0}.qy-guide-steps li:before{content:counter(join);position:absolute;top:0;left:0;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#e1c48a;color:#312816;font-weight:700}.qy-guide-steps li p{margin:5px 0 0}.qy-guide-checks{padding-left:20px;line-height:2;color:#5e523f}
@media(max-width:760px){.qy-banner-caption{min-height:46px;padding:8px 11px;gap:7px}.qy-banner-caption b{font-size:12px}.qy-banner-caption span{font-size:10px;max-width:58%}.qy-poster-carousel .qy-banner-controls{gap:0}.qy-info-heading{padding:25px 21px}.qy-info-heading h1{font-size:30px}.qy-info-heading p{font-size:14px}.qy-info-facts{padding:20px}.qy-info-facts dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.qy-info-facts dd{font-size:14px}.qy-info-enroll{display:block;padding:22px}.qy-info-enroll>.button,.qy-info-actions{width:100%;margin-top:18px}.qy-info-enroll>.button{display:flex;align-items:center;justify-content:center;gap:14px}.qy-guide-layout{grid-template-columns:1fr;gap:0}.qy-guide-copy .card{padding:22px}.qy-original-poster figcaption,.qy-guide-poster figcaption{font-size:12px}.qy-info-heading h1 br{display:none}.qy-info-enroll h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.qy-home-carousel .qy-banner-slides{transition:none;will-change:auto}}

/* Poster-first carousel: only three dots overlay the image, no separate footer. */
.qy-poster-carousel{position:relative}
.qy-poster-carousel .qy-banner-caption{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.qy-poster-carousel .qy-banner-controls{position:absolute;left:0;right:0;bottom:0;min-height:36px;padding:0;gap:0;background:none}
.qy-poster-carousel .qy-banner-dot{width:44px;height:36px;min-height:36px}
.qy-poster-carousel .qy-banner-dot span{box-shadow:0 1px 5px #000d;border:1px solid #fff9;background:#ffffff80}
.qy-poster-carousel .qy-banner-dot[aria-pressed="true"] span{background:#fff9e8}
.qy-coach-disclosure{position:absolute;right:8px;top:7px;z-index:3;max-width:calc(100% - 16px);border-radius:4px;padding:3px 6px;background:#090a09d9;color:#f7eddb;font-size:10px;line-height:1.4;pointer-events:none}
@media(max-width:420px){.qy-coach-disclosure{font-size:8px;right:6px;top:5px}}

/* Keep the complete wide artwork on phones. The taller 16:9 frame uses its
   remaining space for a readable caption instead of cropping poster copy. */
@media(max-width:480px){
 .qy-poster-carousel .qy-home-hero{display:flex;flex-direction:column;aspect-ratio:16/9;height:auto;min-height:0}
 .qy-poster-carousel .qy-banner-link,.qy-poster-carousel .qy-banner-static{flex:none}
 .qy-poster-carousel .qy-home-hero img{width:100%;height:auto;aspect-ratio:1983/793;object-fit:contain}
 .qy-poster-carousel .qy-banner-caption{position:relative!important;display:flex!important;flex:1;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;width:auto!important;height:auto!important;min-height:0!important;padding:3px 120px 3px 10px!important;margin:0!important;overflow:visible!important;clip:auto!important;white-space:normal!important;border:0!important;background:#191a17;line-height:1.25}
 .qy-poster-carousel .qy-banner-caption b{font-size:12px;white-space:normal}
 .qy-poster-carousel .qy-banner-caption span{max-width:none;font-size:10px;text-align:left;white-space:normal}
 .qy-poster-carousel .qy-banner-controls{left:auto;right:3px;bottom:0;width:114px;min-height:40px}
 .qy-poster-carousel .qy-banner-dot{width:38px;height:40px;min-height:40px}
}

/* Native buttons keep keyboard navigation and the current family session intact. */
.qy-premium .qy-brand-home{background:transparent;border:0;border-radius:8px;padding:0;min-height:44px;min-width:44px;text-align:left;color:#f7f3e9;cursor:pointer}.qy-premium .qy-brand-home:focus-visible{outline:3px solid var(--gold);outline-offset:5px}

/* Original approved CIS mark, extracted without redrawing or distortion. */
.qy-brand-mark{display:block;width:44px;height:auto;aspect-ratio:212/205;object-fit:contain;flex:none}.qy-premium .logo .qy-brand-mark{width:54px}.qy-premium .breadcrumb .qy-brand-mark,.qy-premium .mobile-brand .qy-brand-mark{width:44px}

/* Six family destinations stay on one row; staff workspace docks keep five. */
@media(max-width:760px){
 .qy-premium:is([data-view="student"],[data-view="guest"]) .bottomnav{grid-template-columns:repeat(6,minmax(0,1fr));padding:8px max(6px,env(safe-area-inset-right)) max(11px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));gap:0}
 .qy-premium:is([data-view="student"],[data-view="guest"]) .bottomnav button{min-width:0;min-height:48px;width:100%;padding:3px 0;font-size:11px;line-height:1.3;gap:5px;touch-action:manipulation}
 .qy-premium:is([data-view="student"],[data-view="guest"]) .bottomnav button span{white-space:nowrap;letter-spacing:0}
 .qy-premium .bottomnav button:focus-visible{outline:2px solid #f7e0b5;outline-offset:-2px;border-radius:6px}
 .qy-premium main{padding-bottom:calc(104px + env(safe-area-inset-bottom))}
}
/* Original 16:9 poster artwork contains its own copy; keep every pixel visible. */
.qy-poster-carousel .qy-home-hero{display:block;aspect-ratio:auto;height:auto;min-height:0}
.qy-poster-carousel .qy-home-hero img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.qy-poster-carousel .qy-banner-controls{position:relative;left:auto;right:auto;bottom:auto;min-height:36px;background:#191a17}
@media(max-width:480px){.qy-poster-carousel .qy-home-hero{display:block;aspect-ratio:auto}.qy-poster-carousel .qy-home-hero img{aspect-ratio:16/9}.qy-poster-carousel .qy-banner-caption{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.qy-poster-carousel .qy-banner-controls{position:relative;left:auto;right:auto;bottom:auto;width:auto;min-height:36px}}
.calendar-redesign .day.other-month{background:#f8f5ee;color:#877d6e}
.calendar-redesign .day.other-month.mark{background:#f4eddd;color:#645136}
.calendar-redesign .day.future:not(.mark){color:#887f72}
