:root{--safe-area-inset-top: env(safe-area-inset-top, 0px);--safe-area-inset-right: env(safe-area-inset-right, 0px);--safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);--safe-area-inset-left: env(safe-area-inset-left, 0px);--hdj-primary: 150 48% 31%;--hdj-primary-light: 142 52% 58%;--hdj-secondary: 42 92% 60%;--hdj-accent: 18 60% 95%;--hdj-text-dark: 25 24% 16%;--hdj-text-light: 28 12% 40%;--hdj-border: 32 18% 88%;--hdj-bg-main: 40 33% 97%;--hdj-bg-card: 40 40% 99%;--background: 40 33% 97%;--foreground: 25 24% 16%;--card: 40 40% 99%;--card-foreground: 25 24% 16%;--popover: 40 40% 99%;--popover-foreground: 25 24% 16%;--primary: 150 48% 31%;--primary-foreground: 46 60% 98%;--primary-edge: 150 54% 22%;--secondary: 42 92% 60%;--secondary-foreground: 32 70% 18%;--secondary-edge: 38 76% 46%;--coral: 14 80% 56%;--coral-foreground: 18 60% 98%;--coral-edge: 12 70% 44%;--muted: 38 24% 94%;--muted-foreground: 28 12% 40%;--accent: 18 58% 94%;--accent-foreground: 14 64% 32%;--destructive: 4 72% 50%;--destructive-foreground: 0 0% 100%;--destructive-edge: 4 74% 38%;--success: 142 56% 38%;--success-foreground: 0 0% 100%;--info: 200 72% 42%;--info-foreground: 0 0% 100%;--warning: 33 90% 44%;--warning-foreground: 0 0% 100%;--outcome-again: var(--destructive);--outcome-hard: var(--warning);--outcome-good: var(--success);--outcome-easy: var(--info);--trophy-gold: 42 92% 50%;--trophy-silver: 30 8% 60%;--trophy-bronze: 22 50% 46%;--border: 32 18% 88%;--input: 32 18% 86%;--ring: 150 48% 31%;--chart-1: 150 48% 34%;--chart-2: 42 90% 55%;--chart-3: 14 80% 58%;--chart-4: 200 72% 46%;--chart-5: 28 32% 42%;--overlay: 25 30% 12%;--toggle-knob: 0 0% 100%;--sidebar: 40 40% 99%;--sidebar-foreground: 25 24% 16%;--sidebar-primary: 150 48% 31%;--sidebar-primary-foreground: 46 60% 98%;--sidebar-accent: 18 58% 94%;--sidebar-accent-foreground: 14 64% 32%;--sidebar-border: 32 18% 88%;--sidebar-ring: 150 48% 31%;--font-sans: "Outfit", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Georgia", serif;--font-mono: "JetBrains Mono", "Source Code Pro", monospace;--radius: 1rem;--shadow-x: 0;--shadow-y: 1px;--shadow-blur: 4px;--shadow-spread: 0px;--shadow-opacity: .12;--shadow-color: hsl(25 25% 14% / .1);--shadow-2xs: 0 1px 2px 0 hsl(25 25% 14% / .05);--shadow-xs: 0 2px 4px 0 hsl(25 25% 14% / .05);--shadow-sm: 0 1px 2px 0 hsl(25 25% 14% / .06);--shadow: 0 1px 3px 0 hsl(25 25% 14% / .1), 0 1px 2px -1px hsl(25 25% 14% / .1);--shadow-md: 0 4px 6px -1px hsl(25 25% 14% / .1), 0 2px 4px -2px hsl(25 25% 14% / .1);--shadow-lg: 0 10px 15px -3px hsl(25 25% 14% / .1), 0 4px 6px -4px hsl(25 25% 14% / .1);--shadow-xl: 0 20px 25px -5px hsl(25 25% 14% / .12), 0 8px 10px -6px hsl(25 25% 14% / .1);--shadow-2xl: 0 25px 50px -12px hsl(25 25% 14% / .22);--tracking-normal: 0em;--spacing: .25rem}.dark{--background: 30 14% 9%;--foreground: 38 24% 90%;--card: 28 14% 12%;--card-foreground: 38 24% 90%;--popover: 28 14% 13%;--popover-foreground: 38 24% 90%;--primary: 146 50% 52%;--primary-foreground: 150 45% 9%;--primary-edge: 146 46% 32%;--secondary: 42 90% 60%;--secondary-foreground: 35 65% 12%;--secondary-edge: 38 70% 40%;--coral: 14 84% 64%;--coral-foreground: 14 50% 10%;--coral-edge: 12 60% 40%;--muted: 28 12% 17%;--muted-foreground: 34 14% 66%;--accent: 14 32% 20%;--accent-foreground: 16 70% 80%;--destructive: 4 78% 66%;--destructive-foreground: 0 50% 10%;--destructive-edge: 4 60% 42%;--success: 142 52% 52%;--success-foreground: 150 45% 9%;--info: 200 75% 62%;--info-foreground: 205 60% 10%;--warning: 38 92% 58%;--warning-foreground: 35 65% 12%;--outcome-again: var(--destructive);--outcome-hard: var(--warning);--outcome-good: var(--success);--outcome-easy: var(--info);--trophy-gold: 42 90% 60%;--trophy-silver: 30 8% 70%;--trophy-bronze: 24 50% 56%;--border: 30 12% 20%;--input: 30 12% 22%;--ring: 146 50% 52%;--chart-1: 146 50% 54%;--chart-2: 42 88% 60%;--chart-3: 14 84% 64%;--chart-4: 200 75% 62%;--chart-5: 32 30% 64%;--overlay: 20 30% 4%;--toggle-knob: 38 24% 90%;--sidebar: 28 16% 10%;--sidebar-foreground: 38 24% 90%;--sidebar-primary: 146 50% 52%;--sidebar-primary-foreground: 150 45% 9%;--sidebar-accent: 14 32% 20%;--sidebar-accent-foreground: 16 70% 80%;--sidebar-border: 30 12% 18%;--sidebar-ring: 146 50% 52%;--font-sans: "Outfit", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Georgia", serif;--font-mono: "JetBrains Mono", "Source Code Pro", monospace;--radius: 1rem;--shadow-x: 0;--shadow-y: 1px;--shadow-blur: 4px;--shadow-spread: 0px;--shadow-opacity: .12;--shadow-color: hsl(20 30% 3%);--shadow-2xs: 0 1px 2px 0 hsl(20 30% 3% / .05);--shadow-xs: 0 2px 4px 0 hsl(20 30% 3% / .07);--shadow-sm: 0 2px 6px -1px hsl(20 30% 3% / .1), 0 4px 10px -2px hsl(20 30% 3% / .08);--shadow: 0 3px 8px -2px hsl(20 30% 3% / .12), 0 12px 30px -10px hsl(20 30% 3% / .14);--shadow-md: 0 6px 12px -4px hsl(20 30% 3% / .14), 0 16px 40px -12px hsl(20 30% 3% / .16);--shadow-lg: 0 10px 24px -6px hsl(20 30% 3% / .18), 0 20px 52px -16px hsl(20 30% 3% / .2);--shadow-xl: 0 16px 40px -10px hsl(20 30% 3% / .22), 0 28px 72px -16px hsl(20 30% 3% / .24);--shadow-2xl: 0 24px 64px -12px hsl(20 30% 3% / .28);--tracking-normal: 0em;--spacing: .25rem}@theme inline{ --color-background: hsl(var(--background)); --color-foreground: hsl(var(--foreground)); --color-card: hsl(var(--card)); --color-card-foreground: hsl(var(--card-foreground)); --color-popover: hsl(var(--popover)); --color-popover-foreground: hsl(var(--popover-foreground)); --color-primary: hsl(var(--primary)); --color-primary-foreground: hsl(var(--primary-foreground)); --color-secondary: hsl(var(--secondary)); --color-secondary-foreground: hsl(var(--secondary-foreground)); --color-muted: hsl(var(--muted)); --color-muted-foreground: hsl(var(--muted-foreground)); --color-accent: hsl(var(--accent)); --color-accent-foreground: hsl(var(--accent-foreground)); --color-coral: hsl(var(--coral)); --color-coral-foreground: hsl(var(--coral-foreground)); --color-overlay: hsl(var(--overlay)); --color-destructive: hsl(var(--destructive)); --color-destructive-foreground: hsl(var(--destructive-foreground)); --color-success: hsl(var(--success)); --color-success-foreground: hsl(var(--success-foreground)); --color-info: hsl(var(--info)); --color-info-foreground: hsl(var(--info-foreground)); --color-warning: hsl(var(--warning)); --color-warning-foreground: hsl(var(--warning-foreground)); --color-border: hsl(var(--border)); --color-input: hsl(var(--input)); --color-ring: hsl(var(--ring)); --color-sidebar: hsl(var(--sidebar)); --color-sidebar-foreground: hsl(var(--sidebar-foreground)); --color-sidebar-primary: hsl(var(--sidebar-primary)); --color-sidebar-primary-foreground: hsl(var(--sidebar-primary-foreground)); --color-sidebar-accent: hsl(var(--sidebar-accent)); --color-sidebar-accent-foreground: hsl(var(--sidebar-accent-foreground)); --color-sidebar-border: hsl(var(--sidebar-border)); --color-sidebar-ring: hsl(var(--sidebar-ring)); --color-chart-1: hsl(var(--chart-1)); --color-chart-2: hsl(var(--chart-2)); --color-chart-3: hsl(var(--chart-3)); --color-chart-4: hsl(var(--chart-4)); --color-chart-5: hsl(var(--chart-5)); --radius: var(--radius); --shadow-2xs: var(--shadow-2xs); --shadow-xs: var(--shadow-xs); --shadow-sm: var(--shadow-sm); --shadow: var(--shadow); --shadow-md: var(--shadow-md); --shadow-lg: var(--shadow-lg); --shadow-xl: var(--shadow-xl); --shadow-2xl: var(--shadow-2xl); --font-family-sans: var(--font-sans); --font-family-serif: var(--font-serif); --font-family-mono: var(--font-mono); --safe-area-inset-top: var(--safe-area-inset-top); --safe-area-inset-right: var(--safe-area-inset-right); --safe-area-inset-bottom: var(--safe-area-inset-bottom); --safe-area-inset-left: var(--safe-area-inset-left); }*{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}input,textarea,.selectable-text{-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}button,a,[role=button],.interactive{touch-action:manipulation}html,body{overscroll-behavior-y:none;overscroll-behavior-x:auto;-webkit-overflow-scrolling:touch}.scrollable{overscroll-behavior:auto;-webkit-overflow-scrolling:touch}.login-screen{overscroll-behavior:auto;height:100vh;overflow-y:auto;overflow-x:hidden;position:relative;-webkit-overflow-scrolling:touch;touch-action:pan-y}.grid-cols-53{grid-template-columns:repeat(53,minmax(0,1fr))}.study-card-content{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;overflow-x:hidden;overflow-y:visible}.study-card-text{word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:min(62ch,100%);margin-left:auto;margin-right:auto;text-rendering:optimizeLegibility;letter-spacing:-.01em;font-size:clamp(1.125rem,1rem + 1.8vw,2rem);line-height:1.5}.study-card-stack{display:grid;grid-template-columns:minmax(0,1fr)}.study-card-face{grid-area:1 / 1;min-width:0;min-height:clamp(20rem,50vh,32rem)}.study-card-media-img{max-height:clamp(8rem,32vh,22rem);width:auto;max-width:100%;object-fit:contain}@media (max-width: 640px){.deck-card-mobile{word-wrap:break-word;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;line-height:1.4}.deck-card-mobile .truncate{white-space:normal;overflow:visible;text-overflow:unset}.deck-card-mobile .break-words{word-break:break-word;overflow-wrap:anywhere}}@media (max-width: 480px){.deck-header-mobile{padding:1rem}.deck-buttons-mobile{grid-template-columns:1fr 1fr;gap:.5rem}.deck-buttons-mobile button{font-size:.75rem;padding:.5rem;height:2.25rem}}@media (min-width: 481px) and (max-width: 640px){.deck-buttons-mobile{grid-template-columns:repeat(3,1fr);gap:.75rem}}@media (max-width: 768px){button:not([role=switch]),[role=button]:not([role=switch]){min-height:44px;min-width:44px}.deck-card-actions button{padding:.75rem}.folder-mobile-actions{min-height:44px}.folder-mobile-actions button{min-height:44px;min-width:44px;padding:.5rem}.folder-compact{gap:.25rem}.folder-compact button{padding:.5rem;min-height:40px;min-width:40px}}.motivational-loading{animation:motivationalFadeIn .5s ease-in-out}@keyframes motivationalFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.motivational-phrase{animation:phraseSlideIn .8s ease-in-out}@keyframes phraseSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.motivational-dots{animation:dotsPulse 1.5s ease-in-out infinite}@keyframes dotsPulse{0%,to{opacity:.3}50%{opacity:1}}.loading-dot{animation:loadingBounce 1.4s ease-in-out infinite both}.loading-dot:nth-child(1){animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}.loading-dot:nth-child(3){animation-delay:0s}@keyframes loadingBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.markdown-content{word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;word-break:break-all;overflow-wrap:anywhere}@media (max-width: 640px){.study-card-content audio{width:100%;min-height:44px}}@media (max-width: 480px){.study-card-content audio{min-height:48px}}@media (max-width: 640px){.study-actions{position:sticky;bottom:0;z-index:10;background:hsl(var(--background));padding-top:.5rem;padding-bottom:max(.5rem,env(safe-area-inset-bottom,0px))}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px hsl(var(--primary) / .5)}50%{box-shadow:0 0 20px hsl(var(--primary) / .7)}}@keyframes sidebar-slide-in{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes sidebar-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@keyframes sidebar-expand{0%{opacity:.8}to{opacity:1}}@keyframes bounce-subtle{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-fade-in{animation:fade-in .3s ease-out}.animate-fade-out{animation:fade-out .3s ease-out}.animate-scale-in{animation:scale-in .3s ease-out}.animate-scale-out{animation:scale-out .3s ease-out}.animate-slide-in-left{animation:slide-in-left .3s ease-out}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}@media (max-width: 480px){.sidebar-mobile-optimized{width:100vw;max-width:280px}}@media (min-width: 481px) and (max-width: 640px){.sidebar-mobile-optimized{width:100vw;max-width:320px}}.sidebar-fixed{width:280px;min-width:280px;max-width:280px;flex-shrink:0}.sidebar-collapsed{width:72px;min-width:72px;max-width:72px;flex-shrink:0}@media (min-width: 1280px){.sidebar-fixed{width:320px;min-width:320px;max-width:320px}}@media (min-width: 1536px){.sidebar-fixed{width:360px;min-width:360px;max-width:360px}}@media (max-width: 1024px){.sidebar-fixed{width:260px;min-width:260px;max-width:260px}}@media (max-width: 768px){.sidebar-fixed{width:240px;min-width:240px;max-width:240px}.sidebar-collapsed{width:64px;min-width:64px;max-width:64px}}.sidebar-content-fixed{width:100%;max-width:100%;overflow-x:hidden;overflow-y:auto}.sidebar-content{scrollbar-width:thin;scrollbar-color:hsl(var(--muted-foreground) / .4) transparent}.sidebar-content::-webkit-scrollbar{width:4px}@media (max-width: 640px){.sidebar-content::-webkit-scrollbar{width:3px}}.sidebar-content::-webkit-scrollbar-track{background:transparent}.sidebar-content::-webkit-scrollbar-thumb{background-color:hsl(var(--muted-foreground) / .4);border-radius:2px}.sidebar-content::-webkit-scrollbar-thumb:hover{background-color:hsl(var(--muted-foreground) / .6)}.focus-visible\:ring-2:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-primary\/20:focus-visible{box-shadow:0 0 0 2px hsl(var(--ring) / .25)}.hover-lift{transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;box-shadow:var(--shadow-xs)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.glass{background:hsl(var(--card));border:1px solid hsl(var(--border));box-shadow:var(--shadow-sm)}.dark .glass{background:hsl(var(--card));border-color:hsl(var(--border))}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;border-radius:calc(var(--radius) - .125rem);border:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,box-shadow .12s ease,filter .15s ease,background-color .15s ease,color .15s ease,border-color .15s ease}.btn:focus-visible{outline:none}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;filter:none!important}.btn-sm{height:2.5rem;padding:0 .875rem;font-size:.875rem}.btn-md{height:2.75rem;padding:0 1.25rem;font-size:.9375rem}.btn-lg{height:3.25rem;padding:0 1.75rem;font-size:1rem}.btn-3d,.btn-primary,.btn-secondary,.btn-coral,.btn-destructive,.btn-outline{--btn-edge: var(--border);box-shadow:0 4px hsl(var(--btn-edge))}.btn-3d:hover:not(:disabled),.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-coral:hover:not(:disabled),.btn-destructive:hover:not(:disabled){filter:brightness(1.05)}.btn-3d:active:not(:disabled),.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-coral:active:not(:disabled),.btn-destructive:active:not(:disabled),.btn-outline:active:not(:disabled){transform:translateY(4px);box-shadow:0 0 hsl(var(--btn-edge))}.btn-3d:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-coral:focus-visible,.btn-destructive:focus-visible,.btn-outline:focus-visible{box-shadow:0 4px hsl(var(--btn-edge)),0 0 0 3px hsl(var(--ring) / .4)}.btn-primary{--btn-edge: var(--primary-edge);background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-secondary{--btn-edge: var(--secondary-edge);background:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.btn-coral{--btn-edge: var(--coral-edge);background:hsl(var(--coral));color:hsl(var(--coral-foreground))}.btn-destructive{--btn-edge: var(--destructive-edge);background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.btn-outline{background:hsl(var(--card));color:hsl(var(--foreground));border:2px solid hsl(var(--border))}.btn-outline:hover:not(:disabled){border-color:hsl(var(--primary) / .5);color:hsl(var(--primary));background:hsl(var(--accent) / .5)}.btn-ghost{background:transparent;color:hsl(var(--muted-foreground))}.btn-ghost:hover:not(:disabled){background:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-ghost:focus-visible{box-shadow:0 0 0 3px hsl(var(--ring) / .4)}.btn-glass{position:relative;--btn-edge: var(--border);border:2px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));font-weight:700;transition:transform .12s ease,box-shadow .12s ease,filter .15s ease,border-color .15s ease,background-color .15s ease,color .15s ease;box-shadow:0 3px hsl(var(--btn-edge));overflow:hidden}.btn-glass:hover:not(:disabled){border-color:hsl(var(--primary) / .5);color:hsl(var(--primary))}.btn-glass:active:not(:disabled){transform:translateY(3px);box-shadow:0 0 hsl(var(--btn-edge))}.btn-glass:focus-visible{outline:none;box-shadow:0 3px hsl(var(--btn-edge)),0 0 0 3px hsl(var(--ring) / .4)}.btn-glass:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-glass-primary{--btn-edge: var(--primary-edge);background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:transparent;box-shadow:0 4px hsl(var(--btn-edge))}.btn-glass-primary:hover:not(:disabled){background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:transparent;filter:brightness(1.05)}.btn-glass-secondary{--btn-edge: var(--secondary-edge);background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:transparent;box-shadow:0 4px hsl(var(--btn-edge))}.btn-glass-secondary:hover:not(:disabled){border-color:transparent;color:hsl(var(--secondary-foreground));filter:brightness(1.03)}.btn-glass-coral{--btn-edge: var(--coral-edge);background:hsl(var(--coral));color:hsl(var(--coral-foreground));border-color:transparent;box-shadow:0 4px hsl(var(--btn-edge))}.btn-glass-coral:hover:not(:disabled){border-color:transparent;color:hsl(var(--coral-foreground));filter:brightness(1.04)}.btn-glass-accent{--btn-edge: var(--border);background:hsl(var(--accent));color:hsl(var(--accent-foreground));border-color:transparent;box-shadow:0 3px hsl(var(--btn-edge))}.btn-glass-accent:hover:not(:disabled){border-color:transparent;color:hsl(var(--accent-foreground));filter:brightness(1.02)}.progress-track{background:hsl(var(--muted));border-radius:999px;overflow:hidden}.progress-fill{background:hsl(var(--primary));border-radius:999px;height:100%;transition:width .4s cubic-bezier(.25,1,.5,1)}.community-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(1rem,1.5vw,1.75rem);padding-bottom:max(1.5rem,var(--safe-area-inset-bottom, 0px))}.community-deck-card{background-color:hsl(var(--card));border:2px solid hsl(var(--border));border-radius:1rem;padding:clamp(1rem,2vw,1.5rem);display:flex;flex-direction:column;gap:1rem;min-height:100%;box-shadow:var(--shadow-sm);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;overflow:hidden}.community-deck-card:hover,.community-deck-card:focus-within{border-color:hsl(var(--primary));box-shadow:var(--shadow-md);transform:translateY(-2px)}.community-deck-card--copied{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .2)}.community-deck-card__header{display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.community-deck-card__title-row{display:flex;gap:.85rem;align-items:center;flex:1;min-width:0}.community-deck-card__icon{width:44px;height:44px;border-radius:.85rem;background-color:hsl(var(--primary) / .08);color:hsl(var(--primary));display:flex;align-items:center;justify-content:center;flex-shrink:0}.community-deck-card__title-group{min-width:0}.community-deck-card__title{font-size:1.15rem;font-weight:700;color:hsl(var(--foreground));margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.community-deck-card__author{font-size:.85rem;color:hsl(var(--muted-foreground));margin:.15rem 0 0}.community-deck-card__badge-stack{display:flex;flex-direction:column;gap:.35rem;align-items:flex-end}.community-deck-card__badge{font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:999px;border:1px solid hsl(var(--border));white-space:nowrap}.community-deck-card__badge--category{background-color:hsl(var(--primary) / .08);color:hsl(var(--primary));border-color:hsl(var(--primary) / .2)}.community-deck-card__description{color:hsl(var(--muted-foreground));font-size:.95rem;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.community-deck-card__stats{display:flex;gap:1.5rem;flex-wrap:wrap}.community-deck-card__stat{display:flex;flex-direction:column;gap:.1rem}.community-deck-card__stat-value{font-size:1.2rem;font-weight:700;color:hsl(var(--foreground));line-height:1}.community-deck-card__stat-label{font-size:.8rem;letter-spacing:.02em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.community-deck-card__actions{display:flex;flex-direction:column;gap:.75rem;margin-top:auto;min-width:0}.community-deck-card__vote-group{display:flex;align-items:center;gap:.4rem;flex-wrap:nowrap}.community-deck-card__vote-button{width:2.6rem;height:2.6rem;border-radius:.8rem;border:1px solid hsl(var(--border));background-color:hsl(var(--accent));color:hsl(var(--muted-foreground));display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .15s ease,opacity .15s ease}.community-deck-card__vote-button:hover{transform:translateY(-1px)}.community-deck-card__vote-button.is-disabled{opacity:.55;cursor:not-allowed;transform:none}.community-deck-card__vote-button--up.is-active{background-color:hsl(var(--success) / .14);color:hsl(var(--success));border-color:hsl(var(--success) / .45)}.community-deck-card__vote-button--down.is-active{background-color:hsl(var(--destructive) / .14);color:hsl(var(--destructive));border-color:hsl(var(--destructive) / .45)}.community-deck-card__vote-count{font-weight:700;min-width:2.5rem;text-align:center;color:hsl(var(--foreground))}.community-deck-card__vote-count--loading{color:hsl(var(--muted-foreground));animation:community-card-pulse 1.2s ease-in-out infinite}.community-deck-card__spinner{width:1rem;height:1rem;border-radius:999px;border:2px solid currentColor;border-top-color:transparent;animation:community-card-spin .9s linear infinite}.community-deck-card__copy-button{width:100%;min-height:2.75rem;border-radius:.85rem;border:2px solid hsl(var(--primary) / .4);background-color:hsl(var(--primary) / .08);color:hsl(var(--primary));font-weight:700;font-size:.95rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:0 1.25rem;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;max-width:100%;box-sizing:border-box}.community-deck-card__copy-button:hover:not(:disabled){background-color:hsl(var(--primary) / .15);border-color:hsl(var(--primary));transform:translateY(-1px)}.community-deck-card__copy-button:disabled{background-color:hsl(var(--success) / .12);border-color:hsl(var(--success) / .35);color:hsl(var(--success));cursor:not-allowed}@media (min-width: 640px){.community-deck-card__actions{flex-direction:row;align-items:center;justify-content:space-between}.community-deck-card__copy-button{width:auto;min-width:0;flex:1 1 auto;max-width:100%}}@media (max-width: 640px){.community-deck-card__header{flex-direction:column;align-items:flex-start}.community-deck-card__badge-stack{flex-direction:row;flex-wrap:wrap;justify-content:flex-start}.community-deck-card__title{white-space:normal}.community-deck-card__description{-webkit-line-clamp:4}}@keyframes community-card-spin{to{transform:rotate(360deg)}}@keyframes community-card-pulse{0%,to{opacity:.4}50%{opacity:1}}.dark .sidebar-content::-webkit-scrollbar-thumb{background-color:hsl(var(--muted-foreground) / .35)}.dark .sidebar-content::-webkit-scrollbar-thumb:hover{background-color:hsl(var(--muted-foreground) / .5)}@media (max-width: 480px){html{font-size:15px}}@media (min-width: 481px) and (max-width: 640px){html{font-size:15.5px}}@media (min-width: 1536px){html{font-size:17px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (hover: none) and (pointer: coarse){button:not([role=switch]),a,[role=button]:not([role=switch]){min-height:44px;min-width:44px}}.login-screen [data-stack-component]{display:flex;flex-direction:column;align-items:center;width:100%}.login-screen [data-stack-component]>*{width:100%;max-width:100%}.login-screen [data-stack-component] form{display:flex;flex-direction:column;align-items:center;width:100%;gap:1rem}.login-screen [data-stack-component] form>*{width:100%;max-width:100%}.login-screen [data-stack-component] input,.login-screen [data-stack-component] button{width:100%;max-width:100%}.login-screen [data-stack-component] button[type=submit]{width:100%;max-width:100%;display:flex;justify-content:center;align-items:center}
