/* The school hub is a place, with one immediate action. Statistics stay in their own screens. */
.player-shell.campus-shell .content{padding:0;max-width:none}.campus-shell .topbar,.campus-shell .footer{display:none}
.campus{position:relative;isolation:isolate;min-height:680px;height:100svh;max-height:1100px;overflow:hidden;color:#fff5e5;background:url('./assets/school-scenes-v6.png') left top/200% 200% no-repeat;background-color:#473e35}
.campus.scene-locker{background-image:url('./assets/football-spaces-v6.png')}.campus.scene-classroom{background-position:right top}
.campus-light{position:absolute;inset:0;background:linear-gradient(90deg,#101b24a8,transparent 75%),linear-gradient(0deg,#0d1827 1%,#101a2540 33%,transparent 70%,#101b2470);z-index:-1}
.campus button{color:inherit}.campus-head{position:absolute;top:26px;left:34px;right:34px;display:flex;align-items:center;justify-content:space-between}.campus-school{padding:0;border:0;background:none;text-align:left}.campus-school:hover{background:none}.campus-school span{display:block;font-size:12px;letter-spacing:2px;color:#e8b976}.campus-school b{font-size:23px;letter-spacing:-.7px}.campus-save{background:#18253299;border:1px solid #fff5;border-radius:3px;padding:8px 14px;font-size:13px}
.campus-calendar{position:absolute;top:115px;left:36px;display:grid;gap:2px}.campus-calendar>b{font-size:30px;font-weight:500;letter-spacing:-1px}.campus-calendar>b>span{font-size:19px}.campus-calendar>span{font-size:13px;color:#e4cfad}.campus-places{position:absolute;top:206px;left:36px;display:flex;gap:22px;border-bottom:1px solid #fff4}.campus-places button{border:0;border-radius:0;background:none;padding:9px 0;font-size:14px;color:#e2d7cb}.campus-places button.selected{color:#ffcf88;border-bottom:2px solid #ffcf88}.campus-places button:hover{color:#fff4c5;background:transparent}
.campus-condition{position:absolute;top:280px;left:36px;display:flex;gap:28px}.campus-condition button{padding:0;width:100px;text-align:left;background:none;border:0}.campus-condition button>span{display:block;font-size:12px;color:#dfd2c5}.campus-condition strong{display:block;font-size:30px;font-weight:500;line-height:1.5}.campus-condition small{font-size:13px;color:#cfbda4;margin-left:4px}.campus-condition i{display:block;height:3px;background:linear-gradient(to right,#f2c684 var(--amount),#fff3 var(--amount))}.campus-condition em{font-size:11px;font-style:normal;color:#e9c995}
.campus-person{position:absolute;bottom:150px;right:8%;width:43%;height:69%;background:transparent!important;border:0;padding:0;filter:drop-shadow(0 12px 15px #141b2055);transition:filter .2s}.campus-portrait{width:100%;height:100%;display:block;overflow:hidden}.campus-portrait>rect,.campus-portrait>ellipse{display:none}.campus-person>span{position:absolute;bottom:6px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:8px 17px;background:#14232ee8;border:1px solid #f3d39a88;border-radius:2px;font-size:16px}.campus-person>span i{font-style:normal;font-size:11px;color:#e8c89c;margin-left:13px}.campus-person:hover{filter:drop-shadow(0 5px 20px #ffcb6880)}
.campus-remark{position:absolute;left:36px;bottom:240px;max-width:34%;pointer-events:none;text-shadow:0 2px 10px #000}.campus-remark>span{font-size:12px;color:#f1c98b}.campus-remark p{font-size:22px;line-height:1.65;word-break:keep-all;margin-top:10px}
.campus-bottom{position:absolute;bottom:28px;left:36px;right:36px;max-width:900px}.campus-fixture{width:100%;display:flex;justify-content:space-between;align-items:center;background:#12202ccc;border:1px solid #b7a08455;border-radius:3px;padding:12px 18px;margin-bottom:10px;text-align:left}.campus-fixture>span{font-size:12px;color:#cec1af}.campus-fixture>span b{color:#f3d093;font-weight:500;margin-left:9px}.campus-fixture>strong{font-weight:500;font-size:15px}.campus-fixture i{font-style:normal;margin-left:20px;color:#e9ba7b}.campus-action-row{display:grid;grid-template-columns:1fr 160px;gap:10px}.campus-continue{display:flex;justify-content:space-between;align-items:center;background:#e8bf83;border:1px solid #ffe0ab;border-radius:3px;color:#26252a!important;padding:15px 20px;min-height:58px;font-size:18px;font-weight:700}.campus-continue:hover{background:#f5d5a4}.campus-continue>b{font-size:24px;font-weight:400}.campus-after{background:#182737;border:1px solid #c9ac8255;border-radius:3px;font-size:15px}.campus-after small{display:block;font-size:10px;color:#b5bdc3}.campus button:focus-visible{outline:3px solid #fff3c6;outline-offset:3px}
/* Conversations open directly on the same illustrated set, before the optional dossier. */
.modalback:has(.school-conversation){padding:0;background:#081320ed;overflow:auto}.modal:has(.school-conversation){position:relative;padding:0;width:min(1100px,100vw);max-width:none;height:min(780px,100svh);max-height:none;overflow:hidden;border:0;border-radius:0;margin:0;background:#14222e}.modal:has(.school-conversation)>.close{position:absolute;right:16px;top:15px;z-index:10;width:40px;height:40px;padding:0;background:#14212ec9;border:1px solid #fff5;color:#fff5e5;border-radius:3px}
.school-conversation{position:relative;isolation:isolate;height:100%;min-height:540px;color:#fff1df;overflow:hidden;background:url('./assets/football-spaces-v6.png') left top/200% 200% no-repeat}.school-conversation.scene-tunnel{background-image:url('./assets/school-scenes-v6.png');background-position:right bottom}.conversation-shade{position:absolute;inset:0;background:linear-gradient(0deg,#0a1828 0%,#111e2e25 65%,#0a182899);z-index:-1}.conversation-head{position:absolute;left:28px;right:78px;top:20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.conversation-head>span{font-size:14px;text-shadow:0 1px 4px #000}.conversation-head small{display:block;color:#dabf9a;font-size:11px}.conversation-head button{padding:8px 12px;background:#122334cc;border:1px solid #fff5;color:#fff0d9;font-size:12px;border-radius:3px}.conversation-portrait{position:absolute;left:4%;bottom:0;width:52%;height:89%;pointer-events:none}.dialogue-portrait{width:100%;height:100%}.dialogue-portrait>rect,.dialogue-portrait>ellipse{display:none}.conversation-identity{position:absolute;right:7%;top:19%;width:33%;text-shadow:0 2px 8px #101923}.conversation-identity>span{color:#edc591;font-size:13px}.conversation-identity h1{font-size:37px;letter-spacing:-1px;margin:6px 0}.conversation-identity p{font-size:14px;color:#ddd1be}
.conversation-panel{position:absolute;left:4%;right:4%;bottom:28px;background:#122032f5;border:1px solid #b7a080;border-top:2px solid #e7bf87;border-radius:2px;padding:20px 26px;box-shadow:0 10px 30px #0015}.conversation-speaker{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.conversation-speaker>b{font-size:16px;color:#efc58d}.conversation-speaker>span{font-size:11px;color:#b3b7bd}.conversation-panel>p{font-size:19px;line-height:1.75;word-break:keep-all}.conversation-next{display:block;margin-left:auto;margin-top:12px;border:0;background:none!important;color:#e8c48d;padding:8px 0 4px 24px;font-size:13px;min-height:40px}.conversation-next span{margin-left:18px}.conversation-choices{display:grid;margin-top:16px;border-top:1px solid #b8c0cd33}.conversation-choices>button{display:grid;grid-template-columns:28px 1fr;gap:0 9px;text-align:left;border:0;border-bottom:1px solid #b8c0cd33;border-radius:0;background:transparent;color:#f0e8d9;padding:12px 5px;min-height:59px}.conversation-choices>button:hover{background:#dfbd8522}.conversation-choices>button>span{grid-row:1/3;align-self:center;font-size:11px;color:#dcbd8d}.conversation-choices b{font-size:15px;font-weight:500}.conversation-choices small{font-size:11px;color:#9aaabb}.conversation-cost{display:block;text-align:right;margin-top:10px;font-size:10px;color:#a7b4c1}
@media(max-width:700px){
 .player-shell.campus-shell>.main{padding-bottom:65px}.campus{height:calc(100svh - 65px);min-height:590px;max-height:none;background-size:auto 200%;background-position-x:12%}.campus.scene-classroom{background-position-x:88%}.campus.scene-locker{background-position-x:8%}
 .campus-head{top:18px;left:20px;right:20px}.campus-school span{font-size:10px;letter-spacing:1px}.campus-school b{font-size:20px}.campus-save{font-size:11px;padding:7px 10px}.campus-calendar{top:94px;left:22px}.campus-calendar>b{font-size:25px}.campus-calendar>b>span{font-size:16px}.campus-calendar>span{font-size:11px}.campus-places{left:22px;top:163px;gap:21px}.campus-places button{font-size:12px;padding:8px 0}.campus-condition{left:22px;top:218px;gap:0;flex-direction:column}.campus-condition button{width:70px;margin-bottom:17px}.campus-condition strong{font-size:25px}.campus-condition button>span{font-size:10px}.campus-condition small{font-size:11px}.campus-condition em{font-size:10px}
 .campus-person{width:73%;height:58%;right:-7%;bottom:134px}.campus-person>span{font-size:13px;bottom:13px;padding:7px 11px}.campus-person>span i{font-size:10px;margin-left:8px}.campus-remark{left:22px;bottom:165px;max-width:42%}.campus-remark>span{font-size:10px}.campus-remark p{font-size:15px;line-height:1.65;margin-top:5px}.campus-bottom{left:16px;right:16px;bottom:16px}.campus-fixture{padding:10px 12px;margin-bottom:8px;gap:10px}.campus-fixture>span{font-size:10px;white-space:nowrap}.campus-fixture>span b{margin-left:5px}.campus-fixture>strong{font-size:12px}.campus-fixture i{margin-left:6px}.campus-action-row{grid-template-columns:1fr 100px;gap:8px}.campus-continue{font-size:16px;min-height:53px;padding:10px 15px}.campus-after{font-size:13px;padding:6px}.campus-shell .nav{padding:3px 4px}.campus-shell .nav>button{min-height:56px}
 .modal:has(.school-conversation){width:100vw;height:100svh;border-radius:0}.school-conversation{min-height:540px;background-size:auto 200%;background-position-x:7%}.school-conversation.scene-tunnel{background-position-x:88%}.conversation-head{left:18px;top:18px;right:67px;gap:8px}.conversation-head>span{font-size:12px}.conversation-head small{font-size:10px}.conversation-head button{font-size:10px;padding:7px 8px}.modal:has(.school-conversation)>.close{top:16px;right:14px;width:34px;height:34px}.conversation-portrait{left:3%;width:92%;height:75%;bottom:7%}.conversation-identity{top:94px;left:23px;right:auto;width:75%}.conversation-identity>span{font-size:11px}.conversation-identity h1{font-size:28px;margin:3px 0}.conversation-identity p{font-size:11px}.conversation-panel{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:16px 18px}.conversation-panel>p{font-size:16px;line-height:1.75}.conversation-speaker>b{font-size:14px}.conversation-speaker>span{font-size:10px}.conversation-choices{margin-top:12px}.conversation-choices>button{padding:10px 3px;min-height:58px;grid-template-columns:22px 1fr;gap:0 6px}.conversation-choices b{font-size:14px}.conversation-choices small{font-size:10px}.conversation-next{font-size:12px;margin-top:6px}
}
@media(max-height:690px) and (max-width:700px){.campus{min-height:550px}.campus-remark{display:none}.campus-condition{top:210px}.campus-person{height:60%;bottom:124px}.conversation-identity{top:72px}.conversation-identity p{display:none}.conversation-portrait{height:78%;bottom:2%}.conversation-choices>button{min-height:49px;padding:7px 3px}.conversation-panel>p{font-size:14px}.conversation-panel{padding:13px 16px}}

.school-bio-note{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 0;border-top:1px solid #536173;margin-top:20px}.school-bio-note b{font-size:15px}.school-bio-note span{font-size:13px;color:#bdc6cb}.school-bio-note button{margin-left:auto;font-size:13px}

.campus-portrait,.dialogue-portrait{background:transparent;border:0;border-radius:0;display:block}
body:has(.modalback){overflow:hidden}
@media(max-width:700px){.player-shell.campus-shell{padding-bottom:0}.campus-shell .nav{margin:0}.modalback:has(.school-conversation){overflow:hidden}.modal:has(.school-conversation){width:100%;max-width:100%;flex-shrink:0}}

.conversation-outcome{display:block;color:#d8c39f;font-size:12px;margin-top:10px}
.player-shell.novel-shell{padding-bottom:0}

/* the school locker room is the story stage's locker (story-spaces-v17, right-bottom quadrant), not the pro dressing room */
.campus.scene-locker{background-image:url('./assets/story-spaces-v17.png');background-position:right bottom}
@media(max-width:700px){.campus.scene-locker{background-position:74% 100%}}
