:root{--navy: #10121c;--navy-soft: #1a1d2c;--navy-elevated: #21243669;--white: #f7f6fa;--lavender: #cdbfe8;--lavender-strong: #b39ee0;--lavender-soft: #ece6f7;--pink: #f3c9d6;--pink-strong: #e8a6bc;--pink-soft: #fbeef2;--text-muted: #9a9cb0;--border-soft: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--rarity-ssr: #f3c9d6;--rarity-sr: #cdbfe8;--rarity-r: #9fb4d4;--rarity-n: #6b6d80;--font-display: "Cormorant Garamond", "Noto Serif JP", serif;--font-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", system-ui, sans-serif;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 9px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:radial-gradient(ellipse at top,#191c2c 0%,var(--navy) 55%);color:var(--white);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.page{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:40px 20px 96px}.shell{width:100%;max-width:480px;margin:0 auto}.topbar{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:480px;margin:0 auto 20px}.brand{font-family:var(--font-display);font-style:italic;font-size:15px;letter-spacing:.28em;color:var(--lavender);text-transform:uppercase}.title{font-family:var(--font-display);font-size:34px;font-weight:600;letter-spacing:.01em;margin:2px 0 28px;color:var(--white)}.subtitle{font-size:13px;color:var(--text-muted);margin:-20px 0 24px}.section-title{font-family:var(--font-display);font-size:20px;font-weight:600;margin:28px 0 12px;color:var(--white)}.card{width:100%;max-width:480px;background:linear-gradient(180deg,var(--navy-soft) 0%,#171a29 100%);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:22px;box-shadow:0 18px 40px -24px #000000b3}.card+.card{margin-top:14px}.card-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.hairline{border:none;border-top:1px solid var(--border-soft);margin:14px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-body);font-size:14px;font-weight:600;letter-spacing:.02em;padding:12px 22px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease;background:var(--white);color:var(--navy)}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px -12px #f3c9d680}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary{background:linear-gradient(135deg,var(--lavender) 0%,var(--pink) 100%);color:#1c1330}.btn-ghost{background:transparent;color:var(--white);border:1px solid var(--border-strong)}.btn-block{width:100%}.btn-sm{padding:8px 16px;font-size:12px}.link-muted{font-size:12px;color:var(--text-muted);border-bottom:1px solid transparent}.link-muted:hover{color:var(--lavender);border-bottom-color:var(--lavender)}.field{display:block;margin-bottom:14px;font-size:12px;color:var(--text-muted)}.input,select.input,textarea.input{display:block;width:100%;margin-top:6px;padding:11px 13px;background:var(--navy);border:1px solid var(--border-soft);border-radius:var(--radius-sm);color:var(--white);font-family:var(--font-body);font-size:14px}.input:focus,select.input:focus,textarea.input:focus{outline:none;border-color:var(--lavender)}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.06em}.badge-SSR{background:color-mix(in srgb,var(--rarity-ssr) 22%,transparent);color:var(--rarity-ssr)}.badge-SR{background:color-mix(in srgb,var(--rarity-sr) 22%,transparent);color:var(--rarity-sr)}.badge-R{background:color-mix(in srgb,var(--rarity-r) 22%,transparent);color:var(--rarity-r)}.badge-N{background:color-mix(in srgb,var(--rarity-n) 30%,transparent);color:#c9cad6}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px}.status-ok{background:var(--lavender);box-shadow:0 0 8px var(--lavender)}.status-ng{background:var(--pink);box-shadow:0 0 8px var(--pink)}.hint{margin-top:20px;font-size:11px;color:var(--text-muted);text-align:center}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;width:100%;max-width:480px}.tile{border-radius:var(--radius-md);padding:6px;text-align:center;background:var(--navy-soft);border:1px solid var(--border-soft)}.tile-locked{opacity:.55}.tile-image{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:8px;display:block}.tile-silhouette{width:100%;aspect-ratio:1 / 1;border-radius:8px;background:repeating-linear-gradient(135deg,#1c1f30 0,#1c1f30 10px,#191c2a 10px,#191c2a 20px);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:20px;color:var(--text-muted)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#10121ceb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border-soft);padding:10px 12px calc(10px + env(safe-area-inset-bottom));z-index:10}.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10px;color:var(--text-muted);padding:4px 10px}.bottom-nav a.active{color:var(--lavender)}.bottom-nav .nav-icon{font-size:17px}@keyframes reveal-in{0%{opacity:0;transform:scale(.85) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.gacha-reveal{animation:reveal-in .45s cubic-bezier(.22,1,.36,1) both}
