:root{font-family:'M PLUS Rounded 1c','Yu Gothic','Meiryo',sans-serif;color:#fff;background:#09021d;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;min-width:320px;background:#09021d}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.58}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #38e9ff;outline-offset:3px}
.app-shell{position:relative;display:flex;flex-direction:column;width:min(100%,430px);height:100dvh;min-height:600px;margin:0 auto;overflow:hidden;background:#170043 url('./assets/arena-bg.png') center center/cover no-repeat;box-shadow:0 0 0 1px #3f1695,0 0 70px #000b}
.app-content{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
.app-content::-webkit-scrollbar{display:none}
.bottom-nav{z-index:4;display:grid;grid-template-columns:repeat(5,1fr);height:70px;flex:none;background:#07031c;border-top:3px solid #8b32ff;box-shadow:0 -7px 22px #0009;padding-bottom:env(safe-area-inset-bottom)}
.nav-item{position:relative;border:0;border-right:1px solid #563591;background:transparent;color:#b6aecb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:10px;font-weight:900;letter-spacing:-.02em;padding:3px 0 0}
.nav-item:last-child{border-right:0}.nav-item svg{width:25px;height:25px}.nav-item.active{color:#fff500;background:linear-gradient(#22126d,#09031d)}.nav-item.active:before{content:"";position:absolute;top:-3px;width:75%;height:4px;background:#fff500;box-shadow:0 0 15px #fff500}.nav-item.active:after{content:"";position:absolute;bottom:0;width:88%;height:3px;background:#fff500;box-shadow:0 0 12px #fff500}
.home-screen{display:flex;flex-direction:column;gap:11px;min-height:100%;padding:13px 14px 18px}.hud-row{display:flex;gap:8px;height:49px}.hud-panel{display:flex;align-items:center;background:#080318f5;border:3px solid #a528fa;box-shadow:0 4px 0 #000;border-radius:3px;clip-path:polygon(7px 0,calc(100% - 9px) 0,100% 10px,calc(100% - 3px) 100%,0 100%,0 7px)}
.level-hud{width:58%;gap:4px;padding:0 8px 0 12px}.level-hud>span{font-family:'Arial Black','Yu Gothic',sans-serif;font-size:17px}.level-hud strong{font-family:Impact,'Arial Black',sans-serif;font-size:38px;color:#fff500;line-height:1}.hud-xp{height:13px;margin-left:5px;flex:1;min-width:30px;background:#45495f;transform:skewX(-15deg);overflow:hidden}.hud-xp>div{height:100%;background:linear-gradient(90deg,#fff600,#ffbb00);box-shadow:0 0 10px #fff500}
.vb-hud{flex:1;justify-content:center;gap:3px;border-color:#a528fa}.vb-hud img{width:31px;height:31px;object-fit:contain}.vb-hud strong{font-family:Impact,'Arial Black',sans-serif;font-size:29px;line-height:1;color:#fff;letter-spacing:.03em}.vb-hud span{font-family:Impact,'Arial Black',sans-serif;font-size:19px;color:#fff500}
.logo-wrap{height:194px;display:flex;align-items:center;justify-content:center;margin:-3px -10px -2px}.brand-logo{display:block;width:112%;max-width:440px;height:auto;filter:drop-shadow(0 8px 5px #0009)}
.report-callout{position:relative;width:100%;min-height:93px;background:#0a0628;border:4px solid #f022cc;color:#fff;display:flex;align-items:center;text-align:left;padding:9px 12px;gap:12px;clip-path:polygon(13px 0,calc(100% - 13px) 0,100% 15px,calc(100% - 7px) 100%,7px 100%,0 calc(100% - 13px),0 13px);box-shadow:inset 0 0 0 3px #05020d}
.report-callout.done{border-color:#5aff88}.report-icon{display:flex;align-items:center;justify-content:center;flex:none;width:55px;height:55px;background:#f51fd0;border:3px solid #000;border-radius:8px;transform:rotate(-10deg);box-shadow:4px 5px 0 #000}.report-icon svg{width:34px;height:34px}.report-copy{display:flex;flex-direction:column;min-width:0;line-height:1.08}.report-copy b{font-size:16px;font-weight:900}.report-copy strong{font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-size:25px;font-weight:900;letter-spacing:-.08em;color:#ff2cc9;text-shadow:2px 2px 0 #000;white-space:nowrap}.report-callout.done .report-copy strong{color:#5aff88}.report-arrow{margin-left:auto}.report-arrow svg{width:24px;height:24px}
.battle-panel{background:#080321ef;border:3px solid #a828fb;box-shadow:0 5px 0 #000,0 8px 14px #0007;color:#fff;clip-path:polygon(11px 0,calc(100% - 10px) 0,100% 11px,100% calc(100% - 11px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px)}
.goal-panel{padding:11px 14px 10px;min-height:105px}.goal-title{display:flex;align-items:baseline;gap:8px;font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-weight:900;line-height:1}.goal-title span{font-size:21px;transform:rotate(-4deg);text-shadow:2px 3px 0 #000}.goal-title strong{font-family:Impact,'Arial Black',sans-serif;font-size:49px;color:#fff500;text-shadow:3px 4px 0 #000,5px 6px 0 #f20dbb;-webkit-text-stroke:1px #000}.goal-title small{font-size:25px;margin-left:2px}.goal-track{position:relative;height:20px;background:#424157;border:3px solid #000;transform:skewX(-12deg);box-shadow:0 0 0 2px #8e27e2}.goal-track>div{height:100%;min-width:3%;background:linear-gradient(90deg,#ffff36,#ffb100);border-right:2px solid #fff66e}.goal-numbers{display:flex;justify-content:space-between;align-items:center;margin-top:7px;font-size:11px;font-weight:900;color:#dad5ff}.goal-numbers b{color:#fff;font-family:Impact,'Arial Black',sans-serif;font-size:17px;letter-spacing:.03em}
.gacha-cta{position:relative;width:100%;height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:5px solid #000;border-radius:10px;transform:skewX(-7deg) rotate(-1deg);background:linear-gradient(165deg,#ffff20 0%,#ffe900 42%,#ffad00 100%);color:#000;box-shadow:0 7px 0 #66008e,0 11px 0 #000,0 18px 20px #000a;overflow:hidden;text-shadow:2px 2px 0 #fff6}
.gacha-cta:before{content:"";position:absolute;inset:7px;border:2px solid #fff6;clip-path:polygon(9px 0,100% 0,100% 85%,95% 100%,0 100%,0 10px)}.gacha-cta .cta-kicker{display:flex;align-items:center;gap:6px;font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-size:20px;font-weight:900}.gacha-cta .cta-kicker img{width:42px;height:33px;object-fit:contain;transform:rotate(-8deg)}.gacha-cta strong{font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-size:35px;font-weight:900;letter-spacing:-.08em;line-height:1.2}.gacha-cta>svg{position:absolute;right:10px;top:46px;width:27px;height:27px}.gacha-cta:active,.battle-button:active{transform:skewX(-7deg) translateY(5px);box-shadow:0 2px 0 #000}
.final-panel{padding:10px 15px 11px;min-height:128px}.final-panel h2{margin:0;font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-size:20px;letter-spacing:-.05em}.final-panel p{margin:0 0 9px 0;text-align:center;font-weight:900;color:#d0bbff;font-size:12px}.mission-steps{display:flex;flex-direction:column;gap:5px}.mission-step{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:900}.step-dot{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:2px solid #bb45ff;background:#180540;color:#fff500;font-family:Impact,'Arial Black',sans-serif;font-size:13px}.step-dot.complete{background:#fff500;color:#000}.step-dot svg{width:15px;height:15px}
.inner-screen{padding:18px 16px 32px;min-height:100%}.screen-head{display:flex;align-items:end;justify-content:space-between;gap:8px;min-height:65px;margin-bottom:13px}.brand-mini{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:16px;font-weight:900;letter-spacing:.09em;color:#fff500;text-shadow:2px 2px 0 #000}.screen-head h1{font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-size:27px;font-weight:900;line-height:1.2;letter-spacing:-.07em;margin:2px 0 0;text-shadow:3px 4px 0 #000}.head-pill,.ticket-pill{display:flex;align-items:center;gap:4px;background:#09041d;border:3px solid #fff500;padding:5px 8px;border-radius:6px;font-size:12px;font-weight:900;box-shadow:0 4px 0 #000;white-space:nowrap}.ticket-pill img{width:26px;height:25px;object-fit:contain}
.battle-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;border:3px solid #000;border-radius:8px;transform:skewX(-7deg);box-shadow:0 5px 0 #632208,0 8px 13px #0008;font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-weight:900;letter-spacing:-.05em;line-height:1.1;font-size:14px;padding:11px 12px;text-align:center;color:#140900}.battle-button.yellow{background:linear-gradient(#fffd51,#ffad00)}.battle-button.purple{background:linear-gradient(#ff69da,#8b2fe4);color:#fff;text-shadow:2px 2px 0 #471068;box-shadow:0 5px 0 #3c0962,0 8px 13px #0008}.battle-button.green{background:linear-gradient(#72ffb5,#04aa72);color:#062e20;box-shadow:0 5px 0 #075a3e,0 8px 13px #0008}.battle-button.light{background:linear-gradient(#fff,#c3cbdc);color:#0d1030;box-shadow:0 5px 0 #627089,0 8px 13px #0008}.battle-button.small{font-size:11px;padding:8px 9px;white-space:nowrap}.battle-button.full{width:100%;min-height:52px}.battle-button small{display:block;font-family:'M PLUS Rounded 1c','Yu Gothic',sans-serif;font-size:10px}.battle-button:hover:not(:disabled),.gacha-cta:hover,.report-callout:hover{filter:brightness(1.12)}
.form-panel{padding:16px}.form-panel h2,.rates h2,.reward-box h2,.calendar-panel h2,.schedule-list h2,.menu-panel h2{font-family:'Dela Gothic One','Yu Gothic','Meiryo',sans-serif;font-size:17px;margin:0 0 7px}.subcopy,.screen-intro,.read-only-note{font-size:12px;line-height:1.5;font-weight:800;color:#dfd0ff}.screen-intro{margin:11px 0 14px}.read-only-note{text-align:center}.form-panel form,.modal-sheet form{display:flex;flex-direction:column;gap:15px;margin-top:15px}.check-row{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:900}.check-row input{width:21px;height:21px;accent-color:#13d78b}.field-label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:900}.field-label input,.field-label textarea,.field-label select{width:100%;border:2px solid #b96dff;border-radius:7px;background:#150b37;color:#fff;padding:10px 11px;font-size:16px;outline-offset:2px}.field-label input::placeholder,.field-label textarea::placeholder{color:#aaa0c9}.form-panel fieldset{border:0;padding:0;margin:0}.form-panel legend{font-size:13px;font-weight:900;margin-bottom:8px}.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.subject-choice input{position:absolute;opacity:0}.subject-choice span{display:block;text-align:center;border:2px solid #7751b4;border-radius:6px;background:#1e1243;padding:8px 0;font-size:12px;font-weight:900}.subject-choice input:checked+span{background:#fff500;color:#14051f;border-color:#000}.subject-choice input:focus-visible+span{outline:3px solid #38e9ff}
.segment{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segment button,.role-grid button{background:#1a0d42;border:3px solid #000;box-shadow:0 4px 0 #000;color:#fff;border-radius:8px;padding:9px 5px;font-size:13px;font-weight:900}.segment button.active,.role-grid button.active{background:#fff52b;color:#1d0832}.task-list{display:flex;flex-direction:column;gap:13px}.task-card{padding:12px}.task-top{display:flex;align-items:center;gap:6px}.task-top h3{font-size:14px;line-height:1.25;flex:1;min-width:0;margin:0;font-weight:900}.subject-tag{padding:4px 6px;border-radius:4px;font-size:10px;font-weight:900;color:#fff;white-space:nowrap;background:#a936ad}.subject-tag.英語{background:#d82179}.subject-tag.数学{background:#2876dc}.subject-tag.国語{background:#9153db}.subject-tag.理科{background:#0ba96b}.subject-tag.社会{background:#b86727}.status-tag{font-size:10px;font-weight:900;border-radius:4px;padding:4px 5px;white-space:nowrap;color:#0c0721;background:#d8d8e7}.status-tag.trying{background:#32ddff}.status-tag.requested{background:#fff500}.status-tag.cleared{background:#6afa8d}.status-tag.rejected{background:#ff6d8d}.task-progress{display:flex;align-items:center;gap:9px;margin:13px 0 8px}.task-progress b{width:43px;text-align:right;font-family:Impact,'Arial Black',sans-serif;font-size:19px}.task-track{position:relative;flex:1;height:13px;transform:skewX(-12deg);background:#44415b}.task-track>div{height:100%;background:linear-gradient(90deg,#83eaff,#21a6fa)}.task-track i{position:absolute;left:80%;top:-3px;height:19px;width:3px;background:#ff3f79}.task-bottom{font-size:11px;font-weight:800;color:#d7cbea}.task-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.task-actions .battle-button{font-size:11px;padding:8px}.reject-reason{font-size:11px;color:#ffb2c7;margin:8px 0 0}.empty-state{text-align:center;padding:25px 12px;color:#e0d6fa;font-weight:800;font-size:13px}
.gacha-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;height:215px;gap:10px}.gacha-orb{width:172px;height:152px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#fff9be 0,#ffc400 28%,#e637ed 46%,transparent 72%);filter:drop-shadow(0 0 14px #fa40ff)}.gacha-orb img{width:132px;object-fit:contain;transform:rotate(-9deg);filter:drop-shadow(0 8px 4px #000)}.gacha-hero strong{font-size:15px;text-shadow:2px 2px 0 #000}.draw-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.draw-actions .battle-button{height:67px;display:flex;flex-direction:column;font-size:18px}.center-note{text-align:center;margin:11px 0 15px;font-size:11px;font-weight:900;color:#e3d9ff}.gacha-hint{padding:15px;text-align:center;font-size:12px;font-weight:900;line-height:1.5}.draw-result{background:#0b042be8;border:3px solid #a42ff9;padding:12px;margin:8px 0 15px}.draw-result h2{font-family:'Dela Gothic One','Yu Gothic',sans-serif;margin:0 0 11px;color:#fff500;font-size:16px}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:12px}.result-grid:has(> :only-child){grid-template-columns:1fr;max-width:180px;margin-left:auto;margin-right:auto}.reveal-card,.modal-card{min-height:120px;border:3px solid #fff;background:#2c114f;box-shadow:0 4px 0 #000;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px;padding:8px}.reveal-card strong{font-size:12px}.reveal-card small{font-size:9px;color:#e7dfff}.reveal-card em{font-size:9px;color:#fff500}.reveal-rarity{font-family:Impact,'Arial Black',sans-serif;font-size:22px}.rarity-n{border-color:#aeb2c2!important;background:linear-gradient(#575d76,#242335)!important}.rarity-r{border-color:#2badf8!important;background:linear-gradient(#1d75ab,#122446)!important}.rarity-sr{border-color:#c869ff!important;background:linear-gradient(#8c3dd8,#241251)!important}.rarity-ssr{border-color:#fff500!important;background:linear-gradient(#e5a705,#543100)!important}.rates{padding:12px;margin:16px 0}.rate-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.rate{display:flex;flex-direction:column;align-items:center;border:2px solid #000;border-radius:6px;padding:5px 2px;font-family:Impact,'Arial Black',sans-serif;font-size:20px;box-shadow:0 3px 0 #000}.rate b{font-family:'M PLUS Rounded 1c','Yu Gothic',sans-serif;font-size:10px}.rate.n{background:#637086}.rate.r{background:#008aca}.rate.sr{background:#8d36d0}.rate.ssr{background:#e2a600;color:#170b14}.rates p{font-size:11px;font-weight:900;margin:9px 0 0}
.gacha-orb.spinning{animation:gacha-rattle .14s steps(2,end) infinite}.gacha-orb.fanfare{animation:gacha-flare .42s ease-in-out infinite alternate}.draw-stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:215px;overflow:hidden;margin:8px 0 15px;border:3px solid #a42ff9;background:radial-gradient(circle,#411077 0,#13052f 67%);text-align:center}.draw-stage-light{width:102px;height:102px;border-radius:50%;background:radial-gradient(circle,#fffbbd 0,#ffdc21 17%,#fa38db 36%,transparent 70%);filter:drop-shadow(0 0 20px #e74dff);animation:stage-glow .5s ease-in-out infinite alternate}.draw-stage.fanfare .draw-stage-light{transform:scale(1.3);background:radial-gradient(circle,#fff 0,#fff500 22%,#ff37dc 48%,transparent 72%)}.draw-stage strong{position:relative;z-index:1;color:#fff500;font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:18px;text-shadow:2px 3px 0 #000}.draw-stage small{position:relative;z-index:1;margin-top:6px;color:#eee1ff;font-size:11px;font-weight:900}.draw-result{animation:result-appear .35s ease-out both}.reveal-card{animation:card-surface .9s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--reveal-order)*.17s)}@keyframes gacha-rattle{0%{transform:translate(-5px,-2px) rotate(-7deg)}100%{transform:translate(5px,2px) rotate(7deg)}}@keyframes gacha-flare{from{transform:scale(1);filter:drop-shadow(0 0 14px #fa40ff)}to{transform:scale(1.14);filter:drop-shadow(0 0 32px #fff500)}}@keyframes stage-glow{from{opacity:.6;transform:scale(.9)}to{opacity:1;transform:scale(1.18)}}@keyframes result-appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes card-surface{from{opacity:0;transform:translateY(38px) scale(.82);filter:brightness(1.8)}to{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}
.parent-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.parent-stats div{background:#1a0b38;border:2px solid #000;border-radius:7px;padding:8px 5px;display:flex;flex-direction:column;font-size:10px;font-weight:900;color:#d7c7ef}.parent-stats b{font-family:Impact,'Arial Black',sans-serif;color:#fff500;font-size:18px}.approval-list{display:flex;flex-direction:column;gap:12px}.approval-card{background:#fff;color:#131127;border:3px solid #000;border-radius:12px;padding:12px;box-shadow:0 5px 0 #000}.approval-top{display:flex;align-items:center;gap:6px}.approval-top h3{flex:1;font-size:13px;margin:0}.approval-top>b{font-family:Impact,'Arial Black',sans-serif;font-size:24px;color:#0e9c6a}.approval-card p{font-size:11px;color:#395b75;font-weight:800}.approval-actions{display:grid;grid-template-columns:1fr 1.3fr;gap:8px;margin-top:10px}.approval-actions .battle-button{font-size:10px;padding:8px 4px}
.calendar-panel,.schedule-list,.rewards-total,.reward-box,.menu-panel{padding:15px;margin-bottom:14px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.calendar-grid b{color:#f8e535;font-size:11px}.calendar-grid span{min-height:34px;display:grid;place-items:center;font-size:12px;font-weight:800;background:#24104e;border-radius:4px}.calendar-grid span:empty{background:transparent}.calendar-grid span.today{background:#fff500;color:#1a0c2d}.schedule-list p{font-size:11px;font-weight:800}.schedule-list b{color:#fff500}.rewards-total strong{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:44px;color:#fff500}.rewards-total small{font-size:17px;color:#fff}.rewards-total .goal-track{margin-top:10px}.reward-box p,.menu-panel p{font-size:12px;font-weight:800;color:#dccffa}.reward-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reward-actions .battle-button{font-size:11px}.success-text{color:#80ffad!important}.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.menu-list{display:flex;flex-direction:column;gap:9px}.menu-list button{display:flex;align-items:center;justify-content:space-between;width:100%;background:#0e0629;color:#fff;border:3px solid #a32ef5;box-shadow:0 4px 0 #000;padding:13px;font-weight:900;text-align:left}.menu-list svg{width:18px;height:18px}.menu-list button[aria-pressed] span{border:2px solid #fff500;border-radius:6px;padding:3px 8px;color:#fff500}.menu-list button[aria-pressed="false"] span{border-color:#aca5c3;color:#aca5c3}.reset-button{display:block;margin:27px auto;border:0;background:none;color:#d8c5f4;text-decoration:underline;font-size:12px;font-weight:800}
.modal-backdrop{position:absolute;inset:0;z-index:10;background:#05000bbb;display:flex;align-items:flex-end}.modal-sheet{width:100%;max-height:88%;overflow-y:auto;background:#160b3b;border:3px solid #ec2cd6;border-bottom:0;border-radius:20px 20px 0 0;padding:18px 18px calc(25px + env(safe-area-inset-bottom));box-shadow:0 -10px 35px #000c}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.modal-head h2{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:18px;margin:0}.modal-head button{border:0;background:transparent;color:#fff;font-size:29px;line-height:1}.modal-sheet p{font-size:12px;font-weight:800;color:#e1d4ff}.score-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-card{margin:20px auto 12px;min-height:170px;max-width:180px}.modal-card strong{font-size:16px}.toast{position:absolute;z-index:20;left:50%;bottom:84px;transform:translate(-50%,20px);width:max-content;max-width:calc(100% - 30px);padding:10px 14px;background:#090516;border:3px solid #fff500;box-shadow:0 5px 0 #000;border-radius:6px;color:#fff;font-size:12px;font-weight:900;text-align:center;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}
.mission-intro{background:#090322e8;border-left:4px solid #ff2cc9;padding:9px 11px;border-radius:0 6px 6px 0;color:#fff;text-shadow:1px 1px 2px #000}
.mission-tabs{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.mission-tabs button{font-size:11px;line-height:1.2;min-height:46px;padding:7px 3px}.paper-lead{padding:15px;margin-bottom:15px;background:linear-gradient(125deg,#340671ed,#090423f2)}.paper-lead strong{display:block;color:#fff500;font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:16px;line-height:1.35}.paper-lead span{display:inline-block;margin-top:5px;color:#42eaff;font-family:Impact,'Arial Black',sans-serif;font-size:24px}.paper-lead p,.paper-detail{font-size:11px;font-weight:800;line-height:1.5;color:#e7d8ff}.paper-lead p{margin:7px 0 0}.paper-detail{margin:11px 0 0}.paper-card .task-top{align-items:flex-start}.paper-card .task-top h3{line-height:1.35}.paper-card .task-actions{margin-top:10px}
.notification-lead,.notification-preview,.notification-editor{padding:15px;margin-bottom:14px}.notification-lead{background:linear-gradient(125deg,#3d0a7b,#10052d)}.notification-lead strong{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:17px;color:#fff500}.notification-lead p,.notification-preview p{font-size:12px;font-weight:800;line-height:1.6;color:#eadcff;margin:8px 0 0}.notification-preview{background:#0d0429f2}.notification-preview>span{display:inline-block;background:#fff500;color:#190531;border:2px solid #000;border-radius:5px;padding:4px 8px;font-size:12px;font-weight:900}.notification-preview h2,.notification-editor h2{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:17px;margin:10px 0 0}.notification-preview .battle-button{margin-top:13px;font-size:11px;padding:8px 10px}.notification-editor form{display:flex;flex-direction:column;gap:15px;margin-top:14px}.notification-times{display:grid;grid-template-columns:1fr 1fr;gap:10px}.notification-editor fieldset{display:flex;flex-direction:column;gap:9px;border:0;padding:0;margin:0}.notification-editor legend{font-size:12px;font-weight:900;margin-bottom:8px}.notification-footnote{font-size:11px;line-height:1.5;color:#d3bfeb;font-weight:800;text-align:center;margin:18px 5px}
.submission-note{margin:9px 0 0;color:#fff26a;font-size:11px;font-weight:900;line-height:1.4}
.practice-entry{margin:0 0 16px;padding:13px 14px;background:linear-gradient(125deg,#270556ed,#090423f2)}
.practice-entry-top{display:flex;align-items:center;gap:10px}.practice-entry-top div{display:flex;flex-direction:column}.practice-entry-top b{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:19px;line-height:1.2;color:#fff500;text-shadow:2px 2px #000}.practice-entry-top small{color:#e9c9ff;font-size:11px;font-weight:900}.practice-burst{display:grid;place-items:center;width:45px;height:45px;background:#ffea00;color:#230044;border:3px solid #000;border-radius:10px;font-size:27px;transform:rotate(-9deg);box-shadow:3px 4px 0 #bd0cbb}.practice-entry p{font-size:11px;font-weight:900;line-height:1.45;margin:9px 0}.practice-entry .battle-button{min-height:43px}.practice-entry .battle-button svg,.practice-hero .battle-button svg{width:20px;height:20px}.practice-sample{display:block;text-align:center;color:#d4b9ec;font-size:10px;font-weight:800;margin-top:9px}
.practice-screen .screen-head{margin-bottom:20px}.practice-hero{padding:24px 15px 19px;text-align:center;background:radial-gradient(circle at 50% 24%,#7720d1 0,#210451 48%,#08031d 100%)}.practice-hero-star{display:grid;place-items:center;margin:0 auto 5px;width:75px;height:75px;border-radius:50%;background:#fff500;color:#1d0335;border:5px solid #000;box-shadow:0 0 25px #ff32ef,0 6px 0 #b91fe2;font-size:47px}.practice-hero h2{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:19px;line-height:1.35;margin:14px 0;color:#fff500}.practice-hero p{font-size:12px;font-weight:900;line-height:1.6;color:#f0e6ff;margin:0 0 20px}.practice-route{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;align-items:center;margin:16px 0 20px}.practice-route span{display:grid;place-items:center;aspect-ratio:1;border:3px solid #ad39fa;border-radius:50%;background:#180636;color:#ead3ff;font-family:Impact,'Arial Black',sans-serif;font-size:17px;box-shadow:0 3px 0 #000}.practice-route span.done,.practice-route span.answered{background:#ffea00;color:#1a0529;border-color:#fa2ad3}.practice-route span.current{background:#fa2ad3;color:#fff;border-color:#fff500;box-shadow:0 0 12px #fff500}.practice-result{padding:15px;margin-top:15px;text-align:center}.practice-result h2{margin:0 0 7px;font-size:15px}.practice-result strong{font-family:Impact,'Arial Black',sans-serif;font-size:30px;color:#fff500}.practice-result p{font-size:11px;color:#e6d8ff;font-weight:800}.practice-disclaimer{font-size:11px;line-height:1.5;color:#dfd1f6;font-weight:800;text-align:center;margin:18px 4px}
.practice-progress{background:#0a0327e8;border:2px solid #a929f0;padding:10px 12px;margin-bottom:9px}.practice-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:900;color:#fff500}.practice-progress span{color:#fff}.practice-progress-track{height:12px;margin-top:9px;background:#3e3557;border:2px solid #060015;transform:skewX(-10deg)}.practice-progress-track i{display:block;height:100%;background:linear-gradient(90deg,#ff49dc,#fff500)}.practice-screen>.practice-route{margin:10px 0 18px}.practice-question{padding:15px 13px 17px;background:#0c042aeF}.practice-question-meta{display:flex;justify-content:space-between;gap:8px;color:#fff500;font-size:11px;font-weight:900}.practice-question-meta small{color:#d0aaff;font-size:10px}.practice-question h2{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:18px;line-height:1.55;margin:15px 0 17px}.practice-choices{display:flex;flex-direction:column;gap:9px}.practice-choices button{display:flex;align-items:center;gap:11px;min-height:51px;text-align:left;padding:8px 10px;background:#1a0b46;border:3px solid #9456e5;border-radius:8px;color:#fff;font-size:14px;font-weight:900;box-shadow:0 4px 0 #000}.practice-choices button span{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:5px;background:#482494;color:#fff500;font-family:Impact,'Arial Black',sans-serif;font-size:17px}.practice-choices button:hover:not(:disabled){border-color:#fff500;background:#34206d}.practice-choices button:disabled{opacity:1;filter:none;cursor:default}.practice-choices button.right{background:#0d5a3d;border-color:#6cffad}.practice-choices button.wrong{background:#842446;border-color:#ff96b3}.practice-feedback{padding:14px;margin-top:15px;border:3px solid #54efa1;background:#071e25eF;box-shadow:0 4px 0 #000}.practice-feedback.incorrect{border-color:#ff8fc3;background:#300b32ef}.practice-feedback strong{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:16px;color:#fff500}.practice-feedback p{font-size:12px;font-weight:800;line-height:1.6;margin:9px 0 15px}
.collection-screen{display:flex;flex-direction:column;align-items:stretch}.collection-lead{padding:14px 16px;margin-bottom:17px;background:linear-gradient(130deg,#2e0964,#090320)}.collection-lead strong{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:17px;color:#fff500}.collection-lead p{font-size:12px;line-height:1.5;font-weight:800;color:#e7d6ff;margin:7px 0 0}.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.memory-tile{display:flex;flex-direction:column;min-width:0;min-height:205px;padding:7px;border:4px solid #090419;border-radius:6px;background:#fffdf4;color:#1b1034;text-align:left;box-shadow:0 5px 0 #9d24e2,0 8px 9px #0008;transform:rotate(-1deg)}.memory-tile:nth-child(even){transform:rotate(1deg)}.memory-tile:hover{filter:brightness(1.04);transform:translateY(-3px) rotate(0)}.memory-photo,.reveal-photo,.modal-photo{display:block;overflow:hidden;background:#2a0a66}.memory-photo{width:100%;aspect-ratio:1/1}.memory-photo img,.reveal-photo img,.modal-photo img{display:block;width:100%;height:100%;object-fit:cover}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;height:100%;background:radial-gradient(circle at 50% 35%,#9140dc,#26105d 65%,#11062e);color:#e9d5ff}.photo-placeholder svg{width:38px;height:38px}.photo-placeholder small{font-size:10px;font-weight:900}.memory-caption{display:flex;flex:1;flex-direction:column;justify-content:space-between;gap:5px;padding:8px 3px 3px}.memory-caption strong{font-size:12px;line-height:1.3;font-weight:900}.memory-caption small{font-family:Impact,'Arial Black',sans-serif;font-size:13px;color:#8136ba}.memory-note{text-align:center}.collection-screen>.battle-button{margin-top:16px}.reveal-photo{width:100%;height:78px;border:2px solid #ffffffbb}.reveal-photo .photo-placeholder svg{width:24px;height:24px}.reveal-photo .photo-placeholder small{font-size:8px}.draw-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.draw-result-actions .battle-button{font-size:11px;padding:9px 5px;min-height:44px}.modal-photo{width:min(100%,260px);aspect-ratio:1/1;margin:18px auto 12px;border:5px solid #fff;box-shadow:0 5px 0 #000}.modal-photo .photo-placeholder svg{width:56px;height:56px}.modal-photo .photo-placeholder small{font-size:12px}
@media(max-width:355px){.home-screen{gap:9px;padding:9px 11px 12px}.logo-wrap{height:165px}.report-callout{min-height:84px;padding:7px;gap:7px}.report-icon{width:43px;height:43px}.report-icon svg{width:26px;height:26px}.report-copy b{font-size:13px}.report-copy strong{font-size:21px}.goal-panel{min-height:95px;padding:8px 10px}.goal-title strong{font-size:43px}.gacha-cta{height:121px}.gacha-cta strong{font-size:29px}.final-panel{min-height:120px}.mission-step{font-size:10px}}
@media(min-width:431px){.app-shell{height:min(920px,100dvh);margin:25px auto;border:3px solid #7b29e3;border-radius:22px;overflow:hidden}.app-content{border-radius:19px 19px 0 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.next-test-panel{padding:12px 14px;background:linear-gradient(120deg,#300a78,#09031f);border-color:#fff500}.next-test-panel strong{display:block;color:#fff500;font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:17px;line-height:1.4}.next-test-panel p{margin:5px 0 0;font-size:12px;font-weight:900}.next-test-panel .battle-button{margin-top:10px;width:100%}
.next-test-panel b{display:block;margin:5px 0;color:#fff;font-size:16px}.next-test-panel small{display:block;color:#e6d3ff;font-size:11px;line-height:1.5}.next-test-callout{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 14px;text-align:left;color:#fff;background:linear-gradient(115deg,#310b70,#08041d);border-color:#fff500}.next-test-callout span{font-size:11px;font-weight:900;color:#e4ceff}.next-test-callout strong{font-size:15px;font-weight:900;line-height:1.35}.next-test-callout b{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:18px;color:#fff500}.unit-schedule{display:flex;flex-direction:column;gap:3px;margin-top:9px;padding:8px 10px;background:#1b0d42;border-left:4px solid #fff500;font-size:11px;line-height:1.45;font-weight:900}.unit-schedule b{color:#fff500;font-size:13px}.unit-schedule small{color:#cfc0ec}
.fortnite-home-callout{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px 14px;text-align:left;color:#fff;background:linear-gradient(120deg,#581086,#120833 72%);border-color:#4de9ff}.fortnite-home-callout span{color:#7df3ff;font-size:11px;font-weight:900}.fortnite-home-callout strong{font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:17px;line-height:1.4}.fortnite-home-callout b{display:flex;align-items:center;gap:4px;color:#fff500;font-size:11px}.fortnite-home-callout svg{width:15px;height:15px}.fortnite-screen{display:flex;flex-direction:column;gap:13px}.fortnite-screen .screen-head{margin-bottom:0}.fortnite-hero{padding:18px 16px;background:radial-gradient(circle at 80% 0,#f02bc7 0,transparent 45%),linear-gradient(120deg,#480ba6,#10042b 76%)}.fortnite-hero span{color:#fff500;font-family:Impact,'Arial Black',sans-serif;font-size:13px;letter-spacing:.12em}.fortnite-hero strong{display:block;margin-top:3px;font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:24px;line-height:1.35;text-shadow:3px 3px 0 #000}.fortnite-hero p{margin:7px 0 0;color:#eee1ff;font-size:12px;font-weight:900;line-height:1.5}.fortnite-rules,.fortnite-status,.fortnite-entry{padding:14px}.fortnite-rules h2,.fortnite-status h2,.fortnite-entry h2{margin:0 0 11px;font-family:'Dela Gothic One','Yu Gothic',sans-serif;font-size:16px}.fortnite-rules p{margin:7px 0;font-size:12px;line-height:1.55;font-weight:800}.fortnite-rules p b{display:inline-block;min-width:36px;color:#fff500}.fortnite-rewards{display:grid;gap:6px;margin:14px 0 8px}.fortnite-rewards span{display:block;padding:8px 10px;border-left:4px solid #fff500;background:#2c1362;color:#fff;font-size:12px;font-weight:900}.fortnite-rules small{display:block;color:#dbcfff;font-size:10px;line-height:1.5;font-weight:800}.fortnite-status{border-color:#4de9ff}.fortnite-status p{margin:5px 0;color:#e9d8ff;font-size:12px;font-weight:800}.fortnite-status strong{display:block;color:#fff500;font-size:16px}.fortnite-entry form{display:flex;flex-direction:column;gap:12px}.fortnite-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fortnite-week-note{margin:0;color:#e5d6ff;font-size:11px;line-height:1.5;font-weight:800;text-align:center}
.unit-meta{margin:9px 0 3px;font-size:11px;line-height:1.55;font-weight:800;color:#e5d9ff}.unit-meta b{color:#fff500}.unit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.unit-actions .battle-button{min-height:42px;padding:6px 4px;font-size:10px}.unit-actions .battle-button:last-child:nth-child(odd){grid-column:1/-1}.home-test-state{margin:9px 0 0;padding:7px 9px;border-left:4px solid #fff500;background:#2a1458;font-size:11px;font-weight:900;color:#fff6ba}
.print-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.print-toolbar p{grid-column:1/-1;margin:0 0 4px;font-size:12px;font-weight:800;line-height:1.5}.print-toolbar .battle-button{font-size:11px;padding:9px 4px}.print-sheet{background:#fff;color:#121212;border:3px solid #111;padding:18px 16px;font-family:'Yu Gothic','Meiryo',sans-serif;font-size:12px;line-height:1.6}.print-sheet h1{font-size:20px;margin:0 0 9px}.print-sheet>p{margin:3px 0}.print-question{border-top:1px solid #777;padding:14px 0 12px;break-inside:avoid;page-break-inside:avoid}.print-question:first-of-type{margin-top:16px}.print-question b{display:block;font-size:13px}.print-question p{margin:6px 0 12px}.print-question span{display:block;margin-top:8px}.result-review{display:flex;flex-direction:column;gap:10px;margin:13px 0}.result-question{padding:12px 13px;font-size:12px;line-height:1.55}.result-question strong{font-size:14px}.result-question strong.right{color:#69ffa9}.result-question strong.wrong{color:#ff9cc8}.result-question p{margin:6px 0}.result-question small{color:#e8d5ff;font-weight:900}.result-review+.battle-button{margin-bottom:13px}
@media print{@page{size:A4;margin:15mm}html,body{width:auto!important;height:auto!important;min-width:0!important;margin:0!important;background:#fff!important;color:#111!important}.app-shell,.app-content{display:block!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;overflow:visible!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.bottom-nav,.screen-head,.print-toolbar,.modal-backdrop,.toast{display:none!important}.inner-screen.printable-test{padding:0!important;min-height:0!important}.print-sheet{border:0!important;padding:0!important;font-size:11pt}.print-sheet h1{font-size:18pt}.print-question b{font-size:11pt}}


