@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--font-sans: "Outfit", sans-serif;--font-mono: "JetBrains Mono", monospace;--transition-fast: .15s ease;--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--story-primary: 9 85% 60%;--story-secondary: 24 85% 50%;--story-glow: 9 85% 60% / .4;--world-primary: 142 70% 45%;--world-secondary: 198 80% 45%;--world-glow: 142 70% 45% / .4;--lore-primary: 272 75% 65%;--lore-secondary: 43 90% 55%;--lore-glow: 272 75% 65% / .4;--bridge-primary: 38 92% 50%;--bridge-secondary: 199 88% 55%;--bridge-glow: 38 92% 50% / .35;--mixed-primary: 260 85% 65%;--mixed-secondary: 325 85% 60%;--mixed-glow: 260 85% 65% / .4;--theme-primary: var(--mixed-primary);--theme-secondary: var(--mixed-secondary);--theme-glow: var(--mixed-glow);--theme-bg-gradient: radial-gradient(circle at 50% 50%, #121016 0%, #08070b 100%);--bg-deep: #08070b;--bg-panel: rgba(25, 22, 33, .5);--bg-panel-solid: #15131c;--bg-card: rgba(35, 30, 48, .45);--border-color: rgba(255, 255, 255, .08);--border-color-hover: rgba(255, 255, 255, .15);--text-primary: #f3f1f6;--text-secondary: #a7a2b5;--text-muted: #6a647d;--shadow-sm: 0 2px 8px -1px rgba(0, 0, 0, .2);--shadow-md: 0 4px 20px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 40px -4px rgba(0, 0, 0, .5)}.theme-story-engine{--theme-primary: var(--story-primary);--theme-secondary: var(--story-secondary);--theme-glow: var(--story-glow);--theme-bg-gradient: radial-gradient(circle at 50% 50%, #180d0d 0%, #0b0505 100%)}.theme-deck-of-worlds,.theme-worldbuilding{--theme-primary: var(--world-primary);--theme-secondary: var(--world-secondary);--theme-glow: var(--world-glow);--theme-bg-gradient: radial-gradient(circle at 50% 50%, #0d1510 0%, #040806 100%)}.theme-lore-master,.theme-lore-making{--theme-primary: var(--lore-primary);--theme-secondary: var(--lore-secondary);--theme-glow: var(--lore-glow);--theme-bg-gradient: radial-gradient(circle at 50% 50%, #120c1a 0%, #07040a 100%)}.theme-bridge{--theme-primary: var(--bridge-primary);--theme-secondary: var(--bridge-secondary);--theme-glow: var(--bridge-glow);--theme-bg-gradient: radial-gradient(circle at 50% 50%, #15100a 0%, #080604 100%)}.theme-mixed{--theme-primary: var(--mixed-primary);--theme-secondary: var(--mixed-secondary);--theme-glow: var(--mixed-glow);--theme-bg-gradient: radial-gradient(circle at 50% 50%, #121016 0%, #08070b 100%)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-deep);overflow-x:hidden;line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}.glass-panel{background:var(--bg-panel);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.glass-panel:hover{border-color:var(--border-color-hover)}button,input,select,textarea{font-family:inherit;color:inherit}.btn-primary{background:linear-gradient(135deg,hsl(var(--theme-primary)),hsl(var(--theme-secondary)));color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #0003,0 0 15px hsl(var(--theme-primary) / .2);transition:transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0000004d,0 0 25px hsl(var(--theme-primary) / .4)}.btn-primary:active{transform:translateY(1px)}.btn-secondary{background:#ffffff0d;color:var(--text-primary);border:1px solid var(--border-color);padding:10px 20px;border-radius:8px;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.btn-secondary:hover{background:#ffffff1a;border-color:var(--border-color-hover);transform:translateY(-1px)}.card-outer{position:relative;border-radius:12px;padding:1px;transition:transform var(--transition-normal),box-shadow var(--transition-normal);background:var(--border-color)}.card-outer.story-engine-card{--card-theme-color: var(--story-primary)}.card-outer.deck-of-worlds-card,.card-outer.worldbuilding-card{--card-theme-color: var(--world-primary)}.card-outer.lore-master-card,.card-outer.lore-making-card{--card-theme-color: var(--lore-primary)}.card-outer.bridge-card{--card-theme-color: var(--bridge-primary)}.card-outer:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 10px 25px -5px #0006,0 0 20px hsl(var(--card-theme-color) / .25);background:linear-gradient(135deg,hsl(var(--card-theme-color)),#ffffff1a)}.card-inner{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:11px;padding:16px;height:100%;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.card-sides-layout{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:grid;grid-template-rows:28px 1fr 28px;grid-template-columns:28px 1fr 28px}.card-side-label{position:absolute;font-size:.65rem;font-weight:800;text-transform:uppercase;color:var(--text-muted);letter-spacing:.1em;background:#0a080fd9;padding:2px 6px;border-radius:4px;border:1px solid var(--border-color);z-index:10}.card-side-label.top{top:6px;left:50%;transform:translate(-50%)}.card-side-label.right{right:6px;top:50%;transform:translateY(-50%) rotate(90deg);transform-origin:center}.card-side-label.bottom{bottom:6px;left:50%;transform:translate(-50%)}.card-side-label.left{left:6px;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:center}.card-body{margin:16px 0}.card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag-badge{font-size:.7rem;background:#ffffff0d;color:var(--text-secondary);padding:2px 8px;border-radius:9999px;border:1px solid var(--border-color)}.connections-svg-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}.connection-line{stroke-dasharray:8 4;animation:connection-flow 25s linear infinite;filter:drop-shadow(0 0 4px var(--line-glow))}@keyframes connection-flow{to{stroke-dashoffset:-100}}@keyframes pulse-glow{0%,to{box-shadow:0 0 10px hsl(var(--theme-primary) / .15)}50%{box-shadow:0 0 25px hsl(var(--theme-primary) / .35)}}.pulse-border{animation:pulse-glow 3s infinite ease-in-out}h1,h2,h3,h4{font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,hsl(var(--theme-primary)),hsl(var(--theme-secondary)));-webkit-background-clip:text;-webkit-text-fill-color:transparent}@keyframes card-settle{0%{transform:scale(1.15) rotate(var(--card-rotation-deg, 0deg));box-shadow:0 15px 35px #0009}to{transform:scale(1) rotate(var(--card-rotation-deg, 0deg));box-shadow:0 4px 12px #0000004d}}.card-settle{animation:card-settle .22s cubic-bezier(.25,1,.5,1) forwards}@keyframes floatUpFade{0%{transform:translate(-50%,-50%) translateY(0);opacity:0}15%{transform:translate(-50%,-50%) translateY(-15px);opacity:1}85%{transform:translate(-50%,-50%) translateY(-55px);opacity:1}to{transform:translate(-50%,-50%) translateY(-70px);opacity:0}}@keyframes drawCardAnim{0%{transform:translateY(80px) scale(.7) rotate(-5deg);opacity:0}to{transform:translateY(0) scale(1) rotate(0);opacity:1}}.card-outer:hover .quickview-hover-btn{opacity:1!important}.lf-input{width:100%;background:#00000040;border:1px solid var(--border-color);border-radius:8px;padding:9px 12px;color:var(--text-primary);font-size:.9rem;font-family:var(--font-sans);outline:none;transition:border-color var(--transition-fast)}.lf-input:focus{border-color:hsl(var(--theme-primary))}.lf-input::placeholder{color:var(--text-muted)}@keyframes lf-spin{to{transform:rotate(360deg)}}.lf-spin{animation:lf-spin .8s linear infinite}.lf-tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;align-content:start}@media (max-width: 760px){.lf-shelf-sidebar{display:none!important}.lf-drawer-btn{display:inline-flex!important}.lf-tile-grid{grid-template-columns:1fr}.lf-hide-mobile{display:none!important}.lf-article-layout{grid-template-columns:1fr!important}}.lf-prose{color:var(--text-primary);font-size:1rem;line-height:1.7}.lf-prose :focus{outline:none}.lf-prose .ProseMirror{outline:none;min-height:320px}.lf-prose h1{font-size:1.8rem;font-weight:800;margin:1.2em 0 .4em;color:#fff}.lf-prose h2{font-size:1.4rem;font-weight:700;margin:1.1em 0 .4em;color:#fff}.lf-prose h3{font-size:1.15rem;font-weight:700;margin:1em 0 .3em;color:#fff}.lf-prose p{margin:.6em 0}.lf-prose ul,.lf-prose ol{padding-left:1.4em;margin:.6em 0}.lf-prose blockquote{border-left:3px solid hsl(var(--theme-primary));background:hsl(var(--theme-primary) / .06);margin:.8em 0;padding:.4em 1em;border-radius:0 8px 8px 0;color:var(--text-secondary)}.lf-prose hr{border:none;border-top:1px solid var(--border-color);margin:1.4em 0}.lf-prose code{background:#00000059;padding:.1em .4em;border-radius:4px;font-family:var(--font-mono);font-size:.88em}.lf-prose pre{background:#0006;border:1px solid var(--border-color);border-radius:10px;padding:14px 16px;overflow-x:auto;margin:.8em 0}.lf-prose pre code{background:none;padding:0}.lf-prose img{max-width:100%;border-radius:10px;margin:.6em 0}.lf-prose table{border-collapse:collapse;width:100%;margin:.8em 0}.lf-prose th,.lf-prose td{border:1px solid var(--border-color);padding:6px 10px}.lf-prose th{background:#ffffff0d}.lf-prose p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-muted);pointer-events:none;height:0}.lf-mention{color:hsl(var(--theme-primary));background:hsl(var(--theme-primary) / .12);border-radius:5px;padding:.05em .35em;font-weight:600;cursor:pointer;text-decoration:none}.lf-mention:before{content:"@";opacity:.6}.lf-prose-read .ProseMirror{min-height:auto}.lf-prose a{color:hsl(var(--theme-secondary));text-decoration:underline}
