*,:after,:before{box-sizing:border-box;margin:0;padding:0}[data-theme=dark]{--bg:#0d1117;--bg-raised:#161b22;--bg-card:rgba(22,27,34,.82);--bg-card-hover:rgba(30,38,50,.95);--border:hsla(0,0%,100%,.09);--border-hover:rgba(59,130,246,.5);--text:#f0f6fc;--text-2:#8b949e;--text-3:#484f58;--accent:#3b82f6;--accent-2:#1d4ed8;--accent-dim:rgba(59,130,246,.12);--accent-border:rgba(59,130,246,.3);--green:#22c55e;--green-dim:rgba(34,197,94,.1);--red:#ef4444;--red-dim:rgba(239,68,68,.1);--stl-red:#ee3124;--nav-bg:rgba(13,17,23,.88);--card-shadow:0 20px 50px rgba(0,0,0,.45);--hero-glow:radial-gradient(ellipse 90% 60% at 50% -5%,rgba(59,130,246,.1),transparent 70%);--shimmer-color:rgba(59,130,246,.6)}[data-theme=light]{--bg:#f0f6ff;--bg-raised:#e8f0fe;--bg-card:#fff;--bg-card-hover:#f8faff;--border:#d1dae8;--border-hover:rgba(37,99,235,.4);--text:#0d1117;--text-2:#4b5563;--text-3:#9ca3af;--accent:#2563eb;--accent-2:#1d4ed8;--accent-dim:rgba(37,99,235,.08);--accent-border:rgba(37,99,235,.25);--green:#16a34a;--green-dim:rgba(22,163,74,.08);--red:#dc2626;--red-dim:rgba(220,38,38,.08);--stl-red:#ee3124;--nav-bg:rgba(240,246,255,.9);--card-shadow:0 8px 32px rgba(37,99,235,.08);--hero-glow:radial-gradient(ellipse 90% 60% at 50% -5%,rgba(37,99,235,.08),transparent 70%);--shimmer-color:rgba(37,99,235,.5)}body,html{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif;min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .25s,color .25s}a{color:var(--accent);text-decoration:none}button,input,select,textarea{font-family:inherit}button{cursor:pointer}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes stl-pulse{0%,to{box-shadow:0 0 0 0 rgba(238,49,36,0)}50%{box-shadow:0 0 28px 4px rgba(238,49,36,.3)}}@keyframes badge-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes dot-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}.dot-grid{background-image:radial-gradient(var(--border) 1px,transparent 1px);background-size:28px 28px}.card-outer{position:relative;border-radius:16px;animation:fade-up .5s cubic-bezier(.22,1,.36,1) both}.card-outer:first-child{animation-delay:.05s}.card-outer:nth-child(2){animation-delay:.1s}.card-outer:nth-child(3){animation-delay:.15s}.card-outer:nth-child(4){animation-delay:.2s}.card-outer:nth-child(5){animation-delay:.25s}.card-outer:nth-child(6){animation-delay:.3s}.card-outer:nth-child(7){animation-delay:.35s}.card-outer:nth-child(8){animation-delay:.4s}.card-outer:before{content:"";position:absolute;inset:0;border-radius:16px;padding:1px;background:linear-gradient(135deg,rgba(139,92,246,0),rgba(34,197,94,0));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease,background .35s ease;pointer-events:none;z-index:1}.card-outer:hover:before{opacity:1;background:linear-gradient(135deg,var(--shimmer-color),rgba(34,197,94,.45))}.theme-toggle{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-2);font-size:.9rem;transition:border-color .2s,background .2s,color .2s}.theme-toggle:hover{border-color:var(--accent-border);color:var(--accent)}.nav-admin:hover{color:var(--accent)!important;border-color:var(--accent-border)!important}.hero-badge{display:inline-flex;align-items:center;gap:.55rem;border:1px solid var(--accent-border);background:var(--accent-dim);border-radius:999px;padding:.4rem 1rem;font-size:.78rem;color:var(--accent);animation:badge-in .5s cubic-bezier(.22,1,.36,1) .35s both}.hero-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:dot-pulse 2s ease-in-out infinite}.stl-logo-glow{animation:stl-pulse 3s ease-in-out infinite}.field-input{width:100%;padding:.7rem .9rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.88rem;outline:none;transition:border-color .2s}.field-input:focus{border-color:var(--accent-border)}