*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}:root{--fg: #171717;--bg: #ffffff;--muted: #525252;--muted-2: #737373;--border: #d4d4d4;--card-bg: #ffffff;--pattern: #e5e7eb;--wave: #171717}.dark{--fg: #ffffff;--bg: #0a0a0a;--muted: #a3a3a3;--muted-2: #737373;--border: #404040;--card-bg: #0a0a0a;--pattern: #404040;--wave: #a3a3a3}body{font-family:ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--fg);background:var(--bg);line-height:1.6;transition:background .3s ease,color .3s ease}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}header.site{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px dashed var(--border)}.nav{display:flex;align-items:center;justify-content:space-between;height:72px}.brand{display:flex;align-items:center;gap:7px;font-weight:600;font-size:1.05rem}.brand .star{font-size:1.3rem;display:inline-block;transition:transform .3s ease-in-out}.brand:hover .star{transform:rotate(-12deg) scale(1.2)}.nav-links{display:flex;align-items:center;gap:4px;font-size:.9rem;color:var(--muted-2)}.nav-links a{padding:8px 12px;font-weight:500;letter-spacing:.02em;transition:color .2s}.nav-links a:hover{color:var(--fg)}.theme-btn{margin-left:10px;width:34px;height:34px;border-radius:10px;border:1px dashed var(--border);background:transparent;color:var(--fg);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .12s}.theme-btn:hover{transform:scale(1.08)}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:transform .15s,background .15s;border:none}.btn:hover{transform:scale(1.05)}.btn .arr{width:16px;height:16px;transition:transform .12s}.btn:hover .arr{transform:translate(4px)}.btn.solid{background:var(--fg);color:var(--bg)}.btn.outline{background:var(--card-bg);color:var(--fg);border:1px solid var(--border)}.btn.off{opacity:.45;pointer-events:none}.dcard{position:relative;padding:28px;border-radius:16px;cursor:default}.dcard .layer-back{position:absolute;inset:0;border-radius:16px;border:1px dashed var(--border);transition:transform .18s ease-out}.dcard .layer-front{position:absolute;inset:0;border-radius:16px;background:var(--card-bg);border:1px dashed var(--border);transition:transform .18s ease-out;overflow:hidden}.dcard .layer-front:after{content:"";position:absolute;inset:0;opacity:.5}.dcard .content{position:relative;z-index:3;transition:transform .18s ease-out}.dcard:hover .layer-front,.dcard:hover .content{transform:translate(-4px,-4px)}.dcard:hover .layer-back{transform:translate(4px,4px)}.dcard.p-dots .layer-front:after{background-image:radial-gradient(var(--pattern) 1px,transparent 1px);background-size:24px 24px}.dcard.p-grid .layer-front:after{background-image:linear-gradient(var(--pattern) 1px,transparent 1px),linear-gradient(90deg,var(--pattern) 1px,transparent 1px);background-size:20px 20px}.dcard.p-waves .layer-front:after{background-image:linear-gradient(45deg,transparent 25%,var(--wave) 25%,var(--wave) 50%,transparent 50%,transparent 75%,var(--wave) 75%);background-size:20px 20px;opacity:.18}.dcard.p-circles .layer-front:after{background-image:radial-gradient(circle at center,var(--pattern) 1px,transparent 1px);background-size:24px 24px}h1.hero-title{font-size:2.6rem;font-weight:700;letter-spacing:-.025em;line-height:1.15}.lead{margin-top:14px;font-size:1.05rem;color:var(--muted);max-width:480px}h2.section{font-size:1.6rem;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}.section-sub{color:var(--muted);margin-bottom:32px}@keyframes string-wobble{0%{transform:translate(0) scale(1.05)}15%{transform:translate(-3px) scale(1.05)}30%{transform:translate(3px) scale(1.05)}45%{transform:translate(-2px) scale(1.05)}60%{transform:translate(2px) scale(1.05)}75%{transform:translate(-1px) scale(1.05)}to{transform:translate(0) scale(1.05)}}.btn:hover{animation:string-wobble .45s ease-out}.theme-btn:hover,.chip:hover{animation:string-wobble .4s ease-out}.brand:hover .star{animation:string-wobble .5s ease-out}.msr{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;line-height:1;display:inline-block;vertical-align:-.18em;font-size:1.25em;letter-spacing:normal;font-variation-settings:"FILL" 1}
