/* Pearlescent glass: the same geometry and highlights in both themes. */
:root{--button-text:#fff;--button-base:rgba(0,131,142,.76);--button-violet:rgba(109,40,213,.76)}
[data-theme=light]{--button-base:rgba(0,124,137,.83);--button-violet:rgba(113,44,203,.8)}
.primary{position:relative;isolation:isolate;overflow:hidden;border:1px solid transparent!important;background:linear-gradient(165deg,rgba(255,255,255,.45),transparent 39%,rgba(194,255,244,.14) 64%,rgba(2,51,90,.24)) padding-box,linear-gradient(145deg,#efffff,#92e9e5 22%,#daa7ff 52%,#53bbb9 75%,#edffed) border-box!important;color:var(--button-text)!important;border-radius:19px!important;box-shadow:inset 0 1px 2px #ffffffed,inset 0 -3px 7px #03374666,0 4px 0 #18555939,0 8px 23px #0bbaa63d!important;backdrop-filter:blur(20px) saturate(1.7);text-shadow:0 1px 3px #0432447a;transition:transform .2s,box-shadow .25s}
.primary:before{content:"";position:absolute;inset:1px;z-index:-1;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.26),transparent 48%),var(--button-base);pointer-events:none}
.primary.purple:before{background:linear-gradient(170deg,#ffffff59,transparent 47%,#d6b6ff33),var(--button-violet)}
.primary:after{content:"";position:absolute;inset:-50% -70%;pointer-events:none;background:linear-gradient(112deg,transparent 42%,#ffffff05 44%,#ffffff80 48%,#c9f6ff3b 52%,transparent 55%);transform:translateX(-65%);transition:transform .8s}
.primary:hover:after,.primary:focus-visible:after{transform:translateX(65%)}
.primary:hover{transform:translateY(-2px);box-shadow:inset 0 1px 2px white,inset 0 -2px 9px #0b537144,0 7px 24px #2ddbcc6b!important}
.primary:active{transform:translateY(1px)}
.primary:disabled{opacity:.48;transform:none}
.homework-cta:after{animation:pearl-sweep 7s 2s infinite}.lesson-soon{animation:lesson-glow 2.8s ease-in-out infinite}
@keyframes pearl-sweep{0%,65%{transform:translateX(-65%)}90%,100%{transform:translateX(65%)}}
@keyframes lesson-glow{50%{filter:brightness(1.22);box-shadow:0 0 25px #c4a2ff99!important}}
.nav{box-shadow:inset 0 1px 2px #ffffffa6,0 12px 30px #17304914;backdrop-filter:blur(28px) saturate(1.4)}
.nav a.active{border:1px solid #bcfff5!important;background:linear-gradient(150deg,#ffffff66,transparent 45%),linear-gradient(180deg,#25c7bdca,#0a768de0)!important;color:white!important;box-shadow:inset 0 1px 2px #fff,inset 0 -3px 8px #08465b50,0 4px 15px #05bebc5c!important}
.nav .icon,.tools .icon{filter:drop-shadow(0 1px 0 #ffffffb0) drop-shadow(0 3px 2px #1a596947);transform:perspective(100px) rotateY(-10deg);transition:transform .3s}
.nav a:hover .icon,.tools button:hover .icon,.tools a:hover .icon{transform:perspective(100px) rotateY(10deg) translateY(-2px)}
.tools .icon-btn{background:linear-gradient(145deg,#ffffff32,#c3dcf809);box-shadow:inset 0 1px 1px #ffffffb0,0 4px 12px #19485e1f;border-color:#96ccd46e}
.glass{box-shadow:inset 0 1px 1px #ffffff9c,inset 0 -1px 1px #c5fafa1a,0 16px 40px #06162117;backdrop-filter:blur(25px) saturate(1.4)}
.current-layout{gap:22px;align-items:center;grid-template-columns:minmax(0,.95fr) minmax(0,1fr)}
.current-layout .hero-art{margin:0!important;overflow:hidden;border-radius:22px;padding:16px;background:radial-gradient(ellipse at 40% 40%,#bd96ff3d,transparent 68%),linear-gradient(145deg,#ffffff18,#a0d7dc0c);border:1px solid #b2d5ec55;box-shadow:inset 0 1px 5px #ffffff66;min-width:0}
.current-layout .hero-art img{width:100%!important;height:auto!important;max-height:330px;object-fit:contain;transform:scale(.95)!important;animation:art-breathe 7s ease-in-out infinite!important}
@keyframes art-breathe{50%{transform:translateY(-4px) scale(.98)}}
.current-copy{min-width:0}.current-copy h3{overflow-wrap:anywhere}.avatar-stage{height:auto!important;padding-top:0!important;min-height:0!important;margin-bottom:12px}
.avatar-orbit{aspect-ratio:1;width:100%!important;max-width:220px;margin:0 auto;height:auto!important;overflow:hidden!important;border:2px solid #b6f6ff94;box-shadow:0 0 28px #95e1ef30,inset 0 0 0 4px #ffffff47}
.avatar-orbit img{height:100%!important;width:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important;transform:none!important;position:static!important;top:auto!important;left:auto!important;margin:0!important;animation:none!important}
.profile-name h1{font-size:clamp(20px,1.8vw,27px);line-height:1.14;overflow-wrap:normal}.profile-name{display:block}.avatar-edit{font-size:10px}.local-time{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);margin:10px 0 15px}.local-time .icon{width:14px;height:14px}
.not-owned img{filter:grayscale(1) brightness(.55);opacity:.45}.companion{min-height:120px}.companion img{height:88px;object-fit:contain}.companion small{display:block}.companion .text-link{font-size:11px}.stat strong{transition:color .4s}.stat img{filter:drop-shadow(0 4px 7px #9b6bef44)}
.day.selected,.day.selected.weekend{color:white!important;background:linear-gradient(155deg,#45b4b4,#087d91)!important;border:1px solid #c9fff9!important;box-shadow:inset 0 1px 2px #fff,0 4px 12px #03839840!important}.day.selected span,.day.selected b,.day.selected small{color:white!important}.day.selected i{box-shadow:0 0 0 1px white}.day.weekend:not(.selected){color:var(--text)}.day i{min-width:5px;min-height:5px}
.homework .inner>small{display:block;margin:8px 0 14px;font-size:10px;color:var(--muted)}.homework .text-link{display:block;text-align:center;margin:12px 0 0}.deadline{font-size:12px;display:flex;align-items:center;gap:7px;line-height:1.5;margin-top:15px;color:var(--teal);font-weight:650}.deadline .icon{width:16px;flex-shrink:0}.deadline.late{color:#e94567}.deadline-overdue{border-color:#fa607c!important;box-shadow:0 0 24px #f359733f,inset 0 1px 2px #ffd6d9!important}.deadline-overdue .homework-cta:before{background:linear-gradient(155deg,#ffa9b470,#bb3852d9)}.homework-clear{text-align:center;padding:12px 0}.homework-clear>.icon{width:40px;height:40px;color:var(--teal)}
.notification-deck{display:block!important;position:relative;background:radial-gradient(ellipse at 100% 0,#a683e52f,transparent 75%),var(--glass)}.notice-content{min-height:175px;animation:notice-slide .35s ease-out}.notice-content h3{margin-top:14px}.notice-content h3 .icon{margin-right:7px}.notice-content .eyebrow{font-size:9px}.notice-controls{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.notice-controls>span{font-size:11px;color:var(--muted)}.notice-controls .icon-btn{height:28px;width:34px;min-width:34px;border-radius:11px}@keyframes notice-slide{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
.growth-hero{display:grid;grid-template-columns:260px 1fr;gap:40px;margin-bottom:26px;align-items:center}.growth-aura{background:radial-gradient(ellipse,#18c7c52e,transparent 68%)}.growth-aura img{height:270px;object-fit:contain;max-width:100%;margin:auto}.growth-hero p{margin:15px 0}.growth-hero small{display:block;max-width:650px}.growth-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.growth-stage{text-align:center}.growth-stage .stage-art{height:170px;object-fit:contain;width:100%;margin:18px 0}.growth-stage.locked .stage-art{filter:brightness(0) invert(.46);opacity:.36}.growth-stage.current{border-color:#81fff2;box-shadow:0 0 26px #20c3c72b}.growth-stage p{font-size:12px;margin:10px 0;color:var(--muted)}.stage-reward{color:var(--teal);font-weight:650;font-size:12px}
.exchange-panel{display:grid;grid-template-columns:1fr 260px;gap:40px;align-items:center;margin-bottom:28px}.exchange-panel p{max-width:620px;margin:15px 0}.exchange-panel form{padding:14px;border-radius:18px;background:#bbb6ef14}.experience-settings{margin-top:25px}.experience-settings h3{margin:24px 0 16px}.sound-options{max-width:660px;margin:20px 0}.toggle-row{display:flex;align-items:center;gap:12px;margin:16px 0;font-size:13px}.toggle-row input{width:18px;height:18px;accent-color:#13b7b0}.experience-settings output{float:right}.experience-settings input[type=range]{accent-color:#14b4b3;width:100%;padding:0}.experience-settings form{max-width:750px}
.lesson-tabs{display:flex;gap:9px;margin-bottom:0;flex-wrap:wrap}.lesson-tabs .active{color:var(--teal);border-color:var(--teal);box-shadow:inset 0 1px 1px #ffffffbb,0 0 15px #12c6b523}.lesson-main section[hidden]{display:none!important}.arena-hero{display:flex;gap:35px;align-items:center;margin-bottom:25px;padding:35px}.arena-hero>.icon{width:80px;height:80px;color:#cf9bff;filter:drop-shadow(0 7px 6px #705ca65c)}.arena-hero>img{height:110px;margin-left:auto}.arena-hero p{margin-top:12px}.duel-tile h2{margin:20px 0}.duel-tile p{margin:12px 0}.duel-score{font-size:42px;color:var(--teal)}.quiz-form{max-width:850px;margin:auto}.quiz-form fieldset{border:0;border-bottom:1px solid var(--border);padding:15px 0 25px;margin-bottom:20px}.quiz-form legend{font-size:19px;font-weight:600;line-height:1.5}.quiz-form legend span{display:block;color:var(--teal);font-size:12px}.quiz-answer{display:flex;gap:15px;padding:15px;border:1px solid var(--border);border-radius:16px;margin:8px 0;cursor:pointer}.quiz-answer:has(input:checked){border-color:#33c9c1;background:#17b8b321}.quiz-answer input{accent-color:#00b3ab}
.vartl-reminder{position:fixed;right:25px;bottom:28px;display:flex;align-items:flex-end;z-index:90;max-width:470px;pointer-events:none;animation:vartl-arrive 1s ease-out}.vartl-reminder>*{pointer-events:auto}.vartl-walk{width:140px;height:190px;object-fit:contain;margin-right:-17px;z-index:1;animation:vartl-steps .48s 6 alternate ease-in-out;filter:drop-shadow(0 9px 7px #183a5261)}.vartl-bubble{width:290px;padding:23px!important;background:var(--glass);box-shadow:0 16px 60px #102f6550!important}.vartl-bubble h3{margin:13px 0 9px}.vartl-bubble p{font-size:12px;line-height:1.5}.vartl-bubble small{display:block;margin-top:10px}.vartl-bubble .primary{margin-top:18px}.vartl-bubble>.icon-btn{position:absolute;right:8px;top:8px;width:25px;height:25px;min-width:25px}.vartl-bubble .eyebrow{font-size:8px}.homework-reminder .vartl-bubble{border-color:#f8a58394}@keyframes vartl-arrive{from{transform:translateX(520px);opacity:0}to{transform:none;opacity:1}}@keyframes vartl-steps{to{transform:translateY(-6px) rotate(3deg)}}
.flying-coin{width:28px;height:28px;position:fixed;z-index:150;pointer-events:none;object-fit:contain}.wallet-pop{animation:wallet-pop .5s 4 alternate}@keyframes wallet-pop{to{filter:brightness(1.35);transform:scale(1.03)}}
.archivus-panel{position:fixed;right:18px;top:110px;bottom:20px;z-index:85;width:min(390px,calc(100vw - 28px));padding:20px!important;display:flex;flex-direction:column;overflow:auto;background:var(--glass);border-color:#9cdbdc9c;box-shadow:0 15px 60px #142a645e!important;animation:notice-slide .3s ease-out}.assistant-heading{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.assistant-heading>div{display:flex;align-items:center;gap:8px}.assistant-heading img{height:75px;width:55px;object-fit:contain}.assistant-heading strong{font-size:22px}.assistant-heading small{display:block}.assistant-heading .icon-btn{width:30px;height:30px;min-width:30px}.assistant-history{flex:1;min-height:140px;overflow:auto;padding:15px 0}.assistant-greeting{font-size:13px;line-height:1.6;padding:14px;border-radius:15px;background:#23d4cc12;border:1px solid var(--border)}.assistant-history .prose{font-size:13px;margin-top:15px}.archivus-panel .field{margin-bottom:11px}.archivus-panel textarea{min-height:75px;height:75px}.assistant-input-tools{display:flex;gap:8px}.assistant-input-tools .soft-btn{padding:7px 11px;font-size:11px}.archivus-panel .small{font-size:10px;line-height:1.5}.archivus-panel input[type=file]{font-size:10px;padding:9px}.archivus-panel .toggle-row{font-size:11px}.archivus-panel .field>span{font-size:11px}.archivus-panel .primary{width:100%}.archivus-panel #screenshot-preview{max-width:100%;max-height:130px;object-fit:contain;border-radius:12px}.assistant-window .topbar,.assistant-window .prototype{display:none!important}.assistant-window #app{padding:8px!important;margin:0!important;max-width:none}.standalone-assistant{height:calc(100vh - 16px);display:flex;flex-direction:column;overflow:auto;padding:16px!important}.standalone-assistant textarea{min-height:70px;height:70px}.standalone-assistant .field{margin-bottom:12px}.standalone-assistant #screenshot-preview{max-height:120px;object-fit:contain}.standalone-assistant [data-act=assistant-popout]{display:none}.standalone-assistant .small{font-size:10px}.standalone-assistant form{flex-shrink:0}
@media(min-width:1050px){body.assistant-open:has(.lesson-layout) #app{margin-right:420px;max-width:calc(100% - 440px)}body.assistant-open .lesson-layout{grid-template-columns:1fr}body.assistant-open .lesson-aside{display:none}}
.provision-panel{margin-top:25px}.provision-panel>p{margin:17px 0}.provision-panel h3{margin-top:28px}.mail-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.7 inherit}.checkout-form{max-width:650px;margin:0 auto}.checkout-form p{margin:20px 0}
.quiz-editor-question{border:1px solid var(--border);border-radius:18px;padding:18px;margin:18px 0}.quiz-editor-question legend{padding:0 10px;color:var(--teal)}
.primary:before{background:linear-gradient(174deg,rgba(255,255,255,.56) 0%,rgba(255,255,255,.21) 26%,rgba(255,255,255,.06) 43%,rgba(0,41,61,.17) 46%,transparent 79%),var(--button-base)}
.primary.purple:before{background:linear-gradient(174deg,rgba(255,255,255,.56),rgba(240,218,255,.21) 28%,rgba(255,255,255,.06) 43%,rgba(56,0,121,.2) 46%,transparent 79%),var(--button-violet)}
@media(max-width:1050px){.current-layout{grid-template-columns:1fr 1fr}.growth-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vartl-reminder{bottom:15px;right:12px}.avatar-orbit{max-width:190px}.archivus-panel{top:90px}}
@media(max-width:700px){.current-layout{grid-template-columns:1fr}.current-layout .hero-art img{max-height:220px}.growth-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.growth-hero,.exchange-panel{grid-template-columns:1fr;gap:16px}.growth-hero{padding:22px}.growth-aura img{height:220px}.arena-hero{gap:15px;padding:24px}.arena-hero>.icon{width:40px}.arena-hero>img{display:none}.vartl-walk{width:86px;height:145px}.vartl-bubble{width:250px}.vartl-reminder{max-width:calc(100vw - 16px)}.archivus-panel{top:80px;bottom:10px}.lesson-tabs .soft-btn{font-size:10px;padding:10px}.growth-stage .stage-art{height:130px}}
[data-motion=off] .primary:after,[data-motion=off] .hero-art img,[data-motion=off] .vartl-walk,[data-motion=off] .vartl-reminder,[data-motion=off] .notice-content{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.primary:after,.hero-art img,.vartl-walk,.vartl-reminder,.notice-content,.lesson-soon{animation:none!important;transition:none!important}}
