@import"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,700&family=Nunito+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root,[data-theme=light]{--bg-primary: #f7f3ee;--bg-secondary: #ede9e3;--bg-tertiary: #e0dbd3;--bg-card: #ffffff;--bg-card-hover: #fffcf8;--bg-input: #f0ece6;--bg-nav: rgba(255,252,248,.97);--bg-overlay: rgba(255,252,248,.99);--bg-sidebar: #1a1208;--bg-sidebar-text: #f5ead8;--text-primary: #1a1208;--text-secondary: #3d3020;--text-tertiary: #7a6a54;--text-heading: #0f0a02;--text-muted: #a08e74;--text-inverse: #fffcf8;--text-link: #c47a00;--text-on-sidebar:#f5ead8;--accent-primary: #f5c200;--accent-primary-light: #fff8d6;--accent-primary-dark: #c49800;--accent-primary-glow: rgba(245,194,0,.25);--accent-secondary: #1a2f6e;--accent-secondary-light:#e8edf8;--accent-secondary-dark: #0d1a3e;--accent-upvote: #f5c200;--accent-downvote: #6b7fb5;--accent-gold: #f5c200;--accent-green: #16a34a;--accent-red: #dc2626;--accent-blue: #2563eb;--accent-purple: #7c3aed;--accent-orange: #ea580c;--nsfw-color: #dc2626;--nsfw-bg: #fef2f2;--verified-color: #f5c200;--border-light: #e8e0d5;--border-medium: #d4c9b8;--border-strong: #a89880;--border-focus: #f5c200;--shadow-xs: 2px 2px 0 rgba(26,18,8,.08);--shadow-sm: 3px 3px 0 rgba(26,18,8,.1);--shadow-md: 4px 4px 0 rgba(26,18,8,.12),0 2px 16px rgba(26,18,8,.06);--shadow-lg: 5px 5px 0 rgba(26,18,8,.14),0 4px 24px rgba(26,18,8,.08);--shadow-xl: 6px 6px 0 rgba(26,18,8,.16),0 8px 40px rgba(26,18,8,.1);--shadow-card: 3px 3px 0 var(--border-medium);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl:28px;--radius-full:9999px;--nav-height: 60px;--sidebar-width: 260px;--bottom-nav-height: 64px;--font-display: "Nunito", system-ui, sans-serif;--font-body: "Nunito Sans", system-ui, sans-serif;--font-mono: "Space Grotesk", monospace;--transition-fast: .12s cubic-bezier(.4,0,.2,1);--transition-base: .2s cubic-bezier(.4,0,.2,1);--transition-slow: .35s cubic-bezier(.4,0,.2,1);--transition-spring: .4s cubic-bezier(.34,1.56,.64,1);--transition-bounce: .5s cubic-bezier(.34,1.56,.64,1)}[data-theme=dark]{--bg-primary: #0e0a06;--bg-secondary: #181108;--bg-tertiary: #221800;--bg-card: #1a1208;--bg-card-hover: #221800;--bg-input: #181108;--bg-nav: rgba(14,10,6,.97);--bg-overlay: rgba(14,10,6,.99);--bg-sidebar: #0e0a06;--bg-sidebar-text:#f5ead8;--text-primary: #f5ead8;--text-secondary: #c8b898;--text-tertiary: #8a7660;--text-heading: #fff8ec;--text-muted: #5a4a38;--text-inverse: #0e0a06;--text-link: #f5c200;--text-on-sidebar:#f5ead8;--accent-primary: #f5c200;--accent-primary-light: #2a1e00;--accent-primary-dark: #ffd700;--accent-primary-glow: rgba(245,194,0,.2);--accent-secondary: #2d4faa;--accent-secondary-light:#0a1535;--accent-secondary-dark: #4a6fd4;--accent-upvote: #f5c200;--accent-downvote: #8899cc;--accent-green: #4ade80;--accent-red: #f87171;--accent-blue: #60a5fa;--accent-purple: #a78bfa;--accent-orange: #fb923c;--nsfw-color: #f87171;--nsfw-bg: #300a0a;--verified-color: #f5c200;--border-light: #2a1e0a;--border-medium: #3d2e18;--border-strong: #6a5040;--border-focus: #f5c200;--shadow-xs: 2px 2px 0 rgba(0,0,0,.4);--shadow-sm: 3px 3px 0 rgba(0,0,0,.5);--shadow-md: 4px 4px 0 rgba(0,0,0,.6),0 2px 16px rgba(0,0,0,.3);--shadow-lg: 5px 5px 0 rgba(0,0,0,.7),0 4px 24px rgba(0,0,0,.4);--shadow-xl: 6px 6px 0 rgba(0,0,0,.8),0 8px 40px rgba(0,0,0,.5);--shadow-card:3px 3px 0 var(--border-medium)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg-primary:#0e0a06;--bg-secondary:#181108;--bg-tertiary:#221800;--bg-card:#1a1208;--bg-card-hover:#221800;--bg-input:#181108;--bg-nav:rgba(14,10,6,.97);--bg-overlay:rgba(14,10,6,.99);--bg-sidebar:#0e0a06;--bg-sidebar-text:#f5ead8;--text-on-sidebar:#f5ead8;--text-primary:#f5ead8;--text-secondary:#c8b898;--text-tertiary:#8a7660;--text-heading:#fff8ec;--text-muted:#5a4a38;--text-inverse:#0e0a06;--text-link:#f5c200;--accent-primary:#f5c200;--accent-primary-light:#2a1e00;--accent-primary-dark:#ffd700;--accent-primary-glow:rgba(245,194,0,.2);--accent-upvote:#f5c200;--accent-downvote:#8899cc;--accent-green:#4ade80;--accent-red:#f87171;--accent-blue:#60a5fa;--accent-purple:#a78bfa;--accent-orange:#fb923c;--nsfw-color:#f87171;--nsfw-bg:#300a0a;--verified-color:#f5c200;--border-light:#2a1e0a;--border-medium:#3d2e18;--border-strong:#6a5040;--border-focus:#f5c200;--shadow-xs:2px 2px 0 rgba(0,0,0,.4);--shadow-sm:3px 3px 0 rgba(0,0,0,.5);--shadow-md:4px 4px 0 rgba(0,0,0,.6),0 2px 16px rgba(0,0,0,.3);--shadow-lg:5px 5px 0 rgba(0,0,0,.7),0 4px 24px rgba(0,0,0,.4);--shadow-card:3px 3px 0 var(--border-medium)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;font-size:1.0625rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit;font-size:inherit}img{display:block;max-width:100%}img,video{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}img[src*="/api/media/proxy/"],video[src*="/api/media/proxy/"]{pointer-events:none}[data-media-clickable] img,[data-media-clickable] video{pointer-events:auto}:focus-visible{outline:2.5px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--accent-primary-glow,rgba(245,194,0,.3));color:var(--text-heading)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:800;line-height:1.25;color:var(--text-heading)}p{color:var(--text-secondary);line-height:1.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card{background:var(--bg-card);border:2px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.verified-badge{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;flex-shrink:0;width:16px;height:16px;animation:verifiedPop .3s var(--transition-spring)}.nsfw-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:var(--radius-full);background:var(--nsfw-bg);color:var(--nsfw-color);font-size:.68rem;font-weight:800;font-family:var(--font-display);border:1.5px solid var(--nsfw-color);letter-spacing:.05em;text-transform:uppercase}.post-row{background:var(--bg-card);border:2px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:all var(--transition-fast);overflow:hidden}.post-row:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-1px)}.vote-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;border-radius:var(--radius-full);border:2px solid var(--border-light);background:transparent;cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:.875rem;transition:all var(--transition-spring);color:var(--text-muted)}.vote-btn:hover{border-color:var(--border-medium);color:var(--text-primary);transform:scale(1.05)}.vote-btn.upvoted{background:var(--accent-primary);color:var(--text-inverse);border-color:var(--accent-primary);animation:voteUp .4s var(--transition-spring)}.vote-btn.downvoted{background:var(--accent-downvote);color:#fff;border-color:var(--accent-downvote);animation:voteDown .4s var(--transition-spring)}.tab-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:var(--radius-full);font-family:var(--font-display);font-weight:700;font-size:.875rem;border:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);background:transparent;color:var(--text-muted)}.tab-pill:hover{background:var(--bg-secondary);color:var(--text-primary)}.tab-pill.active{background:var(--accent-primary);color:var(--text-inverse);border-color:var(--accent-primary);box-shadow:3px 3px 0 var(--accent-primary-dark)}.sidebar-overlay{position:fixed;inset:0;z-index:998;background:#00000080;backdrop-filter:blur(2px);animation:fadeIn .2s ease}.sidebar-drawer{position:fixed;top:0;left:0;bottom:0;z-index:999;width:var(--sidebar-width);background:var(--bg-sidebar);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;animation:slideInLeft .25s var(--transition-spring)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:var(--bottom-nav-height);background:var(--bg-nav);border-top:2px solid var(--border-light);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;padding-bottom:env(safe-area-inset-bottom);z-index:500}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.input-base{width:100%;padding:10px 14px;background:var(--bg-input);border:2px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:1rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.input-base:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-primary-glow)}.input-base::placeholder{color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border-radius:var(--radius-full);font-family:var(--font-display);font-weight:800;font-size:.9rem;border:2px solid transparent;cursor:pointer;transition:all var(--transition-spring);white-space:nowrap;text-decoration:none}.btn-primary{background:var(--accent-primary);color:var(--text-inverse);border-color:var(--accent-primary-dark);box-shadow:3px 3px 0 var(--accent-primary-dark)}.btn-primary:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--accent-primary-dark)}.btn-primary:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--accent-primary-dark)}.btn-outline{background:transparent;color:var(--text-primary);border-color:var(--border-medium);box-shadow:2px 2px 0 var(--border-medium)}.btn-outline:hover{border-color:var(--border-strong);transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--border-strong)}.community-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--radius-full);background:var(--accent-secondary-light);color:var(--accent-secondary);font-size:.78rem;font-weight:700;font-family:var(--font-display);border:1.5px solid var(--accent-secondary-light);transition:all var(--transition-fast)}.community-chip:hover{background:var(--accent-secondary);color:#fff}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes voteUp{0%{transform:scale(1)}30%{transform:scale(1.35) rotate(-5deg)}60%{transform:scale(.95)}to{transform:scale(1)}}@keyframes voteDown{0%{transform:scale(1)}30%{transform:scale(1.35) rotate(5deg)}60%{transform:scale(.95)}to{transform:scale(1)}}@keyframes verifiedPop{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes popIn{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}*{scrollbar-width:thin;scrollbar-color:var(--border-medium) transparent}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes floatBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes dotFlash{0%,80%,to{transform:scale(.8);opacity:.4}40%{transform:scale(1.2);opacity:1}}@keyframes popIn{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@keyframes waveHand{0%,to{transform:rotate(0)}20%{transform:rotate(-15deg)}40%{transform:rotate(15deg)}60%{transform:rotate(-10deg)}80%{transform:rotate(10deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes voteUp{0%{transform:scale(1)}30%{transform:scale(1.4) rotate(-8deg)}60%{transform:scale(.92)}to{transform:scale(1)}}@keyframes voteDown{0%{transform:scale(1)}30%{transform:scale(1.4) rotate(8deg)}60%{transform:scale(.92)}to{transform:scale(1)}}@keyframes verifiedPop{0%{transform:scale(0)}60%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes sidebarSlide{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes notifPulse{0%,to{box-shadow:0 0 #f5c20066}50%{box-shadow:0 0 0 6px #f5c20000}}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes cartoonBounce{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-8px) scaleY(1.05)}75%{transform:translateY(2px) scaleY(.97)}}
