:root{--bg:#f5f6fb;--fg:#171923;--muted:#667085;--accent:#4f46e5;--accent-dark:#4338ca;--accent-soft:#eef2ff;--accent-2:#7c3aed;--card:#fff;--border:#e4e7ec;--danger:#d92d20;--danger-soft:#fef3f2;--success:#17b26a;--success-soft:#ecfdf3;--warning:#b54708;--warning-soft:#fffaeb;--shadow-sm:0 1px 2px #1018280f;--shadow-md:0 8px 24px #4f46e514;--gradient-brand:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%)}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);font-family:var(--font-noto-sans-jp), -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 12% 0,#4f46e514,#0000 42%);min-height:100vh;margin:0;line-height:1.7}.site-topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#ffffffbf;position:sticky;top:0}.site-topbar-inner{align-items:center;gap:10px;max-width:880px;margin:0 auto;padding:14px 20px;display:flex}.lang-switch{background:var(--accent-soft);border-radius:999px;gap:4px;margin-left:auto;padding:3px;display:inline-flex}.lang-switch button{color:var(--accent-dark);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:600}.lang-switch button.active{background:var(--accent);color:#fff}.site-footer{justify-content:center;gap:20px;max-width:720px;margin:0 auto;padding:24px 20px 48px;font-size:.85rem;display:flex}.site-footer a{color:var(--muted)}.demo-notice{background:var(--warning-soft);max-width:880px;color:var(--warning);text-align:center;border-bottom:1px solid var(--border);margin:0 auto;padding:10px 20px;font-size:.85rem}.site-logo-mark{background:var(--gradient-brand);color:#fff;width:30px;height:30px;box-shadow:var(--shadow-md);border-radius:9px;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:inline-flex}.site-logo-text{letter-spacing:-.01em;font-size:.95rem;font-weight:700}.page{max-width:720px;margin:0 auto;padding:48px 20px 80px}h1{letter-spacing:-.03em;margin-bottom:.5rem;font-size:1.85rem;font-weight:900}h2{letter-spacing:-.01em;margin:1.5rem 0 .75rem;font-size:1.2rem;font-weight:700}p.lead{color:var(--muted);margin-bottom:2rem}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:18px;margin-bottom:16px;padding:24px;transition:box-shadow .2s,transform .2s}.card:hover{box-shadow:var(--shadow-md)}label{margin-top:16px;margin-bottom:6px;font-size:.92rem;font-weight:600;display:block}input[type=text],input[type=email],input[type=password],textarea{border:1px solid var(--border);width:100%;color:var(--fg);background:#fff;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}textarea{resize:vertical;min-height:120px}input[type=file]{margin-top:4px}.star-rating{gap:4px;font-size:1.8rem;display:flex}.star-rating button{cursor:pointer;color:var(--border);background:0 0;border:none;padding:0;line-height:1}.star-rating button.filled{color:var(--accent)}button.primary{background:var(--gradient-brand);color:#fff;cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:10px;margin-top:24px;padding:12px 22px;font-size:1rem;font-weight:700;transition:filter .15s,transform .1s}button.primary:hover{filter:brightness(1.06)}button.primary:active{transform:translateY(1px)}button.primary:disabled{opacity:.6;cursor:not-allowed}.error{color:var(--danger);background:var(--danger-soft);border:1px solid #fda29b;border-radius:8px;margin-top:12px;padding:10px 12px;font-size:.9rem}.nav{gap:16px;margin-bottom:24px;font-size:.9rem;display:flex}.nav a{color:var(--accent-dark);font-weight:600;text-decoration:none}.nav a:hover{text-decoration:underline}.tabs{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;gap:2px;margin-bottom:24px;padding:4px;display:inline-flex}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:.9rem;transition:color .15s,background .15s}.tabs button:hover{color:var(--fg)}.tabs button.active{color:#fff;background:var(--gradient-brand);font-weight:700}.badge{border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700;display:inline-block}.badge.pending{background:var(--warning-soft);color:var(--warning)}.badge.approved{background:var(--success-soft);color:var(--success)}.badge.rejected{background:var(--danger-soft);color:var(--danger)}.stars-readonly{color:var(--accent);letter-spacing:2px}.actions{gap:8px;margin-top:12px;display:flex}.actions button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:8px;padding:8px 14px;font-size:.9rem;font-weight:600;transition:filter .15s,background .15s}.actions button.approve{border-color:var(--success);color:var(--success);background:var(--success-soft)}.actions button.reject{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.actions button:hover{filter:brightness(.97)}.photo-thumb{object-fit:cover;border-radius:8px;max-width:80px;max-height:80px;margin-top:8px}.meta{color:var(--muted);margin-top:4px;font-size:.8rem}.empty{color:var(--muted);padding:24px 0}.honeypot{width:1px;height:1px;position:absolute;top:-9999px;left:-9999px;overflow:hidden}.plan-badge{border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.plan-badge.free{background:var(--border);color:var(--muted)}.plan-badge.paid{background:var(--accent-soft);color:var(--accent-dark)}.upgrade-box{border:1px dashed var(--accent);background:var(--accent-soft);border-radius:12px;margin-top:16px;padding:16px 18px}button.secondary{color:var(--accent-dark);border:1px solid var(--accent);cursor:pointer;background:#fff;border-radius:8px;padding:10px 16px;font-size:.92rem;font-weight:600;transition:background .15s}button.secondary:hover{background:var(--accent-soft)}
