@import "https://fonts.googleapis.com/css2?family=LINE+Seed+JP:wght@400;500;570;700&display=swap";
:root{--bg:#0e0c0a;--bg2:#161210;--bg3:#1e1810;--card:#1a1510;--card2:#221c14;--card-soft:#ffffff08;--gold:#e8a010;--gold2:#f9c93a;--gold3:#c87008;--amber:#f0c84a;--brown:#7a4422;--cream:#fbf5e0;--text:#f0ead8;--muted:#9a8060;--subtle:#5a4830;--border:#e8a01024;--border2:#ffffff14;--green:#22c55e;--red:#ef4444;--shadow:0 22px 60px #00000052;--radius-lg:28px;--radius-md:20px;--radius-sm:14px;--wrap-width:1180px;--font-base:"LINE Seed JP", sans-serif;--font-mono:"LINE Seed JP", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-height:100%}body{background:radial-gradient(circle at top right, #e8a01014, transparent 26%), linear-gradient(180deg, var(--bg) 0%, #120e0b 100%);min-height:100vh;color:var(--text);font-family:var(--font-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}body:before{content:"";pointer-events:none;opacity:.35;z-index:-1;background-image:radial-gradient(circle at 20% 20%,#f9c93a0d,#0000 0 32%),radial-gradient(circle at 80% 0,#c8700814,#0000 0 28%);position:fixed;inset:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.wrap{width:min(100%, var(--wrap-width));margin:0 auto;padding:0 48px}.shell{min-height:100vh}.section{padding:40px 0}.auth-section{padding:56px 0 72px}.auth-shell{width:min(100%,760px);margin:0 auto}.auth-card{margin:0 auto;padding:clamp(28px,3.5vw,40px)}.auth-card .page-subtitle{max-width:640px}.card{border:1px solid var(--border2);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:linear-gradient(#1e1810e6 0%,#161210db 100%)}.button-primary,.button-secondary,.button-danger{border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 18px;transition:transform .18s,box-shadow .18s,border-color .18s,background-color .18s;display:inline-flex}.button-primary{background:linear-gradient(135deg, var(--gold2), var(--gold3));color:var(--bg);box-shadow:0 10px 30px #e8a0104d}.button-primary:hover{transform:translateY(-1px);box-shadow:0 14px 32px #e8a01059}.button-secondary{color:var(--text);border-color:var(--border2);background:#ffffff08}.button-secondary:hover{border-color:#e8a01042}.button-danger{color:#ffd7d7;background:#ef44441f;border-color:#ef44443d}.kicker{border:1px solid var(--border);color:var(--amber);letter-spacing:.08em;text-transform:uppercase;background:#e8a0101a;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:11px;font-weight:700;display:inline-flex}.kicker:before{content:"";background:var(--green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #22c55e8c}.page-title{letter-spacing:-.03em;margin:16px 0 10px;font-size:clamp(32px,4.6vw,56px);line-height:1.02}.page-subtitle{max-width:720px;color:var(--muted);font-size:15px;line-height:1.72}.field{gap:8px;display:grid}.field label{color:var(--muted);font-size:12px}.field input,.field select,.field textarea{border:1px solid var(--border2);width:100%;color:var(--text);background:#ffffff08;border-radius:14px;outline:none;padding:14px 16px}.field select{appearance:none;cursor:pointer;padding-right:48px}.field select option{color:var(--text);background:#1a1510}.field input:focus,.field select:focus,.field textarea:focus{border-color:#e8a01052;box-shadow:0 0 0 4px #e8a01014}.field-error{color:#ffb8b8;font-size:12px}.helper-text{color:var(--muted);font-size:12px;line-height:1.6}.panel-grid{gap:24px;display:grid}.empty-state{border-radius:var(--radius-md);border:1px dashed var(--border);color:var(--muted);background:#ffffff05;padding:24px}.badge{border:1px solid var(--border2);color:var(--text);background:#ffffff08;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:inline-flex}.badge[data-tone=success]{color:var(--green);background:#22c55e14;border-color:#22c55e3d}.badge[data-tone=warning]{color:var(--amber);background:#e8a01014;border-color:#e8a01038}.divider{background:linear-gradient(90deg, transparent, var(--border), transparent);height:1px}@media (max-width:960px){.wrap{padding:0 24px}}@media (max-width:600px){.auth-section{padding:32px 0 48px}.auth-card{padding:24px}.wrap{padding:0 16px}}
