@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
:root{--bg:#0b1020;--card:#182039;--sub:#222d48;--line:#303b55;--ink:#f6f8ff;--muted:#a0abc3;--accent:#b1f36d;--violet:#a99bff;--orange:#ffcf78;--pink:#ff84b5}*{box-sizing:border-box}body{margin:0;font-family:Nunito,'Noto Sans JP',sans-serif;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:var(--accent)}.shell{max-width:1100px;margin:auto;padding:0 20px 90px}.top{display:flex;align-items:center;justify-content:space-between;padding:22px 0 16px;gap:12px}.logo{font-size:25px;font-weight:900;letter-spacing:-1px}.logo b{color:var(--accent)}.tag{font-size:11px;background:#263859;color:#c7ddff;padding:6px 11px;border-radius:99px}.hero{position:relative;overflow:hidden;border:1px solid #364063;border-radius:26px;padding:28px 26px;background:radial-gradient(circle at 95% 0%,#48578f 0%,transparent 43%),linear-gradient(125deg,#222849,#161e36);margin:4px 0 20px}.hero:after{content:'⚔';position:absolute;right:32px;bottom:-30px;font-size:150px;opacity:.1;transform:rotate(-25deg)}.eyebrow{font-weight:900;color:var(--accent);font-size:12px;letter-spacing:2px}.hero h1{font-size:clamp(26px,5vw,40px);margin:8px 0 7px;line-height:1.4}.hero p{max-width:620px;color:#d4d9ed;margin:0;font-size:13px;line-height:1.9}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:23px;max-width:650px}.metric{border:1px solid #56617c88;background:#11182c99;border-radius:14px;padding:12px}.metric strong{display:block;font-size:24px}.metric small{color:#bcc7dd;font-size:11px}.tabs{display:flex;gap:7px;overflow-x:auto;margin:18px 0;scrollbar-width:none}.tabs button,.chip{border:1px solid var(--line);background:#19223a;color:#d6def0;border-radius:12px;padding:12px 15px;white-space:nowrap;font-size:13px;font-weight:800}.tabs button.active,.chip.active{background:var(--accent);border-color:var(--accent);color:#152010}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:21px 0 12px}.sectionhead h2{font-size:19px;margin:0}.subtext{color:var(--muted);font-size:12px}.filters{display:flex;gap:7px;overflow:auto;padding:2px 0 15px}.chip{padding:9px 12px;font-size:12px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.quest{background:var(--card);border:1px solid var(--line);border-radius:19px;padding:19px;transition:transform .15s}.quest:hover{transform:translateY(-2px);border-color:#73875b}.qtop{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.rank{font-weight:900;font-size:13px;color:#121c15;background:var(--accent);border-radius:8px;padding:6px 10px}.rank.S{background:#ffd56b}.rank.A{background:#ceabff}.rank.B{background:#91c7ff}.rank.C{background:#87e1c8}.rank.D{background:#c0cadb}.rank.SP{background:#ff93ad}.status{font-size:11px;color:var(--accent)}.status.busy{color:var(--orange)}.quest h3{font-size:17px;margin:0 0 10px;line-height:1.6}.quest p{color:var(--muted);font-size:12px;line-height:1.7;min-height:40px;margin:0}.qbottom{display:flex;align-items:center;justify-content:space-between;margin-top:17px;gap:10px;border-top:1px solid var(--line);padding-top:14px}.xp{color:var(--accent);font-weight:900}.btn{background:var(--accent);border:none;color:#152010;font-size:13px;font-weight:900;padding:11px 16px;border-radius:11px}.btn.secondary{background:#313d58;color:white}.btn.warn{background:#5a3341;color:#ffb7c6}.btn:disabled{opacity:.45;cursor:not-allowed}.empty{text-align:center;color:var(--muted);padding:36px 12px;background:#19213a;border-radius:16px}.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:19px;margin:12px 0}.panel h3{margin:0 0 12px}.stack{display:grid;gap:10px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.row:last-child{border:0}.muted{color:var(--muted)}.small{font-size:12px}.form{display:grid;gap:10px}.form label{display:grid;gap:5px;font-size:12px;color:#bcc9e1;font-weight:800}.form input,.form select,.form textarea{background:#10172c;border:1px solid #35405b;color:white;border-radius:10px;padding:12px;outline:none;width:100%;min-width:0}.form textarea{resize:vertical;min-height:90px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modalback{position:fixed;inset:0;z-index:20;background:#050812df;display:flex;justify-content:center;align-items:center;padding:15px}.modal{background:#1a233b;max-width:590px;max-height:91vh;overflow:auto;width:100%;border:1px solid #56617d;border-radius:20px;padding:23px}.modal header{display:flex;justify-content:space-between;gap:10px}.modal h2{font-size:22px;margin:9px 0 16px}.modal .close{border:0;background:#35415b;color:#fff;border-radius:10px;padding:5px 10px;align-self:start}.detail{white-space:pre-wrap;color:#cdd5e6;line-height:1.9;font-size:13px}.notice{background:#24334b;border-left:3px solid var(--accent);padding:12px 14px;border-radius:9px;font-size:12px;color:#d8e7f3;line-height:1.7}.leader{display:grid;grid-template-columns:37px 1fr auto;align-items:center;gap:14px}.medal{font-weight:900;color:var(--orange);font-size:24px}.auth{max-width:420px;margin:55px auto}.auth h1{font-size:31px}.auth .panel{padding:24px}.badge{background:#31405d;padding:5px 9px;border-radius:8px;font-size:11px}.loading{text-align:center;padding:70px}.error{color:#ffbac7;font-size:12px}.footer{color:#7a89a8;text-align:center;font-size:11px;padding:22px}.linkbtn{border:0;background:none;color:var(--accent);font-weight:800;padding:0}.adminaction{display:flex;gap:7px;flex-wrap:wrap}.authswitch{margin-top:15px;text-align:center}.hidden{display:none}@media(max-width:620px){.shell{padding:0 13px 70px}.top{padding-top:14px}.hero{padding:24px 18px}.grid{grid-template-columns:1fr}.metrics{gap:7px}.metric{padding:10px}.metric strong{font-size:19px}.modal{padding:17px}.twocol{grid-template-columns:1fr}.tabs button{padding:10px 12px}.quest{padding:16px}}
