*{margin:0;padding:0;box-sizing:border-box}html{font-family:Inter,Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes pulse-dot{0%,80%,to{opacity:.25;transform:scale(.75)}40%{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}body{background:radial-gradient(700px 500px at 80% -10%,var(--orb-a,rgba(94,242,194,.26)),transparent 60%),radial-gradient(600px 500px at 10% 110%,var(--orb-b,rgba(166,130,255,.22)),transparent 55%),radial-gradient(500px 400px at 90% 90%,var(--orb-c,rgba(255,178,122,.18)),transparent 50%),linear-gradient(180deg,var(--bg-0,#0a0f14),var(--bg-1,#0f1720));background-attachment:fixed;color:var(--text-primary,#f2efe7);line-height:1.6}#root,body{min-height:100vh}:root,[data-theme=dark]{--bg-0:#0a0f14;--bg-1:#0f1720;--surface-primary:hsla(0,0%,100%,.05);--surface-secondary:hsla(0,0%,100%,.035);--surface-tertiary:hsla(0,0%,100%,.02);--surface-raised:hsla(0,0%,100%,.08);--text-primary:#f2efe7;--text-secondary:#c4c8c2;--text-tertiary:#8b9089;--text-muted:#5d6560;--accent:#5ef2c2;--accent-soft:rgba(94,242,194,.12);--border-light:hsla(0,0%,100%,.06);--border-medium:hsla(0,0%,100%,.1);--border-strong:hsla(0,0%,100%,.18);--depth-shadow:0 1px 2px rgba(0,0,0,.4),0 10px 32px rgba(0,0,0,.5),0 32px 80px rgba(0,0,0,.4);--inner-glow:inset 0 1px 0 hsla(0,0%,100%,.12),inset 0 -1px 0 rgba(0,0,0,.3);--orb-a:rgba(94,242,194,.26);--orb-b:rgba(166,130,255,.22);--orb-c:rgba(255,178,122,.18);--ring-track:hsla(0,0%,100%,.08);--coral:#e56b6f;--bento-icon-green:linear-gradient(145deg,rgba(8,28,20,.95),rgba(5,12,10,.98));--bento-icon-blue:linear-gradient(145deg,rgba(8,18,38,.95),rgba(5,10,20,.98));--bento-icon-yellow:linear-gradient(145deg,rgba(28,22,6,.95),rgba(14,11,4,.98));--bento-icon-purple:linear-gradient(145deg,rgba(20,8,34,.95),rgba(12,5,20,.98));--bento-icon-red:linear-gradient(145deg,rgba(30,8,8,.95),rgba(16,5,5,.98));--bento-icon-gray:linear-gradient(145deg,rgba(14,16,20,.95),rgba(8,9,12,.98));--bento-name-bg:rgba(0,0,0,.2);--bento-name-border:hsla(0,0%,100%,.05);--icon-stroke-green:rgba(180,255,225,.92);--icon-stroke-blue:rgba(180,210,255,.92);--icon-stroke-yellow:rgba(255,235,160,.92);--icon-stroke-purple:rgba(210,180,255,.92);--icon-stroke-red:hsla(0,100%,88%,.92);--icon-stroke-gray:hsla(120,8%,87%,.88);--icon-drop-shadow:drop-shadow(0 2px 10px rgba(0,0,0,.5));--glass-text-primary:hsla(0,0%,100%,.95);--glass-text-secondary:hsla(0,0%,100%,.7);--glass-text-tertiary:hsla(0,0%,100%,.5);--glass-text-muted:hsla(0,0%,100%,.4);--glass-border-light:hsla(0,0%,100%,.15);--glass-border-medium:hsla(0,0%,100%,.25);--glass-border-strong:hsla(0,0%,100%,.35);--surface-bg-primary:hsla(0,0%,100%,.1);--surface-bg-secondary:hsla(0,0%,100%,.08);--surface-bg-tertiary:hsla(0,0%,100%,.06);--surface-bg-liquid-primary:hsla(0,0%,100%,.18);--surface-border-primary:hsla(0,0%,100%,.18);--surface-border-secondary:hsla(0,0%,100%,.14);--surface-border-tertiary:hsla(0,0%,100%,.1);--surface-border-liquid:hsla(0,0%,100%,.28);--theme-bg:linear-gradient(135deg,#0f172a,#1e293b 50%,#0f172a);--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-overlay:rgba(0,0,0,.65);--bg-inverse:#fff;--color-text-primary:#f8fafc;--color-text-secondary:#cbd5e1;--color-text-tertiary:#94a3b8;--color-text-inverse:#0f172a;--color-text-accent:#60a5fa;--color-border-light:hsla(0,0%,100%,.12);--color-border-medium:hsla(0,0%,100%,.2);--color-border-strong:hsla(0,0%,100%,.32)}[data-theme=light]{--bg-0:#f4f1ec;--bg-1:#efeae2;--surface-primary:hsla(0,0%,100%,.62);--surface-secondary:hsla(0,0%,100%,.44);--surface-tertiary:hsla(0,0%,100%,.28);--surface-raised:hsla(0,0%,100%,.82);--text-primary:#15221e;--text-secondary:#3d4a44;--text-tertiary:#6a746f;--text-muted:#98a09b;--accent:#1f9668;--accent-soft:rgba(31,150,104,.1);--border-light:rgba(25,35,35,.06);--border-medium:rgba(25,35,35,.1);--border-strong:rgba(25,35,35,.18);--depth-shadow:0 1px 2px rgba(20,30,25,.05),0 8px 24px rgba(20,30,25,.08),0 24px 56px rgba(20,30,25,.06);--inner-glow:inset 0 1px 0 hsla(0,0%,100%,.95),inset 0 -1px 0 rgba(0,0,0,.03);--orb-a:rgba(94,242,194,.22);--orb-b:rgba(230,212,245,.22);--orb-c:hsla(21,71%,88%,.18);--ring-track:rgba(25,35,35,.08);--coral:#c94347;--bento-icon-green:linear-gradient(145deg,rgba(94,220,180,.32),rgba(200,240,225,.16));--bento-icon-blue:linear-gradient(145deg,rgba(94,162,242,.32),rgba(200,225,255,.16));--bento-icon-yellow:linear-gradient(145deg,rgba(230,185,60,.3),rgba(255,240,195,.14));--bento-icon-purple:linear-gradient(145deg,rgba(160,120,255,.3),rgba(230,215,255,.14));--bento-icon-red:linear-gradient(145deg,rgba(220,90,95,.3),rgba(255,215,218,.14));--bento-icon-gray:linear-gradient(145deg,hsla(160,7%,58%,.24),hsla(144,8%,87%,.12));--bento-name-bg:hsla(0,0%,100%,.72);--bento-name-border:rgba(25,35,35,.06);--icon-stroke-green:rgba(10,105,72,.9);--icon-stroke-blue:rgba(22,72,158,.9);--icon-stroke-yellow:rgba(152,92,0,.9);--icon-stroke-purple:rgba(92,48,178,.9);--icon-stroke-red:rgba(175,38,50,.9);--icon-stroke-gray:rgba(52,68,62,.88);--icon-drop-shadow:drop-shadow(0 1px 4px rgba(0,0,0,.2));--glass-text-primary:rgba(26,29,35,.95);--glass-text-secondary:rgba(26,29,35,.7);--glass-text-tertiary:rgba(26,29,35,.55);--glass-text-muted:rgba(26,29,35,.4);--glass-border-light:rgba(0,0,0,.08);--glass-border-medium:rgba(0,0,0,.15);--glass-border-strong:rgba(0,0,0,.25);--surface-bg-primary:hsla(0,0%,100%,.15);--surface-bg-secondary:hsla(0,0%,100%,.1);--surface-bg-tertiary:hsla(0,0%,100%,.08);--surface-bg-liquid-primary:hsla(0,0%,100%,.65);--surface-border-primary:hsla(0,0%,100%,.25);--surface-border-secondary:hsla(0,0%,100%,.18);--surface-border-tertiary:hsla(0,0%,100%,.12);--surface-border-liquid:hsla(0,0%,100%,.4);--theme-bg:#f8f9fa;--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#f0f2f5;--bg-overlay:rgba(0,0,0,.4);--bg-inverse:#1a1d23;--color-text-primary:#1a1d23;--color-text-secondary:#6b7280;--color-text-tertiary:#9ca3af;--color-text-inverse:#fff;--color-text-accent:#3b82f6;--color-border-light:#e5e7eb;--color-border-medium:#d1d5db;--color-border-strong:#9ca3af}