/* Phoenix Focus Campus — richer room architecture and visible character outfits. */
.classroom{
  isolation:isolate;min-height:720px;padding:42px 62px 34px;
  border-top:1px solid #b8c2c0;
  background:
    linear-gradient(90deg,transparent 49.8%,rgba(75,61,45,.07) 50%,transparent 50.2%),
    repeating-linear-gradient(105deg,rgba(116,84,50,.045) 0 1px,transparent 1px 42px),
    linear-gradient(180deg,#e8eeeb 0 30%,#dac8ad 30% 31%,#b99469 31% 100%);
  box-shadow:inset 0 22px 55px rgba(36,50,49,.1);
}
.classroom:before{content:"";position:absolute;z-index:0;left:-18%;right:-18%;bottom:-145px;height:570px;transform:perspective(700px) rotateX(58deg);transform-origin:bottom;background:repeating-linear-gradient(90deg,rgba(68,46,29,.12) 0 1px,transparent 1px 92px),repeating-linear-gradient(0deg,rgba(68,46,29,.1) 0 1px,transparent 1px 72px),linear-gradient(90deg,#d4b48e,#ead8bd 52%,#c9a77f)}
.classroom:after{content:"";position:absolute;z-index:0;left:15%;right:15%;bottom:35px;height:260px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,250,230,.42),rgba(99,69,42,.06) 65%,transparent 70%)}
.room-ceiling{position:absolute;z-index:5;inset:0 0 auto;height:23px;border-bottom:1px solid #b5bdbc;background:#293332;box-shadow:0 8px 20px rgba(34,45,44,.22)}
.room-ceiling i{position:absolute;top:10px;width:118px;height:7px;border-radius:8px;background:#f6e8b2;box-shadow:0 0 18px 7px rgba(255,239,179,.42)}
.room-ceiling i:nth-child(1){left:18%}.room-ceiling i:nth-child(2){left:calc(50% - 59px)}.room-ceiling i:nth-child(3){right:18%}
.classroom-windows{z-index:1;inset:55px 9% auto;height:178px;gap:20px}
.classroom-windows:before,.classroom-windows:after{content:"";position:absolute;top:-20px;bottom:-17px;width:12px;background:#394745;box-shadow:0 0 0 1px #27312f}.classroom-windows:before{left:-22px}.classroom-windows:after{right:-22px}
.classroom-windows i{position:relative;border:10px solid #f7f4eb;border-bottom-width:18px;border-radius:2px;background:
  linear-gradient(150deg,transparent 0 59%,rgba(255,255,255,.45) 60% 62%,transparent 63%),
  linear-gradient(180deg,#95d1e2 0 56%,#d7e7e1 57% 68%,#718981 69% 100%);
  box-shadow:0 0 0 2px #62716e,0 10px 20px rgba(50,61,58,.16),inset 0 -16px 0 rgba(55,76,71,.18)
}
.classroom-windows i:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:5px;background:#f7f4eb;box-shadow:0 0 0 1px rgba(70,80,78,.25)}
.classroom-windows i:after{content:"";position:absolute;left:0;right:0;bottom:18%;height:2px;background:#f7f4eb}
.room-clock{position:absolute;z-index:3;right:4.1%;top:82px;width:49px;height:49px;border:7px solid #f4efe4;border-radius:50%;background:#fff;box-shadow:0 5px 15px rgba(35,45,43,.2)}
.room-clock:before,.room-clock:after{content:"";position:absolute;left:50%;top:50%;width:2px;height:14px;background:#323b39;transform-origin:bottom}.room-clock:before{transform:translate(-1px,-14px) rotate(25deg)}.room-clock:after{height:11px;transform:translate(-1px,-11px) rotate(120deg)}
.room-bookshelf{position:absolute;z-index:2;top:238px;width:48px;height:165px;padding:6px 4px;border:7px solid #4d382a;background:repeating-linear-gradient(0deg,#5f4431 0 6px,#37261e 6px 9px,#d0a665 9px 38px);box-shadow:0 12px 20px rgba(53,34,21,.23)}
.room-bookshelf-left{left:12px}.room-bookshelf-right{right:12px}.room-bookshelf i{display:block;float:left;width:7px;height:25px;margin:4px 1px;background:#a14334;box-shadow:11px 0 #2e6570,22px 0 #c69636,33px 0 #6b397c}
.room-plant{position:absolute;z-index:3;top:414px;width:44px;height:68px;border-bottom:31px solid #a96f43;border-left:8px solid transparent;border-right:8px solid transparent}.room-plant-left{left:20px}.room-plant-right{right:20px}.room-plant i{position:absolute;bottom:15px;left:14px;width:20px;height:46px;border-radius:100% 0;background:#3c7552;transform:rotate(-28deg);transform-origin:bottom}.room-plant i:nth-child(2){left:21px;height:56px;background:#4b8b60;transform:rotate(12deg)}.room-plant i:nth-child(3){left:28px;height:43px;background:#326749;transform:rotate(38deg)}
.classroom-board{z-index:4;width:min(540px,64%);min-height:96px;margin:135px auto 0;padding:15px 22px;border:1px solid rgba(255,255,255,.36);border-radius:7px;background:rgba(21,45,40,.91);backdrop-filter:blur(8px);box-shadow:0 11px 0 #ad8d68,0 18px 28px rgba(41,34,26,.22)}
.classroom-board>span{font-family:Arial,sans-serif;font-size:9px}.classroom-board strong{font-size:24px;letter-spacing:.01em}.teacher-desk{z-index:4;width:224px;height:42px;margin:27px auto 54px;border:0;border-radius:3px;background:linear-gradient(#8b603d,#6e472e);box-shadow:0 7px 0 #402b20,0 14px 22px rgba(55,36,23,.22)}
.teacher-desk:before{content:"";position:absolute;left:16px;right:16px;top:-5px;height:6px;border-radius:3px;background:#c89b6d}.teacher-desk:after{content:"";position:absolute;left:50%;bottom:7px;width:38px;height:20px;transform:translateX(-50%);border:2px solid #d3b086;border-bottom:0;border-radius:4px 4px 0 0;opacity:.5}
.seat-grid{z-index:4;grid-template-columns:repeat(6,minmax(84px,1fr));gap:46px 24px;padding:0 1%;perspective:900px}
.seat{min-height:68px;padding:20px 8px 8px;border:0;border-radius:2px;background:linear-gradient(165deg,#c99a68,#a87449);color:#2d2119;box-shadow:0 7px 0 #69462f,0 15px 19px rgba(62,40,25,.2);transform-style:preserve-3d;transition:transform .16s,box-shadow .16s}
.seat:before,.seat:after{bottom:-17px;width:7px;height:21px;border-radius:0 0 3px 3px;background:#483127}.seat:before{left:13px}.seat:after{right:13px}
.seat:hover:not(:disabled){transform:translateY(-4px) rotateX(1deg);box-shadow:0 11px 0 #69462f,0 20px 24px rgba(62,40,25,.24)}
.seat.occupied{border:0;background:linear-gradient(165deg,#a98261,#805d44);color:#f1e7da;box-shadow:0 7px 0 #51392d,0 15px 19px rgba(41,31,25,.25)}
.seat.mine{border:0;background:linear-gradient(165deg,#2b9aa0,#0d6b73);color:#fff;box-shadow:0 7px 0 #07464d,0 0 0 3px #82e2e6,0 18px 25px rgba(8,79,85,.28)}
.desk-number{display:block;position:relative;z-index:8;font-size:12px;font-weight:800}.seat small{position:relative;z-index:8;margin-top:5px;font-size:9px}.empty-chair{position:absolute;z-index:-1;left:50%;top:-22px;width:48px;height:35px;transform:translateX(-50%);border-radius:9px 9px 0 0;background:#694d3b;box-shadow:inset 0 0 0 5px #49352b}.empty-chair:after{content:"";position:absolute;left:5px;right:5px;bottom:-12px;height:13px;background:#49352b}
.seat-accessory{position:absolute;z-index:13;right:10px;top:-2px;min-width:22px;height:24px;display:grid;place-items:center;font-size:17px;filter:drop-shadow(0 3px 2px rgba(0,0,0,.2))}
.interaction-badge{position:absolute;z-index:22;right:-8px;top:-49px;display:flex;align-items:center;gap:3px;padding:4px 7px;border:2px solid #fff;border-radius:999px;background:#e8aa20;color:#241a0c;font-size:8px;font-weight:900;letter-spacing:.04em;box-shadow:0 4px 10px rgba(55,35,10,.28);animation:interactionPulse 1.8s ease-in-out infinite}.interaction-badge b{display:grid;place-items:center;width:12px;height:12px;border-radius:50%;background:#fff;font-size:10px}.seat.occupied:hover .interaction-badge{background:#ffe08a;transform:translateY(-2px)}
.student-status{position:absolute;z-index:15;left:50%;bottom:calc(100% + 74px);width:max-content;max-width:150px;padding:6px 9px;transform:translateX(-50%);border:1px solid rgba(255,255,255,.8);border-radius:9px;background:rgba(24,30,29,.92);color:#fff;text-align:left;box-shadow:0 5px 12px rgba(36,25,18,.22);pointer-events:none}
.student-status:after{content:"";position:absolute;left:50%;bottom:-5px;width:9px;height:9px;transform:translateX(-50%) rotate(45deg);background:rgba(24,30,29,.92)}
.student-status b,.student-status small{position:relative;z-index:1;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-status b{max-width:132px;font-size:9px}.student-status small{margin:2px 0 0!important;color:#8de4e9;font-size:8px!important;opacity:1!important}
.room-legend{z-index:4;margin-top:55px;color:#3c342d}

/* Layered CSS character used in the room, profile and wardrobe. */
.student-character{position:absolute;z-index:10;left:50%;top:-65px;width:52px;height:68px;transform:translateX(-50%);pointer-events:none;filter:drop-shadow(0 5px 3px rgba(42,27,20,.2))}
.student-character i{position:absolute;display:block;box-sizing:border-box}
.character-shadow{left:7px;bottom:-2px;width:40px;height:9px;border-radius:50%;background:rgba(33,23,18,.24)}
.character-chair{left:8px;top:31px;width:39px;height:34px;border:5px solid #4c372d;border-radius:8px 8px 2px 2px;background:#795a48}
.character-legs{left:17px;top:52px;width:21px;height:14px;border-left:7px solid #273241;border-right:7px solid #273241}
.character-body{left:12px;top:28px;width:31px;height:32px;border-radius:11px 11px 6px 6px;background:#555b60;box-shadow:inset 0 -4px rgba(0,0,0,.12)}
.character-shirt{left:24px;top:30px;width:7px;height:22px;border-radius:0 0 4px 4px;background:#eef0ed}
.character-neck{left:23px;top:24px;width:9px;height:9px;background:#d89c76}
.character-head{left:17px;top:4px;width:23px;height:25px;border-radius:47% 47% 45% 45%;background:#e9b08a;box-shadow:inset -3px -2px rgba(159,93,64,.12)}
.character-ear{left:14px;top:13px;width:29px;height:8px;border-radius:8px;background:#dda17b}
.character-hair{left:16px;top:1px;width:25px;height:13px;border-radius:50% 55% 20% 15%;background:#292321;transform:rotate(-4deg)}
.character-fringe{left:17px;top:7px;width:16px;height:8px;border-radius:0 0 80% 20%;background:#292321;transform:rotate(-8deg)}
.character-face{left:23px;top:15px;width:12px;height:3px;border-left:2px solid #49342d;border-right:2px solid #49342d}
.character-arm{top:32px;width:8px;height:24px;border-radius:6px;background:#555b60}.character-arm.arm-left{left:7px;transform:rotate(13deg)}.character-arm.arm-right{right:6px;transform:rotate(-13deg)}
.gender-male .character-body{width:34px;left:10px;border-radius:8px 8px 5px 5px}.gender-male .character-head{border-radius:45%}.gender-male .character-hair{height:10px;border-radius:45% 55% 15% 15%}.gender-female .character-body{border-radius:12px 12px 8px 8px}.gender-female .character-head{border-radius:48% 48% 46% 46%}
.hair-soft-waves .character-hair{left:13px;top:0;width:31px;height:30px;border-radius:50% 50% 40% 40%;background:#443027}.hair-soft-waves .character-fringe{background:#443027}.hair-chestnut-bob .character-hair{left:13px;width:30px;height:25px;background:#703f2b;border-radius:50% 50% 35% 35%}.hair-chestnut-bob .character-fringe{background:#703f2b}.hair-silver-ponytail .character-hair{background:#d8d8e4;box-shadow:17px 7px 0 -3px #b9bacb}.hair-silver-ponytail .character-fringe{background:#d8d8e4}.hair-aurora-hair .character-hair,.hair-aurora-hair .character-fringe{background:linear-gradient(120deg,#62e2db,#8f73f1,#f07eb1);background-size:200%;animation:studyAurora 2s ease infinite}.hair-aurora-hair{filter:drop-shadow(0 0 6px rgba(108,223,219,.7))}
.character-headwear{z-index:20;left:11px;top:-8px;width:34px;height:14px;pointer-events:none}.headwear-no-headwear .character-headwear{display:none}.headwear-study-headphones .character-headwear{border:4px solid #222;border-bottom:0;border-radius:18px 18px 0 0}.headwear-study-headphones .character-headwear:after,.headwear-study-headphones .character-headwear:before{content:"";position:absolute;top:7px;width:6px;height:12px;border-radius:3px;background:#31a7ae}.headwear-study-headphones .character-headwear:before{left:-5px}.headwear-study-headphones .character-headwear:after{right:-5px}.headwear-academy-beret .character-headwear{top:-6px;left:13px;width:29px;height:11px;border-radius:70% 45% 20% 20%;background:#7e2331;transform:rotate(-7deg)}.headwear-star-halo .character-headwear:before{content:"✦";position:absolute;left:8px;top:-8px;color:#ffe275;font-size:21px;text-shadow:0 0 8px #f7c429;animation:studyTwinkle 1.2s infinite alternate}.headwear-phoenix-halo .character-headwear:before{content:"♛";position:absolute;left:6px;top:-10px;color:#ffbd38;font-size:23px;text-shadow:0 0 9px #f0471f;animation:studyTwinkle .9s infinite alternate}
.character-pet{z-index:21;right:-17px;bottom:0;width:22px;height:22px;display:grid!important;place-items:center;border:2px solid #fff;border-radius:50%;background:#f4dfb8;font-style:normal;font-size:13px;box-shadow:0 3px 6px rgba(0,0,0,.25)}.pet-book-cat .character-pet:before{content:"🐱"}.pet-coffee-dog .character-pet:before{content:"🐶"}.pet-owl-scholar .character-pet:before{content:"🦉"}.pet-star-fox .character-pet:before{content:"🦊"}.pet-phoenix-pet .character-pet:before{content:"🔥"}.pet-star-fox .character-pet{box-shadow:0 0 11px #9bb6ff}.pet-phoenix-pet .character-pet{background:#ffca62;box-shadow:0 0 13px #ff5f2c;animation:studyTwinkle 1s infinite alternate}
.outfit-phoenix-red .character-body,.outfit-phoenix-red .character-arm{background:#b52820}.outfit-phoenix-red .character-shirt{background:#f2d5d0}
.outfit-oxford-blue .character-body,.outfit-oxford-blue .character-arm{background:#173c6a}.outfit-oxford-blue .character-shirt{width:9px;background:#f2f0e7;border-left:2px solid #b39655;border-right:2px solid #b39655}
.outfit-forest-green .character-body,.outfit-forest-green .character-arm{background:#315e49}.outfit-forest-green .character-shirt{background:#d8d0ad}
.outfit-cream-cardigan .character-body,.outfit-cream-cardigan .character-arm{background:#e5d4b5}.outfit-cream-cardigan .character-shirt{background:#7d4d3d}
.outfit-graduation-gown .character-body,.outfit-graduation-gown .character-arm{background:#20242b}.outfit-graduation-gown .character-body:after{content:"";position:absolute;left:2px;right:2px;top:7px;height:5px;background:#7f2a2a}.outfit-graduation-gown .character-head:after{content:"";position:absolute;left:-4px;top:-9px;width:31px;height:7px;background:#20242b;transform:skew(-18deg);box-shadow:4px 5px 0 -2px #20242b}
.outfit-starlight-coat .character-body,.outfit-starlight-coat .character-arm{background:linear-gradient(145deg,#203a66,#5f79aa)}.outfit-starlight-coat:before{content:"✦";position:absolute;left:-10px;top:5px;color:#ffe284;font-size:14px;animation:studyTwinkle 1.5s infinite alternate}.outfit-starlight-coat:after{content:"✧";position:absolute;right:-8px;top:25px;color:#fff2a6;font-size:11px;animation:studyTwinkle 1.2s .3s infinite alternate}
.outfit-aurora-hoodie .character-body,.outfit-aurora-hoodie .character-arm{background:linear-gradient(135deg,#00a5a0,#7064d8,#d865a0);background-size:200% 200%;animation:studyAurora 3s ease infinite}.outfit-aurora-hoodie{filter:drop-shadow(0 0 7px rgba(82,223,210,.75))}
.outfit-phoenix-crown .character-body,.outfit-phoenix-crown .character-arm{background:linear-gradient(#9f1e16,#5a0907)}.outfit-phoenix-crown .character-head:after{content:"♛";position:absolute;left:1px;top:-18px;color:#ffd15b;font-size:19px;text-shadow:0 0 8px #ff9c2c}.outfit-phoenix-crown{filter:drop-shadow(0 0 7px rgba(255,139,43,.8))}
.outfit-galaxy-gown .character-body,.outfit-galaxy-gown .character-arm{background:radial-gradient(circle at 35% 25%,#fff 0 2%,transparent 3%),radial-gradient(circle at 70% 70%,#ffe274 0 2%,transparent 3%),linear-gradient(145deg,#150b35,#363e91,#7c2a83)}.outfit-galaxy-gown:before{content:"✦ · ✧";position:absolute;left:-15px;top:2px;width:82px;color:#d8d9ff;font-size:10px;letter-spacing:15px;animation:studyOrbit 3s linear infinite}
.outfit-moonlight-tuxedo .character-body,.outfit-moonlight-tuxedo .character-arm{background:linear-gradient(150deg,#101b35,#44699b)}.outfit-moonlight-tuxedo:before{content:"☾";position:absolute;left:-13px;top:4px;color:#e9edff;font-size:18px;text-shadow:0 0 10px #9ab6ff;animation:studyFloat 2s ease-in-out infinite alternate}
.outfit-celestial-dress .character-body,.outfit-celestial-dress .character-arm{background:linear-gradient(150deg,#e8ebff,#8d90d8,#5c337f)}.outfit-celestial-dress:before,.outfit-celestial-dress:after{content:"✦";position:absolute;color:#fff4bd;text-shadow:0 0 10px #fff}.outfit-celestial-dress:before{left:-12px;top:12px}.outfit-celestial-dress:after{right:-12px;top:28px;animation:studyTwinkle .8s infinite alternate}
.outfit-dragon-scholar .character-body,.outfit-dragon-scholar .character-arm{background:linear-gradient(135deg,#2a0905,#8f2113,#df7927)}.outfit-dragon-scholar:before{content:"◆";position:absolute;left:-15px;top:10px;color:#ff7638;font-size:20px;text-shadow:0 0 12px #ff3518;animation:studyFloat 1s ease-in-out infinite alternate}.outfit-dragon-scholar{filter:drop-shadow(0 0 8px rgba(255,75,30,.8))}
.outfit-crystal-academy .character-body,.outfit-crystal-academy .character-arm{background:linear-gradient(120deg,#b8ffff,#6f9cff,#d385ff);background-size:200%;animation:studyAurora 2s ease infinite}.outfit-crystal-academy:before{content:"◇ ✦ ◇";position:absolute;left:-18px;top:2px;color:#dfffff;font-size:11px;letter-spacing:7px;text-shadow:0 0 9px #8cf7ff;animation:studyOrbit 4s linear infinite}.outfit-crystal-academy{filter:drop-shadow(0 0 9px rgba(124,235,255,.9))}
@keyframes studyTwinkle{to{opacity:.25;transform:scale(.72)}}@keyframes studyAurora{50%{background-position:100% 50%}}@keyframes studyOrbit{to{transform:rotate(360deg)}}@keyframes studyFloat{to{transform:translateY(-5px)}}@keyframes interactionPulse{50%{box-shadow:0 4px 10px rgba(55,35,10,.28),0 0 0 5px rgba(232,170,32,.18)}}
.student-character.is-mine:after{content:"ME";position:absolute;right:-12px;top:0;width:19px;height:19px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;background:#a21d13;color:#fff;font:800 6px Arial;box-shadow:0 2px 5px rgba(0,0,0,.2)}

/* Character preview replaces the old coloured circle in the profile card. */
.study-avatar{overflow:visible;border:0;border-radius:12px;background:linear-gradient(145deg,#dcebed,#9fc8ca);box-shadow:inset 0 0 0 2px #76d8df}
.study-avatar>[data-profile-character]{position:absolute;inset:0}.study-avatar .student-character{top:7px;transform:translateX(-50%) scale(.93);transform-origin:top}.study-avatar .student-character.is-mine:after{display:none}.study-avatar>i{z-index:20}
.shop-symbol{position:relative;overflow:hidden;background:linear-gradient(#e8f0ef,#d7c6aa)}.shop-symbol .student-character{top:-5px;transform:translateX(-50%) scale(.72);transform-origin:top}.shop-symbol .student-character .character-shadow{display:none}
.theme-swatch{width:100%;height:100%;display:grid;place-items:center;font-style:normal;font-size:20px}.theme-sunny-hall{background:linear-gradient(#bfe1e8 0 50%,#d9bd94 50%)}.theme-night-library{background:linear-gradient(#17233b 0 50%,#56412f 50%);color:#f5d376}.theme-rainy-window{background:repeating-linear-gradient(110deg,rgba(255,255,255,.3) 0 2px,transparent 2px 12px),linear-gradient(#6f8f9b 0 50%,#b7aaa0 50%);color:#fff}

/* Preset activities prevent public free-text messages while keeping the check-in playful. */
.study-setup .activity-fieldset{margin-top:0}.activity-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:300px;overflow:auto;padding:2px}.activity-option{position:relative;display:grid!important;grid-template-columns:auto 1fr auto;gap:9px!important;align-items:center;padding:10px;border:1px solid #d4cec2;background:#fff;cursor:pointer}.activity-option:has(input:checked){border-color:#0f7077;background:#eefafa;box-shadow:inset 0 0 0 1px #0f7077}.activity-option input{width:16px;min-height:16px!important;margin:0;accent-color:#0f7077}.activity-option span{display:grid;gap:2px}.activity-option strong{font-size:11px}.activity-option small{color:#777;font-size:9px;font-weight:400}.activity-option em{padding:3px 5px;border-radius:3px;background:#eee8dd;color:#6f6457;font-size:8px;font-style:normal;white-space:nowrap}.activity-option:has(input[value="exam-sprint"]:checked) em,.activity-option:has(input[value="assignment"]:checked) em,.activity-option:has(input[value="thesis"]:checked) em{background:#e6f4ee;color:#13704f}.activity-option:has(input[value="daze"]:checked) em,.activity-option:has(input[value="eyes-rest"]:checked) em,.activity-option:has(input[value="sleep"]:checked) em{background:#fff0df;color:#9b5417}
.profile-school{color:#76d8df!important;font-weight:700}
.session-reward{max-width:650px;margin:10px 0 0!important;padding:8px 10px;border:1px solid #3c4e4d;background:#202828;color:#bcebed!important;line-height:1.55}
.study-action-dialog{width:min(500px,calc(100vw - 32px));padding:30px;border:1px solid #222;background:#fffdf8;color:#191919;box-shadow:18px 18px 0 rgba(0,0,0,.22)}.study-action-dialog::backdrop{background:rgba(14,14,14,.68)}.study-action-dialog h2{margin:7px 0 12px;font-size:26px}.study-action-dialog>p:not(.eyebrow){color:#625d55;line-height:1.7}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.dialog-actions button,.interaction-actions button{padding:11px 16px;border:1px solid #202020;background:#fff;cursor:pointer}.dialog-actions button:last-child{background:#a21d13;color:#fff;border-color:#a21d13}.interaction-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:20px}.interaction-actions button{display:grid;grid-template-columns:32px 1fr;gap:2px 8px;text-align:left}.interaction-actions button span{grid-row:1/3;font-size:22px}.interaction-actions button strong{font-size:12px}.interaction-actions button small{color:#777;font-size:9px}.interaction-actions button:hover{border-color:#0f7077;background:#eefafa}.interaction-actions button:disabled{opacity:.45;cursor:not-allowed}
.coupon-wallet{margin-top:15px;padding-top:14px;border-top:1px solid #ddd5c7}.coupon-wallet>strong{font-size:12px}.coupon-wallet>div{display:grid;gap:7px;margin-top:8px}.coupon-wallet article{display:flex;gap:10px;align-items:center;padding:9px;background:#f7efe2;border:1px dashed #b18a54}.coupon-wallet article>span{min-width:45px;color:#a21d13;font-size:18px;font-weight:900}.coupon-wallet article div{display:grid}.coupon-wallet article strong{font-size:11px;letter-spacing:.05em}.coupon-wallet article small{color:#777;font-size:9px}

/* Purchased room themes now change the whole room, not only the header avatar. */
.classroom[data-theme="night-library"]{background:linear-gradient(180deg,#222a33 0 31%,#4c392e 31% 100%);box-shadow:inset 0 30px 70px rgba(0,0,0,.4);color:#f5eddb}.classroom[data-theme="night-library"]:before{background:repeating-linear-gradient(90deg,rgba(18,12,10,.32) 0 1px,transparent 1px 92px),repeating-linear-gradient(0deg,rgba(18,12,10,.26) 0 1px,transparent 1px 72px),linear-gradient(90deg,#553b2d,#76513a 52%,#493127)}.classroom[data-theme="night-library"] .room-ceiling{background:#11171c}.classroom[data-theme="night-library"] .room-ceiling i{background:#e9bc62;box-shadow:0 0 24px 10px rgba(238,186,83,.42)}.classroom[data-theme="night-library"] .classroom-windows i{background:radial-gradient(circle at 75% 25%,#f0dc8d 0 5%,transparent 6%),linear-gradient(#101a36 0 58%,#263d5e 59% 72%,#151d27 73%)}.classroom[data-theme="night-library"] .classroom-board{background:rgba(25,35,41,.94);box-shadow:0 11px 0 #6e503a,0 18px 28px rgba(0,0,0,.4)}.classroom[data-theme="night-library"] .room-legend{color:#eee1cd}
.classroom[data-theme="rainy-window"]{background:linear-gradient(180deg,#aab9bc 0 31%,#81796e 31% 32%,#b9aa97 32% 100%);box-shadow:inset 0 25px 70px rgba(36,62,68,.25)}.classroom[data-theme="rainy-window"] .classroom-windows i{background:repeating-linear-gradient(106deg,rgba(255,255,255,.32) 0 2px,transparent 2px 13px),linear-gradient(#647f8c 0 60%,#9fb0b4 61% 73%,#536b6c 74%)}.classroom[data-theme="rainy-window"] .room-ceiling i{background:#d9eef0;box-shadow:0 0 18px 7px rgba(207,238,242,.35)}

@media(max-width:1050px){.classroom{padding-left:30px;padding-right:30px}.room-bookshelf,.room-plant{display:none}.seat-grid{grid-template-columns:repeat(4,minmax(76px,1fr))}}
@media(max-width:620px){.classroom{min-height:660px;padding:30px 13px}.classroom-windows{inset:48px 3% auto}.room-clock{display:none}.classroom-board{width:82%;margin-top:120px}.teacher-desk{margin-bottom:70px}.seat-grid{grid-template-columns:repeat(3,minmax(72px,1fr));gap:66px 10px}.student-character{transform:translateX(-50%) scale(.88);transform-origin:bottom}.student-status{max-width:105px;bottom:calc(100% + 67px)}.student-status b{max-width:87px}.seat-accessory{right:4px}.room-ceiling i{width:65px}.room-ceiling i:nth-child(2){left:calc(50% - 32px)}.activity-options{grid-template-columns:1fr}}
