:root{color-scheme:light;--bg: #f7f4ff;--bg-alt: #ffffff;--ink: #1b1232;--muted: #6c5f8a;--primary: #7b5cff;--primary-2: #a089ff;--accent: #ff8fd1;--card: rgba(255, 255, 255, .8);--border: rgba(123, 92, 255, .2);--shadow: 0 24px 60px rgba(27, 18, 50, .12);font-family:Inter,Noto Sans JP,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:radial-gradient(circle at top,#efe9ff 0%,var(--bg) 45%,#fff 100%)}a{color:inherit;text-decoration:none}.page{min-height:100vh;display:flex;flex-direction:column}.nav{display:flex;align-items:center;justify-content:space-between;padding:24px 8vw;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);background:rgba(255,255,255,.7);border-bottom:1px solid rgba(123,92,255,.08)}.nav.minimal{position:static}.logo{font-weight:700;font-size:1.2rem;letter-spacing:.02em}.nav-links{display:flex;gap:20px;color:var(--muted)}.nav-cta{display:flex;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:999px;background:var(--primary);color:#fff;font-weight:600;border:1px solid transparent;box-shadow:0 10px 24px #7b5cff40;transition:transform .2s ease,box-shadow .2s ease}.button:hover{transform:translateY(-1px);box-shadow:0 16px 30px #7b5cff59}.button.ghost{background:transparent;color:var(--primary);border-color:var(--border);box-shadow:none}.text-link{color:var(--primary);font-weight:600}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;padding:80px 8vw 40px;align-items:center}.hero-copy h1{font-size:clamp(2.2rem,2.5vw + 1.6rem,3.6rem);margin-bottom:16px}.tag{display:inline-flex;align-items:center;padding:6px 12px;background:rgba(123,92,255,.12);color:var(--primary);border-radius:999px;font-weight:600;font-size:.8rem}.lead{font-size:1.05rem;color:var(--muted);line-height:1.7}.hero-actions{display:flex;gap:12px;margin:24px 0}.hero-card{background:var(--card);padding:28px;border-radius:24px;border:1px solid var(--border);box-shadow:var(--shadow)}.avatar{width:120px;height:120px;border-radius:24px;background:linear-gradient(135deg,var(--primary),var(--accent));margin-bottom:20px;display:grid;place-items:center;overflow:hidden}.avatar-image{width:100%;height:100%;object-fit:cover}.section{padding:64px 8vw}.section.alt{background:var(--bg-alt)}.section h2{margin-bottom:24px;font-size:clamp(1.8rem,1.5vw + 1.2rem,2.6rem)}.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{background:var(--card);border:1px solid var(--border);padding:24px;border-radius:20px;box-shadow:0 12px 40px #1b123214}.credits ul{margin:12px 0 0;padding-left:20px;color:var(--muted)}.stack{display:grid;gap:20px}.stack-item{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:20px;border-radius:18px;background:var(--card);border:1px solid var(--border)}.badge{width:40px;height:40px;border-radius:14px;background:rgba(123,92,255,.16);color:var(--primary);display:grid;place-items:center;font-weight:700}.cta{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;align-items:center;background:linear-gradient(120deg,rgba(123,92,255,.12),rgba(255,143,209,.12));padding:32px;border-radius:28px;border:1px solid var(--border)}.cta-panel{background:white;padding:24px;border-radius:20px;box-shadow:0 12px 30px #1b123214}.cta-actions{display:flex;gap:12px;margin-top:18px}.download-actions{display:flex;gap:12px;margin-top:20px}.download-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:32px}.download-card{display:flex;align-items:center;gap:20px;padding:24px;background:white;border:2px solid var(--border);border-radius:20px;transition:all .3s ease}.download-card:hover{border-color:var(--primary);box-shadow:0 12px 40px #7b5cff26;transform:translateY(-2px)}.download-card svg{flex-shrink:0;color:var(--primary);transition:color .3s ease}.download-card:hover svg{color:var(--accent)}.download-card h3{margin:0;font-size:1.1rem;font-weight:700}.download-card p{margin:4px 0 0;color:var(--muted);font-size:.95rem}.section-link{margin-top:20px}.footer{margin-top:auto;padding:40px 8vw;display:flex;justify-content:space-between;gap:20px;background:#140b2b;color:#f7f4ff}.footer-links{display:flex;gap:16px;color:#f7f4ffb3}.auth{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;padding:60px 8vw}.auth-card{background:white;border-radius:28px;padding:32px;box-shadow:var(--shadow);border:1px solid var(--border)}.form{display:grid;gap:16px;margin-top:24px}.form-row{display:grid;gap:8px}.form-hint{color:var(--muted);font-size:.85rem}.form-alert{padding:12px 14px;border-radius:12px;margin-top:16px;font-size:.95rem}.form-alert.error{background:rgba(255,92,92,.12);color:#9b1c1c;border:1px solid rgba(255,92,92,.3)}.form-alert.success{background:rgba(92,255,166,.12);color:#176b3a;border:1px solid rgba(92,255,166,.3)}.button.danger{background:#ef4444;box-shadow:0 10px 24px #ef444440}.button.danger:hover{box-shadow:0 16px 30px #ef444459}.button.ghost.danger{background:transparent;color:#ef4444;border-color:#ef44444d}.account-id{font-family:monospace;background:rgba(0,0,0,.05);padding:8px 12px;border-radius:8px;overflow-wrap:break-word}.delete-confirm{margin-top:16px;padding:16px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);border-radius:12px}.warning{color:#9b1c1c;margin-bottom:12px}dl{display:grid;gap:8px;margin:16px 0}dt{font-weight:600;color:var(--muted);font-size:.9rem}dd{margin:0;padding:8px 0}.form label{display:grid;gap:8px;font-size:.95rem;color:var(--muted)}.form input{padding:12px 14px;border-radius:12px;border:1px solid rgba(108,95,138,.3);font-size:1rem}.checkbox{display:flex;gap:10px;align-items:center}.auth-note{margin-top:16px;display:flex;gap:8px;align-items:center}.auth-aside{background:rgba(123,92,255,.1);padding:28px;border-radius:24px;border:1px solid var(--border)}.mini-panel{margin-top:20px;background:white;border-radius:18px;padding:18px}.note{color:var(--muted);font-size:.9rem}@media (max-width: 900px){.nav{flex-direction:column;gap:16px}.nav-links,.nav-cta{flex-wrap:wrap;justify-content:center}.footer{flex-direction:column}}
