/* UI typography is rendered at native resolution; pixel treatment is reserved for character art. */
body{font-family:'Malgun Gothic','Apple SD Gothic Neo',system-ui,sans-serif;font-size:16px;line-height:1.65;text-rendering:optimizeLegibility}.player-shell{--muted:#acbabf}.content{max-width:1600px}.player-shell .content{max-width:1500px}.eyebrow{font-size:12px;letter-spacing:1.2px}.tagline,.navlabel{font-size:11px;letter-spacing:1px}.nav button,.player-shell .nav button{font-size:15px;padding:11px}.player-shell .nav{gap:2px}.sidebottom{padding-top:12px}.sidebar{overflow-y:auto;padding-top:22px}.sidebar .tagline{margin-bottom:12px}label,.subtitle,small,.muted,.setup-note,.warning{font-size:14px;line-height:1.65}.introform label{font-size:15px}.introform input,.introform select{font-size:17px;min-height:48px}.rolecards small{font-size:14px}.club-start-preview small,.setup-player-preview p{font-size:14px}.topbar{gap:14px}.topactions{align-items:center}.topactions button{font-size:14px}.save-status{font-size:12px}.date{font-size:15px}.exp-heading h1{font-size:32px;letter-spacing:-.6px}.exp-heading .eyebrow,.exp-role{font-size:13px}.exp-ground-top{font-size:12px;letter-spacing:.6px}.exp-ground-top>span:last-child{font-size:12px}.exp-ground-bottom small,.exp-fixture small,.exp-fixture-meta,.exp-meter span,.exp-selection small,.exp-season-strip small{font-size:14px}.exp-fixture b{font-size:16px}.exp-ground canvas{height:auto!important;min-height:0!important;aspect-ratio:5/3;object-fit:contain;image-rendering:auto}.live-pitch-wrap canvas,#pitch{width:100%;height:auto;aspect-ratio:5/3;max-height:none;image-rendering:auto;object-fit:contain}.live-pitch-wrap canvas{cursor:pointer}.live-user,#pitchaction,#livestatus{font-size:14px}.live-controls button{font-size:15px}.exp-card-title{font-size:16px}.exp-card-title small,.exp-rivals small,.exp-training-tradeoff,.career-stages b{font-size:13px}.exp-focuses b,.exp-focuses strong,.selection-note,.selection-bench small,.squad-token b,.squad-token small{font-size:14px}.selection-pitch .squad-token{border:1px solid transparent;background:transparent;cursor:pointer;padding:4px;min-width:80px}.selection-pitch .squad-token:hover{background:#ffffff16;border-color:#d4e9aa}.selection-bench button{font-size:14px}.exp-secondary,.exp-player-title .linkbutton{font-size:14px}.dossier-identity h1{font-size:27px}.dossier-identity p,.dossier-numbers>span,.appearance-editor summary,.appearance-editor label,.appearance-editor select,.appearance-editor>button{font-size:14px}.portrait-large{aspect-ratio:3/4}.dossier-identity{max-height:none}.portrait-home{width:90px;height:120px}.portrait-nav{width:42px;height:56px}.portrait-row{width:34px;height:46px}.role-position h2{font-size:24px}.role-position small,.role-coach,.role-explainer{font-size:13px}.role-phases h3{font-size:16px}.football-role{padding:15px}.football-role b{font-size:15px}.football-role>small{font-size:13px;line-height:1.7}.role-fit,.role-fit b{font-size:13px}.role-keys span,.role-keys b{font-size:12px}.brief-role>span,.brief-role b{font-size:13px}.role-stars{font-size:14px}.attribute-line,.attribute-line b{font-size:15px;line-height:2.2}.dossier-attributes h3{font-size:16px}.dossier-attributes h3 small,.full-attributes>summary small{font-size:13px}.full-attributes>summary{font-size:17px}.role-position{gap:24px}.role-mini-pitch{width:190px;height:240px}.position-dot{font-size:11px;min-width:30px;min-height:30px}.player-dossier{grid-template-columns:250px minmax(0,1fr)}.dossier-attributes{gap:22px}.modal:has(.player-dossier){max-width:1200px;width:96vw}.minitable{font-size:14px}.minitable th,.minitable td{font-size:14px;padding:12px 10px}.minitable .linkbutton{font-size:15px}.setup-portrait{width:98px;height:132px}.portrait-home,.portrait-nav,.portrait-large,.companion-portrait{image-rendering:auto}.result-coach p,.result-decisions b{font-size:15px}
.life-subtitle{font-size:15px;color:#afc1c4;margin-top:8px}.life-week{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;background:#142631;border:1px solid #3d5260;border-radius:14px;padding:24px;margin-bottom:32px}.life-week strong{display:block;font-size:32px;color:#e8edcf}.life-week strong span{font-size:16px;color:#a6b8be;margin-left:6px}.life-week p{font-size:13px;color:#b1c2c8}.life-week>div:nth-child(2){display:flex;gap:10px}.life-week>div:last-child{text-align:right}.life-week small{font-size:13px}.life-section{margin:30px 0}.life-section-title{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px}.life-section-title h2{font-size:23px}.life-section-title>span{font-size:13px;color:#acbdc4}.companion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start}.companion-card{background:#152731;border:1px solid #385160;border-radius:13px;overflow:hidden}.companion-card.married{border-color:#d9bb76}.companion-art{position:relative;background:radial-gradient(ellipse at bottom,#44515c,#1a2b35 75%);height:230px;overflow:hidden}.companion-portrait{width:100%;height:100%;display:block;object-fit:contain}.companion-art>span{position:absolute;top:10px;left:10px;border-radius:4px;background:#101c2ee8;padding:4px 8px;font-size:12px;color:#e3d8bd}.companion-info{padding:17px}.companion-info h3{font-size:19px}.companion-info h3 small{font-size:13px;margin-left:9px}.companion-info>p{font-size:14px;color:#a6c1cb;margin:6px 0 14px}.companion-info>small{font-size:12px;min-height:44px;display:block;color:#bec7c3}.affection-meter{height:5px;background:#33434b;border-radius:4px;overflow:hidden;margin:10px 0}.affection-meter i{height:100%;display:block;background:#df9da6}.companion-info>button{width:100%;margin-top:14px;font-size:14px}.companion-info details{margin-top:10px;font-size:13px}.companion-info details p,.companion-info details small{font-size:12px;color:#b1c2c2}.companion-actions{display:grid;gap:7px;margin:12px 0}.companion-actions button{font-size:13px;padding:9px}.life-shop{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.life-shop article{display:flex;gap:16px;align-items:center;background:#162832;border:1px solid #3b505a;border-radius:10px;padding:19px}.asset-icon{display:grid;place-items:center;width:44px;height:44px;font-size:29px;color:#dfc58f;flex-shrink:0}.life-shop article>div{flex:1;min-width:0}.life-shop h3{font-size:16px}.life-shop b{display:block;font-size:18px;color:#dbcd9e}.life-shop small{font-size:12px;display:block}.life-shop button{font-size:14px;flex-shrink:0}.life-history{display:flex;gap:20px;border-bottom:1px solid #30434c;padding:16px 0}.life-history>small{font-size:12px;min-width:70px}.life-history b{font-size:15px}.life-history p{font-size:14px;color:#a8bcc3;margin-top:5px}.life-empty{padding:30px;border:1px dashed #48606c;border-radius:10px;color:#b5c7ca}.life-ledger>summary{font-size:15px;cursor:pointer}.life-ledger p{display:flex;justify-content:space-between;gap:20px;font-size:14px;border-bottom:1px solid #30434c;padding:10px}.event-notification{width:100%;text-align:left;padding:18px;background:#364234;border:1px solid #c6b576;color:#e5e5cc;margin-bottom:20px;font-size:16px}.event-notification b{float:right}.story-scene{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.4fr);gap:36px;padding:35px;background:#152834;border:1px solid #41566a;border-radius:16px;min-height:550px;align-items:center}.story-portrait{height:460px;background:radial-gradient(ellipse at center,#58606533,transparent 70%)}.story-symbol{font-size:115px;color:#d8c789;text-align:center}.story-content h1{font-size:30px;line-height:1.4;margin:14px 0 22px}.story-content>p{font-size:17px;color:#c1cfd1;line-height:1.9}.story-choices{display:grid;gap:12px;margin-top:26px}.story-choices>button{display:grid;grid-template-columns:1fr auto;text-align:left;padding:17px 20px;border:1px solid #57707b;background:#213845;border-radius:9px;color:#edf3e9}.story-choices b{font-size:16px;grid-column:1}.story-choices small{font-size:13px;grid-column:1;color:#b2c5c9;margin-top:5px}.story-choices span{grid-column:2;grid-row:1/3;align-self:center;font-size:25px;color:#e4d29d}.story-choices>button:hover{background:#344b50;border-color:#d5bc78}.story-save-note{display:block;margin-top:20px;font-size:13px}.family-card{background:#24392d;border:1px solid #63825d;padding:24px;border-radius:12px}.family-card p{font-size:15px;margin-top:10px}.family-news{color:#e3cb91!important;font-size:13px!important}
@media(max-width:1200px){.companion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-phases{grid-template-columns:1fr}.player-dossier{grid-template-columns:230px minmax(0,1fr)}.dossier-attributes{grid-template-columns:repeat(2,minmax(0,1fr))}.life-week{grid-template-columns:1fr 1fr}.life-week>div:nth-child(2){grid-row:2;grid-column:1/-1}.life-week>div:last-child{grid-row:1;grid-column:2}.story-scene{gap:22px;padding:24px}}
@media(max-width:700px){.shell{display:block}.main{width:100%}.content,.player-shell .content{padding:20px 16px}.player-shell .sidebar{position:static;width:100%;height:auto;padding:14px}.player-shell .nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.player-shell .nav button{font-size:13px;justify-content:center;gap:5px;padding:10px 5px}.sidebar .sidebottom,.sidebar .tagline,.sidebar .navlabel{display:none}.topbar,.player-shell .topbar{height:auto;min-height:64px;padding:12px 16px;flex-wrap:wrap}.topactions{flex-wrap:wrap;width:100%;gap:6px}.topactions button{font-size:13px;padding:9px 10px}.topactions .save-status{margin-left:auto;order:5}.exp-heading h1{font-size:28px}.exp-ground{min-height:320px}.exp-ground-bottom{left:16px;right:16px;bottom:18px}.exp-ground-bottom h2{font-size:24px}.exp-ground-top{left:16px;right:16px;font-size:11px}.exp-ground-top>span:last-child{font-size:11px}.exp-player-title h1{font-size:27px}.brief-role{display:grid;gap:4px}.brief-role>span,.brief-role b{font-size:12px}.portrait-home{width:68px;height:91px}.player-dossier,.modal .player-dossier{display:block}.dossier-identity{display:grid;grid-template-columns:140px 1fr}.portrait-large{width:140px;height:187px}.dossier-identity h1{font-size:24px}.dossier-identity p{font-size:14px}.appearance-editor{grid-column:1/-1}.dossier-identity>div{padding:15px}.dossier-roles,.full-attributes{padding:16px}.role-position{gap:16px;align-items:center}.role-mini-pitch,.modal .role-mini-pitch{width:150px;height:205px}.role-position h2{font-size:18px}.role-position small{font-size:12px}.position-dot{font-size:10px;min-width:27px;min-height:28px}.role-fit,.role-fit b{font-size:13px}.football-role b{font-size:15px}.football-role>small{font-size:13px}.role-keys span,.role-keys b{font-size:12px}.role-explainer{font-size:12px}.dossier-attributes{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.attribute-line,.attribute-line b{font-size:14px}.life-week{padding:18px;gap:14px}.life-week strong{font-size:27px}.life-week p{font-size:12px}.life-week small{font-size:12px}.life-section-title{align-items:start;flex-direction:column;gap:6px}.companion-grid{gap:12px}.companion-art{height:205px}.companion-info{padding:13px}.companion-info h3{font-size:17px}.companion-info>p{font-size:13px}.companion-info>small{font-size:12px}.companion-info>button{font-size:13px;padding:10px 4px}.life-shop{grid-template-columns:1fr}.life-shop article{padding:15px;gap:12px}.story-scene{grid-template-columns:1fr;padding:22px 18px;gap:12px}.story-portrait{height:265px}.story-symbol{font-size:70px}.story-content h1{font-size:26px}.story-content>p{font-size:16px}.story-choices b{font-size:15px}.story-choices small{font-size:13px}.life-history{gap:12px}.life-history>small{min-width:55px;font-size:11px}.appearance-editor>div{grid-template-columns:repeat(2,minmax(0,1fr))}.minitable{min-width:620px}.story-choices>button{padding:15px}.event-notification b{float:none;display:block;margin-top:5px}.live-scoreboard{font-size:16px}.exp-heading .exp-role{font-size:12px}.career-stages b{font-size:12px}}

/* Part I: the school cast and their shared football summer. */
.chapter-banner{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.2fr);align-items:center;gap:32px;padding:40px 36px;margin-bottom:32px;min-height:430px;border:1px solid #5b7162;border-radius:18px;background:radial-gradient(ellipse at 80% 85%,#355d485e,transparent 65%),linear-gradient(125deg,#182d39,#12232f 65%);box-shadow:inset 0 4px #c9ae69;overflow:hidden;color:#f2efdf}
.chapter-banner>div{min-width:0}.chapter-banner .eyebrow{color:#d4bb7b;font-size:13px}.chapter-banner h1{font-size:clamp(32px,3.5vw,52px);line-height:1.3;letter-spacing:-1.7px;margin:14px 0 20px;word-break:keep-all}.chapter-banner p{font-size:16px;line-height:1.85;color:#c1d0c9;margin:18px 0 24px;max-width:32em}.chapter-banner>div:first-child>button,.school-dialogue-teaser button,.school-talk-buttons button,.pro-offers button{min-height:46px;padding:11px 17px;font-size:15px;line-height:1.5;border-radius:7px}.chapter-banner>div:first-child>button{background:#e8d498;color:#172f31;border:1px solid #ecdcae;font-weight:700}
.chapter-years{display:flex;gap:8px}.chapter-years span{display:grid;place-items:center;min-width:63px;min-height:36px;padding:4px 12px;font-size:15px;border:1px solid #50635f;border-radius:5px;color:#a9b9b8}.chapter-years .current{border-color:#d8bd7a;background:#43614b;color:#fff3c8}
.chapter-cast{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end;padding:18px 0 0}.chapter-cast>button{display:flex;min-width:0;flex-direction:column;align-items:center;background:transparent;border:1px solid transparent;padding:8px 2px;color:#efefdc;transition:transform .18s,border-color .18s;border-radius:11px}.chapter-cast>button:nth-child(2){transform:translateY(-13px)}.chapter-cast>button:hover{border-color:#a4bb93;transform:translateY(-5px)}.chapter-cast>button:nth-child(2):hover{transform:translateY(-18px)}.chapter-cast .player-portrait{display:block;width:100%;height:auto;aspect-ratio:3/4;max-height:310px;border-bottom:2px solid #8aa879;border-radius:9px 9px 0 0}.chapter-cast b{font-size:18px;margin-top:10px;word-break:keep-all}.chapter-cast small{font-size:15px;color:#cbbd91;margin-top:2px}
.school-dialogue-teaser{display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:24px;align-items:center;margin:30px 0;padding:22px 26px;background:#20382f;border:1px solid #5a7762;border-left:4px solid #cfb16e;border-radius:10px}.school-dialogue-teaser>div{min-width:0}.school-dialogue-teaser .player-portrait{display:block;width:100%;aspect-ratio:3/4;border-radius:7px}.school-dialogue-teaser small{font-size:15px;color:#dbca98}.school-dialogue-teaser p{font-size:18px;line-height:1.8;color:#eeeeda;margin:8px 0 14px}.school-dialogue-teaser button{background:#142b30;border:1px solid #7c9980;color:#f0efdc}.school-dialogue-teaser>button{max-width:220px}
.school-cup-note{font-size:16px;color:#d5d4b7;line-height:1.8;margin:20px 0 4px}.school-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.school-card{display:flex;align-items:center;gap:14px;min-width:0;min-height:155px;padding:14px 12px;text-align:left;color:#f0eddd;background:#192e38;border:1px solid #405661;border-top:3px solid var(--school-colour,#6c9772);border-radius:10px;overflow:hidden}.school-card .player-portrait{display:block;width:88px;height:118px;flex-shrink:0;border-radius:7px}.school-card>div{display:grid;gap:5px;min-width:0}.school-card small{font-size:15px;color:#c9ba91;line-height:1.5}.school-card b{font-size:17px;line-height:1.5;overflow-wrap:anywhere}.school-card span{font-size:15px;color:#afc2c6;line-height:1.6}.school-card.powerhouse{border-color:#bc9e5d;background:linear-gradient(140deg,#3d3830,#1c3038)}.school-card:hover,.school-roster>button:hover{border-color:#d8c487;background-color:#29423e}.school-card .kit-badge{width:65px;height:92px;flex-shrink:0}
.school-bracket{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.school-bracket article{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);align-items:center;gap:8px;padding:17px 12px;background:#1b3038;border:1px solid #4d6268;border-radius:9px}.school-bracket article>span{font-size:13px;color:#d2b971;text-align:center}.school-bracket button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:96px;min-width:0;padding:8px 6px;font-size:16px;line-height:1.5;word-break:keep-all;overflow-wrap:anywhere;border:1px solid transparent;border-radius:7px;background:transparent;color:#eeeddf}.school-bracket button:hover{border-color:#b7c491;background:#324a44}.school-bracket .kit-badge{width:32px;height:46px}.school-bracket>.life-empty{grid-column:1/-1;font-size:16px}
.school-roster{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.school-roster>button{display:flex;min-width:0;flex-direction:column;align-items:center;gap:5px;padding:14px 13px 20px;text-align:center;background:#182d38;color:#ececdb;border:1px solid #405965;border-radius:11px}.school-roster .player-portrait{display:block;width:100%;max-width:190px;aspect-ratio:3/4;border-radius:8px;margin-bottom:9px}.school-roster b{font-size:19px;line-height:1.5}.school-roster span{font-size:15px;line-height:1.6;color:#c4d1cc}.school-roster small{font-size:15px;line-height:1.6;color:#c9b987}.school-roster>.life-empty{grid-column:1/-1;font-size:16px}
.school-biography{padding:24px;margin:20px 0;background:#21372f;border:1px solid #62775e;border-left:4px solid #c5aa66;border-radius:9px}.school-biography .eyebrow{font-size:13px;color:#d7c285}.school-biography h3{font-size:23px;margin:10px 0;color:#f1edd6}.school-biography p{font-size:17px;line-height:1.9;color:#e0e5d3;margin:14px 0}.school-biography>small{display:block;font-size:15px;line-height:1.8;color:#bdcbbd;margin:6px 0}.school-talk-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:23px 0 16px}.school-talk-buttons button{background:#172d33;color:#f2eddb;border:1px solid #78957a;flex:1 1 160px}.school-talk-buttons button:hover:not(:disabled){background:#3a5742;border-color:#d2bb7d}.school-talk-buttons button:disabled{opacity:.5;cursor:not-allowed}
.graduation-scene{padding:48px 36px;text-align:center;color:#233731;background:radial-gradient(ellipse at 50% 42%,#fffdf1 0,#e9e4d1 70%);border:1px solid #c8b77f;border-top:5px solid #31543c;border-radius:16px}.graduation-scene>.eyebrow{font-size:14px;color:#66734e}.graduation-scene h1{font-size:clamp(36px,5vw,65px);line-height:1.3;letter-spacing:-2px;margin:20px 0 28px}.graduation-cast{display:flex;justify-content:center;align-items:end;gap:24px;max-width:590px;margin:0 auto 26px}.graduation-cast>.player-portrait{display:block;width:calc(50% - 12px);max-width:245px;aspect-ratio:3/4;border:1px solid #a5ac86;border-radius:11px;box-shadow:0 14px 25px #243b281a}.graduation-scene>p{font-size:18px;line-height:1.9;color:#3d5041}.graduation-record{display:flex;justify-content:center;gap:0;margin:30px auto 42px;padding:22px 0;border-block:1px solid #b9bea6;max-width:650px}.graduation-record span{flex:1;padding:0 12px;font-size:15px;color:#56624f;border-right:1px solid #c3c7b2}.graduation-record span:last-child{border-right:0}.graduation-record b{display:block;color:#294735;font-size:27px;margin-top:4px}.graduation-scene h2{font-size:28px;margin:16px 0 8px}.graduation-scene>.life-subtitle{font-size:16px;color:#59664e}.pro-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;text-align:left;margin-top:28px}.pro-offers article{display:flex;min-width:0;flex-direction:column;align-items:start;padding:25px 20px;color:#ecebd9;background:#1a303a;border:1px solid #69806a;border-radius:11px}.pro-offers .kit-badge{width:48px;height:68px;margin-bottom:14px}.pro-offers h3{font-size:23px;margin:0 0 10px}.pro-offers p{font-size:15px;color:#bdceca;margin-bottom:17px}.pro-offers b{font-size:19px;color:#dfc68b}.pro-offers small{font-size:15px;color:#b8c8c5;line-height:1.8;margin:8px 0 22px}.pro-offers button{margin-top:auto;width:100%;background:#d8c28b;border:1px solid #e9dba9;color:#20362d;font-weight:700}.chapter-cast>button:focus-visible,.school-card:focus-visible,.school-roster>button:focus-visible,.school-bracket button:focus-visible,.school-talk-buttons button:focus-visible,.pro-offers button:focus-visible{outline:3px solid #e7d896;outline-offset:3px}
@media(max-width:1200px){.chapter-banner{padding:32px 26px;gap:20px;grid-template-columns:minmax(245px,.9fr) minmax(0,1.1fr)}.chapter-cast b{font-size:16px}.school-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.school-card{flex-direction:column;text-align:center}.school-card .player-portrait{width:112px;height:150px}.school-roster{grid-template-columns:repeat(4,minmax(0,1fr))}.school-dialogue-teaser{grid-template-columns:90px minmax(0,1fr)}.school-dialogue-teaser>button{grid-column:2;max-width:none;justify-self:start}.pro-offers{gap:12px}.pro-offers article{padding:20px 16px}}
@media(max-width:700px){.chapter-banner{grid-template-columns:1fr;padding:26px 18px;gap:14px;min-height:0;margin-bottom:24px}.chapter-banner h1{font-size:35px;letter-spacing:-1.1px;margin:12px 0 16px}.chapter-banner p{font-size:16px;margin:15px 0 20px}.chapter-banner .eyebrow{font-size:12px;letter-spacing:1px}.chapter-years span{font-size:15px;min-height:37px}.chapter-cast{gap:5px;padding:20px 0 0}.chapter-cast>button{padding:4px 0 7px}.chapter-cast .player-portrait{max-height:230px}.chapter-cast b{font-size:16px;margin-top:8px}.chapter-cast small{font-size:15px}.school-dialogue-teaser{grid-template-columns:77px minmax(0,1fr);gap:15px;padding:18px 15px}.school-dialogue-teaser p{font-size:16px}.school-dialogue-teaser small{font-size:15px}.school-dialogue-teaser>button{grid-column:1/-1;width:100%;justify-self:stretch}.school-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.school-card{padding:13px 9px;gap:12px;min-height:0}.school-card .player-portrait{width:100%;height:auto;max-width:140px;aspect-ratio:3/4}.school-card b{font-size:16px}.school-card small,.school-card span{font-size:15px}.school-bracket{grid-template-columns:1fr}.school-bracket article{padding:14px 10px}.school-bracket button{font-size:15px;min-height:100px}.school-roster{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.school-roster>button{padding:12px 10px 17px}.school-roster b{font-size:18px}.school-roster span,.school-roster small{font-size:15px}.school-biography{padding:21px 17px}.school-biography h3{font-size:21px}.school-biography p{font-size:16px}.school-talk-buttons{display:grid;grid-template-columns:1fr}.school-talk-buttons button{font-size:15px;min-height:48px}.graduation-scene{padding:30px 17px}.graduation-scene h1{font-size:38px;letter-spacing:-1.3px}.graduation-cast{gap:12px}.graduation-cast>.player-portrait{width:calc(50% - 6px)}.graduation-scene>p{font-size:16px}.graduation-record{margin:24px auto 30px;padding:18px 0}.graduation-record span{font-size:15px;padding:0 6px}.graduation-record b{font-size:22px}.graduation-scene h2{font-size:25px}.pro-offers{grid-template-columns:1fr;gap:15px}.pro-offers article{padding:23px}.pro-offers h3{font-size:23px}.pro-offers button{min-height:48px;font-size:16px}.school-cup-note{font-size:16px}}
@media(prefers-reduced-motion:reduce){.chapter-cast>button{transition:none}}

.chapter-cast small{color:#cbbd91}.chapter-cup-link{background:transparent!important;color:#d6dbc4!important;border-color:transparent!important;box-shadow:none!important;margin-left:10px}.story-portrait>.player-portrait{width:100%;height:100%;display:block;object-fit:contain}.story-speaker{display:block;color:#dec78f;font-size:18px;margin-top:20px}.story-content>p{min-height:110px}.penalty-result{text-align:center;color:#dcc994;font-size:17px;margin:10px 0 25px}
/* Story scenes occupy the stage. Menus return only when the player leaves the scene. */
.novel-shell{display:block;background:#172e24}.novel-shell>.sidebar,.novel-shell .topbar,.novel-shell .footer{display:none}.novel-shell>.main{width:100%;margin:0;min-height:100svh}.novel-shell .content,.player-shell.novel-shell .content{padding:0;max-width:none}.novel-scene{position:relative;width:100%;height:100svh;min-height:550px;overflow:hidden;isolation:isolate;background-color:#58725b;background-image:url('./assets/school-scenes-v6.png');background-size:200% 200%;background-repeat:no-repeat;font-family:'Malgun Gothic','Apple SD Gothic Neo',sans-serif}.scene-ground{background-position:left top}.scene-classroom{background-position:right top}.scene-rain{background-position:left bottom}.scene-tunnel{background-position:right bottom}.novel-shade{position:absolute;inset:0;background:linear-gradient(180deg,#101b233b 0%,transparent 30%,#131b2040 70%,#12191b88 100%);z-index:-1}.novel-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:start;gap:22px;padding:25px 30px;color:#fff9e9;background:linear-gradient(#081a24a6,transparent);z-index:4}.novel-top>button{height:42px;min-width:48px;padding:0 12px;border:1px solid #fff5;background:#14262399;border-radius:3px;color:#fff9e9;font-size:15px}.novel-top>button:last-child{margin-left:auto}.novel-top>div{min-width:0;text-shadow:0 2px 5px #15221b}.novel-top small{font-size:13px;color:#f7e5bb;letter-spacing:1px}.novel-top h1{font-size:21px;font-weight:600;line-height:1.4;margin-top:7px}.novel-cast{position:absolute;height:76%;width:470px;max-width:55vw;bottom:8%;left:12%;display:flex;align-items:end;justify-content:center;filter:drop-shadow(0 8px 5px #15241f55);pointer-events:none}.novel-character{display:block;width:100%;height:100%;object-fit:contain;background:transparent;border:0;border-radius:0;image-rendering:auto}.novel-character>rect,.novel-character>ellipse{display:none}.novel-dialogue{position:absolute;bottom:28px;left:7%;right:7%;min-height:170px;padding:30px 38px 28px;color:#fff8e5;background:#122c28ed;border:1px solid #e8ddaa99;border-top:3px solid #dccb93;border-radius:2px;box-shadow:0 8px 22px #0e1f2f55;z-index:3}.novel-name{position:absolute;top:-28px;left:28px;min-width:130px;padding:7px 24px;background:#e7d8af;color:#23352b;font-size:17px;font-weight:700;border:1px solid #f8efd3;border-radius:2px;line-height:1.5;text-align:center}.novel-dialogue>p{max-width:960px;font-size:20px;font-weight:400;line-height:1.9;letter-spacing:.2px;word-break:keep-all;margin:0 0 20px;text-shadow:0 1px #0003}.novel-next{display:block;margin-left:auto;padding:3px 0 3px 24px;color:#f6e4a9;background:transparent;border:0;font-size:15px;min-height:32px;box-shadow:none}.novel-next span{margin-left:12px;font-size:23px}.novel-prompt{display:block;text-align:right;color:#d6c799;font-size:14px}.novel-options{position:absolute;right:8%;bottom:260px;width:46%;max-width:570px;z-index:4;display:grid;gap:11px}.novel-options>button{position:relative;min-height:57px;width:100%;padding:15px 40px 15px 22px;background:#fff9e9f2;border:1px solid #b7a77c;border-left:5px solid #657e49;color:#263a2e;text-align:left;font-size:17px;font-weight:600;line-height:1.6;border-radius:2px;box-shadow:0 3px 10px #13201633;word-break:keep-all}.novel-options>button>span{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:26px;color:#60784a}.novel-options>button:hover,.novel-options>button:focus-visible{background:#ecdfad;border-color:#f6edc9;border-left-color:#af5e3b;transform:translateX(-4px)}.novel-next:focus-visible,.novel-top>button:focus-visible{outline:3px solid #f2df9e;outline-offset:4px}.novel-shell~.toast:empty{display:none}
@media(min-width:1500px){.novel-cast{left:16%;max-width:580px;width:35%;height:82%}.novel-dialogue{left:12%;right:12%;padding:38px 45px 28px}.novel-dialogue>p{font-size:22px}.novel-options{right:14%}}
@media(max-width:700px){.novel-scene{height:100svh;min-height:620px;background-size:auto 200%;background-position-x:11%}.novel-scene.scene-classroom,.novel-scene.scene-tunnel{background-position-x:88%}.novel-top{padding:16px 14px;gap:12px}.novel-top>button{min-width:38px;height:36px;font-size:13px;padding:0 9px}.novel-top small{font-size:11px;letter-spacing:.5px}.novel-top h1{font-size:17px;line-height:1.5;margin-top:4px}.novel-cast{left:0;bottom:20%;width:78%;max-width:none;height:64%}.novel-dialogue{left:12px;right:12px;bottom:14px;min-height:190px;padding:28px 20px 16px}.novel-name{top:-26px;left:15px;min-width:105px;padding:6px 17px;font-size:16px}.novel-dialogue>p{font-size:17px;line-height:1.85;letter-spacing:0;margin-bottom:10px}.novel-next{font-size:14px;min-height:30px}.novel-options{right:16px;bottom:260px;width:calc(100% - 40px);max-width:370px;gap:9px}.novel-options>button{font-size:15px;min-height:51px;padding:12px 35px 12px 15px}.novel-prompt{font-size:12px}.novel-options>button:hover{transform:none}}
@media(max-height:650px) and (min-width:701px){.novel-scene{min-height:500px}.novel-top{padding:15px 25px}.novel-cast{height:85%;bottom:0}.novel-dialogue{bottom:18px;min-height:145px;padding:24px 30px 18px}.novel-dialogue>p{font-size:17px;line-height:1.7;margin-bottom:5px}.novel-options{bottom:210px;gap:7px}.novel-options>button{font-size:15px;padding:11px 35px 11px 17px;min-height:46px}}
.scene-locker,.scene-camp,.scene-bus,.scene-press{background-image:url('./assets/football-spaces-v6.png')}.scene-locker{background-position:left top}.scene-camp{background-position:right top}.scene-bus{background-position:left bottom}.scene-press{background-position:right bottom}.scene-park,.scene-cafe,.scene-kitchen,.scene-gallery{background-image:url('./assets/date-venues-v6.png')}.scene-park{background-position:left top}.scene-cafe{background-position:right top}.scene-kitchen{background-position:left bottom}.scene-gallery{background-position:right bottom}
.residence-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.residence-heading small{font-size:14px;color:#b9c6c1}.residence-heading h1{font-size:29px;font-weight:600;margin-top:5px;letter-spacing:-.8px}.residence-heading>button{border:1px solid #8a9b87;border-radius:3px;min-height:44px;padding:10px 15px;font-size:14px;background:#213d33;color:#ede8cc}.residence-stage{position:relative;isolation:isolate;overflow:hidden;width:100%;aspect-ratio:3/2;min-height:430px;max-height:760px;background-image:url('./assets/residences-v6.png');background-size:200% 200%;border:1px solid #6d7e6c;border-radius:2px}.residence-starter{background-position:left top}.residence-house{background-position:right top}.residence-villa{background-position:left bottom}.residence-island{background-position:right bottom}.residence-weather{position:absolute;inset:0;background:linear-gradient(#17201f22,transparent 30%,transparent 80%,#17201f80);pointer-events:none;z-index:-1}.residence-stage>button{position:absolute;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;cursor:pointer;min-height:44px;color:#fff6d9}.residence-stage>button:not(.residence-door):hover{filter:brightness(1.12)}.residence-stage>button:focus-visible{outline:3px solid #ffefb3;outline-offset:3px}.residence-stage>button>span{display:inline-block;padding:5px 12px;border:1px solid #f0e1b966;background:#18302adb;font-size:13px;border-radius:2px;white-space:nowrap;line-height:1.5}.residence-door{left:48%;top:27%;width:18%;height:28%;z-index:1;display:flex;align-items:end;justify-content:center}.residence-door>span{opacity:.85}.residence-player{left:60%;top:30%;height:41%;width:17%;z-index:2}.residence-character{width:100%;height:100%;display:block;overflow:hidden;filter:drop-shadow(1px 4px 2px #14231f66)}.residence-character>rect,.residence-character>ellipse{display:none}.residence-stage>button.residence-player>span,.residence-stage>button.residence-partner>span{position:absolute;bottom:-15px;left:50%;transform:translateX(-50%)}.residence-partner{left:75%;top:31%;height:43%;width:19%;z-index:2}.residence-car{left:3%;bottom:7%;width:46%;height:41%;z-index:3}.possession-art{display:block;width:100%;height:100%;overflow:hidden;filter:drop-shadow(2px 5px 2px #1a281755)}.residence-car>span{position:absolute;bottom:0;left:28%}.residence-jet{left:0;top:11%;width:30%;height:23%;z-index:1}.residence-jet>span{position:absolute;bottom:-10px;left:15%}.residence-stage>button.residence-island{left:25%;top:22%;padding:8px 13px;background:#203c31cb;border:1px solid #dbc99c;color:#fff8dc;font-size:14px}.residence-family{right:20px;top:18px;text-align:left;background:#18332dd9!important;border:1px solid #f0dbac66!important;padding:10px 16px!important;z-index:4}.residence-family>span{padding:0!important;border:0!important;background:transparent!important}.residence-family>b{display:block;font-size:16px;margin-top:4px}.residence-family small{font-size:12px;margin-left:7px}.residence-caption{position:absolute;left:24px;bottom:20px;font-size:15px;color:#fff3cf;text-shadow:0 2px 4px #18271b;pointer-events:none;z-index:4}.residence-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:17px 0;color:#c5cec4}.residence-actions>span{font-size:14px;margin-right:auto}.residence-actions>span b{color:#e8d6a4;font-size:20px;margin-left:8px}.residence-actions button{border:1px solid #647f6d;background:#213a31;color:#f4eed9;min-height:44px;padding:9px 14px;border-radius:3px;font-size:14px}.residence-actions small{width:100%;text-align:right;font-size:12px;color:#a6b9b0}.life-details{margin:10px 0 25px;border-top:1px solid #52685b;padding-top:20px}.life-details>summary{font-size:17px;color:#e1d0a8;cursor:pointer}.life-details[open]>summary{margin-bottom:25px}.locker-stage{position:relative;isolation:isolate;overflow:hidden;min-height:500px;margin-bottom:28px;background:url('./assets/football-spaces-v6.png') left top/200% 200%;border-radius:2px;border:1px solid #777d61}.locker-stage:before{content:'';position:absolute;inset:0;background:linear-gradient(#14231f99,transparent 45%,#10251dcc);z-index:-1}.locker-stage>header{padding:26px 30px;color:#f6ecd3;text-shadow:0 2px 4px #0009}.locker-stage>header small{font-size:14px}.locker-stage>header h1{font-size:28px;font-weight:600}.locker-cast{height:310px;display:flex;align-items:end;justify-content:center;gap:8%;margin-top:0}.locker-cast>button{height:100%;width:18%;border:0;padding:0;border-radius:0;background:transparent;color:#f9ecd0;position:relative}.locker-cast>button>span{position:absolute;bottom:0;left:0;right:0;display:block;text-align:center;font-size:16px;background:#1e302cbb;padding:3px}.locker-stage>p{font-size:17px;line-height:1.8;color:#fff2d4;text-align:center;padding:20px 32px 28px;text-shadow:0 2px 3px #12221f}
@media(max-width:700px){.residence-heading{gap:12px;align-items:start}.residence-heading h1{font-size:24px;line-height:1.4}.residence-heading small{font-size:12px}.residence-heading>button{font-size:12px;padding:9px;flex-shrink:0}.residence-stage{min-height:470px;aspect-ratio:auto;background-size:auto 200%;background-position-x:13%}.residence-house,.residence-island{background-position-x:90%}.residence-door{left:40%;top:27%;width:24%;height:25%}.residence-player{left:50%;top:34%;height:38%;width:26%}.residence-partner{left:70%;top:35%;height:40%;width:28%}.residence-car{width:67%;height:33%;left:-4%;bottom:8%}.residence-stage>button>span{font-size:11px;padding:4px 7px}.residence-jet{width:43%;height:19%;top:15%}.residence-family{right:10px;top:10px;padding:8px 10px!important}.residence-family>b{font-size:14px}.residence-family small{font-size:11px}.residence-caption{left:15px;right:15px;bottom:13px;font-size:12px}.residence-actions{gap:8px;padding:15px 0}.residence-actions>span{width:100%}.residence-actions button{font-size:13px;padding:8px 11px}.residence-actions small{text-align:left}.locker-stage{min-height:435px;background-size:auto 200%;background-position-x:7%}.locker-stage>header{padding:22px 18px}.locker-stage>header h1{font-size:22px}.locker-cast{height:265px;gap:2%}.locker-cast>button{width:30%}.locker-stage>p{font-size:15px;padding:15px 20px}.locker-cast>button>span{font-size:14px}.novel-scene.scene-camp,.novel-scene.scene-press,.novel-scene.scene-cafe,.novel-scene.scene-gallery{background-position-x:88%}}
.residence .residence-character{background:transparent;border:0;border-radius:0}.mobile-more,.mobile-extra{display:none!important}
@media(max-width:700px){.player-shell>.sidebar{position:fixed;inset:auto 0 0;z-index:50;padding:0;width:100%;height:auto;overflow:visible;border-top:1px solid #617466;background:#142c26}.player-shell>.sidebar>.wordmark{display:none}.player-shell>.main{padding-bottom:77px}.player-shell .nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:5px 4px}.player-shell .nav>button{display:none!important;flex-direction:column;gap:1px;min-height:56px;font-size:11px;line-height:1.4;padding:5px 2px;border-radius:2px}.player-shell .nav>button>span{font-size:19px;line-height:1.3}.player-shell .nav>button[data-page=home],.player-shell .nav>button[data-page=training],.player-shell .nav>button[data-page=life],.player-shell .nav>button[data-page=league],.player-shell .nav>.mobile-more{display:flex!important}.player-shell .nav>button.active{background:#365341}.player-shell.mobile-menu-open .nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:12px;background:#172f29;box-shadow:0 -20px 50px #071b2277}.player-shell.mobile-menu-open .nav>button{display:flex!important;min-height:65px;font-size:13px}.player-shell .topbar{gap:6px;padding:10px 14px}.player-shell .topbar .date{font-size:12px}.player-shell .topactions{gap:7px}.player-shell .topactions>[data-ai-settings]{display:none}.player-shell .topactions>.save-status{font-size:10px;margin-left:auto}.player-shell .topactions>button{font-size:12px;padding:8px 11px;min-height:38px}.player-shell.novel-shell>.sidebar{display:none!important}.player-shell.novel-shell>.main{padding-bottom:0}.novel-shell .content{padding:0!important}.residence-stage>button:disabled{opacity:.8}.life-details{margin-bottom:25px}}
.residence-stage{aspect-ratio:2/1;background-size:200% auto;min-height:430px}.residence-car{height:45%}@media(max-width:700px){.residence-stage{aspect-ratio:auto;min-height:470px;background-size:auto 200%}.residence-car{height:33%}}
.novel-options-many{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:57%;max-width:720px;bottom:250px}.novel-options>button>small{display:block;font-size:12px;font-weight:400;color:#566149;margin-top:3px}.novel-options-many>button{font-size:15px;min-height:65px;padding:12px 30px 12px 16px}.novel-options-many>button>span{right:12px}@media(max-width:700px){.novel-options-many{width:calc(100% - 32px);max-width:none;grid-template-columns:1fr 1fr;gap:7px;right:16px;bottom:252px}.novel-options-many>button{font-size:13px;min-height:64px;padding:10px 22px 10px 11px}.novel-options>button>small{font-size:10px}.novel-options-many>button>span{right:8px;font-size:21px}}
.introart{position:relative;isolation:isolate;background-image:url('./assets/school-scenes-v6.png');background-size:200% 200%;background-position:left top;color:#f8eed7;overflow:hidden}.introart:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0f2529c9,#122b2b44),linear-gradient(0deg,#142823aa,transparent 55%);z-index:-1}.introart .pitchgraphic{display:none}.introart h1{font-size:clamp(48px,5vw,78px);letter-spacing:-3px;line-height:1.3;text-shadow:0 3px 8px #122a2a55}.introart h1 em{color:#f3d995;font-style:normal}.introart p{font-size:17px;line-height:1.9;color:#f2e9cd;max-width:30em;text-shadow:0 2px 4px #152f2f77}.introart>.wordmark,.introart .wordmark{color:#faf3dc}.introart small{font-size:11px;color:#ebdfbb}.introform .eyebrow{font-size:13px;color:#bda975}.introform h2{font-size:31px;font-weight:600}.introform .setup-note{border-radius:2px;font-size:13px;line-height:1.8}.introform .primary{border-radius:3px;min-height:52px;font-size:16px}.introform input,.introform select{border-radius:3px}.rolecards button{border-radius:3px}.introform .setupadvanced{font-size:13px}
@media(max-width:700px){.introart{min-height:310px;background-size:200% auto;background-position:left top;padding:25px}.introart h1{font-size:43px;letter-spacing:-1.5px;margin:30px 0 15px}.introart p{font-size:14px}.introart>.wordmark,.introart .wordmark{display:block;font-size:22px}.introart small{display:none}.introform{padding:30px 23px}.introform h2{font-size:27px}.introform .subtitle{font-size:14px}.introform .rolecards small{font-size:12px}}
.modalback{z-index:100}@media(max-width:700px){.modalback{padding:12px;overflow:hidden}.modalback .modal,.modalback .modal:has(.player-dossier),.modalback .modal:has(.school-roster){width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:18px;max-height:calc(100svh - 24px)}.modalback .player-dossier{min-width:0}.modalback .dossier-identity{grid-template-columns:120px minmax(0,1fr)}.modalback .portrait-large{width:120px;height:160px}.modalback .dossier-identity>div{padding:10px}.modalback .role-mini-pitch{width:135px;height:186px}.modalback .dossier-roles{padding:10px}.modalback .dossier-attributes{gap:13px}.modalback .attribute-line{font-size:12px}.modalback .attribute-line b{font-size:13px}.modalback .dossier-identity h1{font-size:21px}.modalback .role-position h2{font-size:17px}}
.introform .rolecards .chosen{background:#e3d49f;color:#21352a;border-color:#f1e5bb}.introform .rolecards .chosen small{color:#43563d}.introform .rolecards strong{font-size:17px}.introform .rolecards small{word-break:keep-all;line-height:1.7}.introart>.wordmark,.introart .wordmark{color:#faf3dc}
.novel-top>button{flex-shrink:0;white-space:nowrap;min-width:48px}
/* the open phone menu lists the pages; the menu button itself turns into the close control instead of listing "더보기" again */
.player-shell.mobile-menu-open .nav>.mobile-more{font-size:0}
.player-shell.mobile-menu-open .nav>.mobile-more>span{font-size:0}
.player-shell.mobile-menu-open .nav>.mobile-more>span::after{content:'×';font-size:22px;line-height:1}
.player-shell.mobile-menu-open .nav>.mobile-more::after{content:'닫기';font-size:13px}

/* 생활 쇼핑에서도 상품 사진을 확인한 뒤 선택한다. */
.life-shop .life-listing-art{flex:0 0 32%;width:32%;aspect-ratio:4/3;overflow:hidden;margin:0;border-radius:9px;background:#26362f}
.life-listing-art img,.life-listing-art svg{display:block;width:100%;height:100%}
.life-listing-art img{object-fit:cover}
@media(max-width:420px){.life-shop .life-listing-art{flex-basis:30%;width:30%}.life-shop article{gap:10px}}
