@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@400;700&family=Inter:wght@300;400;500;600&family=Michroma&family=Orbitron:wght@400;500;700;900&family=Playfair+Display:wght@400;700&family=Rajdhani:wght@400;500;600;700&family=Share+Tech+Mono&family=Space+Grotesk:wght@400;500;700&family=Special+Elite&family=Syncopate:wght@400;700&display=swap";
:root{--bg-base:#020617;--bg-surface:#0f172a;--bg-panel:#0f172a99;--text-primary:#f4f4f5;--text-secondary:#a1a1aa;--accent-primary-hsl:185, 100%, 50%;--accent-secondary-hsl:330, 100%, 50%;--accent-primary:hsl(var(--accent-primary-hsl));--accent-secondary:hsl(var(--accent-secondary-hsl));--accent-glow:hsla(var(--accent-primary-hsl), .3);--accent-glow-strong:hsla(var(--accent-primary-hsl), .6);--accent-danger-hsl:320, 100%, 50%;--accent-danger:hsl(var(--accent-danger-hsl));--border-color:#00f2fe40;--border-glow:hsla(var(--accent-primary-hsl), .5);--radius:6px;--font-heading:"Rajdhani", "Syncopate", sans-serif;--font-body:"Inter", sans-serif;--roll-sidebar-offset:0px}[data-theme=cyberpunk-blue]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#020617;--bg-surface:#0f172a;--bg-panel:#0f172a99;--accent-primary-hsl:185, 100%, 50%;--accent-danger-hsl:320, 100%, 50%;--border-color:#00f2fe40;--font-heading:"Rajdhani", "Syncopate", sans-serif;background-image:linear-gradient(#000000b3,#000000b3),url(/backgrounds/cyberpunk_blue_bg.png)!important;background-size:cover!important}[data-theme=cyberpunk-red]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#08080c;--bg-surface:#12131a;--bg-panel:#1a1216bf;--accent-primary-hsl:355, 100%, 50%;--accent-danger-hsl:45, 100%, 50%;--border-color:#ff003c4d;--font-heading:"Orbitron", "Michroma", sans-serif;background-image:linear-gradient(#000000b3,#000000b3),url(/backgrounds/cyberpunk_red_bg.png)!important;background-size:cover!important}[data-theme=cyberpunk-green]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#06110a;--bg-surface:#0a1f11;--bg-panel:#0a1f11bf;--accent-primary-hsl:135, 100%, 50%;--accent-danger-hsl:15, 100%, 50%;--border-color:#00ff644d;--font-heading:"Rajdhani", "Syncopate", sans-serif;background-image:linear-gradient(#000000b3,#000000b3),url(/backgrounds/cyberpunk_blue_bg.png)!important;background-size:cover!important}[data-theme=terminal]{--bg-base:#0b0f19;--bg-surface:#161f33;--bg-panel:#161f33b3;--accent-primary-hsl:145, 80%, 50%;--accent-danger-hsl:15, 100%, 50%;--border-color:#64748b66;--font-heading:"Share Tech Mono", "Space Grotesk", monospace;background-image:linear-gradient(#000000b3,#000000b3),url(/backgrounds/scifi_terminal_bg.png)!important;background-size:cover!important}[data-theme=fantasy]{--bg-base:#1a1412;--bg-surface:#2c1e1a;--bg-panel:#30201aa6;--accent-primary-hsl:42, 75%, 55%;--accent-danger-hsl:0, 65%, 40%;--border-color:#d4af3740;--font-heading:"Cinzel", "Playfair Display", serif;background-image:linear-gradient(#000000b3,#000000b3),url(/backgrounds/fantasy_bg.png)!important;background-size:cover!important}[data-theme=noir]{--bg-base:#121212;--bg-surface:#1e1e1e;--bg-panel:#1e1e1ecc;--accent-primary-hsl:0, 0%, 90%;--accent-danger-hsl:0, 70%, 35%;--border-color:#ffffff26;--font-heading:"Special Elite", "Courier Prime", monospace;background-image:linear-gradient(#000000b3,#000000b3),url(/backgrounds/noir_bg.png)!important;background-size:cover!important}[data-theme=hightech]{--bg-base:#f8fafc;--bg-surface:#e2e8f0;--bg-panel:#e2e8f080;--text-primary:#0f172a;--text-secondary:#475569;--accent-primary-hsl:255, 100%, 65%;--accent-danger-hsl:15, 100%, 60%;--border-color:#786eff4d;--font-heading:"Space Grotesk", "Inter", sans-serif;background-image:linear-gradient(#fff9,#fff9),url(/backgrounds/hightech_bg.png)!important;background-size:cover!important}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-image:linear-gradient(#000000b3,#000000b3),url(/backgrounds/cyberpunk_blue_bg.png);background-position:50%;background-size:cover;background-attachment:fixed;min-height:100vh;font-size:16px;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:.05em;text-transform:uppercase;font-weight:700}a{color:var(--accent-primary);text-decoration:none;transition:all .2s}a:hover{text-shadow:0 0 8px var(--accent-glow);color:hsl(var(--accent-primary-hsl));filter:brightness(1.2)}.glass-panel{isolation:isolate;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius);padding:1.5rem;transition:border-color .3s,box-shadow .3s;position:relative;box-shadow:0 8px 32px #0009}.glass-panel:before{content:"";border-radius:inherit;-webkit-backdrop-filter:blur(12px);z-index:-1;pointer-events:none;position:absolute;inset:0}.glass-panel:hover{border-color:var(--border-glow);box-shadow:0 0 20px var(--accent-glow)}input:not([type=checkbox]):not([type=radio]),textarea,select{border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:var(--radius);font-family:var(--font-body);border-left:3px solid var(--border-color);background:#0009;padding:.75rem 1rem;transition:all .2s;box-shadow:inset 0 2px 4px #00000080}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent-primary);cursor:pointer}input:not([type=checkbox]):not([type=radio]):focus,textarea:focus,select:focus{border-color:var(--border-color);border-left:3px solid var(--accent-primary);box-shadow:inset 0 2px 4px #00000080, 0 0 12px var(--accent-glow);background:#000c;outline:none}input:disabled,textarea:disabled,select:disabled,fieldset:disabled input,fieldset:disabled textarea,fieldset:disabled select{cursor:not-allowed;opacity:.75;box-shadow:none;pointer-events:none;border-color:#ffffff14 #ffffff14 #ffffff14 #ffffff26}input[type=date]::-webkit-calendar-picker-indicator{filter:invert()opacity(.7);cursor:pointer}input[type=date]::-webkit-calendar-picker-indicator:hover{filter:invert()opacity()}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.btn{color:var(--accent-primary);border:1px solid var(--accent-primary);border-radius:var(--radius);font-family:var(--font-heading);letter-spacing:.05em;cursor:pointer;text-transform:uppercase;white-space:nowrap;background:0 0;justify-content:center;align-items:center;gap:.5rem;font-weight:500;transition:transform .1s,box-shadow .2s,background .2s,filter .2s;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn-sm{padding:.4rem .8rem;font-size:.75rem}.btn-md{padding:.75rem 1.5rem;font-size:.9rem}.btn-lg{padding:1rem 2rem;font-size:1.1rem;font-weight:700}.btn:not(.btn-sm):not(.btn-lg){padding:.75rem 1.5rem;font-size:.9rem}.breadcrumb-link{color:var(--text-secondary);opacity:.85;align-items:center;gap:.25rem;text-decoration:none;transition:color .15s;display:inline-flex}.breadcrumb-link:hover{color:var(--accent-primary);opacity:1}.btn:hover{background:hsla(var(--accent-primary-hsl), .1);box-shadow:0 0 15px var(--accent-glow), inset 0 0 10px var(--accent-glow);text-shadow:0 0 5px var(--accent-primary)}.btn-primary{background:var(--accent-primary);color:#000;border:1px solid var(--accent-primary)}.btn-primary:hover{background:hsl(var(--accent-primary-hsl));filter:brightness(1.2);box-shadow:0 0 20px var(--accent-glow-strong);color:#000;text-shadow:none}.btn-ghost{color:var(--text-secondary);border-color:#0000}.btn-ghost:hover{color:var(--text-primary);box-shadow:none;text-shadow:none;border-color:var(--border-color);background:#ffffff0d}.btn-danger{color:var(--accent-danger);border-color:var(--accent-danger)}.btn-danger:hover{background:hsla(var(--accent-danger-hsl), .1);box-shadow:0 0 15px hsla(var(--accent-danger-hsl), .3), inset 0 0 10px hsla(var(--accent-danger-hsl), .2);text-shadow:0 0 5px var(--accent-danger)}.layout-container{flex-direction:column;min-height:100vh;display:flex}.top-nav{border-radius:var(--radius);z-index:10;justify-content:space-between;align-items:center;margin:1rem;padding:1rem 2rem;display:flex;position:relative}.nav-brand{font-family:var(--font-heading);color:var(--accent-primary);text-transform:uppercase;letter-spacing:.1em;text-shadow:0 0 12px var(--accent-glow-strong);font-size:1.5rem;font-weight:900}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:500}.hamburger-btn{color:var(--accent-primary);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.hamburger-btn:hover{background:var(--accent-glow);box-shadow:0 0 10px var(--accent-glow)}.dropdown-menu{z-index:1000;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius);flex-direction:column;width:250px;margin-top:.5rem;display:flex;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 30px #000c}.dropdown-item{border-bottom:1px solid var(--border-color);box-sizing:border-box;border-left:3px solid #0000;align-items:center;padding:.75rem 1rem;transition:all .2s;display:flex}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover,.dropdown-item:focus-within{border-left-color:var(--accent-primary);background:#00f0ff14}.main-content{flex:1;width:100%;padding:2rem}.grid{gap:1.5rem;display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-5{grid-template-columns:repeat(5,1fr)}.grid-cols-6{grid-template-columns:repeat(6,1fr)}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.tiptap p.is-editor-empty:first-child:before{color:var(--text-secondary);content:attr(data-placeholder);float:left;pointer-events:none;height:0}.tiptap p,.wysiwyg-content p{margin-bottom:.75rem}.tiptap table p,.wysiwyg-content table p{margin-bottom:0}.tiptap ul,.tiptap ol,.wysiwyg-content ul,.wysiwyg-content ol{margin-bottom:1rem;padding-left:1.5rem}.tiptap li,.wysiwyg-content li{margin-bottom:.25rem}.tiptap li p,.wysiwyg-content li p{margin:0}.tiptap table,.wysiwyg-content table{border-collapse:collapse;table-layout:fixed;width:100%;margin:1.5rem 0;overflow:hidden}.tiptap table th,.tiptap table td,.wysiwyg-content table th,.wysiwyg-content table td{border:1px solid var(--border-color);text-align:left;vertical-align:top;box-sizing:border-box;padding:.5rem;position:relative}.tiptap table th,.wysiwyg-content table th{font-family:var(--font-heading);background-color:#ffffff0d;font-weight:700}.tiptap table .column-resize-handle{background-color:var(--accent-primary);pointer-events:none;width:4px;position:absolute;top:-2px;bottom:-2px;right:-2px}.sidebar-backdrop{z-index:200;-webkit-backdrop-filter:blur(2px);background:#000000b3;display:none;position:fixed;inset:0}.sidebar-backdrop.open{display:block}.mobile-sidebar-toggle{z-index:150;background:var(--accent-primary);color:#000;cursor:pointer;width:52px;height:52px;box-shadow:0 4px 20px var(--accent-glow-strong);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;transition:all .2s;display:none;position:fixed;bottom:1.5rem;left:1.5rem}.mobile-sidebar-toggle:hover{box-shadow:0 6px 28px var(--accent-glow-strong);transform:scale(1.1)}.wysiwyg-content a:not([data-mention]),.ProseMirror a:not([data-mention]),.prose a:not([data-mention]){color:var(--accent-primary);text-underline-offset:3px;text-decoration:underline;transition:opacity .2s,text-shadow .2s}.wysiwyg-content a:not([data-mention]):hover,.ProseMirror a:not([data-mention]):hover,.prose a:not([data-mention]):hover{opacity:.85;text-shadow:0 0 8px var(--accent-glow)}.email-wysiwyg-content p{margin:0 0 .85rem}.email-wysiwyg-content p:last-child{margin-bottom:0}.email-wysiwyg-content strong{color:#f8fafc;font-weight:700}.email-wysiwyg-content em{color:#e2e8f0}.email-wysiwyg-content h2{color:#38bdf8;margin:1.2rem 0 .5rem;font-size:1.25rem;font-weight:700}.email-wysiwyg-content h3{color:#7dd3fc;margin:1rem 0 .4rem;font-size:1.1rem;font-weight:600}.email-wysiwyg-content ul,.email-wysiwyg-content ol{margin:.5rem 0 .85rem;padding-left:1.5rem}.email-wysiwyg-content blockquote{border-left:4px solid var(--accent-primary);color:#94a3b8;background:#0284c714;border-radius:4px;margin:.75rem 0;padding:.5rem 1rem}.email-wysiwyg-content code{color:#38bdf8;background:#ffffff14;border-radius:4px;padding:.15rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em}.tippy-box[data-theme~=nexus-mention]{box-shadow:none!important;background-color:#0000!important;border:none!important;padding:0!important}.tippy-box[data-theme~=nexus-mention]>.tippy-content{padding:0!important;overflow:visible!important}.tippy-box[data-theme~=nexus-mention]>.tippy-arrow{display:none!important}.campaign-sidebar{z-index:10;isolation:isolate}.sidebar-popout-menu{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glow,#38bdf859);border-radius:var(--radius);z-index:9000;background:#0e0e16fa;flex-direction:column;gap:.25rem;min-width:210px;padding:.5rem;animation:.18s cubic-bezier(.16,1,.3,1) lateralPopIn;display:flex;position:absolute;top:0;left:calc(100% + .5rem);box-shadow:0 10px 32px #000c,0 0 15px #38bdf81a}@keyframes lateralPopIn{0%{opacity:0;transform:translate(-6px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}.sticky-form-bar{z-index:35;-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius);background:#0a0f1df0;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;padding:.75rem 1.25rem;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 20px #0009}.campaign-layout{padding-right:var(--roll-sidebar-offset,0px);transition:padding-right .25s cubic-bezier(.4,0,.2,1)}body.vtt-active-mode{background-color:#06060c!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}body.vtt-active-mode .layout-container{width:100vw!important;height:100vh!important;min-height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}body.vtt-active-mode .top-nav,body.vtt-active-mode footer,body.vtt-active-mode .campaign-sidebar,body.vtt-active-mode .roll-sidebar,body.vtt-active-mode .quick-create-fab,body.vtt-active-mode .mobile-sidebar-toggle{display:none!important}body.vtt-active-mode .main-content{width:100vw!important;max-width:none!important;height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}body.vtt-active-mode .campaign-layout{gap:0!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}body.vtt-active-mode .campaign-main{width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}@media screen and (max-width:768px){.campaign-layout{padding-right:0!important}body{font-size:16px}.layout-container{overflow-x:hidden}.top-nav{margin:.5rem;padding:.75rem 1rem}.nav-brand{font-size:1.1rem}.main-content{padding:1rem}.campaign-layout{display:block!important}.campaign-sidebar{z-index:250;height:100vh;transition:left .3s;top:0;left:-300px;overflow-y:auto;border-radius:0 var(--radius) var(--radius) 0!important;width:280px!important;min-width:280px!important;position:fixed!important}.campaign-sidebar.mobile-open{left:0}.sidebar-popout-menu{margin-top:.25rem;width:100%!important;min-width:unset!important;box-shadow:none!important;border-left:2px solid var(--accent-primary)!important;animation:none!important;position:static!important;top:auto!important;left:auto!important}.campaign-main{width:100%!important;padding:0!important}.mobile-sidebar-toggle{display:flex}.grid-cols-2,.grid-cols-3,.grid-cols-4,.grid-cols-5,.grid-cols-6{grid-template-columns:1fr!important}.glass-panel{padding:1rem}input,textarea,select{padding:.65rem .85rem;font-size:16px!important}.btn{min-height:44px;padding:.6rem 1rem}.btn-sm{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.hamburger-btn{min-width:44px;min-height:44px;padding:.5rem}.campaign-sidebar a,.campaign-sidebar button:not(.btn){align-items:center;min-height:44px;display:flex}button[title],button[aria-label]{min-width:44px;min-height:44px}input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px}.quick-create-fab{bottom:2.4rem!important;right:6.2rem!important}.wysiwyg-content table,.tiptap table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.wysiwyg-toolbar{-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px;flex-wrap:nowrap!important;overflow-x:auto!important}.wysiwyg-toolbar::-webkit-scrollbar{display:none}.wysiwyg-toolbar button{flex-shrink:0;min-width:36px;min-height:36px}.map-container{touch-action:pinch-zoom}.session-layout{flex-direction:column!important}footer{padding:1rem!important;font-size:.7rem!important}[role=dialog],.modal-panel{width:95vw!important;max-width:none!important}.desktop-only{display:none!important}.quick-actions-grid{grid-template-columns:1fr!important}.quick-actions-grid a[style*=gridColumn]{grid-column:1!important}*{min-width:0}h1,h2,h3,h4,h5,h6{word-break:break-word;overflow-wrap:break-word}}@media screen and (max-width:1024px) and (min-width:769px){.grid-cols-3,.grid-cols-4,.grid-cols-5,.grid-cols-6{grid-template-columns:repeat(2,1fr)!important}.main-content{padding:1.5rem}}@media print{body{color:#000!important;background:#fff!important;font-size:12px!important;line-height:1.2!important}.top-nav,.campaign-sidebar,.mobile-sidebar-toggle,.no-print{display:none!important}.main-content{margin:0!important;padding:0!important}.glass-panel{page-break-inside:avoid;box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:1px solid #ccc!important;gap:.5rem!important;padding:.5rem!important}input,textarea,select{color:#000!important;box-shadow:none!important;background:0 0!important;border:none!important;border-bottom:1px solid #999!important;border-radius:0!important;padding:.1rem!important;font-size:.8rem!important}h1,h2,h3,h4,h5,h6{color:#000!important;margin-bottom:.2rem!important}.text-gray-400,.text-gray-500,.text-secondary{color:#555!important}@page{margin:.5cm}}@keyframes sheet-toast-in{0%{opacity:0}to{opacity:1}}.sheet-toast{animation:.2s ease-out sheet-toast-in}.sheet-tab-bar{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}@media (max-width:768px){.sheet-tab-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-right:2rem;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),#0000)}.sheet-tab-bar::-webkit-scrollbar{display:none}.sheet-tab-bar>*{white-space:nowrap;flex-shrink:0}}
