:root,[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-card:#ffffffd9;--bg-card-hover:#fff;--bg-input:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--text-inverse:#fff;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-light:#2563eb14;--accent-glow:#2563eb33;--success:#059669;--success-light:#0596691a;--warning:#d97706;--warning-light:#d977061a;--danger:#dc2626;--danger-light:#dc26261a;--info:#0891b2;--border:#0f172a0f;--border-light:#0f172a1a;--border-accent:#2563eb33;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000008;--shadow-xl:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000005;--shadow-glow:0 0 20px var(--accent-glow);--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--font-sans:var(--font-noto-sans-jp),var(--font-geist-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--sidebar-width:260px;--header-height:64px;--transition-fast:.15s ease;--transition-normal:.25s ease-out;--transition-slow:.4s cubic-bezier(.16,1,.3,1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-card:#1e293bbf;--bg-card-hover:#1e293bf2;--bg-input:#0f172a;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-inverse:#0f172a;--accent:#3b82f6;--accent-hover:#60a5fa;--accent-light:#3b82f626;--accent-glow:#3b82f64d;--success:#10b981;--success-light:#10b98126;--warning:#f59e0b;--warning-light:#f59e0b26;--danger:#ef4444;--danger-light:#ef444426;--info:#06b6d4;--border:#ffffff14;--border-light:#ffffff1f;--border-accent:#3b82f64d;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -1px #0003;--shadow-lg:0 10px 15px -3px #00000080,0 4px 6px -2px #0000004d;--shadow-xl:0 20px 25px -5px #0009,0 10px 10px -5px #0006;--shadow-glow:0 0 20px var(--accent-glow);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;transition:background .4s,color .4s;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea,select{color:inherit;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);transition:all var(--transition-normal);outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:14px}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);background:var(--bg-secondary)}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border:2px solid var(--bg-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.glass{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border)}.btn{border-radius:var(--radius-md);transition:all var(--transition-normal);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-1px)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-light);transform:translateY(-1px)}.btn-danger{background:var(--danger-light);color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger);color:#fff;transform:translateY(-1px)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.btn-sm{border-radius:var(--radius-sm);padding:6px 14px;font-size:13px}.btn-icon{border-radius:var(--radius-md);width:36px;height:36px;padding:0}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all var(--transition-normal);box-shadow:var(--shadow-sm);padding:24px}.card:hover{border-color:var(--border-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.badge{letter-spacing:.02em;border-radius:999px;align-items:center;padding:4px 12px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.badge-accent{background:var(--accent-light);color:var(--accent);border:1px solid #2563eb1a}[data-theme=dark] .badge-accent{border-color:#3b82f633}.badge-success{background:var(--success-light);color:var(--success)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-danger{background:var(--danger-light);color:var(--danger)}.tag{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);transition:all var(--transition-fast);border-radius:999px;align-items:center;gap:4px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-flex}.tag:hover{border-color:var(--border-light);color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn .5s var(--transition-slow)forwards}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary)25%,var(--bg-card-hover)50%,var(--bg-tertiary)75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}.empty-state{text-align:center;color:var(--text-tertiary);background:var(--bg-card);border:1px dashed var(--border-light);border-radius:var(--radius-lg);flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.empty-state h3{color:var(--text-primary);margin-bottom:8px;font-size:18px;font-weight:600}.empty-state p{max-width:320px;font-size:14px}.spinner{border:2px solid var(--border-light);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin}
