.claude-direct-interface{display:flex;flex-direction:column;position:fixed;max-width:800px;width:95vw;max-height:550px;height:85vh;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#1a0f1ff2,#2d0a2ef2);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000004d;z-index:1000}.claude-direct-interface--epic{background:linear-gradient(135deg,#1a0f1f66,#2d0a2e66);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000004d,0 0 40px #cd43ff4d,0 0 80px #cd43ff26;border:1px solid rgba(205,67,255,.4);animation:epicPulse 3s ease-in-out infinite}@keyframes epicPulse{0%,to{box-shadow:0 8px 32px #0000004d,0 0 40px #cd43ff4d,0 0 80px #cd43ff26}50%{box-shadow:0 8px 32px #0000004d,0 0 50px #cd43ff66,0 0 100px #cd43ff33}}.claude-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#0000000d;border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.claude-title{display:flex;align-items:center;gap:.75rem}.claude-icon{font-size:1.5rem;animation:pulse 2s infinite}.claude-title h2{margin:0;color:#cd43ff;font-size:1.25rem;font-weight:400}.claude-status{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;background:#ffffff1a;color:#ffffffb3;transition:all .3s ease}.claude-status[data-status=ready]{color:#4ade80;background:#4ade801a}.claude-status[data-status=processing]{color:#60a5fa;background:#60a5fa1a;animation:pulse 1s infinite}.claude-status[data-status=error]{color:#f87171;background:#f871711a}.familiar-expert-indicator{padding:.2rem .6rem;border-radius:12px;font-size:.75rem;color:#cd43ff;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);cursor:default;transition:all .2s ease;white-space:nowrap}.familiar-expert-indicator:hover{background:#cd43ff26;border-color:#cd43ff80}.claude-header-buttons{display:flex;align-items:center;gap:.5rem}.claude-new-conversation{background:transparent;border:none;color:#cd43ff;cursor:pointer;padding:4px;opacity:.7;transition:all .2s ease}.claude-new-conversation:hover{opacity:1;transform:scale(1.2)}.claude-minimize,.claude-close{background:transparent;border:none;color:#ffffff80;font-size:1.5rem;cursor:pointer;padding:.25rem;transition:all .2s ease}.claude-minimize:hover,.claude-close:hover{color:#cd43ff;transform:scale(1.1)}.claude-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.claude-message{animation:slideIn .3s ease-out}.claude-message-user{align-self:flex-end;max-width:70%}.claude-message-familiar{align-self:flex-start;max-width:80%}.claude-message-system{align-self:center;max-width:90%;opacity:.8}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:0 .5rem}.message-author{font-size:.875rem;font-weight:400;color:#cd43ff}.claude-message-user .message-author{color:#cd43ff}.claude-message-system .message-author{color:#ffffff80}.message-time{font-size:.75rem;color:#fff6;margin-left:8px}.message-content{padding:.75rem 1rem;background:#1a0f1fd9;border-radius:12px;color:#ffffffe6;line-height:1.5;white-space:pre-wrap;word-wrap:break-word;word-break:normal}.claude-message-user .message-content{background:#cd43ff40;border:1px solid rgba(205,67,255,.4)}.claude-message-familiar .message-content{background:#1a0f1fe6;border:1px solid rgba(205,67,255,.3)}.claude-message-system .message-content{background:#1a0f1fb3;border:1px solid rgba(255,255,255,.2);text-align:center;font-style:normal}.message-image-indicator{display:flex;align-items:center;gap:6px;margin-top:4px;padding:3px 10px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:20px;width:fit-content;align-self:flex-end}.message-image-indicator .image-indicator-icon{display:inline-flex;align-items:center;color:#cd43ffb3;line-height:1}.message-image-indicator .image-indicator-text{font-size:11px;font-family:var(--font-primary);color:#cd43ffb3;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.claude-input{display:flex;flex-direction:column;padding:1.5rem;background:#0000000d;border-top:1px solid rgba(255,255,255,.1);gap:1rem}.claude-input-container{display:flex;gap:1rem;align-items:flex-end}.claude-input textarea{flex:1;background:#1a0f1fe6;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#ffffffe6;padding:.75rem;font-size:.95rem;font-family:inherit;resize:none;transition:all .2s ease}.claude-input textarea:focus{outline:none;border-color:#cd43ff;background:#1a0f1f}.claude-input textarea:disabled{opacity:.5;cursor:not-allowed}.claude-input-buttons{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.claude-attach-button{min-width:40px;min-height:40px;padding:8px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffcc;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.claude-attach-button svg{width:18px;height:18px;color:#cd43ffcc}.claude-attach-button:hover:not(:disabled){background:#cd43ff33;border-color:#cd43ff80;transform:translateY(-2px)}.claude-attach-button:disabled{opacity:.4;cursor:not-allowed}.claude-send-button{padding:.75rem 1.5rem;background:linear-gradient(135deg,#cd43ff,#e570ff);border:none;border-radius:8px;color:#fff;font-weight:400;cursor:pointer;transition:all .2s ease;min-height:40px}.claude-send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #cd43ff66}.claude-send-button:disabled{opacity:.4;cursor:not-allowed}.claude-messages::-webkit-scrollbar{width:8px}.claude-messages::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.claude-messages::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.claude-messages::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.claude-footer{display:flex;align-items:center;justify-content:center;padding:.75rem;background:#00000026;border-top:1px solid rgba(255,255,255,.1);font-size:.875rem;color:#ffffff80}.claude-footer-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit;transition:all .2s ease}.claude-footer-logo:hover{color:#cd43ff}.claude-footer-icon{width:20px;height:20px;object-fit:contain}.attached-images{display:flex;gap:.75rem;flex-wrap:wrap;padding-bottom:.5rem}.attached-image-preview{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;background:#ffffff0d;border:1px solid rgba(205,67,255,.3)}.attached-image-preview img{width:100%;height:100%;object-fit:cover}.remove-image{position:absolute;top:4px;right:4px;width:20px;height:20px;background:#000000b3;border:none;border-radius:50%;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.remove-image:hover{background:#f87171cc;transform:scale(1.1)}.image-name{position:absolute;bottom:0;left:0;right:0;background:#000c;color:#ffffffe6;font-size:.7rem;padding:4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.claude-direct-interface.dragging{border:2px dashed rgba(205,67,255,.5)}.claude-direct-interface.dragging:after{content:"📎 Drop images here";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000e6;color:#cd43ff;padding:2rem 3rem;border-radius:12px;font-size:1.25rem;font-weight:400;pointer-events:none;z-index:1001}.claude-direct-interface--compact{width:320px;height:420px;top:auto;left:auto;bottom:20px;right:20px;transform:none}.claude-direct-interface--compact .claude-header{padding:.5rem 1rem;min-height:40px}.claude-direct-interface--compact .claude-title h2{font-size:1rem}.claude-direct-interface--compact .claude-status{display:none}.claude-direct-interface--compact .claude-icon{font-size:1.25rem}.claude-direct-interface--compact .claude-messages{max-height:350px;padding:.5rem}.claude-direct-interface--compact .claude-message{padding:.5rem;margin-bottom:.5rem}.claude-direct-interface--compact .message-header{font-size:.75rem}.claude-direct-interface--compact .message-content{font-size:.875rem}.claude-direct-interface--compact .claude-input{padding:.5rem;gap:.5rem}.claude-direct-interface--compact .claude-input-container{padding:0}.claude-direct-interface--compact textarea{font-size:.9rem;min-height:86px;max-height:86px;height:86px}.claude-direct-interface--compact .claude-send-button,.claude-direct-interface--compact .claude-attach-button{padding:.5rem 1rem;font-size:.875rem}.claude-direct-interface--compact .claude-compact-toggle,.claude-direct-interface--compact .claude-minimize,.claude-direct-interface--compact .claude-close{font-size:1.25rem}.claude-direct-interface--compact .claude-footer{padding:.25rem;font-size:.7rem}.claude-direct-interface--compact .attached-images-preview{padding:.5rem;gap:.5rem}.claude-direct-interface--compact .attached-image-item{width:60px;height:60px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.claude-attached-images{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px;background:#0003;border-bottom:1px solid rgba(205,67,255,.2)}.claude-attached-image{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;background:#ffffff0d;border:1px solid rgba(205,67,255,.3)}.claude-attached-image img{width:100%;height:100%;object-fit:cover}.claude-remove-image{position:absolute;top:4px;right:4px;width:20px;height:20px;background:#000000b3;border:none;border-radius:50%;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.claude-remove-image:hover{background:#f87171cc;transform:scale(1.1)}.claude-image-name{position:absolute;bottom:0;left:0;right:0;background:#000c;color:#ffffffe6;font-size:.65rem;padding:2px 4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.claude-attach-button{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:6px 10px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.claude-attach-button svg{color:#cd43ffcc}.claude-attach-button:hover:not(:disabled){background:#cd43ff33;transform:scale(1.05)}.claude-attach-button:hover:not(:disabled) svg{color:#cd43ff}.claude-attach-button:disabled{opacity:.3;cursor:not-allowed}.claude-direct-interface--dragging{border:2px dashed rgba(205,67,255,.5)}.claude-drop-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1001;border-radius:12px;pointer-events:none}.claude-drop-overlay p{color:#cd43ff;font-size:1.25rem;font-weight:400}.message-content strong{font-weight:400;color:#e0c0ff}.message-content em{font-style:normal;color:#ffffffe6}.message-content .markdown-inline-code{background:#cd43ff26;padding:.15em .4em;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.9em;color:#e0c0ff}.message-content .markdown-code-block{background:#0006;padding:12px 16px;border-radius:8px;margin:8px 0;overflow-x:auto;border:1px solid rgba(205,67,255,.2);max-width:100%;box-sizing:border-box;word-wrap:normal;overflow-wrap:normal}.message-content .markdown-code-block code{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.85em;color:#e0e0e0;white-space:pre;word-wrap:normal;overflow-wrap:normal;display:block}.message-content .markdown-code-block::-webkit-scrollbar{height:8px}.message-content .markdown-code-block::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.message-content .markdown-code-block::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.message-content .markdown-code-block::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.message-content .markdown-h4,.message-content .markdown-h5,.message-content h4,.message-content h5{color:#cd43ff;margin:12px 0 6px;font-weight:400}.message-content .markdown-h4,.message-content h4{font-size:1.1em}.message-content .markdown-h5,.message-content h5{font-size:1em}.message-content .markdown-ul,.message-content ul{margin:8px 0;padding-left:20px;list-style-type:disc}.message-content .markdown-li,.message-content li{margin:4px 0;line-height:1.5}.message-content .markdown-p,.message-content p{margin:8px 0}.tooltip-trigger{display:contents}.tooltip-trigger,.tooltip-trigger *{list-style:none!important;list-style-type:none!important}.tooltip-trigger:before,.tooltip-trigger:after,.tooltip-trigger::marker{content:none!important;display:none!important}.custom-tooltip{background:#000000f2;color:#cd43ff;padding:8px 12px;border-radius:6px;font-size:14px;font-family:var(--font-primary);white-space:pre-wrap;width:max-content;max-width:400px;word-wrap:break-word;pointer-events:none;z-index:10000;border:1px solid rgba(205,67,255,.3);box-shadow:0 4px 12px #00000080,0 0 20px #cd43ff33;animation:tooltipFadeIn .1s ease;line-height:1.8;--arrow-left: 50%}.custom-tooltip:before{content:"";position:absolute;bottom:-6px;left:var(--arrow-left, 50%);transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid rgba(0,0,0,.95)}@keyframes tooltipFadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.custom-tooltip{max-width:calc(100vw - 32px)!important}}.fantamaster-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:none;border-radius:12px;font-family:var(--font-primary);font-weight:400;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:1px}.fantamaster-button.small{padding:10px 20px;font-size:12px;height:40px}.fantamaster-button.medium{padding:14px 32px;font-size:14px;height:56px}.fantamaster-button.large{padding:18px 48px;font-size:14px;height:64px}.fantamaster-button.primary{background:#000000e6;color:#cd43ff;border:none;position:relative}.fantamaster-button.primary:hover:not(:disabled){background:#cd43ff1a;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33;transform:translateY(-2px);elevation:4px}.fantamaster-button.secondary{background:#000000e6;color:#cd43ffcc;border:.25px solid rgba(205,67,255,.2);font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;position:relative;font-weight:400}.fantamaster-button.secondary:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:#cd43ff0d;opacity:0;transition:opacity .3s ease}.fantamaster-button.secondary:hover:not(:disabled){color:#cd43ff;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff26;transform:translateY(-1px)}.fantamaster-button.secondary:hover:not(:disabled):before{opacity:1}.fantamaster-button.google{background:#000000e6;color:#cd43ff;border:.25px solid rgba(205,67,255,.3);font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;position:relative}.fantamaster-button.google:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:linear-gradient(135deg,#4285f41a,#ea43351a,#fbbc051a,#34a8531a);opacity:0;transition:opacity .3s ease}.fantamaster-button.google:hover:not(:disabled){border-color:#cd43ff;box-shadow:0 0 20px #cd43ff33;transform:translateY(-1px)}.fantamaster-button.google:hover:not(:disabled):before{opacity:1}.fantamaster-button.facebook{background:#000000e6;color:#cd43ff;border:.25px solid rgba(205,67,255,.3);font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;position:relative}.fantamaster-button.facebook:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:linear-gradient(135deg,#1877f226,#1877f20d);opacity:0;transition:opacity .3s ease}.fantamaster-button.facebook:hover:not(:disabled){border-color:#cd43ff;box-shadow:0 0 20px #cd43ff33;transform:translateY(-1px)}.fantamaster-button.facebook:hover:not(:disabled):before{opacity:1}.fantamaster-button.apple{background:#000000e6;color:#cd43ff;border:.25px solid rgba(205,67,255,.3);font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;position:relative}.fantamaster-button.apple:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:linear-gradient(135deg,#ffffff14,#c8c8c80d);opacity:0;transition:opacity .3s ease}.fantamaster-button.apple:hover:not(:disabled){border-color:#cd43ff;box-shadow:0 0 20px #cd43ff33;transform:translateY(-1px)}.fantamaster-button.apple:hover:not(:disabled):before{opacity:1}.fantamaster-button.email{background:#000000e6;color:#cd43ff;border:.25px solid rgba(205,67,255,.3);font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;position:relative}.fantamaster-button.email:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:linear-gradient(135deg,#9c27d40d,#7b1fa20d);opacity:0;transition:opacity .3s ease}.fantamaster-button.email:hover:not(:disabled){border-color:#cd43ff;box-shadow:0 0 20px #cd43ff33;transform:translateY(-1px)}.fantamaster-button.email:hover:not(:disabled):before{opacity:1}.fantamaster-button.danger{background:#000000e6;color:#ff43cd;border:.25px solid rgba(255,67,205,.3);font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;position:relative;font-weight:400}.fantamaster-button.danger:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:#ff43cd0d;opacity:0;transition:opacity .3s ease}.fantamaster-button.danger:hover:not(:disabled){color:#f6d;border-color:#ff43cd99;background:#ff43cd1a;box-shadow:0 0 20px #ff43cd4d;transform:translateY(-1px)}.fantamaster-button.danger:hover:not(:disabled):before{opacity:1}.fantamaster-button .button-icon{display:flex;align-items:center;justify-content:center;font-size:1.2em;position:relative;z-index:2}.fantamaster-button.google .button-icon svg{filter:none}.fantamaster-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.fantamaster-button:active:not(:disabled){transform:translateY(0)}.fantamaster-button:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#cd43ff80;transform:translate(-50%,-50%);transition:width .6s,height .6s;pointer-events:none}.fantamaster-button:active:after{width:300px;height:300px}.fantamaster-button .button-text{position:relative;z-index:2}.fantamaster-button.primary:not(:disabled){animation:buttonGlow 3s ease-in-out infinite}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.fantamaster-button.secondary{background-size:200% 200%;animation:gradientFlow 5s ease infinite}.fantamaster-button.icon{background:#000000e6;color:#cd43ffcc;border:.25px solid rgba(205,67,255,.2);font-family:var(--font-primary);text-transform:none;letter-spacing:0;position:relative;font-weight:400}.fantamaster-button.icon:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:#cd43ff0d;opacity:0;transition:opacity .3s ease}.fantamaster-button.icon:hover:not(:disabled){color:#cd43ff;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff26;transform:translateY(-1px)}.fantamaster-button.icon:hover:not(:disabled):before{opacity:1}.preservation-button-container{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin:1rem 0}.preservation-button{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;font-size:1rem;font-weight:400;color:#fff;background:linear-gradient(135deg,#cd43ff,#8b5cf6);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #cd43ff4d;position:relative;overflow:hidden}.preservation-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.preservation-button:hover:before{left:100%}.preservation-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #cd43ff66;background:linear-gradient(135deg,#dd53ff,#9b6cf6)}.preservation-button:active{transform:translateY(0);box-shadow:0 2px 8px #cd43ff4d}.preservation-button__icon{font-size:1.25rem;display:flex;align-items:center;justify-content:center}.preservation-button__text{font-family:var(--font-primary)}.preservation-button--processing{background:linear-gradient(135deg,#8b5cf6,#6d28d9);cursor:wait}.preservation-button--processing .preservation-button__icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preservation-button--success{background:linear-gradient(135deg,#10b981,#059669);cursor:default}.preservation-button--error{background:linear-gradient(135deg,#ef4444,#dc2626);cursor:pointer}.preservation-button--disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.preservation-success-message{font-size:.875rem;color:#10b981;font-weight:500;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.preservation-button{padding:.75rem 1.5rem;font-size:.9375rem}}.global-familiar--full{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001}.global-familiar--full .claude-direct-interface{position:static;transform:none;width:90%;max-width:1100px;height:85vh;background:linear-gradient(135deg,#1a0f1ff2,#2d0a2ef2);border-radius:12px;box-shadow:0 8px 32px #00000080}.global-familiar--full .claude-direct-interface--epic{background:linear-gradient(135deg,#1a0f1f66,#2d0a2e66);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.global-familiar--compact{position:fixed;bottom:20px;right:20px;width:350px;height:650px;z-index:10001;border-radius:12px;box-shadow:0 8px 32px #00000080;display:flex}.global-familiar--compact .claude-direct-interface{position:static;transform:none;width:100%;height:100%;min-height:100%;background:linear-gradient(135deg,#1a0f1ff2,#2d0a2ef2);border-radius:12px;border:1px solid rgba(205,67,255,.3)}.global-familiar--compact .claude-direct-interface .claude-messages{flex:1;max-height:none}.global-familiar--compact .claude-direct-interface .claude-footer{padding:.15rem;font-size:.7rem}.global-familiar--compact .claude-direct-interface .claude-input textarea{padding:.6rem}.global-familiar--compact .claude-direct-interface--epic{background:linear-gradient(135deg,#1a0f1f66,#2d0a2e66);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.global-familiar--minimized{display:none}.familiar-minimized-badge{position:fixed;bottom:80px;right:20px;z-index:10001;display:flex;align-items:center;gap:8px;padding:12px 16px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:24px;box-shadow:0 4px 12px #0000004d;cursor:pointer;transition:all .3s ease;color:#fff;font-weight:500}.familiar-minimized-badge:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0006}.familiar-minimized-badge:active{transform:translateY(0)}.familiar-badge-icon{font-size:20px;line-height:1}.familiar-badge-name{font-size:14px;white-space:nowrap}@media (max-width: 768px){.familiar-minimized-badge{bottom:70px;right:16px;padding:10px 14px}.familiar-badge-icon{font-size:18px}.familiar-badge-name{font-size:13px}.global-familiar--compact{bottom:10px;right:10px;left:10px;width:auto;height:400px}.global-familiar--full .claude-direct-interface{width:95%;height:90vh}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.fantasia-title-component{text-align:center}.fantasia-title-wrapper{position:relative;display:inline-block;overflow:visible;margin-bottom:-8px}@keyframes fantasiaTitlePulse{0%,to{text-shadow:0 0 20px #FFA8FF,0 0 40px rgba(255,168,255,.5),0 0 60px rgba(255,168,255,.3)}50%{text-shadow:0 0 30px #FFA8FF,0 0 60px rgba(255,168,255,.7),0 0 80px rgba(255,168,255,.4)}}@keyframes fantasiaSloganPulse{0%,to{text-shadow:0 0 10px rgba(255,168,255,.6)}50%{text-shadow:0 0 15px rgba(255,168,255,.8)}}.fantasia-title-large .fantasia-title-text{font-family:Andalucia,serif;font-size:4.5rem;color:#ffa8ff;text-shadow:0 0 20px #FFA8FF,0 0 40px rgba(255,168,255,.5),0 0 60px rgba(255,168,255,.3);margin:0;font-weight:400;letter-spacing:0;line-height:1;position:relative;display:inline-block;animation:fantasiaTitlePulse 2s ease-in-out infinite}.fantasia-title-large .fantasia-copyright-symbol{position:absolute;top:.8em;right:-.9em;font-size:.15em;font-family:var(--font-primary);font-weight:400;color:#ffa8ffe6;text-shadow:0 0 8px rgba(255,168,255,.5)}.fantasia-title-large .fantasia-slogan-text{position:absolute;bottom:0;left:50%;transform:translate(-50%) translate(20px);color:#ffa8ff;font-size:.5rem;font-weight:300;text-shadow:0 0 10px rgba(255,168,255,.6);white-space:nowrap;letter-spacing:.5px;font-family:var(--font-primary);animation:fantasiaSloganPulse 2s ease-in-out infinite}.fantasia-title-medium .fantasia-title-text{font-family:Andalucia,serif;font-size:3rem;color:#ffa8ff;text-shadow:0 0 20px #FFA8FF,0 0 40px rgba(255,168,255,.5),0 0 60px rgba(255,168,255,.3);margin:0;font-weight:400;letter-spacing:0;line-height:1;position:relative;display:inline-block;animation:fantasiaTitlePulse 2s ease-in-out infinite}.fantasia-title-medium .fantasia-copyright-symbol{position:absolute;top:.8em;right:-.9em;font-size:.15em;font-family:var(--font-primary);font-weight:400;color:#ffa8ffe6;text-shadow:0 0 8px rgba(255,168,255,.5)}.fantasia-title-medium .fantasia-slogan-text{position:absolute;bottom:0;left:50%;transform:translate(-50%) translate(14px);color:#ffa8ff;font-size:.4rem;font-weight:300;text-shadow:0 0 10px rgba(255,168,255,.6);white-space:nowrap;letter-spacing:.5px;font-family:var(--font-primary);animation:fantasiaSloganPulse 2s ease-in-out infinite}.fantasia-title-small .fantasia-title-text{font-family:Andalucia,serif;font-size:2rem;color:#ffa8ff;text-shadow:0 0 20px #FFA8FF,0 0 40px rgba(255,168,255,.5),0 0 60px rgba(255,168,255,.3);margin:0;font-weight:400;letter-spacing:0;line-height:1;position:relative;display:inline-block;animation:fantasiaTitlePulse 2s ease-in-out infinite}.fantasia-title-small .fantasia-copyright-symbol{position:absolute;top:.8em;right:-.9em;font-size:.15em;font-family:var(--font-primary);font-weight:400;color:#ffa8ffe6;text-shadow:0 0 8px rgba(255,168,255,.5)}.fantasia-title-small .fantasia-slogan-text{position:absolute;bottom:0;left:50%;transform:translate(-50%) translate(10px);color:#ffa8ff;font-size:.35rem;font-weight:300;text-shadow:0 0 10px rgba(255,168,255,.6);white-space:nowrap;letter-spacing:.5px;font-family:var(--font-primary);animation:fantasiaSloganPulse 2s ease-in-out infinite}.fullscreen-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#2d0a2ef2,#1a0a2e 70%)}.fullscreen-gate-content{display:flex;flex-direction:column;align-items:center;gap:24px;padding:40px;text-align:center}.fullscreen-gate-enter{font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#cd43ff;background:#000000e6;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:16px 48px;cursor:pointer;letter-spacing:1px;text-transform:uppercase;transition:all .3s ease;min-height:56px;animation:gate-pulse 3s ease-in-out infinite}.fullscreen-gate-enter:active{background:#cd43ff26;border-color:#cd43ff99;box-shadow:0 0 30px #cd43ff66,0 0 60px #cd43ff33;transform:scale(.98)}@keyframes gate-pulse{0%,to{box-shadow:0 0 20px #cd43ff33,0 0 40px #cd43ff1a}50%{box-shadow:0 0 30px #cd43ff66,0 0 60px #cd43ff33;border-color:#cd43ff80}}.fullscreen-gate-ios-instructions{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px 24px;background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:12px;max-width:320px}.fullscreen-gate-ios-title{font-family:var(--font-primary);font-size:.9rem;font-weight:400;color:#fffc;margin:0;text-align:center}.fullscreen-gate-ios-steps{display:flex;flex-direction:column;gap:12px;width:100%}.fullscreen-gate-ios-step{display:flex;align-items:flex-start;gap:12px;font-family:var(--font-primary);font-size:.85rem;font-weight:400;color:#fff9}.fullscreen-gate-ios-step-num{display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;margin-top:1px;border-radius:50%;background:#cd43ff26;color:#cd43ff;font-size:.75rem;border:1px solid rgba(205,67,255,.3)}.fullscreen-gate-pwa-hint{font-family:var(--font-primary);font-size:.75rem;font-weight:400;color:#ffffff59;margin:16px 0 0;max-width:280px;line-height:1.5}.fullscreen-gate-rotate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;background:radial-gradient(ellipse at center,#2d0a2ef2,#0a020fe6 70%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fullscreen-gate-rotate-icon{color:#cd43ff;width:120px;height:120px;animation:gate-rotate-hint 2s ease-in-out infinite}@keyframes gate-rotate-hint{0%,to{transform:rotate(0)}25%{transform:rotate(-90deg)}50%{transform:rotate(-90deg)}75%{transform:rotate(0)}}.fullscreen-gate-exit{position:fixed;top:8px;right:8px;z-index:99998;display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffff4d;cursor:pointer;transition:all .2s ease;padding:0;opacity:.5}.fullscreen-gate-exit:hover,.fullscreen-gate-exit:active{opacity:1;background:#000000b3;color:#ffffffb3;border-color:#fff3}.fullscreen-gate-rotate-text{font-family:var(--font-primary);font-size:1.5rem;font-weight:400;color:#ffffffb3;margin:0;text-align:center;max-width:400px;line-height:1.5}.stats-bar{background:#0009;border:.25px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:25px 40px;display:flex;justify-content:space-around;animation:statsBarFadeInUp 1s ease-out .4s backwards;margin:var(--dashboard-section-gap, 16px) 60px 15px;position:relative;z-index:1}.stat-item{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;min-width:120px;position:relative}.stat-item.clickable{cursor:pointer;transition:all .2s ease;padding:0;border-radius:8px}.stat-item.clickable:hover{background:#cd43ff1a;transform:translateY(-2px)}.stat-item.clickable:hover .stat-value{color:#e056ff}.stat-value{font-family:var(--font-primary);color:#cd43ff;font-size:28px;font-weight:400;letter-spacing:.5px;line-height:1.2;min-height:38px;display:flex;align-items:center;justify-content:center}.stat-value.no-games{font-size:16px}.stat-label{font-family:var(--font-primary);color:#cd43ffb3;font-size:14px;text-transform:uppercase;letter-spacing:1.5px;font-weight:500;min-height:20px;display:flex;align-items:center;justify-content:center}.claude-selector{position:relative;cursor:pointer}.claude-value-container{display:flex;align-items:center;justify-content:center;position:relative;min-height:38px}.claude-selector .stat-value.clickable{cursor:pointer;transition:all .2s ease;color:#cd43ff}.claude-selector:hover .stat-value.clickable{color:#e458ff;text-shadow:0 0 10px rgba(205,67,255,.3)}.dropdown-arrow{position:absolute;right:-16px;color:#cd43ff99;transition:transform .2s ease}.claude-selector:hover .dropdown-arrow{transform:translateY(-2px)}.claude-dropdown{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:35px;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;min-width:120px;overflow:hidden;box-shadow:0 -4px 20px #cd43ff33}.dropdown-option{padding:10px 16px;color:#cd43ffcc;font-family:var(--font-primary);font-size:14px;letter-spacing:.5px;transition:all .2s ease;cursor:pointer}.dropdown-option:hover{background:#cd43ff1a;color:#cd43ff}.dropdown-option:not(:last-child){border-bottom:1px solid rgba(205,67,255,.1)}.claude-selector .stat-value.claude-tier-none,.claude-tier-none{color:#cd43ff!important}.claude-selector .stat-value.claude-tier-pro,.claude-tier-pro{color:#e066ff!important}.claude-selector .stat-value.claude-tier-max5x,.claude-tier-max5x{color:#f077ff!important;text-shadow:0 0 8px #F077FF,0 0 16px #F077FF50}.claude-selector .stat-value.claude-tier-max20x,.claude-tier-max20x{color:#ffa8ff!important;text-shadow:0 0 20px #FFA8FF,0 0 40px #FFA8FF80}.dropdown-option.claude-tier-none{color:#cd43ff}.dropdown-option.claude-tier-pro{color:#e066ff}.dropdown-option.claude-tier-max5x{color:#f077ff;text-shadow:0 0 6px rgba(240,119,255,.4)}.dropdown-option.claude-tier-max20x{color:#ffa8ff;text-shadow:0 0 10px rgba(255,168,255,.5)}.dropdown-option.claude-tier-none:hover{color:#cd43ff;text-shadow:0 0 6px rgba(205,67,255,.4)}.dropdown-option.claude-tier-pro:hover{color:#e066ff;text-shadow:0 0 8px rgba(224,102,255,.5)}.dropdown-option.claude-tier-max5x:hover{color:#f077ff;text-shadow:0 0 12px rgba(240,119,255,.6)}.dropdown-option.claude-tier-max20x:hover{color:#ffa8ff;text-shadow:0 0 16px rgba(255,168,255,.7)}.stat-with-tooltip{position:relative;cursor:help}.stat-with-tooltip .stat-tooltip{visibility:hidden;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#000000f2;color:#cd43ff;padding:8px 12px;border-radius:6px;border:1px solid rgba(205,67,255,.3);font-size:12px;font-family:var(--font-primary);white-space:nowrap;z-index:10000;pointer-events:none;box-shadow:0 4px 12px #00000080,0 0 20px #cd43ff33}.stat-with-tooltip:hover .stat-tooltip{visibility:visible}@keyframes statsBarFadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.stats-bar{flex-wrap:wrap;gap:20px;padding:20px}.stat-item{flex:0 0 45%}}.app-footer{text-align:center;padding:0 20px 20px;font-size:.7rem;font-family:var(--font-primary);background:transparent}.app-footer .copyright{color:#cd43ffb3;margin-right:.25rem}.app-footer .footer-separator{color:#cd43ff66;font-size:.6rem;margin:0 .5rem}.app-footer a{color:#cd43ff99;text-decoration:underline;cursor:pointer;transition:all .2s;margin:0 .25rem}.app-footer a:hover{color:#cd43ffe6}.carousel-container{position:relative;width:100%}.carousel-container .carousel-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:30px;width:100%;position:relative}.carousel-container .carousel-exit-right{animation:carouselSlideOutToLeft .5s ease-in-out}.carousel-container .carousel-exit-left{animation:carouselSlideOutToRight .5s ease-in-out}.carousel-container .carousel-slide-right{animation:carouselSlideInFromRight .5s ease-in-out}.carousel-container .carousel-slide-left{animation:carouselSlideInFromLeft .5s ease-in-out}.carousel-container .carousel-item{display:block!important}@keyframes carouselSlideOutToLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100px)}}@keyframes carouselSlideOutToRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100px)}}@keyframes carouselSlideInFromRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes carouselSlideInFromLeft{0%{opacity:0;transform:translate(-100px)}to{opacity:1;transform:translate(0)}}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;display:flex;align-items:center;justify-content:center;padding:4px!important;color:#cd43ff!important;background:transparent!important;border:none!important;box-shadow:none!important;transition:all .3s ease!important;cursor:pointer;opacity:.6}.carousel-arrow-left{left:-40px}.carousel-arrow-right{right:-40px}.carousel-arrow.carousel-arrow-hidden{visibility:hidden;pointer-events:none}.carousel-arrow:hover:not(.carousel-arrow-hidden){opacity:1!important;transform:translateY(-50%) scale(1.2);filter:drop-shadow(0 0 6px rgba(205,67,255,.5))}.carousel-arrow:active{transform:translateY(-50%) scale(1)}.carousel-indicator{position:absolute;bottom:-40px;left:50%;transform:translate(-50%);display:none}.carousel-page-info{color:#cd43ffcc;font-family:var(--font-primary);font-size:12px;text-transform:uppercase;letter-spacing:1px}.carousel-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:#fff9;font-family:var(--font-primary);font-size:16px;text-transform:uppercase;letter-spacing:1px}.carousel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:#fff9;font-family:var(--font-primary);text-align:center}@media (max-width: 1200px){.carousel-grid{gap:20px}.carousel-arrow svg{width:20px;height:20px}.carousel-arrow-left{left:-30px}.carousel-arrow-right{right:-30px}}@media (max-width: 768px){.carousel-grid{gap:15px}.carousel-arrow svg{width:16px;height:16px}.carousel-arrow-left{left:-24px}.carousel-arrow-right{right:-24px}}@keyframes avatarPulse{0%,to{box-shadow:0 0 25px #ffa8ffcc,inset 0 0 20px #ffa8ff66}50%{box-shadow:0 0 30px #ffa8ffe6,inset 0 0 25px #ffa8ff80}}.role-based-avatar-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:visible}.role-based-avatar{position:relative;z-index:1}.role-based-avatar.avatar-pulse{animation:avatarPulse 2s infinite}.avatar-outer-glow{position:absolute;pointer-events:none;z-index:0}.avatar-outer-glow.dreamer-glow{animation:outerGlowPulse 2s ease-in-out infinite}.avatar-badge-icon{position:absolute;z-index:10;filter:drop-shadow(0 0 3px rgba(205,67,255,.9))}.avatar-badge-icon.messages-badge{top:8%;left:8%;transform:translate(-50%,-50%)}.avatar-badge-icon.notifications-badge{bottom:8%;left:8%;transform:translate(-50%,50%)}.avatar-badge-icon.posts-badge{top:8%;right:8%;transform:translate(50%,-50%)}.young-adult-badge{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-weight:400;text-transform:uppercase;letter-spacing:.5px;border-radius:4px;cursor:default;flex-shrink:0}.young-adult-badge-protected{background:#43ff9726;border:1px solid rgba(67,255,151,.4);color:#43ff97}.young-adult-badge-protected:hover{box-shadow:0 0 8px #43ff974d}.young-adult-badge-violator{background:#ff43b426;border:1px solid rgba(255,67,180,.4);color:#ff43b4}.young-adult-badge-violator:hover{box-shadow:0 0 8px #ff43b44d}.young-adult-badge-clickable{cursor:pointer;transition:all .2s ease}.young-adult-badge-clickable:hover{transform:scale(1.05);box-shadow:0 0 12px #ff43b480}.young-adult-badge-clickable:active{transform:scale(.98)}.young-adult-badge-small{font-size:9px;padding:2px 5px}.young-adult-badge-medium{font-size:11px;padding:3px 7px}.user-rank-badge{display:inline-flex;align-items:center;justify-content:flex-start;padding:0;font-weight:400;white-space:nowrap;background:transparent;cursor:default}.user-rank-badge--small{font-size:12px;padding:0;font-family:var(--font-primary);letter-spacing:.5px;opacity:.9}.user-rank-badge--medium{font-size:13px;padding:0}.user-rank-badge--large{font-size:15px;padding:0}.user-rank-badge--xlarge{font-size:18px;padding:0;font-family:var(--font-primary);letter-spacing:.5px}.user-rank-badge--dreamer{background:transparent}@keyframes dreamer-pulse{0%,to{filter:drop-shadow(0 0 8px #FFA8FF) brightness(1.2)}50%{filter:drop-shadow(0 0 16px #FFA8FF) brightness(1.4)}}.unified-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;min-height:200px}.unified-spinner-inline-wrapper{display:flex;flex-direction:column;justify-content:center;align-items:center}.unified-spinner{display:inline-block;border-radius:50%;border-style:solid;border-color:#cd43ff33;border-top-color:#cd43ff;animation:unified-spin 1s linear infinite}.unified-spinner-small{width:24px;height:24px;border-width:2px}.unified-spinner-medium{width:40px;height:40px;border-width:3px}.unified-spinner-large{width:60px;height:60px;border-width:4px}.unified-loading-message{color:#fff9;font-size:14px;margin:24px 0 0;text-align:center}.unified-spinner-danger{border-color:#ff43cd33;border-top-color:#ff43cd}.unified-loading-hint{color:#fff6;font-size:13px;margin:8px 0 0;text-align:center;font-style:normal}@keyframes unified-spin{to{transform:rotate(360deg)}}.modal-close-button{background:#000000e6;border:.25px solid rgba(205,67,255,.2);border-radius:12px;color:#cd43ffcc;width:2.5rem;height:2.5rem;min-height:auto;padding:4px 8px;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.modal-close-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:#cd43ff0d;opacity:0;transition:opacity .3s ease}.modal-close-button:hover{color:#cd43ff;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff26;transform:translateY(-1px)}.modal-close-button:hover:before{opacity:1}.modal-close-button:active{transform:translateY(0)}.modal-close-absolute{position:absolute;right:24px}.user-violation-history-modal{background:linear-gradient(135deg,#140a1efa,#1e0f2dfa);border:1px solid rgba(255,67,180,.3);border-radius:12px;width:90%;max-width:550px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 0 40px #ff43b433,0 20px 60px #00000080}.violation-history-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,67,180,.2)}.violation-history-header .modal-title{color:#ff43b4;font-family:var(--font-primary);font-size:18px;font-weight:400;letter-spacing:1px;margin:0}.violation-history-header .modal-close{background:none;border:none;color:#ffffff80;font-size:24px;cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.violation-history-header .modal-close:hover{color:#ff43b4}.violation-history-content{flex:1;overflow-y:auto;padding:24px}.violation-history-loading,.violation-history-error,.violation-history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#fff9;text-align:center}.violation-history-error{color:#ff43b4}.user-violation-history-modal .violator-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid rgba(255,67,180,.15)}.user-violation-history-modal .violator-info{display:flex;flex-direction:column;gap:4px}.user-violation-history-modal .violator-name{color:#ff43b4;font-family:var(--font-primary);font-size:18px;font-weight:400}.user-violation-history-modal .violator-stats{display:flex;gap:24px;margin-bottom:24px}.user-violation-history-modal .stat-item{display:flex;flex-direction:column;align-items:center;padding:16px 24px;background:#ff43b41a;border:1px solid rgba(255,67,180,.2);border-radius:8px;flex:1}.user-violation-history-modal .stat-value{font-size:28px;font-weight:400;color:#ff43b4}.user-violation-history-modal .stat-label{font-size:11px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.user-violation-history-modal .violator-history{margin-top:8px}.user-violation-history-modal .history-title{color:#ffffffb3;font-size:12px;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px}.user-violation-history-modal .history-list{display:flex;flex-direction:column;gap:8px}.user-violation-history-modal .history-entry{background:#0000004d;border:1px solid rgba(255,67,180,.15);border-radius:6px;overflow:hidden}.user-violation-history-modal .history-entry.expanded{border-color:#ff43b44d}.user-violation-history-modal .history-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;cursor:pointer;text-align:left;color:inherit;font-family:inherit}.user-violation-history-modal .history-item:hover{background:#ff43b40d}.user-violation-history-modal .history-game{flex:1;color:#ffffffe6;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-violation-history-modal .history-category{font-size:10px;color:#ff43b4;background:#ff43b426;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.user-violation-history-modal .history-date{font-size:11px;color:#fff6}.user-violation-history-modal .history-chevron{color:#ffffff4d;font-size:10px;transition:transform .2s ease}.user-violation-history-modal .history-chevron.open{transform:rotate(180deg)}.user-violation-history-modal .history-details{padding:12px 16px;border-top:1px solid rgba(255,67,180,.1);background:#0003}.user-violation-history-modal .history-detail-row{display:flex;gap:8px;margin-bottom:8px}.user-violation-history-modal .history-detail-row:last-child{margin-bottom:0}.user-violation-history-modal .detail-label{font-size:11px;color:#ffffff80;text-transform:uppercase;min-width:80px}.user-violation-history-modal .detail-value{font-size:12px;color:#fffc;flex:1}.user-violation-history-modal .detail-value.severity-block{color:#f44;font-weight:400}.user-violation-history-modal .detail-value.severity-warn{color:#ffc143}.user-violation-history-modal .history-empty{text-align:center;color:#fff6;padding:20px;font-style:normal}.user-violation-history-modal .modal-footer{display:flex;justify-content:flex-end;padding:16px 24px;border-top:1px solid rgba(255,67,180,.15)}.user-violation-history-modal .modal-close-button{background:#ff43b426;border:1px solid rgba(255,67,180,.3);color:#ff43b4;padding:10px 24px;border-radius:6px;font-family:var(--font-primary);font-weight:400;font-size:13px;letter-spacing:.5px;cursor:pointer;transition:all .2s ease}.user-violation-history-modal .modal-close-button:hover{background:#ff43b440;border-color:#ff43b480}.user-identity-display{display:flex;align-items:center;gap:12px}.user-identity-display.clickable{cursor:pointer;transition:opacity .2s ease}.user-identity-display.clickable:hover{opacity:.85}.user-identity-horizontal{flex-direction:row}.user-identity-horizontal .user-identity-info{align-items:flex-start}.user-identity-vertical{flex-direction:column;text-align:center}.user-identity-vertical .user-identity-info{align-items:center}.user-identity-avatar-wrapper{position:relative;flex-shrink:0}.user-identity-avatar{border-radius:50%}.online-indicator{position:absolute;bottom:2px;right:2px;width:10px;height:10px;border-radius:50%;border:2px solid rgba(0,0,0,.8)}.online-indicator.online{background:#22c55e;box-shadow:0 0 6px #22c55e99}.online-indicator.offline{background:#6b7280}.user-identity-info{display:flex;flex-direction:column;gap:2px;min-width:0}.user-identity-name{font-family:var(--font-primary);color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-identity-name-small{font-size:13px;font-weight:500}.user-identity-name-medium{font-size:15px;font-weight:400}.user-identity-name-large{font-size:20px;font-weight:400}.user-identity-last-seen{font-size:11px;color:#cd43ff80;font-family:var(--font-primary)}.user-identity-small{gap:8px}.user-identity-small .online-indicator{width:8px;height:8px;bottom:0;right:0}.user-identity-large{gap:16px}.user-identity-large .online-indicator{width:14px;height:14px;bottom:4px;right:4px}.access-status-badge{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px 8px;border-radius:20px;font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;min-width:75px;text-align:center}.access-status-badge.access-badge-compact{padding:4px 8px;min-width:75px}.access-badge-icon{font-size:11px;line-height:1}.access-badge-label{line-height:1}.access-badge-open{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.access-badge-open:hover{background:#43ff974d;border-color:#43ff9780}.access-badge-restricted{background:#ffc14333;color:#ffc143;border:1px solid rgba(255,193,67,.3)}.access-badge-restricted:hover{background:#ffc1434d;border-color:#ffc14380}.access-badge-closed{background:#ff434333;color:#ff4343;border:1px solid rgba(255,67,67,.3)}.access-badge-closed:hover{background:#ff43434d;border-color:#ff434380}.access-badge-blocked{background:#ff43cd33;color:#ff43cd;border:1px solid rgba(255,67,205,.3);animation:blocked-pulse 2s ease-in-out infinite}.access-badge-blocked:hover{background:#ff43cd4d;border-color:#ff43cd80}@keyframes blocked-pulse{0%,to{box-shadow:0 0 8px #ff43cd33}50%{box-shadow:0 0 15px #ff43cd66}}.access-status-badge.access-badge-clickable{cursor:pointer}.access-status-badge.access-badge-clickable.access-badge-blocked:hover{background:#ff43cd66;border-color:#ff43cdb3;box-shadow:0 0 20px #ff43cd80}.access-denied-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.access-denied-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:450px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #ff43cd4d;border:1px solid rgba(255,67,205,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideInUp .3s ease-out}.access-denied-header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 24px 16px;background:#ff43cd14;border-bottom:1px solid rgba(255,67,205,.2)}.access-denied-title{font-family:var(--font-primary);font-size:1.5rem;font-weight:400;color:#ff43cd;margin:0;text-align:center;text-shadow:0 0 20px rgba(255,67,205,.5)}.access-denied-content{padding:24px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.access-denied-game-name{font-family:var(--font-primary);font-size:1.1rem;color:#fffffff2;margin:0;padding:8px 16px;background:#cd43ff1a;border-radius:8px;border:1px solid rgba(205,67,255,.2)}.access-denied-message{font-size:1rem;color:#ffffffd9;margin:0;line-height:1.5}.access-denied-explanation{font-size:.9rem;color:#fff9;margin:0;line-height:1.5;font-style:normal}.access-denied-footer{display:flex;justify-content:center;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid rgba(255,67,205,.2);background:#ff43cd0d}.server-error-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:serverErrorFadeIn .2s ease-out}@keyframes serverErrorFadeIn{0%{opacity:0}to{opacity:1}}.server-error-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:450px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #ff43cd4d;border:1px solid rgba(255,67,205,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:serverErrorSlideIn .3s ease-out}@keyframes serverErrorSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.server-error-header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 24px 16px;background:#ff43cd14;border-bottom:1px solid rgba(255,67,205,.2);gap:12px}.server-error-icon{color:#ff43cd;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 12px rgba(255,67,205,.4))}.server-error-title{font-family:var(--font-primary);font-size:1.5rem;font-weight:400;color:#ff43cd;margin:0;text-align:center;text-shadow:0 0 20px rgba(255,67,205,.5)}.server-error-content{padding:24px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.server-error-game-name{font-family:var(--font-primary);font-size:1.1rem;color:#fffffff2;margin:0;padding:8px 16px;background:#cd43ff1a;border-radius:8px;border:1px solid rgba(205,67,255,.2)}.server-error-message{font-size:1rem;color:#ffffffd9;margin:0;line-height:1.5}.server-error-hint{font-size:.9rem;color:#fff9;margin:0;line-height:1.5;font-style:normal}.server-error-footer{display:flex;justify-content:center;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid rgba(255,67,205,.2);background:#ff43cd0d}.server-error-retry-content{display:inline-flex;align-items:center;gap:8px}.violator-warning-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.violator-warning-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:500px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #ff43cd66;border:2px solid rgba(255,67,205,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.violator-warning-header{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 24px 16px;background:#ff43cd1a;border-bottom:1px solid rgba(255,67,205,.3)}.violator-warning-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:#ff43cd33;border:2px solid rgba(255,67,205,.4);animation:pulse-warning 1.5s ease-in-out infinite}.warning-icon{font-size:36px}@keyframes pulse-warning{0%,to{box-shadow:0 0 20px #ff43cd4d;transform:scale(1)}50%{box-shadow:0 0 35px #ff43cd80;transform:scale(1.05)}}.violator-warning-title{font-family:var(--font-primary);font-size:1.5rem;font-weight:400;color:#ff43cd;margin:0;text-align:center;text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 25px rgba(255,67,205,.6)}.violator-warning-content{padding:24px;display:flex;flex-direction:column;gap:16px}.violator-warning-game-name{font-family:var(--font-primary);font-size:1.1rem;color:#fffffff2;margin:0;padding:8px 16px;background:#cd43ff1a;border-radius:8px;border:1px solid rgba(205,67,255,.2);text-align:center}.violator-warning-message-box{background:#ff43cd14;border:1px solid rgba(255,67,205,.2);border-radius:8px;padding:16px}.violator-warning-message{font-size:1rem;color:#ffffffe6;margin:0 0 12px;line-height:1.5}.violator-warning-list{margin:0;padding-left:20px;color:#fffc;font-size:.95rem;line-height:1.8}.violator-warning-list li{margin-bottom:4px}.violator-warning-list li::marker{color:#ff43cd}.violator-warning-cta{font-family:var(--font-primary);font-size:.95rem;color:#ff43cd;margin:0;text-align:center;font-weight:400}.violator-warning-footer{display:flex;justify-content:center;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid rgba(255,67,205,.2);background:#ff43cd0d}.glow-unread-shadow{box-shadow:0 0 12px 2px #cd43ff66}.glow-unread-border{border:2px solid rgba(205,67,255,.5)!important}.glow-unread-ring{outline:2px solid rgba(205,67,255,.4);outline-offset:2px}.glow-warning-shadow{box-shadow:0 0 12px 2px #ff43cd80}.glow-warning-border{border:2px solid rgba(255,67,205,.6)!important}.glow-warning-ring{outline:2px solid rgba(255,67,205,.5);outline-offset:2px}.glow-warning-pulse{animation:glow-warning-pulse 2s ease-in-out infinite}@keyframes glow-warning-pulse{0%,to{box-shadow:0 0 12px 2px #ff43cd80}50%{box-shadow:0 0 20px 4px #ff43cdb3}}.glow-warning-border.glow-warning-pulse{animation:glow-warning-border-pulse 2s ease-in-out infinite}@keyframes glow-warning-border-pulse{0%,to{border-color:#ff43cd99}50%{border-color:#ff43cde6}}.glow-warning-ring.glow-warning-pulse{animation:glow-warning-ring-pulse 2s ease-in-out infinite}@keyframes glow-warning-ring-pulse{0%,to{outline-color:#ff43cd80}50%{outline-color:#ff43cdcc}}.glow-container{position:relative;transition:box-shadow .3s ease,border-color .3s ease,outline-color .3s ease}.glow-container-shadow{margin:2px}.glow-indicator{display:inline-flex;align-items:center;justify-content:center}.glow-indicator-dot{width:8px;height:8px;border-radius:50%}.glow-indicator-dot.glow-unread{background:#cd43ff;box-shadow:0 0 6px 1px #cd43ff99}.glow-indicator-dot.glow-warning{background:#ff43cd;box-shadow:0 0 6px 1px #ff43cd99;animation:indicator-pulse 2s ease-in-out infinite}@keyframes indicator-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.glow-indicator-ring{width:12px;height:12px;border-radius:50%;border:2px solid}.glow-indicator-ring.glow-unread{border-color:#cd43ff}.glow-indicator-ring.glow-warning{border-color:#ff43cd;animation:indicator-ring-pulse 2s ease-in-out infinite}@keyframes indicator-ring-pulse{0%,to{border-width:2px}50%{border-width:3px}}.glow-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:11px;font-weight:400;font-family:Roboto,sans-serif;color:#fff;line-height:1}.glow-badge.glow-unread{background:#cd43ff;box-shadow:0 0 8px 2px #cd43ff66}.glow-badge.glow-warning{background:#ff43cd;box-shadow:0 0 8px 2px #ff43cd80;animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{box-shadow:0 0 8px 2px #ff43cd80}50%{box-shadow:0 0 12px 4px #ff43cdb3}}.glow-badge-large{min-width:22px;height:22px;padding:0 6px;border-radius:11px;font-size:12px}.mark-all-read-dot{cursor:pointer;border:none;padding:0;opacity:.8;transition:all .2s ease}.mark-all-read-dot:hover{opacity:1;transform:scale(1.3);box-shadow:0 0 10px 3px #cd43ffb3}.glow-none{box-shadow:none!important;border-color:transparent!important;outline:none!important}.glow-transition{transition:box-shadow .3s ease,border-color .3s ease,outline-color .3s ease}.trash-icon{display:inline-flex;align-items:center;justify-content:center;padding:4px;border:none;border-radius:6px;background:transparent;color:#ff43cd;cursor:default;transition:all .2s ease}.trash-icon-medium{width:32px;height:32px}.trash-icon-small{width:24px;height:24px}.trash-icon.clickable{cursor:pointer}.trash-icon.clickable:hover{background:#ff43cd26;color:#ff6ad5;transform:scale(1.1)}.trash-icon.clickable:active{transform:scale(.95)}.trash-icon.disabled{opacity:.4;cursor:not-allowed}.trash-icon:disabled{opacity:.4;cursor:not-allowed}.trash-icon.loading .trash-svg{animation:trash-shake .4s ease-in-out infinite}@keyframes trash-shake{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.trash-icon-medium .trash-svg{width:20px;height:20px}.trash-icon-small .trash-svg{width:16px;height:16px}.custom-dropdown{position:relative;width:100%}.custom-dropdown-trigger{box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#00000080;border:.25px solid rgba(205,67,255,.3);border-radius:12px;color:#cd43ff;font-size:14px;font-family:var(--font-primary);cursor:pointer;transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease,color .3s ease;text-align:left;outline:none}.custom-dropdown.field-input .custom-dropdown-trigger{padding:.7rem .9rem;border:1px solid rgba(205,67,255,.3);border-radius:6px;background:#00000080;font-family:inherit;font-size:.95rem;color:#ffffffe6;line-height:1.2;min-height:unset}.custom-dropdown.field-input .custom-dropdown-text{line-height:1.2}.custom-dropdown.field-input .custom-dropdown-text.placeholder{color:#fff6}.custom-dropdown.field-input .custom-dropdown-arrow{margin-left:.5rem}.custom-dropdown.field-input .custom-dropdown-arrow svg{width:14px;height:14px}.custom-dropdown.field-input .custom-dropdown-menu{border-radius:6px}.custom-dropdown.field-input .custom-dropdown-option{font-family:inherit;padding:.6rem .9rem;font-size:.9rem}.custom-dropdown.field-input .custom-dropdown-option:first-child{border-radius:5px 5px 0 0}.custom-dropdown.field-input .custom-dropdown-option:last-child{border-radius:0 0 5px 5px}.custom-dropdown.field-input .custom-dropdown-option:only-child{border-radius:5px}.custom-dropdown-trigger:hover:not(:disabled){border-color:#cd43ff80;background:#cd43ff0d}.custom-dropdown.open .custom-dropdown-trigger{border-color:#cd43ff;background:#cd43ff0d;box-shadow:0 0 20px #cd43ff33,inset 0 0 5px #cd43ff1a}.custom-dropdown.disabled .custom-dropdown-trigger{opacity:.5;cursor:not-allowed}.custom-dropdown-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-dropdown-text.placeholder{color:#cd43ff66}.custom-dropdown-arrow{display:flex;align-items:center;justify-content:center;color:#cd43ff99;transition:transform .2s ease;margin-left:8px}.custom-dropdown.open .custom-dropdown-arrow{transform:rotate(180deg);color:#cd43ff}.custom-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:1000;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;box-shadow:0 4px 20px #cd43ff33,0 8px 32px #00000080;max-height:250px;overflow-y:auto;animation:dropdownFadeIn .2s ease}.custom-dropdown-menu--portal{position:fixed;z-index:99999}.custom-dropdown-menu--above:not(.custom-dropdown-menu--portal){top:auto;bottom:calc(100% + 4px);animation:dropdownFadeInUpInline .2s ease}@keyframes dropdownFadeInUpInline{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.custom-dropdown-menu--above.custom-dropdown-menu--portal{animation:dropdownFadeInUp .2s ease}@keyframes dropdownFadeInUp{0%{opacity:0;transform:translateY(calc(-100% + 8px))}to{opacity:1;transform:translateY(-100%)}}.custom-dropdown-option{width:100%;padding:12px 16px;background:transparent;border:none;color:#ffffffd9;font-size:14px;font-family:var(--font-primary);text-align:left;cursor:pointer;transition:all .2s ease}.custom-dropdown-option:first-child{border-radius:11px 11px 0 0}.custom-dropdown-option:last-child{border-radius:0 0 11px 11px}.custom-dropdown-option:only-child{border-radius:11px}.custom-dropdown-option:hover:not(.disabled):not(.selected){background:#cd43ff1a;color:#fff}.custom-dropdown-option.selected{background:#cd43ff33;color:#cd43ff;font-weight:400}.custom-dropdown-option.selected:hover{background:#cd43ff40}.custom-dropdown-option.disabled{opacity:.4;cursor:not-allowed}.custom-dropdown-divider{height:1px;background:#cd43ff33;margin:4px 12px}.custom-dropdown-inline-search{flex:1;width:0;background:transparent;border:none;color:#cd43ff;font-size:14px;font-family:var(--font-primary);outline:none;padding:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-dropdown-inline-search::placeholder{color:#cd43ff66}.custom-dropdown-no-results{padding:12px 16px;color:#fff6;font-size:13px;font-family:var(--font-primary);text-align:center;font-style:normal}.custom-dropdown-alphabet-nav{display:flex;flex-wrap:wrap;gap:1px;padding:6px 8px;border-bottom:1px solid rgba(205,67,255,.15);background:#0000004d;position:sticky;top:0;z-index:1;justify-content:center}.custom-dropdown-alphabet-letter{padding:2px 4px;background:transparent;border:none;color:#cd43ff66;font-family:var(--font-primary);font-size:.6rem;cursor:pointer;border-radius:3px;transition:all .15s ease;min-width:16px;text-align:center;line-height:1.2}.custom-dropdown-alphabet-letter:hover{background:#cd43ff1f;color:#cd43ff}.custom-dropdown-menu::-webkit-scrollbar{width:8px}.custom-dropdown-menu::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.custom-dropdown-menu::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.custom-dropdown-menu::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}@media (max-width: 768px){.custom-dropdown-menu{max-width:calc(100vw - 16px)!important;max-height:50vh;overflow-y:auto;-webkit-overflow-scrolling:touch}}.system-message-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.system-message-dialog{background:#000000f2;border:2px solid rgba(205,67,255,.3);border-radius:16px;padding:32px;min-width:400px;max-width:500px;box-shadow:0 8px 32px #cd43ff33,0 0 80px #cd43ff1a;display:flex;flex-direction:column;gap:24px;animation:messageSlideIn .3s ease-out;position:relative}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.system-message-icon{display:flex;justify-content:center;align-items:center;margin:0 auto;width:80px;height:80px;border-radius:50%;background:#cd43ff1a;border:2px solid rgba(205,67,255,.3)}.system-message-dialog.success .system-message-icon{color:#4ade80;background:#4ade801a;border-color:#4ade804d}.system-message-dialog.error .system-message-icon{color:#cd43ff;background:#cd43ff1a;border-color:#cd43ff4d}.system-message-dialog.warning .system-message-icon{color:#ff43cd;background:#ff43cd1a;border-color:#ff43cd4d}.system-message-dialog.info .system-message-icon{color:#43cdff;background:#43cdff1a;border-color:#43cdff4d}.system-message-content{text-align:center}.system-message-title{font-family:var(--font-primary);font-size:24px;font-weight:400;color:#cd43ff;margin:0 0 12px;letter-spacing:.5px}.system-message-dialog.success .system-message-title{color:#4ade80}.system-message-dialog.error .system-message-title{color:#cd43ff}.system-message-dialog.warning .system-message-title{color:#ff43cd}.system-message-dialog.info .system-message-title{color:#cd43ff}.system-message-text{font-family:var(--font-primary);font-size:16px;font-weight:400;color:#fffc;line-height:1.6;margin:0}.system-message-actions{display:flex;justify-content:center;gap:12px;margin-top:8px}.system-message-actions button{min-width:120px}.confirmation-input-wrapper{margin-top:20px}.confirmation-input{width:100%;padding:12px 16px;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-family:var(--font-primary);font-size:16px;font-weight:400;transition:all .2s ease}.confirmation-input:focus{outline:none;border-color:#cd43ff99;background:#000c;box-shadow:0 0 15px #cd43ff33}.confirmation-input::placeholder{color:#fff6}.system-message-broom{position:absolute;top:12px;right:12px;background:transparent;border:none;color:#cd43ff;cursor:pointer;opacity:.7;transition:all .2s ease;padding:4px;display:flex;align-items:center;justify-content:center}.system-message-broom:hover{opacity:1;transform:scale(1.15)}.add-entry-modal{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #cd43ff33}.add-entry-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2)}.add-entry-modal .modal-title{font-size:20px;font-weight:400;color:#cd43ff;margin:0}.add-entry-modal-content{display:flex;flex-direction:column;gap:20px;padding:24px}.add-entry-modal .error-message{padding:12px 16px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:6px;color:#fca5a5;font-size:14px}.add-entry-modal .form-group{display:flex;flex-direction:column;gap:8px}.add-entry-modal .form-label{font-size:14px;font-weight:400;color:#ffffffe6}.add-entry-modal .form-input,.add-entry-modal .form-textarea{padding:12px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-size:14px;font-family:inherit;transition:all .2s ease}.add-entry-modal .form-input:focus,.add-entry-modal .form-textarea:focus{outline:none;border-color:#cd43ff;background:#ffffff14}.add-entry-modal .form-input:disabled,.add-entry-modal .form-textarea:disabled{opacity:.5;cursor:not-allowed}.add-entry-modal .form-input::placeholder,.add-entry-modal .form-textarea::placeholder{color:#fff6}.add-entry-modal .form-textarea{resize:vertical;min-height:120px;line-height:1.6}.add-entry-modal .char-count{align-self:flex-end;font-size:12px;color:#fff6}.add-entry-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.add-entry-modal .category-picker{display:flex;flex-wrap:wrap;gap:8px}.add-entry-modal .category-btn{padding:8px 16px;background:#ffffff0d;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffb3;font-family:var(--font-primary);font-size:13px;cursor:pointer;transition:all .2s ease}.add-entry-modal .category-btn:hover:not(:disabled){background:#cd43ff1a;border-color:#cd43ff80;color:#cd43ff}.add-entry-modal .category-btn.active{background:#cd43ff33;border-color:#cd43ff;color:#cd43ff;box-shadow:0 0 10px #cd43ff4d}.add-entry-modal .category-btn:disabled{opacity:.5;cursor:not-allowed}.add-entry-modal .subcategory-picker{display:flex;flex-wrap:wrap;gap:6px}.add-entry-modal .subcategory-btn{padding:5px 12px;background:#ffffff08;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#cd43ff99;font-family:var(--font-primary);font-size:11px;cursor:pointer;transition:all .2s ease}.add-entry-modal .subcategory-btn:hover:not(:disabled){background:#cd43ff14;border-color:#cd43ff66;color:#cd43ffe6}.add-entry-modal .subcategory-btn.active{background:#cd43ff26;border-color:#cd43ff;color:#cd43ff;box-shadow:0 0 8px #cd43ff33}.add-entry-modal .subcategory-btn:disabled{opacity:.5;cursor:not-allowed}.fantamaster-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:20px;font-family:var(--font-primary);font-weight:400;text-transform:uppercase;letter-spacing:1px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;white-space:nowrap;text-align:center}.fantamaster-badge-small{font-size:10px;padding:3px 10px}.fantamaster-badge-medium{font-size:11px;padding:4px 12px}.fantamaster-badge-magenta{background:#ff43cd33;color:#ff43cd;border:1px solid rgba(255,67,205,.3)}.fantamaster-badge-purple{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.fantamaster-badge-green{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.fantamaster-badge-gold{background:#ffd70033;color:gold;border:1px solid rgba(255,215,0,.3)}.fantamaster-badge-orange{background:#ffa50033;color:orange;border:1px solid rgba(255,165,0,.3)}.fantamaster-badge-red{background:#ff434333;color:#ff4343;border:1px solid rgba(255,67,67,.3)}.fantamaster-badge-gray{background:#80808033;color:gray;border:1px solid rgba(128,128,128,.3)}.game-card{width:100%;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;overflow:visible;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;min-height:400px;display:flex;flex-direction:column}.game-card:hover{transform:translateY(-5px);border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33;cursor:pointer}.game-card-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;border-radius:12px;overflow:hidden}.game-card-background img{width:100%;height:100%;object-fit:cover;object-position:top center}.game-card-content{position:relative;z-index:2;width:100%;flex:1;display:flex;flex-direction:column;min-height:0}.game-image-upload-area{position:absolute;bottom:10px;left:50%;transform:translate(-50%);cursor:pointer;z-index:10;opacity:0;transition:opacity .3s ease}.game-card:hover .game-image-upload-area{opacity:1}.claude-button{position:absolute;top:10px;right:10px;padding:4px 8px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;border:none;cursor:pointer;transition:all .3s ease;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:75px;text-align:center}.claude-button:hover{transform:scale(1.05);box-shadow:0 4px 15px #0000004d}.claude-button.claude-tier-none{background:#cd43ff26;color:#cd43ff99;border:1px solid rgba(205,67,255,.3)}.claude-button.claude-tier-pro{background:#cd43ff40;color:#cd43ffe6;border:1px solid rgba(205,67,255,.5)}.claude-button.claude-tier-max5x{background:#cd43ff59;color:#cd43ff;border:1px solid rgba(205,67,255,.7);box-shadow:0 0 10px #cd43ff4d}.claude-button.claude-tier-max20x{background:#ff43ff66;color:#ff43ff;border:1px solid rgba(255,67,255,.8);box-shadow:0 0 15px #ff43ff66;animation:pulse-glow-button 2s infinite}@keyframes pulse-glow-button{0%,to{box-shadow:0 0 15px #ff43ff66}50%{box-shadow:0 0 25px #ff43ff99}}.monetization-button{position:absolute;top:10px;right:10px;padding:4px 8px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;border:none;cursor:pointer;transition:all .3s ease;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:75px;text-align:center}.monetization-button.center{left:50%;right:auto;transform:translate(-50%)}.monetization-button.center:hover{transform:translate(-50%) scale(1.05)}.monetization-button:hover{transform:scale(1.05);box-shadow:0 4px 15px #0000004d}.monetization-button.free{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.monetization-button.hybrid{background:#ffd70033;color:gold;border:1px solid rgba(255,215,0,.3)}.monetization-button.subscriptions{background:#dc143c33;color:#ff4500;border:1px solid rgba(220,20,60,.3)}.game-card .role-badge{position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;transition:all .3s ease;min-width:75px;text-align:center}.game-card .role-badge.creator{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3);box-shadow:none;text-shadow:none;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.game-card .role-badge.creator.clickable{cursor:pointer;transition:all .3s ease}.game-card .role-badge.creator.clickable:hover{background:#43ff974d;transform:scale(1.05)}.game-card .role-badge.player{background:linear-gradient(135deg,#ffd7004d,#ffc1074d);color:gold;border:1px solid rgba(255,215,0,.5);box-shadow:0 2px 10px #ffd7004d}.game-card .role-badge.spectator{background:linear-gradient(135deg,#dc143c4d,#ff45004d);color:#ff4500;border:1px solid rgba(220,20,60,.5);box-shadow:0 2px 10px #dc143c4d}.game-card-header{position:relative;height:150px;background:linear-gradient(135deg,#cd43ff1a,#7b1fa21a);transition:all .3s ease}.game-card-header.clickable{cursor:pointer}.game-card-header.clickable:hover .image-overlay{opacity:1}.game-card-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.game-card-image img{width:100%;height:100%;object-fit:contain;object-position:center}.game-initials{font-size:72px;color:#cd43ff66;font-family:var(--font-primary);font-weight:300;letter-spacing:4px;text-shadow:0 0 20px rgba(205,67,255,.5);text-transform:none!important}.game-card .status-badge{position:absolute;top:10px;left:50%;transform:translate(-50%);padding:4px 8px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;min-width:75px;max-width:75px;text-align:center;overflow:hidden;text-overflow:ellipsis}.game-card .status-badge.active{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.game-card .status-badge.paused{background:#ffa50033;color:orange;border:1px solid rgba(255,165,0,.3)}.game-card .status-badge.archived{background:#80808033;color:gray;border:1px solid rgba(128,128,128,.3)}.game-card .status-badge.locked{background:#f003;color:red;border:1px solid rgba(255,0,0,.3);box-shadow:0 2px 10px #ff00004d}.game-card-body{padding:20px;background:linear-gradient(to bottom,#0003,#0006);margin-top:auto;position:relative;z-index:10;pointer-events:auto!important}.game-name-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;pointer-events:auto;position:relative;z-index:10}.game-name-row-spacer{flex:1}.game-name-row .access-status-badge{margin-right:-10px}.game-name{margin:0;font-family:var(--font-primary);font-size:20px;font-weight:300;color:#fffffff2;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}.game-card-info-button{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#cd43ff99;cursor:pointer;transition:all .2s;padding:0;margin-right:6px;pointer-events:auto;position:relative;z-index:10}.game-card-info-button:hover{color:#cd43ff;transform:scale(1.15)}.game-card-info-button svg{width:18px;height:18px}.game-links{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.link-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:400;letter-spacing:.3px;font-family:inherit;cursor:default;border:none;background:transparent}.link-tag.clickable{cursor:pointer;transition:all .2s ease}.link-tag.system{background:#ff43cd33;border:1px solid rgba(255,67,205,.4);color:#ff43cdf2}.link-tag.system.clickable:hover{background:#ff43cd59;border-color:#ff43cd99;transform:translateY(-1px)}.link-tag.world{background:#cd43ff33;border:1px solid rgba(205,67,255,.4);color:#cd43fff2}.link-tag.world.clickable:hover{background:#cd43ff59;border-color:#cd43ff99;transform:translateY(-1px)}.link-tag.worldless{background:#80808026;border:1px solid rgba(128,128,128,.3);color:#ffffff80}.game-stats{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:0;padding-top:16px;border-top:1px solid rgba(205,67,255,.1);pointer-events:auto!important;position:relative;z-index:100}.game-stats .stat{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px;color:#ffffffb3;pointer-events:auto!important;position:relative;z-index:100;flex-shrink:0}.game-stats .stat>span{pointer-events:auto!important}.game-stats svg:not(.trash-svg){color:#cd43ff99}.game-stats .stat.stat-multiline{flex-direction:row;align-items:flex-start;flex:1;min-width:0}.game-stats .stat:not(.stat-multiline){flex-shrink:0;white-space:nowrap}.game-stats .stat-content{display:flex;flex-direction:column;gap:2px}.game-stats .stat-line-2{font-size:13px}.game-stats .stat svg{flex-shrink:0}.last-post-green{color:#43ff97!important;font-size:13px;font-weight:400}.last-post-yellow{color:gold!important;font-size:13px;font-weight:400}.last-post-red{color:#ff4500!important;font-size:13px;font-weight:400}.game-actions{display:flex;justify-content:center;gap:10px;position:relative;z-index:10}.game-actions .launch-btn{min-width:120px}.game-restriction-notice{font-size:14px;color:#ffffffb3;line-height:1.6;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto;font-style:normal}.game-stats .claude-subscription{font-weight:400;transition:all .3s ease;letter-spacing:.5px}.game-stats .ai-powered{position:relative}.game-stats .claude-tier-none{color:#cd43ff66;font-size:.85em}.game-stats .claude-tier-pro{color:#cd43ffcc;font-weight:400}.game-stats .claude-tier-max5x{color:#cd43ff;font-weight:400;text-shadow:0 0 10px rgba(205,67,255,.4)}.game-stats .claude-tier-max20x{color:#ff43ff;font-weight:400;text-shadow:0 0 15px rgba(255,67,255,.6);animation:pulse-glow 2s infinite}@keyframes pulse-glow{0%,to{text-shadow:0 0 15px rgba(255,67,255,.6)}50%{text-shadow:0 0 25px rgba(255,67,255,.9)}}.game-card.locked{opacity:.5;cursor:not-allowed}.game-card.locked:hover{transform:none;border-color:#cd43ff33;box-shadow:none}.game-card.locked:before{content:"🔒";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:64px;opacity:.3;z-index:5;pointer-events:none}.game-card.locked .game-card-body{pointer-events:none}.game-card .styled-display-name-with-tooltip,.game-stats .styled-display-name-with-tooltip,.stat .styled-display-name-with-tooltip,.styled-display-name-with-tooltip{position:relative!important;cursor:pointer!important;display:inline-block!important;pointer-events:auto!important}.game-card .styled-display-name-with-tooltip .gm-rank-tooltip,.game-stats .styled-display-name-with-tooltip .gm-rank-tooltip,.stat .styled-display-name-with-tooltip .gm-rank-tooltip,.styled-display-name-with-tooltip .gm-rank-tooltip{visibility:hidden;position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:#000000f2;color:#fffffff2;padding:8px 12px;border-radius:6px;border:1px solid rgba(205,67,255,.4);font-size:.85rem;white-space:nowrap;z-index:10000;pointer-events:none;box-shadow:0 4px 12px #00000080}.game-card .styled-display-name-with-tooltip:hover .gm-rank-tooltip,.game-stats .styled-display-name-with-tooltip:hover .gm-rank-tooltip,.stat .styled-display-name-with-tooltip:hover .gm-rank-tooltip,.styled-display-name-with-tooltip:hover .gm-rank-tooltip{visibility:visible}.dreamer-actions{display:inline;margin-left:6px}.dreamer-actions .trash-icon{width:auto;height:auto;padding:0;margin-left:4px;vertical-align:middle}.dreamer-actions .trash-icon .trash-svg{width:13px;height:13px}.dreamer-icon{cursor:pointer;margin-left:4px;font-size:12px;opacity:.7;transition:all .2s ease;vertical-align:text-bottom;display:inline-flex;align-items:center}.dreamer-icon svg{display:block}.dreamer-icon:hover{opacity:1;transform:scale(1.2)}.dreamer-icon:not(.dreamer-trash){color:#cd43ff}.dreamer-icon.dreamer-trash{color:#ff43cd!important}.dreamer-icon.dreamer-trash svg{fill:#ff43cd!important}.toggle-container{display:inline-flex;align-items:center;justify-content:center}.toggle-container.full-width{width:100%}.toggle-group{display:flex;align-items:stretch;background:linear-gradient(135deg,#000c,#14001eb3);border:.25px solid rgba(205,67,255,.3);border-radius:6px;overflow:hidden;position:relative;box-shadow:0 2px 8px #0000004d}.toggle-container.small .toggle-option{padding:6px 16px;font-size:12px;min-height:32px}.toggle-container.medium .toggle-option{padding:8px 24px;font-size:14px;min-height:40px}.toggle-container.large .toggle-option{padding:12px 32px;font-size:16px;min-height:48px}.toggle-option{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:none;border-radius:0;color:#fff9;font-family:var(--font-primary);font-weight:400;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;white-space:nowrap;-webkit-user-select:none;user-select:none;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.toggle-option:hover:not(.active):not(:disabled){color:#fffc;background:#cd43ff1a}.toggle-option.active{color:#cd43ff;background:linear-gradient(135deg,#cd43ff33,#cd43ff1a);border:1px solid rgba(205,67,255,.4);border-radius:5px;font-weight:400;text-shadow:0 0 10px rgba(205,67,255,.5);cursor:default}.toggle-option.active:after{content:"";position:absolute;bottom:0;left:10%;right:10%;height:2px;background:linear-gradient(90deg,transparent,#CD43FF 20%,#CD43FF 80%,transparent);animation:glowPulse 2s ease-in-out infinite}@keyframes glowPulse{0%,to{opacity:.7;box-shadow:0 0 5px #cd43ff80}50%{opacity:1;box-shadow:0 0 15px #cd43ffcc}}.toggle-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.1em}.toggle-label{display:inline-flex;align-items:center}.toggle-container.disabled{opacity:.5}.toggle-container.disabled .toggle-option{cursor:not-allowed;pointer-events:none}.toggle-option:focus-visible{outline:none}.toggle-option:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#cd43ff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s;pointer-events:none}.toggle-option:active:before{width:100%;height:100%}.toggle-container.full-width .toggle-group{width:100%}.toggle-container.full-width .toggle-option{flex:1}.carousel-controls{display:flex;gap:64px;align-items:center;justify-content:center;margin-bottom:var(--dashboard-section-gap, 16px)}.carousel-controls-search-btn{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff9;cursor:pointer;transition:all .3s ease;padding:0;margin:0 -28px}.carousel-controls-search-btn:hover:not(:disabled){color:#cd43ff;background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff26}.carousel-controls-search-btn.has-filters{color:#cd43ff;border-color:#cd43ff80;background:#cd43ff26}.carousel-controls-search-btn:disabled{opacity:.3;cursor:not-allowed}.carousel-controls-search-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;background:#cd43ff;color:#fff;font-size:10px;font-weight:400;font-family:var(--font-primary);border-radius:20px;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 0 8px #cd43ff66}.filter-field{display:flex;flex-direction:column;gap:6px}.filter-field-label{font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1.2px;color:#ffffff80}.filter-field-input,.filter-field-select{background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffd9;font-size:14px;padding:8px 12px;outline:none;transition:all .3s ease;width:100%;box-sizing:border-box}.filter-field-input::placeholder{color:#fff6}.filter-field-input:focus,.filter-field-select:focus{border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff1a}.filter-field-dropdown{width:100%}.filter-field-date{color-scheme:dark}.filter-field-toggle-group{display:flex;gap:0;border:1px solid rgba(205,67,255,.2);border-radius:8px;overflow:hidden;background:#00000080}.filter-field-toggle-btn{flex:1;padding:7px 12px;background:transparent;border:none;border-right:1px solid rgba(205,67,255,.15);color:#fff9;font-family:var(--font-primary);font-size:12px;font-weight:500;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;white-space:nowrap}.filter-field-toggle-btn:last-child{border-right:none}.filter-field-toggle-btn:hover:not(.active){color:#fffc;background:#cd43ff14}.filter-field-toggle-btn.active{color:#cd43ff;background:#cd43ff26;font-weight:400;border-color:#cd43ff66}.filter-genre-count{margin-left:8px;color:#cd43ff99;font-weight:500;font-size:10px}.filter-genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.filter-genre-pill{display:flex;align-items:center;justify-content:center;padding:8px 10px;border-radius:20px;border:1px solid rgba(205,67,255,.3);background:#cd43ff14;color:#d8b4fecc;font-family:var(--font-primary);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;text-align:center;min-height:36px}.filter-genre-pill:hover{border-color:#cd43ff99;background:#cd43ff26;color:#cd43ff}.filter-genre-pill.selected-main{background:#ff43cd33;border-color:#ff43cd80;color:#ff43cd;box-shadow:0 0 12px #ff43cd26}.filter-genre-pill.selected-sub{background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff;box-shadow:0 0 12px #cd43ff26}.advanced-search-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;animation:advSearchFadeIn .2s ease}@keyframes advSearchFadeIn{0%{opacity:0}to{opacity:1}}.advanced-search-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:12px;box-shadow:0 0 20px #cd43ff33;width:480px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;animation:advSearchSlideIn .3s ease}@keyframes advSearchSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.advanced-search-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(205,67,255,.15)}.advanced-search-title{font-family:var(--font-primary);font-size:18px;font-weight:400;text-transform:uppercase;letter-spacing:1.5px;color:#cd43ff;margin:0}.advanced-search-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid rgba(205,67,255,.15);border-radius:8px;color:#ffffff80;cursor:pointer;transition:all .2s ease;padding:0}.advanced-search-close-btn:hover{color:#ff43cd;border-color:#ff43cd66;background:#ff43cd1a}.advanced-search-body{padding:20px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.advanced-search-body::-webkit-scrollbar{width:6px}.advanced-search-body::-webkit-scrollbar-track{background:transparent}.advanced-search-body::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.advanced-search-body::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.advanced-search-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px 20px;border-top:1px solid rgba(205,67,255,.15)}.advanced-search-clear-btn{padding:10px 18px;background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:10px;color:#fff9;font-family:var(--font-primary);font-size:13px;font-weight:500;letter-spacing:.8px;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.advanced-search-clear-btn:hover:not(:disabled){color:#ffffffd9;border-color:#cd43ff66;background:#cd43ff14}.advanced-search-clear-btn:disabled{opacity:.3;cursor:not-allowed}.advanced-search-apply-btn{padding:10px 24px;background:linear-gradient(135deg,#cd43ff,#7b1fa2);border:none;border-radius:10px;color:#fff;font-family:var(--font-primary);font-size:13px;font-weight:400;letter-spacing:.8px;text-transform:uppercase;cursor:pointer;transition:all .3s ease;box-shadow:0 0 10px #cd43ff33}.advanced-search-apply-btn:hover{background:linear-gradient(135deg,#e056ff,#9c27b0);box-shadow:0 0 20px #cd43ff4d}.advanced-search-apply-count{margin-left:6px;opacity:.8;font-weight:500}.world-card{width:100%;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;overflow:hidden;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;min-height:400px;display:flex;flex-direction:column}.world-card:hover{transform:translateY(-5px);border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33;cursor:pointer}.world-card-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;border-radius:12px;overflow:hidden}.world-card-background img{width:100%;height:100%;object-fit:cover;object-position:top center}.world-card-background.clickable{cursor:pointer}.world-card-background.clickable:hover:after{content:"📷";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:32px;background:#0009;border-radius:50%;width:60px;height:60px;display:flex;align-items:center;justify-content:center;opacity:.9}.world-card-content{position:relative;z-index:2;width:100%;flex:1;display:flex;flex-direction:column;min-height:0}.world-image-upload-area{position:absolute;bottom:10px;left:50%;transform:translate(-50%);cursor:pointer;z-index:10;opacity:0;transition:opacity .3s ease}.world-card:hover .world-image-upload-area{opacity:1}.world-card .role-badge{position:absolute;top:10px;left:10px;padding:4px 12px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;transition:all .3s ease}.world-card .role-badge.creator{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3);box-shadow:0 2px 10px #43ff974d}.world-card .role-badge.creator.clickable{cursor:pointer;transition:all .3s ease}.world-card .role-badge.creator.clickable:hover{background:#43ff9766;transform:scale(1.05);box-shadow:0 4px 15px #43ff9780}.world-card .role-badge.denizen{background:#ffd70033;color:gold;border:1px solid rgba(255,215,0,.3);box-shadow:0 2px 10px #ffd7004d}.world-card .role-badge.denizen.clickable{cursor:pointer;transition:all .3s ease}.world-card .role-badge.denizen.clickable:hover{background:#ffd70066;transform:scale(1.05);box-shadow:0 4px 15px #ffd70080}.world-card .role-badge.alien{background:#dc143c33;color:#ff4500;border:1px solid rgba(220,20,60,.3);box-shadow:0 2px 10px #dc143c4d}.world-card .role-badge.alien.clickable{cursor:pointer;transition:all .3s ease}.world-card .role-badge.alien.clickable:hover{background:#dc143c66;transform:scale(1.05);box-shadow:0 4px 15px #dc143c80}.world-card-header{position:relative;height:150px;background:linear-gradient(135deg,#cd43ff1a,#7b1fa21a);transition:all .3s ease}.world-card-header.clickable{cursor:pointer}.world-card-header.clickable:hover .image-overlay{opacity:1!important}.world-card-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.world-card-image img{width:100%;height:100%;object-fit:contain;object-position:center}.image-placeholder.clickable{cursor:pointer;transition:background .2s ease}.image-placeholder.clickable:hover{background:linear-gradient(135deg,#cd43ff59,#7b1fa259)}.world-initials{font-size:72px;color:#cd43ff66;font-family:var(--font-primary);font-weight:300;letter-spacing:4px;text-shadow:0 0 20px rgba(205,67,255,.5);text-transform:none!important}.world-card .type-badge{position:absolute;top:10px;left:50%;transform:translate(-50%);padding:4px 12px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.world-card .type-badge.open{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.world-card .type-badge.closed{background:#f003;color:#f44;border:1px solid rgba(255,0,0,.3)}.world-card .type-badge.restricted{background:#ffa50033;color:orange;border:1px solid rgba(255,165,0,.3)}.world-card .lore-badge{position:absolute;top:10px;right:10px;padding:4px 12px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.world-card .lore-badge.free-for-all{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.world-card .lore-badge.by-approval{background:#ffa50033;color:orange;border:1px solid rgba(255,165,0,.3)}.world-card .lore-badge.off-limits{background:#f003;color:#f44;border:1px solid rgba(255,0,0,.3)}.world-card .lore-badge.not-set{background:#80808033;color:gray;border:1px solid rgba(128,128,128,.3)}.world-card-body{padding:20px;background:linear-gradient(to bottom,#0003,#0006);margin-top:auto;position:relative}.world-name-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;pointer-events:auto;position:relative;z-index:10}.world-name{margin:0;font-family:var(--font-primary);font-size:20px;font-weight:400;color:#fffffff2;letter-spacing:.5px}.world-card-info-button{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#cd43ff99;cursor:pointer;transition:all .2s;padding:0;pointer-events:auto;position:relative;z-index:10}.world-card-info-button:hover{color:#cd43ff;transform:scale(1.15)}.world-card-info-button svg{width:18px;height:18px}.card-genre-badges{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.world-game-system{margin:-4px 0 12px;font-size:14px;color:#ffffffe6;font-style:normal;opacity:.9}.world-world{margin:0 0 16px;font-size:14px;color:#fff9;font-style:normal}.world-stats{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:0;padding-top:16px;border-top:1px solid rgba(205,67,255,.1)}.world-stats .stat{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px;color:#ffffffb3;flex-shrink:0;white-space:nowrap}.world-stats svg:not(.trash-svg){color:#cd43ff99}.world-stats .stat.stat-multiline{flex-direction:row;align-items:flex-start;flex:1;min-width:0}.world-stats .stat-content{display:flex;flex-direction:column;gap:2px}.world-stats .stat-line-2{font-size:13px}.world-stats .stat-count-green{color:#43ff97!important;font-size:13px;font-weight:400}.world-stats .stat-count-yellow{color:gold!important;font-size:13px;font-weight:400}.world-stats .stat-count-red{color:#ff4500!important;font-size:13px;font-weight:400}.world-actions{display:flex;justify-content:center;gap:10px;margin-top:10px;position:relative;z-index:10}.world-actions .explore-btn{min-width:120px}.empty-state-card{grid-column:span 3;background:linear-gradient(135deg,#000000e6,#14001ee6);border:2px dashed rgba(205,67,255,.3);border-radius:12px;padding:60px 40px;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.empty-state-content h3{font-family:var(--font-primary);font-size:28px;color:#cd43ff;margin-bottom:20px;font-weight:400;letter-spacing:1px}.world-restriction-notice{font-size:14px;color:#ffffffb3;line-height:1.6;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto;font-style:normal}.empty-state-buttons{display:flex;gap:20px;justify-content:center}.agent-icon{position:relative;background:#cd43ff1a;border:1px solid #CD43FF;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden;flex-shrink:0}.agent-icon:hover{background:#cd43ff33;border-color:#d855ff;transform:scale(1.1)}.agent-icon:active{transform:scale(1)}.agent-icon.size-small{width:24px;height:24px;min-width:24px;min-height:24px;border-radius:4px}.agent-icon.size-normal{width:32px;height:32px;min-width:32px;min-height:32px}.agent-icon.size-large{width:48px;height:48px;min-width:48px;min-height:48px}.agent-icon-portrait{width:100%;height:100%;object-fit:cover;display:block;transition:all .2s}.agent-icon.inactive{border-color:#ff43cd80;background:#ff43cd0d}.agent-icon.inactive:hover{border-color:#ff43cdb3;background:#ff43cd1a}.agent-icon.available{border-color:#cd43ff;background:#cd43ff1a}.agent-icon.available:hover{border-color:#d855ff;background:#cd43ff33}.agent-icon.analyzing{border-color:#06b6d4;background:#06b6d426;cursor:wait;animation:agent-pulse-analyzing 1.5s ease-in-out infinite}.agent-icon.analyzing:hover{transform:none}.agent-icon.monitoring{border-color:#06b6d4;background:#06b6d426;cursor:pointer;box-shadow:0 0 10px #06b6d466}.agent-icon.monitoring:hover{background:#06b6d440;box-shadow:0 0 15px #06b6d480}.agent-icon.queued{border-color:#06b6d480;background:#06b6d40d;cursor:pointer;animation:agent-pulse-queued 2.5s ease-in-out infinite}.agent-icon.queued:hover{border-color:#06b6d4;background:#06b6d41f}.agent-icon.stale{border-color:orange;background:#ffa5001a}.agent-icon.stale:hover{border-color:#ffb833;background:#ffa50033}.agent-icon.error{border-color:#d9534f;background:#d9534f1a}.agent-icon.error:hover{border-color:#e06b68;background:#d9534f26}.agent-icon.locked{border-color:#cd43ff26;background:#cd43ff0d;cursor:not-allowed;opacity:.5}.agent-icon.locked:hover{transform:none;border-color:#cd43ff26;background:#cd43ff0d}.agent-icon.locked .agent-icon-portrait{filter:grayscale(100%)}.agent-icon.active-panel{box-shadow:0 0 12px #cd43ff66}@keyframes agent-pulse-analyzing{0%,to{opacity:1;box-shadow:0 0 10px #06b6d466}50%{opacity:.6;box-shadow:0 0 20px #06b6d499}}@keyframes agent-pulse-queued{0%,to{opacity:1;box-shadow:0 0 8px #06b6d433}50%{opacity:.7;box-shadow:0 0 14px #06b6d466}}.agent-icon.profile-herodotus-icon{width:36px;height:36px;min-width:36px;min-height:36px}.gm-notes-editor{margin-top:28px;padding-top:24px;border-top:1px solid rgba(205,67,255,.15)}.gm-notes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.gm-notes-title-row{display:flex;align-items:center;gap:8px}.gm-notes-title{font-size:11px;font-weight:400;color:#cd43ffcc;margin:0;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary)}.gm-notes-info-icon{display:flex;align-items:center;justify-content:center;color:#cd43ff80;cursor:help;transition:color .2s ease}.gm-notes-info-icon:hover{color:#cd43ffe6}.gm-notes-info-icon svg{width:14px;height:14px}.gm-notes-textarea{width:100%;padding:14px 16px;background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:10px;color:#ffffffe6;font-size:14px;font-family:inherit;line-height:1.7;resize:vertical;min-height:120px;transition:all .3s ease}.gm-notes-textarea::placeholder{color:#ffffff4d;font-style:normal}.gm-notes-textarea:focus{outline:none;border-color:#cd43ff66;box-shadow:0 0 0 2px #cd43ff1a,0 0 20px #cd43ff1a}.gm-notes-textarea:read-only{opacity:.6;cursor:default}.gm-notes-hint{font-size:11px;color:#ffffff59;margin:10px 0 0;font-style:normal}.gm-notes-save-row{display:flex;justify-content:flex-end;margin-top:12px}.agent-analysis-layout{display:flex;flex-direction:column;font-family:var(--font-primary)}.agent-analysis-modal{background:#0c0814f7;border:2px solid #CD43FF;border-radius:12px;width:90%;height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #cd43ff4d;animation:slideUp .3s ease}.agent-analysis-panel{flex:1;overflow:hidden}.agent-analysis-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid rgba(205,67,255,.3)}.agent-analysis-title-section{display:flex;align-items:center;gap:16px}.agent-analysis-portrait{width:48px;height:48px;border-radius:50%;border:2px solid #CD43FF;object-fit:cover}.agent-analysis-title-text h2{margin:0;color:#fffffff2;font-size:24px;font-weight:400}.agent-analysis-subtitle{margin:4px 0 0;color:#cd43ffb3;font-size:13px;font-weight:400}.agent-analysis-analyzed-at{font-size:11px;color:#fff6;margin-top:2px}.agent-analysis-header-actions{display:flex;align-items:center;gap:8px}.agent-analysis-header-actions .action-icon.edit-icon{padding:4px;background:transparent;border:none;outline:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.agent-analysis-header-actions .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.agent-analysis-body{flex:1;overflow-y:auto;padding:24px;background:linear-gradient(180deg,rgba(205,67,255,.02) 0%,transparent 50%)}.agent-analysis-body .story-section,.agent-analysis-body .story-campaign-card,.agent-analysis-body .season-card,.agent-analysis-body .act-item,.agent-analysis-body .character-arc-item{animation:none}.agent-analysis-gm-notes{margin-top:24px;border-top:1px solid rgba(205,67,255,.1);padding-top:16px}.agent-analysis-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(205,67,255,.15);gap:12px}.agent-analysis-footer-left{display:flex;gap:8px;align-items:center}.agent-analysis-footer-right{display:flex;gap:8px;align-items:center;margin-left:auto}.agent-analysis-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px}.agent-analysis-loading-text{color:#fff9;font-size:13px;font-weight:400}.agent-analysis-body::-webkit-scrollbar{width:8px}.agent-analysis-body::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.agent-analysis-body::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.agent-analysis-body::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.character-card{width:100%;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;overflow:hidden;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;min-height:400px;display:flex;flex-direction:column}.character-card:hover{transform:translateY(-5px);border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33}.character-card-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;border-radius:12px;overflow:hidden}.character-card-background img{width:100%;height:100%;object-fit:cover;object-position:top center}.character-placeholder-bg{width:100%;height:100%;background:linear-gradient(135deg,#cd43ff33,#7b1fa233);display:flex;align-items:center;justify-content:center}.character-initials{font-size:72px;color:#cd43ff66;font-family:var(--font-primary);font-weight:300;letter-spacing:4px;text-shadow:0 0 20px rgba(205,67,255,.5);text-transform:none!important}.character-card-content{position:relative;z-index:2;width:100%;flex:1;display:flex;flex-direction:column;min-height:0}.character-level-badge{position:absolute;top:10px;right:10px;background:linear-gradient(135deg,#ffd7004d,#ff8c004d);color:gold;padding:4px 10px;border-radius:20px;font-size:12px;font-family:var(--font-primary);font-weight:400;border:1px solid rgba(255,215,0,.5)}.character-card .role-badge{position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.character-card .role-badge.creator{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.character-card .role-badge.creator.clickable{cursor:pointer;transition:all .3s ease}.character-card .role-badge.creator.clickable:hover{background:#43ff974d;transform:scale(1.05)}.character-card .role-badge.progression{left:auto;right:10px}.character-card .role-badge.progression.legit{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.character-card .role-badge.progression.boosted{background:#dc143c33;color:#ff4500;border:1px solid rgba(220,20,60,.3)}.character-card .role-badge.progression.clickable{cursor:pointer;transition:all .3s ease}.character-card .role-badge.progression.clickable:hover{transform:scale(1.05)}.character-card .role-badge.progression.legit.clickable:hover{background:#43ff974d}.character-card .role-badge.progression.boosted.clickable:hover{background:#dc143c4d}.character-card.clickable{cursor:pointer}.character-card-body{padding:20px;background:linear-gradient(to bottom,#0003,#0006);margin-top:auto;display:flex;flex-direction:column;gap:8px}.character-name-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.character-name-row-spacer{flex:1}.character-hidden-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:20px;font-family:var(--font-primary);font-size:11px;font-weight:400;font-style:normal;text-transform:uppercase;letter-spacing:1px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#80808033;color:gray;border:1px solid rgba(128,128,128,.3);min-width:75px;text-align:center}.character-card .character-name{margin:0;font-family:var(--font-primary);font-size:20px;font-weight:400;color:#fffffff2;letter-spacing:.5px}.character-card-info-button{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#cd43ff99;cursor:pointer;padding:0;transition:all .2s ease}.character-card-info-button:hover{color:#cd43ff;transform:scale(1.15)}.character-card-info-button svg{width:18px;height:18px}.character-game-link{display:block;color:#ffffffe6;cursor:pointer;text-decoration:none;font-size:14px;font-style:normal;transition:all .2s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;margin:-4px 0 12px;opacity:.9}.character-game-link:hover{color:#cd43ff;opacity:1}.character-orphan-label{display:block;color:#ffffff80;font-size:12px;text-align:left;margin-bottom:8px}.character-stats{display:flex;align-items:flex-start;gap:20px;padding-top:16px;border-top:1px solid rgba(205,67,255,.1)}.character-stats .stat{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px;color:#ffffffb3;flex-shrink:0;white-space:nowrap}.character-stats .stat svg:not(.trash-svg){flex-shrink:0;color:#cd43ff99}.health-bar{position:relative;width:120px;height:18px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:10px;overflow:hidden}.health-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#f44,#f66);transition:width .3s ease}.health-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.8);font-weight:400}.character-action-btn{flex:1;padding:6px 12px;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;font-family:var(--font-primary);font-size:11px;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .3s ease}.character-action-btn:hover{background:#cd43ff1a;border-color:#cd43ff80;transform:translateY(-1px)}.character-action-btn.play{background:#cd43ff0d}.character-card-herodotus-icon{position:absolute;top:10px;right:10px;z-index:10}.character-card .dreamer-actions{display:inline;margin-left:6px}.character-card .dreamer-icon{cursor:pointer;margin-left:4px;font-size:12px;opacity:.7;transition:all .2s ease;vertical-align:text-bottom;display:inline-flex;align-items:center}.character-card .dreamer-actions .trash-icon{width:auto;height:auto;padding:0;margin-left:4px;vertical-align:middle}.character-card .dreamer-actions .trash-icon .trash-svg{width:13px;height:13px}.character-card .dreamer-icon svg{display:block}.character-card .dreamer-icon:hover{opacity:1;transform:scale(1.2)}.character-card .dreamer-icon:not(.dreamer-trash){color:#cd43ff}.character-card .dreamer-icon.dreamer-trash{color:#ff43cd!important}.character-card .dreamer-icon.dreamer-trash svg{fill:#ff43cd!important}.grant-slot-card{background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px;padding:16px;margin-bottom:12px;position:relative;transition:border-color .2s ease}.grant-slot-card:hover{border-color:#cd43ff40}.grant-slot-card .slot-name-input{font-family:var(--font-primary);font-size:.95rem;font-weight:400;color:#cd43ff;background:transparent;border:none;border-bottom:1px solid rgba(205,67,255,.2);width:100%;outline:none;transition:border-color .2s ease}.grant-slot-card .slot-name-input:focus{border-bottom-color:#cd43ff}.grant-slot-card .slot-name-input::placeholder{color:#cd43ff4d}.grant-slot-field{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#00000026;border-radius:6px;border:1px dashed rgba(205,67,255,.15);margin-top:12px}.grant-slot-field-label{font-family:var(--font-primary);font-size:.75rem;color:#fff6;text-transform:uppercase;letter-spacing:.5px;min-width:40px}.grant-slot-field-value{flex:1;font-family:var(--font-primary);font-size:.85rem;color:#fffc}.grant-slot-field-value.not-linked{color:#ffffff4d}.grant-slot-card .slot-delete-wrapper{position:absolute;top:8px;right:8px}.progression-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10100}.progression-modal{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:720px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0009,0 0 60px #cd43ff1a}.progression-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.15)}.progression-modal-header h2{margin:0;font-size:1.1rem;font-family:var(--font-primary);color:#ffffffe6;letter-spacing:.5px}.progression-modal-close{background:none;border:none;color:#cd43ff99;font-size:1.5rem;cursor:pointer;padding:0 4px;line-height:1;transition:color .2s}.progression-modal-close:hover{color:#cd43ff}.progression-modal-body{padding:12px 20px 20px;overflow-y:auto;flex:1}.progression-loading,.progression-empty{display:flex;align-items:center;justify-content:center;min-height:120px;color:#ffffff80;font-family:var(--font-primary)}.progression-list-header{display:grid;grid-template-columns:100px 1fr 70px 120px 1fr;gap:8px;padding:8px 10px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#cd43ff99;border-bottom:1px solid rgba(205,67,255,.15);font-family:var(--font-primary)}.progression-row{display:grid;grid-template-columns:100px 1fr 70px 120px 1fr;gap:8px;padding:8px 10px;font-size:.82rem;color:#ffffffe6;font-family:var(--font-primary);transition:background .15s}.progression-row.odd{background:#cd43ff08}.progression-row:hover{background:#cd43ff14}.progression-col-date{white-space:nowrap;font-size:.78rem;color:#ffffff80}.progression-col-pool{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progression-col-amount{font-weight:600;text-align:right}.progression-col-amount.positive{color:#43ff97}.progression-col-amount.negative{color:#ff4500}.progression-col-grantor{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffffffb3}.progression-col-note{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;color:#fff6;font-style:italic}.sheet-card{width:100%;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;overflow:visible;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;min-height:400px;display:flex;flex-direction:column;cursor:pointer}.sheet-card:hover{transform:translateY(-5px);border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33}.sheet-card-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;border-radius:12px;overflow:hidden}.sheet-card-background img{width:100%;height:100%;object-fit:cover;object-position:top center}.sheet-card-content{position:relative;z-index:2;width:100%;flex:1;display:flex;flex-direction:column;min-height:0}.sheet-card-body{width:100%;padding:20px;background:linear-gradient(to bottom,#0003,#0006);margin-top:auto;position:relative;z-index:2;box-sizing:border-box}.image-placeholder{position:absolute;top:0;left:0;right:0;height:150px;background:linear-gradient(135deg,#cd43ff33,#7b1fa233);display:flex;align-items:flex-start!important;justify-content:center;padding-top:100px!important;z-index:1}.sheet-initials{font-size:72px;color:#cd43ff66;font-family:var(--font-primary);font-weight:300;letter-spacing:4px;text-shadow:0 0 20px rgba(205,67,255,.5);text-transform:none!important}.permission-button{position:absolute;padding:4px 8px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;border:none;cursor:pointer;transition:all .3s ease;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:75px;text-align:center}.permission-button:hover{transform:scale(1.05);box-shadow:0 4px 15px #0000004d}.permission-button.clone{top:10px;left:50%;transform:translate(-50%)}.permission-button.clone:hover{transform:translate(-50%) scale(1.05)}.permission-button.edit{top:10px;right:10px}.permission-button.clonable,.permission-button.editable{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.permission-button.non-clonable,.permission-button.fixed{background:#dc143c33;color:#ff4500;border:1px solid rgba(220,20,60,.3)}.sheet-card .role-badge{position:absolute;top:10px;left:10px;padding:4px 12px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;transition:all .3s ease}.sheet-card .role-badge.creator{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3);box-shadow:0 2px 10px #43ff974d}.sheet-card .role-badge.creator.clickable{cursor:pointer;transition:all .3s ease}.sheet-card .role-badge.creator.clickable:hover{background:#43ff9766;transform:scale(1.05);box-shadow:0 4px 15px #43ff9780}.sheet-name-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;pointer-events:auto;position:relative;z-index:10;width:100%}.sheet-name-row-spacer{flex:1}.sheet-use-badge{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px 8px;border-radius:20px;font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;min-width:75px;text-align:center;flex-shrink:0;margin-right:-10px}.use-badge-label{line-height:1}.use-badge-open{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.use-badge-restricted{background:#dc143c33;color:#ff4500;border:1px solid rgba(220,20,60,.3)}.sheet-title{margin:0;font-family:var(--font-primary);font-size:20px;font-weight:400;color:#fffffff2;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px;min-width:0}.sheet-restrictions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.restriction-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:400;letter-spacing:.3px;font-family:inherit;cursor:default}.restriction-tag.clickable{cursor:pointer;transition:all .2s ease}.restriction-tag.system{background:#cd43ff33;border:1px solid rgba(205,67,255,.4);color:#cd43fff2}.restriction-tag.system.clickable:hover{background:#cd43ff59;border-color:#cd43ff99;transform:translateY(-1px)}.restriction-tag.world{background:#64b4ff33;border:1px solid rgba(100,180,255,.4);color:#64b4fff2}.restriction-tag.world.clickable:hover{background:#64b4ff59;border-color:#64b4ff99;transform:translateY(-1px)}.restriction-tag.game{background:#64ff9633;border:1px solid rgba(100,255,150,.4);color:#64ff96f2}.restriction-tag.game.clickable:hover{background:#64ff9659;border-color:#64ff9699;transform:translateY(-1px)}.sheet-card-info-button{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#cd43ff99;cursor:pointer;padding:0;transition:all .2s ease}.sheet-card-info-button:hover{color:#cd43ff;transform:scale(1.15)}.sheet-card-info-button svg{width:18px;height:18px}.sheet-stats{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:0;padding-top:16px;border-top:1px solid rgba(205,67,255,.1)}.sheet-stats .stat{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px;color:#ffffffb3;flex-shrink:0;white-space:nowrap}.sheet-stats .stat svg:not(.trash-svg){flex-shrink:0;color:#cd43ff99}.sheet-stats .stat.stat-multiline{flex-direction:row;align-items:flex-start;flex:1;min-width:0}.sheet-stats .stat-content{display:flex;flex-direction:column;gap:2px}.sheet-stats .stat-line-2{font-size:13px}.sheet-stats .stat-count-green{color:#43ff97!important;font-size:13px;font-weight:400}.sheet-stats .stat-count-yellow{color:gold!important;font-size:13px;font-weight:400}.sheet-stats .stat-count-red{color:#ff4500!important;font-size:13px;font-weight:400}@media (max-width: 768px){.sheet-card{padding:2.5rem 1rem 1rem}.sheet-title{font-size:1.2rem}}.popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.popup-container{background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:12px;min-width:400px;max-width:500px;max-height:80vh;overflow:hidden;box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideUp .3s ease-out}.popup-header{padding:20px 24px;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.2);display:flex;align-items:center;gap:15px}.popup-logo{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(205,67,255,.5))}.popup-title{margin:0;font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.5)}.popup-content{padding:24px;background:#cd43ff05}.popup-message{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.6;color:#ffffffe6;text-align:center}.popup-actions{padding:16px 24px;background:#cd43ff0d;border-top:1px solid rgba(205,67,255,.2);display:flex;justify-content:center;gap:12px}.popup-button{min-width:100px;padding:10px 24px;font-family:var(--font-primary);font-size:14px;font-weight:400;letter-spacing:1px;border-radius:12px;cursor:pointer;transition:all .3s ease;text-transform:uppercase}.popup-button-primary{background:#000000e6;border:.25px solid rgba(205,67,255,.3);color:#cd43ff}.popup-button-primary:hover{background:#cd43ff1a;border-color:#cd43ff80;transform:translateY(-1px);box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33}.popup-button-secondary{background:#000000e6;border:.25px solid rgba(205,67,255,.2);color:#cd43ffcc}.popup-button-secondary:hover{color:#cd43ff;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff26;transform:translateY(-1px)}.popup-success .popup-header{background:#cd43ff14}.popup-success .popup-title{color:#cd43ff}.popup-error .popup-header{background:#ff434314}.popup-error .popup-title{color:#ff4343;text-shadow:0 0 20px rgba(255,67,67,.5)}.popup-warning .popup-header{background:#ff43cd14}.popup-warning .popup-title{color:#ff43cd;text-shadow:0 0 20px rgba(255,67,205,.5)}.popup-content::-webkit-scrollbar{width:8px}.popup-content::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.popup-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.popup-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}@media (max-width: 600px){.popup-container{min-width:90%;max-width:90%;margin:20px}.popup-content{padding:20px}.popup-message{font-size:14px}}.image-cropper-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.image-cropper-modal{background:linear-gradient(135deg,#1a1a2efa,#101020fa);border:1px solid rgba(205,67,255,.3);border-radius:16px;padding:24px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;gap:20px;box-shadow:0 20px 60px #cd43ff4d}.cropper-header{text-align:center}.cropper-header h3{color:#cd43ff;font-family:var(--font-primary);font-size:22px;font-weight:400;margin:0 0 8px;letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.3)}.cropper-header p{color:#cd43ffb3;font-size:14px;margin:0}.cropper-main{display:flex;align-items:center;gap:30px;width:100%}.cropper-controls-left{display:flex;flex-direction:column;gap:16px}.cropper-container{display:flex;flex-direction:column;gap:16px;align-items:center;flex:0 0 auto}.cropper-controls-right{display:flex;flex-direction:column;gap:12px}.cropper-frame{width:480px;aspect-ratio:320 / 400;max-width:90vw;background:#000;border:2px solid rgba(205,67,255,.5);border-radius:8px;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none}.cropper-image{position:absolute;top:0;left:0;transform-origin:top left;transition:transform .1s ease;max-width:none;pointer-events:none}.cropper-frame-overlay{position:absolute;top:0;left:0;right:0;bottom:0;border:2px solid rgba(205,67,255,.5);pointer-events:none;z-index:1;box-shadow:inset 0 0 30px #cd43ff1a}.zoom-controls{display:flex;flex-direction:column;align-items:center;gap:8px;background:#00000080;padding:12px;border-radius:8px;border:1px solid rgba(205,67,255,.2)}.zoom-btn{min-width:50px;height:32px;border-radius:8px;border:1px solid rgba(205,67,255,.3);background:#cd43ff1a;color:#cd43ff;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;padding:0 8px}.zoom-btn:hover{background:#cd43ff33;border-color:#cd43ff80;transform:scale(1.1)}.zoom-input-wrapper{display:flex;align-items:center;background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.zoom-input{width:50px;height:30px;background:transparent;border:none;color:#cd43ff;font-size:14px;font-weight:500;text-align:center;padding:0 4px;outline:none}.zoom-input-wrapper:focus-within{border-color:#cd43ff80;background:#cd43ff0d}.zoom-input::-webkit-inner-spin-button,.zoom-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.zoom-percent{color:#cd43ff;font-size:14px;font-weight:500;padding-right:8px;opacity:.7}.cropper-uploading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:100;border-radius:16px}.cropper-uploading-message{display:flex;flex-direction:column;align-items:center;gap:16px}.cropper-uploading-message p{color:#cd43ff;font-size:16px;font-weight:500;margin:0;text-shadow:0 0 10px rgba(205,67,255,.5)}@media (pointer: coarse){.cropper-frame{touch-action:none}.zoom-btn{width:40px;height:40px;font-size:24px}}.empty-state-container{position:fixed;top:450px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:120px;padding:24px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;max-width:520px;width:fit-content;min-width:300px;box-sizing:border-box;text-align:center;z-index:1}.empty-state-container.empty-state-inline{position:static;transform:none;margin:60px auto;width:100%;max-width:480px}.empty-state-icon{font-size:48px;opacity:.6;line-height:1}.empty-state-message{font-family:var(--font-primary);font-size:16px;font-style:normal;color:#cd43ff;line-height:1.6;margin:0;max-width:500px}.empty-state-message:empty{display:none}.empty-state-hint{font-family:var(--font-primary);font-size:16px;color:#cd43ff;line-height:1.5;margin:0;max-width:400px}.empty-state-actions{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:8px}.empty-state-tips{font-family:var(--font-primary);font-size:13px;color:#cd43ff;line-height:1.5;margin:8px 0 0;max-width:400px;text-align:center;white-space:pre-line}.users-list-modal{background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:16px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080,0 0 100px #cd43ff33;animation:slideUp .3s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:.25px solid rgba(205,67,255,.2)}.modal-title{font-family:var(--font-primary);color:#cd43ff;font-size:24px;font-weight:500;letter-spacing:1px;margin:0}.modal-content{flex:1;overflow-y:auto;padding:24px 0;width:auto!important;max-width:none!important}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.empty-message{text-align:center;font-family:var(--font-primary);font-style:normal;color:#cd43ffb3;font-size:18px;font-weight:500;letter-spacing:.5px;padding:40px 20px}.users-list{display:flex;flex-direction:column;gap:12px;padding:0 24px;width:100%!important;max-width:none!important}.user-item{display:flex;align-items:center;gap:16px;padding:16px;background:#cd43ff0d;border:.25px solid rgba(205,67,255,.2);border-radius:12px;transition:all .2s ease}.user-item:hover{background:#cd43ff1a;border-color:#cd43ff66;transform:translate(4px)}.user-number{font-family:var(--font-primary);color:#cd43ff99;font-size:16px;font-weight:400;min-width:32px;text-align:right}.user-avatar-component{flex-shrink:0}.user-info-component{flex:1}.modal-footer{display:flex;justify-content:flex-end;padding:24px;border-top:.25px solid rgba(205,67,255,.2)}.custom-checkbox{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.custom-checkbox:focus{outline:none}.custom-checkbox:focus-visible .checkbox-box{box-shadow:0 0 0 2px #cd43ff66}.checkbox-box{width:14px;height:14px;border:2px solid rgba(205,67,255,.4);border-radius:4px;background:#0000004d;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:relative}.custom-checkbox:hover .checkbox-box{border-color:#cd43ff99;background:#cd43ff0d}.custom-checkbox.checked .checkbox-box{background:linear-gradient(135deg,#cd43ff,#7b1fa2);border-color:#cd43ff}.custom-checkbox.checked:hover .checkbox-box{background:linear-gradient(135deg,#e055ff,#8e24aa);border-color:#e055ff}.checkbox-check{color:#fff;animation:checkmark-appear .2s ease}@keyframes checkmark-appear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.custom-checkbox.disabled{cursor:not-allowed;opacity:.7}.custom-checkbox.disabled .checkbox-box{border-color:#cd43ff4d}.custom-checkbox.disabled.checked .checkbox-box{border-color:#cd43ff80;background:#cd43ff26}.custom-checkbox.disabled:hover .checkbox-box{border-color:#cd43ff4d}.custom-checkbox.has-label{gap:10px}.checkbox-label{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#fffc;letter-spacing:.5px;line-height:1}.analytics-view{display:flex;flex-direction:column;gap:20px;padding:10px 0}.analytics-loading,.analytics-error{text-align:center;padding:40px;color:#ffffff80;font-family:var(--font-primary);font-size:14px}.analytics-cards{display:flex;gap:16px}.analytics-card{flex:1;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:20px;text-align:center}.analytics-card-value{font-family:var(--font-primary);font-size:1.8rem;font-weight:400;color:#fff;margin-bottom:4px}.analytics-card-label{font-family:var(--font-primary);font-size:.75rem;font-weight:400;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.analytics-card-breakdown{display:flex;justify-content:center;gap:12px;font-family:var(--font-primary);font-size:.75rem;color:#fff6}.breakdown-desktop{color:#cd43ffb3}.breakdown-web{color:#43ff97b3}.analytics-chart-section{background:#0000004d;border:1px solid rgba(205,67,255,.1);border-radius:12px;padding:16px 20px}.analytics-chart-title{font-family:var(--font-primary);font-size:.8rem;color:#fff6;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}.analytics-chart{display:flex;align-items:flex-end;height:100px;gap:2px}.analytics-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;position:relative}.analytics-bar-stack{width:100%;display:flex;flex-direction:column-reverse;border-radius:2px 2px 0 0;overflow:hidden;min-height:2px}.analytics-bar.desktop{background:#cd43ff}.analytics-bar.web{background:#43ff97}.analytics-bar-label{font-family:var(--font-primary);font-size:9px;color:#ffffff4d;margin-top:4px;white-space:nowrap}.analytics-filter-row{display:flex;justify-content:center}.analytics-table-container{overflow-x:auto}.analytics-table{width:100%;border-collapse:collapse;font-family:var(--font-primary);font-size:13px}.analytics-table th{text-align:left;padding:8px 12px;color:#cd43ffb3;font-weight:400;font-size:12px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(205,67,255,.15);white-space:nowrap}.analytics-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.analytics-table th.sortable:hover{color:#cd43ff}.analytics-table td{padding:8px 12px;color:#ffffffb3;border-bottom:1px solid rgba(255,255,255,.05)}.analytics-table tr.online td{color:#ffffffe6}.analytics-table .username-cell{color:#ffffffe6;font-weight:400}.analytics-table .platform-cell{font-size:12px}.analytics-table .platform-cell.desktop{color:#cd43ffb3}.analytics-table .platform-cell.web{color:#43ff97b3}.analytics-table .platform-cell.desktop-web{color:#fff}.analytics-table .claude-cell{font-size:12px;color:#ffffff80}.sub-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.sub-badge.epic{background:#43ff9726;color:#43ff97}.sub-badge.free{background:#ffffff1a;color:#ffffff80}@media (max-width: 768px){.analytics-cards{flex-wrap:wrap}.analytics-card{min-width:140px}}.users-check-modal{background:transparent;border:2px solid rgba(205,67,255,.3);border-radius:12px;max-width:1200px;width:95%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d}.users-check-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2)}.users-check-modal .modal-header h2{font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff;margin:0}.users-check-modal .close-button{background:none;border:none;color:#cd43ffb3;font-size:2rem;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s}.users-check-modal .close-button:hover{color:#cd43ff;transform:scale(1.1)}.users-check-modal .modal-body{padding:20px 24px;overflow-y:auto;flex:1}.users-check-modal .search-bar{margin-bottom:20px;display:flex;gap:12px;align-items:center}.users-check-modal .search-input{flex:1;padding:10px 16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-family:Lato,sans-serif;font-size:.95rem;transition:all .2s}.users-check-modal .bulk-actions{display:flex;gap:8px}.users-check-modal .toggle-premium-btn,.users-check-modal .delete-selected-btn{padding:8px 16px;border-radius:6px;font-family:Lato,sans-serif;font-size:.85rem;font-weight:400;cursor:pointer;transition:all .2s;white-space:nowrap;border:none}.users-check-modal .toggle-premium-btn{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.4)}.users-check-modal .toggle-premium-btn:hover{background:#cd43ff4d;border-color:#cd43ff99}.users-check-modal .delete-selected-btn{background:#ff6b6b33;color:#ff6b6b;border:1px solid rgba(255,107,107,.4)}.users-check-modal .delete-selected-btn:hover{background:#ff6b6b4d;border-color:#ff6b6b99}.users-check-modal .search-input:focus{outline:none;border-color:#cd43ff99;background:#cd43ff26}.users-check-modal .search-input::placeholder{color:#fff6}.users-check-modal .loading-message,.users-check-modal .error-message{text-align:center;padding:40px;font-family:Lato,sans-serif}.users-check-modal .loading-message{color:#cd43ffb3}.users-check-modal .error-message{color:#ff6b6b}.users-check-modal .users-table-container{overflow-x:auto}.users-check-modal .users-table{width:100%;border-collapse:collapse;font-family:Lato,sans-serif;font-size:.9rem}.users-check-modal .users-table thead{border-bottom:2px solid rgba(205,67,255,.3)}.users-check-modal .users-table th{padding:12px 16px;text-align:left;color:#cd43ff;font-family:var(--font-primary);font-weight:400;white-space:nowrap}.users-check-modal .users-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.users-check-modal .users-table th.sortable:hover{color:#e66fff;background:#cd43ff1a}.users-check-modal .users-table th .sort-indicator{font-size:.8em;opacity:.8}.users-check-modal .users-table tbody tr{border-bottom:1px solid rgba(205,67,255,.1);transition:background .2s}.users-check-modal .users-table tbody tr:hover{background:#cd43ff0d}.users-check-modal .users-table td{padding:12px 16px;color:#ffffffd9}.users-check-modal .premium-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:400}.users-check-modal .premium-badge.premium-yes{background:#2ed57333;color:#2ed573;border:1px solid rgba(46,213,115,.4)}.users-check-modal .premium-badge.premium-no{background:#ff6b6b33;color:#ff6b6b;border:1px solid rgba(255,107,107,.4)}.users-check-modal .clickable-badge{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.users-check-modal .clickable-badge:hover{transform:scale(1.05);filter:brightness(1.2);box-shadow:0 2px 8px #0000004d}.users-check-modal .clickable-badge:active{transform:scale(.95)}.users-check-modal .checkbox-column{width:40px;text-align:center}.users-check-modal .users-table{table-layout:fixed}.users-check-modal .users-table th:nth-child(2),.users-check-modal .users-table td:nth-child(2){width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-check-modal .users-table th:nth-child(3),.users-check-modal .users-table td:nth-child(3){width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-check-modal .users-table th:nth-child(4),.users-check-modal .users-table td:nth-child(4){width:110px}.users-check-modal .users-table th:nth-child(5),.users-check-modal .users-table td:nth-child(5){width:60px;text-align:center}.users-check-modal .users-table th:nth-child(6),.users-check-modal .users-table td:nth-child(6){width:70px;text-align:center}.users-check-modal .users-table th:nth-child(7),.users-check-modal .users-table td:nth-child(7){width:95px;white-space:nowrap}.users-check-modal .users-table th:nth-child(8),.users-check-modal .users-table td:nth-child(8){width:95px;white-space:nowrap}.users-check-modal .checkbox-column input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:#CD43FF}.users-check-modal th.actions-column,.users-check-modal td.actions-column{width:60px;text-align:center}.users-check-modal .delete-user-btn{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:4px 8px;transition:all .2s;border-radius:4px}.users-check-modal .delete-user-btn:hover{background:#ff6b6b33;transform:scale(1.1)}.users-check-modal .delete-user-btn:active{transform:scale(.95)}.users-check-modal .selected-row{background:#cd43ff14}.users-check-modal .selected-row:hover{background:#cd43ff1f!important}.users-check-modal .no-results{text-align:center;padding:40px;color:#ffffff80;font-family:Lato,sans-serif}.users-check-modal .modal-footer{padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);display:flex;justify-content:center}.users-check-modal .user-count{color:#cd43ffb3;font-family:var(--font-primary);font-size:.9rem}.users-check-modal .ban-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:400}.users-check-modal .ban-status-none{background:#64646433;color:#888;border:1px solid rgba(100,100,100,.4)}.users-check-modal .ban-status-temporary{background:#f0f3;color:#f0f;border:1px solid rgba(255,0,255,.4)}.users-check-modal .ban-status-permanent{background:#f443;color:#f44;border:1px solid rgba(255,68,68,.4)}.users-check-modal .ban-until-cell{color:#fff9;font-size:.85rem}.users-check-modal .heal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.users-check-modal .heal-loading-text{color:#cd43ffb3;font-family:var(--font-primary);font-size:.95rem;font-weight:400;margin:0}.users-check-modal .heal-status-bar{padding:6px 12px;border-radius:6px;font-size:.8rem;font-weight:400;margin-bottom:12px;text-align:center}.users-check-modal .heal-status-bar.healing{background:#cd43ff1a;color:#cd43ffb3;border:1px solid rgba(205,67,255,.2)}.users-check-modal .heal-status-bar.healed{background:#cd43ff1a;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.users-check-modal .heal-status-bar.healthy{background:#0003;color:#fff6;border:1px solid rgba(205,67,255,.1)}.users-check-modal .heal-status-bar.error{background:#ff43cd1a;color:#ff43cd;border:1px solid rgba(255,67,205,.3)}.users-check-modal .truncated-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.gm-rank-modal{background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:16px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080,0 0 100px #cd43ff33;animation:slideUp .3s ease}.gm-rank-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:.25px solid rgba(205,67,255,.2)}.gm-rank-modal .modal-title{font-family:var(--font-primary);color:#cd43ff;font-size:24px;font-weight:500;letter-spacing:1px;margin:0}.gm-rank-modal .modal-content{flex:1;overflow-y:auto;padding:12px 24px 24px}.gm-rank-modal .modal-content::-webkit-scrollbar{width:8px}.gm-rank-modal .modal-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.gm-rank-modal .modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.gm-rank-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.ranks-list{display:flex;flex-direction:column;gap:8px}.rank-item{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#cd43ff0d;border:.25px solid rgba(205,67,255,.2);border-radius:12px;transition:all .2s ease}.rank-item:hover{background:#cd43ff1a;border-color:#cd43ff66;transform:translate(4px)}.rank-item.user-rank{background:#cd43ff26;border:.25px solid rgba(205,67,255,.5);box-shadow:0 0 20px #cd43ff4d}.rank-number{font-family:var(--font-primary);color:#cd43ff99;font-size:16px;font-weight:400;min-width:32px;text-align:right}.rank-info{flex:1}.rank-name{font-family:var(--font-primary);font-size:16px;font-weight:500;color:#fff;letter-spacing:.5px}.rank-item.user-rank .rank-name{color:#cd43ff}.rank-description{font-size:13px;font-weight:400;color:#cd43ffb3}.rank-badge{padding:4px 12px;background:linear-gradient(135deg,#cd43ff,#a334cc);border-radius:12px;font-size:11px;font-weight:400;color:#fff;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #cd43ff66}@media (max-width: 600px){.gm-rank-modal{width:95%;padding:16px}.gm-rank-modal .modal-title{font-size:20px}.rank-item{padding:12px;gap:12px}.rank-number{font-size:16px;min-width:24px}.rank-name{font-size:16px}.rank-description{font-size:12px}.rank-badge{font-size:10px;padding:3px 8px}}.gm-rank-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 12px;border-radius:12px;border:1px solid;font-weight:400;transition:all .3s ease;white-space:nowrap}.gm-rank-badge--small{font-size:11px;padding:2px 8px;gap:4px;border-radius:8px}.gm-rank-badge--medium{font-size:13px;padding:4px 12px;gap:6px;border-radius:12px}.gm-rank-badge--large{font-size:15px;padding:6px 16px;gap:8px;border-radius:14px}.gm-rank-badge__icon{font-size:1.1em;line-height:1}.gm-rank-badge__text{font-weight:400}.gm-rank-badge__percentile{opacity:.7;font-size:.9em;font-weight:500}.gm-rank-badge:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0003}.gm-leaderboard-modal{background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:16px;width:90%;max-width:700px;height:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080,0 0 100px #cd43ff33;animation:slideUp .3s ease}.gm-leaderboard-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:.25px solid rgba(205,67,255,.2)}.gm-leaderboard-modal .modal-title{font-family:var(--font-primary);color:#cd43ff;font-size:24px;font-weight:500;letter-spacing:1px;margin:0}.view-toggle-container{display:flex;justify-content:center;padding:16px 24px;border-bottom:.25px solid rgba(205,67,255,.2)}.pagination-controls{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 24px;border-top:.25px solid rgba(205,67,255,.2)}.page-indicator{font-family:var(--font-primary);color:#cd43ffcc;font-size:14px;font-weight:500;letter-spacing:.3px}.gm-leaderboard-modal .modal-content{flex:1;overflow-y:auto;padding:24px;width:auto!important;max-width:none!important}.gm-leaderboard-modal .modal-content::-webkit-scrollbar{width:8px}.gm-leaderboard-modal .modal-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.gm-leaderboard-modal .modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.gm-leaderboard-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.empty-message{text-align:center;font-family:var(--font-primary);color:#cd43ff80;font-size:16px;padding:40px 20px}.gm-leaderboard-modal .leaderboard-list{display:flex;flex-direction:column;gap:12px;width:100%!important;max-width:none!important}.gm-leaderboard-modal .leaderboard-item{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:16px 16px 16px 4px!important;background:#cd43ff0d;border:.25px solid rgba(205,67,255,.2);border-radius:12px;transition:all .2s ease;position:relative;width:100%!important;max-width:none!important;box-sizing:border-box}.gm-leaderboard-modal .leaderboard-item:hover{background:#cd43ff1a;border-color:#cd43ff66;transform:translate(4px)}.gm-leaderboard-modal .leaderboard-item.current-user{background:#cd43ff26;border:.25px solid rgba(205,67,255,.5);box-shadow:0 0 20px #cd43ff4d}.rank-position{font-family:var(--font-primary);color:#cd43ff99;font-size:16px;font-weight:400;min-width:32px;text-align:right}.leaderboard-avatar{flex-shrink:0}.gm-leaderboard-modal .leaderboard-user-info{flex:1;min-width:0}.gm-rank-badge{display:flex;align-items:center;justify-content:center;padding:6px 14px;background:#cd43ff1a;border-radius:8px;border:.25px solid rgba(205,67,255,.25);flex-shrink:0;position:absolute;left:50%;transform:translate(-50%)}.rank-value{font-family:var(--font-primary);color:#cd43ffe6;font-size:18px;font-weight:400;letter-spacing:.5px;text-transform:capitalize}.gm-score-badge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;background:linear-gradient(135deg,#cd43ff33,#cd43ff1a);border-radius:10px;border:.25px solid rgba(205,67,255,.3);margin-left:auto!important}.score-value{font-family:var(--font-primary);color:#cd43ff;font-size:20px;font-weight:400;letter-spacing:.5px}.score-label{font-family:var(--font-primary);color:#cd43ff99;font-size:11px;text-transform:uppercase;letter-spacing:1px}.gm-leaderboard-modal .modal-footer{display:flex;justify-content:center;padding:24px;border-top:.25px solid rgba(205,67,255,.2)}@media (max-width: 600px){.gm-leaderboard-modal{width:95%;max-width:none}.gm-leaderboard-modal .leaderboard-item{padding:12px 12px 12px 4px!important;gap:10px!important}.rank-position{font-size:14px;min-width:24px}.gm-rank-badge{padding:5px 10px}.rank-value{font-size:12px}.gm-score-badge{padding:6px 12px}.score-value{font-size:18px}.score-label{font-size:10px}}.tool-proposal-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.tool-proposal-modal{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:16px;max-width:900px;width:100%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #cd43ff4d}.tool-proposal-modal-header{padding:24px;border-bottom:1px solid rgba(205,67,255,.2);display:flex;align-items:center;justify-content:space-between}.tool-proposal-message{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px;border-bottom:1px solid rgba(205,67,255,.2)}.tool-proposal-message--error{background:#f443361a;color:#f44336;border-color:#f443364d}.tool-proposal-message--success{background:#4caf501a;color:#4caf50;border-color:#4caf504d}.tool-proposal-message-close{width:24px;height:24px;border:none;background:transparent;color:currentColor;font-size:24px;line-height:1;cursor:pointer;opacity:.7;transition:opacity .2s ease}.tool-proposal-message-close:hover{opacity:1}.tool-proposal-modal-title{margin:0;font-size:24px;font-weight:400;font-family:var(--font-primary);color:#cd43fff2;letter-spacing:.5px}.tool-proposal-modal-close{width:36px;height:36px;border:none;background:#ffffff0d;color:#ffffffb3;font-size:28px;line-height:1;border-radius:8px;cursor:pointer;transition:all .2s ease}.tool-proposal-modal-close:hover{background:#cd43ff33;color:#fff}.tool-proposal-modal-content{flex:1;overflow-y:auto;padding:24px}.tool-proposal-actions{margin-bottom:24px}.tool-proposal-loading,.tool-proposal-empty{text-align:center;padding:60px 20px;color:#ffffff80;font-size:16px}.tool-proposal-list{display:flex;flex-direction:column;gap:16px}.tool-proposal-item{display:flex;gap:16px;padding:20px;background:#ffffff08;border:1px solid rgba(205,67,255,.1);border-radius:12px;transition:all .2s ease}.tool-proposal-item:hover{background:#ffffff0d;border-color:#cd43ff4d}.tool-proposal-votes{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:50px}.vote-button{width:36px;height:36px;border:1px solid rgba(205,67,255,.3);background:#00000080;color:#ffffff80;font-size:16px;border-radius:6px;cursor:pointer;transition:all .2s ease}.vote-button:hover{background:#cd43ff1a;color:#fff}.vote-button.active.vote-up{background:#4caf5033;border-color:#4caf5080;color:#4caf50}.vote-button.active.vote-down{background:#f4433633;border-color:#f4433680;color:#f44336}.vote-count{font-size:18px;font-weight:400;color:#cd43ffe6}.tool-proposal-content{flex:1;cursor:pointer}.tool-proposal-item-title{margin:0 0 8px;font-size:18px;font-weight:400;color:#cd43fff2}.tool-proposal-item-description{margin:0 0 12px;font-size:14px;line-height:1.6;color:#ffffffb3}.tool-proposal-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:#ffffff80}.tool-proposal-status{padding:2px 8px;border-radius:4px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.status-pending{background:#ffc10733;color:#ffc107}.status-approved{background:#4caf5033;color:#4caf50}.status-implemented{background:#2196f333;color:#2196f3}.status-rejected{background:#f4433633;color:#f44336}.tool-proposal-form{max-width:600px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#cd43ffe6;font-size:14px}.form-group input,.form-group textarea{width:100%;padding:12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;resize:vertical}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#cd43ff99;background:#000000b3}.form-actions{display:flex;gap:12px;justify-content:flex-end}.tool-proposal-detail-header{margin-bottom:24px}.tool-proposal-detail-content{display:flex;gap:24px}.tool-proposal-detail-votes{display:flex;flex-direction:column;align-items:center;gap:8px}.vote-button-large{width:48px;height:48px;border:1px solid rgba(205,67,255,.3);background:#00000080;color:#ffffff80;font-size:20px;border-radius:8px;cursor:pointer;transition:all .2s ease}.vote-button-large:hover{background:#cd43ff1a;color:#fff}.vote-button-large.active.vote-up{background:#4caf5033;border-color:#4caf5080;color:#4caf50}.vote-button-large.active.vote-down{background:#f4433633;border-color:#f4433680;color:#f44336}.vote-count-large{font-size:24px;font-weight:400;color:#cd43ffe6}.tool-proposal-detail-body{flex:1}.tool-proposal-detail-description{font-size:16px;line-height:1.7;color:#fffc;margin-bottom:24px}.tool-proposal-detail-meta{display:flex;gap:16px;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid rgba(205,67,255,.1);font-size:13px;color:#ffffff80}.tool-proposal-comments h4{margin:0 0 16px;font-size:18px;font-weight:400;color:#cd43fff2}.comment-form{margin-bottom:24px;display:flex;flex-direction:column;gap:12px}.comment-form textarea{width:100%;padding:12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;resize:vertical}.comment-form textarea:focus{outline:none;border-color:#cd43ff99}.no-comments{text-align:center;padding:40px;color:#fff6;font-style:normal}.comments-list{display:flex;flex-direction:column;gap:16px}.comment-item{padding:16px;background:#ffffff08;border:1px solid rgba(205,67,255,.1);border-radius:8px}.comment-author{font-weight:400;margin-bottom:8px}.comment-content{color:#fffc;line-height:1.6;margin-bottom:8px}.comment-date{font-size:12px;color:#fff6}@media (max-width: 768px){.tool-proposal-modal{max-width:100%;max-height:100vh;border-radius:0}.tool-proposal-detail-content{flex-direction:column}.tool-proposal-detail-votes{flex-direction:row}.tool-proposal-meta{font-size:11px}}.numeric-stepper{display:flex;align-items:center;gap:0}.numeric-stepper__button{background:#cd43ff26;border:1px solid rgba(205,67,255,.3);color:#cd43ff;font-weight:400;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.numeric-stepper__button--decrement{border-radius:6px 0 0 6px;border-right:none}.numeric-stepper__button--increment{border-radius:0 6px 6px 0;border-left:none}.numeric-stepper__button:hover:not(:disabled){background:#cd43ff4d;border-color:#cd43ff80}.numeric-stepper__button:active:not(:disabled){transform:scale(.95)}.numeric-stepper__button:disabled{opacity:.3;cursor:not-allowed}.numeric-stepper__input{background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:0;color:#ffffffe6;font-family:inherit;font-weight:500;text-align:center;outline:none;transition:all .2s ease}.numeric-stepper__input:focus{border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 2px #cd43ff26}.numeric-stepper__input::-webkit-outer-spin-button,.numeric-stepper__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numeric-stepper__input[type=number]{-moz-appearance:textfield}.numeric-stepper--small .numeric-stepper__button{width:28px;height:28px;font-size:.9rem}.numeric-stepper--small .numeric-stepper__input{width:40px;height:28px;padding:0 4px;font-size:.85rem}.numeric-stepper--medium .numeric-stepper__button{width:36px;height:36px;font-size:1.1rem}.numeric-stepper--medium .numeric-stepper__input{width:50px;height:36px;padding:0 6px;font-size:.95rem}.numeric-stepper--large .numeric-stepper__button{width:44px;height:44px;font-size:1.3rem}.numeric-stepper--large .numeric-stepper__input{width:70px;height:44px;padding:0 8px;font-size:1.1rem}.numeric-stepper--disabled{opacity:.5;pointer-events:none}.numeric-stepper--disabled .numeric-stepper__input{color:#ffffff80}.difficulty-selector{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#cd43ff0d;border-radius:8px;border:1px solid rgba(205,67,255,.2)}.difficulty-controls-row{display:flex;gap:1.5rem;align-items:center}.difficulty-header{display:flex;align-items:center;justify-content:space-between}.difficulty-title{margin:0;font-size:.875rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:#cd43ff}.difficulty-value-control{display:flex;align-items:center;gap:.75rem;justify-content:center}.difficulty-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;border:1px solid rgba(205,67,255,.3);background:#cd43ff1a;color:#cd43ff;font-size:1.25rem;font-weight:400;cursor:pointer;transition:all .2s ease}.difficulty-button:hover:not(:disabled){background:#cd43ff33;border-color:#cd43ff;transform:scale(1.05)}.difficulty-button:active:not(:disabled){transform:scale(.95)}.difficulty-button:disabled{opacity:.3;cursor:not-allowed}.difficulty-display{display:flex;align-items:center;justify-content:center;min-width:80px;height:48px;padding:0 1rem;background:linear-gradient(135deg,#cd43ff26,#cd43ff0d);border:2px solid #CD43FF;border-radius:8px;font-size:2rem;font-weight:400;color:#cd43ff;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease}.difficulty-display:hover{background:linear-gradient(135deg,#cd43ff40,#cd43ff1a);transform:scale(1.02)}.difficulty-input{min-width:80px;height:48px;padding:0 1rem;background:linear-gradient(135deg,#cd43ff26,#cd43ff0d);border:2px solid #CD43FF;border-radius:8px;font-size:2rem;font-weight:400;color:#cd43ff;font-family:var(--font-primary);text-align:center;outline:none}.difficulty-input:focus{background:linear-gradient(135deg,#cd43ff40,#cd43ff1a);box-shadow:0 0 0 3px #cd43ff4d}.difficulty-input::-webkit-outer-spin-button,.difficulty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.difficulty-input[type=number]{-moz-appearance:textfield}.difficulty-mode-selector{display:flex;flex-direction:row;gap:1rem;flex:1}.difficulty-mode-option{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px;cursor:pointer;transition:all .2s ease;flex:1}.difficulty-mode-option:hover{background:#cd43ff1a;border-color:#cd43ff66}.difficulty-mode-option input[type=radio]{margin-top:.25rem;flex-shrink:0;width:18px;height:18px;accent-color:#CD43FF;cursor:pointer}.mode-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.mode-label{font-size:.875rem;font-weight:400;color:#cd43ff}.mode-description{font-size:.75rem;color:#cd43ffb3;line-height:1.4}@media (prefers-color-scheme: dark){.mode-description{color:#cd43ffcc}}@media (max-width: 768px){.difficulty-display,.difficulty-input{min-width:60px;font-size:1.5rem}.difficulty-button{width:32px;height:32px;font-size:1rem}}.special-cases-selector{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#cd43ff0d;border-radius:8px;border:1px solid rgba(205,67,255,.2)}.special-cases-header{display:flex;align-items:center;justify-content:space-between}.special-cases-title{margin:0;font-size:.875rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:#cd43ff}.special-cases-options{display:flex;flex-direction:column;gap:.75rem}.special-case-option{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding:.5rem .75rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px;cursor:pointer;transition:all .2s ease}.special-case-option:hover{background:#cd43ff1a;border-color:#cd43ff66}.special-case-option .custom-checkbox{flex-shrink:0}.option-label{font-size:.875rem;font-weight:500;color:#cd43ffe6;line-height:1.4}.advantage-disadvantage-group{flex-direction:column;align-items:flex-start;gap:.5rem;cursor:default}.advantage-disadvantage-group:hover{background:#cd43ff0d;border-color:#cd43ff33}.advantage-option{display:flex;align-items:center;gap:.75rem;cursor:pointer;width:100%}.advantage-option .custom-checkbox{flex-shrink:0}.inline-config{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.25);border-radius:4px;margin-left:auto}.config-label{font-size:.75rem;font-weight:500;color:#cd43ffcc}.config-input{width:60px;padding:.25rem .5rem;background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-size:.875rem;font-weight:400;text-align:center;font-family:var(--font-primary);outline:none;transition:all .2s ease}.config-input:focus{border-color:#cd43ff99;background:#000000d9;box-shadow:0 0 0 2px #cd43ff33}.config-input::-webkit-outer-spin-button,.config-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.config-input[type=number]{-moz-appearance:textfield}.double-successes-config{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-top:.5rem}.range-row{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:4px}.range-label-bold{font-size:.875rem;font-weight:400;color:#cd43ff;min-width:160px;flex-shrink:0}.range-inputs{display:flex;align-items:center;gap:.5rem;flex:1}.range-text{font-size:.75rem;font-weight:500;color:#cd43ffcc;white-space:nowrap}.range-row .custom-checkbox{margin-left:auto;flex-shrink:0}@media (prefers-color-scheme: dark){.option-label{color:#cd43fff2}.config-label{color:#cd43ffd9}}.keep-option{display:flex;align-items:center;gap:.75rem}.option-label-short{font-size:.875rem;color:#cd43ffe6;font-weight:500}.keep-dropdown{position:relative}.keep-dropdown--disabled{opacity:.5;pointer-events:none}.keep-dropdown__trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .75rem;min-width:90px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-size:.875rem;font-weight:400;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease}.keep-dropdown__trigger:hover:not(:disabled){background:#0009;border-color:#cd43ff80}.keep-dropdown__trigger:disabled{cursor:not-allowed}.keep-dropdown__arrow{font-size:.625rem;color:#cd43ffb3;transition:transform .2s ease}.keep-dropdown__menu{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#0f0519fa;border:1px solid rgba(205,67,255,.4);border-radius:4px;overflow:hidden;z-index:100;box-shadow:0 4px 12px #00000080;animation:dropdownFadeIn .15s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.keep-dropdown__option{display:block;width:100%;padding:.5rem .75rem;background:transparent;border:none;color:#cd43ff;font-size:.875rem;font-weight:500;font-family:var(--font-primary);text-align:left;cursor:pointer;transition:background .15s ease}.keep-dropdown__option:hover{background:#cd43ff33}.keep-dropdown__option--selected{background:#cd43ff26;font-weight:400}.keep-dropdown__option--selected:before{content:"✓ ";color:#cd43ff}@media (max-width: 768px){.special-case-option{flex-direction:column;align-items:flex-start}.inline-config{margin-left:0;width:100%}.config-input{width:50px}.keep-count-input{width:45px}}.roll-results{display:flex;flex-direction:column;gap:24px;padding:12px 16px;background:#cd43ff0d;border-radius:8px;border:1px solid rgba(205,67,255,.2);margin-top:24px;position:relative}.roll-results:before{content:"";position:absolute;top:-20px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(205,67,255,.5) 20%,rgba(205,67,255,.5) 80%,transparent 100%)}.roll-results.empty{display:flex;align-items:center;justify-content:center;min-height:60px;margin-top:0;padding-top:.75rem;padding-bottom:.75rem}.roll-results.empty:before{display:none}.roll-results-placeholder{display:flex;flex-direction:column;align-items:center;gap:.75rem;opacity:.6}.placeholder-icon{font-size:3rem}.placeholder-text{margin:0;font-size:1rem;color:#888}.roll-total{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;background:linear-gradient(135deg,#cd43ff26,#cd43ff0d);border-radius:8px;border:2px solid #CD43FF}.total-value{font-size:3.5rem;font-weight:400;color:#cd43ff;line-height:1;font-family:var(--font-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.roll-formula{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:#cd43ff14;border-radius:6px;font-family:var(--font-primary);font-variant-numeric:tabular-nums;letter-spacing:.01em}.formula-label{font-size:.875rem;font-weight:400;color:#888}.formula-value{font-size:1rem;color:#cd43ff;font-weight:400}.reroll-question{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;margin-bottom:16px}.reroll-question-text{font-size:14px;font-weight:400;color:#cd43ff;text-align:center;font-family:var(--font-primary);letter-spacing:.5px}.reroll-buttons{display:flex;gap:12px}.reroll-buttons button{min-width:100px}.reroll-cooldown-message{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;background:#ff43cd26;border:1px solid rgba(255,67,205,.4);border-radius:6px;margin-bottom:8px}.cooldown-icon{font-size:1rem;color:#ff43cd}.cooldown-text{font-size:.875rem;font-weight:400;color:#ff43cd}.roll-posted-message{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;background:#43ff7f26;border:1px solid rgba(67,255,127,.4);border-radius:6px;margin-bottom:16px!important}.roll-description{padding:1rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.25);border-radius:6px}.description-content{font-size:.875rem;line-height:1.5;color:#cd43ffe6;white-space:pre-wrap;word-wrap:break-word}.posted-icon{font-size:1.25rem;color:#43ff7f;font-weight:400}.posted-text{font-size:.875rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:#43ff7f}.difficulty-result{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border-radius:8px;border:2px solid}.difficulty-result.success{background:#43ff7f26;border-color:#43ff7f}.difficulty-result.failure{background:#ff434326;border-color:#ff4343}.difficulty-result .result-icon{font-size:2.5rem;font-weight:400}.difficulty-result.success .result-icon{color:#43ff7f}.difficulty-result.failure .result-icon{color:#ff4343}.difficulty-result .result-text{font-size:1.25rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em}.difficulty-result.success .result-text{color:#43ff7f}.difficulty-result.failure .result-text{color:#ff4343}.difficulty-result .result-detail{font-size:.875rem;color:#cd43ffb3;font-family:var(--font-primary);font-variant-numeric:tabular-nums;letter-spacing:.01em}.roll-breakdown-compact{display:flex;align-items:center;justify-content:center;padding:.5rem 1rem;background:#cd43ff14;border-radius:6px;border:1px solid rgba(205,67,255,.2);margin-bottom:16px!important}.breakdown-text{font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#cd43ff;text-align:center;word-break:break-word;line-height:1.5;font-variant-numeric:tabular-nums;letter-spacing:.01em}.roll-results-actions{display:flex;gap:.75rem;padding-top:.5rem;border-top:1px solid rgba(205,67,255,.2)}.roll-results-button{flex:1;padding:.75rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:400;cursor:pointer;transition:all .2s ease;border:none;outline:none}.roll-results-button.primary{background:#cd43ff;color:#fff}.roll-results-button.primary:hover{background:#b82ee6;transform:translateY(-1px);box-shadow:0 4px 12px #cd43ff4d}.roll-results-button.primary:active{transform:translateY(0)}.roll-results-button.secondary{background:#cd43ff1a;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.roll-results-button.secondary:hover{background:#cd43ff26;border-color:#cd43ff}.roll-results-button.secondary:active{background:#cd43ff33}.roll-multiple-results{display:flex;flex-direction:column;gap:12px}.multiple-results-header{font-size:14px;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;text-align:center;padding-bottom:8px;border-bottom:1px solid rgba(205,67,255,.2)}.multiple-results-grid{display:flex;flex-direction:column;gap:8px}.multiple-result-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px}.multiple-result-item .result-index{font-size:14px;font-weight:400;color:#cd43ff;min-width:30px;font-family:var(--font-primary)}.multiple-result-item .result-breakdown{flex:1;font-size:14px;color:#cd43ffcc;font-family:var(--font-primary);font-variant-numeric:tabular-nums}.multiple-result-item .result-total-value{font-size:24px;font-weight:400;color:#cd43ff;min-width:50px;text-align:right;font-family:var(--font-primary);font-variant-numeric:tabular-nums}.dropped-roll{text-decoration:line-through;opacity:.5;color:#cd43ff80}.dice-rolls{display:inline}@media (prefers-color-scheme: dark){.placeholder-text{color:#aaa}}.save-formula-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px}.save-formula-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(205,67,255,.4);border-radius:12px;box-shadow:0 10px 40px #cd43ff4d;width:100%;max-width:450px;display:flex;flex-direction:column;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.save-formula-header{padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.3);display:flex;align-items:center;justify-content:space-between}.save-formula-title{margin:0;font-family:var(--font-primary);font-size:18px;font-weight:400;color:#cd43ff;letter-spacing:.5px}.save-formula-close{width:28px;height:28px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffcc;font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.save-formula-close:hover{background:#cd43ff33;border-color:#cd43ff99;color:#cd43ff}.save-formula-body{padding:20px;display:flex;flex-direction:column;gap:16px}.save-formula-field{display:flex;flex-direction:column;gap:6px;position:relative}.save-formula-label{font-size:13px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:.5px}.save-formula-input{padding:10px 12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:14px;font-family:inherit;transition:all .2s ease}.save-formula-input:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 2px #cd43ff26}.save-formula-input::placeholder{color:#fff6}.save-formula-textarea{padding:10px 12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:14px;font-family:inherit;resize:vertical;min-height:60px;transition:all .2s ease}.save-formula-textarea:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 2px #cd43ff26}.save-formula-textarea::placeholder{color:#fff6}.save-formula-option{display:flex;align-items:center;gap:10px;padding:8px 0}.limit-warning{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:6px;font-size:13px;color:#cd43ffe6}.limit-warning.limit-reached{background:#ff64641a;border-color:#ff64644d;color:#ff9696e6}.warning-icon{font-size:16px}.upgrade-link{background:none;border:none;color:#cd43ff;font-size:13px;font-weight:400;cursor:pointer;text-decoration:underline;padding:0;margin-left:auto}.upgrade-link:hover{color:#e070ff}.save-formula-error{padding:10px 12px;background:#ff434326;border:1px solid rgba(255,67,67,.3);border-radius:6px;color:#ff9696f2;font-size:13px}.save-formula-footer{padding:16px 20px;border-top:1px solid rgba(205,67,255,.3);display:flex;justify-content:flex-end;gap:12px}.edit-formula-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px}.edit-formula-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(205,67,255,.4);border-radius:12px;box-shadow:0 10px 40px #cd43ff4d;width:100%;max-width:450px;display:flex;flex-direction:column;animation:editModalFadeIn .2s ease-out}@keyframes editModalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.edit-formula-header{padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.3);display:flex;align-items:center;justify-content:space-between;gap:16px}.edit-formula-title{margin:0;font-family:var(--font-primary);font-size:18px;font-weight:400;color:#cd43ff;letter-spacing:.5px}.edit-formula-step-indicator{display:flex;align-items:center;gap:8px;flex:1;justify-content:center}.step-dot{width:24px;height:24px;border-radius:50%;background:#cd43ff26;border:2px solid rgba(205,67,255,.3);color:#cd43ff80;font-size:12px;font-weight:400;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.step-dot.active{background:#cd43ff4d;border-color:#cd43ff;color:#cd43ff;box-shadow:0 0 10px #cd43ff66}.step-dot.completed{background:#cd43ff;border-color:#cd43ff;color:#fff}.step-line{width:30px;height:2px;background:#cd43ff4d}.edit-formula-close{width:28px;height:28px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffcc;font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.edit-formula-close:hover{background:#cd43ff33;border-color:#cd43ff99;color:#cd43ff}.edit-formula-body{padding:20px;display:flex;flex-direction:column;gap:16px}.formula-preview{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:6px}.formula-preview-label{font-size:13px;font-weight:500;color:#cd43ffb3}.formula-preview-value{font-size:15px;font-weight:400;font-family:var(--font-primary);color:#cd43ff}.edit-formula-field{display:flex;flex-direction:column;gap:6px;position:relative}.edit-formula-label{font-size:13px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:.5px}.edit-formula-input{padding:10px 12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:14px;font-family:inherit;transition:all .2s ease}.edit-formula-input:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 2px #cd43ff26}.edit-formula-input::placeholder{color:#fff6}.char-count{position:absolute;right:10px;bottom:10px;font-size:11px;color:#cd43ff80}.edit-formula-textarea{padding:10px 12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:14px;font-family:inherit;resize:vertical;min-height:60px;transition:all .2s ease}.edit-formula-textarea:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 2px #cd43ff26}.edit-formula-textarea::placeholder{color:#fff6}.edit-formula-option{display:flex;align-items:center;gap:10px;padding:8px 0}.option-text{font-size:14px;color:#ffffffd9}.edit-formula-error{padding:10px 12px;background:#ff434326;border:1px solid rgba(255,67,67,.3);border-radius:6px;color:#ff9696f2;font-size:13px}.edit-formula-footer{padding:16px 20px;border-top:1px solid rgba(205,67,255,.3);display:flex;justify-content:flex-end;gap:12px}.dice-roller-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10002;padding:20px}.dice-roller-modal{background:transparent;border:2px solid rgba(205,67,255,.4);border-radius:16px;box-shadow:0 10px 50px #cd43ff4d;width:100%;max-width:907px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.dice-roller-header{padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.3);display:flex;align-items:center;justify-content:space-between;background:#cd43ff0d}.dice-roller-title{margin:0;font-family:var(--font-primary);font-size:24px;font-weight:400;color:#cd43ff;letter-spacing:1px;display:flex;align-items:center;gap:12px}.dice-roller-header-actions{display:flex;align-items:center;gap:12px}.dice-roller-close{width:32px;height:32px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffcc;font-size:20px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.dice-roller-close:hover{background:#cd43ff33;border-color:#cd43ff99;color:#cd43ff;transform:scale(1.1)}.my-rolls-dropdown{position:relative}.my-rolls-button{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffe6;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;transition:all .2s ease}.my-rolls-button:hover{background:#cd43ff33;border-color:#cd43ff80}.my-rolls-button.open{background:#cd43ff33;border-color:#cd43ff99}.my-rolls-label{letter-spacing:.5px}.my-rolls-arrow{font-size:10px;opacity:.7;transition:transform .2s ease}.my-rolls-menu{position:absolute;top:100%;right:0;margin-top:8px;min-width:220px;width:max-content;max-height:300px;overflow-y:auto;background:#0f0a19fa;border:1px solid rgba(205,67,255,.4);border-radius:10px;box-shadow:0 8px 32px #00000080,0 0 20px #cd43ff33;z-index:1000;animation:myRollsFadeIn .15s ease-out}@keyframes myRollsFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.my-rolls-menu::-webkit-scrollbar{width:6px}.my-rolls-menu::-webkit-scrollbar-track{background:#cd43ff1a;border-radius:3px}.my-rolls-menu::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:3px}.my-rolls-loading,.my-rolls-empty{padding:16px;text-align:center;color:#cd43ff99;font-size:13px;font-family:var(--font-primary)}.my-rolls-item{display:flex;align-items:center;width:100%;border-bottom:1px solid rgba(205,67,255,.15);transition:all .15s ease}.my-rolls-item:last-child{border-bottom:none}.my-rolls-item:hover{background:#cd43ff1a}.my-rolls-item-content{display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1;padding:12px 8px 12px 16px;background:transparent;border:none;cursor:pointer;text-align:left}.my-rolls-item-content:hover{background:#cd43ff1a}.my-rolls-item-name{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#cd43ff;letter-spacing:.3px}.my-rolls-item-formula{font-family:var(--font-primary);font-size:12px;color:#ffffffb3;white-space:nowrap}.my-rolls-edit,.my-rolls-delete{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:6px;color:#cd43ff80;cursor:pointer;transition:all .15s ease;flex-shrink:0}.my-rolls-delete{margin-right:8px}.my-rolls-edit:hover{background:#cd43ff33;border-color:#cd43ff66;color:#cd43ff}.my-rolls-delete:hover{background:#ff43cd33;border-color:#ff43cd66;color:#ff43cd}.my-rolls-item--locked{opacity:.4;pointer-events:none;background:#0000004d}.my-rolls-item--locked .my-rolls-item-content{cursor:not-allowed}.my-rolls-item--locked .my-rolls-item-name{color:#cd43ff66}.my-rolls-item--locked .my-rolls-item-formula{color:#ffffff4d}.my-rolls-lock-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin-right:8px;color:#cd43ff66;flex-shrink:0;pointer-events:auto}.my-rolls-item--empty{justify-content:center;padding:12px 16px;border-style:dashed;border-color:#cd43ff33;background:#cd43ff05}.my-rolls-empty-slot{font-family:var(--font-primary);font-size:13px;font-style:normal;color:#cd43ff66;letter-spacing:.3px}.my-rolls-upgrade{padding:12px 16px;text-align:center;font-family:var(--font-primary);font-size:11px;color:#cd43ff;background:#cd43ff1a;border-top:1px solid rgba(205,67,255,.3);letter-spacing:.3px;text-shadow:0 0 10px rgba(205,67,255,.4)}.dice-roller-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:24px}.dice-roller-body::-webkit-scrollbar{width:8px}.dice-roller-body::-webkit-scrollbar-track{background:#cd43ff1a;border-radius:4px}.dice-roller-body::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:4px}.dice-roller-body::-webkit-scrollbar-thumb:hover{background:#cd43ff99}.reroll-status-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:8px;margin-bottom:8px}.reroll-status-banner .status-icon{font-size:1.1rem}.reroll-status-banner .status-text{font-size:.9rem;font-weight:400;font-family:var(--font-primary);font-variant-numeric:tabular-nums}.reroll-status-banner.cooldown{background:#ff43cd26;border:1px solid rgba(255,67,205,.4)}.reroll-status-banner.cooldown .status-icon,.reroll-status-banner.cooldown .status-text{color:#ff43cd}.reroll-status-banner.available{background:#43ff7f26;border:1px solid rgba(67,255,127,.4)}.reroll-status-banner.available .status-icon,.reroll-status-banner.available .status-text{color:#43ff7f}.edit-mode-step-indicator{display:flex;align-items:center;gap:8px;margin-left:16px}.edit-mode-step-indicator .step-dot{width:24px;height:24px;border-radius:50%;background:#cd43ff26;border:2px solid rgba(205,67,255,.3);color:#cd43ff80;font-size:12px;font-weight:400;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.edit-mode-step-indicator .step-dot.active{background:#cd43ff4d;border-color:#cd43ff;color:#cd43ff;box-shadow:0 0 10px #cd43ff66}.edit-mode-step-indicator .step-dot.completed{background:#cd43ff;border-color:#cd43ff;color:#fff}.edit-mode-step-indicator .step-line{width:30px;height:2px;background:#cd43ff4d}.edit-mode-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;margin-bottom:8px}.edit-mode-banner .edit-mode-label{font-size:13px;color:#cd43ffcc}.edit-mode-banner .edit-mode-name{font-family:var(--font-primary);font-size:15px;font-weight:400;color:#cd43ff}.dice-selector{display:flex;flex-direction:column;gap:12px}.dice-selector-label{font-size:14px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:1px}.dice-buttons{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dice-button{width:87px;height:85px;padding:16px 12px;background:#cd43ff26;border:2px solid rgba(205,67,255,.3);border-radius:12px;color:#cd43ffe6;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-family:var(--font-primary)}.dice-button:hover{background:#cd43ff40;border-color:#cd43ff99;transform:translateY(-2px);box-shadow:0 4px 12px #cd43ff4d}.dice-button:active{transform:translateY(0)}.dice-icon{font-size:24px;height:28px;display:flex;align-items:center;justify-content:center}.dice-icon-img{filter:brightness(0) saturate(100%) invert(48%) sepia(95%) saturate(6500%) hue-rotate(267deg) brightness(105%) contrast(101%);transition:all .2s ease}.dice-button:hover .dice-icon-img{filter:brightness(0) saturate(100%) invert(48%) sepia(95%) saturate(6500%) hue-rotate(267deg) brightness(120%) contrast(101%)}.dice-icon-text{font-size:22px;font-weight:400;color:#cd43ffe6;font-family:var(--font-primary);height:28px;display:flex;align-items:center;justify-content:center}.dice-button:hover .dice-icon-text{color:#cd43ff}.dice-label{font-size:12px;font-weight:400;letter-spacing:.5px}.dice-pool{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:16px;min-height:100px;max-height:300px;display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.dice-pool-empty-state{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.dice-pool .dice-pool-empty-state .empty-message{margin:0;font-size:14px!important;font-family:var(--font-primary)!important;font-style:normal!important;font-weight:400!important;color:#cd43ff80!important;letter-spacing:.5px}.dice-pool-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dice-pool-label{font-size:14px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:1px}.dice-pool-clear-button{width:24px;height:24px;background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ffcc;font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.dice-pool-clear-button:hover{background:#cd43ff4d;border-color:#cd43ffb3;color:#cd43ff;transform:scale(1.1)}.dice-pool-items{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;align-content:flex-start;justify-content:center;min-height:50px;flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 4px 4px}.dice-pool-items::-webkit-scrollbar{width:6px}.dice-pool-items::-webkit-scrollbar-track{background:#cd43ff1a;border-radius:3px}.dice-pool-items::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:3px}.dice-pool-items::-webkit-scrollbar-thumb:hover{background:#cd43ff99}.dice-pool-item{display:flex;align-items:center;justify-content:center;gap:8px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:10px 12px;position:relative;min-height:44px}.dice-remove-button{position:absolute;top:-6px;right:-6px;width:18px;height:18px;background:#cd43ff40;border:1px solid rgba(205,67,255,.6);border-radius:50%;color:#cd43ff;font-size:12px;font-weight:400;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;text-align:center;padding:0;line-height:1;opacity:0}.dice-pool-item:hover .dice-remove-button{opacity:1}.dice-remove-button:hover{background:#cd43ff80;border-color:#cd43ff;transform:scale(1.2)}.dice-pool-item.clickable-item{cursor:pointer;transition:all .2s ease;min-width:60px;justify-content:center}.dice-pool-item.clickable-item:hover{background:#cd43ff33;border-color:#cd43ff80;transform:translateY(-2px);box-shadow:0 4px 12px #cd43ff4d}.dice-pool-item.clickable-item .dice-notation{font-size:20px}.dice-notation-input{display:flex;align-items:center;gap:4px}.input-prefix{font-size:18px;font-weight:400;color:#cd43ffe6;font-family:var(--font-primary)}.inline-input{width:50px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#ffffffe6;font-size:16px;padding:4px 6px;text-align:center;font-family:var(--font-primary);font-weight:400}.inline-input:focus{outline:none;border-color:#cd43ff99;background:#000000b3}.inline-input::placeholder{color:#fff6}.dice-notation{font-size:18px;font-weight:400;color:#cd43ffe6;font-family:var(--font-primary);min-width:50px;text-align:center}.dice-notation.clickable{cursor:pointer;transition:all .2s ease}.dice-notation.clickable:hover{color:#cd43ff;text-decoration:underline}.dice-controls{display:flex;gap:4px}.dice-control-button{width:24px;height:24px;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ffe6;font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.dice-control-button:hover{background:#cd43ff4d;border-color:#cd43ffb3;color:#cd43ff;transform:scale(1.1)}.dice-control-button.decrease:hover:not(:disabled){background:#ff43434d;border-color:#ff4343b3;color:#ff4343}.dice-control-button.disabled,.dice-control-button:disabled{opacity:.3;cursor:not-allowed;transform:none!important}.dice-control-button.disabled:hover,.dice-control-button:disabled:hover{background:#cd43ff33;border-color:#cd43ff66;color:#cd43ffe6;transform:none}.dice-pool-operator-frame{display:flex;align-items:center;justify-content:center;background:#cd43ff14;border:1px solid rgba(205,67,255,.25);border-radius:8px;padding:8px 12px;position:relative;min-width:60px;min-height:40px}.dice-operator-container{position:relative}.dice-operator-button{min-width:50px;height:28px;padding:0 8px;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ffe6;font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:4px;font-family:var(--font-primary)}.dice-operator-button:hover{background:#cd43ff4d;border-color:#cd43ffb3}.operator-symbol{font-size:18px;font-weight:400}.operator-arrow{font-size:10px;opacity:.7}.dice-operator-menu{position:absolute;top:100%;left:0;margin-top:4px;background:#000000f2;border:1px solid rgba(205,67,255,.4);border-radius:8px;padding:4px;min-width:120px;box-shadow:0 4px 12px #00000080;z-index:100}.operator-option{width:100%;padding:8px 12px;background:transparent;border:none;border-radius:6px;color:#ffffffe6;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;font-size:14px;text-align:left}.operator-option:hover{background:#cd43ff33;color:#cd43ff}.operator-option.active{background:#cd43ff4d;color:#cd43ff}.operator-option .operator-symbol{font-size:18px;width:24px;text-align:center}.operator-name{font-size:13px}.formula-editor{display:flex;flex-direction:column;gap:8px;margin-top:8px}.formula-editor-label{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:1px}.manual-indicator{font-size:11px;color:#ffd700cc;font-weight:400;text-transform:none;letter-spacing:normal;display:flex;align-items:center;gap:4px}.formula-input-container{position:relative;display:flex;align-items:center}.formula-input{flex:1;padding:12px 40px 12px 12px;background:#00000080;border:2px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffe6;font-size:16px;font-family:var(--font-primary);font-weight:400;letter-spacing:.5px;transition:all .2s ease}.formula-input:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 3px #cd43ff1a}.formula-input.invalid{border-color:#ff434380}.formula-input::placeholder{color:#cd43ff66;font-style:normal;font-family:var(--font-primary);font-weight:400}.validation-icon{position:absolute;right:12px;font-size:20px;pointer-events:none}.validation-icon.valid{color:#43ff97cc}.validation-icon.invalid{color:#ff4343cc}.formula-hints{color:#cd43ff99}.formula-editor .formula-hints .hint-text{display:flex;align-items:center;gap:6px;font-size:13px!important;font-family:var(--font-primary)!important;color:#cd43ff99}.formula-error{padding:8px 12px;background:#ff434326;border:1px solid rgba(255,67,67,.3);border-radius:6px;color:#ff4343e6;font-size:13px}.roll-count-field{display:flex;align-items:center;gap:12px}.roll-count-label{font-size:14px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:1px}.roll-count-control{display:flex;align-items:center;gap:0}.roll-count-button{width:36px;height:36px;background:#cd43ff26;border:2px solid rgba(205,67,255,.3);color:#cd43ff;font-size:1.25rem;font-weight:400;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.roll-count-button.decrement{border-radius:8px 0 0 8px;border-right:none}.roll-count-button.increment{border-radius:0 8px 8px 0;border-left:none}.roll-count-button:hover:not(:disabled){background:#cd43ff4d;border-color:#cd43ff99}.roll-count-button:disabled{opacity:.3;cursor:not-allowed}.roll-count-input{width:60px;height:36px;padding:0 8px;background:#00000080;border:2px solid rgba(205,67,255,.3);border-radius:0;color:#cd43ff;font-size:1.25rem;font-family:var(--font-primary);font-weight:400;text-align:center;transition:all .2s ease}.roll-count-input:focus{outline:none;border-color:#cd43ff99;background:#000000b3}.roll-count-input::-webkit-outer-spin-button,.roll-count-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.roll-count-input[type=number]{-moz-appearance:textfield}.description-field{display:flex;flex-direction:column;gap:8px}.description-field-label{font-size:14px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:1px}.description-textarea{min-height:80px;padding:12px;background:#00000080;border:2px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffe6;font-size:14px;font-family:inherit;line-height:1.5;resize:vertical;transition:all .2s ease}.description-textarea:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 3px #cd43ff1a}.description-textarea::placeholder{color:#fff6;font-style:normal}.dice-roller-footer{padding:16px 24px;border-top:1px solid rgba(205,67,255,.3);background:#0000004d;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:70px}.footer-left{display:flex;gap:12px;align-items:center;flex:0 0 auto}.footer-center{display:flex;gap:12px;align-items:center;justify-content:center;flex:1 1 auto}.footer-right{display:flex;gap:12px;align-items:center;flex:0 0 auto}.dice-roller-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:400;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;flex-shrink:0;min-width:100px}.dice-roller-button.primary{background:linear-gradient(135deg,#cd43ff4d,#7b1fa24d);color:#cd43ff;border:2px solid rgba(205,67,255,.5)}.dice-roller-button.primary:hover:not(:disabled){background:linear-gradient(135deg,#cd43ff66,#7b1fa266);border-color:#cd43ffcc;transform:translateY(-2px);box-shadow:0 4px 12px #cd43ff66}.dice-roller-button.primary:disabled{opacity:.3;cursor:not-allowed}.dice-roller-button.secondary{background:#00000080;color:#fffc;border:2px solid rgba(205,67,255,.3)}.dice-roller-button.secondary:hover{background:#000000b3;border-color:#cd43ff80;color:#ffffffe6}@media (max-width: 768px){.dice-roller-modal{max-width:95%}.dice-roller-header{padding:16px}.dice-roller-title{font-size:20px}.dice-roller-body{padding:16px}.dice-buttons,.dice-pool-items{justify-content:center}.dice-roller-footer{flex-direction:column;align-items:stretch}.footer-left,.footer-center,.footer-right{width:100%;justify-content:center}}.dice-roller-locked-config{display:flex;flex-direction:column;gap:.75rem;padding:.5rem 0;opacity:.8;pointer-events:none}.formula-locked-description{font-size:1rem;color:#ffffffd9;text-align:center;padding:.5rem 0}.formula-editor--readonly{padding:.5rem 0}.formula-readonly-value{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;letter-spacing:1px;padding:.5rem .75rem;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;display:inline-block}.dice-roller-locked-config .locked-value{font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#cd43ff}.difficulty-selector--readonly{padding:.5rem 0}.difficulty-readonly-row{display:flex;align-items:center;gap:.5rem}.difficulty-readonly-value{font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#cd43ff}.difficulty-readonly-mode{font-size:.85rem;color:#ffffff80}.special-cases-selector.special-cases-selector--readonly{background:none;border:none;padding:.25rem 0;flex-direction:row;align-items:center;gap:.75rem}.special-cases-selector--readonly .special-cases-title{margin:0;flex-shrink:0}.special-cases-readonly-list{display:flex;flex-wrap:wrap;gap:.5rem}.special-cases-readonly-item{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:6px;font-size:.85rem}.special-cases-readonly-label{color:#ffffffb3}.special-cases-readonly-value{font-weight:400;color:#cd43ff}.lookup-result-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;margin:1rem 0;box-shadow:0 2px 4px #0000001a}.lookup-result-card.compact{padding:1rem;font-size:.9rem}.lookup-result-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.lookup-result-icon{font-size:2rem;flex-shrink:0}.lookup-result-title{flex:1}.lookup-result-title h3{margin:0 0 .25rem;color:var(--text-primary);font-size:1.5rem;font-weight:400}.lookup-result-category{display:inline-block;padding:.25rem .75rem;background:var(--accent-color);color:#fff;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.lookup-result-content{margin-bottom:1rem}.spell-header{display:flex;gap:1rem;margin-bottom:1rem;padding:.75rem;background:var(--background-secondary);border-radius:4px}.spell-level{font-weight:400;color:var(--accent-color)}.spell-school{color:var(--text-secondary);font-style:normal}.spell-stats,.monster-stats-block,.monster-info,.item-stats{margin-bottom:1rem}.lookup-result-card .stat-row{display:flex;align-items:baseline;gap:.3rem;margin-bottom:.2rem;padding:.2rem .4rem;background:var(--background-secondary);border-radius:3px}.lookup-result-card .stat-label{font-size:.65rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.2px;min-width:60px;opacity:.6}.lookup-result-card .stat-value{color:var(--accent-color);font-size:.9rem!important;font-weight:400!important}.spell-description,.item-description,.rule-description{padding:1rem;background:var(--background-secondary);border-radius:4px;line-height:1.6;color:var(--text-primary)}.spell-higher-levels,.spell-classes{margin-top:.75rem;padding:.75rem;background:var(--background-tertiary);border-left:3px solid var(--accent-color);border-radius:4px}.monster-type{font-size:1.1rem;font-weight:400;margin-bottom:1rem;color:var(--text-primary)}.monster-ability-scores{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem;margin-bottom:1rem}.lookup-result-card .ability{display:flex;flex-direction:column;align-items:center;padding:.4rem;background:var(--background-secondary);border-radius:3px}.lookup-result-card .ability-name{font-size:.55rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;margin-bottom:.15rem;opacity:.6}.lookup-result-card .ability-value{font-size:.9rem!important;font-weight:500!important;color:var(--accent-color)}.monster-section{margin-top:1rem;padding:1rem;background:var(--background-secondary);border-radius:4px}.monster-section h4{margin:0 0 .75rem;color:var(--accent-color);font-size:1.1rem;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.trait-item,.action-item,.legendary-action-item{margin-bottom:.75rem;padding:.75rem;background:var(--background-tertiary);border-radius:4px;line-height:1.6}.trait-item:last-child,.action-item:last-child,.legendary-action-item:last-child{margin-bottom:0}.trait-item strong,.action-item strong,.legendary-action-item strong{color:var(--accent-color)}.item-type{font-size:1.1rem;font-weight:400;margin-bottom:1rem;color:var(--text-primary)}.rule-category{font-size:1.1rem;font-weight:400;margin-bottom:1rem;color:var(--accent-color)}.lookup-result-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border-color);font-size:.875rem}.lookup-result-source{color:var(--text-secondary);font-style:normal}.lookup-result-link{color:var(--accent-color);text-decoration:none;font-weight:500;transition:color .2s}.lookup-result-link:hover{color:var(--accent-hover);text-decoration:underline}.lookup-result-card.category-spell{border-left:4px solid #9b59b6}.lookup-result-card.category-monster{border-left:4px solid #e74c3c}.lookup-result-card.category-item{border-left:4px solid #f39c12}.lookup-result-card.category-rule{border-left:4px solid #3498db}.lookup-result-card.category-class{border-left:4px solid #2ecc71}.lookup-result-card.category-feat{border-left:4px solid #e67e22}.lookup-result-card.category-race{border-left:4px solid #1abc9c}.class-stats{margin-bottom:1rem}.class-subclasses,.class-description{margin-top:.75rem;padding:.75rem;background:var(--background-secondary);border-radius:4px;line-height:1.6}.class-subclasses{border-left:3px solid var(--accent-color)}.feat-prerequisites{margin-bottom:1rem;padding:.75rem;background:var(--background-secondary);border-left:3px solid #e67e22;border-radius:4px}.feat-description{padding:1rem;background:var(--background-secondary);border-radius:4px;line-height:1.6}.race-stats{margin-bottom:1rem}.race-traits,.race-subraces,.race-description{margin-top:.75rem;padding:.75rem;background:var(--background-secondary);border-radius:4px;line-height:1.6}.race-traits{border-left:3px solid #1abc9c}.race-subraces{border-left:3px solid var(--accent-color)}@media (max-width: 768px){.monster-ability-scores{grid-template-columns:repeat(3,1fr)}.lookup-result-title h3{font-size:1.25rem}.lookup-result-card{padding:1rem}}.fantafind-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.fantafind-modal{background:transparent;border:2px solid rgba(205,67,255,.4);border-radius:16px;box-shadow:0 10px 50px #cd43ff4d;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.fantafind-modal-header{padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.3);display:flex;align-items:center;justify-content:space-between;background:#cd43ff0d}.fantafind-modal-title{margin:0;font-family:var(--font-primary);font-size:24px;font-weight:400;color:#cd43ff;letter-spacing:1px;display:flex;align-items:center;gap:12px}.title-icon{font-size:28px}.fantafind-modal-close{width:32px;height:32px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffcc;font-size:20px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.fantafind-modal-close:hover{background:#cd43ff33;border-color:#cd43ff99;color:#cd43ff;transform:scale(1.1)}.fantafind-modal-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:24px}.fantafind-search-section{display:flex;flex-direction:column;gap:16px}.fantafind-search-label{font-size:14px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:1px}.fantafind-system-selector{display:flex;align-items:center;gap:12px;margin-bottom:8px}.system-label{font-size:13px;font-weight:500;color:#ffffffb3}.system-buttons{display:flex;gap:8px}.fantafind-system-button{padding:8px 16px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:6px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:13px;font-weight:500}.fantafind-system-button:hover{background:#cd43ff26;border-color:#cd43ff66;color:#ffffffe6}.fantafind-system-button.active{background:#cd43ff40;border-color:#cd43ff99;color:#cd43ff;box-shadow:0 2px 8px #cd43ff33}.fantafind-category-selector{display:flex;flex-wrap:wrap;gap:8px}.fantafind-category-button{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#cd43ff1a;border:2px solid rgba(205,67,255,.25);border-radius:8px;color:#fffc;cursor:pointer;transition:all .2s ease;font-family:var(--font-primary);font-size:13px;font-weight:500}.fantafind-category-button:hover{background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff;transform:translateY(-2px)}.fantafind-category-button.active{background:#cd43ff4d;border-color:#cd43ffb3;color:#cd43ff;box-shadow:0 4px 12px #cd43ff4d}.category-icon{font-size:18px}.category-name{font-weight:400}.fantafind-search-input-container{position:relative;display:flex;align-items:center}.fantafind-search-input{flex:1;padding:14px 44px 14px 16px;background:#00000080;border:2px solid rgba(205,67,255,.3);border-radius:10px;color:#fffffff2;font-size:16px;font-family:inherit;transition:all .2s ease}.fantafind-search-input:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 3px #cd43ff1a}.fantafind-search-input::placeholder{color:#fff6;font-style:normal}.fantafind-search-input:disabled{opacity:.5;cursor:not-allowed}.fantafind-clear-button{position:absolute;right:12px;width:28px;height:28px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffb3;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.fantafind-clear-button:hover{background:#cd43ff40;border-color:#cd43ff80;color:#cd43ff}.fantafind-search-actions{display:flex;justify-content:flex-end}.fantafind-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#ff434326;border:1px solid rgba(255,67,67,.3);border-radius:8px;color:#ff4343e6;font-size:14px}.error-icon{font-size:18px}.fantafind-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px;color:#cd43ffcc;font-size:14px}.fantafind-result-section{display:flex;flex-direction:column;gap:12px}.fantafind-result-header{display:flex;align-items:center;justify-content:space-between}.fantafind-result-header h3{margin:0;font-size:16px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:1px}.search-time{font-size:12px;color:#ffffff80}.fantafind-result-section .lookup-result-card{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;margin:0;--surface-color: rgba(0, 0, 0, .4);--border-color: rgba(205, 67, 255, .3);--text-primary: rgba(255, 255, 255, .95);--text-secondary: rgba(255, 255, 255, .6);--accent-color: #CD43FF;--accent-hover: #e066ff;--background-secondary: rgba(205, 67, 255, .08);--background-tertiary: rgba(205, 67, 255, .05)}.fantafind-result-section .lookup-result-header{border-bottom-color:#cd43ff4d}.fantafind-result-section .lookup-result-footer{border-top-color:#cd43ff4d}.fantafind-history-section{display:flex;flex-direction:column;gap:12px}.history-title{margin:0;font-size:14px;font-weight:400;color:#cd43ffcc;text-transform:uppercase;letter-spacing:1px}.fantafind-history-list{display:flex;flex-direction:column;gap:8px}.fantafind-history-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffd9;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.fantafind-history-item:hover{background:#cd43ff26;border-color:#cd43ff66;transform:translate(4px)}.history-icon{font-size:20px}.history-name{flex:1;font-weight:500}.history-category{font-size:12px;color:#cd43ffb3;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;background:#cd43ff26;border-radius:4px}.fantafind-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;text-align:center;color:#fff9}.empty-icon{font-size:48px;margin-bottom:8px}.fantafind-empty-state p{margin:0;font-size:14px}.empty-hint{font-style:normal;color:#fff6}.fantafind-modal-footer{padding:16px 24px;border-top:1px solid rgba(205,67,255,.3);background:#0000004d;display:flex;align-items:center;justify-content:space-between}.footer-info{display:flex;align-items:center;gap:12px}.game-system-badge{padding:6px 12px;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ff;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.powered-by{font-size:12px;color:#fff6;font-style:normal}@media (max-width: 768px){.fantafind-modal{max-width:95%;max-height:95vh}.fantafind-modal-header{padding:16px}.fantafind-modal-title{font-size:20px}.fantafind-modal-body{padding:16px}.fantafind-category-selector{flex-wrap:wrap}.fantafind-category-button{flex:1;min-width:100px;justify-content:center}.fantafind-modal-footer{flex-direction:column;gap:12px;align-items:stretch}.footer-info{justify-content:center}}@media (max-width: 480px){.fantafind-category-button{padding:8px 12px;font-size:12px}.category-icon{font-size:16px}.fantafind-search-input{padding:12px 14px;font-size:15px}}.delete-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.delete-confirm-dialog{background:#000000f2;border:1px solid rgba(255,67,205,.3);border-radius:12px;padding:30px;max-width:500px;width:90%;box-shadow:0 20px 60px #ff43cd4d;animation:slideUp .3s ease}.delete-confirm-header{margin-bottom:25px;text-align:center}.delete-confirm-header h2{font-family:var(--font-primary);font-size:24px;color:#ff43cd;margin:0;text-transform:uppercase;letter-spacing:1px}.delete-confirm-content{margin-bottom:30px}.delete-warning{color:#ffffffe6;font-size:15px;line-height:1.6;margin-bottom:20px;text-align:center}.delete-warning strong{color:#ff43cd;font-weight:400}.delete-instruction{color:#fffc;font-size:14px;margin-bottom:15px;text-align:center}.item-name-highlight{color:#cd43ff;font-family:var(--font-primary);font-weight:400;letter-spacing:.5px}.delete-confirm-input{width:100%;padding:12px 16px;background:#00000080;border:2px solid rgba(255,67,205,.3);border-radius:8px;color:#fff;font-size:16px;font-family:var(--font-primary);letter-spacing:.5px;outline:none;transition:all .3s ease}.delete-confirm-input:focus{border-color:#ff43cd80;background:#000000b3;box-shadow:0 0 20px #ff43cd33}.delete-confirm-input.valid{border-color:#00ff0080;box-shadow:0 0 20px #0f03}.delete-confirm-input::placeholder{color:#ffffff4d;font-style:normal}.delete-confirm-input:disabled{opacity:.5;cursor:not-allowed}.delete-confirm-actions{display:flex;gap:15px;justify-content:center}.settings-modal{background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:16px;width:90%;max-width:780px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080,0 0 100px #cd43ff33;animation:slideUp .3s ease}.settings-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:.25px solid rgba(205,67,255,.2)}.settings-modal .modal-title{font-family:var(--font-primary);color:#cd43ff;font-size:24px;font-weight:500;letter-spacing:1px;margin:0}.settings-modal .modal-content{flex:1;overflow-y:auto;padding:16px 24px 24px}.settings-modal .modal-content::-webkit-scrollbar{width:8px}.settings-modal .modal-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.settings-modal .modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.settings-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.settings-section{margin-bottom:60px}.settings-section:last-child{margin-bottom:0}.settings-section-title{font-family:var(--font-primary);color:#fffffff2;font-size:15px;font-weight:500;letter-spacing:.5px;margin:0 0 14px}.settings-question-hint{color:#fff9;font-size:13px;margin:-8px 0 14px;font-style:normal}.language-section{display:flex;align-items:center;justify-content:flex-start;gap:16px}.language-section .settings-section-title{margin:0;white-space:nowrap}.settings-lang-dropdown{width:200px}.settings-lang-dropdown .custom-dropdown-trigger{border:1px solid rgba(205,67,255,.4)}.setting-description{margin-top:14px;padding:14px 16px;background:transparent;border-radius:10px;border-left:3px solid rgba(205,67,255,.3)}.description-text{font-size:14px;color:#ffffffb3;line-height:1.6;margin:0}.description-text.highlight{color:#cd43ffe6}.description-hint{font-size:13px;color:#cd43ff99;font-style:normal;line-height:1.5;margin:16px 0 0}.privacy-protected-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;padding:40px 20px}.privacy-protected-title{font-family:var(--font-primary);color:#ff43cd;font-size:20px;font-weight:400;letter-spacing:1px;margin:0 0 16px;text-shadow:0 0 20px rgba(255,67,205,.4)}.privacy-protected-message{color:#fffc;font-size:15px;line-height:1.6;max-width:400px;margin:0}.young-adult-section{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,67,205,.2)}.young-adult-section .settings-section-title{color:#ff43cde6}.young-adult-section .setting-description{border-left-color:#ff43cd66}.delete-account-section{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,67,205,.2);display:flex;justify-content:center}.delete-account-btn{min-width:200px}@media (max-width: 600px){.settings-modal{width:95%;max-height:90vh}.settings-modal .modal-header{padding:18px}.settings-modal .modal-title{font-size:20px}.settings-modal .modal-content{padding:14px 18px 20px}.settings-section-title{font-size:14px}.description-text{font-size:13px}.description-hint{font-size:12px}}.desktop-link-status{display:flex;align-items:center;gap:10px;padding:10px 0}.desktop-link-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.desktop-link-indicator.connected{background:#43ff97;box-shadow:0 0 8px #43ff9780}.desktop-link-indicator.disconnected{background:#ffffff4d}.desktop-link-text{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffffffe6}.epic-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.epic-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:650px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideUp .3s ease}.epic-modal-bg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;border-radius:12px;z-index:0}.epic-modal-header{position:relative;z-index:1;display:flex;align-items:center;padding:12px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.epic-modal-header-left{flex:1}.epic-modal-title{flex:1;font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5);text-align:center}.epic-modal-header-actions{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:8px}.epic-bg-button{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffb3;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.epic-bg-button:hover{background:#cd43ff33;color:#cd43ff;border-color:#cd43ff80}.epic-bg-button.epic-bg-remove{color:#ff43cdb3;border-color:#ff43cd4d;background:#ff43cd1a}.epic-bg-button.epic-bg-remove:hover{color:#ff43cd;border-color:#ff43cd80;background:#ff43cd33}.epic-modal-close{background:transparent;border:none;color:#cd43ff99;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.epic-modal-close:hover{color:#cd43ff;background:#cd43ff1a}.epic-modal-content{position:relative;z-index:1;padding:24px;overflow-y:auto;flex:1}.epic-modal-content::-webkit-scrollbar{width:8px}.epic-modal-content::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.epic-modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.epic-modal-subtitle{font-family:var(--font-primary);font-size:.95rem;color:#ffffffb3;margin:0 0 20px;text-align:center}.epic-benefits-list{display:flex;flex-direction:column;gap:10px}.epic-benefit-item{padding:10px 14px;background:#cd43ff08;border:1px solid rgba(205,67,255,.1);border-radius:8px;transition:all .2s ease;text-align:center}.epic-benefit-item:hover{background:#cd43ff0f;border-color:#cd43ff33}.epic-benefit-title{font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#cd43ff;margin:0 0 4px;text-align:center}.epic-benefit-description{font-size:.95rem;color:#ffffffb3;margin:0;line-height:1.4;text-align:center}.epic-price-info{display:flex;flex-direction:column;align-items:center;gap:2px}.epic-price{font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#cd43ff;text-shadow:0 0 15px rgba(205,67,255,.4)}.epic-price-note{font-size:.7rem;color:#fff6}.epic-error{margin-top:16px;padding:12px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#f87171;font-size:.9rem;text-align:center}.epic-modal-footer{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;padding:10px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.epic-status{display:flex;align-items:center;gap:8px}.epic-status-label{font-family:var(--font-primary);font-size:.8rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.epic-status-value{font-family:var(--font-primary);font-size:.85rem;font-weight:400;padding:4px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.epic-status-value.premium{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.epic-status-value.free{background:#ffffff0d;color:#fff9;border:1px solid rgba(255,255,255,.15)}.epic-modal-actions{display:flex;gap:12px}.game-info-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;padding:40px;animation:gameInfoFadeIn .2s ease}.game-info-modal{position:relative;background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:16px;width:100%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000080,0 0 40px #cd43ff1a;animation:gameInfoSlideUp .3s ease}@keyframes gameInfoFadeIn{0%{opacity:0}to{opacity:1}}@keyframes gameInfoSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.game-info-modal-bg{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center top;opacity:.25}.game-info-modal-content{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.game-info-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 16px}.game-info-modal-title{margin:0;font-family:var(--font-primary);font-size:28px;font-weight:400;color:#cd43ff;letter-spacing:1px;text-shadow:0 2px 10px rgba(205,67,255,.3)}.game-info-modal-close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:50%;color:#ffffffb3;font-size:28px;cursor:pointer;transition:all .2s;line-height:1}.game-info-modal-close:hover{background:#cd43ff33;border-color:#cd43ff66;color:#cd43ff;transform:scale(1.1)}.game-info-modal-body{flex:1;min-height:0;overflow-y:auto;padding:0 28px 24px;color:#ffffffd9;font-size:15px;line-height:1.7}.game-info-description{margin-bottom:24px;padding:20px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:12px}.game-info-description p{margin:0;font-size:15px;line-height:1.7;color:#ffffffe6}.game-info-description.empty p{color:#ffffff80;font-style:normal}.game-info-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.game-info-stat{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:6px}.game-info-stat .stat-label{font-size:11px;font-weight:400;color:#cd43ffcc;text-transform:uppercase;letter-spacing:.5px}.game-info-stat .stat-value{font-size:13px;color:#ffffffe6;text-align:right}.game-info-modal-footer{display:flex;justify-content:center;gap:12px;padding:16px 28px 24px}.game-info-modal-body::-webkit-scrollbar{width:8px}.game-info-modal-body::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.game-info-modal-body::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.game-info-modal-body::-webkit-scrollbar-thumb:hover{background:#cd43ff80}@media (max-width: 600px){.game-info-modal-backdrop{padding:20px}.game-info-stats{grid-template-columns:1fr}.game-info-modal-title{font-size:22px}}.invite-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff33;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.invite-modal-header{padding:24px 24px 16px;border-bottom:1px solid rgba(205,67,255,.2)}.invite-modal-header h2{font-family:var(--font-primary);color:#cd43ff;font-size:24px;margin:0 0 8px;letter-spacing:1px}.invite-modal-subtitle{color:#ffffffb3;font-size:14px;margin:0}.invite-modal-content{padding:16px 24px;flex:1;overflow-y:auto;min-height:200px;max-height:400px}.invite-error{background:#ff43431a;border:1px solid rgba(255,67,67,.3);border-radius:8px;padding:12px 16px;color:#ff6b6b;font-size:14px;margin-bottom:16px}.invite-empty{display:flex;align-items:center;justify-content:center;height:150px;color:#ffffff80;font-size:14px;text-align:center}.invite-games-list{display:flex;flex-direction:column;gap:8px}.invite-game-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:8px;cursor:pointer;transition:all .2s ease}.invite-game-item:hover:not(.sent){background:#cd43ff1a;border-color:#cd43ff4d;transform:translate(4px)}.invite-game-item.sent{cursor:default;opacity:.7;background:#43cd430d;border-color:#43cd4333}.invite-game-info{display:flex;flex-direction:column;gap:4px}.invite-game-name{font-family:var(--font-primary);color:#cd43ff;font-size:16px;font-weight:500}.invite-game-role{color:#ffffff80;font-size:12px;text-transform:uppercase;letter-spacing:1px}.invite-game-action{font-size:12px}.invite-click{color:#cd43ff99;transition:color .2s ease}.invite-game-item:hover:not(.sent) .invite-click{color:#cd43ff}.invite-sending{color:#cd43ffcc;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.invite-sent{color:#43cd43;font-weight:500}.invite-modal-footer{padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);display:flex;justify-content:flex-end}.avatar-cropper-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;display:flex;align-items:center;justify-content:center;animation:avatarFadeIn .3s ease}@keyframes avatarFadeIn{0%{opacity:0}to{opacity:1}}.avatar-cropper-modal{background:linear-gradient(135deg,#1a1a2efa,#101020fa);border:1px solid rgba(205,67,255,.3);border-radius:16px;padding:24px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;gap:20px;box-shadow:0 20px 60px #cd43ff4d}.avatar-cropper-header{text-align:center}.avatar-cropper-header h3{color:#cd43ff;font-family:var(--font-primary);font-size:22px;font-weight:400;margin:0 0 8px;letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.3)}.avatar-cropper-header p{color:#cd43ffb3;font-size:14px;margin:0}.avatar-cropper-main{display:flex;align-items:center;gap:30px;width:100%}.avatar-cropper-controls-left{display:flex;flex-direction:column;gap:16px}.avatar-cropper-container{display:flex;flex-direction:column;gap:16px;align-items:center;flex:0 0 auto}.avatar-cropper-controls-right{display:flex;flex-direction:column;gap:12px}.avatar-cropper-frame{width:400px;height:400px;max-width:90vw;max-height:90vw;background:#000;border:2px solid rgba(205,67,255,.5);border-radius:50%;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none}.avatar-cropper-image{position:absolute;top:0;left:0;transform-origin:top left;transition:transform .1s ease;max-width:none;pointer-events:none}.avatar-cropper-frame-overlay{position:absolute;top:0;left:0;right:0;bottom:0;border:2px solid rgba(205,67,255,.5);border-radius:50%;pointer-events:none;z-index:1;box-shadow:inset 0 0 30px #cd43ff1a}.avatar-zoom-controls{display:flex;flex-direction:column;align-items:center;gap:8px;background:#00000080;padding:12px;border-radius:8px;border:1px solid rgba(205,67,255,.2)}.avatar-zoom-btn{min-width:50px;height:32px;border-radius:8px;border:1px solid rgba(205,67,255,.3);background:#cd43ff1a;color:#cd43ff;font-size:13px;font-weight:400;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;padding:0 8px}.avatar-zoom-btn:hover{background:#cd43ff33;border-color:#cd43ff80;transform:scale(1.1)}.avatar-zoom-input-wrapper{display:flex;align-items:center;background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.avatar-zoom-input{width:50px;height:30px;background:transparent;border:none;color:#cd43ff;font-size:14px;font-weight:400;text-align:center;padding:0 4px;outline:none}.avatar-zoom-input-wrapper:focus-within{border-color:#cd43ff80;background:#cd43ff0d}.avatar-zoom-input::-webkit-inner-spin-button,.avatar-zoom-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.avatar-zoom-percent{color:#cd43ff;font-size:14px;font-weight:400;padding-right:8px;opacity:.7}@media (pointer: coarse){.avatar-cropper-frame{touch-action:none}.avatar-zoom-btn{width:40px;height:40px;font-size:24px}}.custom-request-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.custom-request-modal-content{background:var(--bg-secondary, #242424);border:1px solid var(--border-color, #333);border-radius:8px;max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border-color, #333)}.modal-header h3{margin:0;font-size:1.2rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.modal-close-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary, #a0a0a0);font-size:1.5rem;cursor:pointer;border-radius:4px;transition:all .2s}.modal-close-btn:hover:not(:disabled){background:var(--bg-hover, #333);color:var(--text-primary, #e0e0e0)}.modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.modal-body{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.field-info{padding:1rem;background:#6366f11a;border:1px solid rgba(99,102,241,.3);border-radius:6px}.field-info-label{margin:0 0 .25rem;font-size:.8rem;color:var(--text-secondary, #a0a0a0);text-transform:uppercase;letter-spacing:.5px}.field-info-value{margin:0;font-size:1rem;font-weight:400;color:var(--primary-color, #6366f1)}.modal-description{margin:0;font-size:.9rem;color:var(--text-secondary, #a0a0a0);line-height:1.5}.modal-error{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ff43cd;font-size:.9rem}.request-form{display:flex;flex-direction:column;gap:1.25rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-primary, #e0e0e0)}.form-input,.form-textarea{width:100%;padding:.75rem;background:var(--bg-tertiary, #2a2a2a);border:1px solid var(--border-color, #333);border-radius:6px;color:var(--text-primary, #e0e0e0);font-size:.95rem;font-family:inherit;transition:all .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color, #6366f1);background:var(--bg-secondary, #242424)}.form-input:disabled,.form-textarea:disabled{opacity:.6;cursor:not-allowed}.form-textarea{resize:vertical;min-height:100px;line-height:1.5}.input-hint{font-size:.8rem;color:var(--text-secondary, #a0a0a0);font-style:normal}.modal-info-box{display:flex;gap:.75rem;padding:1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:6px}.info-icon{font-size:1.2rem;color:#60a5fa;flex-shrink:0}.modal-info-box strong{display:block;margin-bottom:.25rem;font-size:.9rem;color:var(--text-primary, #e0e0e0)}.modal-info-box p{margin:0;font-size:.85rem;color:var(--text-secondary, #a0a0a0);line-height:1.4}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color, #333)}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}@media (max-width: 768px){.custom-request-modal-content{max-width:100%;max-height:100vh;border-radius:0}.modal-header,.modal-body,.modal-footer{padding:1rem}.modal-footer{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.table-cell-input,.table-cell-textarea,.table-cell-select,.table-cell-number,.table-cell-pool-numeric{--input-background: rgba(0, 0, 0, .7);--border-color: rgba(205, 67, 255, .3);--text-color: #CD43FF;--text-muted: rgba(255, 255, 255, .5);--focus-color: #CD43FF;--disabled-background: rgba(0, 0, 0, .4)}.table-cell-input{width:100%;padding:.25rem .3rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background-color:var(--input-background);color:var(--text-color);font-weight:400}.table-cell-input:focus{outline:2px solid var(--focus-color);outline-offset:1px}.table-cell-input:disabled{background-color:var(--disabled-background);cursor:not-allowed;opacity:.6}.table-cell-input[type=number]::-webkit-inner-spin-button,.table-cell-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.table-cell-input[type=number]{-moz-appearance:textfield;text-align:center}.table-cell-text{min-width:15px}.table-cell-textarea{width:100%;padding:.25rem .3rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;resize:vertical;min-height:40px;background-color:var(--input-background);color:var(--text-color)}.table-cell-number{display:flex;align-items:center;gap:.25rem;justify-content:center;width:100%}.table-cell-number input[type=number]{text-align:center}.table-cell-unit{font-size:.85rem;color:var(--text-muted);white-space:nowrap}.table-cell-boolean{display:flex;justify-content:center;align-items:center}.table-cell-dots{display:flex;gap:.5rem;align-items:center;justify-content:center}.table-cell-dot{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:0;line-height:1;transition:transform .1s}.table-cell-dot:hover:not(:disabled){transform:scale(1.15)}.table-cell-dot:disabled{cursor:not-allowed;opacity:.5}.table-cell-pool-numeric{display:flex;align-items:center;gap:.25rem;justify-content:center}.table-cell-pool-current{width:50px;text-align:center}.table-cell-pool-separator{font-weight:400;color:var(--text-muted)}.table-cell-pool-max{font-weight:400;color:var(--text-color)}.table-cell-pool-checkbox{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.table-cell-select{width:100%;padding:.25rem .3rem;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background-color:var(--input-background);color:var(--text-color)}.table-cell-select:disabled{background-color:var(--disabled-background);cursor:not-allowed;opacity:.6}.table-cell-radio{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.table-cell-radio-option{display:flex;align-items:center;gap:.25rem;font-size:.85rem;cursor:pointer}.table-cell-radio-option input[type=radio]{cursor:pointer}.table-cell-radio-option input[type=radio]:disabled{cursor:not-allowed}.table-cell-date{min-width:120px}.table-cell-unsupported{display:flex;justify-content:center;align-items:center;color:var(--text-muted);font-style:normal;padding:.5rem}.checkbox-grid{display:inline-block;width:100%;max-width:100%;overflow-x:auto;--background-primary: rgba(0, 0, 0, .5);--background-secondary: rgba(0, 0, 0, .3);--header-background: rgba(205, 67, 255, .15);--row-label-background: rgba(205, 67, 255, .08);--cell-background: rgba(0, 0, 0, .6);--cell-hover: rgba(205, 67, 255, .12);--row-hover: rgba(205, 67, 255, .08);--border-color: rgba(205, 67, 255, .25);--text-primary: rgba(255, 255, 255, .9);--text-secondary: rgba(255, 255, 255, .6);--penalty-color: #CD43FF;--display-cell-background: rgba(0, 0, 0, .7);--display-text-color: #CD43FF}.checkbox-grid-table{border-collapse:collapse;width:100%;table-layout:fixed;border:1px solid var(--border-color);background-color:var(--background-primary)}.checkbox-grid-empty{padding:2rem;text-align:center;color:var(--text-secondary, #666);font-style:normal;border:1px dashed var(--border-color, #ccc);border-radius:4px;background-color:var(--background-secondary, #f5f5f5)}.checkbox-grid-empty p{margin:0}.checkbox-grid-header{padding:.5rem .75rem;background-color:var(--header-background);border:1px solid var(--border-color);font-weight:400;font-size:.9rem;text-align:center;color:var(--text-primary)}.checkbox-grid-header--left{text-align:left}.checkbox-grid-header--center{text-align:center}.checkbox-grid-header--right{text-align:right}.checkbox-grid-corner{padding:.5rem .75rem;background-color:var(--header-background);border:1px solid var(--border-color);font-weight:400}.checkbox-grid-corner--left{text-align:left}.checkbox-grid-corner--center{text-align:center}.checkbox-grid-corner--right{text-align:right}.checkbox-grid-row-label{padding:.5rem .75rem;background-color:var(--row-label-background);border:1px solid var(--border-color);font-weight:400;font-size:.9rem;white-space:normal;word-wrap:break-word;color:var(--text-primary)}.checkbox-grid-row-label--left{text-align:left}.checkbox-grid-row-label--center{text-align:center}.checkbox-grid-row-label--right{text-align:right}.checkbox-grid-label{margin-right:.5rem}.checkbox-grid-penalty{font-size:.85rem;color:var(--penalty-color);font-weight:400;margin-left:.25rem}.checkbox-grid-icon{margin-right:.4rem;font-size:1rem}.checkbox-grid-description{margin-left:.3rem;font-size:.8rem;color:var(--text-secondary);cursor:help}.checkbox-grid-cell{padding:.5rem;border:1px solid var(--border-color);text-align:center;background-color:var(--cell-background);vertical-align:middle}.checkbox-grid-cell:hover{background-color:var(--cell-hover)}.checkbox-grid-cell--display{background-color:var(--display-cell-background);font-weight:400;color:var(--display-text-color)}.checkbox-grid-cell--display:hover{background-color:var(--display-cell-background)}.checkbox-grid-display-value{display:inline-block;min-width:2rem;text-align:center}.checkbox-grid--compact .checkbox-grid-header,.checkbox-grid--compact .checkbox-grid-row-label,.checkbox-grid--compact .checkbox-grid-cell{padding:.3rem .5rem;font-size:.85rem}.checkbox-grid--normal .checkbox-grid-header,.checkbox-grid--normal .checkbox-grid-row-label,.checkbox-grid--normal .checkbox-grid-cell{padding:.5rem .75rem;font-size:.9rem}.checkbox-grid--spacious .checkbox-grid-header,.checkbox-grid--spacious .checkbox-grid-row-label,.checkbox-grid--spacious .checkbox-grid-cell{padding:.75rem 1rem;font-size:1rem}.checkbox-grid-row:hover .checkbox-grid-cell{background-color:var(--row-hover)}@media print{.checkbox-grid-table{border:2px solid #000}.checkbox-grid-header,.checkbox-grid-row-label,.checkbox-grid-cell{border:1px solid #000}}.compound-repeating{display:flex;flex-direction:column;gap:4px;width:100%}.compound-instance-row{display:grid;grid-template-columns:1fr 0px;align-items:center;overflow:visible}.compound-instance-name .compound-name-input{font-size:.9rem;padding:.15rem .4rem .15rem 0;background:transparent;border:1px solid transparent;border-left:none;border-radius:0 4px 4px 0;line-height:1.4;width:0;flex:1;min-width:0;font-family:var(--font-primary);font-weight:400;color:#ffffffe6}.compound-instance-name .compound-name-input:focus{background:#00000080;border-color:#cd43ff4d;border-left:none}.compound-instance-name .compound-name-input::placeholder{color:#cd43ff4d}.compound-instance-name .compound-name-input:disabled{opacity:.6;cursor:not-allowed}.compound-remove-btn{margin-left:-8px;background:none;border:1px solid transparent;color:var(--text-secondary, #888);font-size:1rem;cursor:pointer;width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:4px;line-height:1;transition:color .15s,border-color .15s,background .15s}.compound-remove-btn:hover{color:#ff43cd;border-color:#ff43cd80;background:#ff43cd1a}.compound-add-btn.vstyle-btn{background:#cd43ff14;border:1px dashed rgba(205,67,255,.3);color:#cd43ff99;font-size:1.1rem;cursor:pointer;padding:4px 12px;border-radius:6px;width:100%;transition:color .2s,border-color .2s,background .2s}.compound-add-btn.vstyle-btn:hover{color:#cd43ff;border-color:#cd43ff99;background:#cd43ff26}.compound-no-entries{color:var(--text-tertiary, #666);font-size:.85rem;font-style:italic}.catalog-picker-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.catalog-picker-modal{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;font-family:var(--font-primary)}.catalog-picker-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(205,67,255,.15)}.catalog-picker-header h3{margin:0;font-size:1rem;font-weight:600;color:#ffffffe6}.catalog-picker-close{background:none;border:none;color:#ffffff80;font-size:1.1rem;cursor:pointer;padding:.25rem;transition:all .2s ease}.catalog-picker-close:hover{color:#ffffffe6}.catalog-picker-search{padding:.75rem 1.25rem}.catalog-picker-search-input{width:100%;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:.5rem .75rem;color:#fff;font-family:inherit;font-size:.85rem;transition:all .2s ease}.catalog-picker-search-input:focus{outline:none;border-color:#cd43ff80;box-shadow:0 0 8px #cd43ff26}.catalog-picker-categories{display:flex;gap:.5rem;padding:0 1.25rem .75rem;overflow-x:auto;flex-shrink:0}.catalog-category-tab{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:4px;padding:.25rem .75rem;color:#fff9;font-family:inherit;font-size:.75rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.catalog-category-tab:hover{background:#cd43ff1a;color:#fffc}.catalog-category-tab.active{background:#cd43ff33;border-color:#cd43ff66;color:#fff}.catalog-picker-entries{flex:1;min-height:0;overflow-y:auto;padding:0 1.25rem .75rem}.catalog-picker-loading,.catalog-picker-empty,.catalog-picker-error{text-align:center;padding:2rem;color:#fff6;font-size:.85rem}.catalog-picker-error{color:var(--color-danger, #ff4757)}.catalog-entry-card{background:#0000004d;border:1px solid rgba(205,67,255,.1);border-radius:6px;padding:.75rem;margin-bottom:.5rem;cursor:pointer;transition:all .2s ease}.catalog-entry-card:hover{background:#0006;border-color:#cd43ff4d}.catalog-entry-header{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.25rem}.catalog-entry-top-row{display:flex;justify-content:space-between;align-items:center}.catalog-entry-name{font-weight:600;font-size:.9rem;color:#ffffffe6}.catalog-entry-rarity{font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.catalog-entry-category{font-size:.65rem;color:#cd43ff99;text-transform:uppercase;letter-spacing:.05em}.catalog-entry-description{margin:.15rem 0 0;font-size:.8rem;color:#ffffff80;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.catalog-entry-effects{display:flex;gap:.5rem;margin-top:.35rem;flex-wrap:wrap}.catalog-entry-effect{font-size:.7rem;color:#ffd700cc;background:#ffd7001a;padding:.1rem .4rem;border-radius:3px}.catalog-picker-footer{padding:.75rem 1.25rem;border-top:1px solid rgba(205,67,255,.15)}.catalog-custom-item-btn{width:100%;background:none;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:.5rem;color:#cd43ffcc;font-family:inherit;font-size:.85rem;cursor:pointer;transition:all .2s ease}.catalog-custom-item-btn:hover{background:#cd43ff1a;border-color:#cd43ff80}.record-table-container{border:1px solid rgba(205,67,255,.15);border-radius:8px;overflow-x:auto;font-family:var(--font-primary)}.record-table{width:100%;border-collapse:collapse;table-layout:auto}.record-table.record-table-fixed{table-layout:fixed}.record-table thead th{background:#00000080;border-bottom:1px solid rgba(205,67,255,.2);padding:.5rem .75rem;text-align:left;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#ffffffb3;white-space:nowrap;transition:all .2s ease}.record-table thead th.col-equipped{width:60px;text-align:center}.record-table thead th.col-actions{width:40px;text-align:center}.record-table tbody tr{background:#0003;border-bottom:1px solid rgba(205,67,255,.1);transition:all .2s ease}.record-table tbody tr:hover:not(.sentinel-row){background:#0000004d}.record-table tbody td{padding:.35rem .5rem;vertical-align:middle}.record-table tbody tr.sentinel-row{opacity:.4;border-bottom:none;cursor:pointer}.record-table tbody tr.sentinel-row:hover{opacity:.6}.record-table tbody tr.sentinel-row td{color:#ffffff4d;font-style:italic}.sentinel-add-hint{display:flex;align-items:center;gap:.5rem;cursor:pointer}.sentinel-plus{font-size:1rem;color:#cd43ff66}.record-table-cell-input{width:100%;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:4px;padding:.3rem .5rem;color:inherit;font-family:inherit;font-size:.85rem;transition:all .2s ease}.record-table-cell-input:focus{outline:none;border-color:#cd43ff66;box-shadow:0 0 0 1px #cd43ff1a}.record-table-cell-input[type=number]{width:70px}.record-table-cell-input:disabled,.record-table-cell-input.read-only{opacity:.6;cursor:not-allowed}.record-table-calculated{font-size:.85rem;color:#fffc;padding:.3rem 0}.record-table-equipped-toggle{display:flex;align-items:center;justify-content:center}.equipped-checkbox{width:18px;height:18px;cursor:pointer;accent-color:#FFD700;transition:all .2s ease}.equipped-checkbox:checked{filter:drop-shadow(0 0 3px rgba(255,215,0,.6))}.equipped-checkbox:disabled{opacity:.4;cursor:not-allowed}.record-table-delete-btn{background:none;border:none;color:#ffffff4d;cursor:pointer;font-size:.9rem;padding:.25rem;border-radius:4px;transition:all .2s ease;line-height:1}.record-table-delete-btn:hover{color:var(--color-danger, #ff4757);background:#ff47571a}.record-table-effects-summary{font-size:.75rem;color:#ffd700cc;padding:.15rem .5rem;background:#0000004d;border-top:1px solid rgba(205,67,255,.1)}.record-table-gm-badge{font-size:.65rem;color:#ffd70099;text-transform:uppercase;letter-spacing:.05em;padding:.1rem .4rem;border:1px solid rgba(255,215,0,.2);border-radius:3px;margin-left:.5rem}.record-table-readonly-overlay{pointer-events:none;opacity:.7}.record-table-cell-select{width:100%;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:4px;padding:.3rem .5rem;color:inherit;font-family:inherit;font-size:.85rem;transition:all .2s ease}.record-table-cell-select:focus{outline:none;border-color:#cd43ff66}.container-header{background:#0006;border-bottom:1px solid rgba(205,67,255,.2);cursor:pointer;transition:background .2s ease}.container-header:hover{background:#00000080}.container-toggle-cell{text-align:center;padding:.6rem .25rem}.container-header .collapse-icon{display:inline-block;transition:transform .2s;font-size:.75rem;color:#ffffff80}.container-header .collapse-icon.expanded{transform:rotate(180deg)}.container-name-cell{padding:.6rem .75rem;display:flex;align-items:center;gap:.5rem}.container-name{font-weight:600;font-size:.85rem;color:#ffffffe6;white-space:nowrap}.container-weight-cell{font-size:.8rem;color:#fff9;padding:.6rem .5rem;white-space:nowrap}.container-capacity-cell{padding:.6rem .5rem;display:flex;align-items:center;gap:1rem}.container-capacity{display:flex;align-items:center;gap:.4rem}.capacity-text{font-size:.7rem;color:#ffffff80;white-space:nowrap}.capacity-bar{width:50px;height:4px;background:#0000004d;border-radius:2px;overflow:hidden}.capacity-fill{height:100%;background:#cd43ff99;border-radius:2px;transition:width .3s ease,background .3s ease}.container-capacity.warn .capacity-fill{background:#cd43ffe6}.container-capacity.over .capacity-fill{background:gold;box-shadow:0 0 4px #ffd70066}.container-capacity.over .capacity-text{color:#ffd700cc}.container-fixed-badge{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:#cd43ffb3;border:1px solid rgba(205,67,255,.25);border-radius:3px;padding:.1rem .35rem}.container-config-row td{padding:.4rem .75rem .5rem 2.5rem;border-bottom:1px solid rgba(205,67,255,.1);background:#00000040}.container-config{display:flex;gap:1.25rem;align-items:center}.container-config-field{display:flex;align-items:center;gap:.4rem;font-size:.7rem;color:#ffffff80}.container-config-input{width:70px;font-size:.75rem;padding:.2rem .4rem}.container-config-toggle{gap:.3rem}.container-item-row td:first-child,.container-sentinel td{padding-left:1.75rem}.container-add-actions{display:flex;gap:1.5rem;align-items:center}.container-add-btn .sentinel-plus{color:#cd43ff99}.sentinel-label{font-size:.75rem;color:#ffffff4d;margin-left:.25rem}.sentinel-add-hint:hover .sentinel-label{color:#ffffff80}.container-delete{margin-left:.5rem;opacity:0;transition:opacity .2s ease}.container-header:hover .container-delete{opacity:1}.field-renderer{display:flex;flex-direction:row;align-items:center;gap:1rem}.field-container.horizontal.simple-field .field-renderer{display:contents}.field-renderer.field-type-textarea,.field-renderer.field-type-richtext,.field-renderer.field-type-radio,.field-renderer.field-type-image,.field-renderer.field-type-divider,.field-renderer.field-type-heading,.field-renderer.field-type-list,.field-renderer.field-type-checkbox_grid,.field-renderer.field-type-record_table{flex-direction:column;align-items:flex-start}.field-renderer.field-type-textarea .field-content,.field-renderer.field-type-richtext .field-content,.field-renderer.field-type-radio .field-content,.field-renderer.field-type-image .field-content,.field-renderer.field-type-checkbox_grid .field-content,.field-renderer.field-type-record_table .field-content{width:100%}.field-renderer.field-type-list,.field-renderer.field-type-list .field-content{display:contents}.field-renderer.has-error .field-input,.field-renderer.has-error .field-input:focus{border-color:#ff43cd}.field-label{font-size:.9rem;font-weight:400;color:var(--text-primary, #e0e0e0);display:flex;align-items:center;gap:.4rem;min-width:150px;flex-shrink:0}.dynamic-label-input-wrapper{display:flex;align-items:center;gap:.4rem;min-width:150px;flex-shrink:0}.dynamic-label-input{font-size:.9rem;font-weight:400;color:#ffffffe6;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:.3rem .5rem;width:100%;max-width:140px}.dynamic-label-input:focus{outline:none;border-color:#cd43ff}.dynamic-label-input:disabled{opacity:.7;cursor:default}.required-mark{color:#ff43cd}.help-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:#cd43ff33;border-radius:50%;font-size:.7rem;color:#cd43ffb3;cursor:help;transition:background .2s}.help-icon:hover{background:#cd43ff4d}.formula-indicator{display:inline-flex;align-items:center;justify-content:center;padding:1px 5px;background:#ff43cd26;border:1px solid rgba(255,67,205,.4);border-radius:4px;font-size:.65rem;font-family:Courier New,monospace;font-weight:400;font-style:normal;color:#ff43cd;cursor:help;transition:all .2s;text-transform:lowercase;margin-left:auto;flex-shrink:0}.formula-indicator:hover{background:#ff43cd40;border-color:#ff43cd99}.gm-indicator{display:inline-flex;align-items:center;justify-content:center;padding:1px 5px;background:#ff008026;border:1px solid rgba(255,0,128,.4);border-radius:4px;font-size:.65rem;font-family:var(--font-primary);font-weight:400;color:#ff0080;cursor:help;transition:all .2s;text-transform:uppercase;letter-spacing:.5px;margin-left:auto;flex-shrink:0}.gm-indicator:hover{background:#ff008040;border-color:#ff008099}.field-player-locked{display:inline-flex;align-items:center;justify-content:center;padding:1px 4px;color:#cd43ff80;cursor:help;transition:all .2s;vertical-align:middle;margin-left:4px}.field-player-locked:hover{color:#cd43ffcc}.field-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.field-input-row{display:flex;align-items:center;gap:.5rem;flex:1}.field-input{width:100%;padding:.7rem .9rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:.95rem;font-family:inherit;transition:all .2s}.field-input:focus{outline:none;border-color:#cd43ff;background:#0009;box-shadow:0 0 10px #cd43ff33}.field-input:disabled{opacity:.6;cursor:not-allowed}.custom-dropdown.field-input{display:contents!important}.custom-dropdown.field-input .custom-dropdown-trigger{width:100%!important;padding:.7rem .9rem!important;background:#00000080!important;border:1px solid rgba(205,67,255,.3)!important;border-radius:6px!important;color:#ffffffe6!important;font-size:.95rem!important;font-family:inherit!important;line-height:normal!important;box-sizing:border-box!important}.custom-dropdown.field-input .custom-dropdown-trigger:hover:not(:disabled){border-color:#cd43ff!important;background:#0009!important}.custom-dropdown.field-input .custom-dropdown-text.placeholder,.custom-dropdown.field-input .custom-dropdown-arrow{color:#fff6!important}.custom-dropdown.field-input .custom-dropdown-arrow svg{width:14px!important;height:14px!important}.custom-dropdown.field-input.disabled .custom-dropdown-trigger{border:1px solid rgba(205,67,255,.3)!important;background:#00000080!important;opacity:.6!important;cursor:not-allowed!important}.field-container.horizontal.simple-field .text-input{width:100%}.textarea-input,.richtext-input{resize:vertical;min-height:100px;line-height:1.5}.textarea-input.html-content{min-height:100px;max-height:400px;overflow-y:auto;line-height:1.6;white-space:normal}.textarea-input.html-content p{margin:0 0 .5em}.textarea-input.html-content p:last-child{margin-bottom:0}.textarea-input.html-content strong{color:#cd43ff;font-weight:400}.textarea-input.html-content:empty:before{content:attr(data-placeholder);color:#ffffff4d;pointer-events:none}.textarea-input.html-content.read-only{opacity:.6;cursor:not-allowed}.number-field-group{display:flex;align-items:center;gap:.5rem;width:fit-content}.field-renderer.field-type-number{justify-content:space-between}.field-renderer.field-type-number .field-content{flex:0 0 auto}.number-field-roll-display{display:flex;align-items:center;gap:.5rem;width:fit-content}.roll-display-value{width:60px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-family:inherit;font-size:.95rem;font-weight:400;font-variant-numeric:tabular-nums;cursor:default;transition:all .2s ease}.roll-display-value.unassigned{color:#cd43ff;background:#0000004d;border:1px dashed rgba(205,67,255,.3)}.roll-display-value.assigned{color:#fffffff2;background:#00000080;border:1px solid rgba(205,67,255,.4);box-shadow:0 0 8px #cd43ff1a}.wizard-field.waiting-for-roll .roll-display-value.unassigned{color:#ffc107d9;border-color:#ffc1074d}.number-field-spread{justify-content:flex-start;gap:6px}.number-step-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;font-size:1.2rem;font-weight:400;cursor:pointer;transition:all .2s ease;flex-shrink:0}.number-step-btn:hover:not(:disabled){background:#cd43ff4d;border-color:#cd43ff80}.number-step-btn:active:not(:disabled){transform:scale(.95)}.number-step-btn:disabled{opacity:.3;cursor:not-allowed}.number-input-center{width:60px;text-align:center;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-family:inherit;font-size:.95rem;font-weight:400;padding:.7rem .5rem;outline:none;transition:all .2s ease;box-sizing:border-box}.number-input-center:focus{border-color:#cd43ff99;box-shadow:0 0 0 2px #cd43ff26}.number-step-btn--small{width:28px;height:28px;font-size:.9rem}.number-input-center--small{width:45px;height:28px;font-size:.85rem;padding:0 4px}.list-value-number-group{display:flex;align-items:center;gap:4px}.field-renderer input[type=number]::-webkit-inner-spin-button,.field-renderer input[type=number]::-webkit-outer-spin-button,.list-field input[type=number]::-webkit-inner-spin-button,.list-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field-renderer input[type=number],.list-field input[type=number]{-moz-appearance:textfield}.number-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:1.2rem;cursor:pointer;transition:all .2s;flex-shrink:0}.number-btn:hover:not(:disabled){background:#cd43ff33;border-color:#cd43ff}.number-btn:active:not(:disabled){transform:scale(.95)}.number-btn:disabled{opacity:.4;cursor:not-allowed}.number-input{width:50px;text-align:center;flex-shrink:0;padding:.5rem .3rem}.number-unit{font-size:.9rem;color:var(--text-secondary, #a0a0a0);white-space:nowrap}.dots-field{display:flex;gap:.5rem;flex-wrap:wrap}.dots-field-multi-row{display:flex;flex-direction:column;gap:4px}.dots-row{display:flex;gap:.5rem}.dot{background:transparent;border:none;font-size:1.6rem;cursor:pointer;transition:all .2s;padding:.1rem}.dot:not(:disabled):hover{transform:scale(1.2);filter:brightness(1.3)}.dot:disabled{cursor:not-allowed;opacity:.7}.pool-field{display:flex;align-items:center}.pool-field-numeric{flex-direction:row;gap:.5rem}.pool-current-input{width:80px;text-align:center;padding:.5rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:1rem;font-weight:400}.pool-current-input:focus{outline:none;border-color:#cd43ff}.pool-separator{font-size:1.2rem;color:var(--text-secondary, #a0a0a0);font-weight:400}.pool-max-display{font-size:1rem;color:var(--text-secondary, #a0a0a0);font-weight:400}.pool-field-checkbox{flex-direction:row;flex-wrap:wrap}.pool-checkbox{flex-shrink:0}.boolean-field{display:flex;align-items:center;gap:.6rem;font-size:.95rem;color:var(--text-primary, #e0e0e0);cursor:pointer;padding:.5rem 0}.boolean-field input[type=checkbox]{width:20px;height:20px;cursor:pointer}.select-input{cursor:pointer}.radio-field-group{display:flex;flex-direction:column;gap:.75rem}.radio-option{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:#ffffff05;border:1px solid var(--border-color, #333);border-radius:6px;cursor:pointer;transition:all .2s}.radio-option:hover{background:#ffffff0a;border-color:var(--primary-color, #6366f1)}.radio-option input[type=radio]{margin-right:.5rem}.option-desc{margin-left:1.75rem;font-size:.8rem;color:var(--text-secondary, #a0a0a0);font-style:normal}.date-input{cursor:pointer}.image-field{display:flex;flex-direction:column;gap:.5rem}.image-preview{position:relative;max-width:300px}.image-preview img{width:100%;height:auto;border-radius:6px;border:1px solid var(--border-color, #333)}.image-remove{position:absolute;top:.5rem;right:.5rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#000000b3;border:none;border-radius:4px;color:#fff;font-size:1rem;cursor:pointer;transition:background .2s}.image-remove:hover{background:#ef4444e6}.image-upload{display:flex;flex-direction:column;gap:.5rem}.image-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.image-input-styled{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:#00000080;border:2px dashed rgba(205,67,255,.3);border-radius:8px;transition:border-color .2s}.image-input-styled:hover{border-color:#cd43ff80}.image-input-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;background:#000000e6;color:#cd43ffcc;border:.25px solid rgba(205,67,255,.2);border-radius:8px;font-family:var(--font-primary);font-size:12px;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.image-input-button:hover:not(.disabled){color:#cd43ff;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff26;transform:translateY(-1px)}.image-input-button.disabled{opacity:.5;cursor:not-allowed}.image-input-filename{color:#ffffff80;font-size:13px;font-style:normal}.image-portrait-placeholder{width:150px;aspect-ratio:3 / 4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:#0006;border:2px dashed rgba(205,67,255,.25);border-radius:8px}.portrait-placeholder-icon{font-size:2.5rem;opacity:.3;line-height:1}.portrait-placeholder-text{font-size:.8rem;color:#ffffff59;font-style:normal;text-align:center;padding:0 .5rem}.upload-hint{font-size:.8rem;color:var(--text-secondary, #a0a0a0);font-style:normal}.dice-field{display:flex;gap:.75rem}.dice-input{flex:1}.dice-roll-btn{padding:.7rem 1.25rem;background:var(--primary-color, #6366f1);border:none;border-radius:6px;color:#fff;font-size:.9rem;font-weight:400;cursor:pointer;transition:background .2s;white-space:nowrap}.dice-roll-btn:hover:not(:disabled){background:var(--primary-hover, #4f46e5)}.dice-roll-btn:disabled{opacity:.6;cursor:not-allowed}.calculated-field{display:flex;flex-direction:column;gap:.35rem}.calculated-input{background:#6366f11a;border-color:#6366f14d;font-weight:400;cursor:not-allowed}.formula-hint{font-size:.8rem;color:var(--text-secondary, #a0a0a0);font-family:Courier New,monospace}.field-divider{border:none;border-top:1px solid var(--border-color, #333);margin:.5rem 0}.field-heading{margin:0;font-size:1.1rem;font-weight:400;color:var(--text-primary, #e0e0e0);padding-bottom:.5rem}.field-error{font-size:.8rem;color:#ff43cd;display:flex;align-items:center;gap:.35rem}.field-error:before{content:"⚠"}.locked-indicator{font-size:.7rem;color:#ffffff59;cursor:help;flex-shrink:0}.readonly-badge{font-size:.75rem;color:var(--text-secondary, #a0a0a0);font-style:normal}.unknown-field-type{padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ff43cd;font-size:.9rem}.modal-content{background:transparent;border:1px solid var(--border-color, #333);border-radius:8px;padding:2rem;max-width:500px;width:90%}.list-field{display:flex;flex-direction:column;gap:.5rem;width:100%}.list-field-prerendered{gap:.5rem}.list-slot{display:flex;align-items:center;width:100%}.list-slot-content{display:flex;align-items:center;gap:.75rem;width:100%}select.list-slot-label-select,.list-slot-label-text{min-width:150px;max-width:200px;padding:.4rem .6rem;border:1px solid rgba(205,67,255,.3);border-radius:4px;background-color:#00000080;color:#ffffffe6;font-size:.9rem}select.list-slot-label-select{cursor:pointer}.custom-dropdown.list-slot-label-select{min-width:150px;max-width:200px;padding:0;border:none;background:transparent}.list-slot-label-text{cursor:default}.list-slot-label-select:disabled{opacity:.6;cursor:not-allowed}.list-slot-value-wrapper{flex:1;display:flex;align-items:center}.list-slot-empty-value{color:var(--text-secondary, #888);font-style:normal}.list-slot-clear{background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;padding:.25rem .5rem;font-size:1.2rem;line-height:1;transition:color .2s}.list-slot-clear:hover{color:#ff43cd}.list-instances{display:flex;flex-direction:column;gap:.5rem}.list-instance{display:flex;align-items:center;gap:.5rem}.list-instance-content{display:flex;align-items:center;gap:.75rem;flex:1}.list-label-input,.list-label-select,.list-label-text{min-width:150px;max-width:200px;padding:.4rem .6rem;border:1px solid rgba(205,67,255,.3);border-radius:4px;background-color:#00000080;color:#ffffffe6;font-size:.9rem}.list-label-select{cursor:pointer}.list-label-text{cursor:default}.list-value-wrapper{flex:1;display:flex;align-items:center}.list-value-pool{display:flex;align-items:center;gap:.3rem;white-space:nowrap}.list-value-pool .pool-current{width:50px;text-align:center;padding:.3rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#ffffffe6;font-size:.9rem}.list-value-pool .pool-separator{font-size:1rem;color:var(--text-secondary, #a0a0a0);font-weight:400}.list-value-pool .pool-max{font-size:.9rem;color:var(--text-secondary, #a0a0a0);font-weight:400}.list-value-dots{display:flex;gap:.3rem;align-items:center}@media (max-width: 768px){.field-renderer{flex-direction:column;align-items:flex-start}.field-label{min-width:unset}.field-content{width:100%}.number-field-group{flex-wrap:wrap}.dice-field{flex-direction:column}.dice-roll-btn{width:100%}}.field-content--advancement .field-input-row{display:flex;align-items:center;gap:.5rem}.field-advancement-controls{display:flex;align-items:center;gap:.35rem;margin-left:.25rem;flex-shrink:0}.field-advancement-controls.locked{opacity:.5}.advancement-step-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid rgba(205,67,255,.4);border-radius:4px;background:#00000080;color:#cd43ff;font-size:.9rem;font-weight:400;cursor:pointer;transition:all .15s ease;padding:0;line-height:1}.advancement-step-btn:hover:not(:disabled){background:#cd43ff26;border-color:#cd43ff99;box-shadow:0 0 8px #cd43ff33}.advancement-step-btn:disabled{opacity:.3;cursor:not-allowed}.advancement-step-btn--plus:not(:disabled){color:#34d399;border-color:#34d39966}.advancement-step-btn--plus:hover:not(:disabled){background:#34d39926;border-color:#34d39999;box-shadow:0 0 8px #34d39933}.advancement-cost-label{font-size:.7rem;color:var(--text-secondary, #a0a0a0);white-space:nowrap;min-width:40px;text-align:center}.advancement-lock-indicator{font-size:.75rem;cursor:help}.compound-field{display:flex;align-items:center;gap:.75rem;width:100%}.compound-name,.compound-value{flex:1;min-width:0}.compound-value .dots-row{gap:.25rem}.compound-name .custom-dropdown,.compound-value .custom-dropdown{width:100%}.compound-name .number-field-group,.compound-value .number-field-group{width:auto}.compound-value .pool-field-checkbox{gap:.15rem}.compound-unsupported{font-size:.8rem;color:#fff6;font-style:italic}.racial-bonus-section{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-top:.25rem}.racial-bonus-divider{height:1px;background:#ff43cd26;margin:.25rem 0}.racial-bonus-header{font-size:.75rem;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.75px;color:#ffffff80;text-align:center}.racial-bonus-rows{display:grid;gap:.375rem}.racial-bonus-row{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:.5rem;min-height:44px;background:#ff43cd0d;border:1px solid rgba(255,67,205,.15);border-radius:8px;transition:all .2s ease}.racial-bonus-row.fixed{border-color:#ff43cd40;background:#ff43cd14}.racial-bonus-value{color:#ff43cd;font-size:.85rem;font-weight:400;font-variant-numeric:tabular-nums;min-width:28px;text-align:center;flex-shrink:0}.racial-bonus-label{font-size:.8rem;color:#ffffffb3;font-weight:500;text-align:center;line-height:1.2}.racial-bonus-locked{font-size:.7rem;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px;color:#ff43cd80;flex-shrink:0}.racial-bonus-dropdown{width:100%;max-width:140px}.racial-bonus-dropdown .custom-dropdown-trigger{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roll-assign-step{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:.75rem 1rem;min-height:300px}.roll-assign-description{color:#ffffffd9;font-size:.95rem;text-align:center;max-width:480px;line-height:1.5;margin:0}.roll-assign-method-info{color:#cd43ff8c;font-size:.8rem;font-family:var(--font-primary);text-align:center;max-width:420px;line-height:1.4;margin:0}.roll-assign-pre-roll{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;flex:1;min-height:160px}.roll-assign-roll-btn{background:#000000e6;border:none;border-radius:10px;color:#cd43ff;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;padding:.75rem 2rem;cursor:pointer;transition:all .3s ease;letter-spacing:.75px;text-transform:uppercase;animation:rollBtnGlow 3s ease-in-out infinite}.roll-assign-roll-btn:hover{background:#cd43ff1a;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33;transform:translateY(-2px)}.roll-assign-or{font-size:.8rem;font-family:var(--font-primary);color:#cd43ff66;text-transform:lowercase;letter-spacing:.5px}.roll-assign-standard-btn{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffcc;font-family:var(--font-primary);font-size:.85rem;font-weight:500;padding:.5rem 1.25rem;cursor:pointer;transition:all .2s ease;letter-spacing:.5px}.roll-assign-standard-btn:hover{background:#cd43ff1a;border-color:#cd43ff80;color:#cd43ff;box-shadow:0 0 12px #cd43ff26}.roll-assign-value-bar{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;width:100%;max-width:500px}.roll-value-chip{display:flex;align-items:center;justify-content:center;width:40px;height:36px;border-radius:8px;font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;transition:all .2s ease}.roll-value-chip.available{background:#cd43ff1f;border:1px solid rgba(205,67,255,.4);color:#cd43ff}.roll-value-chip.used{background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#fff3;text-decoration:line-through}.roll-assign-stat-rows{display:grid;grid-template-columns:repeat(var(--stat-cols, 1),1fr);gap:.5rem;width:100%}.roll-assign-stat-row{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;transition:all .2s ease}.roll-assign-stat-row.assigned{border-color:#cd43ff73;background:#cd43ff0f;box-shadow:0 0 8px #cd43ff1a}.roll-assign-stat-name{flex:1;font-size:.9rem;color:#ffffffd9;font-weight:500}.roll-assign-stat-value{font-size:1.1rem;font-weight:400;font-variant-numeric:tabular-nums;color:#cd43ff;min-width:28px;text-align:center;flex-shrink:0}.roll-assign-stat-value.hidden{visibility:hidden}.roll-assign-stat-value.stat-bonused{color:#ff43cd}.roll-assign-bonus-indicator{color:#ff43cd;font-size:.8em;font-family:var(--font-primary);font-weight:400;margin-left:-4px;margin-right:4px;opacity:.9;flex-shrink:0}.roll-assign-check{font-size:1rem;color:#cd43ffd9;font-weight:400;min-width:20px;text-align:center;flex-shrink:0}.roll-assign-check.hidden{visibility:hidden}.roll-assign-dropdown{width:100px;flex-shrink:0}.roll-assign-dropdown .custom-dropdown-trigger{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roll-assign-reroll-section{display:flex;align-items:center;justify-content:center;padding-top:.5rem}.roll-assign-reroll-btn{background:linear-gradient(135deg,#ff43cd33,#cd43ff26);border:1px solid rgba(255,67,205,.4);border-radius:6px;color:#ff43cdf2;font-size:.8rem;font-weight:400;padding:.4rem 1rem;cursor:pointer;transition:all .2s ease}.roll-assign-reroll-btn:hover{background:linear-gradient(135deg,#ff43cd4d,#cd43ff40);border-color:#ff43cd99;box-shadow:0 0 10px #ff43cd26}.roll-assign-reroll-btn:disabled{opacity:.5;cursor:not-allowed}.roll-assign-reroll-cooldown{font-size:.8rem;color:#fff6;text-align:center}.roll-assign-complete{font-size:.85rem;color:#cd43ffd9;text-align:center;padding:.5rem}.point-buy-step{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:.75rem 1rem;min-height:300px}.point-buy-description{color:#ffffffd9;font-size:.95rem;text-align:center;max-width:480px;line-height:1.5;margin:0}.point-buy-method-info{color:#cd43ff8c;font-size:.8rem;font-family:var(--font-primary);text-align:center;max-width:420px;line-height:1.4;margin:0}.point-buy-points-bar{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;max-width:500px;padding:.5rem 1rem;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:10px}.point-buy-points-label{font-size:.8rem;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px;color:#ffffff80;flex-shrink:0}.point-buy-points-track{flex:1;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden;min-width:80px}.point-buy-points-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#cd43ff,#cd43ff99);transition:width .3s ease}.point-buy-points-fill.overspent{background:linear-gradient(90deg,#ef4444,#ef444499)}.point-buy-points-count{font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;color:#cd43ff;flex-shrink:0;min-width:50px;text-align:center}.point-buy-points-count.overspent{color:#ef4444}.point-buy-points-status{font-size:.75rem;color:#cd43ffb3;flex-shrink:0;white-space:nowrap}.point-buy-points-status.complete{color:#cd43ffd9}.point-buy-points-status.overspent{color:#ef4444}.point-buy-stat-rows{display:grid;grid-template-columns:repeat(var(--stat-cols, 1),1fr);gap:.5rem;width:100%}.point-buy-stat-row{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;transition:all .2s ease}.point-buy-stat-row.modified{border-color:#cd43ff73;background:#cd43ff0f;box-shadow:0 0 8px #cd43ff1a}.point-buy-stat-name{flex:1;font-size:.9rem;color:#ffffffd9;font-weight:500}.point-buy-stat-value{font-size:1.1rem;font-weight:400;font-variant-numeric:tabular-nums;color:#cd43ff;min-width:28px;text-align:center;flex-shrink:0}.point-buy-stat-value.stat-bonused{color:#ff43cd}.point-buy-bonus-indicator{color:#ff43cd;font-size:.8em;font-family:var(--font-primary);font-weight:400;margin-left:-4px;margin-right:4px;opacity:.9;flex-shrink:0}.point-buy-controls{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.point-buy-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:1px solid rgba(205,67,255,.3);background:#00000080;color:#cd43ff;font-size:1rem;font-weight:400;cursor:pointer;transition:all .2s ease;padding:0;line-height:1}.point-buy-btn:hover:not(:disabled){background:#cd43ff1f;border-color:#cd43ff80;box-shadow:0 0 8px #cd43ff26}.point-buy-btn:disabled{opacity:.25;cursor:not-allowed;color:#ffffff4d;border-color:#ffffff14}.point-buy-cost{font-size:.7rem;font-variant-numeric:tabular-nums;color:#ffffff59;min-width:16px;text-align:center;flex-shrink:0}.point-buy-complete{font-size:.85rem;color:#cd43ffd9;text-align:center;padding:.5rem}.roll-assignment-panel{padding:.75rem;background:#0003;border-radius:8px;display:flex;flex-direction:column;gap:.75rem}.roll-before-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem 0}.roll-dice-btn{background:#000000e6;border:none;border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:.85rem;font-weight:400;padding:.5rem 1.25rem;cursor:pointer;transition:all .3s ease;letter-spacing:.5px;text-transform:uppercase;animation:rollBtnGlow 3s ease-in-out infinite}.roll-dice-btn:hover{background:#cd43ff1a;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33;transform:translateY(-1px)}@keyframes rollBtnGlow{0%,to{box-shadow:0 0 20px #cd43ff33,0 0 40px #cd43ff1a}50%{box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33}}.roll-or-divider{font-size:.75rem;color:#ffffff59;text-transform:lowercase}.roll-standard-array-btn{background:transparent;border:1px solid rgba(205,67,255,.25);border-radius:6px;color:#fff9;font-size:.75rem;padding:.35rem .75rem;cursor:pointer;transition:all .2s ease}.roll-standard-array-btn:hover{background:#cd43ff14;border-color:#cd43ff66;color:#ffffffd9}.roll-values-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.roll-value-card{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem .25rem;border-radius:8px;transition:all .2s ease}.roll-value-card.unassigned{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3)}.roll-value-card.assigned{background:#cd43ff1a;border:1px solid rgba(205,67,255,.35);box-shadow:0 0 8px #cd43ff1a}.roll-value-number{font-size:1.2rem;font-weight:400;font-variant-numeric:tabular-nums;color:#fffffff2}.roll-value-card.unassigned .roll-value-number{color:#cd43ff}.roll-stat-select{width:100%;background:#00000080;border:1px solid rgba(205,67,255,.25);border-radius:4px;color:#ffffffd9;font-size:.7rem;padding:.2rem .25rem;outline:none;cursor:pointer;transition:border-color .2s ease;text-align:center}.roll-stat-select:focus{border-color:#cd43ff}.roll-stat-select option{background:#1a0a2e;color:#ffffffe6}.roll-reroll-btn{align-self:center;background:linear-gradient(135deg,#ff43cd33,#cd43ff26);border:1px solid rgba(255,67,205,.4);border-radius:6px;color:#ff43cdf2;font-size:.75rem;font-weight:400;padding:.35rem .85rem;cursor:pointer;transition:all .2s ease}.roll-reroll-btn:hover{background:linear-gradient(135deg,#ff43cd4d,#cd43ff40);border-color:#ff43cd99;box-shadow:0 0 10px #ff43cd26}.roll-cooldown-msg{font-size:.8rem;color:#ffffff80;text-align:center;padding:.5rem}.roll-complete-msg{font-size:.75rem;color:#cd43ffd9;text-align:center}@media (max-width: 300px){.roll-values-list{grid-template-columns:repeat(2,1fr)}}.points-allocation-panel{position:absolute;right:1rem;top:.25rem;z-index:50;width:220px;max-height:none;overflow-y:auto;background:#000000e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(205,67,255,.3);border-radius:12px;box-shadow:0 8px 32px #00000080,0 0 20px #cd43ff14;transition:all .25s ease}.points-allocation-panel.collapsed{max-height:44px;overflow:hidden}.points-allocation-panel::-webkit-scrollbar{width:6px}.points-allocation-panel::-webkit-scrollbar-track{background:transparent}.points-allocation-panel::-webkit-scrollbar-thumb{background:#cd43ff40;border-radius:3px}.pa-header{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;cursor:pointer;border-bottom:1px solid rgba(205,67,255,.15);transition:background .2s ease;-webkit-user-select:none;user-select:none}.pa-header:hover{background:#cd43ff14}.pa-title{margin:0;font-family:var(--font-primary);font-size:.85rem;color:#ffffffe6;letter-spacing:.5px;flex:1}.pa-summary-badge{font-size:.75rem;font-weight:400;color:#cd43ffe6;background:#cd43ff26;padding:.15rem .5rem;border-radius:10px}.pa-collapse-toggle{font-size:.6rem;color:#fff6;transition:transform .25s ease}.pa-collapse-toggle.expanded{transform:rotate(180deg)}.pa-body{display:flex;flex-direction:column}.pa-row{border-bottom:1px solid rgba(205,67,255,.06)}.pa-row:last-child{border-bottom:none}.pa-row-summary{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;cursor:pointer;transition:background .2s ease;-webkit-user-select:none;user-select:none}.pa-row-summary:hover{background:#cd43ff0f}.pa-row-indicator{width:3px;height:20px;border-radius:2px;flex-shrink:0;transition:background .2s ease}.pa-row-indicator.active,.pa-row-indicator.complete{background:#cd43ff}.pa-row-indicator.overspent{background:#ef4444}.pa-row-indicator.inactive{background:#cd43ff26}.pa-row-name{font-size:.8rem;color:#ffffffd9;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.pa-row.inactive .pa-row-name{color:#fff6}.pa-row-bar{width:50px;height:4px;background:#cd43ff1a;border-radius:2px;overflow:hidden;flex-shrink:0}.pa-row-bar-fill{height:100%;border-radius:2px;transition:width .3s ease}.pa-row-bar-fill.active,.pa-row-bar-fill.complete{background:#cd43ff}.pa-row-bar-fill.overspent{background:#ef4444}.pa-row-bar-fill.inactive{background:#cd43ff33}.pa-row-count{font-size:.75rem;font-weight:400;font-variant-numeric:tabular-nums;min-width:45px;text-align:right;flex-shrink:0}.pa-row-count.active{color:#fffc}.pa-row-count.complete{color:#cd43ffe6}.pa-row-count.overspent{color:#ef4444}.pa-row-count.inactive{color:#ffffff59}.pa-row-chevron{font-size:.55rem;color:#ffffff4d;transition:transform .2s ease;flex-shrink:0}.pa-row-chevron.expanded{transform:rotate(180deg)}.pa-row-detail{padding:0 .625rem .625rem}.pa-row-detail .batch-allocation-display,.pa-row-detail .pool-spending-display{padding:.75rem;margin:0;border-radius:8px}.pa-roll-summary{padding:.5rem .75rem;background:#0003;border-radius:8px}.pa-roll-values{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.pa-roll-value{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:.85rem;font-weight:400}.pa-roll-value.unassigned{background:#cd43ff33;border:1px solid rgba(205,67,255,.4);color:#cd43ff}.pa-roll-value.assigned{background:#cd43ff0d;color:#ffffff4d;text-decoration:line-through}.pa-roll-status{font-size:.75rem;color:#ffffff80}@media (max-width: 900px){.points-allocation-panel{position:relative;top:auto;width:100%;max-height:none;border-radius:0;border-left:none;border-right:none;border-top:none}.pa-body{flex-direction:row;flex-wrap:wrap;overflow-x:auto}.pa-row{min-width:200px;flex:1;border-bottom:none;border-right:1px solid rgba(205,67,255,.06)}.pa-row:last-child{border-right:none}}.batch-allocation-display{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:1rem}.allocation-title{margin:0 0 .5rem;font-size:.95rem;font-weight:400;color:#fffffff2}.allocation-description{margin:0 0 1rem;font-size:.8rem;color:#ffffff80}.batch-overview{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(205,67,255,.15)}.batch-labels{display:flex;gap:.5rem}.batch-label{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.85rem;font-weight:400}.batch-label.available{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.4)}.batch-label.claimed{background:#ffffff1a;color:#ffffff4d;text-decoration:line-through}.available-batches{font-size:.8rem;color:#fff9}.all-claimed{color:#cd43ffcc}.group-status-list{display:flex;flex-direction:column;gap:.75rem}.group-status{padding:.75rem;background:#cd43ff08;border-radius:8px}.group-status.overspent{background:#ef44441a;border:1px solid rgba(239,68,68,.3)}.group-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.group-name{font-size:.9rem;font-weight:500;color:#ffffffe6}.dots-used{font-size:.8rem;color:#ffffff80}.batch-info{display:flex;align-items:center;justify-content:space-between;font-size:.8rem;margin-bottom:.5rem}.claimed-batch{color:#ffffffb3}.claimed-batch strong{color:#cd43ff}.remaining{color:#cd43ffcc}.remaining.negative{color:#ef4444;font-weight:400}.remaining.zero{color:#ffffff80}.undetermined{color:#fff6;font-style:normal}.batch-bar{height:4px;background:#cd43ff1a;border-radius:2px;overflow:hidden;position:relative}.batch-bar-fill{height:100%;background:#cd43ff;border-radius:2px;transition:width .3s ease}.batch-bar-fill.overspent{background:#ef4444}.allocation-status{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(205,67,255,.15);font-size:.85rem;text-align:center}.allocation-status.complete{color:#cd43ffe6}.allocation-status.incomplete{color:#ffffff80}.pool-spending-display{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:1rem}.pool-spending-display.overspent{border-color:#ef444466}.pool-title{margin:0 0 .5rem;font-size:.95rem;font-weight:400;color:#fffffff2}.pool-description{margin:0 0 1rem;font-size:.8rem;color:#ffffff80}.pool-stats{display:flex;justify-content:space-between;margin-bottom:.75rem}.stat{display:flex;flex-direction:column;align-items:center}.stat-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:#fff6}.stat-value{font-size:1.2rem;font-weight:400;color:#ffffffe6}.stat.negative .stat-value{color:#ef4444}.stat.zero .stat-value{color:#ffffff80}.overspent-value{color:#ef4444}.pool-bar{height:6px;background:#cd43ff1a;border-radius:3px;overflow:hidden;margin-bottom:.75rem}.pool-bar-fill{height:100%;background:linear-gradient(90deg,#cd43ff,#9d4edd);border-radius:3px;transition:width .3s ease}.pool-bar-fill.overspent{background:linear-gradient(90deg,#ef4444,#dc2626)}.pool-status{font-size:.85rem;text-align:center}.pool-status.complete{color:#cd43ffe6}.pool-status.in-progress{color:#fff9}.pool-status.error{color:#ef4444}.cost-curve-info{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(205,67,255,.15)}.cost-curve-info summary{font-size:.8rem;color:#ffffff80;cursor:pointer}.cost-table{display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;margin-top:.5rem}.cost-row{display:flex;justify-content:space-between;padding:.25rem .5rem;background:#cd43ff08;border-radius:4px;font-size:.75rem}.cost-value{color:#ffffffb3}.cost-points{color:#cd43ffcc}.exception-selection-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.exception-selection-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:500px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeInUp .3s ease}.esm-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.2)}.esm-title{font-family:var(--font-primary);color:#cd43ff;font-size:1.1rem;margin:0}.esm-content{padding:1.5rem;overflow-y:auto;flex:1}.esm-step-indicator{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.esm-step-dots{display:flex;gap:6px}.step-dot{width:8px;height:8px;border-radius:50%;background:#cd43ff33;transition:all .2s ease}.step-dot.active{background:#cd43ff;box-shadow:0 0 8px #cd43ff66}.step-dot.completed{background:#cd43ff80}.esm-step-text{font-size:.8rem;color:#ffffff80}.esm-prompt{font-family:var(--font-primary);color:#ffffffe6;font-size:1rem;margin:0 0 1.25rem;line-height:1.5}.esm-options-list{border:1px solid rgba(205,67,255,.15);border-radius:8px;overflow:hidden}.selection-option{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#cd43ff08;border-bottom:1px solid rgba(205,67,255,.08);cursor:pointer;transition:all .2s ease;font-family:var(--font-primary);color:#ffffffd9}.selection-option:last-child{border-bottom:none}.selection-option:hover{background:#cd43ff14}.selection-option.selected{background:#cd43ff26;border-left:3px solid #CD43FF;color:#fffffff2}.selection-option.disabled{opacity:.4;pointer-events:none}.selection-checkbox{width:18px;height:18px;border-radius:4px;border:1px solid rgba(205,67,255,.4);background:#00000080;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.selection-checkbox.checked{background:#cd43ff4d;border-color:#cd43ff}.selection-checkbox.checked:after{content:"✓";color:#cd43ff;font-size:.7rem;font-weight:400}.selection-label{flex:1;font-size:.95rem}.selection-counter{text-align:center;margin-top:12px;font-family:var(--font-primary);font-size:.85rem}.count-badge{background:#cd43ff33;color:#cd43ff;padding:4px 12px;border-radius:20px;font-weight:400}.count-badge.complete{background:#cd43ff4d;border:1px solid rgba(205,67,255,.5)}.esm-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#cd43ff0d;border-top:1px solid rgba(205,67,255,.2)}.esm-footer-right{display:flex;gap:.5rem}.esm-loading{display:flex;align-items:center;justify-content:center;padding:2rem 1rem;color:#cd43ff99;font-family:var(--font-primary);font-size:.95rem;letter-spacing:.02em}.creation-wizard{display:flex;flex-direction:column;height:100%;width:100%;background:#07080a;color:#ffffffe6;overflow:hidden}.creation-wizard--no-rules{align-items:center;justify-content:center}.no-rules-message{text-align:center;padding:3rem 2rem;max-width:400px}.no-rules-icon{font-size:4rem;display:block;margin-bottom:1.5rem}.no-rules-message h3{margin:0 0 1rem;font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff}.no-rules-message p{margin:0 0 1rem;color:#ffffffb3;line-height:1.6}.creation-wizard-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.5rem 1.5rem;background:#0000004d;border-bottom:1px solid rgba(205,67,255,.2);flex-shrink:0;position:relative;z-index:10}.wizard-method-selector{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;justify-self:end}.wizard-method-selector .custom-dropdown{min-width:180px}.wizard-progress{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%;max-width:400px}.progress-text{font-size:.9rem;color:#ffffffb3}.progress-bar{width:100%;height:6px;background:#cd43ff1a;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#cd43ff,#9d4edd);border-radius:3px;transition:width .3s ease}.wizard-steps-indicator{display:flex;align-items:flex-start;gap:.75rem;padding:.35rem 1.5rem;background:#0003;position:relative}.wizard-steps-center{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:0}.wizard-steps-row{display:flex;align-items:center;justify-content:center;gap:.5rem;overflow-x:auto}.step-indicator{display:flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:14px;background:#cd43ff0d;transition:all .2s ease;white-space:nowrap}.step-indicator.active{background:#cd43ff33;border:1px solid rgba(205,67,255,.4)}.step-indicator.completed{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3)}.step-indicator.completed .step-number{background:#cd43ff4d;color:#cd43ff}.step-number{width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#cd43ff26;font-size:.65rem;font-weight:400}.step-indicator.active .step-number{background:#cd43ff;color:#fff}.step-name{font-size:.7rem;color:#ffffffb3}.step-indicator.active .step-name{color:#fffffff2}.creation-wizard-content{flex:1;display:flex;gap:1.5rem;padding:.25rem 2rem .5rem;overflow:hidden;min-height:0}.wizard-sidebar{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.wizard-main{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 1rem;min-height:0}.wizard-main::-webkit-scrollbar{width:8px}.wizard-main::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.wizard-main::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.wizard-main::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.step-header{margin-bottom:.5rem}.step-header h3{margin:0 0 .5rem;font-family:var(--font-primary);font-size:1.3rem;color:#fffffff2}.step-description{margin:0;font-size:.95rem;color:#fff9;white-space:nowrap}.step-content{display:flex;flex-direction:column;gap:1rem}.step-content--with-image{flex-direction:row;gap:1.5rem;align-items:flex-start}.field-group{margin-bottom:1.5rem}.group-title{margin:0 0 1rem;font-size:1rem;font-weight:400;color:#cd43ffe6;padding-bottom:.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.wizard-fields-simple{display:flex;flex-direction:column;gap:1rem}.wizard-field{display:flex;align-items:center;gap:.5rem;overflow:hidden}.wizard-field.locked{opacity:.6}.field-lock-reason{font-size:.8rem;color:#ffc107cc;font-style:normal;margin-top:.25rem}.batch-group-fields{margin:0 auto}.batch-columns{display:grid;gap:1.5rem}.batch-column{background:#cd43ff1f;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:1rem}.batch-column.overspent{border-color:#cd43ff99;background:#cd43ff14}.batch-column.flash-reject{animation:rejectFlash .6s ease}@keyframes rejectFlash{0%,to{border-color:#cd43ff33}25%{border-color:#cd43ffe6;box-shadow:0 0 20px #cd43ff66}50%{border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff33}75%{border-color:#cd43ffcc;box-shadow:0 0 15px #cd43ff4d}}.column-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(205,67,255,.15)}.column-title{margin:0;font-size:1.1rem;font-weight:400;color:#fffffff2}.column-status{display:flex;align-items:center;gap:.5rem}.dots-count{font-size:.9rem;color:#ffffffb3}.batch-badge{padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:400;background:#cd43ff33;color:#cd43ff}.batch-badge.over{background:#cd43ff40;color:#cd43ff}.batch-badge.undetermined{background:#cd43ff1a;color:#ffffff80}.batch-column-fields{display:flex;flex-direction:column;gap:.75rem}.batch-field.locked{opacity:.5}.wizard-main .wizard-step{margin:0 auto}.wizard-fields-with-image{display:grid;grid-template-columns:auto 1fr;gap:1.5rem;align-items:start}.wizard-fields-image-col{width:240px;flex-shrink:0}.wizard-fields-text-col{display:flex;flex-direction:column;gap:1rem;flex:1;min-width:0}.wizard-validation-inline{margin-top:1.5rem;padding-right:0}.validation-panel{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:1rem}.validation-title{margin:0 0 .75rem;font-size:.95rem;font-weight:400;color:#cd43ff}.validation-section{display:flex;flex-direction:column;gap:.5rem}.validation-section.warnings{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(205,67,255,.15)}.validation-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem}.validation-item.error{color:#cd43ff}.validation-item.warning{color:#cd43ffb3}.validation-icon{flex-shrink:0;font-size:.9rem}.validation-message{line-height:1.4}.wizard-navigation{display:flex;align-items:center;justify-content:space-between;padding:.3rem 2rem .2rem;background:#0000004d;border-top:1px solid rgba(205,67,255,.2)}.nav-left,.nav-right{display:flex;gap:1rem}.btn-back,.btn-next,.btn-complete{padding:6px 20px;border:none;border-radius:8px;font-family:var(--font-primary);font-size:11px;font-weight:400;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .3s ease;height:32px}.btn-back{background:#000000e6;color:#cd43ffcc;border:.25px solid rgba(205,67,255,.2)}.btn-back:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn-back:hover:not(:disabled){color:#cd43ff;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff26;transform:translateY(-1px)}.btn-next,.btn-complete{background:#000000e6;color:#cd43ff;border:none}.btn-next:not(:disabled),.btn-complete:not(:disabled){animation:buttonGlow 3s ease-in-out infinite}.btn-next:hover:not(:disabled),.btn-complete:hover:not(:disabled){background:#cd43ff1a;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33;transform:translateY(-2px)}.btn-next:disabled,.btn-complete:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none;animation:none}.nav-center{display:flex;align-items:center}.btn-auto-fill{padding:10px 36px;border:1px solid rgba(205,67,255,.4);border-radius:8px;background:#000000e6;color:#e056ff;font-family:var(--font-primary);font-size:13px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .3s ease;height:40px;animation:buttonGlow 3s ease-in-out infinite}.btn-auto-fill:hover:not(:disabled){background:#cd43ff1f;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33;transform:translateY(-2px)}.btn-auto-fill:disabled{opacity:.5;cursor:not-allowed;animation:none;transform:none;box-shadow:none}@media (max-width: 900px){.creation-wizard-content{flex-direction:column}.wizard-sidebar{width:100%;flex-direction:row;flex-wrap:wrap;overflow-x:auto}.batch-allocation-display,.pool-spending-display,.validation-panel{min-width:250px;flex:1}.batch-columns{grid-template-columns:1fr!important}.step-content--with-image{flex-direction:column}.wizard-fields-image-col{width:100%}}@media (max-width: 900px){.wizard-steps-indicator{flex-wrap:wrap;justify-content:center}.wizard-steps-indicator .points-allocation-panel{position:static;width:100%;max-width:400px;margin:0 auto}}@media (max-width: 600px){.creation-wizard-header{grid-template-columns:1fr;justify-items:center;gap:.5rem;padding-top:.75rem;padding-bottom:.75rem}.wizard-header-spacer{display:none}.wizard-method-selector{align-items:center}.wizard-steps-row{justify-content:flex-start}.wizard-navigation{flex-direction:column;gap:1rem}.nav-left,.nav-right{width:100%;justify-content:center}}.wizard-title-text{margin:0;font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff;letter-spacing:1px;text-align:center}.method-description{margin:0;font-size:.8rem;color:#ffffff80;text-align:right;max-width:280px}.free-mode-badge{background:#cd43ff33;color:#cd43ff;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.free-mode-description{margin:0;font-size:.9rem;color:#fff9}.wizard-navigation--free{display:flex;justify-content:space-between;align-items:center}.creation-wizard-content--free{padding:1.5rem 2rem;overflow:visible}.wizard-main--full{width:100%;max-width:1200px;margin:0 auto}.wizard-section{background:linear-gradient(135deg,#cd43ff26,#cd43ff14);border:1px solid rgba(205,67,255,.3);border-radius:12px;margin-bottom:1.5rem;overflow:visible;box-shadow:inset 0 0 30px #cd43ff1a}.wizard-section-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#cd43ff1f;border-bottom:1px solid rgba(205,67,255,.2);cursor:pointer;transition:background .2s ease}.wizard-section-header:hover{background:#cd43ff2e}.wizard-section-header h3{margin:0;font-family:var(--font-primary);font-size:1.1rem;color:#fffffff2}.wizard-section-header .collapse-icon{font-size:.8rem;color:#ffffff80;transition:transform .2s ease}.wizard-section-header .collapse-icon.expanded{transform:rotate(180deg)}.wizard-section-columns{display:grid;gap:1.5rem;padding:1.5rem}.wizard-column-title{margin:0 0 1rem;font-size:.95rem;font-weight:400;color:#cd43ffe6;padding-bottom:.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.wizard-column-fields{display:flex;flex-direction:column;gap:.75rem}.wizard-field-container.full-width{grid-column:1 / -1}@media (max-width: 768px){.wizard-section-columns{grid-template-columns:1fr!important}}.wizard-field.field-inactive{opacity:.35;pointer-events:none}.wizard-field-content{flex:1;min-width:0}.wizard-field-checkmark{width:18px;height:18px;min-width:18px;display:flex;align-items:center;justify-content:center;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:50%;font-size:.65rem;color:#cd43ff;flex-shrink:0;visibility:hidden}.wizard-field-checkmark.visible{visibility:visible}.batch-column.field-active{border-color:#cd43ff66}.batch-column.field-inactive{opacity:.4}.batch-column.field-completed{border-color:#cd43ff4d}.step-transition-enter{opacity:0;transform:translate(20px)}.step-transition-enter-active{opacity:1;transform:translate(0);transition:opacity .3s ease,transform .3s ease}.step-transition-exit{opacity:1;transform:translate(0)}.step-transition-exit-active{opacity:0;transform:translate(-20px);transition:opacity .3s ease,transform .3s ease}.wizard-main .custom-dropdown{z-index:1}.wizard-main .custom-dropdown.open{z-index:1000}.wizard-main .custom-dropdown-menu{z-index:9999}.wizard-field.roll-and-assign{background:linear-gradient(135deg,#cd43ff1a,#cd43ff0d);border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:.75rem}.wizard-field.roll-and-assign.has-roll-assigned{background:linear-gradient(135deg,#cd43ff1a,#cd43ff0d);border-color:#cd43ff66}.wizard-field.roll-and-assign.waiting-for-roll{background:linear-gradient(135deg,#ffc1071a,#ffc1070d);border-color:#ffc10766}.available-rolls-display{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding:.75rem;background:#0003;border-radius:8px}.roll-value{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;font-size:1.1rem;font-weight:400;cursor:pointer;transition:all .2s ease}.roll-value.available{background:linear-gradient(135deg,#cd43ff4d,#cd43ff1a);border:1px solid rgba(205,67,255,.5);color:#cd43ff}.roll-value.available:hover{transform:scale(1.1);box-shadow:0 4px 12px #cd43ff4d}.roll-value.assigned{background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);color:#ffffff4d;cursor:default;text-decoration:line-through}.roll-value.selected{background:linear-gradient(135deg,#cd43ff,#9d4edd);border-color:transparent;color:#fff;transform:scale(1.1);box-shadow:0 4px 16px #cd43ff66}.roll-actions{display:flex;gap:.75rem;margin-bottom:1rem}.btn-roll,.btn-standard-array,.btn-reroll{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-roll{background:#000000e6;color:#cd43ff}.btn-roll:not(:disabled){animation:buttonGlow 3s ease-in-out infinite}.btn-roll:hover:not(:disabled){background:#cd43ff1a;transform:translateY(-1px);box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33}.btn-standard-array{background:#cd43ff1a;color:#ffffffe6;border:1px solid rgba(205,67,255,.3)}.btn-standard-array:hover:not(:disabled){background:#cd43ff2e}.btn-reroll{background:#ffc10733;color:#ffc107;border:1px solid rgba(255,193,7,.4)}.btn-reroll:hover:not(:disabled){background:#ffc1074d}.btn-roll:disabled,.btn-standard-array:disabled,.btn-reroll:disabled{opacity:.4;cursor:not-allowed;transform:none}.character-modal{max-width:650px;width:95%;max-height:90vh;overflow-y:auto}.character-choice-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin:2rem 0}.character-choice-card{background:linear-gradient(135deg,#cd43ff0d,#cd43ff05);border:.25px solid rgba(205,67,255,.3);border-radius:12px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0000004d}.character-choice-card:hover{background:linear-gradient(135deg,#cd43ff26,#cd43ff14);border-color:#cd43ff99;transform:translateY(-4px);box-shadow:0 8px 24px #cd43ff4d}.character-choice-card h3{font-family:var(--font-primary);color:#cd43ff;margin-bottom:.75rem;font-size:1.1rem;font-weight:400;letter-spacing:1px;text-transform:uppercase}.character-choice-card p{color:#ffffffb3;font-size:.9rem;line-height:1.5}.character-list{display:flex;flex-direction:column;gap:1rem;max-height:400px;overflow-y:auto;padding:.5rem}.character-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#cd43ff0d;border:2px solid rgba(205,67,255,.2);border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative}.character-card:hover{background:#cd43ff1a;border-color:#cd43ff66}.character-card.selected{background:#cd43ff26;border-color:#cd43ff}.character-avatar{width:60px;height:60px;border-radius:50%;object-fit:cover;border:2px solid rgba(205,67,255,.3)}.character-info{flex:1}.character-info h4{font-family:var(--font-primary);color:#cd43ff;margin-bottom:.25rem}.character-description{color:#ffffffb3;font-size:.9rem;margin:0}.character-status{display:inline-block;padding:.25rem .5rem;background:#ffc10733;color:#ffc107;border-radius:4px;font-size:.75rem;margin-top:.5rem}.selected-indicator{position:absolute;top:1rem;right:1rem;width:24px;height:24px;background:#43ff97;color:#000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:400;font-size:14px}.character-wizard{width:100%;padding:0;box-sizing:border-box;display:flex;flex-direction:column;gap:1rem}.wizard-progress{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid rgba(205,67,255,.2)}.progress-step{display:flex;align-items:center;gap:.5rem}.progress-dot{width:12px;height:12px;border-radius:50%;background:#cd43ff4d;transition:all .3s ease}.progress-dot.active{background:#cd43ff;box-shadow:0 0 10px #cd43ff80}.progress-dot.completed{background:#43ff97}.progress-label{font-size:.85rem;color:#ffffff80;transition:color .3s ease}.progress-label.active{color:#cd43ff;font-weight:400}.progress-label.completed{color:#43ff97}.character-form{display:flex;flex-direction:column;gap:1.5rem}.form-group label{font-family:var(--font-primary);color:#cd43ff;font-size:.85rem;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group textarea{width:100%;padding:12px 16px;font-size:1rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;outline:none;transition:all .3s ease;box-sizing:border-box}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.form-group input:focus,.form-group textarea:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.form-group textarea{min-height:80px;resize:vertical}.avatar-upload{display:flex;flex-direction:column;align-items:center;gap:1rem}.avatar-preview{width:80px;height:80px;border-radius:50%;background:#00000080;border:2px solid rgba(205,67,255,.4);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;cursor:pointer;transition:all .3s ease;box-shadow:0 0 15px #cd43ff1a}.avatar-preview:hover{border-color:#cd43ff;box-shadow:0 0 20px #cd43ff4d}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#cd43ff1a;color:#cd43ff99}.avatar-placeholder svg,.avatar-placeholder .avatar-icon{width:32px;height:32px;fill:currentColor}.upload-button{padding:.5rem 1rem;background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:8px;color:#cd43ff;cursor:pointer;font-family:var(--font-primary);font-size:.85rem;transition:all .2s ease}.upload-button:hover{background:#cd43ff40;border-color:#cd43ff}.avatar-step-label{display:block;font-family:var(--font-primary);color:#cd43ff;font-size:.85rem;font-weight:400;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;text-align:center}.avatar-step-optional{color:#ffffff80;font-weight:400;text-transform:none}.avatar-step-error{margin-bottom:1rem}.avatar-upload-input{display:none}.avatar-step-hint{color:#cd43ff99;font-size:.8rem;margin:0;text-align:center;line-height:1.5}.avatar-loading-spinner{width:24px;height:24px;border:2px solid rgba(205,67,255,.2);border-top-color:#cd43ff;border-radius:50%;animation:avatarSpin 1s linear infinite}@keyframes avatarSpin{to{transform:rotate(360deg)}}.character-count{display:block;color:#cd43ff80;font-size:.8rem;margin-top:.25rem;text-align:right}.empty-state{text-align:center;padding:3rem 2rem;color:#fff9}.empty-state p{margin:.5rem 0}.official-npc-checkbox{padding:8px 12px;border:1px solid rgba(255,67,205,.2);border-radius:8px;background:#ff43cd0d;transition:background .2s ease,border-color .2s ease}.official-npc-checkbox:hover{background:#ff43cd1a;border-color:#ff43cd59}.official-npc-checkbox .checkbox-label{color:#ff43cd;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.character-modal-footer{display:flex;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff08;justify-content:flex-end}.character-modal .character-modal-footer{flex-direction:row-reverse;justify-content:space-between;padding:16px 24px}.creation-wizard-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:#07080a}.character-sheet-selection{padding:1rem 0}.sheet-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;padding:.5rem}.sheet-selection-item{cursor:pointer;transition:transform .2s ease}.sheet-selection-item:hover{transform:translateY(-2px)}.character-modal::-webkit-scrollbar,.character-list::-webkit-scrollbar,.character-wizard::-webkit-scrollbar{width:8px}.character-modal::-webkit-scrollbar-track,.character-list::-webkit-scrollbar-track,.character-wizard::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.character-modal::-webkit-scrollbar-thumb,.character-list::-webkit-scrollbar-thumb,.character-wizard::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.character-modal::-webkit-scrollbar-thumb:hover,.character-list::-webkit-scrollbar-thumb:hover,.character-wizard::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.rule-set-selection{padding:1rem 0}.rule-set-selection-description{color:#fffc;font-size:1rem;margin-bottom:1.5rem;text-align:center}.rule-set-options{display:flex;flex-direction:column;gap:1rem}.rule-set-option{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease}.rule-set-option:hover{border-color:#cd43ff66;background:#0006}.rule-set-option.selected{border-color:#cd43ff;background:#cd43ff1a;box-shadow:0 0 20px #cd43ff33}.rule-set-option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.rule-set-option-name{font-family:var(--font-primary);color:#fffffff2;font-size:1.1rem;font-weight:400;margin:0;display:flex;align-items:center;gap:.75rem}.rule-set-option.selected .rule-set-option-name{color:#cd43ff}.default-indicator{font-size:.75rem;font-weight:400;color:#43ff97;font-family:-apple-system,BlinkMacSystemFont,sans-serif}.rule-set-option-radio input[type=radio]{width:18px;height:18px;accent-color:#CD43FF;cursor:pointer}.rule-set-option-description{color:#fff9;font-size:.9rem;margin:0 0 .75rem;line-height:1.5}.rule-set-option-stats{display:flex;gap:1rem;padding-top:.75rem;border-top:1px solid rgba(205,67,255,.1)}.rule-set-option-stats span{font-size:.8rem;color:#cd43ffb3;padding:.25rem .75rem;background:#cd43ff1a;border-radius:4px}.content-filter{display:flex;justify-content:center;align-items:center;gap:8px;margin:0;padding:0}.filter-toggle{display:flex;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.filter-option{padding:8px 24px;background:transparent;border:none;color:#fff9;font-family:var(--font-primary);font-size:14px;font-weight:500;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;position:relative}.filter-option:first-child{border-right:1px solid rgba(205,67,255,.3)}.filter-option:hover:not(.active){color:#fffc;background:#cd43ff1a}.filter-option.active{color:#cd43ff;background:#cd43ff33;font-weight:400;text-shadow:0 0 10px rgba(205,67,255,.5)}.filter-option.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#CD43FF,transparent)}.content-filter-search-btn{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff9;cursor:pointer;transition:all .3s ease;padding:0}.content-filter-search-btn:hover{color:#cd43ff;background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff26}.content-filter-search-btn.has-filters{color:#cd43ff;border-color:#cd43ff80;background:#cd43ff26}.content-filter-search-icon{width:16px;height:16px}.content-filter-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;background:#cd43ff;color:#fff;font-size:10px;font-weight:400;font-family:var(--font-primary);border-radius:20px;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 0 8px #cd43ff66}.profile-friends-list{display:flex;flex-direction:column;gap:6px}.profile-friends-list.loading{min-height:100px}.loading-placeholder{height:100px;background:#cd43ff0d;border-radius:8px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:.8}}.friends-empty{color:#fff6;font-size:14px}.friends-items{display:flex;flex-direction:column;gap:4px}.friend-item{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#cd43ff08;border:1px solid rgba(205,67,255,.1);border-radius:8px;cursor:pointer;transition:all .2s ease}.friend-item:hover{background:#cd43ff14;border-color:#cd43ff40}.friend-avatar{flex-shrink:0}.friend-info{display:flex;flex-direction:column;gap:2px;min-width:0}.friend-name{font-family:var(--font-primary);font-size:14px;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friend-status{display:flex;align-items:center;gap:6px;font-size:12px}.friend-status.online{color:#43ff97}.friend-status.offline{color:#fff6}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.online{background:#43ff97;box-shadow:0 0 6px #43ff9780}.status-dot.offline{background:#ffffff4d}.view-all-friends-btn{margin-top:4px;align-self:flex-start}.friends-count-only{padding:16px;text-align:center}.friend-actions{display:flex;flex-direction:column;gap:2px;margin-left:auto;flex-shrink:0}.friends-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.friends-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:500px;height:500px;display:flex;flex-direction:column;box-shadow:0 0 40px #cd43ff33}.friends-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.2);flex-shrink:0}.friends-modal-header h2{font-family:var(--font-primary);font-size:18px;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1px}.friends-modal-header-right{display:flex;align-items:center;gap:12px}.friends-search-input{background:#ffffff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:6px 12px;font-size:13px;color:#ffffffe6;width:150px;transition:all .2s ease}.friends-search-input::placeholder{color:#fff6}.friends-search-input:focus{outline:none;border-color:#cd43ff66;background:#ffffff14}.friends-modal-tabs{display:flex;border-bottom:1px solid rgba(205,67,255,.15);flex-shrink:0}.tab-btn{flex:1;background:none;border:none;padding:12px 8px;font-family:var(--font-primary);font-size:11px;color:#ffffff80;cursor:pointer;transition:all .2s ease;position:relative}.tab-btn:hover{color:#fffc;background:#cd43ff0d}.tab-btn.active{color:#cd43ff}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:2px;background:#cd43ff;border-radius:1px}.friends-modal-content{flex:1;overflow-y:auto;padding:16px;min-height:0}.friends-list,.requests-list,.blocked-list{display:flex;flex-direction:column;gap:8px}.friend-card,.request-card,.blocked-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:8px;transition:all .2s ease}.friend-card:hover,.request-card:hover,.blocked-card:hover{background:#cd43ff1a;border-color:#cd43ff40}.friend-card-main{display:flex;align-items:center;gap:12px;flex:1;cursor:pointer;min-width:0}.friend-card-info,.request-card-info,.blocked-card-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.friend-card-name,.request-card-name,.blocked-card-name{font-family:var(--font-primary);font-size:14px;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friend-card-username,.request-card-username,.blocked-card-username{font-size:12px;color:#cd43ff99}.friend-card-status,.request-card-status{display:flex;align-items:center;gap:6px;font-size:11px;color:#fff6}.friend-card-status.online{color:#43ff97}.friend-card-actions,.request-card-actions,.blocked-card-actions{display:flex;gap:8px;flex-shrink:0}.friend-card-actions.stacked{flex-direction:column;gap:2px}.friend-action-btn{width:20px;height:20px;border-radius:4px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;background:#ff43ff26;color:#ff43ff}.friend-action-btn:hover:not(:disabled){background:#ff43ff4d;color:#ff70ff}.friend-action-btn:disabled{opacity:.5;cursor:not-allowed}.unblock-btn{width:24px;height:24px;border-radius:4px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;background:#cd43ff26;color:#cd43ff}.unblock-btn:hover:not(:disabled){background:#cd43ff4d;color:#e070ff}.unblock-btn:disabled{opacity:.5;cursor:not-allowed}.friends-modal-content::-webkit-scrollbar{width:6px}.friends-modal-content::-webkit-scrollbar-track{background:#0003}.friends-modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:3px}.friends-modal-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.add-friend-button-group{display:flex;align-items:center;gap:10px}.friends-status{font-family:var(--font-primary);font-size:12px;color:#43ff97;text-transform:uppercase;letter-spacing:.5px}.request-sent-status{font-family:var(--font-primary);font-size:12px;color:#cd43ffb3;text-transform:uppercase;letter-spacing:.5px}.add-friend-icon-btn{position:relative;background:transparent;border:none;color:#cd43ff;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;border-radius:6px}.add-friend-icon-btn:hover:not(:disabled){background:#cd43ff26;color:#e066ff}.add-friend-icon-btn:disabled{opacity:.5;cursor:not-allowed}.add-friend-icon-btn svg{stroke:currentColor}.add-friend-icon-btn .icon-badge{position:absolute;top:-4px;right:-4px;background:#cd43ff;color:#fff;font-size:9px;font-weight:400;padding:1px 4px;border-radius:8px;min-width:14px;text-align:center;box-shadow:0 2px 4px #0000004d}.add-friend-icon-btn .icon-loading{font-size:12px;color:#cd43ff99}.add-friend-icon-btn.is-friend{color:#43ff97}.add-friend-icon-btn.is-friend:hover:not(:disabled){background:#43ff9726;color:#66ffa8}.add-friend-icon-btn.request-sent{color:#cd43ff99}.add-friend-icon-btn.request-sent:hover:not(:disabled){background:#cd43ff1a;color:#cd43ffcc}.add-friend-icon-btn.has-request{color:#cd43ff;animation:pulse-request 1.5s ease-in-out infinite}@keyframes pulse-request{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.pm-typing-indicator{height:20px;display:flex;align-items:center;gap:6px;padding:0 12px;font-family:var(--font-primary);font-size:12px;font-weight:400;color:#cd43ffb3;transition:opacity .3s ease}.pm-typing-indicator__dots{display:inline-flex;gap:3px;align-items:center}.pm-typing-indicator__dot{width:4px;height:4px;border-radius:50%;background:#cd43ff99;animation:pm-typing-bounce 1.4s ease-in-out infinite}.pm-typing-indicator__dot:nth-child(2){animation-delay:.2s}.pm-typing-indicator__dot:nth-child(3){animation-delay:.4s}@keyframes pm-typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.pm-typing-indicator__text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.read-receipt{font-family:var(--font-primary);font-size:11px;font-weight:400;margin-left:4px;letter-spacing:-1px}.read-receipt--delivered{color:#fff6}.read-receipt--read{color:#cd43ff}.online-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;background:#22c55e;border:2px solid rgba(0,0,0,.5);flex-shrink:0}.image-display{margin-top:12px;width:100%}.image-grid{display:grid;gap:8px;border-radius:8px;overflow:hidden}.image-grid-single{grid-template-columns:1fr;max-width:600px}.image-grid-single .image-item{max-height:600px;aspect-ratio:auto}.image-grid-single .image-thumbnail{object-fit:contain;height:auto;max-height:600px}.image-grid-two{grid-template-columns:repeat(2,1fr)}.image-grid-two .image-item{aspect-ratio:1}.image-grid-three{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.image-grid-three .image-item:first-child{grid-row:span 2;aspect-ratio:1}.image-grid-three .image-item:not(:first-child){aspect-ratio:1}.image-grid-four-plus{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.image-grid-four-plus .image-item{aspect-ratio:1}.image-item{position:relative;overflow:hidden;background:#ffffff0d;border-radius:6px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.image-item:hover{transform:scale(1.02);box-shadow:0 4px 12px #0000004d}.image-thumbnail{width:100%;height:100%;object-fit:cover;display:block}.image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.image-count{font-size:32px;font-weight:400;color:#fff}@media (max-width: 768px){.image-grid-single{max-width:100%}.image-grid-single .image-item,.image-grid-single .image-thumbnail{max-height:500px}.image-grid-three{grid-template-columns:1fr;grid-template-rows:auto}.image-grid-three .image-item:first-child{grid-row:span 1}.image-count{font-size:24px}}@media (prefers-color-scheme: light){.image-item{background:#0000000d}.image-item:hover{box-shadow:0 4px 12px #00000026}}.image-lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:lightbox-fade-in .2s ease-out}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-close{position:absolute;top:20px;right:20px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:28px;cursor:pointer;transition:all .2s ease;z-index:10001}.lightbox-close:hover{background:#fff3;transform:scale(1.1)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:48px;cursor:pointer;transition:all .2s ease;z-index:10001}.lightbox-nav:hover{background:#fff3;transform:translateY(-50%) scale(1.1)}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-image-container{max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px;animation:image-zoom-in .3s ease-out}@keyframes image-zoom-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.lightbox-counter{position:absolute;bottom:20px;left:50%;transform:translate(-50%);padding:8px 16px;background:#000000b3;border-radius:20px;color:#fff;font-size:14px;font-weight:500;z-index:10001}@media (max-width: 768px){.lightbox-close{top:10px;right:10px;width:40px;height:40px;font-size:24px}.lightbox-nav{width:48px;height:48px;font-size:36px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-image-container{max-width:95vw;max-height:85vh}.lightbox-counter{bottom:10px;font-size:12px;padding:6px 12px}}body:has(.image-lightbox){overflow:hidden}.messages-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.messages-modal{background:transparent;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.4);border-radius:12px;width:90%;max-width:800px;height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d}.messages-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.2)}.messages-modal-header h2{font-family:var(--font-primary);font-size:18px;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1px}.messages-modal-body{display:flex;flex:1;overflow:hidden}.conversations-panel{width:280px;border-right:1px solid rgba(205,67,255,.15);display:flex;flex-direction:column;overflow-y:auto}.conversations-list{display:flex;flex-direction:column}.conversation-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .2s ease;border-bottom:1px solid rgba(205,67,255,.08)}.conversation-item:hover{background:#cd43ff14}.conversation-item.active{background:#cd43ff26;border-left:3px solid #CD43FF}.conversation-item.unread{background:#cd43ff0d}.conversation-item.unread .conversation-name{font-weight:400}.conversation-info{flex:1;min-width:0}.conversation-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.conversation-name{font-family:var(--font-primary);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-time{font-size:10px;color:#fff6;flex-shrink:0}.conversation-preview{font-size:12px;color:#ffffff80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.you-prefix{color:#cd43ff99}.unread-badge{background:#cd43ff;color:#fff;font-size:10px;font-weight:400;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;flex-shrink:0}.thread-panel{flex:1;display:flex;flex-direction:column;overflow:hidden}.no-conversation-selected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff6}.placeholder-icon{font-size:48px;margin-bottom:16px;opacity:.5}.thread-header{padding:12px 16px;border-bottom:1px solid rgba(205,67,255,.15);display:flex;align-items:center;justify-content:space-between}.thread-header-actions{display:flex;gap:8px}.thread-action-btn{width:28px;height:28px;border-radius:6px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;background:#ff43ff26;color:#ff43ff}.thread-action-btn:hover:not(:disabled){background:#ff43ff4d;color:#ff70ff}.delete-confirm-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10;border-radius:12px}.delete-confirm-modal{background:#000000fa;border:1px solid rgba(255,100,100,.4);border-radius:8px;padding:20px;max-width:320px;box-shadow:0 4px 20px #0006}.delete-confirm-text{color:#ffffffe6;font-size:14px;line-height:1.5;margin:0 0 16px}.delete-confirm-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:16px}.delete-confirm-checkbox span{color:#ffffffb3;font-size:13px}.delete-confirm-actions{display:flex;justify-content:flex-end;gap:8px}.thread-user{display:flex;align-items:center;gap:12px;cursor:pointer}.thread-user:hover .thread-user-name{color:#cd43ff}.thread-user-info{display:flex;flex-direction:column;gap:2px}.thread-user-name{font-family:var(--font-primary);font-size:14px;transition:color .2s ease}.thread-user-status{display:flex;align-items:center;gap:4px;font-size:11px;color:#fff6}.thread-user-status.online{color:#43ff97}.status-dot{width:6px;height:6px;border-radius:50%}.status-dot.online{background:#43ff97;box-shadow:0 0 4px #43ff9780}.messages-container{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.message-bubble{max-width:70%;padding:10px 14px;border-radius:16px;word-break:break-word}.message-bubble.sent{align-self:flex-end;background:#cd43ff40;border:1px solid rgba(205,67,255,.3);border-bottom-right-radius:4px}.message-bubble.received{align-self:flex-start;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-bottom-left-radius:4px}.message-content{font-size:14px;color:#ffffffe6;line-height:1.4;white-space:pre-wrap}.message-time{font-size:10px;color:#fff6;margin-top:4px;text-align:right}.message-bubble.received .message-time{text-align:left}.message-input-container{display:flex;gap:10px;padding:12px 16px;border-top:1px solid rgba(205,67,255,.15);background:#cd43ff0d}.message-input{flex:1;background:#ffffff0d;border:1px solid rgba(205,67,255,.2);border-radius:20px;padding:10px 16px;font-size:14px;color:#ffffffe6;resize:none;max-height:100px;font-family:inherit}.message-input::placeholder{color:#fff6}.message-input:focus{outline:none;border-color:#cd43ff66}.message-input-container .button{flex-shrink:0}.messages-disabled{padding:16px;text-align:center;color:#fff6;border-top:1px solid rgba(205,67,255,.15)}.loading-state{flex:1;display:flex;justify-content:center;align-items:center;padding:40px}.conversations-panel::-webkit-scrollbar,.messages-container::-webkit-scrollbar{width:6px}.conversations-panel::-webkit-scrollbar-track,.messages-container::-webkit-scrollbar-track{background:#0003}.conversations-panel::-webkit-scrollbar-thumb,.messages-container::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:3px}.conversations-panel::-webkit-scrollbar-thumb:hover,.messages-container::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.message-images{margin-bottom:8px;max-width:300px}.message-images .image-display-grid{border-radius:8px;overflow:hidden}.message-input-wrapper{border-top:1px solid rgba(205,67,255,.15);background:#cd43ff0d}.message-input-wrapper .message-input-container{border-top:none;background:transparent}.message-image-previews{display:flex;gap:8px;padding:12px 16px 0;flex-wrap:wrap}.preview-image-item{position:relative;width:60px;height:60px;border-radius:8px;overflow:hidden;border:1px solid rgba(205,67,255,.3)}.preview-image-item img{width:100%;height:100%;object-fit:cover}.remove-preview-btn{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:#000000b3;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#ff6464;transition:all .2s ease}.remove-preview-btn:hover{background:#ff64644d}.attach-image-btn{width:36px;height:36px;border-radius:50%;border:none;background:#cd43ff26;color:#cd43ff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.attach-image-btn:hover:not(:disabled){background:#cd43ff40}.attach-image-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 600px){.messages-modal{max-width:100%;height:100%;border-radius:0}.conversations-panel{width:100%;display:none}.messages-modal-body.show-conversations .conversations-panel{display:flex}.messages-modal-body.show-conversations .thread-panel{display:none}.message-images{max-width:200px}}.notifications-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.notifications-modal{background:transparent;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.4);border-radius:12px;width:90%;max-width:480px;height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d}.notifications-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.2)}.notifications-modal-header h2{font-family:var(--font-primary);font-size:18px;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1px}.header-actions{display:flex;align-items:center;gap:12px}.header-action-btn{background:none;border:none;color:#cd43ffb3;font-size:12px;cursor:pointer;padding:4px 8px;transition:color .2s ease}.header-action-btn:hover:not(:disabled){color:#cd43ff}.header-action-btn:disabled{opacity:.5;cursor:not-allowed}.close-btn{background:none;border:none;color:#fff9;font-size:24px;cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.close-btn:hover{color:#cd43ff}.notifications-modal-content{flex:1;overflow-y:auto}.loading-state{display:flex;justify-content:center;padding:40px}.empty-state{text-align:center;padding:40px 20px;color:#fff6}.notifications-list{display:flex;flex-direction:column}.notification-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;cursor:pointer;transition:background .2s ease;border-bottom:1px solid rgba(205,67,255,.08)}.notification-item:hover{background:#cd43ff14}.notification-item.unread{background:#cd43ff0d;border-left:3px solid #CD43FF}.notification-item.read{opacity:.7}.notification-icon{font-size:20px;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#cd43ff1a;border-radius:8px}.notification-content{flex:1;min-width:0}.notification-title{font-family:var(--font-primary);font-size:13px;color:#fffffff2;font-weight:400;margin-bottom:4px}.notification-item.unread .notification-title{color:#cd43ff}.notification-time{font-size:10px;color:#fff6;flex-shrink:0;min-width:50px;text-align:right}.notification-body{font-size:12px;color:#fff9;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-actions{display:flex;gap:4px;flex-shrink:0;width:56px;justify-content:flex-end;opacity:0;transition:opacity .2s ease}.notification-item:hover .notification-actions{opacity:1}.action-btn{width:24px;height:24px;border-radius:4px;border:none;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.action-btn.mark-read{background:#43ff9733;color:#43ff97}.action-btn.mark-read:hover:not(:disabled){background:#43ff974d}.action-btn.delete{background:#cd43ff26;color:#cd43ff}.action-btn.delete:hover:not(:disabled){background:#cd43ff40}.action-btn.accept{background:#43ff9733;color:#43ff97}.action-btn.accept:hover:not(:disabled){background:#43ff9759}.action-btn.decline{background:#cd43ff26;color:#cd43ff}.action-btn.decline:hover:not(:disabled){background:#cd43ff40}.action-btn:disabled{opacity:.5;cursor:not-allowed}.notifications-footer{padding:12px 16px;background:#cd43ff0d;border-top:1px solid rgba(205,67,255,.15);display:flex;justify-content:center}.notifications-modal-content::-webkit-scrollbar{width:6px}.notifications-modal-content::-webkit-scrollbar-track{background:#0003}.notifications-modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:3px}.notifications-modal-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.global-analysis-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.global-analysis-modal-content{background:linear-gradient(135deg,#14001efa,#0a0014fa);border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff33}.global-analysis-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.global-analysis-modal-title-section{display:flex;align-items:center;gap:16px}.global-analysis-modal-avatar{flex-shrink:0}.global-analysis-modal-title-text h2{font-family:var(--font-primary);font-size:20px;margin:0 0 4px}.global-analysis-modal-subtitle{font-size:12px;color:#cd43ffb3;margin:0;font-style:normal}.global-analysis-modal-actions{display:flex;align-items:center;gap:8px}.global-analysis-delete-btn{background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:6px;padding:6px 8px;cursor:pointer;color:#cd43ff;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:16px;line-height:1}.global-analysis-delete-btn:hover{background:#cd43ff26;border-color:#cd43ff}.global-analysis-delete-btn:active{transform:scale(.95)}.global-analysis-modal-body{flex:1;overflow-y:auto;padding:24px}.global-analysis-source-badge{display:inline-block;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:16px;padding:6px 14px;font-size:12px;color:#cd43ff;margin-bottom:24px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.global-analysis-section{margin-bottom:24px}.global-analysis-section:last-child{margin-bottom:0}.global-analysis-section h3{font-family:var(--font-primary);font-size:14px;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(205,67,255,.15)}.global-analysis-text{font-size:14px;color:#ffffffd9;line-height:1.6;margin:0;white-space:pre-wrap}.global-analysis-tags{display:flex;flex-wrap:wrap;gap:8px}.global-analysis-tag{display:inline-block;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:16px;padding:6px 12px;font-size:12px;color:#cd43ffe6;transition:all .2s ease}.global-analysis-tag:hover{background:#cd43ff26;border-color:#cd43ff66}.global-analysis-games{display:flex;flex-direction:column;gap:8px}.global-analysis-game-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:8px}.global-analysis-game-item .game-name{font-size:13px;color:#ffffffe6}.global-analysis-game-item .game-role{font-size:11px;padding:3px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.5px;font-weight:400}.global-analysis-game-item .game-role.gm{background:#ffd70026;color:gold;border:1px solid rgba(255,215,0,.3)}.global-analysis-game-item .game-role.player{background:#43ff9726;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.global-analysis-loading{display:flex;justify-content:center;align-items:center;padding:60px 20px}.global-analysis-error{text-align:center;padding:60px 20px}.global-analysis-error p{color:#fff9;font-size:14px;margin:0}.global-analysis-modal-body::-webkit-scrollbar{width:6px}.global-analysis-modal-body::-webkit-scrollbar-track{background:#0003}.global-analysis-modal-body::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:3px}.global-analysis-modal-body::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.global-analysis-modal-content .modal-close-btn{background:none;border:none;color:#fff9;font-size:28px;cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.global-analysis-modal-content .modal-close-btn:hover{color:#cd43ff}.global-analysis-sources-list{display:flex;flex-direction:column;gap:12px}.global-analysis-source-item{background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:14px;transition:border-color .2s ease}.global-analysis-source-item:hover{border-color:#cd43ff4d}.source-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.source-game-name{font-size:16px;font-weight:400;color:#fffffff2}.source-item-header .game-role{font-size:13px;padding:4px 10px}.source-item-summary{font-size:15px;color:#ffffffd9;line-height:1.6;margin:0 0 12px}.source-item-interests{display:flex;flex-wrap:wrap;gap:6px}.global-analysis-tag.small{font-size:14px;padding:6px 12px}.global-analysis-tag.small.more{background:#ffffff1a;border-color:#fff3;color:#fff9}.global-analysis-action-row{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(205,67,255,.15)}.global-analysis-synthesize-btn,.global-analysis-reanalyze-btn{background:linear-gradient(135deg,#cd43ff33,#9b32c833);border:1px solid #CD43FF;border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:14px;letter-spacing:1px;text-transform:uppercase;padding:12px 28px;cursor:pointer;transition:all .2s ease}.global-analysis-synthesize-btn:hover:not(:disabled),.global-analysis-reanalyze-btn:hover{background:linear-gradient(135deg,#cd43ff59,#9b32c859);border-color:#d855ff;transform:translateY(-1px);box-shadow:0 4px 15px #cd43ff40}.global-analysis-synthesize-btn:disabled{opacity:.6;cursor:wait}.global-analysis-action-hint{font-size:12px;color:#ffffff80;text-align:center;margin:0}.global-analysis-single-source-note{margin-top:20px;padding:12px 24px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px;width:fit-content;margin-left:auto;margin-right:auto}.global-analysis-single-source-note p{font-size:14px;color:#cd43ffcc;margin:0;text-align:center;font-style:normal;white-space:nowrap}.global-analysis-processed-by{font-size:12px;color:#cd43ffb3;font-style:normal;margin-bottom:20px;text-align:center}@media (max-width: 600px){.global-analysis-modal-content{width:95%;max-height:90vh}.global-analysis-modal-header,.global-analysis-modal-body{padding:16px}.global-analysis-modal-title-text h2{font-size:18px}}.user-profile-page{display:flex;flex-direction:column;height:100%;width:100%;background:#0000004d;overflow:hidden}.profile-avatar-img{width:60px;height:60px;border-radius:50%;border:2px solid rgba(205,67,255,.4);object-fit:cover;position:relative;z-index:1}.profile-avatar-outer-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;pointer-events:none;z-index:0}.dreamer-pulse .profile-avatar-img{animation:avatarPulse 2s ease-in-out infinite}.dreamer-glow-pulse{animation:outerGlowPulse 2s ease-in-out infinite}@keyframes avatarPulse{0%,to{box-shadow:0 0 25px #ffa8ffcc,inset 0 0 20px #ffa8ff66}50%{box-shadow:0 0 35px #ffa8ff,inset 0 0 30px #ffa8ff99}}@keyframes outerGlowPulse{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}.profile-name-row{display:flex;align-items:center;gap:16px}.profile-action-icons{display:flex;gap:8px;align-items:center}.profile-icon-btn{position:relative;background:transparent;border:none;color:#cd43ff;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;border-radius:6px}.profile-icon-btn:hover{background:#cd43ff26;color:#e066ff}.profile-icon-btn svg{stroke:currentColor}.icon-badge{position:absolute;top:-4px;right:-4px;background:#cd43ff;color:#fff;font-size:9px;font-weight:400;padding:1px 4px;border-radius:8px;min-width:14px;text-align:center;box-shadow:0 2px 4px #0000004d}.profile-loading,.profile-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;height:100%;color:#cd43ffb3;font-family:var(--font-primary)}.profile-content{padding:24px;width:100%;height:100%;overflow:hidden}.profile-content.profile-restricted{display:flex;flex-direction:column;align-items:center;text-align:center}.profile-three-columns{display:flex;gap:32px;flex:1;padding-top:16px}.profile-column{display:flex;flex-direction:column;gap:24px;flex:1;min-width:0}.profile-user-info{display:flex;flex-direction:row;align-items:flex-start;text-align:left;gap:20px}.profile-user-info .profile-info{align-items:flex-start;flex:1;min-width:0}.profile-user-info .profile-name-row{justify-content:flex-start;flex-wrap:wrap}.profile-user-info .profile-ranks{align-items:center;justify-content:flex-start}.profile-user-info .profile-stats-inline{justify-content:flex-start}.profile-stats-row{display:flex;align-items:center;margin-top:8px;position:relative}.profile-herodotus-area{position:absolute;left:0;display:flex;align-items:center;justify-content:center;width:80px}.profile-stats-row .profile-stats-inline{display:flex;gap:8px;margin-top:0;margin-left:80px}.profile-stats-row .profile-stat-mini{width:52px;flex-shrink:0;padding:6px 4px}.profile-friends-section{flex:0 0 auto}.profile-friends-rpgs-row{display:flex;gap:16px;flex:1;min-height:0}.profile-friends-rpgs-row .profile-friends-section,.profile-friends-rpgs-row .profile-rpgs-section{flex:1;min-width:0}.profile-rpgs-section .rpg-tags-container{flex-direction:column;align-items:flex-start}.profile-column-bio{margin-top:0;padding-top:0}.profile-bio-section{flex:1;display:flex;flex-direction:column}.profile-bio-section.profile-section{margin-top:0;padding-top:0}.profile-bio-section .profile-bio,.profile-bio-section .profile-bio-input{flex:1;min-height:200px}.profile-column-character{margin-top:0;padding-top:0}.profile-character-section{flex:1;display:flex;flex-direction:column}.profile-character-section.profile-section{margin-top:0;padding-top:0}.character-change-btn{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);color:#cd43ff;font-family:var(--font-primary);font-size:10px;padding:4px 10px;border-radius:12px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.character-change-btn:hover{background:#cd43ff33;border-color:#cd43ff80}.profile-character-card-wrapper{width:100%}.profile-character-card-wrapper .character-card{width:100%;min-height:400px}.character-game{font-size:12px;color:#cd43ffb3;font-style:normal}.character-empty{display:flex;align-items:center;justify-content:center;flex:1;background:#0003;border:1px dashed rgba(205,67,255,.2);border-radius:12px;padding:24px;text-align:center;color:#fff6}.character-loading{display:flex;align-items:center;justify-content:center;flex:1}.character-select-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.character-select-modal{background:linear-gradient(135deg,#14001efa,#0a0014fa);border:1px solid rgba(205,67,255,.3);border-radius:12px;width:400px;max-height:500px;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff33}.character-select-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.2)}.character-select-header h2{font-family:var(--font-primary);font-size:16px;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1px}.character-select-header .close-btn{background:none;border:none;color:#fff9;font-size:24px;cursor:pointer;padding:0;line-height:1}.character-select-header .close-btn:hover{color:#cd43ff}.character-select-content{padding:16px;overflow-y:auto;flex:1}.character-select-empty{text-align:center;padding:32px;color:#fff6;font-style:normal}.character-select-list{display:flex;flex-direction:column;gap:8px}.character-select-item{display:flex;align-items:center;gap:12px;padding:12px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:8px;cursor:pointer;transition:all .2s ease}.character-select-item:hover{background:#cd43ff1f;border-color:#cd43ff4d}.character-select-item.selected{background:#cd43ff26;border-color:#cd43ff80}.character-select-item.character-clear{border-style:dashed}.character-select-avatar{width:48px;height:48px;border-radius:8px;overflow:hidden;background:#cd43ff1a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.character-select-avatar img{width:100%;height:100%;object-fit:cover}.character-select-avatar span{font-family:var(--font-primary);font-size:20px;color:#cd43ff}.character-select-avatar .clear-icon{font-size:24px;color:#ff6464cc}.character-select-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.character-select-name{font-family:var(--font-primary);font-size:14px;color:#ffffffe6}.character-select-game{font-size:11px;color:#cd43ff99}.character-selected-check{color:#cd43ff;font-size:18px}.profile-header-section{display:flex;gap:40px;margin-bottom:24px;padding-top:16px;align-items:flex-start}.profile-header-left{display:flex;align-items:flex-start;gap:24px;flex-shrink:0;min-width:300px}.profile-header-right{flex:1;min-width:200px;display:flex;flex-direction:column}.profile-header-right .profile-bio,.profile-header-right .profile-bio-input{flex:1;min-height:100px}.profile-stats-inline{display:flex;gap:16px;margin-top:12px}.profile-stat-mini,.profile-user-info .profile-stat-mini{display:flex;flex-direction:column;align-items:center;padding:6px 12px;background:#cd43ff0f;border:1px solid rgba(205,67,255,.15);border-radius:6px;flex:1;min-width:0}.stat-mini-value,.profile-user-info .stat-mini-value{font-family:var(--font-primary);font-size:18px;color:#cd43ff;font-weight:400;line-height:1}.stat-mini-label,.profile-user-info .stat-mini-label{font-family:var(--font-primary);font-size:8px;color:#cd43ff99;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.profile-header{display:flex;align-items:center;gap:24px;margin-bottom:24px;padding-top:16px}.profile-avatar-wrapper{position:relative;display:flex;align-items:center;justify-content:center;overflow:visible}.profile-avatar{width:80px;height:80px;border-radius:50%;border:2px solid rgba(205,67,255,.4)}.avatar-edit-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.profile-avatar-wrapper:hover .avatar-edit-overlay{opacity:1}.avatar-edit-overlay span{font-family:var(--font-primary);font-size:12px;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.profile-info{display:flex;flex-direction:column;gap:4px}.profile-name{font-family:var(--font-primary);font-size:22px;color:#fffffff2;margin:0;font-weight:400}.profile-name-input{font-family:var(--font-primary);font-size:22px;color:#fffffff2;font-weight:400;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:6px 12px;min-width:200px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.profile-name-input:focus{border-color:#cd43ff99;box-shadow:0 0 8px #cd43ff4d}.profile-name-input::placeholder{font-family:var(--font-primary);font-weight:300;color:#cd43ff80}.profile-ranks{display:flex;flex-direction:row;align-items:center;gap:12px;margin-top:8px}.profile-gm-rank{font-family:var(--font-primary);font-size:11px;color:#ffd700e6;text-transform:uppercase;letter-spacing:1px;padding:2px 8px;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:4px;display:inline-block;width:fit-content}.profile-restricted-message{margin-top:40px;padding:24px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;color:#ffffffb3;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-size:14px}.profile-stats-section{display:none}.profile-divider{height:1px;background:#cd43ff26;margin:24px 0}.profile-section{margin-bottom:8px}.profile-section-header{font-family:var(--font-primary);font-size:14px;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;margin:0 0 16px;padding-bottom:8px;display:flex;align-items:center;gap:12px}.profile-section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.profile-section-header-row .profile-section-header{margin:0;padding:0}.powered-by{font-size:10px;color:#cd43ff80;font-weight:400;text-transform:none;letter-spacing:0}.profile-bio{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:16px;color:#ffffffd9;line-height:1.6;min-height:80px;white-space:pre-wrap}.bio-empty{color:#fff6;font-style:normal}.profile-bio-input{width:100%;background:#00000080;border:1px solid rgba(205,67,255,.25);border-radius:8px;padding:16px;color:#fffffff2;font-family:inherit;font-size:14px;line-height:1.6;resize:vertical;min-height:100px;transition:border-color .2s ease}.profile-bio-input:focus{outline:none;border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff1a}.profile-bio-input::placeholder{color:#fff6}.rpg-tags-container{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.rpg-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:20px;font-family:var(--font-primary);font-size:12px;color:#cd43ffe6;transition:all .2s ease}.rpg-tag:hover{background:#cd43ff26;border-color:#cd43ff66}.rpg-tag-remove{background:none;border:none;color:#ff43cdb3;font-size:16px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;transition:all .2s ease}.rpg-tag-remove:hover{background:#ff43cd33;color:#ff43cd}.rpg-add-input{display:flex;align-items:center;gap:4px}.rpg-add-input input{background:#00000080;border:1px solid rgba(205,67,255,.25);border-radius:20px;padding:8px 14px;color:#fffffff2;font-family:var(--font-primary);font-size:12px;width:150px;transition:border-color .2s ease}.rpg-add-input input:focus{outline:none;border-color:#cd43ff80}.rpg-add-input input::placeholder{color:#fff6}.rpg-add-button{background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:50%;width:32px;height:32px;color:#cd43ff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.rpg-add-button:hover{background:#cd43ff33;border-color:#cd43ff66}.rpg-empty{color:#fff6;font-size:14px}.profile-friends-placeholder{background:#0003;border:1px dashed rgba(205,67,255,.2);border-radius:8px;padding:24px;text-align:center}.friends-empty{color:#fff6;font-style:normal}.profile-herodotus-placeholder{background:#0003;border:1px dashed rgba(205,67,255,.2);border-radius:8px;padding:24px;text-align:center;color:#fff6;font-style:normal}.profile-friends-section::-webkit-scrollbar{width:6px}.profile-friends-section::-webkit-scrollbar-track{background:#0003;border-radius:3px}.profile-friends-section::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:3px}.profile-friends-section::-webkit-scrollbar-thumb:hover{background:#cd43ff80}@media (max-width: 1200px){.profile-three-columns{gap:24px}}@media (max-width: 992px){.profile-three-columns{flex-wrap:wrap}.profile-column{flex:1 1 45%;min-width:280px}.profile-column-user{flex:0 0 100%}.profile-user-info{flex-direction:row;align-items:flex-start;text-align:left;gap:24px}.profile-user-info .profile-info{align-items:flex-start}.profile-user-info .profile-name-row{justify-content:flex-start}.profile-user-info .profile-ranks{align-items:flex-start}.profile-user-info .profile-stats-inline{justify-content:flex-start}.profile-friends-section{max-height:200px}.profile-friends-rpgs-row .profile-friends-section,.profile-friends-rpgs-row .profile-rpgs-section{max-height:180px}}@media (max-width: 768px){.profile-three-columns{flex-direction:column;overflow-y:auto;padding-bottom:24px}.profile-column{flex:none;width:100%}.profile-user-info{flex-direction:column;align-items:center;text-align:center}.profile-user-info .profile-info{align-items:center}.profile-user-info .profile-name-row{justify-content:center}.profile-user-info .profile-ranks{align-items:center}.profile-user-info .profile-stats-inline{justify-content:center}.profile-friends-section{max-height:none}.profile-friends-rpgs-row{flex-direction:column;gap:24px}.profile-friends-rpgs-row .profile-friends-section,.profile-friends-rpgs-row .profile-rpgs-section{max-height:none}.character-avatar-img,.character-avatar-placeholder{width:100px;height:100px}.character-avatar-placeholder{font-size:40px}.character-select-modal{width:90%;max-width:400px}}@media (max-width: 600px){.profile-content{padding:16px}.profile-three-columns{gap:16px}.profile-name{font-size:24px}}.worlds-tab{width:100%;animation:fadeIn .3s ease}.worlds-header{padding:20px 10px;display:flex;justify-content:flex-end;border-bottom:1px solid rgba(205,67,255,.2);margin-bottom:20px}.create-world-btn{background:linear-gradient(135deg,#cd43ff,#a020f0);border:none;border-radius:8px;color:#fff;padding:12px 24px;font-size:16px;font-weight:400;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;box-shadow:0 4px 12px #cd43ff4d}.create-world-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #cd43ff80;background:linear-gradient(135deg,#d855ff,#b030ff)}.create-world-btn:active{transform:translateY(0)}.create-world-btn .btn-icon{font-size:20px;font-weight:400}.create-world-btn.primary{margin-top:20px}.worlds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;padding:20px 10px 10px}.empty-worlds{display:flex;align-items:center;justify-content:center;min-height:400px;text-align:center}.dice-roller-settings-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dice-roller-settings-modal{background:var(--background-primary, #1a1a1a);border:2px solid var(--purple, #CD43FF);border-radius:12px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.dice-roller-settings-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color, #333)}.dice-roller-settings-modal-title{font-size:1.5rem;font-weight:400;color:var(--purple, #CD43FF);margin:0}.dice-roller-settings-modal-close{background:none;border:none;color:var(--text-secondary, #aaa);font-size:2rem;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.dice-roller-settings-modal-close:hover{background:#cd43ff1a;color:var(--purple, #CD43FF)}.dice-roller-settings-modal-body{padding:24px;overflow-y:auto;flex:1}.dice-roller-settings-description{color:var(--text-secondary, #aaa);margin:0 0 24px;font-size:.95rem;line-height:1.5}.dice-roller-settings-info{margin-top:24px;padding:16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.info-title{font-weight:400;color:var(--purple, #CD43FF);margin:0 0 8px;font-size:.9rem}.info-list{margin:0;padding-left:20px;color:var(--text-secondary, #aaa);font-size:.85rem;line-height:1.6}.info-list li{margin-bottom:4px}.info-list li:last-child{margin-bottom:0}.dice-roller-settings-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid var(--border-color, #333)}.dice-roller-settings-button{padding:10px 20px;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none}.dice-roller-settings-button:focus-visible{outline:2px solid var(--purple, #CD43FF);outline-offset:2px}.dice-roller-settings-button.reset{background:transparent;border:1px solid var(--border-color, #444);color:var(--text-secondary, #aaa)}.dice-roller-settings-button.reset:hover{background:#ffffff0d;border-color:var(--text-secondary, #666)}.dice-roller-settings-button.cancel{background:transparent;border:1px solid var(--border-color, #444);color:var(--text-primary, #fff)}.dice-roller-settings-button.cancel:hover{background:#ffffff0d;border-color:var(--text-secondary, #666)}.dice-roller-settings-button.save{background:var(--purple, #CD43FF);color:#fff;font-weight:400}.dice-roller-settings-button.save:hover{background:var(--purple-hover, #B03DE6);box-shadow:0 4px 12px #cd43ff4d}.dice-roller-settings-button.save:active{transform:scale(.98)}.dice-roller-settings-modal-body .difficulty-selector,.dice-roller-settings-modal-body .special-cases-selector{margin-bottom:24px}.dice-roller-settings-modal-body .difficulty-selector:last-of-type,.dice-roller-settings-modal-body .special-cases-selector:last-of-type{margin-bottom:0}@media (max-width: 640px){.dice-roller-settings-modal{width:95%;max-height:95vh}.dice-roller-settings-modal-header{padding:16px 20px}.dice-roller-settings-modal-title{font-size:1.25rem}.dice-roller-settings-modal-body{padding:20px}.dice-roller-settings-modal-footer{flex-direction:column;gap:12px;align-items:stretch}.footer-actions{width:100%}.dice-roller-settings-button{flex:1}.dice-roller-settings-button.reset{width:100%}}.game-systems-tab{width:100%;margin:0 auto;padding:0 2rem}.systems-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:30px;padding:20px 10px;border-bottom:1px solid rgba(205,67,255,.2)}.systems-header h2{color:#cd43ff;font-size:24px;font-weight:400;font-family:var(--font-primary);letter-spacing:1px}.create-system-btn{background:linear-gradient(135deg,#cd43ff,#a020f0);border:none;border-radius:8px;color:#fff;padding:12px 24px;font-size:16px;font-weight:400;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;box-shadow:0 4px 12px #cd43ff4d}.create-system-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #cd43ff80;background:linear-gradient(135deg,#d855ff,#b030ff)}.create-system-btn:active{transform:translateY(0)}.create-system-btn .btn-icon{font-size:20px;font-weight:400}.create-system-form{background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:20px;margin-bottom:30px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.create-system-form h3{color:#cd43ff;font-size:18px;margin-bottom:15px;font-family:var(--font-primary)}.game-system-settings-page{min-height:100vh;width:100%;padding:2rem;background:#07080a;position:relative;animation:fadeIn .3s ease}.game-system-settings-container{width:100%;margin:0;padding:0 2rem}.game-system-settings-container>.edit-system-form{max-width:100%;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem 2rem;padding-bottom:60px}.game-system-settings-page .settings-header{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.game-system-settings-page .settings-title{font-family:var(--font-primary);font-size:2rem;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5);text-transform:uppercase;letter-spacing:2px;text-align:center}.game-system-settings-page .edit-system-form h3{display:none}.game-system-settings-page .form-actions.form-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:1rem!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;padding:.75rem 2rem!important;background:#07080af2!important;border-top:1px solid rgba(205,67,255,.3)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;z-index:100!important}.game-system-settings-page .form-actions>button,.game-system-settings-page .form-actions>.fantamaster-button{flex-shrink:0!important;padding:8px 12px!important;height:32px!important;font-size:11px!important;min-width:auto!important;width:auto!important}.game-system-settings-page .form-actions .form-actions-spacer{flex:1!important}.system-type-toggle{display:flex;gap:10px;margin-bottom:15px}.type-button{flex:1;padding:10px;background:#2a2a3a80;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#fff9;font-weight:400;cursor:pointer;transition:all .3s ease;text-transform:uppercase;font-size:12px;letter-spacing:1px}.type-button:hover{background:#cd43ff1a;border-color:#cd43ff66}.type-button.active{background:#cd43ff33;border-color:#cd43ff99;color:#cd43ff;box-shadow:0 0 10px #cd43ff4d}.form-input,.form-textarea{width:100%;padding:10px;background:#2a2a3acc;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#fff;margin-bottom:10px;font-family:Roboto,sans-serif}.form-input:focus,.form-textarea:focus{outline:none;border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff33}.form-grid-aligned{display:grid;grid-template-columns:max-content 1fr;gap:10px;margin-bottom:10px;align-items:center}.form-grid-aligned .form-row,.form-grid-aligned .form-group-single,.form-grid-aligned label{display:contents}.form-grid-aligned label span{color:#fff;text-align:left;white-space:nowrap}.form-grid-aligned select{justify-self:start}.form-row{display:flex;gap:20px;margin-bottom:10px}.form-row label{display:flex;align-items:center;gap:10px;color:#fff}.form-actions{display:flex;flex-direction:column!important;align-items:center;gap:10px;margin-top:15px}.systems-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;padding-top:20px}.system-card{background:#000c;border:1px solid rgba(205,67,255,.3);border-radius:12px;overflow:hidden;transition:all .3s ease;position:relative;min-height:400px;display:flex;flex-direction:column}.system-card:hover{border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33;transform:translateY(-5px)}.system-card-body{padding:20px;background:linear-gradient(to bottom,#0003,#0006);margin-top:auto;position:relative}.system-name-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.system-card .system-name{margin:0;font-family:var(--font-primary);font-size:20px;font-weight:400;color:#fffffff2;letter-spacing:.5px}.system-card-info-button{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#cd43ff99;cursor:pointer;padding:0;transition:all .2s ease}.system-card-info-button:hover{color:#cd43ff;transform:scale(1.15)}.system-card-info-button svg{width:18px;height:18px}.system-type-badge{position:absolute;top:10px;right:10px;padding:4px 12px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.system-type-badge.official{background:#43cdff33;color:#43cdff;border:1px solid rgba(67,205,255,.3)}.system-type-badge.custom{background:#ffcd4333;color:#ffcd43;border:1px solid rgba(255,205,67,.3)}.system-stats{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:0;padding-top:16px;border-top:1px solid rgba(205,67,255,.1)}.system-stats .stat{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px;color:#ffffffb3;flex-shrink:0;white-space:nowrap}.system-stats .stat svg:not(.trash-svg){flex-shrink:0;color:#cd43ff99}.system-stats .stat.stat-multiline{flex-direction:row;align-items:flex-start;flex:1;min-width:0}.system-stats .stat-content{display:flex;flex-direction:column;gap:2px}.system-stats .stat-line-2{font-size:13px}.system-stats .stat-count-green{color:#43ff97!important;font-size:13px;font-weight:400}.system-stats .stat-count-yellow{color:gold!important;font-size:13px;font-weight:400}.system-stats .stat-count-red{color:#ff4500!important;font-size:13px;font-weight:400}.system-card .role-badge{position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:20px;font-size:11px;font-family:var(--font-primary);font-weight:400;z-index:3;text-transform:uppercase;letter-spacing:1px;min-width:75px;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.system-card .role-badge.creator{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3);box-shadow:none;text-shadow:none}.system-card .role-badge.creator.clickable{cursor:pointer;transition:all .3s ease}.system-card .role-badge.creator.clickable:hover{background:#43ff974d;transform:scale(1.05)}.loading-state,.empty-state{text-align:center;padding:60px 20px;color:#fff9}.empty-state p{margin-bottom:20px}.system-tab-bar{display:flex;gap:0;border-bottom:1px solid rgba(205,67,255,.15);margin-bottom:1.5rem}.system-tab{padding:.75rem 1.5rem;background:transparent;border:none;color:#ffffff80;font-family:var(--font-primary);font-size:.9rem;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.system-tab:hover{color:#fffc}.system-tab.active{color:#cd43ff;border-bottom-color:#cd43ff}.system-view{width:100%;margin:0 auto;padding:20px}.system-view-header{display:flex;align-items:center;gap:20px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid rgba(205,67,255,.2)}.system-view-header h2{color:#cd43ff;font-size:28px;font-weight:400;font-family:var(--font-primary);margin:0;flex:1}.system-view-content{background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:30px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.system-section{margin-bottom:25px}.system-section h3{color:#cd43ff;font-size:16px;font-weight:400;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}.system-section p{color:#fffc;line-height:1.6;margin:0}.rules-content{background:#2a2a3a80;border:1px solid rgba(205,67,255,.1);border-radius:4px;padding:15px;color:#ffffffe6;white-space:pre-wrap;font-family:Courier New,monospace;font-size:13px;line-height:1.6;overflow-x:auto}.system-view-actions{display:flex;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid rgba(205,67,255,.2)}.specific-topic-input{background:#0003;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:15px;margin-bottom:15px}.specific-topic-input .form-input{margin-bottom:10px}.topic-visibility-section{display:flex;align-items:center;gap:15px;margin:15px 0;padding:10px;background:#0000004d;border-radius:6px;border:1px solid rgba(205,67,255,.15)}.specific-topics-section{margin-bottom:40px}.visibility-label{font-family:var(--font-primary);font-size:14px;color:#cd43ffcc;text-transform:uppercase;letter-spacing:.5px;margin:0}.specific-topic{margin-bottom:20px;padding:15px;border-bottom:1px solid rgba(205,67,255,.1);border-radius:8px;position:relative;transition:all .3s ease}.specific-topic.creator-only{background:#cd43ff1a;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.specific-topic:last-child{border-bottom:none}.specific-topic h4{color:#cd43ffe6;font-size:14px;margin-bottom:10px;font-weight:400;padding-right:100px}.creator-badge{position:absolute!important;top:15px;right:15px;pointer-events:none!important;opacity:1!important;font-size:12px!important;padding:4px 12px!important;height:auto!important;min-height:0!important;background:#43ff9733!important;border-color:#43ff974d!important;color:#43ff97!important;box-shadow:0 0 10px #43ff974d!important;text-shadow:0 0 5px rgba(67,255,151,.5)}.form-group-single{margin-bottom:15px}.form-group-single label{display:flex;align-items:center;gap:15px}.form-group-single label span{min-width:150px;color:#cd43ffcc;font-size:14px}.form-select-small.custom-dropdown{width:100px}.form-select-small .custom-dropdown-trigger{background:#2a2a3acc;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffe6;padding:8px 12px;font-size:14px;width:100%;cursor:pointer;transition:all .3s ease}.form-select-small .custom-dropdown-trigger:hover{border-color:#cd43ff80;background-color:#2a2a3ae6}.form-select-small.open .custom-dropdown-trigger{border-color:#cd43ffb3;box-shadow:0 0 10px #cd43ff33}.form-select-small .custom-dropdown-arrow svg{color:#cd43ff}.dice-roller-settings-section{margin-top:30px}.dice-roller-settings-section h4{color:#cd43ff;font-size:18px;font-weight:400;margin:0 0 8px}.dice-roller-settings-section .section-description{color:#fff9;font-size:14px;margin:0 0 15px;line-height:1.5}.dice-roller-settings-section .settings-configured{color:#43ff97;font-size:14px;margin:10px 0 0;display:flex;align-items:center;gap:5px}.system-card-image{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#cd43ff1a,#8a2be21a);overflow:hidden}.system-card-image:hover .system-card-image-overlay{opacity:1}.system-card-icon-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.system-card-initials{font-size:72px;color:#cd43ff66;font-family:var(--font-primary);font-weight:300;letter-spacing:4px;text-shadow:0 0 20px rgba(205,67,255,.5);line-height:1}.system-card-image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.system-card-upload-hint{font-size:14px;color:#fff;font-weight:400;padding:8px 16px;background:#cd43ff4d;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sheet-preview{padding:1.5rem;background:#07080a;border-radius:12px;max-width:1200px;margin:0 auto;color:#ffffffe6}.preview-empty{padding:4rem 2rem;text-align:center;color:#ffffff80}.preview-header{padding-bottom:1.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.preview-description{margin:0;font-size:.95rem;color:#fff9;line-height:1.5}.preview-version-selector-container{display:flex;justify-content:center;align-items:center;padding:1.5rem 0;margin-bottom:1rem}.preview-version-selector-container .version-dropdown{min-width:250px;max-width:300px}.preview-section{margin-bottom:1.5rem;background:linear-gradient(135deg,#cd43ff26,#cd43ff14);border:1px solid rgba(205,67,255,.3);border-radius:12px;overflow:visible;box-shadow:inset 0 0 30px #cd43ff1a}.preview-section-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#cd43ff1f;border-bottom:1px solid rgba(205,67,255,.2)}.preview-section-header h3{margin:0;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#fffffff2}.collapsible-indicator{font-size:.9rem;color:#ffffff80;transition:transform .2s ease}.preview-columns{display:grid;gap:1.5rem;padding:1.5rem}.preview-column{display:flex;flex-direction:column;gap:.75rem}.preview-column-title{margin:0 0 .75rem;font-size:.95rem;font-weight:400;color:#cd43ffe6;padding-bottom:.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.preview-empty-column{padding:2rem;text-align:center;font-size:.85rem;color:#fff6;font-style:normal}.preview-fields{display:grid;grid-template-columns:auto 1fr;grid-auto-rows:minmax(36px,auto);gap:.75rem 1rem;align-items:center}.preview-field-container{display:flex;flex-direction:column;gap:.35rem;grid-column:1 / -1}.preview-field-container.horizontal.simple-field{display:contents}.preview-field-container.horizontal.simple-field .preview-field-content:has(.field-type-compound),.preview-field-container.horizontal.simple-field .field-renderer.field-type-compound,.preview-field-container.horizontal.simple-field .field-type-compound>.field-content,.preview-field-container.horizontal.simple-field .field-type-compound .field-input-row,.preview-field-container.horizontal.simple-field .compound-field{display:contents}.preview-field-container.horizontal.simple-field .compound-name,.preview-field-container.horizontal.simple-field .compound-value{display:flex;align-items:center;min-width:0}.preview-field-container.horizontal:not(.simple-field){flex-direction:row;align-items:center;gap:1rem;grid-column:1 / -1}.preview-field-container.horizontal:not(.simple-field) .preview-text-input,.preview-field-container.horizontal:not(.simple-field) input[type=text]{max-width:80px;min-width:60px}.preview-field-container.vertical{flex-direction:column;align-items:flex-start;grid-column:1 / -1}.preview-field-container.full-width{grid-column:1 / -1}.preview-field-label{font-size:.9rem;font-weight:400;color:#ffffffe6;display:flex;align-items:center;gap:.35rem}.preview-field-content{display:flex;flex-direction:column;gap:.35rem}.preview-field-container.vertical .preview-field-content{width:100%}.required-mark{color:#cd43ff}.help-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:#cd43ff26;border-radius:50%;font-size:.7rem;color:#fff9;cursor:help}.preview-field{width:100%;padding:.7rem .9rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:.95rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.preview-field:focus{outline:none;border-color:#cd43ff99;box-shadow:0 0 0 2px #cd43ff26}.preview-text-input,.preview-number-input,.preview-date-input,.preview-select,.preview-dice-input,.preview-calculated-input{@extend .preview-field;}.preview-textarea{@extend .preview-field;resize:vertical;min-height:80px}.preview-number-group{display:flex;align-items:center;gap:.5rem}.preview-number-group input[type=number]::-webkit-inner-spin-button,.preview-number-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.preview-number-group input[type=number]{-moz-appearance:textfield}.number-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffb3;font-size:1.1rem;cursor:not-allowed;transition:all .2s ease}.number-unit{font-size:.85rem;color:#ffffff80}.preview-dots{display:flex;gap:.4rem;font-size:1.4rem}.preview-dots-multi-row{display:flex;flex-direction:column;gap:4px}.preview-dots-row{display:flex;gap:.4rem;font-size:1.4rem}.dot{cursor:pointer;transition:all .2s}.preview-pool{display:flex;align-items:center}.preview-pool-numeric{flex-direction:row;gap:.3rem}.preview-pool-numeric .pool-current,.preview-pool-numeric .pool-max{font-size:1rem;font-weight:400;color:#ffffffe6}.preview-pool-numeric .pool-separator{color:#ffffff80;font-weight:400}.preview-pool-checkbox{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center}.preview-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#ffffffe6;cursor:pointer}.preview-radio-group{display:flex;flex-direction:column;gap:.5rem}.preview-radio{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#ffffffe6;cursor:pointer}.preview-image-upload{display:flex;flex-direction:column;gap:.5rem}.preview-image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem;background:#cd43ff0d;border:2px dashed rgba(205,67,255,.3);border-radius:8px;font-size:2rem;color:#cd43ff99}.preview-image-placeholder span{font-size:.85rem;color:#ffffff80}.image-hint{font-size:.75rem;color:#fff6;font-style:normal}.preview-dice{display:flex;gap:.5rem}.dice-roll-btn{padding:.6rem 1rem;background:linear-gradient(135deg,#cd43ff,#9d4edd);border:none;border-radius:6px;color:#fff;font-size:.9rem;cursor:not-allowed;opacity:.7;white-space:nowrap}.preview-calculated{display:flex;flex-direction:column;gap:.35rem}.calculated-formula{font-size:.75rem;color:#cd43ffb3;font-family:Courier New,monospace}.preview-divider{border:none;border-top:1px solid rgba(205,67,255,.2);margin:.5rem 0}.preview-heading{margin:0;font-size:1.1rem;font-weight:400;color:#fffffff2}.preview-richtext{display:flex;flex-direction:column;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.richtext-toolbar{display:flex;gap:.25rem;padding:.5rem;background:#cd43ff1a;border-bottom:1px solid rgba(205,67,255,.2)}.richtext-toolbar button{width:28px;height:28px;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#fff9;font-weight:400;cursor:not-allowed}.richtext-content{padding:.8rem;min-height:100px;background:#0006;color:#ffffff80;font-style:normal}.preview-unknown{padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.locked-indicator{font-size:.65rem;color:#ffffff59;cursor:help}.readonly-badge{font-size:.75rem;color:#fff6;font-style:normal}.preview-field-label .formula-indicator{display:inline-flex;align-items:center;justify-content:center;padding:1px 4px;background:#ff43cd26;border:1px solid rgba(255,67,205,.4);border-radius:3px;font-size:.6rem;font-family:Courier New,monospace;font-weight:400;font-style:normal;color:#ff43cd;cursor:help;text-transform:lowercase}.preview-field-content .formula-indicator{display:inline-flex;align-items:center;justify-content:center;padding:1px 5px;background:#ff43cd26;border:1px solid rgba(255,67,205,.4);border-radius:4px;font-size:.65rem;font-family:Courier New,monospace;font-weight:400;font-style:normal;color:#ff43cd;cursor:help;transition:all .2s;text-transform:lowercase}.preview-field-content .formula-indicator:hover{background:#ff43cd40;border-color:#ff43cd99}.preview-field-label .gm-indicator{display:inline-flex;align-items:center;justify-content:center;padding:1px 4px;background:#ff008026;border:1px solid rgba(255,0,128,.4);border-radius:3px;font-size:.6rem;font-family:var(--font-primary);font-weight:400;color:#ff0080;cursor:help;text-transform:uppercase;letter-spacing:.5px}.sheet-preview.theme-compact{padding:1rem}.sheet-preview.theme-compact .preview-field{padding:.4rem .6rem;font-size:.85rem}.sheet-preview.theme-compact .preview-section{margin-bottom:1rem}.sheet-preview.theme-spacious{padding:3rem}.sheet-preview.theme-spacious .preview-field{padding:.8rem 1rem;font-size:1rem}.sheet-preview.theme-spacious .preview-fields{gap:1.5rem}@media (max-width: 768px){.sheet-preview{padding:1rem}.preview-columns{grid-template-columns:1fr!important;gap:1.5rem}.preview-section-header{padding:.75rem 1rem}.preview-section-header h3{font-size:1.1rem}.preview-dice{flex-direction:column}.preview-field-container.horizontal{flex-direction:column;align-items:flex-start}.preview-field-container.horizontal .preview-field-label{min-width:unset}.preview-field-container.horizontal .preview-field-content{width:100%}}.preview-list{display:flex;flex-direction:column;gap:.5rem}.preview-list-instance{display:flex;align-items:center;gap:.5rem}.preview-list-label{font-weight:400;color:#ffffffe6;min-width:120px}.preview-list-value{color:#ffffff80;font-style:normal}.preview-list-add{margin-top:.25rem;padding:.5rem;text-align:center;color:#cd43ff;font-size:.9rem;opacity:.7}.preview-list-prerendered{display:flex;flex-direction:column;gap:.5rem}.preview-list-slot{display:flex;align-items:center;gap:.75rem}.preview-list-dropdown{flex:1;min-width:0;padding:.5rem .75rem;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-size:.9rem;cursor:not-allowed;opacity:.8}.preview-list-dropdown:disabled{cursor:not-allowed}.preview-list-slot .preview-list-value{color:#cd43ffb3;font-family:monospace;white-space:nowrap}.sheet-preview-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;padding:40px;animation:fadeIn .2s ease}.sheet-preview-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:16px;width:95%;max-width:1400px;max-height:90vh;display:flex;flex-direction:column;overflow:visible;box-shadow:0 20px 60px #00000080,0 0 40px #cd43ff1a;animation:slideUp .3s ease}.sheet-preview-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#0000004d}.sheet-preview-modal-header .header-spacer{width:36px}.sheet-preview-modal-title{margin:0;font-family:var(--font-primary);font-size:24px;font-weight:400;color:#cd43ff;letter-spacing:1px;text-align:center;flex:1}.sheet-preview-modal-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:50%;color:#ffffffb3;font-size:24px;cursor:pointer;transition:all .2s}.sheet-preview-modal-close:hover{background:#cd43ff33;border-color:#cd43ff66;color:#cd43ff;transform:scale(1.1)}.sheet-preview-modal-content{flex:1;overflow-y:auto;padding:24px}.sheet-preview-modal-footer{position:relative;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#0000004d}.sheet-preview-modal-footer .footer-left,.sheet-preview-modal-footer .footer-right{display:flex;gap:12px;flex:1}.sheet-preview-modal-footer .footer-right{justify-content:flex-end}.sheet-preview-modal-footer .footer-center{position:absolute;left:50%;transform:translate(-50%);display:flex;justify-content:center}.methods-preview{padding:8px}.methods-preview-list{display:flex;flex-direction:column;gap:12px}.method-preview-card{display:flex;flex-direction:column;gap:0;padding:0;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:12px;transition:all .3s ease;overflow:hidden}.method-preview-card:hover{border-color:#cd43ff66;box-shadow:0 0 15px #cd43ff1a}.method-preview-card.expanded{border-color:#cd43ff80;box-shadow:0 0 20px #cd43ff26}.method-preview-clickable{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;cursor:pointer;transition:background .2s ease}.method-preview-clickable:hover{background:#cd43ff0d}.method-expand-chevron{display:inline-block;margin-left:8px;font-size:12px;color:#cd43ff80;transition:transform .3s ease}.method-expand-chevron.open{transform:rotate(180deg)}.method-expanded-content{padding:0 24px 20px;border-top:1px solid rgba(205,67,255,.1);animation:expandIn .2s ease}@keyframes expandIn{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.method-expanded-note{margin:16px 0 0;font-size:13px;color:#fff6;font-style:normal}.method-rulesets-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.ruleset-preview-card{padding:14px 18px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:8px}.ruleset-preview-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.ruleset-preview-name{margin:0;font-family:var(--font-primary);font-size:13px;font-weight:400;color:#ffffffd9;letter-spacing:.3px}.ruleset-default-badge{font-size:10px;font-weight:400;letter-spacing:.5px;text-transform:uppercase;color:#cd43ff;background:#cd43ff26;padding:2px 8px;border-radius:4px}.ruleset-preview-desc{margin:0 0 10px;font-size:12px;color:#fff6;line-height:1.4}.ruleset-preview-stats{display:flex;gap:16px}.ruleset-stat{display:flex;align-items:baseline;gap:4px}.ruleset-stat-value{font-size:14px;font-weight:400;color:#cd43ff}.ruleset-stat-label{font-size:11px;color:#fff6;text-transform:uppercase;letter-spacing:.3px}.ruleset-preview-system{margin-top:8px;font-size:11px;color:#ffffff59}.ruleset-system-label{margin-right:4px}.ruleset-system-name{color:#ffffff8c}.methods-loading{display:flex;justify-content:center;align-items:center;min-height:200px}.method-preview-info{display:flex;flex-direction:column;gap:4px;flex:1}.method-preview-name{margin:0;font-family:var(--font-primary);font-size:15px;font-weight:400;color:#cd43ff;letter-spacing:.3px}.method-preview-desc{margin:0;font-size:13px;color:#ffffff73;line-height:1.4}.method-preview-desc.custom-tag{color:#cd43ff99;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.method-availability-row{display:flex;align-items:center;gap:16px;flex-shrink:0}.method-availability-label{font-size:12px;font-family:var(--font-primary);color:#cd43ff99;font-weight:500;white-space:nowrap;letter-spacing:.5px}.method-toggle-compact{display:flex;align-items:center;gap:6px;font-size:12px;font-family:var(--font-primary);font-weight:400;color:#ffffffe6;letter-spacing:.5px;text-transform:uppercase}.tab-preview-container{padding:8px;display:flex;flex-direction:column;gap:20px}.tab-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:8px;text-align:center}.tab-preview-empty p{margin:0;font-size:14px;color:#ffffff73;font-family:var(--font-primary)}.tab-preview-empty .tab-preview-empty-hint{font-size:12px;color:#ffffff4d}.tab-preview-header-row{display:flex;align-items:center;gap:12px}.tab-preview-badge{font-size:11px;font-weight:400;letter-spacing:.5px;text-transform:uppercase;color:#cd43ff;background:#cd43ff26;padding:4px 12px;border-radius:6px}.tab-preview-badge.badge-disabled{color:#fff6;background:#ffffff14}.tab-preview-system{font-size:12px;color:#fff6;font-style:italic}.tab-preview-description{margin:0;font-size:13px;color:#ffffff73;line-height:1.5}.tab-preview-stats-row{display:flex;gap:24px;padding:16px 20px;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:10px}.tab-preview-section{display:flex;flex-direction:column;gap:8px}.tab-preview-section-title{margin:0;font-family:var(--font-primary);font-size:12px;font-weight:400;color:#cd43ff99;text-transform:uppercase;letter-spacing:.8px}.tab-preview-item{padding:14px 18px;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;display:flex;flex-direction:column;gap:6px;transition:border-color .2s ease}.tab-preview-item:hover{border-color:#cd43ff4d}.tab-preview-item.item-disabled{opacity:.5}.tab-preview-item-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.tab-preview-item-name{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffffffd9;letter-spacing:.3px}.tab-preview-item-desc{margin:0;font-size:12px;color:#fff6;line-height:1.4}.tab-preview-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.mechanics-stat-item{gap:8px}.mechanics-stat-display-mode{font-size:11px;color:#ffffff59;text-transform:uppercase;letter-spacing:.5px}.mechanics-stat-details{display:flex;gap:6px;flex-wrap:wrap}.mechanics-stat-field{font-size:12px;color:#fff6;font-family:monospace}.mechanics-stat-flags{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.mechanics-flag{font-size:10px;font-weight:400;letter-spacing:.4px;text-transform:uppercase;color:#cd43ff;background:#cd43ff1f;padding:2px 8px;border-radius:4px}.integrity-trigger-badge{font-size:10px;font-weight:400;letter-spacing:.5px;text-transform:uppercase;color:#fff9;background:#ffffff14;padding:2px 8px;border-radius:4px}.integrity-trigger-details{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.integrity-field-count{font-size:11px;color:#ffffff59}.integrity-formula{font-size:11px;color:#cd43ff80;font-family:monospace}.integrity-disabled-label{font-size:10px;color:#ff646499;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}@media (max-width: 768px){.sheet-preview-modal-backdrop{padding:20px}.sheet-preview-modal{max-height:95vh}.sheet-preview-modal-header{padding:16px 20px}.sheet-preview-modal-title{font-size:20px}.sheet-preview-modal-content{padding:16px}.sheet-preview-modal-footer{padding:12px 16px;flex-wrap:wrap;gap:12px}.sheet-preview-modal-footer .footer-left,.sheet-preview-modal-footer .footer-right{flex:1 1 auto;justify-content:center}.sheet-preview-modal-footer .footer-center{position:static;transform:none;order:-1;flex:1 1 100%;justify-content:center}.method-preview-clickable{flex-direction:column;align-items:flex-start;gap:12px}.ruleset-preview-stats{flex-wrap:wrap;gap:10px}.tab-preview-stats-row{flex-wrap:wrap;gap:12px;padding:12px 16px}.tab-preview-item{padding:12px 14px}}.sheets-tab{width:100%;animation:fadeIn .3s ease}.empty-sheets{display:flex;align-items:center;justify-content:center;min-height:400px;text-align:center}.empty-sheets .empty-content h3{font-family:var(--font-primary);font-size:24px;color:#cd43ff;margin-bottom:10px}.empty-sheets .empty-content p{color:#fff9;font-size:14px;margin-bottom:20px}.sheets-tab .modal-container.character-modal{background:#07080af2;border:1px solid rgba(205,67,255,.3);border-radius:16px;width:95%;max-width:600px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000080,0 0 40px #cd43ff1a;animation:slideUp .3s ease}.character-metadata{display:flex;flex-direction:column;gap:0px;min-width:0;overflow:hidden}.metadata-row{display:flex;align-items:center;gap:8px;min-width:0}.metadata-label{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#cd43ff;min-width:65px;text-transform:uppercase;letter-spacing:.5px}.metadata-display{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden}.character-metadata .metadata-value{font-family:var(--font-primary);font-size:13px;font-weight:300;color:#cd43ffd9}.character-metadata .metadata-value.status-dead{color:#ff6b9d;font-weight:300}.character-metadata.dead-character .metadata-value,.character-metadata.dead-character .metadata-label{color:#ff6b9d}.metadata-edit-btn{padding:4px 12px;font-family:var(--font-primary);font-size:12px;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;cursor:pointer;transition:all .2s ease}.metadata-edit-btn:hover{background:#cd43ff1a;border-color:#cd43ff80}.metadata-edit-group{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden}.metadata-input{flex:1;padding:6px 10px;font-family:var(--font-primary);font-size:13px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#fff;outline:none;min-width:0}.metadata-input:focus{border-color:#cd43ff99;background:#000000b3}.metadata-select{padding:6px 32px 6px 10px;font-family:var(--font-primary);font-size:13px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#fff;cursor:pointer;outline:none;min-width:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23CD43FF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}.metadata-select:focus{border-color:#cd43ff99}.metadata-save-btn{padding:6px 14px;font-family:var(--font-primary);font-size:12px;background:#cd43ff33;border:1px solid rgba(205,67,255,.5);border-radius:4px;color:#cd43ff;cursor:pointer;transition:all .2s ease;font-weight:400}.metadata-save-btn:hover{background:#cd43ff4d;border-color:#cd43ffb3}.metadata-cancel-btn{padding:6px 14px;font-family:var(--font-primary);font-size:12px;background:transparent;border:1px solid rgba(255,107,157,.3);border-radius:4px;color:#ff6b9d;cursor:pointer;transition:all .2s ease}.metadata-cancel-btn:hover{background:#ff6b9d1a;border-color:#ff6b9d80}.metadata-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;min-width:0}.metadata-history-btn{display:flex;align-items:center;gap:6px;padding:3px 10px;font-family:var(--font-primary);font-size:11px;font-weight:400;letter-spacing:.5px;background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#cd43ffb3;cursor:pointer;transition:all .2s ease}.metadata-history-btn:hover{background:#cd43ff14;border-color:#cd43ff66;color:#cd43ff}.metadata-history-btn.active{background:#cd43ff1f;border-color:#cd43ff80;color:#cd43ff}.history-icon{font-size:13px;line-height:1}.history-label{text-transform:uppercase}.metadata-history-modal{position:relative;background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:12px;width:90%;max-width:1000px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.metadata-history-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.metadata-history-modal-header h2{font-family:var(--font-primary);color:#cd43ff;font-size:1.25rem;font-weight:400;flex:1;text-align:center;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.metadata-history-modal-body{padding:16px 24px;overflow-y:auto;flex:1}.metadata-history-loading,.metadata-history-empty{font-family:var(--font-primary);font-size:13px;color:#cd43ff99;text-align:center;padding:24px 0}.metadata-history-table{width:100%;border-collapse:collapse;font-family:var(--font-primary);font-size:13px}.metadata-history-table th{font-weight:400;font-size:11px;color:#cd43ff;text-transform:uppercase;letter-spacing:.5px;padding:8px 12px;text-align:left;border-bottom:1px solid rgba(205,67,255,.2);position:sticky;top:0;background:#0f0a19f2}.metadata-history-table td{padding:8px 12px;color:#ffffffd9;border-bottom:1px solid rgba(255,255,255,.05)}.metadata-history-table tr:last-child td{border-bottom:none}.metadata-history-table .history-session{color:#cd43ffcc;font-weight:400;white-space:nowrap}.metadata-history-table .history-location{display:inline-block}.metadata-history-table .status-dead{color:#ff6b9d}.metadata-history-table .history-description{white-space:normal;max-width:600px;line-height:1.4}.metadata-kill-count.clickable{color:#ff6b6b;cursor:pointer;transition:all .2s ease}.metadata-kill-count.clickable:hover{text-shadow:0 0 8px rgba(255,107,107,.4)}.metadata-kill-count-zero{color:#fff6}.metadata-autocomplete{position:absolute;top:100%;left:0;right:0;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:4px;z-index:100;max-height:120px;overflow-y:auto}.metadata-autocomplete-item{display:block;width:100%;padding:4px 10px;background:transparent;border:none;color:#fffc;font-family:var(--font-primary);font-size:12px;font-weight:400;text-align:left;cursor:pointer;transition:background .15s ease}.metadata-autocomplete-item:hover{background:#cd43ff26;color:#cd43ff}.info-icon{display:inline-flex;align-items:center;justify-content:center;padding:4px;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:default;transition:all .2s ease}.info-icon-medium{width:32px;height:32px}.info-icon-small{width:24px;height:24px}.info-icon.clickable{cursor:pointer}.info-icon.clickable:hover{background:#cd43ff26;color:#d75fff;transform:scale(1.1)}.info-icon.clickable:active{transform:scale(.95)}.info-icon.disabled{opacity:.4;cursor:not-allowed}.info-icon:disabled{opacity:.4;cursor:not-allowed}.info-icon-medium .info-svg{width:20px;height:20px}.info-icon-small .info-svg{width:16px;height:16px}.gm-canon-lock{display:inline-flex;align-items:center;gap:6px;margin-top:-4px}.gm-canon-lock .info-icon{width:18px;height:18px;padding:2px}.gm-canon-lock .info-svg{width:14px;height:14px}.gm-canon-lock-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#cd43ff99;-webkit-user-select:none;user-select:none;cursor:pointer}.gm-canon-lock-label.locked{color:#cd43ff}.scope-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:11000}.scope-dialog{position:relative;background:#000000f2;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:24px;max-width:420px;width:90%;box-shadow:0 8px 32px #cd43ff26;display:flex;flex-direction:column;gap:16px}.scope-dialog-title{font-family:var(--font-primary);font-weight:400;font-size:16px;color:#ffffffe6;margin:0}.scope-dialog-message{font-family:var(--font-primary);font-weight:400;font-size:13px;color:#fff9;margin:0;line-height:1.4}.scope-dialog-desc-area{min-height:36px}.scope-dialog-desc{font-family:var(--font-primary);font-weight:400;font-size:12px;color:#ffffff80;margin:0;line-height:1.4}.scope-dialog-warning{font-family:var(--font-primary);font-weight:400;font-size:12px;color:#ff43cdcc;margin:4px 0 0;line-height:1.4}.scope-dialog-actions{display:flex;justify-content:flex-end;gap:10px}.advancement-bar{position:sticky;top:0;z-index:10;padding:.75rem 1.25rem;background:#000000d9;border:1px solid rgba(205,67,255,.3);border-radius:8px;margin:0 1.5rem 1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.advancement-bar-header{margin-bottom:.5rem}.advancement-bar-title{font-size:.95rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:.5px}.advancement-bar-pools{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.advancement-pool-row{display:flex;flex-direction:column;gap:.25rem}.advancement-pool-row.overspent .advancement-pool-remaining{color:#ef4444}.advancement-pool-info{display:flex;align-items:center;gap:.5rem}.advancement-pool-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;border:1px solid rgba(255,255,255,.2)}.advancement-pool-name{font-size:.85rem;font-weight:500;color:var(--text-primary, #e0e0e0)}.advancement-pool-remaining{font-size:.8rem;font-weight:400;color:#cd43ff;margin-left:auto}.advancement-pool-bar{position:relative;height:6px;background:#cd43ff26;border:1px solid rgba(205,67,255,.2);border-radius:3px;overflow:hidden}.advancement-pool-bar-fill{position:absolute;top:0;left:0;height:100%;background:#cd43ff80;border-radius:3px;transition:width .3s ease}.advancement-pool-bar-pending{position:absolute;top:0;height:100%;background:#cd43ff;border-radius:3px;transition:width .3s ease,left .3s ease;animation:pendingPulse 2s ease-in-out infinite}.advancement-pool-row.overspent .advancement-pool-bar{border-color:#ef444466}.advancement-pool-row.overspent .advancement-pool-bar-fill{background:#ef444480}.advancement-pool-row.overspent .advancement-pool-bar-pending{background:#ef4444}@keyframes pendingPulse{0%,to{opacity:1}50%{opacity:.7}}.advancement-bar-pending{margin-bottom:.5rem;padding:.5rem 0;border-top:1px solid rgba(205,67,255,.15)}.advancement-pending-list{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.advancement-pending-item{font-size:.8rem;color:var(--text-primary, #e0e0e0);padding:.15rem .5rem;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:4px}.advancement-pending-total{font-size:.8rem;font-weight:400;color:#cd43ff}.advancement-no-pending{font-size:.8rem;color:var(--text-secondary, #a0a0a0);font-style:normal}.advancement-bar-warning{padding:.35rem .5rem;margin-bottom:.5rem;font-size:.8rem;font-weight:500;color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:4px}.advancement-bar-actions{display:flex;gap:.5rem;justify-content:flex-end}.auto-fill-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;animation:autoFillFadeIn .2s ease-out}@keyframes autoFillFadeIn{0%{opacity:0}to{opacity:1}}.auto-fill-modal{background:#000000e6;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:32px;width:440px;max-width:90vw;font-family:var(--font-primary);color:#ffffffe6}.auto-fill-modal h2{margin:0 0 24px;font-size:18px;font-weight:400;color:#fffffff2;letter-spacing:.02em}.auto-fill-chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.auto-fill-chip{padding:8px 16px;border-radius:8px;border:1px solid rgba(205,67,255,.15);background:#00000080;color:#cd43ff;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.auto-fill-chip:hover{border-color:#cd43ff4d;background:#cd43ff14}.auto-fill-chip.selected{background:#cd43ff26;border-color:#cd43ff66;color:#e056ff}.auto-fill-chip.story-chip.selected{animation:buttonGlow 3s ease-in-out infinite}@keyframes buttonGlow{0%,to{box-shadow:0 0 20px #cd43ff33,0 0 40px #cd43ff1a}50%{box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33}}.auto-fill-separator{text-align:center;color:#fff6;font-weight:400;font-size:12px;font-family:var(--font-primary);margin:16px 0;letter-spacing:.05em}.auto-fill-label{font-size:13px;font-weight:400;color:#ffffffb3;margin-bottom:8px}.auto-fill-specific-row{display:flex;gap:16px;margin-bottom:8px}.auto-fill-input-group{flex:1;display:flex;flex-direction:column;gap:4px}.auto-fill-input-group label{font-size:12px;font-weight:400;color:#ffffff80}.auto-fill-input-group input{background:#00000080;border:1px solid rgba(205,67,255,.15);border-radius:6px;padding:8px 12px;color:#ffffffe6;font-family:var(--font-primary);font-variant-numeric:tabular-nums;font-weight:400;font-size:14px;outline:none;transition:border-color .15s ease}.auto-fill-input-group input:focus{border-color:#cd43ff66}.auto-fill-input-group input::placeholder{color:#ffffff40}.auto-fill-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;align-items:center}.auto-fill-error{flex:1;color:#ff43cd;font-size:12px;font-weight:400}.auto-fill-loading{display:flex;align-items:center;gap:8px;color:#fff9;font-size:13px}.character-sheet-renderer{display:flex;flex-direction:column;height:100%;background:var(--bg-primary, #1a1a1a);color:var(--text-primary, #e0e0e0)}.character-sheet-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem}.character-sheet-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;padding:2rem;text-align:center}.character-sheet-error .error-icon{font-size:3rem;color:#ff43cd}.character-sheet-error h3{margin:0;font-size:1.3rem;color:var(--text-primary, #e0e0e0)}.character-sheet-error p{margin:0;font-size:.95rem;color:var(--text-secondary, #a0a0a0);max-width:500px}.btn-retry{padding:.75rem 1.5rem;background:var(--primary-color, #6366f1);border:none;border-radius:6px;color:#fff;font-size:.95rem;font-weight:400;cursor:pointer;transition:background .2s}.btn-retry:hover{background:var(--primary-hover, #4f46e5)}.character-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:#cd43ff1f;border-bottom:1px solid rgba(205,67,255,.4)}.header-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.header-title-row h2{margin:0;font-size:1.5rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.header-title-row .header-field-dropdown{margin-left:auto;flex-shrink:0}.header-info h2{margin:0 0 .25rem;font-size:1.5rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.sheet-description-row{display:flex;align-items:center;gap:.75rem;margin-top:.25rem}.sheet-description{margin:0;font-size:.85rem;color:var(--text-secondary, #a0a0a0);white-space:nowrap}.header-field-dropdown{margin-left:auto;flex-shrink:0}.version-switcher{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;padding:.75rem;background:#6366f11a;border:1px solid rgba(99,102,241,.3);border-radius:6px}.version-switcher label{font-size:.9rem;font-weight:400;color:var(--text-primary, #e0e0e0);margin:0}.version-select{padding:.5rem .75rem;background:var(--bg-primary, #1a1a1a);color:var(--text-primary, #e0e0e0);border:1px solid var(--border-color, #333);border-radius:4px;font-size:.9rem;cursor:pointer;min-width:200px}.version-select:disabled{opacity:.5;cursor:not-allowed}.version-select:hover:not(:disabled){border-color:var(--primary-color, #6366f1)}.switching-indicator{font-size:.85rem;color:var(--primary-color, #6366f1);font-style:normal}.header-actions{display:flex;align-items:center;gap:1rem}.unsaved-indicator{font-size:.85rem;color:var(--warning-color, #f59e0b);display:flex;align-items:center;gap:.35rem}.unsaved-indicator:before{content:"●";font-size:.8rem}.saving-indicator{font-size:.85rem;color:var(--primary-color, #6366f1);display:flex;align-items:center;gap:.5rem}.saving-indicator .unified-spinner-inline-wrapper{display:inline-flex}.last-saved{font-size:.8rem;color:var(--text-secondary, #a0a0a0)}.btn-save{padding:.65rem 1.25rem;background:var(--primary-color, #6366f1);border:none;border-radius:6px;color:#fff;font-size:.9rem;font-weight:400;cursor:pointer;transition:all .2s}.btn-save:hover:not(:disabled){background:var(--primary-hover, #4f46e5)}.btn-save:disabled{opacity:.5;cursor:not-allowed}.character-sheet-error-banner{display:flex;align-items:center;gap:.75rem;margin:1rem 1.5rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ff43cd;font-size:.9rem}.character-sheet-error-banner .error-icon{font-size:1.2rem}.character-sheet-content{flex:1;overflow-y:auto;padding:.5rem}.sheet-section{margin-bottom:2rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:visible}.section-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#cd43ff33;border-bottom:1px solid rgba(205,67,255,.4)}.section-header h3{margin:0;font-size:1.3rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.section-collapse-btn{background:transparent;border:none;color:var(--text-secondary, #a0a0a0);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.section-collapse-btn:hover{color:var(--text-primary, #e0e0e0)}.collapse-icon{display:inline-block;transition:transform .2s;font-size:.9rem}.collapse-icon.expanded{transform:rotate(180deg)}.section-columns{display:grid;gap:1.5rem;padding:1.5rem}.sheet-column{display:flex;flex-direction:column;gap:.75rem}.column-title{margin:0 0 1rem;font-size:1.1rem;font-weight:400;color:var(--text-primary, #e0e0e0);padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #333)}.column-fields{display:grid;grid-template-columns:auto 1fr;grid-auto-rows:minmax(36px,auto);gap:.75rem 1rem;align-items:center}.field-container{display:flex;flex-direction:column;gap:.35rem;grid-column:1 / -1}.field-container.horizontal.simple-field{display:contents}.field-container.horizontal:not(.simple-field){flex-direction:row;align-items:center;gap:1rem;grid-column:1 / -1}.field-container.vertical{flex-direction:column;grid-column:1 / -1}.field-container.full-width{grid-column:1 / -1}.character-sheet-renderer.theme-compact .section-columns{gap:1.5rem;padding:1rem}.character-sheet-renderer.theme-compact .column-fields{gap:.85rem}.character-sheet-renderer.theme-spacious .section-columns{gap:2.5rem;padding:2rem}.character-sheet-renderer.theme-spacious .column-fields{gap:1.75rem}@media (max-width: 768px){.character-sheet-header{flex-direction:column;align-items:stretch;gap:1rem}.header-actions{flex-wrap:wrap;justify-content:space-between}.character-sheet-content{padding:.25rem}.section-columns{grid-template-columns:1fr!important;gap:1.5rem}.section-header{padding:.75rem 1rem}.section-header h3{font-size:1.1rem}}.pool-spending-panel{margin:1rem 1.5rem;padding:1rem 1.25rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.3);border-radius:8px}.pool-spending-panel h4{margin:0 0 1rem;font-size:.95rem;font-weight:400;color:var(--text-primary, #e0e0e0);text-transform:uppercase;letter-spacing:.5px}.pool-summary{margin-bottom:1rem;padding:.75rem;background:var(--bg-primary, #1a1a1a);border-radius:6px;border:1px solid transparent}.pool-summary:last-child{margin-bottom:0}.pool-summary.overspent{border-color:#ef444480;background:#ef44440d}.pool-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.pool-name{font-size:.9rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.pool-remaining{font-size:.85rem;font-weight:400;color:var(--primary-color, #6366f1)}.pool-summary.overspent .pool-remaining{color:#ef4444}.pool-bar{height:6px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:3px;overflow:hidden}.pool-bar-fill{height:100%;background:var(--primary-color, #6366f1);border-radius:3px;transition:width .3s ease}.pool-summary.overspent .pool-bar-fill{background:#ef4444}.pool-warning{margin-top:.5rem;font-size:.8rem;color:#ef4444;font-weight:400}.character-sheet-content.advancement-active .field-container{transition:background-color .15s ease}.validation-issues-panel{margin:0 1.5rem 1rem;padding:1rem 1.25rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.3);border-radius:8px}.validation-issues-panel h4{margin:0 0 .75rem;font-size:.95rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.validation-issue{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;font-size:.85rem;border-bottom:1px solid var(--border-color, #333)}.validation-issue:last-child{border-bottom:none;padding-bottom:0}.validation-issue.error{color:#ef4444}.validation-issue.warning{color:#f59e0b}.issue-icon{flex-shrink:0;font-size:.9rem}.issue-message{flex:1}.field-container.has-error .field-input,.field-container.has-error input,.field-container.has-error select,.field-container.has-error textarea{border-color:#ef4444}.field-container.has-warning .field-input,.field-container.has-warning input,.field-container.has-warning select,.field-container.has-warning textarea{border-color:#f59e0b}.field-container.is-locked{opacity:.6;pointer-events:none}.field-lock-message{margin-top:.25rem;font-size:.75rem;color:var(--text-secondary, #a0a0a0);font-style:normal}.character-sheet-renderer .action-icon.visibility-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;opacity:.5;transition:all .2s ease;display:inline-flex;align-items:center}.character-sheet-renderer .action-icon.visibility-icon:hover{opacity:1;transform:scale(1.2)}.character-sheet-renderer .action-icon.visibility-icon.active{opacity:.9}.sheet-section.section-revealed{border:1px dashed rgba(205,67,255,.15);border-radius:8px}.class-select-step{display:flex;flex-direction:column;gap:1rem}.class-select-prompt{font-family:var(--font-primary);font-size:1rem;color:#fffc;text-align:center;margin:0}.class-select-cards{display:flex;flex-direction:column;gap:.5rem}.class-select-card{display:flex;flex-direction:column;gap:.35rem;padding:.8rem 1rem;background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;color:#ffffffe6;font-family:inherit;font-size:inherit}.class-select-card:hover:not(.disabled){background:#0000008c;border-color:#cd43ff59}.class-select-card.selected{background:#cd43ff1f;border-color:#cd43ff99;box-shadow:0 0 12px #cd43ff33}.class-select-card.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.class-select-card-name{font-family:var(--font-primary);font-size:1.05rem;font-weight:400;letter-spacing:.3px}.class-select-card-info{font-size:.85rem;color:#fff9;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.class-select-new{color:#cd43ffcc}.class-select-locked{color:#ff6464b3}.class-select-prereq-badge{font-size:.75rem;padding:.15rem .5rem;border-radius:4px;font-weight:500}.class-select-prereq-badge.met{background:#50c87826;color:#50c878e6;border:1px solid rgba(80,200,120,.3)}.levelup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.levelup-wizard{display:flex;flex-direction:column;width:90%;max-width:640px;max-height:85vh;background:#000000eb;border:1px solid rgba(205,67,255,.3);border-radius:12px;overflow:hidden}.levelup-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#0000004d;border-bottom:1px solid rgba(205,67,255,.2)}.levelup-title{font-size:1.1rem;font-weight:400;color:#cd43ff;margin:0}.levelup-level-name{font-size:.85rem;color:var(--text-secondary, #a0a0a0)}.levelup-header .modal-close-btn{margin-left:auto}.levelup-auto-grants{padding:.75rem 1.25rem;background:#34d39914;border-bottom:1px solid rgba(52,211,153,.2)}.levelup-auto-grants-label{font-size:.8rem;font-weight:400;color:#34d399;text-transform:uppercase;letter-spacing:.5px}.levelup-auto-grants-list{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}.levelup-auto-grant-item{font-size:.8rem;color:var(--text-primary, #e0e0e0);padding:.15rem .5rem;background:#34d3991a;border:1px solid rgba(52,211,153,.2);border-radius:4px}.levelup-step-progress{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;border-bottom:1px solid rgba(205,67,255,.1)}.levelup-step-indicator{font-size:.8rem;color:var(--text-secondary, #a0a0a0)}.levelup-step-dots{display:flex;gap:.35rem}.levelup-step-dot{width:10px;height:10px;border-radius:50%;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);transition:all .2s ease}.levelup-step-dot.active{background:#cd43ff;box-shadow:0 0 8px #cd43ff66}.levelup-step-dot.completed{background:#34d399;border-color:#34d39980}.levelup-step-content{flex:1;overflow-y:auto;padding:1.25rem}.levelup-step-title{font-size:1rem;font-weight:400;color:var(--text-primary, #e0e0e0);margin:0 0 .5rem}.levelup-step-description{font-size:.85rem;color:var(--text-secondary, #a0a0a0);margin:0 0 1rem}.levelup-no-steps{text-align:center;padding:2rem;color:var(--text-secondary, #a0a0a0)}.levelup-navigation{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-top:1px solid rgba(205,67,255,.2);background:#0000004d}.levelup-nav-right{display:flex;gap:.5rem}.roll-step-view{display:flex;flex-direction:column;gap:1rem}.roll-step-target{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:6px}.roll-step-field-label{font-size:.85rem;color:var(--text-primary, #e0e0e0);font-weight:500}.roll-step-current{font-size:.8rem;color:var(--text-secondary, #a0a0a0)}.roll-step-dice-area{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem}.roll-step-expression{font-size:1.5rem;font-weight:400;color:#cd43ff}.roll-step-bonus-formula{font-size:.9rem;font-weight:400;color:var(--text-secondary, #a0a0a0)}.roll-step-result{display:flex;flex-direction:column;align-items:center;gap:.75rem}.roll-step-result-display{display:flex;align-items:baseline;gap:.35rem;font-size:1.5rem}.roll-step-result-dice{font-weight:400;color:var(--text-primary, #e0e0e0)}.roll-step-result-plus,.roll-step-result-equals{color:var(--text-secondary, #a0a0a0);font-weight:400}.roll-step-result-bonus{font-weight:400;color:#34d399}.roll-step-result-total{font-weight:400;font-size:1.8rem;color:#cd43ff}.roll-step-minimum-note{font-size:.75rem;color:var(--text-secondary, #a0a0a0);font-style:normal}.allocate-step-view{display:flex;flex-direction:column;gap:1rem}.allocate-step-budget{display:flex;align-items:center;gap:1rem;padding:.5rem .75rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:6px}.allocate-step-budget-label{font-size:.85rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.allocate-step-remaining{font-size:.85rem;font-weight:400;color:#cd43ff;margin-left:auto}.allocate-step-remaining.complete{color:#34d399}.allocate-step-max-hint{font-size:.75rem;color:var(--text-secondary, #a0a0a0)}.allocate-step-fields{display:flex;flex-direction:column;gap:.5rem}.allocate-step-row{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:#0000004d;border:1px solid rgba(205,67,255,.1);border-radius:6px}.allocate-step-field-name{font-size:.9rem;color:var(--text-primary, #e0e0e0);min-width:120px}.allocate-step-field-value{font-size:.9rem;font-weight:400;color:var(--text-primary, #e0e0e0);min-width:60px}.allocate-step-field-delta{color:#34d399;font-weight:500}.allocate-step-controls{display:flex;gap:.35rem;margin-left:auto}.allocate-step-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid rgba(205,67,255,.4);border-radius:4px;background:#00000080;color:#cd43ff;font-size:1rem;font-weight:400;cursor:pointer;transition:all .15s ease;padding:0}.allocate-step-btn:hover:not(:disabled){background:#cd43ff26;border-color:#cd43ff99}.allocate-step-btn:disabled{opacity:.3;cursor:not-allowed}.allocate-step-btn--plus:not(:disabled){color:#34d399;border-color:#34d39966}.allocate-step-btn--plus:hover:not(:disabled){background:#34d39926;border-color:#34d39999}.select-step-view{display:flex;flex-direction:column;gap:.75rem}.select-step-header{display:flex;justify-content:space-between;align-items:center}.select-step-count{font-size:.85rem;font-weight:400;color:var(--text-primary, #e0e0e0)}.select-step-selected{font-size:.8rem;color:#cd43ff}.select-step-options{display:flex;flex-direction:column;gap:.5rem}.select-step-option{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left;color:var(--text-primary, #e0e0e0);font-family:inherit;font-size:inherit;width:100%}.select-step-option:hover:not(:disabled){border-color:#cd43ff66;background:#cd43ff0d}.select-step-option.selected{border-color:#34d39980;background:#34d39914}.select-step-option.disabled{opacity:.4;cursor:not-allowed}.select-step-option-check{width:20px;height:20px;border:1px solid rgba(205,67,255,.3);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#34d399;flex-shrink:0;margin-top:.1rem}.select-step-option.selected .select-step-option-check{border-color:#34d39980;background:#34d39926}.select-step-option-content{display:flex;flex-direction:column;gap:.2rem;min-width:0}.select-step-option-name{font-size:.9rem;font-weight:400}.select-step-option-desc{font-size:.8rem;color:var(--text-secondary, #a0a0a0);line-height:1.4}.select-step-option-effects{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.25rem}.select-step-effect{font-size:.75rem;color:#34d399;padding:.1rem .4rem;background:#34d39914;border:1px solid rgba(52,211,153,.2);border-radius:3px}.class-level-manager-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1100}.class-level-manager{background:#0f0a19fa;border:1px solid rgba(205,67,255,.25);border-radius:12px;width:90%;max-width:550px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080,0 0 20px #cd43ff1a}.class-level-manager-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(205,67,255,.15)}.class-level-manager-header h2{font-family:var(--font-primary);font-size:1.1rem;color:#fffffff2;margin:0}.class-level-manager-body{padding:1rem 1.25rem;overflow-y:auto;flex:1}.class-level-manager-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:.75rem 1.25rem;border-top:1px solid rgba(205,67,255,.15)}.class-level-summary{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.class-level-summary.compact{flex-direction:row;align-items:center;gap:.5rem;margin-bottom:0}.class-level-chips{display:flex;flex-wrap:wrap;gap:.4rem}.class-level-chip{font-family:var(--font-primary);font-size:.85rem;font-weight:400;padding:.2rem .6rem;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:12px;color:#cd43fff2;white-space:nowrap}.class-level-total{font-size:.8rem;color:#ffffff80}.class-level-summary.empty{color:#fff6;font-style:normal;font-size:.85rem}.level-history-table{margin-top:.5rem}.level-history-label{font-family:var(--font-primary);font-size:.9rem;color:#fffc;margin:0 0 .5rem}.level-history-empty{color:#fff6;font-style:normal;font-size:.85rem}.level-history-rows{display:flex;flex-direction:column;gap:2px}.level-history-header-row{display:grid;grid-template-columns:36px 1fr 90px 36px;gap:.5rem;padding:.3rem .5rem;font-size:.75rem;color:#ffffff73;text-transform:uppercase;letter-spacing:.5px}.level-history-row{display:grid;grid-template-columns:36px 1fr 90px 36px;gap:.5rem;padding:.35rem .5rem;background:#0000004d;border-radius:4px;align-items:center;transition:background .15s ease}.level-history-row:hover{background:#00000073}.level-history-num{font-size:.85rem;color:#fff9;text-align:center}.level-history-class-select{background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#ffffffe6;padding:.25rem .4rem;font-size:.85rem;cursor:pointer}.level-history-date{font-size:.8rem;color:#ffffff73}.level-history-remove{background:none;border:none;color:#ff646480;cursor:pointer;font-size:1rem;padding:.15rem;border-radius:4px;transition:all .15s ease;text-align:center}.level-history-remove:hover{color:#ff6464e6;background:#ff64641a}.level-history-remove.confirm{color:#ff6464f2;background:#ff646426;font-size:.7rem;font-weight:400}.level-history-add-row{display:flex;gap:.5rem;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(205,67,255,.1)}.level-history-add-row .level-history-class-select{flex:1}.character-sheet-modal{background:transparent;border:2px solid rgba(205,67,255,.4);border-radius:16px;box-shadow:0 8px 32px #000c,0 0 60px #cd43ff4d;width:95vw;height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.character-sheet-modal .modal-header{display:flex;justify-content:center;align-items:center;padding:1rem 2rem;border-bottom:2px solid rgba(205,67,255,.3);background:#cd43ff0d;position:relative}.character-sheet-modal .modal-header .modal-close-button{position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.character-sheet-modal .modal-header .trash-icon{position:absolute;right:3.5rem;top:50%;transform:translateY(-50%)}.character-sheet-modal .modal-header .header-field-dropdown{position:absolute;right:6rem;top:50%;transform:translateY(-50%);max-width:200px}.character-sheet-modal .modal-header h2{margin:0;font-family:var(--font-primary);font-size:1.8rem;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5);text-align:center}.modal-body{flex:1;overflow-y:auto;padding:1rem;background:#0000004d}.modal-body:has(.creation-wizard){padding:0;overflow:hidden}.modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1.5rem}.modal-loading p{color:#fffc;font-size:1.2rem}.modal-body::-webkit-scrollbar{width:12px}.modal-body::-webkit-scrollbar-track{background:#0000004d;border-radius:6px}.modal-body::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:6px}.modal-body::-webkit-scrollbar-thumb:hover{background:#cd43ff99}.sheet-selection{display:flex;flex-direction:column;align-items:center;gap:2rem;padding:2rem;min-height:400px}.sheet-selection h3{margin:0;font-family:var(--font-primary);font-size:1.6rem;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5);text-align:center}.sheet-selection .sheets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;width:100%;max-width:1200px}@media (max-width: 768px){.character-sheet-modal{width:100vw;height:100vh;border-radius:0;max-width:100%}.character-sheet-modal .modal-header{padding:.75rem 1rem}.character-sheet-modal .modal-header h2{font-size:1.4rem}.modal-body{padding:1rem}.sheet-selection .sheets-grid{grid-template-columns:1fr}}.advancement-hook{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:0 1.5rem .75rem}.level-progress-hint{font-size:.8rem;color:var(--text-secondary, #a0a0a0);margin-right:auto}.multiclass-summary-inline{display:flex;align-items:center;gap:.5rem;margin-right:auto;padding:0 1.5rem .5rem}.multiclass-edit-btn{background:none;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#cd43ffb3;cursor:pointer;font-size:.9rem;padding:.15rem .4rem;transition:all .15s ease}.multiclass-edit-btn:hover{background:#cd43ff1a;border-color:#cd43ff66;color:#cd43fff2}.characters-tab{width:100%;animation:fadeIn .3s ease}.characters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;padding:20px 10px 10px}.empty-characters{display:flex;align-items:center;justify-content:center;min-height:400px;text-align:center}.empty-content p{color:#fff9;font-size:14px}.ai-tab{width:100%;margin:0;padding:0 2rem 40px}.ai-tab-toggle{display:table;margin:0 auto 30px}.ai-tab .content-filter{margin-bottom:25px}.ai-content{display:flex;flex-direction:column;gap:30px;align-items:center}.subscription-card,.installation-card,.familiar-card,.models-card{width:100%;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card-header{padding:20px 30px;background:linear-gradient(135deg,#cd43ff26,#7b1fa21a);border-bottom:1px solid rgba(205,67,255,.2);display:flex;justify-content:center;align-items:center;gap:12px;position:relative;box-sizing:border-box}.ai-tab .card-header .status-badge{position:absolute;right:30px;top:50%;transform:translateY(-50%)}.card-header h3{margin:0;font-size:22px;font-family:var(--font-primary);color:#fff;letter-spacing:1px;text-align:center;text-shadow:-.5px -.5px 0 #000000,.5px -.5px 0 #000000,-.5px .5px 0 #000000,.5px .5px 0 #000000}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-family:var(--font-primary);letter-spacing:.5px;text-transform:uppercase;font-weight:400}.status-badge.active{background:#4caf5033;color:#4caf50;border:1px solid rgba(76,175,80,.4)}.status-badge.pending{background:#ff434333;color:#ff4343;border:1px solid rgba(255,67,67,.4)}.success-text{color:#cd43ff!important}.card-content{padding:30px;display:flex;flex-direction:column;align-items:center;gap:25px;text-align:center}.main-text{font-size:18px;line-height:1.8;color:#ffffffe6;max-width:600px;font-family:var(--font-primary);letter-spacing:.5px}.familiar-intro{font-size:17px;line-height:1.8;color:#ffffffd9;max-width:600px;font-family:var(--font-primary);letter-spacing:.5px}.ai-tab .fantamaster-button{min-width:280px}.user-type-section{margin-top:30px;width:100%;max-width:600px}.user-type-title{font-family:var(--font-primary);color:#cd43ff;font-size:18px;font-weight:500;letter-spacing:.5px;margin:0 0 20px;text-align:center}.user-type-toggle{display:table;margin:0 auto 20px}.user-type-section .content-filter{margin-bottom:25px}.usage-description{padding:20px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;transition:all .3s ease}.description-content h5{font-family:var(--font-primary);color:#cd43ff;font-size:16px;font-weight:400;letter-spacing:.5px;margin:0 0 10px}.description-content p{font-family:var(--font-primary);color:#fffc;font-size:14px;line-height:1.6;letter-spacing:.3px;margin:0}@media (max-width: 768px){.ai-tab{padding:30px 15px}.main-text{font-size:16px}.familiar-intro{font-size:15px}.ai-tab .fantamaster-button{width:100%;max-width:300px;min-width:unset}}.familiar-tab{width:100%;max-width:700px;margin:0 auto;padding:40px 20px}.familiar-form{background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:16px;padding:40px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0006}.form-header{margin-bottom:40px;text-align:center}.familiar-description{font-size:16px;line-height:1.8;color:#ffffffe6;font-family:var(--font-primary);max-width:600px;margin:0 auto}.form-section{margin-bottom:35px}.form-label{display:block;margin-bottom:12px;font-size:15px;color:#cd43ff;font-family:var(--font-primary);letter-spacing:.5px;font-weight:500}.familiar-input{width:100%;padding:14px 18px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-size:15px;font-family:var(--font-primary);transition:all .3s ease;outline:none}.familiar-input:focus{border-color:#cd43ff99;background:#0009;box-shadow:0 0 20px #cd43ff33}.familiar-input::placeholder{color:#fff6;font-style:normal}.familiar-textarea{width:100%;padding:14px 18px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-size:14px;font-family:var(--font-primary);line-height:1.6;transition:all .3s ease;outline:none;resize:vertical;min-height:120px;max-height:400px}.familiar-textarea:focus{border-color:#cd43ff99;background:#0009;box-shadow:0 0 20px #cd43ff33}.familiar-textarea::placeholder{color:#fff6;font-style:normal}.form-actions{display:flex!important;justify-content:center!important;align-items:center!important;flex-direction:column!important;gap:20px;margin-top:40px;width:100%}.summon-familiar-btn{min-width:200px;padding:14px 32px;font-size:16px;font-family:var(--font-primary);letter-spacing:1.5px;text-transform:uppercase;background:linear-gradient(135deg,#cd43ff,#7b1fa2);border:none;transition:all .3s ease;position:relative;overflow:hidden;margin:0 auto!important}.summon-familiar-btn:hover:not(:disabled){background:linear-gradient(135deg,#e554ff,#8e24aa);transform:translateY(-2px);box-shadow:0 10px 30px #cd43ff80}.summon-familiar-btn:disabled{opacity:.5;cursor:not-allowed;background:linear-gradient(135deg,#cd43ff4d,#7b1fa24d)}.summon-familiar-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff1a;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.summon-familiar-btn:hover:before{width:300px;height:300px}.debug-mode-toggle{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:14px;color:#c4b5fd;font-family:var(--font-primary)}.debug-mode-toggle:hover{background:#8b5cf633;border-color:#8b5cf680}.debug-mode-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#8b5cf6}.debug-mode-toggle span{-webkit-user-select:none;user-select:none}.launch-status{margin-top:20px;padding:15px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;text-align:center}.launch-status p{color:#cd43ff;font-family:var(--font-primary);font-size:14px;margin:0;opacity:.9}@media (max-width: 768px){.familiar-tab{padding:30px 15px}.familiar-form{padding:30px 20px}.familiar-description,.form-label{font-size:14px}.familiar-input,.familiar-textarea{font-size:14px;padding:12px 16px}.summon-familiar-btn{width:100%;max-width:300px}.debug-mode-toggle{font-size:13px;padding:6px 12px}}.tool-card{width:100%;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;overflow:hidden;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;min-height:400px;display:flex;flex-direction:column;cursor:pointer}.tool-card:hover{transform:translateY(-5px);border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33}.tool-card .action-icon.edit-icon{position:absolute;top:12px;right:12px;z-index:10;padding:4px;background:transparent;border:none;color:#cd43ff;font-size:16px;cursor:pointer;opacity:.7;transition:all .2s ease}.tool-card .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.tool-card-image{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#cd43ff1a,#8a2be21a);overflow:hidden}.tool-card-image:hover .tool-card-image-overlay{opacity:1}.tool-card-icon-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.tool-card-initials{font-size:32px;font-weight:400;font-family:var(--font-primary);color:#cd43ffe6;letter-spacing:2px;text-shadow:0 2px 4px rgba(0,0,0,.5)}.tool-card-content{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2}.tool-card-header{padding:12px 20px;background:linear-gradient(135deg,#cd43ff1a,#7b1fa21a);border-bottom:1px solid rgba(205,67,255,.2)}.tool-name-row{display:flex;align-items:center;gap:8px}.tool-card-name{margin:0;font-size:22px;font-weight:400;font-family:var(--font-primary);color:#fffffff2;letter-spacing:.5px;line-height:1.3}.tool-card-body{padding:16px 20px;background:#0006}.tool-card-description{margin:0;font-size:14px;line-height:1.6;color:#ffffffbf}.tool-card-info-button{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#cd43ffcc;cursor:pointer;transition:all .2s;padding:0}.tool-card-info-button:hover{color:#cd43ff;transform:scale(1.15)}.tool-card-info-button svg{width:18px;height:18px}@media (max-width: 768px){.tool-card{min-height:350px}.tool-card-image{height:200px}.tool-card-initials{font-size:24px}.tool-card-name{font-size:20px}.tool-card-description{font-size:13px}.tool-card-content{padding:16px}.tool-card .action-icon.edit-icon{top:8px;right:8px;font-size:14px}}.tool-info-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;padding:40px;animation:fadeIn .2s ease}.tool-info-modal{position:relative;background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:16px;width:100%;max-width:900px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000080,0 0 40px #cd43ff1a;animation:slideUp .3s ease}.tool-info-modal-bg{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center top;opacity:.3}.tool-info-modal-content{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.tool-info-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 16px}.tool-info-modal-title{margin:0;font-family:var(--font-primary);font-size:32px;font-weight:400;color:#cd43ff;letter-spacing:1px;text-shadow:0 2px 10px rgba(205,67,255,.3)}.tool-info-modal-header-actions{display:flex;align-items:center;gap:8px}.tool-info-modal-header-actions .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;font-size:16px;cursor:pointer;opacity:.7;transition:all .2s ease}.tool-info-modal-header-actions .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.tool-info-modal-body{flex:1;min-height:0;overflow-y:auto;padding:0 28px 24px;color:#ffffffd9;font-size:15px;line-height:1.7}.tool-info-modal-body p{margin:0 0 16px}.tool-info-modal-body p:last-child{margin-bottom:0}.tool-info-modal-body strong{color:#cd43ff;font-weight:400}.tool-info-section{display:flex;gap:20px;margin-bottom:16px;align-items:flex-start}.tool-info-section-title{flex-shrink:0;width:180px;color:#cd43ff;font-weight:400;font-size:14px;line-height:1.6}.tool-info-section-content{flex:1}.tool-info-section-content .tool-info-list{margin:0;padding-left:18px}.tool-info-section-content .tool-info-list li{margin-bottom:6px;line-height:1.6}.tool-info-section-content .tool-info-list li:last-child{margin-bottom:0}.tool-info-list{margin:0 0 16px;padding-left:24px}.tool-info-list li{margin-bottom:8px;color:#fffc}.tool-info-list li strong{color:#cd43ff}.tool-info-edit-textarea{width:100%;height:100%;min-height:300px;background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:16px;color:#ffffffe6;font-size:14px;font-family:Consolas,Monaco,monospace;line-height:1.6;resize:none}.tool-info-edit-textarea:focus{outline:none;border-color:#cd43ff99;box-shadow:0 0 10px #cd43ff33}.tool-info-edit-textarea::placeholder{color:#fff6}.tool-info-modal-footer{display:flex;justify-content:center;gap:12px;padding:16px 28px 24px}.tool-info-modal-body::-webkit-scrollbar{width:8px}.tool-info-modal-body::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.tool-info-modal-body::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.tool-info-modal-body::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.tool-edit-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;padding:40px;animation:fadeIn .2s ease}.tool-edit-modal{position:relative;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:16px;width:100%;max-width:520px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000080,0 0 40px #cd43ff1a;animation:slideUp .3s ease}.tool-edit-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 16px;border-bottom:1px solid rgba(205,67,255,.2)}.tool-edit-modal-title{margin:0;font-family:var(--font-primary);font-size:24px;font-weight:400;color:#cd43ff;letter-spacing:1px}.tool-edit-modal-body{padding:24px 28px;display:flex;flex-direction:column;gap:20px}.tool-edit-image-section{display:flex;flex-direction:column;align-items:center;gap:12px}.tool-edit-image-preview{width:100%;aspect-ratio:16 / 9;border-radius:8px;border:1px solid rgba(205,67,255,.2);background:linear-gradient(135deg,#cd43ff1a,#8a2be21a);display:flex;align-items:center;justify-content:center;overflow:hidden}.tool-edit-no-image{color:#fff6;font-size:14px;font-family:var(--font-primary);letter-spacing:.5px}.tool-edit-field{display:flex;flex-direction:column;gap:6px}.tool-edit-label{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#cd43ff;letter-spacing:.5px}.tool-edit-input,.tool-edit-textarea{width:100%;padding:10px 14px;background:#cd43ff14;border:1px solid rgba(205,67,255,.25);border-radius:8px;color:#ffffffe6;font-family:Lato,sans-serif;font-size:14px;line-height:1.5;transition:all .2s;box-sizing:border-box}.tool-edit-input:focus,.tool-edit-textarea:focus{outline:none;border-color:#cd43ff99;background:#cd43ff1f;box-shadow:0 0 10px #cd43ff26}.tool-edit-input::placeholder,.tool-edit-textarea::placeholder{color:#ffffff4d}.tool-edit-textarea{resize:vertical;min-height:60px}.tool-edit-modal-footer{display:flex;justify-content:center;gap:12px;padding:16px 28px 24px;border-top:1px solid rgba(205,67,255,.15)}.tools-tab{width:100%;height:100%}.combined-card{display:inline-flex;flex-direction:column;align-items:center;margin:.5rem auto;padding:24px 40px;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:fit-content;max-width:95%;position:relative;overflow:visible}.combined-card:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#cd43ff,#b035e8,#9c27d4,#7b1fa2,#cd43ff,#b035e8,#9c27d4,#7b1fa2);border-radius:12px;opacity:0;z-index:-1;transition:opacity .3s ease;background-size:400% 400%;animation:agentsCardGradientShift 10s ease infinite}.combined-card:hover:after{opacity:.3}@keyframes agentsCardGradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.combined-card .card-content{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:3rem;width:auto;flex-wrap:nowrap}.combined-card .agents-column{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:0 0 auto}.combined-card .agent-tile{display:flex;flex-direction:column;align-items:center;width:100px}.combined-card .agent-tile-image{width:80px;height:80px;border:2px solid rgba(205,67,255,.2);border-radius:.75rem;box-shadow:0 6px 12px #0006;transition:all .3s ease;object-fit:cover;display:block}.combined-card .agent-tile-image:hover{transform:translateY(-3px);border-color:#cd43ff66;box-shadow:0 10px 20px #cd43ff33}.combined-card .agent-tile-label{color:#cd43ffcc;font-size:.7rem;font-weight:300;line-height:1.3;text-align:center;margin-top:.5rem;white-space:nowrap}.combined-card .aisatnaf-center{display:flex;flex-direction:column;align-items:center;padding:0 2rem;flex:0 0 auto;min-width:250px}.combined-card .aisatnaf-content{display:flex;flex-direction:column;gap:.3rem;justify-content:space-between;min-height:180px;position:relative}.combined-card .aisatnaf-content:after{content:"";position:absolute;left:38px;top:0;bottom:0;width:1px;background:#cd43ff4d}.combined-card .acronym-row{display:flex;align-items:center;justify-content:flex-start;padding:.4rem 0;border-radius:.5rem;transition:all .3s ease;cursor:default;position:relative;width:100%}.combined-card .acronym-row:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:.5rem;background:#cd43ff00;box-shadow:0 0 #cd43ff00;transition:all .3s ease}.combined-card .acronym-row:hover:before{background:#cd43ff1a;box-shadow:0 0 20px #cd43ff66,inset 0 0 15px #cd43ff26}.combined-card .acronym-row:hover .acronym-letter,.combined-card .acronym-row:hover .acronym-word{color:#cd43ff;text-shadow:0 0 10px rgba(205,67,255,.8),0 0 20px rgba(205,67,255,.4);transform:scale(1.05)}.combined-card .acronym-letter{color:#cd43ff;font-size:1.2rem;font-weight:400;width:1.8rem;text-align:center;transition:all .3s ease;position:relative;z-index:1;margin-right:1.8rem}.combined-card .acronym-divider{display:none;z-index:1}.combined-card .acronym-word{color:#cd43ffe6;font-size:1.15rem;font-weight:300;transition:all .3s ease;position:relative;z-index:1}.combined-card .agents-title{color:#cd43ff;font-size:1.3rem;font-weight:300;margin-bottom:.5rem;text-shadow:1px 1px 2px rgba(205,67,255,.25);text-align:center;width:100%}.submit-question-modal{background:transparent;border:2px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:600px;box-shadow:0 0 40px #cd43ff4d,0 20px 60px #00000080;animation:slideUp .3s ease}.modal-header{padding:30px;border-bottom:1px solid rgba(205,67,255,.2);text-align:center}.modal-header h2{margin:0;font-family:var(--font-primary);font-size:28px;color:#cd43ff;letter-spacing:1px;text-shadow:-1px -1px 0 #000000,1px -1px 0 #000000,-1px 1px 0 #000000,1px 1px 0 #000000,0 0 20px rgba(205,67,255,.5)}.modal-content{padding:30px}.modal-description{font-family:var(--font-primary);font-size:16px;color:#fffc;line-height:1.6;text-align:center;margin:0 0 25px;letter-spacing:.5px}.question-textarea{width:100%;min-height:150px;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-family:Crimson Text,serif;font-size:16px;padding:15px;resize:vertical;transition:all .3s ease}.question-textarea:focus{outline:none;border-color:#cd43ff99;box-shadow:0 0 15px #cd43ff33;background:#000c}.question-textarea::placeholder{color:#fff6;font-style:normal}.modal-footer{padding:20px 30px 30px;display:flex;justify-content:center;gap:20px}.modal-footer button{min-width:120px}@media (max-width: 768px){.submit-question-modal{width:95%;margin:20px}.modal-header h2{font-size:22px}.modal-description{font-size:14px}.modal-footer{flex-direction:column;align-items:center}.modal-footer button{width:100%;max-width:200px}}.answer-question-modal{background:transparent;border:2px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:700px;max-height:80vh;overflow-y:auto;box-shadow:0 0 40px #cd43ff4d,0 20px 60px #00000080;animation:slideUp .3s ease}.question-display{margin-bottom:25px}.question-label,.answer-label{display:block;font-family:var(--font-primary);font-size:14px;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.question-text{background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:15px;color:#ffffffe6;font-size:16px;line-height:1.6;margin:0;font-family:Crimson Text,serif}.answer-section{margin-top:20px}.answer-textarea{width:100%;min-height:180px;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-family:Crimson Text,serif;font-size:16px;padding:15px;resize:vertical;transition:all .3s ease}.answer-textarea:focus{outline:none;border-color:#cd43ff99;box-shadow:0 0 15px #cd43ff33;background:#000c}.answer-textarea::placeholder{color:#fff6;font-style:normal}.answer-textarea:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.answer-question-modal{width:95%;max-height:70vh}.answer-textarea{min-height:120px}}.prompt-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.prompt-dialog{background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:12px;min-width:450px;max-width:550px;box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideIn .3s ease-out;overflow:hidden}.prompt-dialog-header{padding:20px 24px;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.2)}.prompt-dialog-header h2{margin:0;font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.5)}.prompt-dialog-content{padding:24px;background:#cd43ff05}.prompt-message{margin:0 0 16px;color:#ffffffd9;font-size:.95rem;line-height:1.5}.prompt-input,.prompt-textarea{width:100%;padding:12px 16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s ease;box-sizing:border-box;outline:none}.prompt-textarea{resize:vertical;min-height:150px;line-height:1.6}.prompt-input::placeholder,.prompt-textarea::placeholder{color:#fff6}.prompt-input:focus,.prompt-textarea:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.prompt-dialog-actions{padding:16px 24px;background:#cd43ff0d;border-top:1px solid rgba(205,67,255,.2);display:flex;gap:12px;justify-content:flex-end}.prompt-textarea::-webkit-scrollbar{width:8px}.prompt-textarea::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.prompt-textarea::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.prompt-textarea::-webkit-scrollbar-thumb:hover{background:#cd43ff80}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.faq-tab{width:100%;animation:fadeIn .3s ease}.faq-tab-toggle{display:table;margin:0 auto}.faq-header{margin-top:20px;margin-bottom:30px}.faq-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:20px}.faq-tab-button{padding:10px 30px;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffb3;font-size:16px;font-weight:400;cursor:pointer;transition:all .3s ease}.faq-tab-button:hover{background:#000c;border-color:#cd43ff80;color:#cd43ffe6}.faq-tab-button.active{background:#cd43ff33;border-color:#cd43ff99;color:#cd43ff;box-shadow:0 0 20px #cd43ff4d}.faq-search{position:relative;max-width:500px;margin:0 auto 30px}.faq-search-input{width:100%;padding:12px 45px 12px 20px;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-size:16px;transition:all .3s ease}.faq-search-input:focus{outline:none;border-color:#cd43ff80;background:#000c;box-shadow:0 0 20px #cd43ff33}.faq-search-input::placeholder{color:#cd43ff80}.search-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#cd43ff80;pointer-events:none}.faq-content{width:100%;margin:0;padding:0 2rem}.faq-category{margin-bottom:30px}.category-title{font-family:var(--font-primary);font-size:20px;color:#cd43ff;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(205,67,255,.2);letter-spacing:.5px}.faq-list{display:flex;flex-direction:column;gap:10px}.faq-item{background:#0009;border:1px solid rgba(205,67,255,.2);border-radius:8px;overflow:hidden;transition:all .3s ease}.faq-item:hover{border-color:#cd43ff66;box-shadow:0 5px 15px #cd43ff33}.faq-question{width:100%;padding:15px 20px;background:transparent;border:none;color:#ffffffe6;font-size:16px;font-weight:400;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.faq-question:hover{background:#cd43ff0d}.faq-question.expanded{color:#cd43ff;background:#cd43ff1a}.expand-icon{transition:transform .3s ease;color:#cd43ff99}.faq-question.expanded .expand-icon{transform:rotate(180deg);color:#cd43ff}.faq-answer{position:relative;padding:15px 20px 20px;animation:slideDown .3s ease}.faq-answer p{margin:0;color:#ffffffb3;font-size:15px;line-height:1.6}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.faq-footer{margin-top:50px;padding:30px;background:#0009;border:1px solid rgba(205,67,255,.2);border-radius:12px;text-align:center}.help-section h3{font-family:var(--font-primary);font-size:20px;color:#cd43ff;margin-bottom:10px}.help-section p{color:#ffffffb3;font-size:16px;margin-bottom:20px}.empty-faq{display:flex;align-items:center;justify-content:center;min-height:400px;text-align:center}.empty-content h3{font-family:var(--font-primary);font-size:24px;color:#cd43ff;margin-bottom:10px}.empty-content p{color:#fff9;font-size:16px}.submitted-faq-list{display:flex;flex-direction:column;gap:15px}.submitted-faq-item{background:#0009;border:1px solid rgba(205,67,255,.2);border-radius:8px;overflow:hidden;transition:all .3s ease}.submitted-faq-item:hover{border-color:#cd43ff66;box-shadow:0 5px 15px #cd43ff33}.question-header{flex:1;display:flex;flex-direction:column;gap:8px}.question-text{font-size:16px;font-weight:400}.question-meta{display:flex;gap:10px;align-items:center;font-size:14px}.submitted-by{color:#cd43ff99}.category-badge{background:#cd43ff33;color:#cd43ffe6;padding:2px 8px;border-radius:4px;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.faq-expanded-content{padding:20px;border-top:1px solid rgba(205,67,255,.2);animation:slideDown .3s ease}.no-answers{text-align:center;padding:20px}.no-answers p{color:#fff9;margin-bottom:15px;font-style:normal}.answer-btn{min-width:160px}.answers-section{display:flex;flex-direction:column;gap:15px}.answers-title{font-family:var(--font-primary);font-size:16px;color:#cd43ff;margin:0 0 15px;padding-bottom:10px;border-bottom:1px solid rgba(205,67,255,.2)}.answer-item{background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:6px;padding:15px;transition:all .3s ease}.answer-item:hover{background:#00000080;border-color:#cd43ff40}.answer-content{margin-bottom:12px}.answer-content p{color:#ffffffd9;line-height:1.6;margin:0}.answer-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid rgba(205,67,255,.1)}.answer-meta{display:flex;gap:15px;align-items:center;font-size:14px}.answered-by{color:#cd43ffb3;display:flex;align-items:center;gap:5px}.official-badge{background:#4caf5033;color:#4caf50;padding:2px 6px;border-radius:3px;font-size:11px;font-weight:400;text-transform:uppercase}.answer-date{color:#ffffff80;font-size:13px}.vote-controls{display:flex;gap:10px}.vote-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#fff9;font-size:14px;cursor:pointer;transition:all .3s ease}.vote-btn:hover{background:#cd43ff1a;border-color:#cd43ff66;color:#fffc}.vote-btn.upvote.active{background:#4caf5033;border-color:#4caf50;color:#4caf50}.vote-btn.downvote.active{background:#f4433633;border-color:#f44336;color:#f44336}.vote-btn svg{width:16px;height:16px}.add-answer-btn{align-self:center;margin-top:10px}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px;color:#cd43ff99;font-size:16px;font-style:normal}.no-questions{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center}.no-questions p{color:#fff9;font-size:18px;margin:0}.dreamer-controls{display:flex;gap:8px;margin-left:12px}.dreamer-btn{padding:4px 8px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-size:14px;cursor:pointer;transition:all .2s ease}.dreamer-btn:hover{background:#cd43ff33;border-color:#cd43ff80;box-shadow:0 0 8px #cd43ff4d}.dreamer-btn.edit-btn:hover{background:#43cdff33;border-color:#43cdff80;color:#43cdff;box-shadow:0 0 8px #43cdff4d}.dreamer-btn.delete-btn:hover{background:#ff434333;border-color:#ff434380;color:#ff4343;box-shadow:0 0 8px #ff43434d}.faq-question-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.main-faq-edit-btn{padding:2px 6px;background:#cd43ff33;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;cursor:pointer;font-size:11px;font-weight:400;transition:all .2s;flex-shrink:0}.main-faq-edit-btn:hover{background:#cd43ff4d}.faq-answer-content{margin:0;padding-right:60px}.faq-answer-content p{margin:0}.main-faq-edit-btn.answer-edit{position:absolute;top:15px;right:44px}.published-faq-item{position:relative}.published-badge{display:inline-block;background:#4caf5026;color:#4caf50e6;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;margin-top:10px}.dreamer-btn.publish-btn{font-size:10px}.dreamer-btn.publish-btn:hover{background:#4caf5033;border-color:#4caf5080;color:#4caf50;box-shadow:0 0 8px #4caf504d}.dreamer-btn.publish-btn.published{background:#4caf5033;border-color:#4caf5066;color:#4caf50}.dreamer-btn.publish-btn.published:hover{background:#ff980033;border-color:#ff980080;color:#ff9800;box-shadow:0 0 8px #ff98004d}.published-indicator{display:inline-block;background:#4caf5026;color:#4caf50e6;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary);border:1px solid rgba(76,175,80,.3)}.published-order-input{width:40px;padding:2px 4px;background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-size:11px;font-weight:400;text-align:center;font-family:var(--font-primary);outline:none;transition:all .2s ease}.published-order-input:focus{border-color:#cd43ff99;background:#000000d9;box-shadow:0 0 0 2px #cd43ff33}.published-order-input::-webkit-outer-spin-button,.published-order-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.published-order-input[type=number]{-moz-appearance:textfield}.last-poster-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;flex-shrink:0}.last-poster-avatar-img{border-radius:50%;object-fit:cover}.last-poster-avatar-fallback{color:#cd43ff99;font-weight:500;line-height:1}.last-poster-avatar.dreamer-pulse{animation:avatarPulse 2s ease-in-out infinite}.forum-topic-list{display:flex;flex-direction:column;gap:16px;padding:16px;min-height:400px;flex:1}.forum-topic-list:has(.empty-state-container){justify-content:center;align-items:center}.forum-topic-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.forum-topics-grid{display:flex;flex-direction:column;gap:12px}.forum-topic-card{position:relative;background:#000c;border:.25px solid rgba(205,67,255,.2);border-radius:12px;padding:16px 20px;cursor:pointer;transition:all .3s ease}.forum-topic-card:hover{border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33;transform:translateY(-5px)}.forum-topic-card.pinned{border-left:3px solid #CD43FF}.forum-topic-card.locked{opacity:.8}.forum-topic-header{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.forum-topic-badges{display:flex;gap:8px}.forum-topic-title{color:#fffffff2;font-family:var(--font-primary);font-size:16px;font-weight:400;margin:0}.forum-topic-meta{display:flex;gap:16px;font-size:12px;font-family:var(--font-primary);margin-bottom:6px}.forum-topic-replies{color:#ffffff80}.forum-topic-date{color:#cd43ff80}.forum-topic-description{color:#ffffff80;font-family:var(--font-primary);font-size:13px;font-weight:400;line-height:1.4;margin:0}.forum-topic-actions{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(205,67,255,.1);opacity:0;transition:opacity .2s ease}.forum-topic-card:hover .forum-topic-actions{opacity:1}.forum-topic-list .section-label{color:#cd43ff;font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1px}@media (max-width: 768px){.forum-topic-list{padding:12px}.forum-topic-actions{opacity:1}}/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.find-replace-panel{position:absolute;top:100%;right:0;z-index:50;width:300px;padding:12px;background:#000000f2;border:1px solid rgba(205,67,255,.4);border-radius:8px;box-shadow:0 8px 24px #0009,0 0 12px #cd43ff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:8px}.find-replace-row{display:flex;gap:6px}.find-replace-input{flex:1;height:30px;padding:0 10px;font-size:13px;color:#ffffffe6;background:#00000080;border:.5px solid rgba(205,67,255,.3);border-radius:6px;outline:none;transition:all .2s ease}.find-replace-input:focus{border-color:#cd43ff99;box-shadow:0 0 0 2px #cd43ff1a}.find-replace-input::placeholder{color:#cd43ff66}.find-replace-message{font-size:11px;color:#cd43ff99;padding:0 2px}.find-replace-actions{display:flex;justify-content:space-between;margin-top:4px}.find-replace-cancel-btn,.find-replace-execute-btn{height:28px;padding:0 12px;font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:6px;cursor:pointer;transition:all .2s ease}.find-replace-cancel-btn{color:#ffffffb3;background:transparent;border:1px solid rgba(255,255,255,.2)}.find-replace-cancel-btn:hover{background:#ffffff1a;border-color:#fff6}.find-replace-execute-btn{color:#cd43ffe6;background:#cd43ff26;border:1px solid rgba(205,67,255,.4)}.find-replace-execute-btn:hover:not(:disabled){background:#cd43ff40;border-color:#cd43ff99;color:#cd43ff}.find-replace-execute-btn:disabled{opacity:.4;cursor:not-allowed}.toolbar-mode-controls{display:flex;align-items:center;gap:10px}.toolbar-mode-group{display:flex;align-items:center;gap:6px}.toolbar-mode-label{font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.8px;color:#cd43ff80;white-space:nowrap}.toolbar-mode-controls .toggle-group{align-items:center!important}.toolbar-mode-controls .toggle-container.small .toggle-option{display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important;height:22px!important;padding:0 10px!important;font-size:11px!important;line-height:1!important}.toolbar-mode-controls .toggle-label{line-height:1!important}.toolbar-mode-controls .toggle-container.small .toggle-option.active{border:1px solid rgba(205,67,255,.6);background:#cd43ff40}.rich-edit-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn .2s ease}.rich-edit-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:95%;max-width:1400px;max-height:85vh;background:#000000f2;border:1px solid rgba(205,67,255,.4);border-radius:16px;box-shadow:0 8px 32px #cd43ff4d;z-index:1001;display:flex;flex-direction:column;animation:slideIn .3s ease}.rich-edit-dialog-header{padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.3)}.rich-edit-dialog-title{margin:0;color:#cd43fff2;font-size:20px;font-weight:400}.rich-edit-dialog-body{padding:24px;flex:1;overflow-y:auto;min-height:0}.rich-edit-input-container{position:relative;width:100%}.rich-edit-custom-toolbar{background:#0009;border:1px solid rgba(205,67,255,.3);border-bottom:none;border-radius:8px 8px 0 0;padding:8px;display:flex;justify-content:space-between;align-items:center;gap:8px}.rich-edit-custom-toolbar .toolbar-left{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.rich-edit-custom-toolbar .toolbar-right{display:flex;gap:4px;align-items:center;flex:1}.rich-edit-custom-toolbar .toolbar-left button,.rich-edit-custom-toolbar .toolbar-left select{background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#cd43ffb3;cursor:pointer;transition:all .2s ease;padding:4px 6px;height:28px}.rich-edit-custom-toolbar .toolbar-left button:hover,.rich-edit-custom-toolbar .toolbar-left select:hover{background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff}.rich-edit-custom-toolbar .toolbar-left button.ql-active{background:#cd43ff4d;border-color:#cd43ffb3;color:#cd43ff}.rich-edit-custom-toolbar .toolbar-left .ql-stroke{stroke:#cd43ffb3}.rich-edit-custom-toolbar .toolbar-left .ql-fill{fill:#cd43ffb3}.rich-edit-custom-toolbar .toolbar-left button:hover .ql-stroke,.rich-edit-custom-toolbar .toolbar-left button.ql-active .ql-stroke{stroke:#cd43ff}.rich-edit-custom-toolbar .toolbar-left button:hover .ql-fill,.rich-edit-custom-toolbar .toolbar-left button.ql-active .ql-fill{fill:#cd43ff}.rich-edit-custom-toolbar .toolbar-left .ql-picker-label{color:#ffffffe6;border-color:#cd43ff4d}.rich-edit-quill{width:100%;background:#00000080;border:1px solid rgba(205,67,255,.3);border-top:none;border-radius:0 0 8px 8px;overflow:hidden;transition:all .2s ease}.rich-edit-quill.at-limit{border-color:#ff434399}.rich-edit-quill .ql-toolbar{display:none}.rich-edit-quill .ql-editor .ooc-block{border-left:3px solid rgba(205,67,255,.6);background:#cd43ff14;padding:8px 12px;margin:4px 0;border-radius:4px;position:relative}.rich-edit-quill .ql-editor .ooc-block:before{content:"OOC";display:block;font-size:.65em;text-transform:uppercase;letter-spacing:1px;color:#cd43ffb3;margin-bottom:2px;font-weight:400}.rich-edit-quill .ql-editor .ooc-block+.ooc-block{margin-top:0;padding-top:0;border-top-left-radius:0;border-top-right-radius:0}.rich-edit-quill .ql-editor .ooc-block+.ooc-block:before{display:none}.rich-edit-quill .ql-editor .ooc-block:has(+.ooc-block){margin-bottom:0;padding-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.rich-edit-quill .ql-container{border:none;font-size:14px;font-family:var(--font-primary);min-height:300px;max-height:400px;overflow-y:auto}.rich-edit-quill .ql-editor{padding:12px 12px 40px;color:#ffffffe6;line-height:1.6;font-family:var(--font-primary)}.rich-edit-quill .ql-editor.ql-blank:before{color:#fff6;font-style:normal;left:12px}.rich-edit-input-container:focus-within .rich-edit-quill{border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 3px #cd43ff1a}.rich-edit-input-container:focus-within .rich-edit-custom-toolbar{border-color:#cd43ff99;box-shadow:0 0 0 3px #cd43ff1a}.rich-edit-quill .ql-picker-options{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:4px}.rich-edit-quill .ql-picker-item{color:#ffffffe6}.rich-edit-quill .ql-picker-item:hover{background:#cd43ff33;color:#fff}.rich-edit-quill .ql-color-picker .ql-picker-options{padding:8px}.rich-edit-quill .ql-editor h1,.rich-edit-quill .ql-editor h2,.rich-edit-quill .ql-editor h3{color:#cd43ffe6;font-weight:400;margin:.5em 0}.rich-edit-quill .ql-editor a{color:#cd43ffe6;text-decoration:underline}.rich-edit-quill .ql-editor blockquote{border-left:3px solid rgba(205,67,255,.5);padding-left:12px;margin:8px 0;color:#ffffffb3}.rich-edit-quill .ql-editor code,.rich-edit-quill .ql-editor .ql-code-block{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:2px 6px;color:#cd43ffe6;font-family:Courier New,monospace}.rich-edit-char-count{position:absolute;bottom:8px;right:12px;font-size:12px;color:#cd43ff80;pointer-events:none;-webkit-user-select:none;user-select:none;background:#000000b3;padding:4px 8px;border-radius:4px}.rich-edit-char-count.near-limit{color:#ffa500cc;font-weight:400}.rich-edit-char-count.at-limit{color:#ff4343e6;font-weight:400}.rich-edit-attachments{margin-top:16px;padding-top:16px;border-top:1px solid rgba(205,67,255,.2)}.rich-edit-attachments-label{font-size:13px;color:#cd43ffb3;margin-bottom:12px;font-weight:500}.rich-edit-attachments-grid{display:flex;flex-wrap:wrap;gap:16px;padding:8px}.rich-edit-attachment-item{position:relative;width:80px;height:80px;border-radius:8px;overflow:visible;border:1px solid rgba(205,67,255,.3);background:#00000080;transition:all .2s ease}.rich-edit-attachment-item:hover{border-color:#cd43ff99}.rich-edit-attachment-item.removed{opacity:.4;border-color:#ff43cd80}.rich-edit-attachment-item.removed .rich-edit-attachment-thumb{filter:grayscale(100%)}.rich-edit-attachment-thumb{width:100%;height:100%;object-fit:cover;border-radius:8px;transition:filter .2s ease}.rich-edit-attachment-remove,.rich-edit-attachment-undo{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;border:2px solid rgba(0,0,0,.8);font-size:12px;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.rich-edit-attachment-remove{background:#ff43cde6;color:#fff}.rich-edit-attachment-remove:hover{background:#ff43cd;transform:scale(1.1);box-shadow:0 0 10px #ff43cd80}.rich-edit-attachment-undo{background:#cd43ffe6;color:#fff}.rich-edit-attachment-undo:hover{background:#cd43ff;transform:scale(1.1)}.rich-edit-attachments-hint{margin-top:8px;font-size:12px;color:#ffa500cc;font-style:normal}.rich-edit-dialog-footer{padding:20px 24px;border-top:1px solid rgba(205,67,255,.3);display:flex;justify-content:flex-end;gap:12px}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}@media (max-width: 768px){.rich-edit-dialog{width:95%;max-height:90vh}.rich-edit-dialog-header,.rich-edit-dialog-body,.rich-edit-dialog-footer{padding:16px}.rich-edit-quill .ql-container{min-height:200px;max-height:300px}.rich-edit-custom-toolbar{flex-wrap:wrap}.rich-edit-custom-toolbar .toolbar-left{width:100%}.rich-edit-custom-toolbar .toolbar-right{width:100%;justify-content:flex-start}}.forum-note-view{display:flex;flex-direction:column;height:100%;font-family:var(--font-primary)}.forum-note-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.15)}.forum-note-info{display:flex;flex-direction:column;gap:4px}.forum-note-breadcrumb-label{display:flex;align-items:center;gap:8px;font-size:12px}.forum-note-section-badge{color:#cd43ff;text-transform:uppercase;letter-spacing:1px;font-weight:400}.forum-note-separator{color:#ffffff4d}.forum-note-type{color:#ffffff80}.forum-note-title{color:#fffffff2;font-family:var(--font-primary);font-size:20px;font-weight:400;margin:0}.forum-note-description{color:#ffffff80;font-size:13px;font-weight:400;margin:0}.forum-notes-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:0;padding:0 4px}.forum-notes-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.forum-note-card{position:relative;display:flex;gap:16px;padding:16px;background:#0000004d;border-bottom:1px solid rgba(205,67,255,.08);transition:all .2s ease}.forum-note-card:hover{background:#0006}.forum-note-actions{position:absolute;top:12px;right:12px;display:flex;gap:6px;z-index:1;opacity:0;transition:opacity .2s ease}.forum-note-card:hover .forum-note-actions{opacity:1}.forum-note-card .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.forum-note-card .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.forum-note-avatar{flex-shrink:0}.forum-note-content{flex:1;min-width:0}.forum-note-content-header{margin-bottom:8px}.forum-note-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.forum-note-author{color:#fffc;font-size:14px;font-weight:400}.forum-note-date{color:#fff6;font-size:12px;font-weight:400}.forum-note-edited{color:#ffffff4d;font-size:11px;font-weight:400}.forum-note-body{color:#ffffffd9;font-size:14px;font-weight:400;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}.forum-note-body p{margin:0 0 8px}.forum-note-body p:last-child{margin-bottom:0}.forum-notes-load-more{text-align:center;padding:8px}.forum-notes-empty{text-align:center;padding:3rem 1rem;color:#fff6;font-size:14px;font-weight:400}.forum-notes-empty-icon{font-size:36px;margin-bottom:12px}.forum-notes-locked{text-align:center;padding:12px;color:#fff6;font-size:13px;font-weight:400;border-top:1px solid rgba(205,67,255,.15)}.forum-composer{border-top:1px solid rgba(205,67,255,.15);padding:12px 16px}.forum-composer-input-container{position:relative}.forum-composer-toolbar{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-bottom:none;border-radius:8px 8px 0 0;padding:4px}.forum-composer-toolbar .toolbar-left{display:flex;flex-wrap:wrap;gap:2px}.forum-composer-quill .ql-container{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-top:none;border-radius:0 0 8px 8px;color:#ffffffd9;font-family:var(--font-primary);font-size:14px;font-weight:400;min-height:80px}.forum-composer-quill .ql-editor.ql-blank:before{color:#cd43ff66;font-family:var(--font-primary)}.forum-composer-quill.at-limit .ql-container{border-color:#ff434366}.forum-composer-char-count{text-align:right;font-size:11px;font-weight:400;color:#ffffff4d;padding:4px 0;font-family:var(--font-primary)}.forum-composer-char-count.near-limit{color:#ffc143cc}.forum-composer-char-count.at-limit{color:#ff4343cc}.forum-composer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.forum-composer-hint{font-size:11px;font-weight:400;color:#ffffff4d}.forum-composer-buttons{display:flex;gap:8px}@media (max-width: 768px){.forum-note-card{flex-direction:column;gap:12px;padding-top:48px}.forum-note-actions{top:8px;right:8px}}.forum-breadcrumb{display:flex;align-items:center;gap:8px;padding:8px 0;font-family:var(--font-primary);font-size:13px;font-weight:400;flex-wrap:wrap}.forum-breadcrumb-segment{transition:all .2s ease}.forum-breadcrumb-segment.clickable{color:#cd43ff;cursor:pointer}.forum-breadcrumb-segment.clickable:hover{color:#e056ff;text-shadow:0 0 10px rgba(205,67,255,.3)}.forum-breadcrumb-segment.current{color:#cd43ff99;cursor:default}.forum-breadcrumb-separator{color:#ffffff4d;font-size:14px;-webkit-user-select:none;user-select:none}.forum-category-list{display:flex;flex-direction:column;gap:12px;padding:16px;flex:1}.forum-category-list:has(.empty-state-container){justify-content:center;align-items:center;min-height:400px}.forum-category-card{display:flex;align-items:center;justify-content:space-between;background:#0000004d;border:.25px solid rgba(205,67,255,.15);border-radius:8px;padding:14px 20px;cursor:pointer;transition:all .3s ease}.forum-category-card:hover{border-color:#cd43ff66;box-shadow:0 0 10px #cd43ff26}.forum-category-name{color:#ffffffd9;font-family:var(--font-primary);font-weight:400;font-size:15px}.forum-category-count{color:#cd43ff99;font-family:var(--font-primary);font-weight:400;font-size:.85rem}.forum-section-toggle{display:flex;gap:0;background:#0006;border-radius:12px;padding:4px;border:1px solid rgba(205,67,255,.2);margin-bottom:16px}.forum-section-toggle__btn{flex:1;padding:12px 24px;background:transparent;border:none;color:#cd43ff99;font-family:var(--font-primary);font-weight:400;font-size:1.1rem;cursor:pointer;border-radius:8px;transition:all .3s ease;text-align:center}.forum-section-toggle__btn.active{background:#cd43ff26;color:#cd43ff;box-shadow:0 0 15px #cd43ff4d}.forum-section-toggle__btn:hover:not(.active){color:#cd43ffcc}.forum-section-toggle__create{background:linear-gradient(135deg,#cd43ff33,#cd43ff1a);border:1px solid rgba(205,67,255,.4);border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:.9rem;padding:8px 20px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.forum-section-toggle__create:hover{background:linear-gradient(135deg,#cd43ff4d,#cd43ff33);border-color:#cd43ff;box-shadow:0 0 15px #cd43ff66;transform:translateY(-1px)}.summon-familiar-btn{transition:all .3s ease;position:relative;overflow:visible}.summon-familiar-btn:before{display:none!important}.summon-familiar-btn.ready{background:linear-gradient(135deg,#cd43ff4d,#b035e866);border:1px solid rgba(205,67,255,.5);color:#f8f;font-weight:400;box-shadow:0 0 20px #cd43ff99,inset 0 0 15px #cd43ff33;text-shadow:0 0 10px rgba(255,136,255,.8);animation:pulse-glow 2s infinite}.summon-familiar-btn.partial{background:linear-gradient(135deg,#cd43ff33,#b035e833);border:1px solid rgba(205,67,255,.5);color:#cd43ff;font-weight:400;box-shadow:0 0 10px #cd43ff4d}.summon-familiar-btn.inactive{background:#cd43ff1a;border:1px solid rgba(205,67,255,.5);color:#cd43ff;font-weight:400}.tab-navigator{display:flex;align-items:center;width:100%;padding:0 10px;margin-bottom:0;border-bottom:1px solid rgba(205,67,255,.2);position:relative;z-index:1003}.tab-list{display:flex;gap:0;align-items:center}.tab-button{background:transparent;border:none;border-bottom:2px solid transparent;color:#cd43ff99;font-family:var(--font-primary);font-size:16px;font-weight:400;letter-spacing:.5px;padding:12px 24px;cursor:pointer;transition:all .3s ease;position:relative;text-transform:none}.tab-button:hover{color:#cd43ffe6;background:#cd43ff0d}.tab-button.active{color:#cd43ff;border-bottom-color:#cd43ff;background:#cd43ff1a}.tab-button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#CD43FF,transparent);animation:tabGlow 2s ease-in-out infinite}.tab-button .glow-indicator{margin-left:6px;vertical-align:middle}@keyframes tabGlow{0%,to{opacity:.5}50%{opacity:1}}.tab-action{margin-left:auto;display:flex;gap:12px;align-items:center}@media (max-width: 768px){.tab-navigator{flex-direction:column;gap:16px;align-items:stretch}.tab-list{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-button{white-space:nowrap;font-size:14px;padding:10px 16px}.tab-action{width:100%;margin-left:0}.tab-action button{width:100%}}.language-selector{position:relative;z-index:2000}.language-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#0000004d;border:.25px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:14px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.language-toggle:hover{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.flag-icon{font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}.dropdown-arrow{font-size:10px;color:#cd43ff99;transition:transform .3s ease}.language-toggle:hover .dropdown-arrow{color:#cd43ff}.language-dropdown{min-width:60px;background:#000000f2;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0006,0 0 40px #cd43ff1a;animation:dropdownFadeIn .3s ease;z-index:99999}.language-dropdown-portal{position:fixed}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.language-option{display:flex;align-items:center;justify-content:center;width:100%;padding:10px;background:transparent;border:none;border-radius:8px;color:#cd43ffcc;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;transition:all .2s ease;position:relative}.language-option:hover{background:#cd43ff1a;color:#cd43ff;transform:scale(1.1)}.language-option.active{background:linear-gradient(135deg,#cd43ff33,#b035e833);color:#cd43ff;font-weight:500}.language-option.active:before{content:"✓";position:absolute;right:12px;color:#cd43ff;font-size:14px}.language-name{flex:1;display:flex;align-items:center;line-height:1.4}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/Inter-Regular-CkdR6H24.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/Nunito-Regular-YDDnkTfh.woff2) format("woff2")}@font-face{font-family:Merriweather;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/Merriweather-Regular-CsOIbpjh.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/PlayfairDisplay-Regular-BDg0hoJQ.woff2) format("woff2")}@font-face{font-family:Lora;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/Lora-Regular-Bndoum4K.woff2) format("woff2")}@font-face{font-family:Cinzel;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/Cinzel-Regular-RBT8QtPq.woff2) format("woff2")}@font-face{font-family:Uncial Antiqua;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/UncialAntiqua-Regular-B5DEiwcg.woff2) format("woff2")}@font-face{font-family:Dancing Script;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/DancingScript-Regular-Bdc4sec0.woff2) format("woff2")}@font-face{font-family:Caveat;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/Caveat-Regular-ByfxTfnr.woff2) format("woff2")}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/FiraCode-Regular-CKfnkVdO.woff2) format("woff2")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/fantasia/fantaweb/assets/SourceCodePro-Regular-B9qUofsQ.woff2) format("woff2")}@font-face{font-family:Andalucia;src:url(/fantasia/fantaweb/assets/Andalucia-Cd33JVH9.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Poppins;src:url(/fantasia/fantaweb/assets/Poppins-ExtraLight-B8tqA5oA.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fantasia/fantaweb/assets/Poppins-Light-Dku2WoCh.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fantasia/fantaweb/assets/Poppins-Medium-ChvFccz8.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fantasia/fantaweb/assets/Poppins-SemiBold-Dpha3Bg8.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fantasia/fantaweb/assets/Poppins-Bold-D5PCC94q.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--font-primary: "Poppins", sans-serif}*{margin:0;padding:0;box-sizing:border-box;font-family:var(--font-primary)}h1,h2,h3,h4,h5,h6{font-weight:400;font-style:normal}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}body{font-family:var(--font-primary);background:#07080a;color:#eee;min-height:100vh;position:relative;overflow-x:hidden;overflow-y:scroll;margin:0;padding:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}body:before{content:"";position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80vh;height:80vh;background-image:url(/fantasia/fantaweb/assets/icon-DkobLSg-.png);background-size:contain;background-position:center;background-repeat:no-repeat;opacity:1;z-index:0;pointer-events:none}body.dashboard-active:before{display:none}.dashboard h2{margin-bottom:2rem;color:#cd43ff;font-weight:300;letter-spacing:1px}.control-panel{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.cop-control,.quick-stats,.system-info{background:#0f0f1ecc;padding:1.5rem;border-radius:.5rem;border:1px solid rgba(205,67,255,.2);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.cop-control h3,.quick-stats h3,.system-info h3{margin-bottom:1rem;color:#cd43ff;font-weight:300;letter-spacing:.5px}.quick-stats ul{list-style:none}.quick-stats li{padding:.5rem 0;border-bottom:1px solid rgba(205,67,255,.1);color:#fffc}.btn-primary{background:linear-gradient(135deg,#cd43ff,#9333ea);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.25rem;cursor:pointer;font-weight:300;letter-spacing:.5px;transition:all .2s;box-shadow:0 4px 15px #cd43ff4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #cd43ff66}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.btn-small{padding:.5rem 1rem;font-size:.875rem}.campaign-setup input{display:block;width:100%;max-width:400px;padding:.75rem;margin:1rem 0;background:#0f0f1ecc;border:1px solid rgba(205,67,255,.3);border-radius:.25rem;color:#fff;font-size:1rem;transition:all .2s}.campaign-setup input:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.join-code-display{margin-top:2rem;padding:1.5rem;background:#0f0f1ecc;border-radius:.5rem;border:2px solid #CD43FF;max-width:400px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.join-code-display .code{font-size:2rem;font-weight:400;letter-spacing:.25rem;color:#cd43ff;margin:1rem 0;text-shadow:0 0 20px rgba(205,67,255,.5)}.agents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.agent-card{background:#0f0f1ecc;border:1px solid rgba(205,67,255,.2);border-radius:.5rem;padding:1.5rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .2s}.agent-card:hover{border-color:#cd43ff66;box-shadow:0 4px 15px #cd43ff33}.agent-card.ao{border-color:#cd43ff}.agent-header{display:flex;justify-content:space-between;margin-bottom:1rem}.agent-type{background:#cd43ff;color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:400;text-transform:uppercase}.agent-status{font-size:.875rem;padding:.25rem .5rem;border-radius:.25rem}.agent-status.idle{background:#444}.agent-status.thinking{background:#f59e0b;color:#000}.agent-status.responding{background:#22c55e;color:#000}.agent-actions{margin-top:1rem;display:flex;gap:.5rem}.status-connected{color:#22c55e;font-weight:400}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2d1b3d,#1a0d1f 20%,#0a0a0a,#000 50%,#000)}.login-container{background:#0f0f1ef2;border:2px solid rgba(205,67,255,.3);border-radius:.5rem;padding:3rem;width:100%;max-width:450px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #cd43ff26}.login-container h1{font-family:Andalucia,serif;font-size:2.5rem;color:#cd43ff;text-align:center;margin-bottom:.5rem;text-shadow:2px 2px 4px rgba(205,67,255,.25)}.login-container>p{text-align:center;color:#ffffffb3;margin-bottom:2rem;font-weight:300}.login-tabs{display:flex;border-bottom:1px solid rgba(205,67,255,.2);margin-bottom:2rem}.login-tabs button{flex:1;background:none;border:none;color:#cd43ff99;padding:1rem;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent;font-weight:300;letter-spacing:.5px}.login-tabs button.active{color:#cd43ff;border-bottom-color:#cd43ff}.login-tabs button:hover{color:#cd43ff}.login-container form input{display:block;width:100%;padding:.75rem;margin-bottom:1rem;background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:.25rem;color:#fff;font-size:1rem;transition:all .2s}.login-container form input::placeholder{color:#ffffff80}.login-container form input:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.75rem;border-radius:.25rem;margin-bottom:1rem;text-align:center;font-size:.875rem}.login-container .btn-primary{width:100%;margin-top:.5rem}.login-container .btn-primary:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:#ffffffb3;font-size:.875rem}.login-footer a{color:#cd43ff;cursor:pointer;text-decoration:none;transition:all .2s}.login-footer a:hover{text-decoration:underline}.app.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2d1b3d,#1a0d1f 20%,#0a0a0a,#000 50%,#000)}.loading-spinner{color:#cd43ff;font-size:1.25rem;font-weight:300;letter-spacing:.5px}.user-info{color:#fffc;font-weight:300;padding:.25rem .75rem;background:#cd43ff1a;border-radius:1rem;font-size:.875rem}.btn-logout{background:none;border:1px solid rgba(205,67,255,.3);color:#cd43ffcc;padding:.25rem .75rem;border-radius:.25rem;cursor:pointer;font-size:.875rem;transition:all .2s}.btn-logout:hover{background:#cd43ff1a;border-color:#cd43ff;color:#cd43ff}.welcome-page{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:transparent;padding:1rem;position:relative}.welcome-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:.75rem;animation:fadeIn .8s ease-out;position:relative}.welcome-language-selector{position:fixed;top:20px;right:20px;z-index:100}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.welcome-header{text-align:center;margin-bottom:1rem}.title-wrapper{position:relative;display:inline-block}.fantasia-welcome-title{font-family:Andalucia,serif;font-size:4.5rem;color:#cd43ff;text-shadow:0 0 30px rgba(205,67,255,.5),2px 2px 4px rgba(205,67,255,.25);margin:0;font-weight:400;letter-spacing:0;line-height:1;position:relative;display:inline-block}.copyright-symbol{position:absolute;top:.7em;right:-.9em;font-size:.15em;font-family:var(--font-primary);font-weight:400;color:#cd43ffcc;text-shadow:1px 1px 2px rgba(205,67,255,.3)}.welcome-slogan{position:absolute;bottom:8px;left:50%;transform:translate(-50%) translate(24px);color:#cd43fff2;font-size:.6rem;font-weight:300;text-shadow:1px 1px 2px rgba(205,67,255,.25);white-space:nowrap;letter-spacing:.5px}.auth-choice-card:after,.email-auth-card:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#cd43ff,#b035e8,#9c27d4,#7b1fa2,#cd43ff,#b035e8,#9c27d4,#7b1fa2);border-radius:12px;opacity:0;z-index:-1;transition:opacity .3s ease;background-size:400% 400%;animation:gradientShift 10s ease infinite}.auth-choice-card:hover:after,.email-auth-card:hover:after{opacity:.3}.welcome-cta{width:100%;max-width:400px;margin:.75rem 0}.welcome-cta .fantamaster-button{width:100%}.welcome-footer{position:absolute;bottom:-80px;left:50%;transform:translate(-50%);display:flex;justify-content:center;align-items:center;gap:.75rem;padding-top:.75rem;border-top:1px solid rgba(205,67,255,.1);font-size:.7rem;width:80%}.copyright{color:#cd43ffb3}.footer-separator{color:#cd43ff66;font-size:.6rem}.welcome-footer a{color:#cd43ff99;text-decoration:underline;cursor:pointer;transition:all .2s}.welcome-footer a:hover{color:#cd43ffe6}.edit-icon{padding:2px 6px;background:#cd43ff33;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;cursor:pointer;font-size:11px;font-weight:400;transition:all .2s}.edit-icon:hover{background:#cd43ff4d}.genre-badge{text-transform:none}body:has(.login-page):before{width:50vh;height:50vh}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:transparent;padding:20px 20px 0;position:relative;z-index:1}.login-language-selector{position:absolute;top:20px;right:20px;z-index:100}.login-card{display:inline-flex;flex-direction:column;align-items:center;padding:30px 40px;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:fit-content;min-width:450px;max-width:95%;position:relative;overflow:visible;margin:180px 0 auto}.login-card:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#cd43ff,#b035e8,#9c27d4,#7b1fa2,#cd43ff,#b035e8,#9c27d4,#7b1fa2);border-radius:12px;opacity:0;z-index:-1;transition:opacity .3s ease;background-size:400% 400%;animation:gradientShift 10s ease infinite}.login-card:hover:after{opacity:.3}.login-content{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;gap:20px}.login-header{text-align:center;margin-bottom:10px}.login-terms-header{color:#cd43ff;font-size:11px;margin:15px 0 0;line-height:1.4;font-family:var(--font-primary);font-weight:300;letter-spacing:.3px}.login-subtitle{font-family:var(--font-primary);font-size:18px;color:#cd43fff2;margin:0;font-weight:300;letter-spacing:.5px}.login-options{display:flex;flex-direction:column;gap:12px}.login-button{width:100%}.login-divider{position:relative;text-align:center;margin:8px 0;color:#cd43ff99;font-size:12px;text-transform:uppercase;letter-spacing:2px;font-family:var(--font-primary)}.login-divider:before,.login-divider:after{content:"";position:absolute;top:50%;width:calc(50% - 30px);height:1px;background:linear-gradient(90deg,transparent,rgba(205,67,255,.3),transparent)}.login-divider:before{left:0}.login-divider:after{right:0}.login-tabs{display:flex;gap:8px;padding:4px;background:#0006;border:.25px solid rgba(205,67,255,.2);border-radius:12px;animation:fadeIn .3s ease-out}.login-tabs .tab-button{flex:1;transition:all .3s ease}.login-form{display:flex;flex-direction:column;gap:16px}.form-fields-container{display:flex;flex-direction:column;gap:16px;animation:fadeIn .3s ease-out}.form-group{position:relative;animation:fadeInUp .4s ease-out backwards}.form-group:nth-child(1){animation-delay:.1s}.form-group:nth-child(2){animation-delay:.2s}.form-group:nth-child(3){animation-delay:.3s}.form-input{width:100%;padding:12px 16px;background:#00000080;border:.25px solid rgba(205,67,255,.3);border-radius:12px;color:#cd43ff;font-size:14px;font-family:var(--font-primary);transition:all .3s ease;outline:none;letter-spacing:.3px}.form-input::placeholder{color:#cd43ff66}.form-input:focus{border-color:#cd43ff;background:#cd43ff0d;box-shadow:0 0 20px #cd43ff33,inset 0 0 5px #cd43ff1a}.submit-button{width:100%;margin-top:8px}.login-error{background:#ff43431a;border:.25px solid rgba(255,67,67,.3);border-radius:8px;padding:10px;color:#ff6b6b;text-align:center;font-size:12px;font-family:var(--font-primary)}.login-footer{text-align:center;display:flex;flex-direction:column;gap:0;align-items:center}.login-terms{color:#cd43ff99;font-size:11px;margin:0;line-height:1.4;font-family:var(--font-primary)}.login-back-button{margin-top:0}.login-button:disabled,.submit-button:disabled{cursor:wait;opacity:.7}.remember-me-container{display:flex;align-items:center;margin-top:8px}.remember-me-label{display:flex;align-items:center;gap:12px;cursor:pointer;color:#cd43ffb3;font-size:14px;font-family:Roboto,sans-serif;font-weight:400;transition:all .3s ease;-webkit-user-select:none;user-select:none;position:relative;letter-spacing:.3px}.remember-me-label:hover{color:#cd43fff2}.remember-me-label span{transition:all .3s ease}.smart-button{animation:fadeInUp .4s ease-out;margin-top:20px}.smart-button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 25px #cd43ff4d}.email-input-wrapper{position:relative}.email-input-wrapper .form-input{padding-right:36px}.email-dropdown-toggle{position:absolute;right:8px;top:0;height:44px;width:28px;background:transparent;border:none;color:#cd43ff99;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.email-dropdown-toggle:hover{color:#cd43ff}.email-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#000000f2;border:.5px solid rgba(205,67,255,.4);border-radius:8px;overflow:hidden;z-index:1000;max-height:200px;overflow-y:auto;box-shadow:0 8px 32px #00000080,0 0 20px #cd43ff1a}.email-dropdown-item{width:100%;padding:12px 16px;background:transparent;border:none;color:#cd43ffcc;font-size:14px;font-family:var(--font-primary);text-align:left;cursor:pointer;transition:all .2s ease}.email-dropdown-item:hover{background:#cd43ff26;color:#cd43ff}.email-dropdown-item:not(:last-child){border-bottom:.5px solid rgba(205,67,255,.1)}.password-input-wrapper{position:relative}.password-input-wrapper .form-input{padding-right:48px}.password-toggle{position:absolute;right:8px;top:0;height:44px;width:32px;background:transparent;border:none;color:#cd43ff99;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.password-toggle:hover{color:#cd43ff;background:#cd43ff1a}.password-toggle:hover svg{filter:drop-shadow(0 0 6px rgba(205,67,255,.5))}.password-toggle svg{transition:all .2s ease}.verification-title{color:#cd43ff;font-family:var(--font-primary);font-size:24px;font-weight:500;margin:30px 0 0;letter-spacing:1px;text-shadow:0 0 20px rgba(205,67,255,.3)}.verification-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:10px 0 25px}.verification-icon{margin-bottom:8px}.verification-icon svg{stroke:#cd43ff;filter:drop-shadow(0 0 10px rgba(205,67,255,.4))}.verification-subtitle{color:#cd43ffb3;font-family:var(--font-primary);font-size:14px;margin:0;letter-spacing:.3px}.verification-email{color:#cd43ff;font-family:var(--font-primary);font-size:18px;font-weight:400;margin:0;letter-spacing:.5px;text-shadow:0 0 15px rgba(205,67,255,.4)}.verification-instructions{color:#cd43ffcc;font-family:var(--font-primary);font-size:14px;margin:10px 0 0;text-align:center;letter-spacing:.3px}.verification-spam{color:#cd43ff99;font-family:var(--font-primary);font-size:12px;margin:0;font-style:normal;letter-spacing:.3px}.verification-message{padding:10px 20px;border-radius:6px;font-family:var(--font-primary);font-size:13px;margin:10px 0}.verification-message.success{background:#43ff971a;color:#43ff97;border:.5px solid rgba(67,255,151,.3)}.verification-message.error{background:#ff43431a;color:#ff4343;border:.5px solid rgba(255,67,67,.3)}.verification-message-floating{position:absolute;top:140px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:6px;font-family:var(--font-primary);font-size:13px;z-index:10;white-space:nowrap}.verification-message-floating.success{background:#43ff9726;color:#43ff97;border:.5px solid rgba(67,255,151,.4);box-shadow:0 0 20px #43ff9733}.verification-message-floating.error{background:#ff43ca26;color:#ff43ca;border:.5px solid rgba(255,67,202,.4);box-shadow:0 0 20px #ff43ca33}.verification-actions{display:flex;flex-direction:column;align-items:center;gap:20px;margin-top:25px;width:100%}.verification-secondary-actions{display:flex;gap:12px;justify-content:center;width:280px}.verification-secondary-actions .fantamaster-button{flex:1;font-size:12px}.verified-button{min-width:280px}.resend-button,.different-email-button{color:#ffffffb3}.resend-button:hover,.different-email-button:hover{color:#cd43ff}.banned-title{color:#f44;font-family:var(--font-primary);font-size:24px;font-weight:500;margin:30px 0 0;letter-spacing:1px;text-shadow:0 0 20px rgba(255,68,68,.3)}.banned-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:10px 0 25px}.banned-icon{margin-bottom:8px}.banned-icon svg{stroke:#f44;filter:drop-shadow(0 0 10px rgba(255,68,68,.4))}.banned-message{color:#ffffffe6;font-family:Lato,sans-serif;font-size:14px;line-height:1.8;text-align:center;max-width:400px;padding:20px;background:#ff44441a;border:1px solid rgba(255,68,68,.3);border-radius:8px}.banned-message p{margin:0 0 12px}.banned-message p:last-child{margin-bottom:0}.banned-actions{margin-top:20px}@media (max-width: 600px){.login-card{min-width:100%;padding:30px 25px}.login-header .fantasia-title{font-size:36px}.login-subtitle{font-size:16px}.verification-title{font-size:20px}.resend-button{min-width:100%}}.dashboard-page{--dashboard-section-gap: 16px;height:100vh;display:flex;flex-direction:column;background:transparent;position:relative;overflow:hidden}.dashboard-content{flex:1;display:flex;flex-direction:column;gap:0;width:100%;margin:0;overflow:hidden;min-height:0}.sticky-header-wrapper{position:relative;flex-shrink:0;z-index:1000;padding:40px 40px 0}.dashboard-header-card{background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:10px 30px;position:relative;z-index:1002;overflow:visible;animation:fadeIn .6s ease-out;min-height:50px}.dashboard-header-card:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#cd43ff,#b035e8,#9c27d4,#7b1fa2,#cd43ff,#b035e8,#9c27d4,#7b1fa2);border-radius:12px;opacity:0;z-index:-1;transition:opacity .3s ease;background-size:400% 400%;animation:gradientShift 10s ease infinite}.dashboard-header-card:hover:after{opacity:.2}.header-top-row{display:grid;grid-template-columns:2.5fr 1fr 2.5fr;align-items:center;min-height:50px;padding:5px 0;position:relative}.user-info{display:flex;align-items:center;gap:12px;justify-self:start}.user-info>div{display:flex;align-items:center;gap:10px}.user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;border:2px solid rgba(205,67,255,.3);position:relative;transition:all .3s ease}.user-avatar.clickable{cursor:pointer}.user-avatar.clickable:hover{border-color:#cd43ff99;transform:scale(1.05)}.user-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#cd43ff,#7b1fa2);display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;font-family:var(--font-primary);font-weight:500;overflow:hidden;border-radius:50%;position:relative}.avatar-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;border-radius:50%}.user-avatar.clickable:hover .avatar-overlay{opacity:1}.avatar-overlay svg{color:#cd43ffe6}.user-details{display:flex;flex-direction:column;gap:4px}.user-name{font-family:var(--font-primary);color:#cd43ff;font-size:18px;font-weight:500;letter-spacing:.5px}.user-role{font-family:var(--font-primary);color:#cd43ffb3;font-size:11px;letter-spacing:1px;text-transform:uppercase;transition:color .3s ease}.user-role.game-master{color:#cd43ff;font-weight:400}.user-avatar.game-master{border:2px solid #CD43FF;box-shadow:0 0 15px #cd43ff4d}.dashboard-title-center{justify-self:center;display:flex;align-items:center;justify-content:center}.dashboard-title-overlay{position:absolute;top:50px;left:50%;transform:translate(-50%);z-index:9999;pointer-events:none}.dashboard-title-overlay .fantasia-title-component{pointer-events:auto}.header-top-row .header-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;align-self:center}.header-actions .back-to-dashboard-btn{min-width:auto;margin-right:10px}.user-info .sign-out-btn{margin-left:8px;min-width:80px;height:32px;padding:0 12px;font-size:12px}.tab-navigation-section{display:flex;flex-direction:column;gap:0;animation:fadeInUp .8s ease-out .2s backwards}.dashboard-scroll-area{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;padding-top:var(--dashboard-section-gap)}.tab-content{padding:0 48px}.ai-unavailable-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center;color:#ffffff80;font-family:var(--font-primary);font-weight:300;background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:12px;max-width:500px;margin:40px auto}.ai-unavailable-card h3{color:#cd43ff99;font-size:1.1rem;font-weight:400;margin-bottom:8px}.ai-unavailable-card p{font-size:.9rem;max-width:400px}.campaigns-section,.games-tab{display:flex;flex-direction:column;gap:0}.section-header{display:flex;justify-content:space-between;align-items:center;padding:0 10px}.section-title{font-family:var(--font-primary);color:#cd43ff;font-size:28px;font-weight:300;letter-spacing:2px;margin:0}.games-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:20px}.campaigns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;padding:10px}.campaign-card{background:#000c;border:.25px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;transition:all .3s ease;position:relative;animation:fadeInUp .6s ease-out backwards}.campaign-card:nth-child(1){animation-delay:.1s}.campaign-card:nth-child(2){animation-delay:.2s}.campaign-card:nth-child(3){animation-delay:.3s}.campaign-card:hover{transform:translateY(-5px);border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33}.campaign-header{position:relative;height:150px;background:linear-gradient(135deg,#cd43ff1a,#7b1fa21a);transition:all .3s ease}.campaign-header.clickable{cursor:pointer}.campaign-header.clickable:hover .image-overlay{opacity:1}.campaign-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;pointer-events:none}.image-overlay svg{color:#cd43ffcc}.campaign-image img{width:100%;height:100%;object-fit:cover}.image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#cd43ff33,#7b1fa233);display:flex;align-items:center;justify-content:center}.image-placeholder span{font-size:48px;color:#cd43ff99;font-family:var(--font-primary);font-weight:300;text-transform:uppercase}.dashboard-page .status-badge{position:absolute;top:10px;right:10px;padding:4px 12px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dashboard-page .status-badge.active{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.dashboard-page .status-badge.paused{background:#ffc14333;color:#ffc143;border:1px solid rgba(255,193,67,.3)}.dashboard-page .status-badge.archived{background:#ff434333;color:#ff4343;border:1px solid rgba(255,67,67,.3)}.campaign-body{padding:20px;display:flex;flex-direction:column;gap:15px}.campaign-name{font-family:var(--font-primary);color:#cd43ff;font-size:20px;font-weight:500;letter-spacing:.5px;margin:0}.campaign-world{font-family:var(--font-primary);color:#cd43ffb3;font-size:14px;margin:0;letter-spacing:.3px}.campaign-stats{display:flex;gap:20px;padding:10px 0;border-top:1px solid rgba(205,67,255,.1);border-bottom:1px solid rgba(205,67,255,.1)}.campaign-stats .stat{display:flex;align-items:center;gap:6px;color:#cd43ff99;font-size:13px;font-family:var(--font-primary)}.campaign-stats svg{opacity:.7}.campaign-actions{display:flex;gap:10px;margin-top:5px}.campaign-actions .launch-btn{flex:1}.campaign-actions .edit-btn{min-width:80px}.empty-state-card{grid-column:1 / -1;background:#000c;border:.25px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:32px 40px;margin-top:80px;display:flex;justify-content:center;align-items:center;min-height:160px;animation:fadeInUp .6s ease-out;transition:all .3s ease}.empty-state-card:hover{border-color:#cd43ff4d;box-shadow:0 10px 30px #cd43ff1a}.empty-state-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}.empty-state-content h3{font-family:var(--font-primary);color:#cd43ff;font-size:28px;margin:0;letter-spacing:1px;font-weight:300}.game-restriction-notice{font-family:var(--font-primary);color:#cd43ffd9;font-size:20px;line-height:1.8;text-align:center;max-width:760px;margin:0 auto;padding:0 20px;font-weight:400;letter-spacing:.3px}.empty-state-buttons{display:flex;gap:20px;justify-content:center;align-items:center;flex-wrap:wrap}.empty-state-buttons .btn,.empty-state-buttons button{width:250px!important;min-width:250px!important;box-sizing:border-box}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@media (max-width: 1200px){.dashboard-content{padding:60px 30px 30px}.header-top-row{flex-direction:column;gap:20px}.dashboard-title .fantasia-title{font-size:56px!important}}@media (max-width: 768px){.dashboard-content{padding:60px 20px 20px}.dashboard-header-card{padding:20px}.dashboard-title .fantasia-title{font-size:42px!important;letter-spacing:4px!important}.campaigns-grid{grid-template-columns:1fr}}.dashboard .styled-display-name-with-tooltip,.game-card .styled-display-name-with-tooltip,.game-stats .styled-display-name-with-tooltip,.stat .styled-display-name-with-tooltip,.styled-display-name-with-tooltip{position:relative!important;cursor:pointer!important;display:inline-block!important;pointer-events:auto!important}.dashboard .styled-display-name-with-tooltip .gm-rank-tooltip,.game-card .styled-display-name-with-tooltip .gm-rank-tooltip,.game-stats .styled-display-name-with-tooltip .gm-rank-tooltip,.stat .styled-display-name-with-tooltip .gm-rank-tooltip,.styled-display-name-with-tooltip .gm-rank-tooltip{visibility:hidden;position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:#000000f2;color:#fffffff2;padding:8px 12px;border-radius:6px;border:1px solid rgba(205,67,255,.4);font-size:.85rem;white-space:nowrap;z-index:10000;pointer-events:none;box-shadow:0 4px 12px #00000080}.dashboard .styled-display-name-with-tooltip:hover .gm-rank-tooltip,.game-card .styled-display-name-with-tooltip:hover .gm-rank-tooltip,.game-stats .styled-display-name-with-tooltip:hover .gm-rank-tooltip,.stat .styled-display-name-with-tooltip:hover .gm-rank-tooltip,.styled-display-name-with-tooltip:hover .gm-rank-tooltip{visibility:visible}@keyframes pulse-glow{0%{box-shadow:0 0 20px #cd43ff99,inset 0 0 15px #cd43ff33}50%{box-shadow:0 0 30px #cd43ffcc,inset 0 0 20px #cd43ff4d}to{box-shadow:0 0 20px #cd43ff99,inset 0 0 15px #cd43ff33}}.summon-familiar-btn:hover{transform:scale(1.05);filter:brightness(1.2)}@media (max-width: 768px){.sticky-header-wrapper{padding:16px 16px 0}.header-top-row{grid-template-columns:1fr auto;gap:8px}.header-top-row>:nth-child(2){display:none}.header-top-row>:nth-child(3){grid-column:1 / -1;justify-self:end}.dashboard-header-card{padding:8px 16px;border-radius:8px}}.campaign-creator-page{min-height:100vh;display:flex;flex-direction:column;background:transparent}.creator-container{flex:1;display:flex;flex-direction:column;padding:40px 40px 20px;width:100%;margin:0 auto}.back-to-dashboard-btn{margin-left:20px}.creator-content{flex:1;display:flex;flex-direction:column;gap:15px}.progress-indicator{display:flex;justify-content:center;gap:30px;margin-top:20px;margin-bottom:-10px;animation:fadeInUp .6s ease-out .1s backwards;flex-wrap:wrap}.progress-step{font-family:var(--font-primary);color:#cd43ff66;font-size:14px;letter-spacing:.5px;position:relative;padding-bottom:10px;transition:all .3s ease;cursor:pointer}.progress-step.clickable:hover{color:#cd43ffb3}.progress-step.active{color:#cd43ff;font-weight:500}.progress-step.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#cd43ff,#b035e8);animation:slideIn .3s ease-out}.creator-card{background:#000c;border:.25px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:60px;animation:fadeInUp .6s ease-out .2s backwards;min-height:500px}.creator-step{display:flex;flex-direction:column;gap:40px;animation:fadeIn .4s ease-out}.creator-step .step-header{text-align:center;display:block;width:100%}.creator-step .step-header h2{font-family:var(--font-primary);color:#cd43ff;font-size:32px;font-weight:300;letter-spacing:1px;margin:0 0 20px;text-align:center}.step-description{font-family:var(--font-primary);color:#cd43ffcc;font-size:20px;line-height:1.6;max-width:600px;margin:0 auto 15px}.step-subtitle{font-family:var(--font-primary);color:#cd43ffe6;font-size:18px;font-weight:400;margin:15px 0;letter-spacing:.5px}.step-subtitle-large{font-family:var(--font-primary);color:#cd43ff;font-size:32px;font-weight:300;letter-spacing:1px;margin:30px 0 0}.selection-options,.privacy-options{display:flex;flex-direction:column;gap:30px;max-width:400px;margin:0 auto;align-items:center}.world-lore .privacy-options{margin-top:-20px}.option-card{display:flex;flex-direction:column;gap:15px;text-align:center;width:300px}.option-card .full-width{width:100%}.option-subtitle{font-family:var(--font-primary);color:#cd43ff99;font-size:16px;margin:0;letter-spacing:.5px}.world-browser{display:flex;flex-direction:column;height:100%;gap:20px}.world-browser-header{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;flex-shrink:0}.world-browser-header-left{justify-self:start}.world-browser-header-center{justify-self:center}.world-browser-header-right{justify-self:end}.world-browser-title{font-family:var(--font-primary);color:#cd43ff;font-size:24px;font-weight:300;letter-spacing:1px;margin:0;white-space:nowrap}.world-browser-search{width:300px;padding:10px 16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:14px;letter-spacing:.5px;outline:none;transition:all .3s ease}.world-browser-search::placeholder{color:#cd43ff66}.world-browser-search:focus{border-color:#cd43ff99;background:#cd43ff26}.world-browser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;flex:1;min-height:0;overflow-y:auto}.search-bar{margin-top:20px}.search-input{width:100%;max-width:400px;padding:12px 20px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:16px;letter-spacing:.5px;outline:none;transition:all .3s ease}.search-input::placeholder{color:#cd43ff66}.search-input:focus{border-color:#cd43ff99;background:#cd43ff26}.worlds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:25px;max-height:400px;overflow-y:auto;padding:10px}.game-world-card{position:relative;background-color:#0009;background-size:cover;background-position:top center;background-repeat:no-repeat;border:.25px solid rgba(205,67,255,.2);border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease;min-height:250px;display:flex;flex-direction:column}.game-world-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,#0003,#000000e6);pointer-events:none}.game-world-card:hover{transform:translateY(-5px);border-color:#cd43ff80;box-shadow:0 10px 30px #cd43ff33}.world-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;color:#cd43ff66;font-family:var(--font-primary);font-weight:300;z-index:1}.world-info{position:relative;padding:15px;z-index:2;background:linear-gradient(to top,#000000f2,#000000b3);margin-top:auto}.world-info h3{font-family:var(--font-primary);color:#cd43ff;font-size:18px;margin:0 0 8px;font-weight:400}.world-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.world-header h3{margin:0}.world-badges-container{position:absolute;top:8px;right:8px;display:flex;gap:6px;z-index:3}.game-world-card .world-lore-badge{padding:4px 8px;border-radius:4px;font-family:var(--font-primary);font-size:10px;font-weight:400;letter-spacing:1px;background:#000c;border:1px solid rgba(205,67,255,.5);color:#cd43ff}.game-world-card .world-type-badge{padding:4px 8px;border-radius:4px;font-family:var(--font-primary);font-size:10px;font-weight:400;font-style:normal;letter-spacing:1px;background:#000c;border:1px solid rgba(205,67,255,.5);color:#cd43ff}.lore-type-indicator{padding:2px 6px;border-radius:4px;font-family:var(--font-primary);font-size:11px;font-weight:400;letter-spacing:.5px;margin-left:8px}.lore-type-indicator.ffa{background:#43ff9733;color:#43ff97;border:1px solid rgba(67,255,151,.3)}.lore-type-indicator.ca{background:#ffc14333;color:#ffc143;border:1px solid rgba(255,193,67,.3)}.lore-type-indicator.ol{background:#ff434333;color:#ff4343;border:1px solid rgba(255,67,67,.3)}.lore-type-indicator.open{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.world-description{color:#fff;font-size:14px;margin:0 0 12px;line-height:1.4;font-family:var(--font-primary);letter-spacing:.3px}.world-meta{display:flex;justify-content:space-between;font-size:12px;color:#cd43ff80;font-family:var(--font-primary);letter-spacing:.3px}.world-meta .games-count{color:#cd43ffb3;font-weight:500}.selected-world,.world-privacy{font-family:var(--font-primary);color:#cd43ffcc;font-size:18px;margin:10px 0}.details-form{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:40px;min-height:200px;display:flex;flex-direction:column;gap:25px}.form-group{display:flex;flex-direction:column;gap:10px}.form-group label{font-family:var(--font-primary);color:#cd43ffcc;font-size:14px;letter-spacing:.5px;font-weight:500}.campaign-creator-page .stats-bar{display:none!important}.ip-warning-title{color:#cd43ff!important;font-size:24px!important;margin-bottom:12px!important}.ip-authorization .step-description{font-size:15px!important;white-space:pre-line!important}.ip-authorization *{box-sizing:border-box}.details-form.ip-auth-form,.ip-auth-form.details-form,.ip-authorization .details-form{padding:24px 0!important;gap:16px!important;background:transparent!important;background-color:transparent!important;background-image:none!important;border:none!important;border-width:0!important;box-shadow:none!important;max-width:600px!important;margin:0 auto!important}.ip-auth-form>*,.ip-auth-form>*>*,.ip-auth-form>*>*>*{background:transparent!important;background-color:transparent!important;border:none!important;box-shadow:none!important;border-radius:0!important}.checkbox-group{display:flex;flex-direction:column;gap:4px}.ip-authorization .checkbox-group,.ip-authorization .checkbox-row{background:transparent!important;background-color:transparent!important;background-image:none!important;border:none!important;border-width:0!important;box-shadow:none!important;border-radius:0!important;outline:none!important}.ip-authorization .checkbox-content,.ip-authorization .checkbox-content span{background:transparent!important;background-color:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.ip-authorization .checkbox-content ul,.ip-authorization .checkbox-content li{background:transparent!important;border:none!important;box-shadow:none!important}.ip-authorization .checkbox-row{padding:8px 0!important}.ip-authorization .form-group{background:transparent!important;border:none!important;box-shadow:none!important}.checkbox-row{display:flex;align-items:flex-start;gap:12px;padding:8px 0;cursor:pointer;transition:background-color .2s ease}.checkbox-row .custom-checkbox{margin-top:1px;flex-shrink:0}.ip-authorization .checkbox-row{align-items:flex-start!important;gap:10px!important}.ip-authorization .checkbox-row:hover{background:transparent}.checkbox-content{flex:1;display:flex;flex-direction:column;gap:6px}.checkbox-label{font-family:var(--font-primary);color:#ffffffe6;font-size:14px;font-weight:400!important;line-height:1.4;letter-spacing:.2px;text-transform:none!important}.checkbox-sublist{margin:4px 0 0;padding-left:18px;list-style:disc}.checkbox-sublist li{font-family:var(--font-primary);color:#ffffffb3;font-size:13px;font-weight:400!important;line-height:1.4;margin-bottom:2px;letter-spacing:.2px;text-transform:none!important}.settings-questions-section{display:flex;flex-direction:column;gap:25px}.settings-toggles-section{display:flex;flex-direction:column;gap:20px;padding-top:8px;border-top:1px solid rgba(205,67,255,.1)}.settings-toggle-row{display:grid;grid-template-columns:280px 1fr;align-items:center;gap:0 1rem}.settings-toggle-row>label{font-family:var(--font-primary);color:#cd43ffcc;font-size:14px;letter-spacing:.5px;font-weight:500}.settings-toggle-control{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.settings-toggle-control .field-explanation{margin:0}.game-details .settings-toggle-row{grid-template-columns:480px 1fr}.game-details .settings-toggle-row.young-adult-setting .young-adult-warning{display:block;margin-top:2px;color:#ff43cd;font-size:12px}.field-explanation{margin:4px 0 0;font-size:.9rem;color:#cd43ffb3;font-style:normal;font-family:var(--font-primary);font-weight:400}.form-input,.form-textarea,.form-select{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:12px 16px;color:#cd43ff;font-family:var(--font-primary);font-size:16px;letter-spacing:.3px;outline:none;transition:all .3s ease;width:100%}.form-input::placeholder,.form-textarea::placeholder{color:#cd43ff66}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:#cd43ff99;background:#cd43ff26}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23CD43FF' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;width:100%}.form-select option{background:#1a0a20;color:#cd43ff;padding:8px}.loading-state,.empty-state{text-align:center;padding:40px;color:#cd43ff99;font-family:var(--font-primary);font-size:16px;letter-spacing:.5px}.step-actions{display:flex;flex-direction:column!important;align-items:center;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(205,67,255,.2)}.step-actions button{width:200px}.worlds-grid::-webkit-scrollbar{width:8px}.worlds-grid::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.worlds-grid::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.worlds-grid::-webkit-scrollbar-thumb:hover{background:#cd43ff80}@keyframes slideIn{0%{width:0}to{width:100%}}@media (max-width: 768px){.creator-card{padding:40px 20px}.selection-options,.privacy-options{gap:20px}.progress-indicator{flex-direction:column;gap:15px;align-items:center}.creator-step .step-header h2{font-size:24px}}.genre-picker-modal{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:12px;max-width:520px;width:90%;box-shadow:0 8px 32px #cd43ff33}.genre-picker-modal .modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2)}.genre-picker-modal .modal-header-text{display:flex;flex-direction:column;gap:12px}.genre-picker-modal .modal-title{font-size:20px;font-weight:400;color:#cd43ff;margin:0}.genre-picker-modal .modal-subtitle{font-size:13px;color:#d8b4feb3;margin:0;font-style:normal}.genre-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:24px}.genre-pill{display:flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:20px;border:1px solid rgba(205,67,255,.3);background:#cd43ff14;color:#d8b4fecc;font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;text-align:center;min-height:40px}.genre-pill:hover{border-color:#cd43ff99;background:#cd43ff26;color:#cd43ff}.genre-pill.selected-main{background:#ff43cd33;border-color:#ff43cd80;color:#ff43cd;box-shadow:0 0 12px #ff43cd26}.genre-pill.selected-sub{background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff;box-shadow:0 0 12px #cd43ff26}.genre-pill .genre-order{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:400;margin-right:6px;flex-shrink:0}.genre-pill.selected-main .genre-order{background:#ff43cd4d;color:#ff43cd}.genre-pill.selected-sub .genre-order{background:#cd43ff4d;color:#cd43ff}.genre-picker-footer{display:flex;justify-content:flex-end;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);gap:12px}.genre-picker-count{display:flex;align-items:center;font-size:13px;color:#d8b4fe99;margin-right:auto}.genre-picker-count .count-number{color:#cd43ff;font-weight:400;margin:0 3px}.world-settings-page{min-height:100vh;width:100%;padding:2rem;background:#07080a;position:relative;animation:fadeIn .3s ease}.world-settings-container{width:100%;margin:0;padding:0 2rem}.world-settings-container>*{max-width:100%;background:#000c;border:1px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem 2rem}.settings-title{font-family:var(--font-primary);font-size:2rem;font-weight:400;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5);text-transform:uppercase;letter-spacing:2px;margin:0}.settings-form{display:flex;flex-direction:column;gap:1rem;padding-bottom:60px}.world-settings-page .settings-toggles-section{display:flex;flex-direction:column;gap:20px;padding-top:8px;border-top:1px solid rgba(205,67,255,.1)}.world-settings-page .settings-toggle-row{display:grid;grid-template-columns:240px 1fr;align-items:center;gap:0 1rem}.world-settings-page .settings-toggle-row>label{font-family:var(--font-primary);color:#cd43ffcc;font-size:14px;letter-spacing:.5px;font-weight:400}.world-settings-page .settings-toggle-control{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23CD43FF' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.form-select:disabled{opacity:.5;cursor:not-allowed;background-color:#cd43ff05}.type-description{font-size:.85rem;color:#cd43ff99;font-style:normal;margin-top:.25rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.background-upload{display:flex;justify-content:center;padding:1rem}.upload-background-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;width:100%;max-width:400px;height:200px;background:#cd43ff0d;border:2px dashed rgba(205,67,255,.3);border-radius:12px;color:#cd43ffb3;cursor:pointer;transition:all .3s ease;font-family:var(--font-primary);font-size:1rem;letter-spacing:.5px}.upload-background-btn:hover{background:#cd43ff1a;border-color:#cd43ff80;color:#cd43ff;transform:translateY(-2px)}.upload-background-btn svg{opacity:.7}.background-preview{position:relative;width:100%;max-width:600px;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #00000080}.background-preview img{width:100%;height:300px;object-fit:cover;display:block}.change-background-btn{position:absolute;bottom:1rem;right:1rem;padding:10px 20px;background:#000c;border:1px solid rgba(205,67,255,.5);border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:.9rem;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.change-background-btn:hover{background:#cd43ff33;transform:translateY(-2px);box-shadow:0 4px 12px #cd43ff4d}.world-settings-page .form-actions.form-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:1rem!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;padding:.75rem 2rem!important;background:#07080af2!important;border-top:1px solid rgba(205,67,255,.3)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;z-index:100!important}.world-settings-page .form-actions .fantamaster-button{flex-shrink:0}.world-settings-page .form-actions .form-actions-spacer{flex:1!important}@media (max-width: 768px){.world-settings-container{padding:2rem 1.5rem}.settings-title{font-size:1.5rem}.form-actions{flex-direction:column}.form-actions button{width:100%}}.character-sheets-section{margin-top:2rem;padding:1.5rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px}.character-sheets-section label{font-size:1.1rem;font-weight:400;color:#cd43ff;margin-bottom:1rem}.character-sheets-actions{display:flex;flex-direction:column;gap:1rem}.character-sheets-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#cd43ff,#b035e8);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:400;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #cd43ff4d}.character-sheets-btn:hover:not(:disabled){background:linear-gradient(135deg,#b035e8,#9c27d4);transform:translateY(-2px);box-shadow:0 6px 20px #cd43ff66}.character-sheets-btn:disabled{opacity:.5;cursor:not-allowed}.character-sheets-btn svg{width:20px;height:20px}.character-sheets-description{font-size:.9rem;color:#ffffffb3;line-height:1.5;margin:0;text-align:center}.game-settings-page{min-height:100vh;width:100%;padding:2rem;background:#07080a;position:relative;animation:fadeIn .3s ease}.game-settings-container{width:100%;margin:0;padding:0 2rem}.game-settings-container>*{max-width:100%;background:#000c;border:.25px solid rgba(205,67,255,.3);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem 2rem}.settings-header{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.settings-title{font-family:var(--font-primary);font-size:2rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5);text-transform:uppercase;letter-spacing:2px;text-align:center}.settings-tab-toggler{display:flex;justify-content:center;margin-bottom:1.5rem}.settings-form{display:flex;flex-direction:column;gap:1rem}.game-settings-page .settings-toggles-section{display:flex;flex-direction:column;gap:20px;padding-top:8px;border-top:1px solid rgba(205,67,255,.1)}.game-settings-page .settings-toggle-row{display:grid;grid-template-columns:300px 1fr;align-items:center;gap:0 1rem}.game-settings-page .settings-toggle-row>label{font-family:var(--font-primary);color:#cd43ffcc;font-size:14px;letter-spacing:.5px;font-weight:400}.game-settings-page .settings-toggle-control{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.game-settings-page .settings-toggle-row.young-adult-setting label .young-adult-warning{display:block;margin-top:2px}.form-group label{font-family:var(--font-primary);font-size:.9rem;color:#cd43ffe6;font-weight:400;letter-spacing:.5px;text-transform:uppercase}.field-help{margin-left:8px;font-size:.75rem;color:#cd43ff;font-weight:400;text-transform:none;letter-spacing:normal;cursor:help;font-style:normal}.form-help{display:block;margin-top:4px;font-size:.75rem;color:#cd43ff;font-style:normal;font-weight:400}.young-adult-setting label{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.young-adult-setting label .young-adult-warning{width:100%}.young-adult-setting label .young-adult-badge{margin-left:4px;flex-shrink:0}.young-adult-warning{display:block;margin-bottom:8px;font-size:.8rem;color:#ff43cd;font-weight:400;text-shadow:0 0 10px rgba(255,67,205,.4)}.form-input,.form-textarea,.form-select{width:100%;padding:12px 16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s ease;outline:none}.form-input:focus,.form-textarea:focus,.form-select:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.form-input.readonly{background:#cd43ff05;color:#cd43ffb3;cursor:not-allowed}.form-textarea{resize:vertical;min-height:100px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23CD43FF' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.form-select option{background:#1a0a20;color:#fff}.banner-upload{display:flex;justify-content:center;padding:1rem}.upload-banner-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;width:100%;max-width:400px;height:200px;background:#cd43ff0d;border:2px dashed rgba(205,67,255,.3);border-radius:12px;color:#cd43ffb3;cursor:pointer;transition:all .3s ease;font-family:var(--font-primary);font-size:1rem;letter-spacing:.5px}.upload-banner-btn:hover{background:#cd43ff1a;border-color:#cd43ff80;color:#cd43ff;transform:translateY(-2px)}.upload-banner-btn svg{opacity:.7}.banner-preview{position:relative;width:100%;max-width:300px;aspect-ratio:3 / 4;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #00000080}.banner-preview img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}.change-banner-btn{position:absolute;bottom:1rem;right:1rem;padding:10px 20px;background:#000c;border:1px solid rgba(205,67,255,.5);border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:.9rem;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.change-banner-btn:hover{background:#cd43ff33;transform:translateY(-2px);box-shadow:0 4px 12px #cd43ff4d}.banner-actions{position:absolute;bottom:10px;right:10px;display:flex;gap:6px;align-items:center}.banner-actions .action-icon.edit-icon{padding:6px 10px;background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.banner-actions .action-icon.edit-icon:hover{background:#cd43ff4d;border-color:#cd43ff80;transform:scale(1.05)}.banner-actions .action-icon.edit-icon:disabled{opacity:.4;cursor:not-allowed}.banner-actions .trash-icon{background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.error-message{background:#ff43431a;border:1px solid rgba(255,67,67,.3);border-radius:8px;padding:12px 16px;margin-bottom:1.5rem;color:#ff4343;font-size:.9rem;display:flex;justify-content:space-between;align-items:center;animation:slideDown .3s ease}.error-message button{background:none;border:none;color:#ff4343;cursor:pointer;font-size:1.2rem;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.error-message button:hover{opacity:.7}.claude-select{font-weight:400;transition:all .3s ease}.claude-select option{background:#000000f2;color:#ffffffe6}.claude-tier-none{color:#cd43ff99}.claude-tier-pro{color:#cd43ffcc}.claude-tier-max5x{color:#cd43fff2}.claude-tier-max20x{color:#cd43ff;text-shadow:0 0 8px rgba(205,67,255,.3)}.game-settings-page .form-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:1rem!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;padding:1rem 2rem!important;background:#cd43ff0d!important;border-top:1px solid rgba(205,67,255,.3)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;z-index:100!important}.game-settings-page .form-actions .fantamaster-button{flex-shrink:0}.game-settings-page .form-actions .form-actions-spacer{flex:1}.settings-form{padding-bottom:60px}@media (max-width: 768px){.game-settings-container{padding:2rem 1.5rem}.settings-header{flex-direction:column;align-items:stretch;gap:1rem}.settings-title{font-size:1.5rem;text-align:center}.game-settings-page .form-actions{padding:.75rem 1rem}}.required-asterisk{color:#ff1493;font-weight:400;margin-left:2px}.content-page-layout{min-height:100vh;width:100%;padding:0 2rem 2rem;background:#07080a;position:relative;background-size:cover;background-position:top center;background-repeat:no-repeat;background-attachment:fixed}.content-page-layout.has-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#07080a80;pointer-events:none;z-index:0}.content-page-layout.has-banner>*{position:relative;z-index:1}.content-page-container{position:relative;max-width:1400px;margin:0 auto}.content-page-layout .sticky-nav-wrapper{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-left:-2rem;margin-right:-2rem;padding-left:2rem;padding-right:2rem;padding-bottom:0}.content-page-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin-left:-2rem;margin-right:-2rem;margin-bottom:24px;padding:1rem 4rem 16px;border-bottom:1px solid rgba(205,67,255,.2);position:relative;background:#07080a}.content-page-header .back-button{justify-self:start}.content-page-title-container{display:flex;align-items:center;justify-content:center;gap:12px}.content-page-title{font-family:var(--font-primary);font-size:2rem;font-weight:300;color:#cd43ff;margin:0;text-align:center;letter-spacing:1px;text-shadow:0 0 20px rgba(205,67,255,.5)}.content-page-title-link:hover{text-shadow:0 0 30px rgba(205,67,255,.8)}.content-page-header-right{display:flex;align-items:center;justify-content:flex-end;gap:8px}.content-page-tab-content{min-height:500px}.content-page-layout .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.content-page-layout .saving-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.content-page-layout .saving-overlay .unified-loading-state{min-height:auto;padding:40px;background:#140a1ee6;border:1px solid rgba(205,67,255,.3);border-radius:12px}.content-page-layout.viewport-lock{height:100vh;max-height:100vh;overflow:hidden;padding-bottom:0}.content-page-layout.viewport-lock>.content-page-container{height:100%;display:flex;flex-direction:column}.content-page-layout.viewport-lock .sticky-nav-wrapper{flex-shrink:0}@media (max-width: 768px){.content-page-layout{padding:0 .75rem .75rem}.content-page-layout .sticky-nav-wrapper{margin-left:-.75rem;margin-right:-.75rem;padding-left:.75rem;padding-right:.75rem}.content-page-header{margin-left:-.75rem;margin-right:-.75rem;padding:.75rem 1rem 12px;gap:12px}.content-page-title{font-size:1.25rem}.content-page-layout.viewport-lock{padding-bottom:0}}.translation-overlay{position:fixed;bottom:24px;right:24px;z-index:9000;display:flex;flex-direction:column;align-items:center;gap:6px}.translation-overlay__flag-widget{display:flex;align-items:center;gap:4px;padding:8px 12px;background:#000000d9;border:1px solid rgba(205,67,255,.3);border-radius:10px;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.translation-overlay__flag-widget:hover{background:#000000f2;border-color:#cd43ff99;box-shadow:0 0 12px #cd43ff4d;transform:scale(1.05)}.translation-overlay__flag-widget:active{transform:scale(.96)}.translation-overlay__flag-widget:disabled{cursor:default;transform:none}.translation-overlay__flag-widget--active{border-color:#cd43ff80;animation:overlay-translate-pulse 1.5s ease-in-out infinite}.translation-overlay__flag-widget--translated{border-color:#ff008066;box-shadow:0 0 8px #ff008026}.translation-overlay__flag-widget--translated:hover{border-color:#ff008099;box-shadow:0 0 12px #ff008040}@keyframes overlay-translate-pulse{0%,to{box-shadow:0 0 4px #cd43ff33}50%{box-shadow:0 0 16px #cd43ff80}}.translation-overlay__flag{font-size:20px;line-height:1}.translation-overlay__arrow{font-size:14px;color:#cd43ffb3;line-height:1;font-weight:600}.translation-overlay__lens-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:#000000d9;border:1px solid rgba(205,67,255,.2);border-radius:50%;color:#cd43ff99;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.translation-overlay__lens-toggle:hover{background:#000000f2;border-color:#cd43ff80;color:#cd43ffe6;box-shadow:0 0 8px #cd43ff33}.translation-overlay__lens-toggle--active{background:#cd43ff26;border-color:#cd43ff99;color:#cd43ff;box-shadow:0 0 12px #cd43ff4d}.translation-lens-active,.translation-lens-active *{cursor:crosshair!important}.translation-word-highlight{background:#cd43ff33;border-radius:2px;padding:0 1px;transition:background .1s ease}.translation-lens-tooltip{position:fixed;z-index:9500;pointer-events:none;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:6px 10px;color:#cd43ff;font-size:14px;font-family:var(--font-primary);max-width:300px;box-shadow:0 4px 12px #00000080,0 0 8px #cd43ff26}.translation-lens-tooltip__original{font-size:11px;color:#ffffff80;margin-bottom:2px}.translation-lens-tooltip__result{color:#cd43ff;font-weight:500}.translation-lens-tooltip__loading{color:#cd43ff80;font-style:italic;font-size:12px}@media (max-width: 768px){.translation-overlay{bottom:16px;right:16px}.translation-overlay__flag-widget{padding:6px 10px}.translation-overlay__flag{font-size:18px}.translation-overlay__lens-toggle{width:32px;height:32px}}.deduplicate-broom-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:4px;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:default;transition:all .2s ease}.deduplicate-broom-icon.clickable{cursor:pointer}.deduplicate-broom-icon.clickable:hover{background:#cd43ff26;color:#e056ff;transform:scale(1.1)}.deduplicate-broom-icon.clickable:active{transform:scale(.95)}.deduplicate-broom-icon.readonly{opacity:.4;cursor:not-allowed}.deduplicate-broom-icon:disabled{opacity:.4;cursor:not-allowed}.deduplicate-broom-icon.loading .broom-svg{animation:broom-sweep .6s ease-in-out infinite}@keyframes broom-sweep{0%{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}to{transform:rotate(0)}}.deduplicate-broom-icon .broom-svg{width:20px;height:20px}.snapshot-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:450px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.snapshot-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.snapshot-modal .modal-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;margin:0;display:flex;align-items:center;gap:10px;text-shadow:0 0 20px rgba(205,67,255,.5)}.snapshot-header-icon{width:22px;height:22px}.snapshot-modal-content{padding:24px;display:flex;flex-direction:column;align-items:center;gap:16px}.snapshot-modal .description-text{font-family:var(--font-primary);font-size:14px;color:#ffffffd9;line-height:1.6;text-align:center;margin:0}.epic-badge{display:flex;align-items:center;gap:8px;font-family:var(--font-primary);font-size:12px;font-weight:400;color:#fcd34d;text-transform:uppercase;letter-spacing:1px}.epic-star-icon{width:16px;height:16px}.upgrade-prompt{font-family:var(--font-primary);font-size:13px;color:#cd43ffb3;text-align:center;margin:0}.snapshot-info-box{width:100%;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:16px}.snapshot-info-box.empty{display:flex;align-items:center;justify-content:center;padding:20px}.no-snapshot-text{font-family:var(--font-primary);font-size:13px;color:#cd43ff80;font-style:normal}.snapshot-info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.snapshot-info-row:first-child{padding-top:0}.snapshot-info-row:last-child{padding-bottom:0}.snapshot-info-row:not(:last-child){border-bottom:1px solid rgba(205,67,255,.1)}.snapshot-info-label{font-family:var(--font-primary);font-size:12px;color:#cd43ffb3;text-transform:uppercase;letter-spacing:.5px}.snapshot-info-value{font-family:var(--font-primary);font-size:14px;color:#cd43ff}.snapshot-modal .modal-footer{display:flex;justify-content:center;gap:12px;padding:0;margin-top:8px}.snapshot-modal .modal-footer.centered{justify-content:center}.snapshot-button{display:inline-flex;align-items:center;justify-content:center;padding:4px;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:pointer;transition:all .2s ease}.snapshot-button-medium{width:32px;height:32px}.snapshot-button-small{width:24px;height:24px}.snapshot-button:hover{background:#cd43ff26;color:#d75fff;transform:scale(1.1)}.snapshot-button:active{transform:scale(.95)}.snapshot-button-medium svg{width:20px;height:20px}.snapshot-button-small svg{width:16px;height:16px}.sanctum-level-card{background:#0009;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:.75rem 1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;cursor:pointer;width:100%}.sanctum-level-card:hover{background:#cd43ff0d;border-color:#cd43ff66;transform:translateY(-2px);box-shadow:0 4px 20px #cd43ff33}.sanctum-level-card.selected{background:#cd43ff1a;border-color:#cd43ff99;box-shadow:0 0 15px #cd43ff40}.sanctum-level-card.type-top{border-left:4px solid #FF88FF}.sanctum-level-card.type-medium{border-left:4px solid #E066FF}.sanctum-level-card.type-channel{border-left:4px solid #CD43FF}.sanctum-level-card.type-channel:hover{background:#cd43ff1a;transform:translateY(-3px);box-shadow:0 6px 24px #cd43ff4d}.sanctum-level-card.type-channel:active{transform:translateY(-1px)}.sanctum-level-depth-0{margin-left:0}.sanctum-level-depth-1{margin-left:32px}.sanctum-level-depth-2{margin-left:64px}.sanctum-level-top-row{display:flex;align-items:center;gap:1rem}.sanctum-level-name{color:#cd43ff;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;margin:0;display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.sanctum-level-name span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sanctum-collapse-btn{background:none;border:none;color:#cd43ffb3;font-size:.8rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.sanctum-collapse-btn:hover{color:#cd43ff;transform:scale(1.2)}.sanctum-collapse-chevron{transition:transform .2s ease;transform:rotate(0)}.sanctum-collapse-chevron.expanded{transform:rotate(90deg)}.sanctum-level-bottom-row{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.sanctum-level-description{color:#ffffffb3;font-size:.9rem;margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sanctum-level-badges{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.sanctum-level-count{font-size:11px;color:#cd43ff99;padding:2px 8px;background:#cd43ff14;border-radius:10px;flex-shrink:0}.sanctum-level-shared-badge{font-size:10px;padding:2px 8px;border-radius:10px;background:#cd43ff14;color:#cd43ffb3;border:.5px solid rgba(205,67,255,.2);flex-shrink:0;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.sanctum-level-controls{display:flex;gap:.5rem;align-items:center;opacity:0;transition:opacity .2s ease;flex-shrink:0}.sanctum-level-card:hover .sanctum-level-controls{opacity:1}.sanctum-level-btn{width:32px;height:32px;min-width:32px;min-height:32px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:14px;padding:0;flex-shrink:0}.sanctum-level-btn:hover{background:#cd43ff33;transform:scale(1.1)}.sanctum-level-btn.delete:hover{border-color:#ff43cdb3;background:#ff43cd1a;color:#ff43cd}.sanctum-notes-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:0;padding:0 4px}.sanctum-note-card{position:relative;display:flex;gap:16px;padding:16px;background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px;transition:all .2s ease;margin-bottom:12px}.sanctum-note-card:hover{background:#00000080;border-color:#cd43ff4d}.sanctum-note-actions{position:absolute;top:12px;right:12px;display:flex;gap:6px;z-index:1;opacity:0;transition:opacity .2s ease}.sanctum-note-card:hover .sanctum-note-actions{opacity:1}.sanctum-load-more{text-align:center;padding:8px}.sanctum-load-more-btn{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffb3;cursor:pointer;padding:6px 20px;font-size:12px;transition:all .2s ease}.sanctum-load-more-btn:hover{border-color:#cd43ff;color:#cd43ff;background:#cd43ff14}.sanctum-notes-empty{text-align:center;padding:3rem 1rem;color:#fff6;font-size:14px}.sanctum-notes-empty-icon{font-size:36px;margin-bottom:12px}@media (max-width: 768px){.sanctum-note-card{flex-direction:column;gap:12px;padding-top:48px}.sanctum-note-actions{top:8px;right:8px}}.sanctum-invited-container{display:flex;flex-direction:column;gap:8px;padding:12px 0}.sanctum-invited-group{background:#0006;border:.25px solid rgba(205,67,255,.15);border-radius:12px;overflow:hidden}.sanctum-invited-owner-header{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background .2s ease}.sanctum-invited-owner-header:hover{background:#cd43ff0d}.sanctum-invited-owner-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#cd43ff26;display:flex;align-items:center;justify-content:center}.sanctum-invited-owner-avatar img{width:100%;height:100%;object-fit:cover}.sanctum-invited-avatar-placeholder{color:#cd43ff;font-size:14px;font-weight:400;font-family:var(--font-primary)}.sanctum-invited-owner-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sanctum-invited-owner-name{font-size:14px;font-weight:400;color:#fffffff2;font-family:var(--font-primary);letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sanctum-invited-level-count{font-size:11px;color:#cd43ff80}.sanctum-invited-chevron{color:#cd43ff80;transition:transform .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center}.sanctum-invited-chevron.expanded{transform:rotate(90deg)}.sanctum-invited-chevron:not(.expanded){transform:rotate(0)}.sanctum-invited-levels{border-top:1px solid rgba(205,67,255,.08);padding:4px 0}.sanctum-invited-level-row{display:flex;align-items:center;gap:10px;padding:10px 16px 10px 56px;transition:background .2s ease}.sanctum-invited-level-row[role=button]{cursor:pointer}.sanctum-invited-level-row[role=button]:hover{background:#cd43ff0d}.sanctum-invited-level-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:14px;height:14px}.sanctum-invited-level-name{flex:1;font-size:13px;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sanctum-invited-access-badge{font-size:10px;padding:2px 8px;border-radius:10px;flex-shrink:0;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.sanctum-invited-access-badge.view-only{background:#cd43ff14;color:#cd43ff99;border:.5px solid rgba(205,67,255,.15)}.sanctum-invited-access-badge.can-post{background:#43ff9714;color:#43ff97b3;border:.5px solid rgba(67,255,151,.2)}.sanctum-invited-empty{text-align:center;padding:3rem 1rem;color:#fff6;font-size:14px}.sanctum-invited-empty-icon{font-size:36px;margin-bottom:12px}.permission-selector-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:480px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.permission-selector-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.permission-selector-modal .modal-title{font-family:var(--font-primary);font-size:1.15rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.permission-selector-modal .search-container{padding:16px 24px 12px;border-bottom:1px solid rgba(205,67,255,.1)}.permission-selector-modal .search-input{width:100%;padding:10px 16px;font-size:.95rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;transition:all .3s ease;outline:none}.permission-selector-modal .search-input::placeholder{color:#fff6}.permission-selector-modal .search-input:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.permission-selector-modal .quick-actions{display:flex;justify-content:center;gap:8px;padding:12px 24px;border-bottom:1px solid rgba(205,67,255,.1);flex-wrap:wrap}.permission-selector-modal .quick-action-btn{padding:6px 12px;font-size:.8rem;font-weight:500;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:6px;color:#cd43ffe6;cursor:pointer;transition:all .2s ease}.permission-selector-modal .quick-action-btn:hover{background:#cd43ff33;border-color:#cd43ff66}.permission-selector-modal .item-list{flex:1;overflow-y:auto;padding:8px 0;min-height:200px;max-height:400px}.permission-selector-modal .item-row{display:flex;align-items:center;gap:12px;padding:12px 24px;cursor:pointer;transition:background .2s ease}.permission-selector-modal .item-row:hover{background:#cd43ff14}.permission-selector-modal .item-row.selected{background:#cd43ff26}.permission-selector-modal .item-checkbox{width:20px;height:20px;border:2px solid rgba(205,67,255,.4);border-radius:4px;background:transparent;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.permission-selector-modal .item-row.selected .item-checkbox{background:#cd43ff;border-color:#cd43ff}.permission-selector-modal .item-checkbox .check-icon{color:#fff;font-size:14px;display:none}.permission-selector-modal .item-row.selected .item-checkbox .check-icon{display:block}.permission-selector-modal .item-avatar{width:40px;height:40px;border-radius:50%;background:#cd43ff33;border:2px solid rgba(205,67,255,.3);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.permission-selector-modal .item-avatar img{width:100%;height:100%;object-fit:cover}.permission-selector-modal .item-avatar .avatar-placeholder{font-size:1.1rem;color:#cd43ffb3}.permission-selector-modal .item-info{flex:1;min-width:0}.permission-selector-modal .item-name{font-size:.95rem;font-weight:500;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permission-selector-modal .item-subtitle{font-size:.8rem;color:#cd43ff99;margin-top:2px}.permission-selector-modal .role-badge{font-size:.7rem;font-weight:400;padding:3px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.permission-selector-modal .role-badge.player{background:#4ade8026;color:#4ade80;border:1px solid rgba(74,222,128,.3)}.permission-selector-modal .role-badge.spectator{background:#cd43ff1a;color:#cd43ffcc;border:1px solid rgba(205,67,255,.25)}.permission-selector-modal .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;text-align:center;min-height:200px;height:100%;width:100%}.permission-selector-modal .empty-state-icon{font-size:2.5rem;color:#cd43ff4d;margin-bottom:16px}.permission-selector-modal .empty-state-text{font-size:.95rem;color:#ffffff80}.permission-selector-modal .loading-state{display:flex;align-items:center;justify-content:center;padding:60px 24px}.permission-selector-modal .selected-count{padding:8px 24px;font-size:.85rem;color:#cd43ffcc;border-top:1px solid rgba(205,67,255,.1);background:#cd43ff08}.permission-selector-modal .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}@media (max-width: 480px){.permission-selector-modal{width:95%;max-height:90vh}.permission-selector-modal .modal-header,.permission-selector-modal .modal-footer{padding:16px}.permission-selector-modal .search-container,.permission-selector-modal .quick-actions,.permission-selector-modal .item-row{padding-left:16px;padding-right:16px}}.story-guidelines-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:560px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.story-guidelines-modal .modal-header{display:flex;justify-content:center;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d;position:relative}.story-guidelines-modal .modal-header-center{display:flex;flex-direction:column;align-items:center;text-align:center}.story-guidelines-modal .modal-title{font-family:var(--font-primary);font-size:1.15rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.story-guidelines-modal .modal-subtitle{font-size:.8rem;color:#fff6;font-style:normal;margin-top:4px}.story-guidelines-modal .modal-close-btn{position:absolute;right:16px;top:50%;transform:translateY(-50%);padding:4px 8px;font-size:16px;min-height:auto}.story-guidelines-modal .modal-close-btn:hover{transform:translateY(-50%)!important}.story-guidelines-modal-content{flex:1;overflow-y:auto;padding:20px 24px}.story-guidelines-modal .form-group{margin-bottom:20px}.story-guidelines-modal .form-group.indented{margin-left:24px;padding-left:16px;border-left:2px solid rgba(205,67,255,.2)}.story-guidelines-modal .form-group.indented-2{margin-left:48px;padding-left:16px;border-left:2px solid rgba(205,67,255,.15)}.story-guidelines-modal .form-label{display:block;font-size:.9rem;font-weight:500;color:#ffffffe6;margin-bottom:8px}.story-guidelines-modal .form-label-hint{font-size:.8rem;font-weight:400;color:#fff6;margin-left:8px}.story-guidelines-modal .form-input{width:100%;padding:10px 14px;font-size:.9rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;transition:all .3s ease;outline:none;box-sizing:border-box}.story-guidelines-modal .form-input::placeholder{color:#ffffff59}.story-guidelines-modal .form-input:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.story-guidelines-modal .form-input:disabled{opacity:.5;cursor:not-allowed}.story-guidelines-modal .form-textarea{width:100%;padding:12px 14px;font-size:.9rem;font-family:inherit;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;transition:all .3s ease;outline:none;resize:vertical;min-height:80px;box-sizing:border-box}.story-guidelines-modal .form-textarea::placeholder{color:#ffffff59}.story-guidelines-modal .form-textarea:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.story-guidelines-modal .form-textarea:disabled{opacity:.5;cursor:not-allowed}.story-guidelines-modal .radio-group{display:flex;flex-direction:column;gap:10px}.story-guidelines-modal .radio-option{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px 12px;border-radius:8px;transition:background .2s ease}.story-guidelines-modal .radio-option:hover{background:#cd43ff14}.story-guidelines-modal .radio-option input[type=radio]{width:18px;height:18px;accent-color:#CD43FF;cursor:pointer}.story-guidelines-modal .radio-option span{font-size:.9rem;color:#ffffffd9}.story-guidelines-modal .form-divider{height:1px;background:linear-gradient(to right,transparent,rgba(205,67,255,.3),transparent);margin:24px 0}.story-guidelines-modal .error-message{background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:12px 16px;margin-bottom:20px;color:#ef4444;font-size:.9rem}.story-guidelines-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.story-guidelines-modal .modal-footer.modal-footer-centered{justify-content:center}.story-guidelines-modal .custom-dropdown{width:100%}@media (max-width: 600px){.story-guidelines-modal{width:95%;max-height:90vh}.story-guidelines-modal .modal-header,.story-guidelines-modal .modal-footer,.story-guidelines-modal-content{padding:16px}.story-guidelines-modal .form-group.indented{margin-left:16px;padding-left:12px}.story-guidelines-modal .form-group.indented-2{margin-left:32px;padding-left:12px}}.story-guidelines-modal .ai-generated-badge{display:inline-block;font-size:.7rem;font-weight:500;color:#cd43ffcc;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:2px 6px;margin-left:8px;text-transform:uppercase;letter-spacing:.5px}.story-guidelines-modal .theme-inherit-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}.story-guidelines-modal .theme-inherit-section{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.story-guidelines-modal .checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:#ffffffd9}.story-guidelines-modal .checkbox-label-inline{display:flex;flex-direction:row;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:#ffffffd9}.story-guidelines-modal .checkbox-label input[type=checkbox],.story-guidelines-modal .checkbox-label-inline input[type=checkbox]{width:18px;height:18px;accent-color:#CD43FF;cursor:pointer;flex-shrink:0}.story-guidelines-modal .theme-inherit-hint{font-size:.8rem;color:#cd43ffb3;font-style:normal}.story-guidelines-modal .theme-inherit-value{font-size:.85rem;color:#cd43ffcc;font-style:normal;padding-left:26px;line-height:1.4}.story-guidelines-modal .theme-inherit-value.muted,.story-guidelines-modal .theme-inherit-hint.muted{color:#fff6}.alphabet-filter{display:flex;align-items:center;gap:.2rem;background:#0003;border-radius:6px;padding:3px;border:1px solid rgba(205,67,255,.1)}.alphabet-letters{display:flex;gap:.2rem;flex:1;justify-content:center;flex-wrap:wrap}.alphabet-letter{padding:4px 6px;background:transparent;border:none;color:#cd43ff73;font-family:var(--font-primary);font-size:.7rem;cursor:pointer;border-radius:4px;transition:all .2s ease;letter-spacing:.3px;min-width:24px;text-align:center}.alphabet-letter:first-child{padding:4px 10px;min-width:auto}.alphabet-letter:hover{background:#cd43ff14;color:#cd43ffb3}.alphabet-letter.active{background:#cd43ff26;color:#cd43ff;box-shadow:0 0 8px #cd43ff26}.alphabet-entity-divider{width:1px;height:24px;background:#cd43ff1a;margin:0 .5rem;flex-shrink:0}.entity-toggles{display:flex;gap:4px;flex-shrink:0}.entity-toggle{padding:4px 10px;background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#fff6;font-family:var(--font-primary);font-weight:400;font-size:11px;letter-spacing:.5px;cursor:pointer;transition:all .2s ease}.entity-toggle.active{background:#cd43ff26;color:#cd43ff;border-color:#cd43ff66;text-shadow:0 0 8px rgba(205,67,255,.3)}.entity-toggle[data-id=official].active{background:#ff43cd26;color:#ff43cd;border-color:#ff43cd66;text-shadow:0 0 8px rgba(255,67,205,.3)}.entity-toggle:hover:not(.active){border-color:#cd43ff4d;color:#ffffffb3}.world-navigator{display:flex;flex-direction:column;gap:.75rem;margin-bottom:0}.world-navigator .main-tabs{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;position:relative;overflow:visible}.world-navigator .main-tabs-left{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.world-navigator .main-tabs-center{display:flex;align-items:center;justify-content:center;gap:.5rem;flex:0 0 auto}.world-navigator .main-tabs-right{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex:1;min-width:0}.world-navigator .main-tab{background:transparent;border:none;border-bottom:1px solid transparent;padding:.5rem 1.5rem;color:#cd43ff80;font-family:var(--font-primary);font-size:.95rem;cursor:pointer;transition:all .2s ease;letter-spacing:.5px;white-space:nowrap}.world-navigator .main-tab:hover{color:#cd43ffcc;border-bottom-color:#cd43ff4d}.world-navigator .main-tab.active{color:#cd43ff;border-bottom-color:#cd43ff}.world-navigator .main-tab.tab-locked{color:#cd43ff33;cursor:pointer}.world-navigator .main-tab.tab-locked:hover{color:#cd43ff4d;border-bottom-color:transparent}.world-navigator .delete-all-btn{background:#ff43cd1a;border:1px solid rgba(255,67,205,.4);border-radius:6px;color:#ff43cd;font-family:var(--font-primary);font-size:.85rem;padding:6px 16px;cursor:pointer;transition:all .2s ease;letter-spacing:.3px;white-space:nowrap}.world-navigator .delete-all-btn:hover{background:#ff43cd40;border-color:#ff43cd;box-shadow:0 0 15px #ff43cd80;transform:scale(1.05)}.world-navigator .section-action-btn{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ff;font-family:var(--font-primary);font-size:.85rem;padding:6px 16px;cursor:pointer;transition:all .2s ease;letter-spacing:.3px;white-space:nowrap}.world-navigator .section-action-btn:hover{background:#cd43ff4d;border-color:#cd43ff;box-shadow:0 0 15px #cd43ff80;transform:scale(1.05)}.fetch-world-archives-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080,0 0 60px #cd43ff1a}.fetch-world-archives-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2)}.fetch-world-archives-modal .modal-header h2{font-family:var(--font-primary);font-size:20px;font-weight:400;color:#cd43ff;margin:0;letter-spacing:.5px}.fetch-world-archives-modal .modal-description{font-family:var(--font-primary);font-size:13px;color:#ffffffb3;padding:16px 24px;margin:0;line-height:1.6;border-bottom:1px solid rgba(205,67,255,.1)}.fetch-world-archives-modal .modal-error{background:#ff434326;border:1px solid rgba(255,67,67,.4);color:#ff6b6b;padding:12px 24px;font-size:13px}.fetch-world-archives-modal .modal-actions-top{display:flex;align-items:center;gap:12px;padding:12px 24px;border-bottom:1px solid rgba(205,67,255,.1)}.fetch-world-archives-modal .selection-count{font-family:var(--font-primary);font-size:12px;color:#cd43ffb3;margin-left:auto}.fetch-world-archives-modal .archives-list{flex:1;overflow-y:auto;padding:16px 24px;display:flex;flex-direction:column;gap:8px;min-height:200px;max-height:400px}.fetch-world-archives-modal .archives-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.fetch-world-archives-modal .no-archives{display:flex;align-items:center;justify-content:center;min-height:150px;font-family:var(--font-primary);font-size:13px;color:#cd43ff80;text-align:center;padding:20px}.fetch-world-archives-modal .archive-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:6px;cursor:pointer;transition:all .2s ease}.fetch-world-archives-modal .archive-item:hover{background:#cd43ff1a;border-color:#cd43ff66}.fetch-world-archives-modal .archive-item.selected{background:#cd43ff26;border-color:#cd43ff}.fetch-world-archives-modal .archive-checkbox{width:24px;height:24px;border:2px solid rgba(205,67,255,.5);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:400;color:#cd43ff;flex-shrink:0;transition:all .2s ease}.fetch-world-archives-modal .archive-item.selected .archive-checkbox{background:#cd43ff;border-color:#cd43ff;color:#fff}.fetch-world-archives-modal .archive-icon-container{font-size:20px;flex-shrink:0;width:28px;text-align:center}.fetch-world-archives-modal .archive-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.fetch-world-archives-modal .archive-name{font-family:var(--font-primary);font-size:14px;font-weight:500;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fetch-world-archives-modal .archive-description{font-size:12px;color:#ffffff80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fetch-world-archives-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2)}.dedup-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:dedupFadeIn .2s ease}.dedup-modal-content{background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:12px;width:90%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;animation:dedupSlideUp .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);outline:none}.dedup-modal-header{padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d;display:flex;align-items:center;justify-content:space-between}.dedup-modal-header-left{display:flex;align-items:center;gap:12px}.dedup-modal-title{color:#cd43ff;font-family:var(--font-primary);font-size:1.25rem;font-weight:400;margin:0;letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.5)}.dedup-modal-filter-badge{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:16px;padding:2px 10px;font-size:12px;color:#cd43ffcc;letter-spacing:.5px}.dedup-modal-body{padding:24px;overflow-y:auto;flex:1}.dedup-modal-error{background:#f871711a;border:1px solid rgba(248,113,113,.4);border-radius:8px;padding:12px 16px;margin-bottom:16px;color:#f87171;font-size:14px}.dedup-setup-section{display:flex;flex-direction:column;align-items:flex-start}.dedup-setup-section+.dedup-setup-section{margin-top:28px;padding-top:24px;border-top:1px solid rgba(205,67,255,.1)}.dedup-setup-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}.dedup-setup-description{color:#ffffffb3;font-size:14px;margin:0 0 20px;line-height:1.5}.dedup-setup-group-note{color:#cd43ff99;font-size:13px;margin-top:-12px}.dedup-setup-discrepancies{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;width:100%}.dedup-discrepancy-row{display:flex;align-items:center;gap:8px}.dedup-discrepancy-dropdowns{display:flex;align-items:center;gap:8px;flex:1}.dedup-discrepancy-dropdown{flex:1;min-width:0}.dedup-discrepancy-arrow{color:#cd43ff99;font-size:16px;flex-shrink:0}.dedup-discrepancy-remove{background:none;border:none;color:#ff43cd99;font-size:20px;cursor:pointer;padding:0 4px;line-height:1;flex-shrink:0;transition:color .2s ease}.dedup-discrepancy-remove:hover{color:#ff43cd}.dedup-setup-history-btn.fantamaster-button.primary{animation:none;box-shadow:none}.dedup-setup-history-btn.fantamaster-button.primary:hover:not(:disabled){box-shadow:none}.dedup-modal-running{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0;gap:16px}.dedup-modal-spinner{width:40px;height:40px;border:3px solid rgba(205,67,255,.2);border-top-color:#cd43ff;border-radius:50%;animation:dedupSpin .8s linear infinite}.dedup-modal-running-text{color:#ffffffb3;font-size:14px;margin:0}.dedup-review-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px}.dedup-review-summary{color:#ffffffb3;font-size:13px;margin:0;line-height:1.5}.dedup-review-toggles{display:flex;gap:4px}.dedup-review-toggle{background:none;border:1px solid rgba(205,67,255,.25);border-radius:8px;color:#cd43ffb3;font-family:var(--font-primary);font-size:11px;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;padding:4px 10px;transition:all .2s ease}.dedup-review-toggle:hover:not(:disabled){color:#cd43ff;border-color:#cd43ff80;background:#cd43ff14}.dedup-review-toggle:disabled{opacity:.3;cursor:not-allowed}.dedup-review-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.dedup-candidate-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid rgba(205,67,255,.2);border-radius:8px;background:#0000004d;transition:all .2s ease}.dedup-candidate-card:hover{border-color:#cd43ff66}.dedup-candidate-checked{border-color:#cd43ff66;background:#cd43ff0d}.dedup-candidate-checked:hover{border-color:#cd43ff99;background:#cd43ff14}.dedup-candidate-content{flex:1;min-width:0}.dedup-candidate-avatar-pair{display:flex;justify-content:space-around;margin-bottom:10px}.dedup-candidate-names-row{display:flex;gap:12px;margin-bottom:6px}.dedup-entry-name{flex:1;font-family:var(--font-primary);font-size:12px;font-weight:400;letter-spacing:.5px;cursor:pointer;padding:4px 8px;border-radius:6px;border:1px solid transparent;transition:all .2s ease}.dedup-entry-name-selectable{color:#fff9}.dedup-entry-name-selectable:hover{color:#cd43ffcc;border-color:#cd43ff40;background:#cd43ff0a}.dedup-entry-name-selected{color:#cd43fff2;border-color:#cd43ff66;background:#cd43ff14}.dedup-entry-name-selected:hover{border-color:#cd43ff8c;background:#cd43ff1a}.dedup-candidate-descriptions{display:flex;gap:12px;margin-bottom:8px}.dedup-candidate-desc-col{flex:1;display:flex;flex-direction:column;gap:3px}.dedup-candidate-desc{color:#ffffff8c;font-size:12px;line-height:1.4}.dedup-candidate-synopsis{color:#ffffff73;font-size:11px;font-style:normal;line-height:1.4}.dedup-candidate-avatar-wrapper{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid rgba(205,67,255,.2);transition:all .2s ease;flex-shrink:0}.dedup-candidate-avatar-wrapper.dedup-avatar-selectable{cursor:pointer;border-color:#cd43ff40}.dedup-candidate-avatar-wrapper.dedup-avatar-selectable:hover{border-color:#cd43ff99;box-shadow:0 0 12px #cd43ff4d}.dedup-candidate-avatar-wrapper.dedup-avatar-selected{border-color:#cd43ff;box-shadow:0 0 16px #cd43ff80,0 0 4px #cd43ffcc}.dedup-candidate-avatar-wrapper.dedup-avatar-empty{border-style:dashed;border-color:#ffffff26;background:#0003}.dedup-candidate-avatar{width:100%;height:100%;object-fit:cover}.dedup-candidate-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff3;font-size:18px;font-family:var(--font-primary)}.dedup-candidate-reason-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.dedup-candidate-reason{color:#cd43ff99;font-size:11px;font-style:normal;margin:0}.dedup-candidate-names{display:flex;align-items:center;padding-top:8px;border-top:1px solid rgba(205,67,255,.1)}.dedup-candidate-survivor{flex:1;font-family:var(--font-primary);color:#cd43ffe6;font-weight:400;font-size:12px;letter-spacing:.5px}.dedup-candidate-arrow{flex-shrink:0;color:#cd43ff80;font-size:14px;padding:0 12px}.dedup-candidate-merged{flex:1;text-align:right;font-family:var(--font-primary);color:#ff43cdb3;font-weight:500;font-size:12px;letter-spacing:.5px;text-decoration:line-through;text-decoration-color:#ff43cd59}.dedup-candidate-flagged{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:12px;padding:1px 8px;font-family:var(--font-primary);font-size:9px;color:#cd43ffcc;text-transform:uppercase;letter-spacing:.5px}.dedup-candidate-type-badge{background:#43aaff26;border:1px solid rgba(67,170,255,.4);border-radius:12px;padding:1px 6px;font-family:var(--font-primary);font-size:8px;color:#43aaffcc;text-transform:uppercase;letter-spacing:.5px;margin-left:6px}.dedup-review-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid rgba(205,67,255,.15)}.dedup-modal-complete{display:flex;flex-direction:column;align-items:center;padding:32px 0;text-align:center}.dedup-modal-complete-title{font-family:var(--font-primary);color:#cd43ff;font-size:18px;font-weight:400;margin:0 0 20px;text-shadow:0 0 20px rgba(205,67,255,.5)}.dedup-modal-complete-stats{margin-bottom:24px}.dedup-modal-stat-merged{color:#cd43ff;font-size:14px;margin:4px 0}.dedup-modal-stat-rejected{color:#fff9;font-size:14px;margin:4px 0}.dedup-modal-stat-none{color:#ffffff80;font-size:14px;margin:4px 0}.dedup-history-back{background:none;border:none;color:#cd43ffb3;font-size:13px;cursor:pointer;padding:0;margin-bottom:20px;transition:color .2s ease}.dedup-history-back:hover{color:#cd43ff}.dedup-history-section-title{font-family:var(--font-primary);color:#cd43ff;font-size:15px;font-weight:400;margin:0 0 12px;letter-spacing:.5px;text-shadow:0 0 15px rgba(205,67,255,.3)}.dedup-history-empty{color:#fff6;font-size:13px;font-style:normal;margin:0 0 24px}.dedup-history-list{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.merge-history-search-wrapper{margin-bottom:16px}.merge-history-search{width:100%;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:8px 12px;color:#ffffffe6;font-family:var(--font-primary);font-size:13px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.merge-history-search::placeholder{color:#ffffff59}.merge-history-search:focus{border-color:#cd43ff99;box-shadow:0 0 15px #cd43ff33}.merge-history-meta-row{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:6px;gap:8px}.merge-history-meta-left{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.merge-history-meta-right{flex-shrink:0}.merge-history-category{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:12px;padding:1px 8px;font-family:var(--font-primary);font-size:9px;color:#cd43ffcc;text-transform:uppercase;letter-spacing:.5px}.merge-history-separator{color:#ffffff40;font-size:10px}.merge-history-date{color:#fff6;font-size:11px}.merge-history-trigger{color:#ffffff80;font-size:11px}.dedup-candidate-card.merge-history-undone{border-color:#ff43cd66;background:#ff43cd0d;opacity:.7}.dedup-candidate-card.merge-history-undone:hover{border-color:#ff43cd80}.merge-history-undone-label{background:#ff43cd26;border:1px solid rgba(255,67,205,.4);border-radius:12px;padding:1px 8px;font-family:var(--font-primary);font-size:9px;color:#ff43cdcc;text-transform:uppercase;letter-spacing:.5px}.merge-history-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:4px;border:none;border-radius:6px;background:transparent;cursor:pointer;transition:all .2s ease}.merge-history-nav-btn:hover{background:#cd43ff26;transform:scale(1.1)}.merge-history-nav-btn:active{transform:scale(.95)}.merge-history-bottom-actions{margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.merge-history-bottom-right{display:flex;align-items:center;gap:8px}.dedup-group-section-divider{border:none;border-top:1px solid rgba(205,67,255,.15);margin:20px 0 16px}.dedup-group-section-heading{font-family:var(--font-primary);color:#cd43ff;font-size:14px;font-weight:400;margin:0 0 8px;letter-spacing:.5px;text-shadow:0 0 15px rgba(205,67,255,.3)}.dedup-group-name{font-weight:500;color:#ffffffe6;font-size:.95rem}.dedup-group-name-flagged{color:#ff43cd}.dedup-group-namebank-toggle{display:flex;align-items:center;gap:8px;color:#ffffffb3;font-size:.85rem;margin:12px 0 0;cursor:pointer}@keyframes dedupFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dedupSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes dedupSpin{to{transform:rotate(360deg)}}.tab-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;min-height:200px}.tab-error-icon{font-size:48px;margin-bottom:16px}.tab-error-title{font-family:var(--font-primary);font-size:18px;font-weight:400;color:#e0e0e0;margin:0 0 12px}.tab-error-message{font-size:14px;color:#888;margin:0 0 24px;max-width:400px}.tab-error-retry-btn{background:linear-gradient(135deg,#6b4c9a,#4a3570);color:#fff;border:none;padding:10px 24px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.tab-error-retry-btn:hover{background:linear-gradient(135deg,#7d5cb0,#5a4580);transform:translateY(-1px)}.tab-error-retry-btn:active{transform:translateY(0)}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.7}}.skeleton-animate .skeleton-text,.skeleton-animate .skeleton-avatar,.skeleton-animate .skeleton-card-image,.skeleton-animate .skeleton-tree-icon{animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-text{background:linear-gradient(90deg,#2a2a3a,#3a3a4a,#2a2a3a);background-size:200% 100%;border-radius:4px;height:14px}.skeleton-text-title{width:60%;height:16px;margin-bottom:8px}.skeleton-text-subtitle{width:40%;height:12px}.skeleton-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(90deg,#2a2a3a,#3a3a4a,#2a2a3a);background-size:200% 100%;flex-shrink:0}.skeleton-list{display:flex;flex-direction:column;gap:12px;padding:16px}.skeleton-list-item{display:flex;align-items:center;gap:12px;padding:12px;background:#1e1e2880;border-radius:8px}.skeleton-text-group{flex:1;display:flex;flex-direction:column;gap:4px}.skeleton-grid{display:grid;gap:16px;padding:16px}.skeleton-card{background:#1e1e2880;border-radius:8px;overflow:hidden}.skeleton-card-image{width:100%;height:120px;background:linear-gradient(90deg,#2a2a3a,#3a3a4a,#2a2a3a);background-size:200% 100%}.skeleton-card-content{padding:12px}.skeleton-tree{display:flex;flex-direction:column;gap:8px;padding:16px}.skeleton-tree-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#1e1e284d;border-radius:6px}.skeleton-tree-icon{width:20px;height:20px;border-radius:4px;background:linear-gradient(90deg,#2a2a3a,#3a3a4a,#2a2a3a);background-size:200% 100%;flex-shrink:0}.skeleton-table{display:flex;flex-direction:column;gap:4px;padding:16px}.skeleton-table-header{display:flex;gap:16px;padding:12px 16px;background:#28283280;border-radius:6px 6px 0 0}.skeleton-table-row{display:flex;gap:16px;padding:12px 16px;background:#1e1e284d}.skeleton-table-row:last-child{border-radius:0 0 6px 6px}.skeleton-table-cell{height:14px;background:linear-gradient(90deg,#2a2a3a,#3a3a4a,#2a2a3a);background-size:200% 100%;border-radius:4px}.skeleton-table-cell-sm{width:60px}.skeleton-table-cell-md{width:120px}.skeleton-table-cell-lg{width:200px;flex:1}.world-welcome-tab{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px;min-height:400px}.world-welcome-tab .read-first-archives,.world-welcome-tab .world-settings-content,.world-welcome-tab .world-welcome-loading{width:100%;align-self:stretch}.world-welcome-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.read-first-archives{display:flex;flex-direction:column;gap:12px}.read-first-archive{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;cursor:pointer;transition:all .2s ease}.read-first-archive:hover{background:#cd43ff1a;border-color:#cd43ff;transform:translate(4px)}.archive-icon{font-size:24px;flex-shrink:0}.archive-content{flex:1;min-width:0}.archive-name{font-family:var(--font-primary);font-size:16px;font-weight:400;color:#cd43ff;margin:0 0 4px}.archive-description{font-size:13px;color:#fff9;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.archive-arrow{font-size:18px;color:#cd43ff80;flex-shrink:0;transition:transform .2s ease}.read-first-archive:hover .archive-arrow{color:#cd43ff;transform:translate(4px)}.world-welcome-tab .settings-content{display:flex;flex-direction:column;gap:12px}.world-welcome-tab .settings-section{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:24px}.world-welcome-tab .section-title{font-family:var(--font-primary);font-size:20px;font-weight:400;color:#cd43ff;margin:0 0 20px;letter-spacing:.5px}.world-welcome-tab .info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1200px){.world-welcome-tab .info-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.world-welcome-tab .info-grid{grid-template-columns:1fr}}.world-welcome-tab .info-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;min-height:80px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;text-align:center}.world-welcome-tab .info-label{font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:#cd43ffb3}.world-welcome-tab .info-value{font-family:var(--font-primary);font-size:14px;font-weight:500;color:#cd43ff}.world-welcome-tab .info-value.styled-display-name-with-tooltip{overflow:visible}.world-welcome-tab .info-value-link{cursor:pointer;text-decoration:underline;transition:opacity .2s ease}.world-welcome-tab .info-value-link:hover{opacity:.8}.world-welcome-tab .about-section{padding:12px 20px}.world-welcome-tab .about-section .section-title{margin-bottom:8px}.world-welcome-tab .about-content{padding:10px 14px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px}.world-welcome-tab .about-text{font-family:var(--font-primary);font-size:14px;line-height:1.8;color:#ffffffe6;margin:0;white-space:pre-wrap}.toggle-explanation{font-size:12px;color:#ffffff80;margin:4px 0 0;text-align:right}.edit-actions{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid rgba(205,67,255,.2);margin-top:8px}.world-archives-tab{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px;min-height:400px}.world-archives-tab .world-archives-list,.world-archives-tab .archive-details,.world-archives-tab .archive-content-view,.world-archives-tab .archives-loading,.world-archives-tab .add-archive-form{width:100%;align-self:stretch}.archives-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.world-archives-tab .add-archive-form{background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.world-archives-tab .add-archive-form h3{color:#cd43ff;font-family:var(--font-primary);font-size:18px;margin:0 0 20px}.world-archives-tab .form-row{display:flex;gap:16px;margin-bottom:16px;align-items:center}.world-archives-tab .form-row label{font-family:var(--font-primary);font-size:13px;color:#cd43ffcc;min-width:120px}.world-archives-tab .form-value-readonly{padding:10px 12px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffb3;font-size:14px;min-width:200px}.world-archives-tab .form-dropdown-container{min-width:200px}.world-archives-tab .form-input,.world-archives-tab .form-textarea{flex:1;padding:12px 16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;font-size:14px;font-family:var(--font-primary);transition:all .2s ease;outline:none}.world-archives-tab .form-input:focus,.world-archives-tab .form-textarea:focus{background:#cd43ff1a;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.world-archives-tab .form-input::placeholder,.world-archives-tab .form-textarea::placeholder{color:#fff6}.world-archives-tab .form-textarea{width:100%;resize:vertical;min-height:60px;margin-bottom:16px}.world-archives-tab .archive-info-box{margin:20px 0;padding:16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ffe6;font-size:13px;line-height:1.6}.world-archives-tab .archive-info-box p{margin:0 0 8px}.world-archives-tab .archive-info-box p:last-child{margin-bottom:0}.world-archives-tab .form-actions{display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:16px}.world-archives-tab .form-actions button{width:200px}.world-archives-list{display:flex;flex-direction:column;align-items:center;width:100%}.world-archives-tab .archive-item{margin-bottom:8px;width:100%;max-width:1200px}.world-archives-tab .archive-card{background:#0009;border:1px solid rgba(205,67,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;overflow:hidden}.world-archives-tab .archive-card:hover{background:#cd43ff0d;border-color:#cd43ff66;box-shadow:0 4px 20px #cd43ff33}.world-archives-tab .archive-card.selected{background:#cd43ff1a;border-color:#cd43ff;box-shadow:0 0 20px #cd43ff4d}.world-archives-tab .archive-header{display:flex;align-items:center;padding:16px 20px;cursor:pointer;gap:16px}.world-archives-tab .expand-btn{width:24px;height:24px;background:none;border:none;color:#cd43ff99;cursor:pointer;transition:all .2s ease;font-size:12px;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.world-archives-tab .expand-btn:hover{color:#cd43ff;transform:scale(1.2)}.world-archives-tab .archive-info{flex:1;min-width:0}.world-archives-tab .archive-name{color:#cd43ff;font-family:var(--font-primary);font-size:16px;font-weight:400;margin:0 0 4px}.world-archives-tab .archive-description{color:#fff9;font-size:13px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.world-archives-tab .archive-stats{display:flex;gap:16px;color:#cd43ff80;font-size:12px;flex-shrink:0}.world-archives-tab .stat{white-space:nowrap}.world-archives-tab .add-child-btn{width:32px;height:32px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.world-archives-tab .add-child-btn:hover{background:#cd43ff33;transform:scale(1.1);box-shadow:0 0 10px #cd43ff4d}.world-archives-tab .archive-children{border-left:2px solid rgba(205,67,255,.1);margin-left:20px;padding-left:0}.world-archives-tab .archive-details{background:#000c;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-top:24px}.world-archives-tab .archive-details h2{color:#cd43ff;font-family:var(--font-primary);font-size:20px;margin:0 0 16px}.world-archives-tab .archive-details p{color:#ffffffb3;margin:0 0 20px;line-height:1.6}.world-archives-tab .archive-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.world-archives-tab .archive-actions button{min-width:140px}.world-archives-tab .archive-content-view{background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.world-archives-tab .content-view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(205,67,255,.2)}.world-archives-tab .content-view-header h2{color:#cd43ff;font-family:var(--font-primary);font-size:18px;margin:0}.world-archives-tab .content-loading{display:flex;justify-content:center;padding:40px}.world-archives-tab .content-list{display:flex;flex-direction:column;gap:16px}.world-archives-tab .content-item{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:16px}.world-archives-tab .content-item-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.world-archives-tab .content-type-badge{font-size:10px;font-weight:400;text-transform:uppercase;padding:4px 8px;background:#cd43ff33;border-radius:4px;color:#cd43ff}.world-archives-tab .content-title{color:#fffffff2;font-family:var(--font-primary);font-size:15px;margin:0}.world-archives-tab .content-text{color:#ffffffb3;font-size:13px;line-height:1.6;margin:0;white-space:pre-wrap}.world-archives-tab .add-content-btn{align-self:center;margin-top:16px}.world-archives-tab .add-content-form{display:flex;flex-direction:column;gap:16px}.world-archives-tab .add-content-form .form-input,.world-archives-tab .add-content-form .form-textarea{margin-bottom:0}@media (max-width: 768px){.world-archives-tab .form-row{flex-direction:column;align-items:stretch}.world-archives-tab .form-row label{min-width:auto;margin-bottom:8px}.world-archives-tab .archive-header{flex-wrap:wrap;padding:12px 16px}.world-archives-tab .archive-stats{width:100%;margin-top:8px}.world-archives-tab .archive-actions{flex-direction:column}.world-archives-tab .archive-actions button{width:100%}}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;width:100%}@media (max-width: 768px){.card-grid{grid-template-columns:1fr}}.overlay-editor{display:flex;flex-direction:column;gap:16px;padding:16px;background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px;margin-top:12px}.overlay-editor-header{display:flex;justify-content:space-between;align-items:center}.overlay-editor-title{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#cd43ff;margin:0;display:flex;align-items:center;gap:8px}.overlay-sheet-name{font-size:13px;color:#fff9;font-weight:300}.overlay-close-btn{background:transparent;border:none;color:#ffffff80;font-size:20px;cursor:pointer;padding:0 4px;transition:color .2s ease}.overlay-close-btn:hover{color:#ffffffe6}.overlay-legit-warning{font-family:var(--font-primary);font-size:12px;color:#fcd34d;padding:8px 12px;background:#fcd34d14;border:1px solid rgba(252,211,77,.2);border-radius:6px}.overlay-field-selector{display:flex;flex-direction:column;gap:6px}.overlay-label{font-family:var(--font-primary);font-size:12px;color:#ffffff80;letter-spacing:.3px}.overlay-select{background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-family:var(--font-primary);font-size:13px;padding:8px 12px;outline:none;transition:border-color .2s ease}.overlay-select:focus{border-color:#cd43ff99}.overlay-select option{background:#1a1a2e;color:#ffffffe6}.overlay-field-area{display:flex;flex-direction:column;gap:16px}.overlay-section{display:flex;flex-direction:column;gap:8px}.overlay-section-title{font-family:var(--font-primary);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.8px;color:#cd43ffb3;margin:0;display:flex;align-items:center;gap:6px}.overlay-count{font-size:11px;color:#fff6;font-weight:300}.overlay-options-list{display:flex;flex-direction:column;gap:4px}.overlay-option-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#0000004d;border-radius:4px;font-family:var(--font-primary);font-size:13px}.overlay-option-row.added{border-left:2px solid rgba(205,67,255,.5)}.overlay-option-row.base{cursor:pointer;transition:background .15s ease}.overlay-option-row.base:hover{background:#00000080}.overlay-option-row.removed{opacity:.4;text-decoration:line-through}.overlay-option-label{flex:1;color:#ffffffd9}.overlay-option-value{font-size:11px;color:#ffffff59;font-style:italic}.overlay-option-checkbox{width:16px;text-align:center;color:#cd43ff;font-size:12px}.overlay-option-row.removed .overlay-option-checkbox{color:#ff43cd}.overlay-add-form{display:flex;gap:8px;align-items:center}.overlay-input{flex:1;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#ffffffe6;font-family:var(--font-primary);font-size:13px;padding:6px 10px;outline:none;transition:border-color .2s ease}.overlay-input:focus{border-color:#cd43ff80}.overlay-input-value{flex:.6}.overlay-input::placeholder{color:#ffffff4d}.overlay-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid rgba(205,67,255,.1)}.overlay-footer-left{display:flex;align-items:center;gap:8px}.overlay-count-label{font-family:var(--font-primary);font-size:12px;color:#fff6}.overlay-footer-right{display:flex;gap:8px}.world-character-sheets-tab{display:flex;flex-direction:column;gap:24px;padding:20px;min-height:400px}.sheets-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.sheets-error{display:flex;align-items:center;justify-content:center;min-height:300px;color:#ff6b6b;font-family:var(--font-primary)}.sheet-card-wrapper{position:relative}.sheet-card-wrapper.selectable{cursor:pointer}.sheet-card-wrapper.selected .sheet-card{background:#cd43ff1a;border-color:#cd43ff99;box-shadow:0 0 20px #cd43ff66,0 0 40px #cd43ff26}.sheet-card-wrapper.selectable .sheet-card{transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.sheet-card-wrapper.selectable:hover .sheet-card{border-color:#cd43ff66;box-shadow:0 4px 20px #cd43ff33}.sheet-card-actions-row{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 0 0}.world-character-sheets-tab .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:700;opacity:.7;transition:all .2s ease}.world-character-sheets-tab .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.sheet-legit-badge{display:flex;align-items:center;justify-content:center;gap:4px}.allowed-sheets{width:100%}.manage-header{display:flex;flex-direction:column;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid rgba(205,67,255,.2)}.manage-explanation{font-family:var(--font-primary);font-size:13px;color:#ffffff80;text-align:center;margin:0}.manage-exit-row{display:flex;justify-content:center;padding-top:12px}.sheet-card-wrapper.legit-approved .sheet-card{border-color:#cd43ff99;filter:drop-shadow(0 0 10px rgba(205,67,255,.4)) drop-shadow(0 0 20px rgba(205,67,255,.15))}.legit-approval-badge{cursor:pointer;transition:all .2s ease}.legit-approval-badge:hover{transform:scale(1.05)}.legit-mode-view{display:flex;flex-direction:column;gap:20px;width:100%}.submit-button-row{display:flex;justify-content:center;padding-top:8px}.submit-section{padding-top:16px;border-top:1px solid rgba(205,67,255,.15)}.submit-section-title{font-family:var(--font-primary);font-size:14px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:#cd43ffcc;margin:0 0 12px}.submit-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;border-radius:8px;z-index:5}@media (max-width: 768px){.world-character-sheets-tab{padding:16px}}.world-epic-tab{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px;min-height:400px}.world-epic-tab .epic-intro,.world-epic-tab .epic-list,.world-epic-tab .epic-detail-panel,.world-epic-tab .epic-loading{width:100%;align-self:stretch}.epic-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.epic-error{text-align:center;padding:40px 20px;color:#ff6b6bcc}.epic-error p{font-family:var(--font-primary);font-size:14px;margin:0}.epic-intro{text-align:center;padding:16px 20px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px}.epic-intro p{color:#cd43ffcc;font-size:14px;margin:0;font-style:normal}.epic-list{display:flex;flex-direction:column;gap:32px}.game-group{display:flex;flex-direction:column;gap:16px}.game-group-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid rgba(205,67,255,.2)}.game-group-header h3{color:#cd43ff;font-family:var(--font-primary);font-size:16px;margin:0}.epic-count{color:#cd43ff80;font-size:12px}.epic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.epic-card{background:#0009;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:16px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.epic-card:hover{background:#cd43ff0d;border-color:#cd43ff66;box-shadow:0 4px 20px #cd43ff33;transform:translateY(-2px)}.epic-card.selected{background:#cd43ff1a;border-color:#cd43ff;box-shadow:0 0 20px #cd43ff4d}.epic-card-header{display:flex;gap:12px;margin-bottom:12px}.epic-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid rgba(205,67,255,.4);flex-shrink:0}.epic-avatar img{width:100%;height:100%;object-fit:cover}.epic-info{flex:1;min-width:0}.epic-name{color:#cd43ff;font-family:var(--font-primary);font-size:15px;font-weight:400;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.epic-reason{display:inline-block;font-size:10px;font-weight:400;text-transform:uppercase;padding:3px 8px;background:#ffd70033;color:gold;border-radius:4px}.epic-details{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.epic-detail{font-size:12px;color:#ffffffb3}.detail-label{color:#cd43ff99}.epic-player{font-size:12px;color:#fff9;margin-bottom:8px}.player-label{color:#cd43ff80}.epic-source{font-size:11px;color:#cd43ff66;padding-top:8px;border-top:1px solid rgba(205,67,255,.1)}.source-label{margin-right:4px}.system-name{margin-left:4px;opacity:.7}.epic-detail-panel{background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.detail-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(205,67,255,.2)}.back-btn{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:8px 16px;color:#cd43ff;font-family:var(--font-primary);font-size:13px;cursor:pointer;transition:all .2s ease}.back-btn:hover{background:#cd43ff33}.detail-header h2{color:#cd43ff;font-family:var(--font-primary);font-size:22px;margin:0}.detail-content{display:grid;grid-template-columns:200px 1fr;gap:24px}.detail-image{width:200px;height:200px;border-radius:12px;overflow:hidden;border:2px solid rgba(205,67,255,.3)}.detail-image img{width:100%;height:100%;object-fit:cover}.detail-info{display:flex;flex-direction:column;gap:20px}.detail-badge.epic-badge{display:inline-block;font-size:12px;font-weight:400;text-transform:uppercase;padding:6px 12px;background:linear-gradient(135deg,#ffd7004d,#ffd7001a);color:gold;border:1px solid rgba(255,215,0,.4);border-radius:6px;align-self:flex-start}.detail-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat-row{display:flex;flex-direction:column;gap:4px;padding:12px;background:#cd43ff0d;border-radius:8px}.stat-label{font-size:11px;color:#cd43ff99;text-transform:uppercase}.stat-value{font-size:14px;color:#ffffffe6;font-family:var(--font-primary)}.detail-description h4,.detail-achievements h4{color:#cd43ff;font-family:var(--font-primary);font-size:14px;margin:0 0 8px}.detail-description p{color:#ffffffbf;font-size:14px;line-height:1.6;margin:0}.detail-achievements ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.detail-achievements li{padding:8px 12px;background:#ffd7001a;border-left:3px solid #FFD700;border-radius:0 6px 6px 0;color:#ffffffd9;font-size:13px}.detail-source{display:flex;gap:8px;padding-top:16px;border-top:1px solid rgba(205,67,255,.1)}.source-game{font-size:13px;color:#cd43ffb3;font-family:var(--font-primary)}.source-system{font-size:12px;color:#cd43ff80}@media (max-width: 768px){.world-epic-tab{padding:16px}.epic-grid,.detail-content{grid-template-columns:1fr}.detail-image{width:100%;max-width:200px;margin:0 auto}.detail-stats{grid-template-columns:1fr}.game-group-header{flex-direction:column;align-items:flex-start;gap:4px}}.world-official-npcs-tab{display:flex;flex-direction:column;gap:24px;padding:20px;min-height:400px}.official-npcs-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.official-npcs-error{text-align:center;padding:40px 20px;color:#ff6b6bcc}.official-npcs-error p{font-family:var(--font-primary);font-size:14px;margin:0}.official-npcs-list{display:flex;flex-direction:column;gap:12px;width:100%}.official-npc-row-wrapper{display:flex;flex-direction:column}.official-npc-row{display:flex;align-items:center;gap:20px;padding:16px;background:#0006;border:1px solid rgba(255,67,205,.2);border-radius:12px;transition:all .3s ease}.official-npc-row .npc-avatar{flex-shrink:0;width:80px;height:80px;border-radius:50%;overflow:hidden;border:2px solid rgba(255,67,205,.3);background:#0009}.official-npc-row .npc-avatar img{width:100%;height:100%;object-fit:cover}.official-npc-row .npc-details{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0;justify-content:center}.npc-details .npc-name{font-family:var(--font-primary);font-size:18px;font-weight:400;color:#ff43cd;letter-spacing:.5px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.npc-details .npc-synopsis{font-size:14px;color:#ffffffb3;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.official-npc-row .npc-metadata{flex:1;display:flex;flex-direction:column;gap:4px;padding-left:20px;border-left:1px solid rgba(255,67,205,.2);min-width:0}.npc-metadata .meta-item{display:flex;gap:6px;font-size:12px;white-space:nowrap}.npc-metadata .meta-label{color:#ff43cd99;text-transform:uppercase;font-size:11px;letter-spacing:.5px}.npc-metadata .meta-value{color:#ffffffb3;max-width:180px;overflow:hidden;text-overflow:ellipsis}.official-npc-row .npc-right{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px}.npc-game-count{font-family:var(--font-primary);font-size:13px;color:#ff43cdb3;white-space:nowrap}.official-npc-children{border-left:2px solid rgba(255,67,205,.2);margin-left:56px;margin-top:4px}.official-npc-child-row{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#0000004d;border-bottom:1px solid rgba(255,67,205,.08);transition:background .2s ease}.official-npc-child-row:last-child{border-bottom:none}.official-npc-child-row:hover{background:#ff43cd0d}.child-avatar{flex-shrink:0;width:48px;height:48px;border-radius:50%;overflow:hidden;border:1px solid rgba(255,67,205,.3)}.child-avatar img{width:100%;height:100%;object-fit:cover}.child-details{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.child-name{font-family:var(--font-primary);font-size:15px;font-weight:400;color:#ff43cd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.child-synopsis{font-size:12px;color:#ffffff80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.child-metadata{display:flex;flex-wrap:wrap;gap:4px 12px;flex-shrink:0}.child-metadata .meta-item{display:flex;gap:4px;font-size:11px;white-space:nowrap}.child-metadata .meta-label{color:#ff43cd80;text-transform:uppercase;font-size:10px}.child-metadata .meta-value{color:#fff9}.npc-game-link{font-family:var(--font-primary);font-size:13px;color:#ff43cd;cursor:pointer;text-decoration:none;white-space:nowrap;flex-shrink:0;margin-left:auto;padding:4px 8px;border-radius:6px;transition:all .2s ease}.npc-game-link:hover{text-decoration:underline;background:#ff43cd1a}.world-games-tab{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px;min-height:400px}.world-games-tab .card-grid,.world-games-tab .games-loading,.world-games-tab .games-error{width:100%;align-self:stretch}.games-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.games-error{text-align:center;padding:40px 20px;color:#ff6b6bcc}.games-error p{font-family:var(--font-primary);font-size:14px;margin:0}@media (max-width: 768px){.world-games-tab{padding:16px}}.lore-table-container{overflow-x:auto;border-radius:12px;background:#0000004d;border:1px solid rgba(205,67,255,.1)}.lore-table-empty{display:flex;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#ffffff80;font-family:var(--font-primary)}.lore-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed;list-style:none}.lore-table,.lore-table *,.lore-table tr,.lore-table td,.lore-table th,.lore-table-container,.lore-table-container *,.lore-table tbody,.lore-table thead,.lore-table-row{list-style:none!important;list-style-type:none!important;list-style-image:none!important;list-style-position:inside!important}.lore-table td:before,.lore-table td:after,.lore-table th:before,.lore-table th:after,.lore-table tr:before,.lore-table tr:after,.lore-table tbody:before,.lore-table tbody:after,.lore-table thead:before,.lore-table thead:after,.lore-table-row:before,.lore-table-row:after,.index-badge:before,.index-badge:after,.table-badge:before,.table-badge:after,.session-count-badge:before,.session-count-badge:after,.tooltip-trigger:before,.tooltip-trigger:after,.name-cell:before,.name-cell:after,.truncated-text:before,.truncated-text:after,.array-preview:before,.array-preview:after,.dim-text:before,.dim-text:after,.col-index:before,.col-type:before,.col-status:before{content:none!important;display:none!important;visibility:hidden!important}.lore-table ::marker,.lore-table-container ::marker,.lore-table *::marker,.lore-table-row::marker,.index-badge::marker,.table-badge::marker{content:none!important;display:none!important;color:transparent!important;font-size:0!important}.lore-table thead{background:#07080af2}.lore-table th{padding:14px 16px;text-align:left;font-weight:400;color:#cd43ff;text-transform:uppercase;font-size:10px;letter-spacing:1.5px;font-family:var(--font-primary);border-bottom:2px solid rgba(205,67,255,.3);white-space:nowrap}.lore-table td{padding:14px 16px;border-bottom:1px solid rgba(205,67,255,.08);vertical-align:middle;color:#ffffffd9;text-align:left;display:table-cell!important}.lore-table td.col-description,.lore-table td.col-leaders,.lore-table td.col-deities,.lore-table td.col-practices,.lore-table td.col-goals{overflow:hidden;text-overflow:ellipsis;max-width:0}.lore-table td.col-index,.lore-table td.col-type,.lore-table td.col-status,.lore-table td.col-rarity,.lore-table td.col-threat,.lore-table td.col-scope,.lore-table td.col-linkedSessions{overflow:visible!important;text-overflow:clip!important;max-width:none!important;white-space:nowrap!important}.lore-table th.col-type,.lore-table th.col-status,.lore-table th.col-rarity,.lore-table th.col-threat,.lore-table th.col-scope,.lore-table th.col-linkedSessions,.lore-table td.col-type,.lore-table td.col-status,.lore-table td.col-rarity,.lore-table td.col-threat,.lore-table td.col-scope,.lore-table td.col-linkedSessions{text-align:center}.lore-table td.col-type,.lore-table td.col-status,.lore-table td.col-rarity,.lore-table td.col-threat,.lore-table td.col-scope{text-align:center!important}.lore-table td.col-type .table-badge,.lore-table td.col-status .table-badge,.lore-table td.col-rarity .table-badge,.lore-table td.col-threat .table-badge,.lore-table td.col-scope .table-badge{margin:0 auto!important;display:inline-block!important;text-align:center!important}.lore-table td.col-description{max-width:300px;overflow:hidden;text-overflow:ellipsis}.lore-table-row{cursor:pointer;transition:all .2s ease;background:transparent;display:table-row!important}.lore-table-row:hover{background:#cd43ff0f}.lore-table-row.selected{background:#cd43ff26;box-shadow:inset 0 0 0 1px #cd43ff4d}.col-index{width:50px;text-align:center;position:relative;display:table-cell!important;list-style:none!important}td.col-type,td.col-status,td.col-rarity,td.col-threat,td.col-scope{display:table-cell!important;list-style:none!important}.col-index:after,.col-type:after,.col-status:after,.col-index:before,.col-type:before,.col-status:before{content:none!important;display:none!important;visibility:hidden!important}.index-badge{display:inline-flex!important;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:11px;font-weight:400;font-family:var(--font-primary);background:#cd43ff1a;color:#cd43ffcc;border:1px solid rgba(205,67,255,.2);list-style:none!important;list-style-type:none!important}.name-cell{font-weight:400;color:#fffffff2;font-size:14px;font-family:var(--font-primary)}.table-badge{display:inline-block!important;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary);list-style:none!important;list-style-type:none!important}.table-badge.type-empire{background:#cd43ff40;color:#cd43ff;border:1px solid rgba(205,67,255,.6);box-shadow:0 0 12px #cd43ff59}.table-badge.type-state{background:#cd43ff33;color:#cd43fff2;border:1px solid rgba(205,67,255,.5);box-shadow:0 0 8px #cd43ff40}.table-badge.type-alliance,.table-badge.type-federation{background:#cd43ff26;color:#cd43ffe6;border:1px solid rgba(205,67,255,.4)}.table-badge.type-organization{background:#cd43ff1a;color:#cd43ffbf;border:1px solid rgba(205,67,255,.3)}.table-badge.type-group{background:#cd43ff0f;color:#cd43ff8c;border:1px solid rgba(205,67,255,.2)}.table-badge.type-political{background:#cd43ff2e;color:#cd43ffe6;border:1px solid rgba(205,67,255,.45)}.table-badge.type-military{background:#cd43ff26;color:#cd43ffd9;border:1px solid rgba(205,67,255,.38)}.table-badge.type-religious{background:#cd43ff1f;color:#cd43ffc7;border:1px solid rgba(205,67,255,.32)}.table-badge.type-economic{background:#cd43ff1a;color:#cd43ffb8;border:1px solid rgba(205,67,255,.28)}.table-badge.type-social{background:#cd43ff14;color:#cd43ffa6;border:1px solid rgba(205,67,255,.24)}.table-badge.type-criminal{background:#cd43ff0f;color:#cd43ff8c;border:1px solid rgba(205,67,255,.2)}.table-badge.type-supernatural{background:#cd43ff38;color:#cd43ff;border:1px solid rgba(205,67,255,.55);box-shadow:0 0 10px #cd43ff4d}.table-badge.type-mercenary{background:#eab3081f;color:#facc15;border:1px solid rgba(234,179,8,.3)}.table-badge.type-secret{background:#6b728026;color:#9ca3af;border:1px solid rgba(107,114,128,.35);box-shadow:0 0 8px #6b728033}.table-badge.type-monotheistic{background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.3)}.table-badge.type-polytheistic{background:#a78bfa1f;color:#c4b5fd;border:1px solid rgba(167,139,250,.3)}.table-badge.type-animistic{background:#34d3991f;color:#6ee7b7;border:1px solid rgba(52,211,153,.3)}.table-badge.type-dualistic{background:#ef44441f;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.table-badge.type-cult{background:#a855f71f;color:#d8b4fe;border:1px solid rgba(168,85,247,.3)}.table-badge.type-humanoid{background:#ffffff14;color:#ffffffb3;border:1px solid rgba(255,255,255,.2)}.table-badge.type-fey{background:#34d39926;color:#6ee7b7;border:1px solid rgba(52,211,153,.35);box-shadow:0 0 8px #34d39933}.table-badge.type-elemental{background:#fb923c26;color:#fdba74;border:1px solid rgba(251,146,60,.35);box-shadow:0 0 8px #fb923c33}.table-badge.type-construct{background:#94a3b81f;color:#94a3b8;border:1px solid rgba(148,163,184,.3)}.table-badge.type-draconic{background:#fbbf2426;color:#fcd34d;border:1px solid rgba(251,191,36,.35);box-shadow:0 0 8px #fbbf2433}.table-badge.type-undead{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.35);box-shadow:0 0 8px #ef444433}.table-badge.type-vampire{background:#b91c1c2e;color:#fca5a5;border:1px solid rgba(185,28,28,.4);box-shadow:0 0 8px #b91c1c40}.table-badge.type-shapeshifter{background:#0ea5e91f;color:#7dd3fc;border:1px solid rgba(14,165,233,.3)}.table-badge.type-spirit{background:#c7d2fe1a;color:#c7d2fe;border:1px solid rgba(199,210,254,.25)}.table-badge.type-cyborg{background:#eab3081f;color:#fde047;border:1px solid rgba(234,179,8,.3)}.table-badge.type-android{background:#94a3b826;color:#e2e8f0;border:1px solid rgba(148,163,184,.35);box-shadow:0 0 6px #94a3b826}.table-badge.type-clone{background:#14b8a61f;color:#5eead4;border:1px solid rgba(20,184,166,.3)}.table-badge.type-alien{background:#4ade801f;color:#86efac;border:1px solid rgba(74,222,128,.3);box-shadow:0 0 8px #4ade8026}.table-badge.type-mutant{background:#f59e0b1f;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.table-badge.type-divine{background:#ffffff26;color:#fffde7;border:1px solid rgba(255,223,128,.6);box-shadow:0 0 16px #ffdf8066,0 0 6px #fff3}.table-badge.type-immortal{background:#fbbf2433;color:#fef3c7;border:1px solid rgba(251,191,36,.5);box-shadow:0 0 12px #fbbf244d}.table-badge.type-other{background:#ffffff0d;color:#ffffff80;border:1px solid rgba(255,255,255,.15)}.table-badge.status-active{background:#4ade801f;color:#4ade80;border:1px solid rgba(74,222,128,.3)}.table-badge.status-defunct{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.3)}.table-badge.status-reformed{background:#fbbf241f;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.table-badge.status-alive{background:#4ade801f;color:#4ade80;border:1px solid rgba(74,222,128,.3)}.table-badge.status-deceased{background:#ffffff0d;color:#fff6;border:1px solid rgba(255,255,255,.15)}.table-badge.status-unknown{background:#ffffff14;color:#ffffff80;border:1px solid rgba(255,255,255,.2)}.table-badge.status-immortal{background:#cd43ff26;color:#cd43ff;border:1px solid rgba(205,67,255,.4);box-shadow:0 0 10px #cd43ff4d}.table-badge.status-legendary{background:#fbbf2426;color:#fcd34d;border:1px solid rgba(251,191,36,.4);box-shadow:0 0 10px #fbbf244d}.table-badge.status-mythical{background:#a855f726;color:#d8b4fe;border:1px solid rgba(168,85,247,.4);box-shadow:0 0 10px #a855f74d}.table-badge.status-deity{background:#ffdf802e;color:#fffde7;border:1px solid rgba(255,223,128,.6);box-shadow:0 0 16px #ffdf8066,0 0 6px #fff3}.table-badge.status-imprisoned{background:#ef44441f;color:#fca5a5;border:1px solid rgba(239,68,68,.35);box-shadow:0 0 8px #ef444433}.table-badge.status-sealed{background:#6b728026;color:#9ca3af;border:1px solid rgba(107,114,128,.35);box-shadow:0 0 8px #6b728033}.table-badge.rarity-normal{background:#9d9d9d1f;color:#9d9d9d;border:1px solid rgba(157,157,157,.3)}.table-badge.rarity-mastercraft{background:#0070dd26;color:#0070dd;border:1px solid rgba(0,112,221,.4)}.table-badge.rarity-magic{background:#1eff001f;color:#1eff00;border:1px solid rgba(30,255,0,.3)}.table-badge.rarity-rare{background:#0070dd26;color:#0070dd;border:1px solid rgba(0,112,221,.4)}.table-badge.rarity-epic{background:#a335ee26;color:#a335ee;border:1px solid rgba(163,53,238,.4)}.table-badge.rarity-legendary{background:#ff800026;color:#ff8000;border:1px solid rgba(255,128,0,.4);box-shadow:0 0 10px #ff80004d}.table-badge.rarity-artifact{background:#ff000026;color:#f33;border:1px solid rgba(255,0,0,.4);box-shadow:0 0 12px #ff000059}.table-badge.scope-world{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.5);box-shadow:0 0 10px #cd43ff4d}.table-badge.scope-national{background:#cd43ff1f;color:#cd43ffd9;border:1px solid rgba(205,67,255,.35)}.table-badge.scope-local{background:#cd43ff0f;color:#cd43ff8c;border:1px solid rgba(205,67,255,.2)}.table-badge.scope-party{background:#64c8ff26;color:#64c8ffe6;border:1px solid rgba(100,200,255,.4)}.table-badge.threat-minion{background:#ffffff0d;color:#fff6;border:1px solid rgba(255,255,255,.15)}.table-badge.threat-standard{background:#ffffff14;color:#fff9;border:1px solid rgba(255,255,255,.2)}.table-badge.threat-elite{background:#60a5fa1f;color:#60a5fa;border:1px solid rgba(96,165,250,.3)}.table-badge.threat-boss{background:#cd43ff26;color:#cd43ff;border:1px solid rgba(205,67,255,.4)}.table-badge.threat-legendary{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.4);box-shadow:0 0 10px #ef44444d}.table-badge.type-beast{background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.3)}.table-badge.type-undead{background:#9ca3af1f;color:#9ca3af;border:1px solid rgba(156,163,175,.3)}.table-badge.type-demon,.table-badge.type-fiend{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.3)}.table-badge.type-dragon{background:#fbbf2426;color:#fcd34d;border:1px solid rgba(251,191,36,.4);box-shadow:0 0 8px #fbbf2433}.table-badge.type-elemental{background:#60a5fa1f;color:#93c5fd;border:1px solid rgba(96,165,250,.3)}.table-badge.type-construct{background:#9ca3af1f;color:#d1d5db;border:1px solid rgba(156,163,175,.3)}.table-badge.type-aberration{background:#cd43ff1f;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.table-badge.type-celestial{background:#fbbf241f;color:#fef3c7;border:1px solid rgba(251,191,36,.3)}.table-badge.type-fey{background:#34d3991f;color:#6ee7b7;border:1px solid rgba(52,211,153,.3)}.table-badge.type-giant{background:#b453091f;color:#fbbf24;border:1px solid rgba(180,83,9,.3)}.table-badge.type-ooze{background:#34d3991f;color:#6ee7b7;border:1px solid rgba(52,211,153,.3)}.table-badge.type-plant{background:#22c55e1f;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.table-badge.type-monstrosity{background:#a855f71f;color:#c4b5fd;border:1px solid rgba(168,85,247,.3)}.table-badge.type-plane{background:#cd43ff59;color:#e8b4ff;border:1px solid rgba(205,67,255,.7);box-shadow:0 0 16px #cd43ff73,0 0 4px #ffffff26}.table-badge.type-world{background:#cd43ff4d;color:#d98fff;border:1px solid rgba(205,67,255,.65);box-shadow:0 0 14px #cd43ff66}.table-badge.type-continent{background:#cd43ff40;color:#cd43ff;border:1px solid rgba(205,67,255,.6);box-shadow:0 0 12px #cd43ff59}.table-badge.type-country{background:#cd43ff33;color:#cd43fff2;border:1px solid rgba(205,67,255,.5);box-shadow:0 0 8px #cd43ff40}.table-badge.type-region{background:#cd43ff26;color:#cd43ffe6;border:1px solid rgba(205,67,255,.4)}.table-badge.type-city{background:#cd43ff1f;color:#cd43ffcc;border:1px solid rgba(205,67,255,.35)}.table-badge.type-area{background:#cd43ff17;color:#cd43ffb3;border:1px solid rgba(205,67,255,.28)}.table-badge.type-location{background:#cd43ff0f;color:#cd43ff99;border:1px solid rgba(205,67,255,.22)}.table-badge.type-site{background:#cd43ff0a;color:#cd43ff80;border:1px solid rgba(205,67,255,.15)}.table-badge.type-landmark{background:#cd43ff0f;color:#cd43ff99;border:1px solid rgba(205,67,255,.22)}.truncated-text{color:#fff9;font-size:12px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.dim-text{color:#ffffff4d}.array-preview{color:#ffffffb3;font-size:13px}.array-preview .more-count{color:#cd43ffb3;font-size:11px;margin-left:4px}.event-title-cell{display:flex;flex-direction:column;gap:4px}.event-description-preview{font-size:12px;color:#ffffff80;line-height:1.4}.date-cell{display:flex;flex-direction:column;gap:2px}.in-story-date{color:#ffffffe6;font-weight:500}.related-cell{display:flex;flex-direction:column;gap:2px}.session-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:12px;font-size:11px;font-weight:400;background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.3)}.lore-table-container::-webkit-scrollbar{width:8px;height:8px}.lore-table-container::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.lore-table-container::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.lore-table-container::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}@media (max-width: 1200px){.lore-table th,.lore-table td{padding:12px}.col-description{display:none}}@media (max-width: 768px){.lore-table{font-size:12px}.lore-table th,.lore-table td{padding:10px 8px}.name-cell{font-size:13px}.table-badge{font-size:9px;padding:3px 8px}}.col-reorder{width:60px;text-align:center}.reorder-buttons{display:flex;gap:2px;justify-content:center;align-items:center}.reorder-buttons .btn-icon-xs{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:3px;color:#cd43ff80;cursor:pointer;transition:all .2s;font-size:.75rem}.reorder-buttons .btn-icon-xs:hover:not(:disabled){background:#cd43ff1a;color:#cd43ff;border-color:#cd43ff4d}.reorder-buttons .btn-icon-xs:disabled{opacity:.2;cursor:not-allowed}.world-lore-tab{display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px;min-height:400px}.world-lore-tab .lore-intro,.world-lore-tab .lore-entries,.world-lore-tab .lore-loading,.world-lore-tab .lore-table-wrapper{width:100%;align-self:stretch}.lore-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.lore-error{text-align:center;padding:40px 20px;color:#ff6b6bcc}.lore-error p{font-family:var(--font-primary);font-size:14px;margin:0}.lore-intro{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px}.lore-intro p{color:#cd43ffcc;font-size:14px;margin:0;font-style:normal}.lore-stats{display:flex;align-items:center;gap:16px}.entries-count{color:#cd43ff;font-family:var(--font-primary);font-size:13px;font-weight:400}.games-count{color:#cd43ff99;font-size:12px}.lore-table-wrapper{flex:1;overflow:auto}.source-game-badge{display:inline-block;padding:4px 10px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-size:11px;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-game-badge:hover{background:#cd43ff40;border-color:#cd43ff80}.lore-detail-panel{position:fixed;top:0;right:0;width:400px;height:100vh;background:#0f172afa;border-left:1px solid rgba(205,67,255,.3);box-shadow:-4px 0 20px #00000080;z-index:100;display:flex;flex-direction:column;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.detail-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.detail-header h3{font-family:var(--font-primary);font-size:18px;color:#cd43ff;margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-header .close-button{width:32px;height:32px;border-radius:6px;background:transparent;border:1px solid rgba(205,67,255,.3);color:#cd43ff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.detail-header .close-button:hover{background:#cd43ff1a;border-color:#cd43ff80}.detail-content{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.detail-meta{display:flex;flex-wrap:wrap;gap:10px}.detail-meta .source-badge{padding:6px 12px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;font-size:12px;font-weight:500}.detail-meta .category-badge{padding:6px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#ffffffb3;font-size:12px;text-transform:capitalize}.detail-description{padding:16px;background:#0000004d;border-radius:8px;border:1px solid rgba(205,67,255,.1)}.detail-description p{color:#fffc;font-size:14px;line-height:1.6;margin:0}.detail-full-content{padding:16px;background:#0003;border-radius:8px}.detail-full-content p{color:#ffffffb3;font-size:13px;line-height:1.7;margin:0;white-space:pre-wrap}.canon-badge{display:inline-block;padding:2px 8px;border-radius:20px;font-family:var(--font-primary);font-size:10px;text-transform:uppercase;letter-spacing:1px}.canon-badge-approved{color:#43ff97;background:#43ff9733;border:1px solid rgba(67,255,151,.3)}.canon-badge-pending{color:#cd43ff99;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2)}.world-lore-tab .lore-table tbody tr.lore-entry-pending{opacity:.6;border-left:2px solid rgba(205,67,255,.3)}.world-lore-tab .lore-table tbody tr.lore-entry-canon{border-left:2px solid rgba(67,255,151,.5)}.canon-batch-actions{display:flex;flex-direction:column;gap:6px;width:100%}.game-source-header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:8px}.game-source-name{font-family:var(--font-primary);font-size:13px;color:#cd43ffcc;text-transform:uppercase;letter-spacing:1px}.game-source-actions{display:flex;gap:8px}@media (max-width: 768px){.world-lore-tab{padding:16px}.lore-intro{flex-direction:column;gap:12px;text-align:center}.lore-stats{flex-direction:column;gap:8px}.lore-detail-panel{width:100%}}.rule-detail-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:99;cursor:pointer;animation:fadeIn .2s ease}.rule-detail-panel{position:fixed;right:0;top:0;bottom:0;width:450px;max-width:90vw;background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid rgba(205,67,255,.2);display:flex;flex-direction:column;z-index:100;animation:slideIn .2s ease;box-shadow:-4px 0 20px #00000080}.rule-detail-panel .detail-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.15);background:#0000004d}.rule-detail-panel .detail-title{margin:0;font-size:20px;font-weight:400;font-family:var(--font-primary);color:#fffffff2}.rule-detail-panel .close-btn{background:none;border:none;color:#ffffff80;font-size:28px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.rule-detail-panel .close-btn:hover{color:#cd43ff;background:#cd43ff1a}.rule-detail-panel .detail-content{flex:1;overflow-y:auto;padding:24px}.rule-detail-panel .detail-source{font-size:12px;color:#cd43ffb3;margin-bottom:16px;padding:8px 12px;background:#cd43ff14;border-radius:6px;border-left:3px solid rgba(205,67,255,.4)}.rule-detail-panel .detail-description{margin-bottom:24px}.rule-detail-panel .detail-description p{margin:0;color:#ffffffd9;line-height:1.7;font-size:14px;white-space:pre-wrap}.rule-detail-panel .detail-metadata{display:flex;flex-direction:column;gap:12px;padding:18px;background:#0000004d;border-radius:12px;border:1px solid rgba(205,67,255,.1)}.rule-detail-panel .metadata-row{display:flex;gap:12px}.rule-detail-panel .metadata-label{color:#cd43ffcc;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary);min-width:110px;flex-shrink:0}.rule-detail-panel .metadata-value{color:#ffffffd9;font-size:13px}.rule-detail-panel .detail-actions{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(205,67,255,.1)}.rule-detail-panel .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.rule-detail-panel .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.rule-detail-panel .detail-content::-webkit-scrollbar{width:8px}.rule-detail-panel .detail-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.rule-detail-panel .detail-content::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.rule-detail-panel .detail-content::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}@media (max-width: 768px){.rule-detail-panel{width:100%}}.world-rules-tab{display:flex;flex-direction:column;gap:16px;padding:20px;min-height:400px}.rules-error{text-align:center;padding:40px 20px;color:#ff6b6bcc}.rules-error p{font-family:var(--font-primary);font-size:14px;margin:0}.world-rules-tab .source-game-badge{display:inline-block;padding:4px 10px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-size:11px;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.world-rules-tab .source-game-badge:hover{background:#cd43ff40;border-color:#cd43ff80}@media (max-width: 768px){.world-rules-tab{padding:16px}}.cross-entity-view{padding:1rem}.cross-entity-header{padding:.5rem 1rem;margin-bottom:1rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.15);border-radius:6px;color:#fff9;font-size:.85rem;font-family:var(--font-primary);font-weight:400}.cross-entity-empty{padding:2rem;text-align:center;color:#fff6;font-size:.9rem;font-family:var(--font-primary);font-weight:400}.world-tab-placeholder,.character-sheets-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;gap:16px}.world-tab-placeholder h2{font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff;margin:0}.world-tab-placeholder p{font-family:var(--font-primary);font-size:1rem;color:#fff9;margin:0}.world-tab-placeholder .sub-tab-info,.world-tab-placeholder .category-info{font-size:.9rem;color:#cd43ffb3;padding:8px 16px;background:#cd43ff1a;border-radius:6px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:300px;padding:40px;width:100%}.empty-state p{font-family:var(--font-primary);font-size:14px;color:#cd43ffb3;text-align:center;max-width:400px;line-height:1.6}.empty-state h3{font-family:var(--font-primary);font-size:18px;color:#cd43ff;margin:0;text-align:center}.violation-review-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:700px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #ff43cd4d;border:1px solid rgba(255,67,205,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.violation-review-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,67,205,.2);background:#ff43cd14}.violation-review-modal .modal-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#ff43cd;margin:0;text-shadow:0 0 20px rgba(255,67,205,.5)}.violation-review-modal .modal-close{background:transparent;border:none;color:#fff9;font-size:28px;font-weight:300;cursor:pointer;padding:4px 8px;transition:all .2s ease;line-height:1}.violation-review-modal .modal-close:hover{color:#ff43cd;transform:scale(1.1)}.ya-status-banner{display:flex;align-items:center;gap:16px;padding:16px 24px;margin:0}.ya-status-banner.status-locked{background:#ff43cd1a;border-bottom:1px solid rgba(255,67,205,.2)}.ya-status-banner.status-ok{background:#43ff971a;border-bottom:1px solid rgba(67,255,151,.2)}.ya-status-banner .status-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-size:20px;font-weight:400;flex-shrink:0}.status-locked .status-icon{background:#ff43cd33;border:2px solid #FF43CD;color:#ff43cd}.status-ok .status-icon{background:#43ff9733;border:2px solid #43FF97;color:#43ff97}.ya-status-banner .status-content{flex:1}.ya-status-banner .status-title{font-family:var(--font-primary);font-size:1rem;font-weight:400;text-transform:uppercase;letter-spacing:1px}.status-locked .status-title{color:#ff43cd}.status-ok .status-title{color:#43ff97}.ya-status-banner .status-detail{font-size:.85rem;color:#fff9;margin-top:4px}.ya-status-banner .status-reason{font-size:.9rem;color:#fffc;margin-top:8px}.violation-summary{display:flex;flex-wrap:wrap;gap:16px;padding:16px 24px;background:#0000004d;border-bottom:1px solid rgba(205,67,255,.1)}.violation-summary .summary-item{display:flex;align-items:center;gap:8px}.violation-summary .summary-label{font-family:var(--font-primary);font-size:.8rem;color:#cd43ffb3;text-transform:uppercase;letter-spacing:.5px}.violation-summary .summary-value{font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#ffffffe6}.summary-block .summary-value{color:#ff43cd}.summary-warn .summary-value{color:#fcd34d}.summary-scan .summary-value{color:#cd43ffcc;font-size:.85rem;font-weight:400}.violations-content{overflow-y:auto;padding:16px 24px;height:400px}.violations-content::-webkit-scrollbar{width:8px}.violations-content::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.violations-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.violations-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.no-violations{display:flex;align-items:center;justify-content:center;height:150px;font-family:var(--font-primary);font-size:1rem;color:#43ff97}.violations-list{display:flex;flex-direction:column;gap:16px}.violation-item{background:#0006;border:1px solid rgba(255,67,205,.2);border-radius:8px;padding:16px;transition:all .2s ease}.violation-item:hover{border-color:#ff43cd66;background:#00000080}.violation-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.violation-number{width:24px;height:24px;border-radius:50%;background:#ff43cd33;border:1px solid rgba(255,67,205,.4);color:#ff43cd;font-family:var(--font-primary);font-size:.75rem;font-weight:400;display:flex;align-items:center;justify-content:center}.violation-severity-badge{padding:4px 10px;border-radius:20px;font-family:var(--font-primary);font-size:.7rem;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.severity-block{background:#ff43cd33;color:#ff43cd;border:1px solid rgba(255,67,205,.4)}.severity-warn{background:#fcd34d33;color:#fcd34d;border:1px solid rgba(252,211,77,.4)}.violation-category-badge{padding:4px 10px;border-radius:20px;background:#cd43ff26;color:#cd43ffcc;border:1px solid rgba(205,67,255,.3);font-family:var(--font-primary);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.violation-location{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:.85rem}.violation-location .location-label{color:#cd43ff99;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.violation-location .location-value{color:#cd43ff;font-weight:500}.violation-description{color:#ffffffe6;font-size:.95rem;line-height:1.5;margin-bottom:12px}.violation-quote{margin-bottom:12px}.violation-quote .quote-label{display:block;color:#cd43ff99;font-family:var(--font-primary);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.violation-quote blockquote{margin:0;padding:10px 14px;background:#0000004d;border-left:3px solid rgba(255,67,205,.5);border-radius:0 6px 6px 0;color:#ffffffb3;font-style:normal;font-size:.9rem;line-height:1.4}.violation-recommendation{display:flex;flex-direction:column;gap:4px}.violation-recommendation .recommendation-label{color:#ff43cdb3;font-family:var(--font-primary);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.violation-recommendation .recommendation-value{color:#ff43cd;font-size:.9rem;line-height:1.4}.violation-review-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(255,67,205,.2);background:#ff43cd0d;gap:16px}.footer-actions-left{display:flex;gap:12px;flex:1}.footer-actions{display:flex;gap:12px}.violation-image-preview{position:relative;margin:12px 0;display:inline-block}.violation-thumbnail{max-width:200px;max-height:150px;border-radius:8px;border:2px solid rgba(255,67,205,.4);object-fit:cover;cursor:pointer;transition:all .3s ease}.violation-thumbnail.blurred{filter:blur(20px)}.violation-thumbnail:hover{border-color:#ff43cdcc;box-shadow:0 4px 12px #ff43cd4d}.violation-image-preview .reveal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#00000080;border-radius:8px;cursor:pointer;transition:all .2s ease}.violation-image-preview .reveal-overlay:hover{background:#000000b3}.violation-image-preview .reveal-icon{font-size:24px;margin-bottom:4px}.violation-image-preview .reveal-hint{font-family:var(--font-primary);font-size:.75rem;color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px;text-align:center}.violation-type-badge{padding:3px 8px;border-radius:12px;font-family:var(--font-primary);font-size:.65rem;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.violation-type-badge.type-image{background:#9333ea33;color:#a855f7;border:1px solid rgba(147,51,234,.4)}.violation-type-badge.type-text{background:#cd43ff26;color:#cd43ffcc;border:1px solid rgba(205,67,255,.3)}.violation-modal-header{display:flex;justify-content:space-between;align-items:center}.violation-modal-header .header-controls{display:flex;align-items:center;gap:16px}.dreamer-dismiss-button{width:32px;height:32px;border-radius:6px;border:2px solid #FF43CD;background:#ff43cd26;color:#ff43cd;font-size:18px;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.dreamer-dismiss-button:hover:not(:disabled){background:#ff43cd4d;box-shadow:0 0 15px #ff43cd80;transform:scale(1.05)}.dreamer-dismiss-button:disabled{opacity:.5;cursor:not-allowed}.transgressor-badge{background:#ff43cd14;border:1px solid rgba(255,67,205,.25);border-radius:8px;padding:10px 14px;margin:10px 0;display:flex;flex-direction:column;gap:4px}.transgressor-badge.repeat-offender{background:#ff00001a;border-color:#ff434366}.transgressor-badge .transgressor-label{font-family:var(--font-primary);font-size:.65rem;color:#ff43cd99;text-transform:uppercase;letter-spacing:1px}.transgressor-badge .transgressor-name{font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#ff43cd}.repeat-offender .transgressor-name{color:#f44}.transgressor-badge .transgressor-count{font-size:.8rem;color:#ffffffb3}.repeat-offender .transgressor-count{color:#f44;font-weight:400}.violations-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:200px;color:#cd43ffb3}.violator-profile-view{padding:8px 0;display:flex;flex-direction:column;gap:24px}.violator-loading,.violator-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:200px;color:#ff43cdb3}.violator-header{display:flex;align-items:center;gap:16px}.violator-avatar{width:64px;height:64px;border-radius:50%;background:#ff43cd26;border:2px solid #FF43CD;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.violator-avatar .avatar-image{width:100%;height:100%;object-fit:cover}.violator-avatar .avatar-initial{font-family:var(--font-primary);font-size:24px;font-weight:400;color:#ff43cd}.violator-info{display:flex;flex-direction:column;gap:4px}.violator-name{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#ff43cd;margin:0}.violator-username{font-size:.9rem;color:#ffffff80}.violator-stats{display:flex;gap:16px}.violator-stats .stat-item{flex:1;padding:16px;background:#0000004d;border-radius:12px;text-align:center}.violator-stats .stat-item.stat-total{border:1px solid rgba(255,67,205,.3)}.violator-stats .stat-item.stat-games{border:1px solid rgba(205,67,255,.3)}.violator-stats .stat-value{display:block;font-family:var(--font-primary);font-size:2rem;font-weight:400;color:#ff43cd}.stat-games .stat-value{color:#cd43ff}.violator-stats .stat-label{font-family:var(--font-primary);font-size:.7rem;color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.violator-history{display:flex;flex-direction:column;gap:12px}.history-title{font-family:var(--font-primary);font-size:.85rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;margin:0}.history-list{display:flex;flex-direction:column;gap:8px}.history-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#cd43ff08;border:1px solid rgba(205,67,255,.15);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%;font-family:inherit;font-size:inherit;color:inherit}.history-item:hover{background:#cd43ff14;border-color:#cd43ff4d;transform:translate(4px)}.history-game{flex:1;font-weight:500;color:#ffffffe6}.history-category{padding:4px 8px;background:#ff43cd26;border-radius:4px;font-family:var(--font-primary);font-size:.65rem;color:#ff43cd;text-transform:uppercase;letter-spacing:.5px}.history-date{font-size:.85rem;color:#ffffff80}.history-entry{margin-bottom:8px}.history-entry:last-child{margin-bottom:0}.history-entry.expanded .history-item{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:transparent}.history-chevron{color:#cd43ff80;transition:all .2s ease;font-size:.7rem}.history-chevron.open{transform:rotate(180deg);color:#cd43ff}.history-item:hover .history-chevron{color:#cd43ff}.history-details{background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-top:none;border-radius:0 0 8px 8px;padding:12px 16px}.history-detail-row{display:flex;gap:8px;margin-bottom:8px}.history-detail-row:last-child{margin-bottom:0}.detail-label{font-size:.8rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;min-width:80px}.detail-value{font-size:.85rem;color:#ffffffd9;flex:1}.detail-value.severity-block{color:#ff43cd;font-weight:400}.detail-value.severity-warn{color:#fbbf24;font-weight:400}.history-empty{padding:20px;text-align:center;color:#ffffff80;font-style:normal}@media (max-width: 600px){.violation-review-modal{max-width:95%}.violation-summary{flex-direction:column;gap:8px}.violation-review-modal .modal-footer{flex-direction:column;gap:12px}.footer-actions-left,.footer-actions{width:100%;justify-content:center}.violation-modal-header .header-controls{gap:8px}.violator-stats{flex-direction:column;gap:12px}.history-item{flex-wrap:wrap}.history-game{width:100%;margin-bottom:4px}}.ya-violation-banner{display:flex;align-items:center;gap:16px;padding:14px 20px;background:linear-gradient(135deg,#ff43cd26,#ff43cd14);border:1px solid rgba(255,67,205,.4);border-radius:8px;margin-bottom:16px;box-shadow:0 4px 20px #ff43cd33;animation:bannerPulse 3s ease-in-out infinite}@keyframes bannerPulse{0%,to{box-shadow:0 4px 20px #ff43cd33}50%{box-shadow:0 4px 30px #ff43cd59}}.ya-violation-banner .banner-icon{width:36px;height:36px;border-radius:50%;background:#ff43cd33;border:2px solid #FF43CD;color:#ff43cd;font-family:var(--font-primary);font-size:18px;font-weight:400;display:flex;align-items:center;justify-content:center;flex-shrink:0;animation:iconPulse 2s ease-in-out infinite}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.ya-violation-banner .banner-content{flex:1;min-width:0}.ya-violation-banner .banner-title{font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#ff43cd;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;text-shadow:0 0 15px rgba(255,67,205,.4)}.ya-violation-banner .banner-message{font-size:.9rem;color:#fffc;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ya-violation-banner .violation-count{padding:2px 8px;border-radius:12px;font-family:var(--font-primary);font-size:.75rem;font-weight:400}.ya-violation-banner .block-count{background:#ff43cd33;color:#ff43cd;border:1px solid rgba(255,67,205,.4)}.ya-violation-banner .warn-count{background:#fcd34d33;color:#fcd34d;border:1px solid rgba(252,211,77,.4)}@media (max-width: 600px){.ya-violation-banner{flex-direction:column;text-align:center;padding:16px}.ya-violation-banner .banner-content{width:100%}.ya-violation-banner .banner-message{justify-content:center}}.unfetch-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px;background:#000c;border:1px solid rgba(255,67,205,.5);border-radius:6px;color:#ff43cd;cursor:pointer;transition:all .2s ease;flex-shrink:0;padding:0}.unfetch-btn:hover{background:#000000f2;border-color:#ff43cd;color:#ff43cd;box-shadow:0 0 10px #ff43cd66;transform:scale(1.05)}.unfetch-btn:active{transform:scale(.95)}.unfetch-btn svg{flex-shrink:0}.level-card .level-controls{display:flex;gap:.5rem;margin-top:.25rem;align-items:center}.session-status-indicators{display:flex;align-items:center;gap:6px;flex-shrink:0}.session-status-badge{display:inline-block;padding:1px 8px;border-radius:10px;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.3px}.session-status-badge.open{color:#43ff97;background:#43ff971a;border:1px solid rgba(67,255,151,.3)}.session-status-badge.closed{color:#ff4343;background:#ff43431a;border:1px solid rgba(255,67,67,.3)}.session-status-badge.restricted{color:#ff43cd;background:#ff43cd1a;border:1px solid rgba(255,67,205,.3)}.session-mvp-name{font-size:11px;font-weight:400}.session-mvp-name .mvp-label{color:#cd43ffb3}.session-mvp-name .mvp-character-name{color:#ff43cd}.session-mvp-name.clickable{cursor:pointer;background:none;border:none;padding:0;font:inherit;font-size:11px;font-weight:400;transition:opacity .2s ease}.session-mvp-name.clickable:hover{opacity:.8}.session-mvp-name.clickable:hover .mvp-character-name{text-decoration:underline}.session-mvp-name.set-mvp{color:#ff43cd66;font-style:normal}.level-card .level-controls .agent-icon,.level-card .level-controls .settings-btn,.level-card .level-controls .reorder-btn,.level-card .level-controls .unfetch-btn{flex-shrink:0}.turn-settings-wizard{display:flex;flex-direction:column;min-width:400px;max-width:500px;background:#1e0f23f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;overflow:hidden}.wizard-header{padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2)}.wizard-header h2{margin:0 0 16px;color:#fff;font-size:1.25rem;font-weight:400}.wizard-progress{display:flex;gap:8px;justify-content:center}.progress-dot{width:10px;height:10px;border-radius:50%;background:#cd43ff4d;transition:all .2s ease}.progress-dot.active{background:#cd43ff;box-shadow:0 0 8px #cd43ff80}.progress-dot.completed{background:#93f}.wizard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;gap:16px;color:#ffffffb3}.wizard-error{margin:12px 24px;padding:12px;background:#ff43431a;border:1px solid rgba(255,67,67,.3);border-radius:8px;color:#f66;font-size:.875rem}.wizard-content{padding:24px;min-height:250px}.wizard-step h3{margin:0 0 12px;color:#fff;font-size:1.1rem;font-weight:400}.step-description{margin:0 0 20px;color:#fff9;font-size:.875rem}.character-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.character-option{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;cursor:pointer;transition:all .2s ease}.character-option:hover{background:#cd43ff1a;border-color:#cd43ff4d}.character-option input[type=checkbox]{width:18px;height:18px;accent-color:#CD43FF}.character-info{display:flex;align-items:center;gap:10px}.character-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid rgba(205,67,255,.3)}.character-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:#cd43ff33;display:flex;align-items:center;justify-content:center;color:#cd43ff;font-weight:400;font-size:.875rem}.character-name{color:#fff;font-weight:500}.no-characters{color:#ffffff80;font-style:normal;text-align:center;padding:20px}.selection-count{margin:16px 0 0;color:#cd43ff;font-size:.875rem;text-align:center}.wizard-option,.wizard-option-alt{margin-bottom:20px;padding:16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.wizard-option-alt{background:#6432780d;border-color:#9664b433}.option-description{margin:10px 0 0;color:#fff9;font-size:.875rem;line-height:1.4}.frequency-input{display:flex;align-items:center;gap:12px;margin:20px 0}.frequency-number{width:80px;padding:10px 12px;background:#1e0f23cc;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fff;font-size:1.1rem;text-align:center}.frequency-number:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 8px #cd43ff4d}.frequency-unit{color:#ffffffb3;font-size:1rem}.step-note{margin:0;color:#ffffff80;font-size:.8rem;font-style:normal}.wizard-footer{display:flex;justify-content:space-between;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#140a1980}.footer-left,.footer-right{display:flex;gap:12px}.character-list::-webkit-scrollbar{width:6px}.character-list::-webkit-scrollbar-track{background:#cd43ff1a;border-radius:3px}.character-list::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:3px}.character-list::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.turn-handler-button{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;cursor:pointer;transition:all .2s ease;color:#cd43ffb3}.turn-handler-button:hover:not(.disabled){background:#cd43ff1a;border-color:#cd43ff80;color:#cd43ff}.turn-handler-button.disabled{opacity:.4;cursor:not-allowed}.turn-handler-button.configured{border-color:#64c86466;color:#64c864cc}.turn-handler-button.configured:hover:not(.disabled){background:#64c8641a;border-color:#64c86499;color:#64c864}.turn-icon{width:18px;height:18px}.configured-indicator{position:absolute;top:-3px;right:-3px;width:8px;height:8px;background:#64c864;border-radius:50%;box-shadow:0 0 6px #64c86480}.initiative-button{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;cursor:pointer;transition:all .2s ease;color:#cd43ffb3}.initiative-button:hover:not(.disabled){background:#cd43ff1a;border-color:#cd43ff80;color:#cd43ff}.initiative-button.disabled{opacity:.4;cursor:not-allowed}.initiative-button.active{background:#ff43cd26;border-color:#ff43cd80;color:#ff43cd;animation:initiative-pulse 2s ease-in-out infinite}.initiative-button.active:hover:not(.disabled){background:#ff43cd40;border-color:#ff43cdb3}@keyframes initiative-pulse{0%,to{box-shadow:0 0 8px #ff43cd4d}50%{box-shadow:0 0 16px #ff43cd80}}.initiative-icon{width:18px;height:18px}.initiative-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;background:#ff43cd;border-radius:9px;color:#fff;font-size:.65rem;font-weight:400;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0000004d}.initiative-modal{display:flex;flex-direction:column;min-width:380px;max-width:450px;background:#1e0f23fa;border:1px solid rgba(255,100,50,.3);border-radius:12px;overflow:hidden}.modal-header{padding:20px 24px;border-bottom:1px solid rgba(255,100,50,.2);background:linear-gradient(180deg,rgba(255,100,50,.1) 0%,transparent 100%)}.modal-header h2{margin:0;color:#fff;font-size:1.25rem;font-weight:400}.modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;gap:16px;color:#ffffffb3}.modal-content{padding:24px;min-height:200px}.npc-selection{margin-bottom:24px}.npc-checkbox-label{display:flex;align-items:center;gap:10px;color:#fffc;font-size:.9rem;cursor:pointer}.npc-checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#FF6432}.npc-list{margin-top:12px;padding-left:28px;display:flex;flex-direction:column;gap:6px}.npc-item{display:flex;align-items:center;gap:8px;color:#fff9;font-size:.85rem;cursor:pointer}.npc-item input[type=checkbox]{width:16px;height:16px;accent-color:#FF6432}.roll-section{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px 0}.roll-info{margin:0;color:#fff9;font-size:.9rem}.initiative-order h3{margin:0 0 16px;color:#fff;font-size:1rem;font-weight:400}.order-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.order-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#ff64320d;border:1px solid rgba(255,100,50,.2);border-radius:8px}.order-item:first-child{background:#ff643226;border-color:#ff643266}.order-rank{color:#ff6432;font-weight:400;min-width:24px}.order-name{flex:1;color:#fff;font-weight:500}.order-roll{color:#ffffffb3;font-size:.9rem;font-family:Courier New,monospace}.order-bonus{color:#ffffff80;margin:0 2px}.order-roll strong{color:#ff6432;font-weight:400}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(255,100,50,.2);background:#140a1980}.initiative-tracker{display:flex;flex-direction:column;gap:12px;margin:16px 0;padding:16px;background:linear-gradient(135deg,#ff64321a,#ff32320d);border:1px solid rgba(255,100,50,.3);border-radius:10px}.tracker-header{display:flex;align-items:center;gap:10px}.tracker-icon{font-size:1.2rem}.tracker-title{color:#ff6432;font-weight:400;font-size:.9rem;letter-spacing:.1em}.tracker-round{margin-left:auto;color:#fff9;font-size:.85rem}.tracker-content{display:flex;flex-direction:column;gap:8px}.current-turn{display:flex;align-items:center;gap:8px}.turn-label{color:#fff9;font-size:.85rem}.turn-character{color:#fff;font-weight:400;font-size:1rem}.turn-initiative{color:#ff6432;font-weight:400;font-size:.9rem}.next-turns{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.next-label{color:#ffffff80;font-size:.8rem}.next-character{color:#fff9;font-size:.8rem}.tracker-controls{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}@media (max-width: 600px){.initiative-tracker{padding:12px}.tracker-content{gap:6px}.current-turn{flex-wrap:wrap}.next-turns{display:none}}.reaction-display{margin-top:8px;margin-bottom:4px}.reaction-list{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.reaction-bubble{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0d;cursor:pointer;transition:all .15s ease;font-size:14px;font-family:inherit;color:#fffc}.reaction-bubble:hover{background:#ffffff1a;border-color:#fff3;transform:scale(1.05)}.reaction-bubble:active{transform:scale(.95)}.reaction-bubble.user-reacted{background:#5865f233;border-color:#5865f280}.reaction-bubble.user-reacted:hover{background:#5865f24d;border-color:#5865f2b3}.reaction-bubble.toggling{opacity:.5;cursor:not-allowed}.reaction-bubble.toggling:hover{transform:none}.reaction-emoji{font-size:16px;line-height:1}.reaction-count{font-size:13px;font-weight:500;color:#ffffffe6;min-width:12px;text-align:center}.reaction-add-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px dashed rgba(255,255,255,.2);border-radius:8px;background:transparent;cursor:pointer;transition:all .15s ease;font-size:14px}.reaction-add-button:hover{background:#ffffff0d;border-color:#ffffff4d;border-style:solid}.reaction-add-button:active{transform:scale(.95)}.reaction-add-icon{opacity:.6;transition:opacity .15s ease}.reaction-add-button:hover .reaction-add-icon{opacity:1}@media (prefers-color-scheme: dark){.reaction-bubble{border-color:#ffffff14;background:#ffffff08}.reaction-bubble:hover{background:#ffffff14;border-color:#ffffff26}}@media (max-width: 768px){.reaction-bubble{padding:6px 10px;font-size:16px}.reaction-emoji{font-size:18px}.reaction-count{font-size:14px}.reaction-add-button{width:36px;height:36px;font-size:16px}}.reaction-picker{position:relative;width:280px;background:#1e1e28fa;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 8px 24px #0006;padding:12px;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reaction-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}.reaction-picker-title{font-size:13px;font-weight:400;color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px}.reaction-picker-close{background:transparent;border:none;color:#ffffff80;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .15s ease;line-height:1}.reaction-picker-close:hover{background:#ffffff1a;color:#ffffffe6}.reaction-picker-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-bottom:8px;max-height:200px;overflow-y:auto}.reaction-picker-grid::-webkit-scrollbar{width:6px}.reaction-picker-grid::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.reaction-picker-grid::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.reaction-picker-grid::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.reaction-picker-emoji{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:#ffffff0d;border-radius:8px;cursor:pointer;font-size:20px;transition:all .15s ease}.reaction-picker-emoji:hover{background:#ffffff26;transform:scale(1.1)}.reaction-picker-emoji:active{transform:scale(.95)}.reaction-picker-footer{padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.reaction-picker-hint{font-size:11px;color:#ffffff80;display:block;text-align:center}@keyframes reaction-picker-appear{0%{opacity:0;transform:scale(.95) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.reaction-picker{animation:reaction-picker-appear .15s ease-out}@media (prefers-color-scheme: dark){.reaction-picker{background:#1e1e28fa}}@media (prefers-color-scheme: light){.reaction-picker{background:#fffffffa;border-color:#0000001a}.reaction-picker-title{color:#000000e6}.reaction-picker-close{color:#00000080}.reaction-picker-close:hover{background:#0000001a;color:#000000e6}.reaction-picker-emoji{background:#0000000d}.reaction-picker-emoji:hover{background:#00000026}.reaction-picker-hint{color:#00000080}.reaction-picker-header,.reaction-picker-footer{border-color:#00000014}}@media (max-width: 768px){.reaction-picker{width:100%;max-width:320px}.reaction-picker-grid{grid-template-columns:repeat(6,1fr)}.reaction-picker-emoji{width:40px;height:40px;font-size:22px}}.ooc-mini-avatars{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:6px}.ooc-mini-avatar{width:24px;height:24px;border-radius:50%;border:1.5px solid rgba(205,67,255,.4);background:#cd43ff1a;cursor:pointer;padding:0;overflow:hidden;transition:all .2s ease;flex-shrink:0}.ooc-mini-avatar:hover{border-color:#cd43ff;transform:scale(1.15);box-shadow:0 0 8px #cd43ff66;z-index:1}.ooc-mini-avatar-img{width:100%;height:100%;object-fit:cover}.ooc-mini-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#cd43ff,#8b2fc9);font-size:11px;font-weight:400;color:#fff}.ooc-mini-avatar-more{height:24px;padding:0 6px;border-radius:12px;background:#cd43ff26;border:1.5px solid rgba(205,67,255,.3);font-size:11px;font-weight:400;color:#cd43ffe6;display:flex;align-items:center;justify-content:center;flex-shrink:0}@media (max-width: 600px){.ooc-mini-avatar{width:20px;height:20px}.ooc-mini-avatar-placeholder{font-size:10px}.ooc-mini-avatar-more{height:20px;padding:0 5px;font-size:10px}}.pool-display{display:flex;flex-direction:column;gap:3px;width:52px;margin-top:18px}.pool-stat{display:flex;flex-direction:column;align-items:center;width:100%}.pool-stat-bar{position:relative;width:100%;height:5px;background:#00000080;border-radius:3px;overflow:hidden}.pool-stat-bar-fill{position:absolute;left:0;top:0;height:100%;border-radius:3px;transition:width .3s ease}.pool-stat-bar-overshoot{position:absolute;top:0;height:100%;background:#00c8ff99;border-radius:0 3px 3px 0}.pool-stat-value{font-family:var(--font-primary);font-size:9px;font-weight:400;font-variant-numeric:tabular-nums;text-align:center;line-height:1.2;min-height:14px;display:flex;align-items:center;justify-content:center;flex-direction:column}.pool-stat-number{color:#cd43ff}.pool-stat-temp{font-size:7px;color:#00c8ffcc;font-weight:400}.pool-stat-fraction{font-family:var(--font-primary);font-size:8px;font-weight:400;font-variant-numeric:tabular-nums;text-align:center;line-height:1.1;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1px;min-height:14px}.fraction-sep{font-size:6px;opacity:.5}.pool-stat-box-grid{display:flex;flex-wrap:wrap;gap:1px;width:100%;justify-content:center}.pool-stat-box{width:5px;height:5px;border-radius:1px}.pool-stat-label{font-family:var(--font-primary);font-size:10px;opacity:.5;text-align:center;white-space:nowrap;margin-top:1px;line-height:1;letter-spacing:.02em}.stat-delta-badge{margin-top:6px;padding:6px 10px;background:#0006;border:1px solid rgba(205,67,255,.12);border-radius:8px;display:flex;flex-direction:column;gap:3px}.stat-delta-character{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-family:var(--font-primary);font-size:9px;font-weight:400;letter-spacing:.02em}.stat-delta-name{color:#ffffffb3}.stat-delta-change{white-space:nowrap}.stat-delta-damage{color:#f44}.stat-delta-heal{color:#43ff97}.stat-delta-neutral{color:#ffffff80}.stat-delta-result{color:#fff6;margin-left:2px}.post-item{position:relative;display:flex;gap:16px;padding:16px;background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px;transition:all .2s ease;margin-bottom:12px}.post-item:hover{background:#00000080;border-color:#cd43ff4d}.post-avatar{flex-shrink:0}.post-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.post-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.post-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.post-author{font-weight:400}.post-author.character-author{display:flex;align-items:center;gap:4px}.post-date{color:#cd43ffb3;font-size:13px;white-space:nowrap}.post-locked-indicator{font-size:12px;opacity:.6;cursor:help}.post-edited-indicator{color:#cd43ff80;font-size:12px;font-style:normal}.post-actions{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:6px;z-index:1}.post-actions .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;font-size:16px;cursor:pointer;opacity:.7;transition:all .2s ease}.post-actions .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.post-delete-icon{color:#ff43cd;border-color:#ff43cd4d;background:#ff43cd1a}.post-delete-icon:hover{background:#ff43cd33;border-color:#ff43cd80;box-shadow:0 0 8px #ff43cd66}.post-body{color:#ffffffe6;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word;font-family:var(--font-primary)}.post-body-wrapper.view-ic .ooc-block{display:none}.post-body h1,.post-body h2,.post-body h3{color:#cd43ffe6;margin:.5em 0;line-height:1.4}.post-body h1{font-size:1.8em}.post-body h2{font-size:1.5em}.post-body h3{font-size:1.3em}.post-body p{margin:.5em 0}.post-body strong{font-weight:700}.post-body em{font-style:italic}.post-body u{text-decoration:underline}.post-body s{text-decoration:line-through}.post-body a{color:#cd43ffe6;text-decoration:underline;transition:color .2s ease;word-break:break-all}.post-body a:hover{color:#cd43ff}.post-body a[target=_blank]{color:#64b5f6f2;text-decoration:none;padding:2px 4px;border-radius:3px;background:#64b5f61a;transition:all .2s ease}.post-body a[target=_blank]:hover{color:#fff;background:#64b5f640;text-decoration:none}.post-body a[target=_blank]:after{content:" ↗";font-size:.85em;opacity:.6;margin-left:2px}.post-body a.level-link{color:#5865f2f2;text-decoration:none;font-weight:400;padding:2px 6px;border-radius:4px;background:#5865f21a;transition:all .2s ease;cursor:pointer}.post-body a.level-link:hover{color:#fff;background:#5865f24d;text-decoration:none}.post-body ul,.post-body ol{margin:.5em 0;padding-left:2em}.post-body li{margin:.25em 0}.post-body blockquote{border-left:3px solid rgba(205,67,255,.5);padding-left:12px;margin:8px 0;color:#ffffffb3;font-style:italic}.post-body code{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:2px 6px;color:#cd43ffe6;font-family:Courier New,monospace;font-size:.9em}.post-body pre{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:12px;margin:8px 0;overflow-x:auto}.post-body pre code{background:none;border:none;padding:0}.post-body .ooc-block{border-left:3px solid rgba(205,67,255,.5);background:#cd43ff0f;padding:8px 12px;margin:8px 0;border-radius:4px;color:#ffffffbf;position:relative}.post-body .ooc-block:before{content:"OOC";display:block;font-size:.7em;text-transform:uppercase;letter-spacing:1px;color:#cd43ffb3;margin-bottom:4px;font-weight:400}.post-body .ooc-block+.ooc-block{margin-top:0;padding-top:0;border-top-left-radius:0;border-top-right-radius:0}.post-body .ooc-block+.ooc-block:before{display:none}.post-body .ooc-block:has(+.ooc-block){margin-bottom:0;padding-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.post-body .ql-align-center{text-align:center}.post-body .ql-align-right{text-align:right}.post-body .ql-align-justify{text-align:justify}.post-thread-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.post-thread-actions .reaction-add-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px dashed rgba(255,255,255,.2);border-radius:8px;background:transparent;cursor:pointer;transition:all .15s ease;font-size:14px}.post-thread-actions .reaction-add-button:hover{background:#ffffff0d;border-color:#ffffff4d;border-style:solid}.post-thread-actions .reaction-add-button:active{transform:scale(.95)}.post-thread-actions .reaction-add-icon{opacity:.6;transition:opacity .15s ease}.post-thread-actions .reaction-add-button:hover .reaction-add-icon{opacity:1}.thread-indicator-button,.thread-reply-button{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:none;border-radius:6px;background:#ffffff0d;color:#ffffffb3;font-size:13px;cursor:pointer;transition:all .15s ease}.thread-indicator-button:hover,.thread-reply-button:hover{background:#ffffff1a;color:#fffffff2;transform:scale(1.02)}.thread-indicator-button{background:#5865f226;color:#5865f2f2}.thread-indicator-button:hover{background:#5865f240}.thread-icon,.thread-reply-icon{font-size:14px;line-height:1}.thread-count,.thread-reply-text{font-weight:500;line-height:1}@media (max-width: 768px){.post-item{flex-direction:column;gap:12px;padding-top:48px}.post-header{flex-direction:column;align-items:flex-start}.post-actions{top:8px;right:8px}.post-actions .action-icon.edit-icon{font-size:14px}.post-thread-actions{flex-wrap:wrap}.thread-indicator-button,.thread-reply-button{font-size:12px;padding:4px 8px}}.post-body-wrapper{position:relative}.post-body--translating{opacity:.6;transition:opacity .3s ease}.post-translation-toggle{position:absolute;top:2px;right:2px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:4px;cursor:pointer;font-family:var(--font-primary);font-size:10px;font-weight:600;letter-spacing:.5px;color:#cd43ff;opacity:.5;padding:2px 6px;transition:all .2s ease}.post-translation-toggle:hover{opacity:1;background:#cd43ff1a;border-color:#cd43ff66}.post-translation-loading{display:block;font-family:var(--font-primary);font-size:11px;color:#cd43ff66;font-style:italic;margin-top:4px;letter-spacing:.3px}.post-objection-actions{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.post-object-button{display:inline-flex;align-items:center;padding:4px 10px;border:none;border-radius:6px;background:transparent;color:#ff43cd;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;opacity:.7;transition:all .15s ease}.post-object-button:hover{opacity:1;text-shadow:0 0 10px rgba(255,67,205,.4)}.post-objections-button{display:inline-flex;align-items:center;padding:4px 10px;border:none;border-radius:6px;background:#ff43cd14;color:#ff43cd;font-family:var(--font-primary);font-size:12px;font-weight:400;cursor:pointer;opacity:.8;transition:all .15s ease}.post-objections-button:hover{opacity:1;background:#ff43cd26;text-shadow:0 0 8px rgba(255,67,205,.3)}.post-objection-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:10px;background:#ff43cd1a}.post-objection-badge.clickable{cursor:pointer;transition:all .15s ease}.post-objection-badge.clickable:hover{background:#ff43cd33;box-shadow:0 0 8px #ff43cd4d}.post-objection-badge.resolved .objection-badge-dot,.post-objection-badge.resolved .objection-badge-count{opacity:.5}.objection-badge-dot{width:8px;height:8px;border-radius:50%;background:#ff43cd;box-shadow:0 0 6px #ff43cd80}.objection-badge-count{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#ff43cd;font-variant-numeric:tabular-nums}.reroll-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}.reroll-confirm-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;border:2px solid rgba(255,215,0,.3);box-shadow:0 8px 32px #ffd70026;max-width:500px;width:90%;max-height:90vh;overflow:hidden;animation:slideUp .3s ease-out}.reroll-confirm-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid rgba(255,215,0,.2);background:linear-gradient(180deg,rgba(255,215,0,.1) 0%,transparent 100%)}.reroll-confirm-title{margin:0;font-size:20px;font-weight:400;color:gold;text-shadow:0 0 10px rgba(255,215,0,.3)}.reroll-confirm-close{background:none;border:none;color:#fff9;font-size:28px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.reroll-confirm-close:hover{background:#ffffff1a;color:#fff}.reroll-confirm-content{padding:32px 24px 24px;display:flex;flex-direction:column;align-items:center;gap:20px}.reroll-warning-icon{font-size:64px;color:gold;animation:rotateReroll 2s ease-in-out infinite;text-shadow:0 0 20px rgba(255,215,0,.5)}.reroll-confirm-message{margin:0;font-size:16px;line-height:1.6;color:#ffffffe6;text-align:center}.reroll-limitation{margin:0;font-size:14px;line-height:1.5;color:#ffd700cc;text-align:center;padding:12px 16px;background:#ffd7001a;border-radius:8px;border:1px solid rgba(255,215,0,.2);font-weight:500}.reroll-confirm-actions{display:flex;gap:12px;width:100%;margin-top:8px}.reroll-confirm-actions button{flex:1;padding:12px 24px;font-size:15px;font-weight:400;border-radius:8px;cursor:pointer;transition:all .2s ease;border:none}.reroll-cancel-button{background:#ffffff1a!important;color:#fffc!important;border:1px solid rgba(255,255,255,.2)!important}.reroll-cancel-button:hover{background:#ffffff26!important;border-color:#ffffff4d!important;color:#fff!important}.reroll-confirm-button{background:linear-gradient(135deg,gold,#ffed4e)!important;color:#1a1a2e!important;box-shadow:0 4px 12px #ffd7004d!important;border:1px solid rgba(255,215,0,.5)!important}.reroll-confirm-button:hover{background:linear-gradient(135deg,#ffed4e,gold)!important;transform:translateY(-2px);box-shadow:0 6px 16px #ffd70066!important}.reroll-confirm-button:active{transform:translateY(0)}@media (max-width: 600px){.reroll-confirm-modal{width:95%}.reroll-confirm-header{padding:20px}.reroll-confirm-content{padding:24px 20px 20px}.reroll-warning-icon{font-size:48px}.reroll-confirm-actions{flex-direction:column}.reroll-confirm-actions button{width:100%}}.roll-post{display:flex;gap:16px;padding:16px;background:linear-gradient(135deg,#cd43ff26,#cd43ff0d);border:2px solid rgba(205,67,255,.4);border-radius:8px;transition:all .2s ease;margin-bottom:12px}.roll-post:hover{background:linear-gradient(135deg,#cd43ff33,#cd43ff14);border-color:#cd43ff99}.roll-post-avatar{flex-shrink:0}.roll-post-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.roll-post-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.roll-post-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.roll-post-author{font-weight:400}.roll-post-narrator-label{color:#cd43ffd9}.roll-post-author.character-author{display:flex;align-items:center;gap:4px}.character-name{color:#cd43fff2;font-weight:400;font-size:15px}.character-title{color:#cd43ffb3;font-weight:400;font-size:13px;font-style:normal}.roll-post-date{color:#cd43ffb3;font-size:13px;white-space:nowrap}.roll-post-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:12px;color:#cd43ff;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.05em}.roll-post-actions{display:flex;gap:8px;flex-shrink:0;align-items:center}.roll-post-delete-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:#ff43cd1a;border:1px solid rgba(255,67,205,.3);border-radius:6px;color:#ff43cd;cursor:pointer;transition:all .2s ease}.roll-post-delete-icon:hover{background:#ff43cd33;border-color:#ff43cd80;box-shadow:0 0 8px #ff43cd66;transform:scale(1.05)}.roll-description{padding:12px;background:#0003;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.roll-settings-info{padding:10px 12px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:6px;font-size:13px;line-height:1.5;display:flex;flex-wrap:wrap;gap:4px;align-items:baseline}.settings-label{font-weight:400;color:#cd43ff;text-transform:uppercase;font-size:12px;letter-spacing:.05em}.settings-values{color:#cd43ffe6;font-weight:500;font-size:13px}.setting-modified{color:#f44;font-weight:400}.roll-data{display:flex;flex-direction:column;gap:12px;padding:16px;background:#0000004d;border-radius:8px;border:1px solid rgba(205,67,255,.3)}.roll-total-display{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;background:linear-gradient(135deg,#cd43ff33,#cd43ff1a);border-radius:8px;border:2px solid #CD43FF}.total-label{font-size:.875rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:#cd43ff}.total-value{font-size:2.5rem;font-weight:400;color:#cd43ff;line-height:1;font-family:var(--font-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.roll-breakdown-display{display:flex;align-items:center;justify-content:center;padding:12px;background:#cd43ff14;border-radius:6px;border:1px solid rgba(205,67,255,.2)}.breakdown-text{font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#cd43ff;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.01em;word-break:break-word;line-height:1.5}.roll-reroll-button{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,gold,#ffed4e)!important;color:#1a1a2e!important;border:1px solid rgba(255,215,0,.5)!important;box-shadow:0 2px 8px #ffd7004d;font-weight:400!important;padding:6px 14px!important;font-size:13px!important;height:32px!important;min-height:32px!important;transition:all .2s ease}.roll-reroll-button:hover:not(:disabled){background:linear-gradient(135deg,#ffed4e,gold)!important;transform:translateY(-2px);box-shadow:0 4px 12px #ffd70066}.roll-reroll-button:active:not(:disabled){transform:translateY(0)}.roll-reroll-button:disabled{opacity:.6;cursor:not-allowed}.reroll-icon{display:inline-block;font-size:16px;line-height:1}.roll-reroll-button:hover:not(:disabled) .reroll-icon{animation:rotateReroll .6s ease-in-out}.reroll-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#ffd70026;border:1px solid rgba(255,215,0,.4);border-radius:12px;color:gold;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.05em;text-shadow:0 0 8px rgba(255,215,0,.3)}.reroll-indicator{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:6px;font-size:14px;font-weight:500;line-height:1.5}.reroll-icon-indicator{font-size:18px;line-height:1;flex-shrink:0}.rerolled-indicator{background:#ffd7001a;border:1px solid rgba(255,215,0,.3);color:#ffd700e6}.rerolled-indicator .reroll-icon-indicator{color:gold;animation:rotateReroll 2s ease-in-out infinite}.original-roll-indicator{background:#ffd70026;border:1px solid rgba(255,215,0,.4);color:#ffd700f2}.original-roll-indicator .reroll-icon-indicator{color:gold}.original-roll-indicator .reroll-text{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.better-roll{color:#4ade80;text-shadow:0 0 8px rgba(74,222,128,.3)}.worse-roll{color:#f87171;text-shadow:0 0 8px rgba(248,113,113,.3)}.same-roll{color:#fbbf24;text-shadow:0 0 8px rgba(251,191,36,.3)}@keyframes rotateReroll{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}@media (max-width: 768px){.roll-post{flex-direction:column;gap:12px}.roll-post-header{flex-direction:column;align-items:flex-start}.roll-post-actions{width:auto}.roll-post-delete-icon{width:24px;height:24px}.total-value{font-size:2rem}.breakdown-text{font-size:.875rem}.roll-reroll-button{flex:1;justify-content:center}.reroll-indicator{font-size:13px;padding:8px 10px}.reroll-icon-indicator{font-size:16px}}.post-list{display:flex;flex-direction:column;gap:12px;width:100%}.post-list-state{display:flex;align-items:center;justify-content:center;min-height:300px;width:100%}.post-list-loading{display:flex;flex-direction:column;align-items:center;gap:16px;color:#cd43ffcc}.post-list-error{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;background:#ff43431a;border:1px solid rgba(255,67,67,.3);border-radius:12px;max-width:500px}.error-icon{font-size:48px;margin:0}.error-message{color:#ff4343e6;font-size:16px;text-align:center;margin:0}@media (max-width: 768px){.post-list-state{min-height:200px}.post-list-error{margin:0 16px;padding:24px}}.image-upload{width:100%}.image-upload-dropzone{padding:16px;border:2px dashed rgba(255,255,255,.2);border-radius:8px;background:#ffffff05;transition:all .2s ease;min-height:120px}.image-upload-dropzone.dragging{border-color:#cd43ffcc;background:#cd43ff1a;transform:scale(1.02)}.image-upload-dropzone.disabled{opacity:.5;cursor:not-allowed}.dropzone-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 20px;cursor:pointer;min-height:88px}.dropzone-empty:hover{opacity:.8}.dropzone-icon{font-size:48px;opacity:.7}.dropzone-text{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.dropzone-text>span{color:#fffc;font-size:14px}.dropzone-hint{color:#ffffff80!important;font-size:12px!important}.image-upload-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.preview-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#0000004d;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center}.preview-image{width:100%;height:100%;object-fit:cover;display:block;position:absolute;top:0;left:0}.preview-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#000c;border:none;border-radius:50%;color:#fff;font-size:14px;cursor:pointer;opacity:0;transition:all .2s ease;z-index:10}.preview-item:hover .preview-remove{opacity:1}.preview-remove:hover{background:#ff3232e6;transform:scale(1.1)}.preview-filename{position:absolute;bottom:0;left:0;right:0;padding:4px 6px;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);color:#fff;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .2s ease;z-index:5;pointer-events:none}.preview-item:hover .preview-filename{opacity:1}@media (max-width: 768px){.image-upload-dropzone{padding:24px 16px}.dropzone-icon{font-size:36px}.dropzone-text>span{font-size:13px}.image-upload-previews{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.preview-remove{opacity:1;// Always visible on mobile}}.preview-add-more{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border-radius:8px;border:2px dashed rgba(255,255,255,.3);background:#ffffff0d;cursor:pointer;transition:all .2s ease}.preview-add-more:hover{border-color:#cd43ff99;background:#cd43ff1a;transform:scale(1.05)}.add-more-icon{font-size:32px;color:#fff9;font-weight:300;line-height:1}.add-more-text{font-size:11px;color:#fff9;margin-top:4px}@media (prefers-color-scheme: light){.image-upload-dropzone{border-color:#0003;background:#00000005}.image-upload-dropzone.dragging{border-color:#cd43ffcc;background:#cd43ff1a}.dropzone-text>span{color:#000c}.dropzone-hint{color:#00000080!important}.preview-item{background:#0000000d;border-color:#0000001a}.preview-add-more{border-color:#0000004d;background:#0000000d}.preview-add-more:hover{border-color:#cd43ff99;background:#cd43ff1a}.add-more-icon,.add-more-text{color:#0009}}.character-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;animation:characterPickerFadeIn .2s ease-out}.character-picker-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;border:2px solid rgba(205,67,255,.3);box-shadow:0 8px 32px #cd43ff26;max-width:600px;width:90%;max-height:80vh;overflow:hidden;animation:characterPickerSlideUp .3s ease-out}.character-picker-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:linear-gradient(180deg,rgba(205,67,255,.1) 0%,transparent 100%)}.character-picker-title{margin:0;font-size:18px;font-weight:400;color:#cd43ff;text-shadow:0 0 10px rgba(205,67,255,.3)}.character-picker-close{background:none;border:none;color:#fff9;font-size:28px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.character-picker-close:hover{background:#ffffff1a;color:#fff}.character-picker-content{padding:20px 24px 24px;overflow-y:auto;max-height:calc(80vh - 80px)}.character-picker-subtitle{margin:0 0 16px;font-size:14px;color:#ffffffb3;text-align:center}.character-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.character-picker-card{background:#ffffff0d;border:2px solid transparent;border-radius:12px;padding:16px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:12px}.character-picker-card:hover{background:#cd43ff1a;border-color:#cd43ff4d;transform:translateY(-2px)}.character-picker-card.selected{background:#cd43ff26;border-color:#cd43ff;box-shadow:0 0 16px #cd43ff4d}.character-picker-avatar{position:relative;width:64px;height:64px;border-radius:50%;overflow:visible}.character-picker-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid rgba(205,67,255,.3)}.character-picker-avatar-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#cd43ff,#8b2fc9);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:400;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.character-picker-selected-badge{position:absolute;bottom:-4px;right:-4px;width:24px;height:24px;background:#cd43ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:400;box-shadow:0 2px 8px #cd43ff80}.character-picker-info{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;min-width:0;width:100%}.character-picker-name{font-size:14px;font-weight:400;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.character-picker-title-text{font-size:12px;color:#cd43ffcc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.character-picker-empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 16px}.character-picker-empty-icon{font-size:48px;opacity:.5}.character-picker-empty-message{margin:0;font-size:15px;color:#ffffffb3;text-align:center;line-height:1.5}@keyframes characterPickerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes characterPickerSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.character-picker-modal{width:95%;max-height:85vh}.character-picker-grid{grid-template-columns:repeat(2,1fr);gap:10px}.character-picker-card{padding:12px}.character-picker-avatar{width:56px;height:56px}.character-picker-avatar-placeholder{font-size:20px}}.gm-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;animation:gmPickerFadeIn .2s ease-out}.gm-picker-modal{background:transparent;border-radius:12px;border:1px solid rgba(205,67,255,.4);box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:650px;width:90%;max-height:85vh;overflow:hidden;animation:gmPickerSlideUp .3s ease-out;display:flex;flex-direction:column}.gm-picker-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d;flex-shrink:0}.gm-picker-title{margin:0;font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5)}.gm-picker-close{background:none;border:none;color:#fff9;font-size:28px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.gm-picker-close:hover{background:#cd43ff1a;color:#cd43ff}.gm-picker-tabs{display:flex;border-bottom:1px solid rgba(205,67,255,.2);padding:0 16px;flex-shrink:0}.gm-picker-tab{background:none;border:none;padding:12px 16px;color:#fff9;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;display:flex;align-items:center;gap:6px}.gm-picker-tab:hover{color:#ffffffe6}.gm-picker-tab.active{color:#cd43ff}.gm-picker-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#cd43ff;box-shadow:0 0 8px #cd43ff80}.gm-picker-tab-count{background:#cd43ff33;color:#cd43ff;font-size:11px;padding:2px 6px;border-radius:10px}.gm-picker-tab.active .gm-picker-tab-count{background:#cd43ff4d}.gm-picker-content{padding:20px 24px 24px;overflow-y:auto;flex:1;min-height:0;height:420px}.gm-picker-narrator-content{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px 0}.gm-picker-narrator-preview{display:flex;flex-direction:column;align-items:center;gap:16px}.gm-picker-narrator-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid #CD43FF;box-shadow:0 0 20px #cd43ff66}.gm-picker-narrator-info{display:flex;flex-direction:column;align-items:center;gap:4px}.gm-picker-narrator-name{font-size:20px;font-weight:400;color:#cd43ff}.gm-picker-narrator-desc{font-size:14px;color:#fff9;text-align:center;max-width:300px}.gm-picker-select-button{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);color:#cd43ff;padding:12px 32px;border-radius:8px;font-family:var(--font-primary);font-size:.95rem;font-weight:400;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.gm-picker-select-button:hover{background:#cd43ff40;border-color:#cd43ff;box-shadow:0 0 15px #cd43ff4d}.gm-picker-characters-content{min-height:200px}.gm-picker-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:#fff9}.gm-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.gm-picker-card{background:#cd43ff08;border:1px solid rgba(205,67,255,.15);border-radius:12px;padding:16px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:12px}.gm-picker-card:hover{background:#cd43ff14;border-color:#cd43ff66}.gm-picker-card.selected{background:#cd43ff1f;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.gm-picker-avatar{position:relative;width:64px;height:64px;border-radius:50%;overflow:visible}.gm-picker-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid rgba(205,67,255,.3)}.gm-picker-avatar-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#cd43ff,#8b2fc9);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:400;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.gm-picker-selected-badge{position:absolute;bottom:-4px;right:-4px;width:24px;height:24px;background:#cd43ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:400;box-shadow:0 2px 8px #cd43ff80}.gm-picker-info{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;min-width:0;width:100%}.gm-picker-name{font-size:14px;font-weight:400;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.gm-picker-title{font-size:12px;color:#cd43ffcc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.gm-picker-empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 16px}.gm-picker-empty-icon{font-size:48px;opacity:.5}.gm-picker-empty p{margin:0;font-size:15px;color:#ffffffb3;text-align:center}.gm-picker-create-button{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);color:#cd43ff;padding:10px 20px;border-radius:8px;font-family:var(--font-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.gm-picker-create-button:hover{background:#cd43ff40;border-color:#cd43ff;box-shadow:0 0 15px #cd43ff33}.gm-picker-create-content{margin:-20px -24px -24px;height:460px;display:flex;flex-direction:column}.gm-picker-create-content .modal-header{padding:16px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff08;flex-shrink:0}.gm-picker-create-content .modal-header h2{margin:0;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#cd43ff;text-shadow:0 0 15px rgba(205,67,255,.3)}.gm-picker-create-content .modal-close{background:none;border:none;color:#fff9;font-size:24px;cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.gm-picker-create-content .modal-close:hover{color:#fff}.gm-picker-create-content .modal-body{padding:24px;overflow-y:auto;flex:1;min-height:0}.gm-picker-create-content .modal-footer{padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff08;display:flex;gap:12px;justify-content:flex-end;flex-shrink:0}.gm-picker-create-content .character-modal-footer{flex-direction:row!important;padding:16px 24px!important}.gm-picker-create-content .character-modal-footer button{width:auto!important;margin:0!important}@keyframes gmPickerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes gmPickerSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.gm-picker-modal{width:95%;max-height:90vh}.gm-picker-tabs{padding:0 8px}.gm-picker-tab{padding:10px 12px;font-size:13px}.gm-picker-grid{grid-template-columns:repeat(2,1fr);gap:10px}.gm-picker-card{padding:12px}.gm-picker-avatar{width:56px;height:56px}.gm-picker-avatar-placeholder{font-size:20px}.gm-picker-narrator-avatar{width:80px;height:80px}}.xpa-calculator{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:#000c;border:1px solid rgba(205,67,255,.3);border-radius:12px}.xpa-calc-header{display:flex;align-items:center;justify-content:space-between}.xpa-calc-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:300;color:#cd43ff;margin:0;letter-spacing:.5px}.xpa-calc-form{display:flex;flex-direction:column;gap:1.25rem}.xpa-calc-category{display:flex;flex-direction:column;gap:.75rem}.xpa-calc-category-title{font-family:var(--font-primary);font-size:.9rem;font-weight:300;color:#ffffffb3;margin:0;padding-bottom:.375rem;border-bottom:1px solid rgba(205,67,255,.15)}.xpa-calc-fields{display:flex;flex-direction:column;gap:.75rem}.xpa-calc-field{display:flex;flex-direction:column;gap:.25rem}.xpa-calc-value{font-family:var(--font-primary);font-size:1rem;color:#cd43ff;padding:.5rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:6px}.xpa-calc-actions{display:flex;justify-content:center;padding-top:.5rem}.xpa-calc-actions .xpa-add-btn{max-width:300px}.xpa-calc-player-grid{overflow-x:auto}.xpa-calc-player-header{display:grid;grid-template-columns:200px repeat(auto-fill,80px);gap:.25rem;padding:.25rem 0}.xpa-calc-player-name{font-family:var(--font-primary);font-size:.7rem;color:#fff9;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xpa-calc-player-row{display:grid;grid-template-columns:200px repeat(auto-fill,80px);gap:.25rem;align-items:center;padding:.25rem 0}.xpa-calc-item-label{font-family:var(--font-primary);font-size:.8rem;color:#fffc}.xpa-calc-checkbox{text-align:center;cursor:pointer}.xpa-calc-checkbox input[type=checkbox]{accent-color:#CD43FF}.xpa-calc-checklist{display:flex;flex-direction:column;gap:.375rem}.xpa-calc-checkbox-item{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-family:var(--font-primary);font-size:.85rem;color:#fffc}.xpa-calc-checkbox-item input[type=checkbox]{accent-color:#CD43FF}.xpa-results{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid rgba(205,67,255,.2)}.xpa-results-table{display:flex;flex-direction:column;gap:.25rem}.xpa-results-header{display:grid;grid-template-columns:2fr 1fr 2fr 1fr 1.5fr;gap:.5rem;padding:.5rem;color:#cd43ff;font-family:var(--font-primary);font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.xpa-results-row{display:grid;grid-template-columns:2fr 1fr 2fr 1fr 1.5fr;gap:.5rem;padding:.5rem;background:#cd43ff08;border-radius:4px;align-items:center}.xpa-results-row:hover{background:#cd43ff14}.xpa-result-name{font-family:var(--font-primary);font-size:.85rem;color:#ffffffe6}.xpa-result-value{font-family:var(--font-primary);font-size:.8rem;color:#ffffffb3}.xpa-result-final{font-family:var(--font-primary);font-size:.9rem;color:#cd43ff}.end-session-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:endSessionFadeIn .2s ease-out}.end-session-modal{background:transparent;border-radius:12px;border:1px solid rgba(205,67,255,.4);box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:550px;width:90%;max-height:85vh;overflow:hidden;animation:endSessionSlideUp .3s ease-out;display:flex;flex-direction:column}.end-session-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d;flex-shrink:0}.end-session-title{margin:0;font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5)}.end-session-content{padding:24px;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:16px}.end-session-label{font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#cd43ffe6;text-transform:uppercase;letter-spacing:.5px;margin:0}.end-session-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.end-session-textarea{width:100%;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;padding:12px;resize:vertical;min-height:60px;transition:border-color .2s ease;box-sizing:border-box}.end-session-textarea:focus{outline:none;border-color:#cd43ff80;box-shadow:0 0 8px #cd43ff26}.end-session-pc-list{display:flex;flex-direction:column;gap:0;border:1px solid rgba(205,67,255,.1);border-radius:8px;overflow:hidden}.end-session-pc-row{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#cd43ff08;border-bottom:1px solid rgba(205,67,255,.08)}.end-session-pc-row:last-child{border-bottom:none}.end-session-pc-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0}.end-session-pc-avatar img{width:100%;height:100%;object-fit:cover;border:2px solid rgba(205,67,255,.3);border-radius:50%}.end-session-pc-avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#cd43ff,#8b2fc9);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:400;color:#fff;border-radius:50%}.end-session-pc-info{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.end-session-pc-name{font-size:14px;font-weight:400;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.end-session-pc-player{font-size:12px;color:#ffffff80;white-space:nowrap}.end-session-xp-input{width:60px;background:#000000b3;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-family:var(--font-primary);font-size:14px;font-weight:400;text-align:center;padding:6px 4px;flex-shrink:0;transition:border-color .2s ease;-moz-appearance:textfield}.end-session-xp-input::-webkit-outer-spin-button,.end-session-xp-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.end-session-xp-input:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 6px #cd43ff4d}.end-session-xp-input::placeholder{color:#cd43ff66;font-weight:400}.end-session-empty{padding:24px;text-align:center;color:#ffffff80;font-size:14px}.end-session-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d;flex-shrink:0}@keyframes endSessionFadeIn{0%{opacity:0}to{opacity:1}}@keyframes endSessionSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.end-session-modal{width:95%;max-height:90vh}.end-session-content{padding:16px}.end-session-pc-row{padding:10px 12px}}.character-avatar-selector{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#cd43ff14;border-radius:8px;border:1px solid rgba(205,67,255,.2);margin-bottom:12px}.character-avatar-selector.disabled{opacity:.6;background:#ff646414;border-color:#ff646433}.character-selector-button{position:relative;width:48px;height:48px;border-radius:50%;border:2px solid rgba(205,67,255,.4);background:#cd43ff1a;cursor:pointer;padding:0;overflow:visible;transition:all .2s ease;flex-shrink:0}.character-selector-button:hover:not(:disabled){border-color:#cd43ff;transform:scale(1.05);box-shadow:0 0 12px #cd43ff4d}.character-selector-button:disabled{cursor:not-allowed;opacity:.5}.character-selector-button.has-character{border-color:#cd43ff}.character-selector-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.character-selector-avatar-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#cd43ff,#8b2fc9);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:400;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.character-selector-placeholder{width:100%;height:100%;border-radius:50%;background:#ffffff1a;display:flex;align-items:center;justify-content:center}.character-selector-placeholder-icon{font-size:20px;color:#ffffff80}.character-selector-change-indicator{position:absolute;bottom:-4px;right:-4px;width:20px;height:20px;background:#cd43ff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #cd43ff66}.character-selector-change-icon{font-size:11px;color:#fff;font-weight:400}.character-selector-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.character-selector-label{font-size:14px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.character-selector-name{font-size:11px;font-weight:400;color:#cd43ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.character-selector-auto-hint{font-size:11px;color:#fff6;font-style:normal}.character-selector-prompt{font-size:13px;color:#ffffffb3}.character-avatar-selector.disabled .character-selector-prompt{color:#ff6464cc}@keyframes avatarPulse{0%,to{opacity:1}50%{opacity:.85}}@media (max-width: 600px){.character-avatar-selector{padding:6px 10px;gap:10px}.character-selector-button{width:40px;height:40px}.character-selector-avatar-placeholder{font-size:16px}.character-selector-name{font-size:10px}}.ql-font-inter{font-family:Inter,sans-serif}.ql-font-nunito{font-family:Nunito,sans-serif}.ql-font-merriweather{font-family:Merriweather,serif}.ql-font-playfair-display{font-family:Playfair Display,serif}.ql-font-lora{font-family:Lora,serif}.ql-font-cinzel{font-family:Cinzel,serif}.ql-font-uncial-antiqua{font-family:Uncial Antiqua,cursive}.ql-font-dancing-script{font-family:Dancing Script,cursive}.ql-font-caveat{font-family:Caveat,cursive}.ql-font-fira-code{font-family:Fira Code,monospace}.ql-font-source-code-pro{font-family:Source Code Pro,monospace}.ql-picker.ql-font .ql-picker-label:before,.ql-picker.ql-font .ql-picker-item:before{content:"Poppins";font-family:Poppins,sans-serif}.ql-picker.ql-font .ql-picker-label[data-value=inter]:before,.ql-picker.ql-font .ql-picker-item[data-value=inter]:before{content:"Inter";font-family:Inter,sans-serif}.ql-picker.ql-font .ql-picker-label[data-value=nunito]:before,.ql-picker.ql-font .ql-picker-item[data-value=nunito]:before{content:"Nunito";font-family:Nunito,sans-serif}.ql-picker.ql-font .ql-picker-label[data-value=merriweather]:before,.ql-picker.ql-font .ql-picker-item[data-value=merriweather]:before{content:"Merriweather";font-family:Merriweather,serif}.ql-picker.ql-font .ql-picker-label[data-value=playfair-display]:before,.ql-picker.ql-font .ql-picker-item[data-value=playfair-display]:before{content:"Playfair Display";font-family:Playfair Display,serif}.ql-picker.ql-font .ql-picker-label[data-value=lora]:before,.ql-picker.ql-font .ql-picker-item[data-value=lora]:before{content:"Lora";font-family:Lora,serif}.ql-picker.ql-font .ql-picker-label[data-value=cinzel]:before,.ql-picker.ql-font .ql-picker-item[data-value=cinzel]:before{content:"Cinzel";font-family:Cinzel,serif}.ql-picker.ql-font .ql-picker-label[data-value=uncial-antiqua]:before,.ql-picker.ql-font .ql-picker-item[data-value=uncial-antiqua]:before{content:"Uncial Antiqua";font-family:Uncial Antiqua,cursive}.ql-picker.ql-font .ql-picker-label[data-value=dancing-script]:before,.ql-picker.ql-font .ql-picker-item[data-value=dancing-script]:before{content:"Dancing Script";font-family:Dancing Script,cursive}.ql-picker.ql-font .ql-picker-label[data-value=caveat]:before,.ql-picker.ql-font .ql-picker-item[data-value=caveat]:before{content:"Caveat";font-family:Caveat,cursive}.ql-picker.ql-font .ql-picker-label[data-value=fira-code]:before,.ql-picker.ql-font .ql-picker-item[data-value=fira-code]:before{content:"Fira Code";font-family:Fira Code,monospace}.ql-picker.ql-font .ql-picker-label[data-value=source-code-pro]:before,.ql-picker.ql-font .ql-picker-item[data-value=source-code-pro]:before{content:"Source Code Pro";font-family:Source Code Pro,monospace}.post-composer{width:100%;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.character-selector-row{display:flex;align-items:center;justify-content:space-between;width:100%}.end-session-btn{flex-shrink:0}.composer-input-container{position:relative;width:100%}.composer-textarea{width:100%;min-height:80px;max-height:400px;padding:12px 80px 12px 12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffe6;font-size:14px;font-family:inherit;line-height:1.6;resize:none;overflow-y:auto;transition:all .2s ease}.composer-textarea:focus{outline:none;border-color:#cd43ff99;background:#000000b3;box-shadow:0 0 0 3px #cd43ff1a}.composer-textarea:disabled{opacity:.5;cursor:not-allowed}.composer-textarea.at-limit{border-color:#ff434399}.composer-textarea::placeholder{color:#fff6}.composer-quill{width:100%;background:#00000080;border:1px solid rgba(205,67,255,.3);border-top:none;border-radius:0 0 8px 8px;overflow:hidden;transition:all .2s ease}.composer-quill.at-limit{border-color:#ff434399}.composer-custom-toolbar{background:#0009;border:1px solid rgba(205,67,255,.3);border-bottom:none;border-radius:8px 8px 0 0;padding:8px;display:flex;justify-content:space-between;align-items:center;gap:8px}.composer-custom-toolbar .toolbar-left{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.composer-custom-toolbar .toolbar-right{display:flex;gap:4px;align-items:center;flex:1}.composer-custom-toolbar .toolbar-left button,.composer-custom-toolbar .toolbar-left select{background:transparent;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#cd43ffb3;cursor:pointer;transition:all .2s ease;padding:4px 6px;height:28px}.composer-custom-toolbar .toolbar-left button:hover,.composer-custom-toolbar .toolbar-left select:hover{background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff}.composer-custom-toolbar .toolbar-left button.ql-active{background:#cd43ff4d;border-color:#cd43ffb3;color:#cd43ff}.composer-custom-toolbar .toolbar-left .ql-stroke{stroke:#cd43ffb3}.composer-custom-toolbar .toolbar-left .ql-fill{fill:#cd43ffb3}.composer-custom-toolbar .toolbar-left button:hover .ql-stroke,.composer-custom-toolbar .toolbar-left button.ql-active .ql-stroke{stroke:#cd43ff}.composer-custom-toolbar .toolbar-left button:hover .ql-fill,.composer-custom-toolbar .toolbar-left button.ql-active .ql-fill{fill:#cd43ff}.composer-custom-toolbar .toolbar-left .ql-picker-label{color:#ffffffe6;border-color:#cd43ff4d}.toolbar-search-wrapper{position:relative}.toolbar-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffb3;cursor:pointer;transition:all .2s ease}.toolbar-icon-btn:hover{background:#cd43ff33;color:#cd43ff;border-color:#cd43ff80}.toolbar-icon-btn.active{background:#cd43ff4d;color:#fffffff2;border-color:#cd43ffb3}.toolbar-text-btn{height:28px;padding:0 10px;font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;color:#cd43ffb3;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;cursor:pointer;transition:all .2s ease}.toolbar-text-btn:hover{background:#cd43ff26;color:#cd43ff;border-color:#cd43ff80}.toolbar-text-btn.active{background:#cd43ff4d;color:#fffffff2;border-color:#cd43ffb3;text-shadow:0 0 6px rgba(205,67,255,.4)}.toolbar-action-group{display:flex;align-items:center;gap:6px}.toolbar-speech-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0}.toolbar-namebank-btn{display:flex;align-items:center;justify-content:center;color:#cd43ff;padding:0}.toolbar-namebank-btn:hover{color:#e056ff}.toolbar-ai-btn{font-size:13px;font-weight:500;height:32px;padding:0 12px}.toolbar-ai-btn:hover{box-shadow:0 0 15px #cd43ff33}.toolbar-spacer{flex:1}.toolbar-divider{width:1px;height:20px;background:#cd43ff40;margin:0 4px}.composer-quill .ql-editor .ooc-block{border-left:3px solid rgba(205,67,255,.6);background:#cd43ff14;padding:8px 12px;margin:4px 0;border-radius:4px;position:relative}.composer-quill .ql-editor .ooc-block:before{content:"OOC";display:block;font-size:.65em;text-transform:uppercase;letter-spacing:1px;color:#cd43ffb3;margin-bottom:2px;font-weight:400}.composer-quill .ql-editor .ooc-block+.ooc-block{margin-top:0;padding-top:0;border-top-left-radius:0;border-top-right-radius:0}.composer-quill .ql-editor .ooc-block+.ooc-block:before{display:none}.composer-quill .ql-editor .ooc-block:has(+.ooc-block){margin-bottom:0;padding-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.image-upload-toggle-button{font-size:18px;padding:4px 8px!important;background:transparent!important;border:none!important;display:flex!important;align-items:center!important;justify-content:center!important;height:28px!important;filter:sepia(40%) saturate(200%) hue-rotate(240deg) brightness(.9) contrast(1.1);opacity:.8;transition:all .2s ease;cursor:pointer;position:relative;top:-1px}.image-upload-toggle-button:hover{filter:sepia(50%) saturate(250%) hue-rotate(240deg) brightness(1) contrast(1.2);opacity:1;transform:scale(1.1)}.image-count-display{font-size:13px;color:#fffc;margin-left:4px;font-weight:500}.composer-quill .ql-toolbar{background:#0009;border:none;border-bottom:1px solid rgba(205,67,255,.3);padding:8px;display:none}.composer-quill .ql-toolbar .ql-stroke{stroke:#cd43ffb3}.composer-quill .ql-toolbar .ql-fill{fill:#cd43ffb3}.composer-quill .ql-toolbar .ql-picker-label{color:#ffffffe6;border-color:#cd43ff4d}.composer-quill .ql-toolbar button:hover,.composer-quill .ql-toolbar button:focus,.composer-quill .ql-toolbar button.ql-active{background:#cd43ff33}.composer-quill .ql-toolbar button:hover .ql-stroke,.composer-quill .ql-toolbar button.ql-active .ql-stroke{stroke:#cd43ff}.composer-quill .ql-toolbar button:hover .ql-fill,.composer-quill .ql-toolbar button.ql-active .ql-fill{fill:#cd43ff}.composer-quill .ql-container{border:none;font-size:14px;font-family:var(--font-primary);min-height:120px;max-height:400px;overflow-y:auto}.composer-quill .ql-editor{padding:12px 12px 40px;color:#ffffffe6;line-height:1.6;font-family:var(--font-primary)}.composer-quill .ql-editor.ql-blank:before{color:#fff6;font-style:normal;left:12px}.composer-input-container:focus-within .composer-quill{border-color:#cd43ff99;background:#000000b3}.composer-input-container:focus-within .composer-custom-toolbar{border-color:#cd43ff99;box-shadow:0 0 0 3px #cd43ff1a}.composer-input-container:focus-within .composer-quill{box-shadow:0 0 0 3px #cd43ff1a}.composer-quill .ql-picker-options{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:4px}.composer-quill .ql-picker-item{color:#ffffffe6}.composer-quill .ql-picker-item:hover{background:#cd43ff33;color:#fff}.composer-quill .ql-color-picker .ql-picker-options{padding:8px}.composer-quill .ql-editor[contenteditable=false]{opacity:.5;cursor:not-allowed}.composer-quill .ql-editor h1,.composer-quill .ql-editor h2,.composer-quill .ql-editor h3{color:#cd43ffe6;font-weight:400;margin:.5em 0}.composer-quill .ql-editor a{color:#cd43ffe6;text-decoration:underline}.composer-quill .ql-editor blockquote{border-left:3px solid rgba(205,67,255,.5);padding-left:12px;margin:8px 0;color:#ffffffb3}.composer-quill .ql-editor code,.composer-quill .ql-editor .ql-code-block{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:2px 6px;color:#cd43ffe6;font-family:Courier New,monospace}.composer-char-count{position:absolute;bottom:8px;right:12px;font-size:12px;color:#cd43ff80;pointer-events:none;-webkit-user-select:none;user-select:none}.composer-char-count.near-limit{color:#ffa500cc;font-weight:400}.composer-char-count.at-limit{color:#ff4343e6;font-weight:400}.composer-error{padding:8px 12px;background:#ff434326;border:1px solid rgba(255,67,67,.3);border-radius:6px;color:#ff4343e6;font-size:13px}.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.turn-done-toggle{display:flex;align-items:center;gap:8px;flex-shrink:0}.turn-done-label{font-size:12px;color:#ffffffb3;white-space:nowrap}.composer-hint{font-size:12px;color:#cd43ff99}.composer-hint kbd{display:inline-block;padding:2px 6px;background:#cd43ff33;border:1px solid rgba(205,67,255,.3);border-radius:4px;font-family:monospace;font-size:11px;color:#cd43ffe6}.composer-buttons{display:flex;gap:8px}@media (max-width: 768px){.post-composer{padding:12px}.composer-actions{flex-direction:column;align-items:stretch}.composer-hint{text-align:center;order:2;margin-top:8px}.composer-buttons{width:100%;justify-content:stretch}.composer-buttons button{flex:1}}.speech-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.speech-modal{background:#0f0519f2;border:1px solid rgba(205,67,255,.4);border-radius:10px;padding:20px;width:90%;max-width:400px;box-shadow:0 8px 32px #cd43ff33;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.speech-modal-header{font-family:var(--font-primary);color:#cd43ff;font-size:16px;font-weight:400;margin:0 0 12px}.speech-modal-textarea{width:100%;min-height:60px;padding:10px 12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#f3e8ff;font-size:14px;line-height:1.5;font-family:inherit;resize:vertical;box-sizing:border-box}.speech-modal-textarea:focus{outline:none;border-color:#cd43ff99}.speech-modal-textarea::placeholder{color:#cd43ff66}.speech-modal-buttons{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.speech-modal-btn{padding:10px 24px;border-radius:10px;font-family:var(--font-primary);font-size:13px;font-weight:400;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;border:1px solid}.speech-cancel-btn{background:#000000e6;color:#ff43cd;border-color:#ff43cd4d}.speech-cancel-btn:hover{background:#ff43cd1a;border-color:#ff43cd80;transform:translateY(-1px)}.speech-insert-btn{background:#000000e6;color:#cd43ff;border-color:#cd43ff4d;animation:speechButtonGlow 3s ease-in-out infinite}.speech-insert-btn:hover:not(:disabled){background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33;transform:translateY(-1px)}.speech-insert-btn:disabled{opacity:.4;cursor:not-allowed;animation:none}@keyframes speechButtonGlow{0%,to{box-shadow:0 0 20px #cd43ff33,0 0 40px #cd43ff1a}50%{box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33}}.typing-indicator{height:24px;display:flex;align-items:center;gap:6px;padding:0 12px;font-family:var(--font-primary);font-size:12px;color:#cd43ffb3;background:#0000004d;border-top:1px solid rgba(205,67,255,.1);transition:opacity .3s ease;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.typing-indicator--hidden{opacity:0;pointer-events:none}.typing-indicator--visible{opacity:1}.typing-indicator__dots{display:inline-flex;gap:3px;align-items:center}.typing-indicator__dot{width:4px;height:4px;border-radius:50%;background:#cd43ff99;animation:typing-bounce 1.4s ease-in-out infinite}.typing-indicator__dot:nth-child(2){animation-delay:.2s}.typing-indicator__dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.typing-indicator__text{flex:1;overflow:hidden;text-overflow:ellipsis}.thread-view{position:fixed;top:0;right:0;width:500px;height:100%;background:#191923fa;border-left:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;z-index:1000;box-shadow:-4px 0 16px #0000004d}.thread-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:#14141ecc}.thread-title{font-size:18px;font-weight:400;color:#fffffff2;margin:0}.thread-close-button{background:transparent;border:none;color:#fff9;font-size:20px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .15s ease;line-height:1}.thread-close-button:hover{background:#ffffff1a;color:#fffffff2}.thread-content{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.thread-content::-webkit-scrollbar{width:8px}.thread-content::-webkit-scrollbar-track{background:#ffffff0d}.thread-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.thread-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.thread-parent-post{background:#5865f21a;border:1px solid rgba(88,101,242,.3);border-radius:8px;padding:12px}.thread-replies{display:flex;flex-direction:column;gap:12px;padding-left:24px;border-left:2px solid rgba(255,255,255,.1)}.thread-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:16px}.thread-error{padding:20px;text-align:center}.thread-error p{color:#ff6464e6;font-size:14px;margin:0}.thread-no-replies{padding:40px 20px;text-align:center}.thread-no-replies p{color:#ffffff80;font-size:14px;margin:0;font-style:normal}.thread-composer{padding:16px;border-top:1px solid rgba(255,255,255,.1);background:#14141ecc}@media (max-width: 768px){.thread-view{width:100%;max-width:100vw}.thread-content{padding:12px}.thread-replies{padding-left:16px}}@keyframes thread-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.thread-view{animation:thread-slide-in .2s ease-out}@media (prefers-color-scheme: dark){.thread-view{background:#191923fa}.thread-header,.thread-composer{background:#14141ecc}}@media (prefers-color-scheme: light){.thread-view{background:#f5f5fafa;border-left-color:#0000001a}.thread-header{background:#ebebf0cc;border-bottom-color:#0000001a}.thread-title{color:#000000f2}.thread-close-button{color:#0009}.thread-close-button:hover{background:#0000001a;color:#000000f2}.thread-parent-post{background:#5865f214;border-color:#5865f233}.thread-replies{border-left-color:#0000001a}.thread-loading p{color:#0009}.thread-no-replies p{color:#00000080}.thread-composer{background:#ebebf0cc;border-top-color:#0000001a}.thread-content::-webkit-scrollbar-track{background:#0000000d}.thread-content::-webkit-scrollbar-thumb{background:#0003}.thread-content::-webkit-scrollbar-thumb:hover{background:#0000004d}}.ic-floating-footer{display:flex;align-items:center;justify-content:center;gap:12px;width:fit-content;margin:0 auto;padding:6px 16px;border-radius:16px;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(205,67,255,.2)}.ic-footer-group{display:flex;align-items:center;gap:6px}.ic-footer-label{font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.8px;color:#cd43ff80;white-space:nowrap}.ic-footer-divider{width:1px;height:20px;background:#cd43ff26}.ic-floating-footer .toggle-group{align-items:center!important}.ic-floating-footer .toggle-container.small .toggle-option{display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important;height:22px!important;padding:0 10px!important;font-size:11px!important;line-height:1!important}.ic-floating-footer .toggle-label{line-height:1!important}.ic-floating-footer .toggle-container.small .toggle-option.active{border:1px solid rgba(205,67,255,.6);background:#cd43ff40}.ic-floating-footer .initiative-button{width:28px;height:28px}.ic-floating-footer .initiative-icon{width:16px;height:16px}.ic-footer-dice-btn{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;cursor:pointer;transition:all .2s ease}.ic-footer-dice-icon{width:16px;height:16px;filter:brightness(0) saturate(100%) invert(48%) sepia(95%) saturate(6500%) hue-rotate(267deg) brightness(105%) contrast(101%);transition:filter .2s ease}.ic-footer-dice-btn:hover{background:#cd43ff40;border-color:#cd43ffb3;transform:scale(1.05)}.ic-footer-dice-btn:hover .ic-footer-dice-icon{filter:brightness(0) saturate(100%) invert(48%) sepia(95%) saturate(6500%) hue-rotate(267deg) brightness(120%) contrast(101%)}.ic-footer-dice-btn:active{transform:scale(.95)}.ic-footer-objection-dot{display:flex;align-items:center;gap:4px;padding:2px 8px;background:transparent;border:none;cursor:pointer;transition:all .15s ease;border-radius:10px}.ic-footer-objection-dot:hover{background:#ff43cd33;box-shadow:0 0 8px #ff43cd4d}.ic-footer-objection-dot:active{transform:scale(.95)}.ic-footer-objection-dot .objection-dot{width:8px;height:8px;border-radius:50%;background:#ff43cd;box-shadow:0 0 6px #ff43cd80}.ic-footer-objection-dot .objection-dot-count{font-size:11px;font-weight:600;color:#ff43cd;line-height:1}.objection-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center}.objection-modal{background:transparent;border:1px solid rgba(205,67,255,.4);box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;max-width:550px;width:90%;display:flex;flex-direction:column;max-height:80vh}.objection-header{padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}.objection-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5);margin:0}.objection-close{background:none;border:none;color:#ffffff80;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .15s ease}.objection-close:hover{color:#ffffffe6}.objection-content{padding:24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.objection-post-preview{background:#0000004d;border-left:3px solid rgba(205,67,255,.3);padding:12px;border-radius:8px}.objection-post-author{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#ffffff80;margin-bottom:6px}.objection-post-body{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#ffffffb3;line-height:1.5}.objection-label{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#fffc}.objection-textarea{width:100%;min-height:120px;padding:12px;border-radius:8px;border:1px solid rgba(205,67,255,.2);background:#00000080;color:#ffffffe6;font-family:var(--font-primary);font-size:14px;font-weight:400;resize:vertical;outline:none;transition:border-color .15s ease;box-sizing:border-box}.objection-textarea:focus{border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff1a}.objection-textarea::placeholder{color:#ffffff4d}.objection-char-count{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#fff6;text-align:right;font-variant-numeric:tabular-nums}.objection-char-count.below-min{color:#ff43cd}.objection-error{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#ff43cd;padding:8px 12px;background:#ff43cd1a;border-radius:6px;border:1px solid rgba(255,67,205,.2)}.objection-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d;border-radius:0 0 12px 12px;flex-shrink:0}.objection-btn-cancel{padding:8px 20px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#00000080;color:#ffffffb3;font-family:var(--font-primary);font-size:14px;font-weight:400;cursor:pointer;transition:all .15s ease}.objection-btn-cancel:hover{background:#ffffff0d;color:#ffffffe6}.objection-btn-submit{padding:8px 20px;border-radius:8px;border:1px solid rgba(205,67,255,.3);background:#000000e6;color:#cd43ff;font-family:var(--font-primary);font-size:14px;font-weight:400;cursor:pointer;transition:all .15s ease}.objection-btn-submit:hover:not(:disabled){background:#cd43ff1a;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33}.objection-btn-submit:disabled{opacity:.4;cursor:not-allowed}.post-objection-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.post-objection-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.post-objection-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.post-objection-modal .modal-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.post-objection-modal-content{padding:24px;overflow-y:auto;flex:1}.post-objection-modal-content::-webkit-scrollbar{width:8px}.post-objection-modal-content::-webkit-scrollbar-track{background:transparent}.post-objection-modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.objection-modal-empty{font-family:var(--font-primary);font-size:13px;color:#cd43ff80;text-align:center;padding:24px 0}.objection-modal-item{padding:14px 16px;margin-bottom:12px;border-radius:8px;background:#0000004d;border-left:3px solid transparent}.objection-modal-item.status-pending{border-left-color:#ff43cd}.objection-modal-item.status-accepted{border-left-color:#cd43ff}.objection-modal-item.status-rejected{border-left-color:#cd43ff40;opacity:.7}.objection-item-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.objection-status-badge{font-family:var(--font-primary);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:4px}.objection-status-badge.pending{background:#ff43cd33;color:#ff43cd}.objection-status-badge.accepted{background:#cd43ff33;color:#cd43ff}.objection-status-badge.rejected{background:#0000004d;color:#cd43ff80}.objection-resolved-by{font-family:var(--font-primary);font-size:11px;color:#cd43ff80}.objection-item-justification{font-family:var(--font-primary);font-size:13px;color:#e0d0f0;line-height:1.5;margin-bottom:8px}.objection-item-resolution{font-family:var(--font-primary);font-size:12px;color:#cd43ffb3;padding:8px 10px;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:6px;margin-bottom:8px}.resolution-label{font-weight:600;color:#cd43ff}.objection-item-actions{display:flex;gap:8px;margin-top:8px}.objection-change-form{margin-top:10px;display:flex;flex-direction:column;gap:8px}.objection-change-status{padding:6px 10px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#e0d0f0;font-size:12px;font-family:var(--font-primary)}.objection-change-textarea{padding:8px 10px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#e0d0f0;font-size:13px;font-family:var(--font-primary);resize:vertical}.objection-change-textarea:focus,.objection-change-status:focus{border-color:#cd43ff80;outline:none;box-shadow:0 0 8px #cd43ff26}.objection-review-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center}.objection-review-panel{background:transparent;border:1px solid rgba(205,67,255,.4);box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;max-width:700px;width:90%;height:70vh;max-height:85vh;display:flex;flex-direction:column}.objection-review-header{padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}.objection-review-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5);margin:0}.objection-review-tabs{display:flex;gap:2px;padding:12px 24px;border-bottom:1px solid rgba(205,67,255,.1);background:linear-gradient(135deg,#000c,#14001eb3)}.objection-tab{padding:6px 16px;border:.25px solid rgba(205,67,255,.3);border-radius:6px;background:transparent;color:#ffffff80;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;transition:all .15s ease}.objection-tab:hover{color:#fffc}.objection-tab.active{background:#cd43ff33;color:#cd43ff;text-shadow:0 0 10px rgba(205,67,255,.3)}.objection-review-list{padding:16px 24px;overflow-y:auto;flex:1;min-height:300px;display:flex;flex-direction:column;gap:12px}.objection-review-loading,.objection-review-empty{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#fff6;text-align:center;padding:40px 0}.objection-card{background:#0000004d;border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px;border-left:3px solid rgba(255,255,255,.2)}.objection-card.status-accepted{border-left-color:#cd43ff99}.objection-card.status-rejected{border-left-color:#ff43cd99}.objection-card.status-pending{border-left-color:#ffffff4d}.objection-card-post{padding:10px;background:#0003;border-radius:6px;position:relative}.objection-card-level{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#cd43ff80;display:block;margin-bottom:4px}.objection-card-post-body{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#fff9;line-height:1.4}.objection-card-ai-tag{position:absolute;top:8px;right:8px;padding:2px 6px;border-radius:4px;background:#cd43ff26;color:#cd43ffb3;font-family:var(--font-primary);font-size:10px;font-weight:400}.objection-card-details{display:flex;flex-direction:column;gap:6px}.objection-card-author{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#ffffffb3;display:flex;align-items:center;gap:8px}.objection-card-date{font-size:11px;color:#ffffff4d;font-variant-numeric:tabular-nums}.objection-card-justification{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffffffd9;line-height:1.5}.objection-card-ai-reasoning,.objection-card-gm-reasoning{padding:10px;background:#cd43ff0d;border-radius:6px;border:1px solid rgba(205,67,255,.15)}.objection-card-ai-label,.objection-card-gm-label{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#cd43ff99;display:block;margin-bottom:6px}.objection-card-resolution-text{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#ffffffb3;line-height:1.4}.objection-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.objection-status-tag{font-family:var(--font-primary);font-size:12px;font-weight:400;padding:3px 10px;border-radius:12px}.objection-status-tag.status-pending{color:#fff9;background:#ffffff14}.objection-status-tag.status-accepted{color:#cd43ff;background:#cd43ff1a}.objection-status-tag.status-rejected{color:#ff43cd;background:#ff43cd1a}.objection-card-actions{display:flex;gap:8px}.objection-action-accept{padding:6px 16px;border-radius:6px;border:1px solid rgba(205,67,255,.3);background:#000000e6;color:#cd43ff;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;transition:all .15s ease}.objection-action-accept:hover:not(:disabled){background:#cd43ff1a;box-shadow:0 0 20px #cd43ff33}.objection-action-reject{padding:6px 16px;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:#00000080;color:#fff9;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;transition:all .15s ease}.objection-action-reject:hover:not(:disabled){color:#ff43cd;border-color:#ff43cd4d}.objection-action-override{padding:6px 16px;border-radius:6px;border:1px solid rgba(205,67,255,.3);background:transparent;color:#cd43ff;font-family:var(--font-primary);font-size:12px;font-weight:400;cursor:pointer;transition:all .15s ease}.objection-action-override:hover:not(:disabled){background:#cd43ff1a}.objection-action-accept:disabled,.objection-action-reject:disabled,.objection-action-override:disabled{opacity:.4;cursor:not-allowed}.objection-review-header-actions{display:flex;align-items:center;gap:12px}.objection-card.orphaned{opacity:.6;border-left-style:dashed;border-left-color:#ffffff26}.objection-deleted-post-tag{display:inline-block;margin-left:8px;padding:1px 6px;border-radius:4px;background:#ff43cd26;color:#ff43cd;font-family:var(--font-primary);font-size:10px;font-weight:400}.objection-deleted-post-text{font-style:italic;color:#ffffff4d}.objection-dismiss-icon{opacity:.3;transition:opacity .15s ease}.objection-dismiss-icon:hover{opacity:.8}.session-view{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.session-scroll-area{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:20px;padding:24px}.session-bottom-bar{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 24px 12px}.session-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;border-bottom:1px solid rgba(205,67,255,.2)}.session-info{flex:1;min-width:0}.session-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:8px}.session-section-badge{display:inline-block;padding:4px 12px;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:12px;color:#cd43ffe6;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.session-separator{color:#cd43ff80;font-size:16px}.session-type{color:#ffffffb3;font-size:13px;text-transform:capitalize}.session-title{margin:0;color:#fffffff2;font-size:28px;font-weight:400;text-shadow:0 2px 4px rgba(0,0,0,.3)}.session-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.session-description{margin:8px 0 0;color:#fff9;font-size:14px;font-style:normal;line-height:1.4}.session-composer-container{flex-shrink:0;display:flex;flex-direction:column;gap:12px}.character-selector-container{display:flex;flex-direction:column;gap:8px;padding:12px 16px;background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px}.character-selector-label{font-size:13px;font-weight:400;color:#cd43ffe6;text-transform:uppercase;letter-spacing:.5px}.character-selector{max-width:400px}.character-selector-loading{color:#cd43ffb3;font-size:14px;font-style:normal}.character-selector-error{color:#ffa500e6;font-size:14px;padding:8px 12px;background:#ffa5001a;border:1px solid rgba(255,165,0,.3);border-radius:6px}.session-posts-container{display:flex;flex-direction:column}.session-loading-more{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;margin-bottom:12px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.session-scroll-area::-webkit-scrollbar{width:8px}.session-scroll-area::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.session-scroll-area::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:4px;transition:background .2s ease}.session-scroll-area::-webkit-scrollbar-thumb:hover{background:#cd43ff99}@media (max-width: 768px){.session-scroll-area{padding:16px;gap:16px}.session-bottom-bar{padding:6px 16px 10px}.session-header{flex-direction:column;align-items:stretch}.session-title{font-size:24px}}.session-view{animation:fadeIn .3s ease}.highlight-violation{animation:highlightPulse 3s ease-out;position:relative}.highlight-violation:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid #FF43CD;border-radius:12px;animation:highlightFade 3s ease-out forwards;pointer-events:none}@keyframes highlightPulse{0%{box-shadow:0 0 20px #ff43cdcc}50%{box-shadow:0 0 30px #ff43cd80}to{box-shadow:0 0 #ff43cd00}}@keyframes highlightFade{0%{opacity:1}70%{opacity:1}to{opacity:0}}.welcome-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.welcome-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:120px;padding:24px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;max-width:520px;margin:0 auto;box-sizing:border-box}.empty-icon{font-size:48px;opacity:.6}.empty-text{font-family:var(--font-primary);font-size:18px;color:#cd43ff;text-align:center;max-width:500px;line-height:1.6}.settings-content{display:flex;flex-direction:column;gap:12px;padding:0 2rem}.settings-content .settings-section{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:24px;margin-bottom:0}.section-title{font-family:var(--font-primary);font-size:20px;font-weight:400;color:#cd43ff;margin:0 0 20px;letter-spacing:.5px}.info-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}@media (max-width: 900px){.info-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 600px){.info-grid{grid-template-columns:repeat(2,1fr)}}.info-box{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;text-align:center;min-width:0}.info-label{font-family:var(--font-primary);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;color:#cd43ffb3;white-space:nowrap}.info-value{font-family:var(--font-primary);font-size:13px;font-weight:500;color:#cd43ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block}.info-value.coming-soon{color:#cd43ff59;font-style:normal;font-size:11px}.genres-section{display:flex;align-items:center;gap:12px;margin-top:12px;padding:8px 12px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px}.genres-label{font-family:var(--font-primary);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;color:#cd43ffb3;white-space:nowrap}.genres-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.about-content{padding:16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px}.about-text{font-family:var(--font-primary);font-size:14px;line-height:1.8;color:#ffffffe6;margin:0;white-space:pre-wrap}.settings-edit-mode{padding-bottom:20px}.settings-error{background:#ff43431a;border:1px solid rgba(255,67,67,.4);border-radius:6px;padding:12px 16px;color:#ff6b6b;font-size:14px;margin-bottom:16px}.edit-form{display:flex;flex-direction:column;gap:20px}.edit-field{display:flex;flex-direction:column;gap:8px}.edit-field-toggle{flex-direction:row;align-items:center;justify-content:space-between}.edit-label{font-family:var(--font-primary);font-size:13px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:#cd43ffcc}.edit-input,.edit-textarea{font-family:var(--font-primary);font-size:14px;padding:12px 16px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#fff;transition:all .2s ease}.edit-input:focus,.edit-textarea:focus{outline:none;border-color:#cd43ff;background:#00000080}.edit-input::placeholder,.edit-textarea::placeholder{color:#fff6}.edit-textarea{min-height:100px;resize:vertical;line-height:1.6}.edit-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid rgba(205,67,255,.2);margin-top:8px}.info-box.gm-info-box,.info-value.styled-display-name-with-tooltip{overflow:visible}.info-box .styled-display-name-with-tooltip .gm-rank-tooltip{visibility:hidden;position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:#000000f2;color:#fffffff2;padding:8px 12px;border-radius:6px;border:1px solid rgba(205,67,255,.4);font-size:.85rem;white-space:nowrap;z-index:10000;pointer-events:none;box-shadow:0 4px 12px #00000080}.info-box .styled-display-name-with-tooltip:hover .gm-rank-tooltip{visibility:visible}.info-box.claude-ai-box{overflow:visible}.info-value.claude-tier-none{color:#cd43ff66;font-size:.85em}.info-value.claude-tier-pro{color:#cd43ffcc;font-weight:400}.info-value.claude-tier-max5x{color:#cd43ff;font-weight:400;text-shadow:0 0 10px rgba(205,67,255,.4)}.info-value.claude-tier-max20x{color:#ff43ff;font-weight:400;filter:drop-shadow(0 0 8px rgba(255,67,255,.8)) drop-shadow(0 0 15px rgba(255,67,255,.5));animation:pulse-glow-filter 2s infinite}@keyframes pulse-glow-filter{0%,to{filter:drop-shadow(0 0 8px rgba(255,67,255,.8)) drop-shadow(0 0 15px rgba(255,67,255,.5))}50%{filter:drop-shadow(0 0 12px rgba(255,67,255,1)) drop-shadow(0 0 25px rgba(255,67,255,.7))}}.geography-detail-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:99;cursor:pointer;animation:fadeIn .2s ease}.geography-detail-panel{position:fixed;right:0;top:0;bottom:0;width:450px;max-width:90vw;background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid rgba(205,67,255,.2);display:flex;flex-direction:column;z-index:100;animation:slideIn .2s ease;box-shadow:-4px 0 20px #00000080}.geography-detail-panel .detail-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.15);background:#0000004d}.geography-detail-panel .detail-title-section{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.geography-detail-panel .detail-icon{font-size:28px;flex-shrink:0}.geography-detail-panel .detail-title-text{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.geography-detail-panel .detail-title-text h3{margin:0;font-size:20px;font-weight:400;font-family:var(--font-primary);color:#fffffff2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.geography-detail-panel .detail-type{display:inline-block;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary);background:#cd43ff1f;color:#cd43ffe6;border:1px solid rgba(205,67,255,.3);width:fit-content}.geography-detail-panel .close-detail-btn{background:none;border:none;color:#ffffff80;font-size:28px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.geography-detail-panel .close-detail-btn:hover{color:#cd43ff;background:#cd43ff1a}.geography-detail-panel .detail-body{flex:1;overflow-y:auto;padding:24px}.geography-detail-panel .detail-section{margin-bottom:24px}.geography-detail-panel .detail-section:last-child{margin-bottom:0}.geography-detail-panel .detail-section h4{color:#cd43ff;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(205,67,255,.15)}.geography-detail-panel .wider-area-section{padding:16px;background:#cd43ff0d;border-radius:12px;border:1px solid rgba(205,67,255,.1)}.geography-detail-panel .wider-area-section h4{border-bottom:none;padding-bottom:0;margin-bottom:10px}.geography-detail-panel .wider-area-link{background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:8px;color:#ffffffe6;font-size:14px;font-weight:500;padding:10px 16px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.geography-detail-panel .wider-area-link:hover{background:#cd43ff33;border-color:#cd43ff66;box-shadow:0 0 15px #cd43ff26}.geography-detail-panel .wider-area-text{color:#ffffffb3;font-size:14px}.geography-detail-panel .detail-description{margin:0;color:#ffffffd9;line-height:1.7;font-size:14px}.geography-detail-panel .detail-climate,.geography-detail-panel .detail-culture{margin:0;color:#ffffffd9;font-size:14px;line-height:1.6}.geography-detail-panel .detail-features-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.geography-detail-panel .detail-features-list li{padding:10px 14px;background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:8px;color:#ffffffd9;font-size:14px;transition:all .2s ease}.geography-detail-panel .detail-features-list li:hover{background:#cd43ff14;border-color:#cd43ff40}.geography-detail-panel .detail-actions-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.geography-detail-panel .detail-actions-list li{padding:14px 16px;background:#fbbf2414;border:1px solid rgba(251,191,36,.15);border-left:3px solid rgba(251,191,36,.5);border-radius:8px;display:flex;flex-direction:column;gap:10px;transition:all .2s ease}.geography-detail-panel .detail-actions-list li:hover{background:#fbbf241f;border-color:#fbbf2440}.geography-detail-panel .action-description{color:#ffffffd9;font-size:14px;line-height:1.5}.geography-detail-panel .action-session-link{background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:6px;color:#ffffffd9;font-size:12px;padding:6px 12px;cursor:pointer;transition:all .2s ease;width:fit-content}.geography-detail-panel .action-session-link:hover{background:#cd43ff33;border-color:#cd43ff66}.geography-detail-panel .action-session-name{color:#cd43ffb3;font-size:12px;font-style:normal}.geography-detail-panel .linked-sessions{display:flex;flex-direction:column;gap:12px}.geography-detail-panel .session-count-info{color:#fbbf24cc;font-size:13px;margin:0}.geography-detail-panel .session-links-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.geography-detail-panel .session-link-btn{background:#fbbf2414;border:1px solid rgba(251,191,36,.2);border-radius:8px;color:#ffffffd9;font-size:14px;padding:10px 14px;cursor:pointer;transition:all .2s ease;width:100%;text-align:left}.geography-detail-panel .session-link-btn:hover{background:#fbbf2426;border-color:#fbbf2459;box-shadow:0 0 12px #fbbf241a}.geography-detail-panel .children-count{color:#cd43ffb3;font-size:14px;margin:0;padding:12px 16px;background:#cd43ff0d;border-radius:8px;border:1px solid rgba(205,67,255,.1)}.geography-detail-panel .characters-section{margin-bottom:24px}.geography-detail-panel .characters-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.geography-detail-panel .character-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:8px;transition:all .2s ease}.geography-detail-panel .character-item:hover{background:#cd43ff14;border-color:#cd43ff40}.geography-detail-panel .character-icon{font-size:16px;flex-shrink:0}.geography-detail-panel .character-name{color:#ffffffd9;font-size:14px;flex:1}.geography-detail-panel .character-role{color:#cd43ffb3;font-size:12px;font-style:normal}.geography-detail-panel .detail-body::-webkit-scrollbar{width:8px}.geography-detail-panel .detail-body::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.geography-detail-panel .detail-body::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.geography-detail-panel .detail-body::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.geography-detail-panel .detail-actions{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(205,67,255,.1)}.geography-detail-panel .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.geography-detail-panel .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.detail-rulers{color:#ffffffe6;font-style:italic}.detail-faction-tags{display:flex;flex-wrap:wrap;gap:.4rem}.faction-tag{background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:.15rem .5rem;font-size:.8rem;color:#cd43ff}.detail-presences-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.presence-item{display:flex;align-items:center;gap:.5rem;padding:.3rem 0}.presence-type-badge{font-size:.7rem;padding:.1rem .4rem;border-radius:3px;text-transform:uppercase;letter-spacing:.05em;font-weight:400;min-width:70px;text-align:center}.presence-type-authority{background:#cd43ff33;color:#cd43ff}.presence-type-underworld{background:#ff43cd33;color:#ff43cd}.presence-type-supernatural{background:#43cdff33;color:#43cdff}.presence-type-merchant,.presence-type-resident,.presence-type-traveler,.presence-type-other{background:#ffffff1a;color:#ffffffb3}.presence-name{color:#fffffff2;font-weight:400}.presence-activity{color:#fff9;font-size:.85rem}@media (max-width: 768px){.geography-detail-panel{width:100%}}.geography-section{width:100%;height:100%;display:flex;flex-direction:column;padding:16px}.geography-section.loading,.geography-section.error,.geography-section.empty{display:flex;flex-direction:column;align-items:center;color:#ffffff80}.geography-section.error p{color:#cd43ffb3;font-family:var(--font-primary);font-size:16px;margin:0 0 8px}.geography-section.empty .empty-message{font-size:16px;font-family:var(--font-primary);color:#cd43ffb3;margin-bottom:8px}.geography-section.empty .empty-hint{font-size:13px;color:#fff6}.geography-tree-name-wrapper{display:flex;align-items:center}.geography-tree-chevron{background:transparent;border:none;color:#cd43ff99;cursor:pointer;width:16px;height:16px;margin-right:4px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-size:12px;transition:color .15s ease;flex-shrink:0}.geography-tree-chevron:hover{color:#cd43ffe6}.geography-tree-chevron-spacer{display:inline-block;width:16px;margin-right:4px;flex-shrink:0}.event-detail-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:99;cursor:pointer;animation:fadeIn .2s ease}.event-detail-panel{position:fixed;right:0;top:0;bottom:0;width:450px;max-width:90vw;background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid rgba(205,67,255,.2);display:flex;flex-direction:column;z-index:100;animation:slideIn .2s ease;box-shadow:-4px 0 20px #00000080}.event-detail-panel .detail-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.15);background:#0000004d;gap:16px}.event-detail-panel .detail-title-section{flex:1;min-width:0}.event-detail-panel .detail-title-text h3{margin:0 0 10px;font-size:20px;font-weight:400;font-family:var(--font-primary);color:#fffffff2;line-height:1.3;word-wrap:break-word}.event-detail-panel .detail-badges{display:flex;gap:8px;flex-wrap:wrap}.event-detail-panel .scope-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary)}.event-detail-panel .scope-badge.scope-world{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3)}.event-detail-panel .scope-badge.scope-national{background:#3b82f61f;color:#93c5fd;border:1px solid rgba(59,130,246,.3)}.event-detail-panel .detail-header-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.event-detail-panel .detail-actions{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(205,67,255,.1)}.event-detail-panel .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.event-detail-panel .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.event-detail-panel .close-detail-btn{background:none;border:none;color:#ffffff80;font-size:28px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.event-detail-panel .close-detail-btn:hover{color:#cd43ff;background:#cd43ff1a}.event-detail-panel .detail-body{flex:1;overflow-y:auto;padding:24px}.event-detail-panel .detail-section{margin-bottom:24px}.event-detail-panel .detail-section:last-child{margin-bottom:0}.event-detail-panel .detail-section h4{color:#cd43ff;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary);margin:0 0 12px}.event-detail-panel .detail-date{color:#ffffffe6;font-size:15px;font-weight:500;font-family:var(--font-primary);margin:0;padding:12px 16px;background:#cd43ff0d;border-radius:8px;border-left:3px solid #CD43FF}.event-detail-panel .detail-cultural-date{color:#ffffff80;font-size:13px;font-style:normal;margin:8px 0 0;padding:10px 16px;background:#0003;border-radius:8px;border-left:3px solid rgba(205,67,255,.3)}.event-detail-panel .detail-date-recorded{color:#fff6;font-size:12px;margin:8px 0 0}.event-detail-panel .detail-description{color:#ffffffd9;font-size:14px;line-height:1.7;margin:0;white-space:pre-wrap}.event-detail-panel .detail-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.event-detail-panel .detail-list-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:8px;transition:all .2s ease}.event-detail-panel .detail-list-item:hover{background:#cd43ff14;border-color:#cd43ff40}.event-detail-panel .list-item-icon{font-size:16px;flex-shrink:0}.event-detail-panel .list-item-text{color:#ffffffd9;font-size:14px;flex:1}.event-detail-panel .list-item-text.thread-text{color:#cd43ff;font-style:normal}.event-detail-panel .detail-empty{color:#fff6;font-size:13px;font-style:normal;margin:0;padding:14px;text-align:center;background:#0003;border-radius:8px}.event-detail-panel .detail-link-btn{background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffd9;font-size:14px;padding:8px 14px;cursor:pointer;transition:all .2s ease;text-align:left;flex:1}.event-detail-panel .detail-link-btn:hover{background:#cd43ff26;border-color:#cd43ff59;box-shadow:0 0 12px #cd43ff1a}.event-detail-panel .detail-source{color:#ffffffe6;font-size:14px;font-weight:500;margin:0;padding:12px 16px;background:#cd43ff0d;border-radius:8px;border-left:3px solid #CD43FF}.event-detail-panel .source-link-btn{background:#cd43ff0d;border:none;border-left:3px solid #CD43FF;border-radius:8px;color:#cd43ff;font-size:14px;font-weight:500;font-family:var(--font-primary);padding:12px 16px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%;text-decoration:underline;text-underline-offset:3px}.event-detail-panel .source-link-btn:hover{background:#cd43ff1f;color:#fffffff2}.event-detail-panel .detail-body::-webkit-scrollbar{width:8px}.event-detail-panel .detail-body::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.event-detail-panel .detail-body::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.event-detail-panel .detail-body::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}@media (max-width: 768px){.event-detail-panel{width:100%}}.history-section{display:flex;flex-direction:column;gap:16px;padding:16px}.history-loading,.history-error,.history-section.empty{display:flex;flex-direction:column;align-items:center;text-align:center}.history-loading p{color:#cd43ffb3;font-family:var(--font-primary);margin-top:16px}.history-error p{color:#f87171}.history-section.empty .empty-message{font-size:16px;font-family:var(--font-primary);color:#cd43ffb3;margin-bottom:8px}.history-section.empty .empty-hint{font-size:13px;color:#fff6}.history-table-container{overflow-x:auto;border-radius:12px;background:#0000004d;border:1px solid rgba(205,67,255,.1)}.history-table{width:100%;border-collapse:collapse;font-size:13px}.history-table thead{background:#07080af2}.history-table th{padding:14px 16px;text-align:left;font-weight:400;color:#cd43ff;text-transform:uppercase;font-size:10px;letter-spacing:1.5px;font-family:var(--font-primary);border-bottom:2px solid rgba(205,67,255,.3)}.history-table td{padding:16px;border-bottom:1px solid rgba(205,67,255,.08);vertical-align:top}.col-order{width:50px;text-align:center}.col-title{min-width:300px}.col-scope{width:100px;text-align:center}.col-date{width:180px}.col-links{width:100px}.history-row{cursor:pointer;transition:all .2s ease;background:transparent}.history-row:hover{background:#cd43ff0f}.order-badge{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;font-size:12px;font-weight:400;font-family:var(--font-primary)}.order-badge.minor{background:#ffffff0d;color:#ffffff80;border:2px solid rgba(255,255,255,.15)}.event-title-cell{display:flex;flex-direction:column;gap:6px}.event-title-row{display:flex;align-items:center;gap:8px}.event-title-text{font-weight:400;color:#fffffff2;font-size:14px;font-family:var(--font-primary)}.event-description-preview{font-size:12px;color:#ffffff80;line-height:1.5}.scope-badge{display:inline-block;padding:5px 12px;border-radius:20px;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary)}.scope-badge.scope-world{background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.3)}.scope-badge.scope-national{background:#60a5fa1f;color:#93c5fd;border:1px solid rgba(96,165,250,.3)}.scope-badge.scope-local{background:#cd43ff1f;color:#cd43ffe6;border:1px solid rgba(205,67,255,.3)}.date-cell{display:flex;flex-direction:column;gap:4px}.in-story-date{color:#ffffffe6;font-weight:400}.cultural-date{font-size:11px;color:#cd43ffb3;font-style:normal}.col-links{display:flex;flex-direction:column;gap:2px}.link-count{font-size:11px;color:#fff6}.link-count.dim{color:#ffffff40}.history-table-container::-webkit-scrollbar{width:8px;height:8px}.history-table-container::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.history-table-container::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.history-table-container::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}@media (max-width: 768px){.col-scope,.col-links{display:none}.col-title{min-width:200px}.col-date{width:140px}.history-table th,.history-table td{padding:12px}}.lore-detail-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:99;cursor:pointer;animation:fadeIn .2s ease}.lore-detail-panel{position:fixed;right:0;top:0;bottom:0;width:450px;max-width:90vw;background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid rgba(205,67,255,.2);display:flex;flex-direction:column;z-index:100;animation:slideIn .2s ease;box-shadow:-4px 0 20px #00000080}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.detail-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.15);background:#0000004d}.detail-title{margin:0;font-size:20px;font-weight:400;font-family:var(--font-primary);color:#fffffff2}.close-btn{background:none;border:none;color:#ffffff80;font-size:28px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-btn:hover{color:#cd43ff;background:#cd43ff1a}.detail-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px}.detail-source{font-size:12px;color:#cd43ffb3;margin-bottom:16px;padding:8px 12px;background:#cd43ff14;border-radius:6px;border-left:3px solid rgba(205,67,255,.4)}.detail-description{margin-bottom:24px}.detail-description p{margin:0;color:#ffffffd9;line-height:1.7;font-size:14px}.detail-metadata{display:flex;flex-direction:column;gap:12px;padding:18px;background:#0000004d;border-radius:12px;border:1px solid rgba(205,67,255,.1);overflow:hidden}.metadata-row{display:flex;gap:12px}.metadata-row.full-width{flex-direction:column;gap:6px}.metadata-label{color:#cd43ffcc;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary);min-width:110px;flex-shrink:0}.metadata-value{color:#ffffffd9;font-size:13px;line-height:1.4;word-break:break-word;overflow-wrap:break-word;flex:1;min-width:0}.metadata-value.status-immortal{color:#cd43ff;text-shadow:0 0 8px rgba(205,67,255,.3)}.metadata-value.status-legendary{color:#fcd34d;text-shadow:0 0 8px rgba(251,191,36,.3)}.metadata-value.rarity-mastercraft{color:#0070dd}.metadata-value.rarity-legendary{color:#fcd34d;text-shadow:0 0 8px rgba(251,191,36,.3)}.metadata-value.rarity-artifact{color:#f87171;text-shadow:0 0 8px rgba(239,68,68,.4)}.metadata-badge.unique-badge{display:inline-block;margin-left:8px;padding:2px 8px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ff;font-size:11px;font-weight:400}.metadata-badge.catalog-badge{display:inline-block;padding:2px 8px;background:#60a5fa26;border:1px solid rgba(96,165,250,.3);border-radius:4px;color:#60a5fa;font-size:11px;font-weight:400}.metadata-value.threat-legendary{color:#f87171;text-shadow:0 0 8px rgba(239,68,68,.4)}.unique-badge{color:#fcd34d;font-weight:400}.lore-detail-panel .detail-actions{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(205,67,255,.1)}.lore-detail-panel .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.lore-detail-panel .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.detail-content::-webkit-scrollbar{width:8px}.detail-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.detail-content::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.detail-content::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}@media (max-width: 768px){.lore-detail-panel{width:100%}}.faction-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:1000;display:flex;align-items:center;justify-content:center}.faction-modal{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90vw;max-width:1100px;height:80vh;max-height:800px;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-primary);font-weight:400}.faction-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.2)}.faction-modal-title{font-size:18px;font-weight:400;color:#fffffff2;letter-spacing:.5px;margin:0}.faction-modal-body{display:grid;grid-template-columns:45% 55%;flex:1;overflow:hidden}.faction-panel-left{padding:16px 20px;overflow-y:auto;border-right:1px solid rgba(205,67,255,.15)}.faction-panel-right{padding:16px 20px;overflow-y:auto}.faction-panel-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.faction-panel-title{font-size:13px;font-weight:400;color:#cd43ffcc;letter-spacing:1px;text-transform:uppercase;margin:0}.faction-identity-field{margin-bottom:12px}.faction-field-label{font-size:11px;font-weight:400;color:#ffffff80;letter-spacing:.5px;text-transform:uppercase;margin-bottom:4px}.faction-field-input{width:100%;padding:8px 10px;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;color:#ffffffe6;font-family:var(--font-primary);font-weight:400;font-size:13px;outline:none;transition:border-color .2s ease;box-sizing:border-box}.faction-field-input:focus{border-color:#cd43ff80}.faction-field-textarea{width:100%;padding:8px 10px;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;color:#ffffffe6;font-family:var(--font-primary);font-weight:400;font-size:13px;outline:none;resize:vertical;min-height:60px;transition:border-color .2s ease;box-sizing:border-box}.faction-field-textarea:focus{border-color:#cd43ff80}.faction-array-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.faction-array-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:12px;color:#fffc;font-size:12px}.faction-array-tag-remove{background:transparent;border:none;color:#ff4364b3;cursor:pointer;font-size:14px;padding:0 2px;line-height:1}.faction-array-tag-remove:hover{color:#ff4364}.faction-array-add{display:flex;gap:6px;margin-top:6px}.faction-array-add-input{flex:1;padding:4px 8px;background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:4px;color:#fffc;font-family:var(--font-primary);font-size:12px;outline:none}.faction-array-add-input:focus{border-color:#cd43ff66}.faction-array-add-btn{padding:4px 10px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ffe6;font-family:var(--font-primary);font-size:12px;cursor:pointer;transition:all .2s ease}.faction-array-add-btn:hover{background:#cd43ff40}.faction-unlinked-leaders{margin-top:4px}.faction-unlinked-leader-tag{display:inline-flex;padding:3px 8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff6;font-size:12px;font-style:italic;margin:0 4px 4px 0}.faction-save-btn{margin-top:16px;padding:8px 20px;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43fff2;font-family:var(--font-primary);font-weight:400;font-size:13px;cursor:pointer;transition:all .2s ease}.faction-save-btn:hover{background:#cd43ff4d}.faction-save-btn:disabled{opacity:.4;cursor:not-allowed}.faction-rank-group{margin-bottom:12px}.faction-rank-header{display:flex;align-items:center;padding:6px 10px;background:#cd43ff1f;border-radius:6px;margin-bottom:6px}.faction-rank-leader-star{color:#fcd34d;font-size:13px;margin-right:6px}.faction-rank-name{font-size:13px;font-weight:400;color:#cd43ffe6;letter-spacing:.5px}.faction-unranked-header{font-size:12px;font-weight:400;color:#fff6;letter-spacing:.5px;padding:6px 10px;margin-bottom:6px}.faction-member-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#0000004d;border-radius:8px;margin-bottom:4px;transition:background .2s ease}.faction-member-row:hover{background:#00000073}.faction-member-avatar{width:24px;height:24px;border-radius:50%;border:1px solid rgba(205,67,255,.3);object-fit:cover;flex-shrink:0}.faction-member-avatar-placeholder{width:24px;height:24px;border-radius:50%;border:1px solid rgba(205,67,255,.2);background:#cd43ff1a;flex-shrink:0}.faction-member-name{font-size:13px;color:#ffffffe6;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faction-member-type{font-size:10px;color:#ffffff59;text-transform:uppercase;letter-spacing:.5px;margin-left:-4px}.faction-leader-toggle{padding:2px 4px;background:transparent;border:none;cursor:pointer;font-size:14px;transition:all .2s ease;flex-shrink:0}.faction-leader-toggle.is-leader{color:#fcd34d;opacity:1}.faction-leader-toggle.not-leader{color:#fcd34d;opacity:.25}.faction-leader-toggle:hover{opacity:1;transform:scale(1.2)}.faction-member-rank-dropdown{flex-shrink:0;width:120px}.faction-member-remove{flex-shrink:0;opacity:.5;transition:opacity .2s ease}.faction-member-row:hover .faction-member-remove{opacity:1}.faction-add-member{margin-top:12px;position:relative}.faction-add-member-input{width:100%;padding:8px 10px;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;color:#ffffffe6;font-family:var(--font-primary);font-weight:400;font-size:13px;outline:none;transition:border-color .2s ease;box-sizing:border-box}.faction-add-member-input:focus{border-color:#cd43ff80}.faction-add-member-results{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:6px;margin-top:4px;z-index:10}.faction-add-member-option{display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;transition:background .15s ease;font-size:13px;color:#ffffffd9}.faction-add-member-option:hover{background:#cd43ff26}.faction-add-member-option.create-option{color:#cd43ffe6;border-top:1px solid rgba(205,67,255,.15)}.faction-rank-editor{margin-bottom:16px;padding:12px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.faction-rank-editor-title{font-size:12px;font-weight:400;color:#cd43ffb3;letter-spacing:.5px;text-transform:uppercase;margin:0 0 10px}.faction-rank-editor-item{display:flex;align-items:center;gap:6px;padding:4px 0}.faction-rank-editor-name{flex:1;padding:4px 8px;background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:4px;color:#ffffffd9;font-family:var(--font-primary);font-size:13px;outline:none}.faction-rank-editor-name:focus{border-color:#cd43ff66}.faction-rank-order-btn{padding:2px 6px;background:transparent;border:1px solid rgba(205,67,255,.15);border-radius:3px;color:#ffffff80;cursor:pointer;font-size:12px;transition:all .2s ease}.faction-rank-order-btn:hover{color:#ffffffe6;border-color:#cd43ff66}.faction-rank-order-btn:disabled{opacity:.2;cursor:not-allowed}.faction-rank-add-row{display:flex;gap:6px;margin-top:8px}.faction-rank-add-input{flex:1;padding:6px 8px;background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:4px;color:#fffc;font-family:var(--font-primary);font-size:12px;outline:none}.faction-rank-add-input:focus{border-color:#cd43ff66}.faction-manage-ranks-btn{padding:5px 12px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:5px;color:#cd43ffd9;font-family:var(--font-primary);font-weight:400;font-size:12px;cursor:pointer;transition:all .2s ease}.faction-manage-ranks-btn:hover{background:#cd43ff33}.faction-empty-msg{font-size:12px;color:#ffffff4d;text-align:center;padding:20px 0;font-style:italic}.faction-roster-loading{display:flex;justify-content:center;padding:40px 0}.lore-category-list{padding:16px}.lore-category-list.loading,.lore-category-list.error,.lore-category-list.empty{display:flex;flex-direction:column;align-items:center;color:#ffffff80}.lore-category-list.empty .empty-message{font-size:16px;font-family:var(--font-primary);color:#cd43ffb3;margin-bottom:8px}.lore-category-list.empty .empty-hint{font-size:13px;color:#fff6}.lore-entries{display:flex;flex-direction:column;gap:12px}.lore-entry{background:#0000004d;border:1px solid rgba(205,67,255,.12);border-radius:12px;overflow:hidden;transition:all .2s ease}.lore-entry:hover{border-color:#cd43ff4d;box-shadow:0 0 20px #cd43ff14}.lore-entry.expanded{border-color:#cd43ff66;box-shadow:0 0 25px #cd43ff1a}.lore-entry-header{padding:14px 18px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.entry-title-row{display:flex;align-items:center;gap:12px}.entry-name{margin:0;font-size:15px;font-weight:400;font-family:var(--font-primary);color:#fffffff2;min-width:150px;flex-shrink:0}.entry-inline-preview{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.inline-badge{padding:3px 10px;border-radius:20px;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary);flex-shrink:0}.inline-badge.rarity-normal{background:#ffffff14;color:#fff9;border:1px solid rgba(255,255,255,.15)}.inline-badge.rarity-magic{background:#60a5fa1f;color:#60a5fa;border:1px solid rgba(96,165,250,.3)}.inline-badge.rarity-epic{background:#cd43ff1f;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.inline-badge.rarity-legendary{background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.3)}.inline-badge.rarity-artifact{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.3)}.inline-field{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inline-field.type-field{color:#fff9;max-width:120px}.inline-field.owner-field{color:#60a5fa;max-width:150px}.expand-icon{font-size:12px;color:#cd43ff99;transition:all .2s ease}.lore-entry:hover .expand-icon{color:#cd43ff}.entry-source{font-size:12px;color:#fff6}.lore-entry-content{padding:0 18px 18px;border-top:1px solid rgba(205,67,255,.1);animation:slideDown .2s ease}.entry-description{margin:14px 0;color:#ffffffd9;line-height:1.7;font-size:14px}.lore-metadata{display:flex;flex-direction:column;gap:8px;margin-top:14px;padding:14px;background:#0003;border-radius:10px;border-left:3px solid rgba(205,67,255,.3)}.metadata-row{display:flex;gap:8px;font-size:13px}.metadata-label{color:#ffffff80;min-width:100px;flex-shrink:0;font-family:var(--font-primary);text-transform:uppercase;font-size:10px;letter-spacing:.5px}.metadata-value{color:#ffffffd9}.metadata-value.status-active{color:#4ade80}.metadata-value.status-defunct{color:#f87171}.metadata-value.status-reformed{color:#fbbf24}.metadata-value.status-alive{color:#4ade80}.metadata-value.status-deceased{color:#fff6}.metadata-value.status-unknown{color:#ffffff80}.metadata-value.status-immortal{color:#cd43ff;text-shadow:0 0 10px rgba(205,67,255,.3)}.metadata-value.status-legendary{color:#fcd34d;text-shadow:0 0 10px rgba(251,191,36,.3)}.metadata-value.rarity-normal{color:#fff9}.metadata-value.rarity-magic{color:#60a5fa}.metadata-value.rarity-epic{color:#cd43ff}.metadata-value.rarity-legendary{color:#fcd34d;text-shadow:0 0 8px rgba(251,191,36,.4)}.metadata-value.rarity-artifact{color:#f87171;text-shadow:0 0 10px rgba(239,68,68,.5)}.metadata-value.threat-minion{color:#fff6}.metadata-value.threat-standard{color:#fff9}.metadata-value.threat-elite{color:#60a5fa}.metadata-value.threat-boss{color:#cd43ff}.metadata-value.threat-legendary{color:#f87171;text-shadow:0 0 10px rgba(239,68,68,.5)}.entry-actions{display:flex;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(205,67,255,.1)}.action-btn{padding:8px 14px;border-radius:8px;font-size:12px;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease}.edit-btn{background:#cd43ff26;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.edit-btn:hover{background:#cd43ff40;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff26}.rules-section{padding:24px;overflow-y:auto}.rules-section.loading,.rules-section.empty{display:flex;flex-direction:column;align-items:center}.rules-list{display:flex;flex-direction:column;gap:16px}.rule-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden;transition:all .2s ease}.rule-card:hover{border-color:#cd43ff4d;box-shadow:0 4px 12px #cd43ff1a}.rule-header{display:flex;justify-content:space-between;align-items:center;padding:16px;cursor:pointer;-webkit-user-select:none;user-select:none}.rule-title-row{display:flex;align-items:center;gap:12px;flex:1}.expand-btn{background:none;border:none;color:#fff9;font-size:12px;cursor:pointer;padding:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.expand-btn:hover{color:#cd43ff}.rule-title{margin:0;font-size:18px;font-weight:400;color:#fff}.rule-actions{display:flex;gap:8px}.rule-content{padding:0 16px 16px 52px;animation:slideDown .2s ease}.rule-description{margin:0 0 16px;color:#fffc;line-height:1.6;white-space:pre-wrap}.rule-meta{display:flex;gap:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.meta-item{font-size:12px;color:#ffffff80}.meta-item.source-item{color:#cd43ff;font-weight:500}.character-assignment{position:relative;display:block;min-width:120px}.character-assignment-display{display:inline-block}.assignment-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0;background:transparent;border:none;color:#cd43ff;font-family:var(--font-primary);font-size:14px;cursor:pointer;transition:all .2s ease;width:100%}.assignment-trigger:hover{opacity:.8}.assignment-trigger:disabled{opacity:.5;cursor:not-allowed}.dropdown-arrow{font-size:10px;opacity:.7;margin-left:auto}.assignment-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:280px;max-height:300px;overflow-y:auto;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:8px;box-shadow:0 4px 20px #00000080;z-index:1000}.dropdown-header{padding:12px;font-family:var(--font-primary);font-size:12px;font-weight:400;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid rgba(205,67,255,.2);display:flex;flex-direction:column;gap:8px}.assignment-search-input{width:100%;padding:6px 8px;background:#ffffff0d;border:1px solid rgba(205,67,255,.25);border-radius:4px;color:#fff;font-family:var(--font-primary);font-size:13px;font-weight:400;text-transform:none;letter-spacing:normal;outline:none;transition:border-color .2s ease}.assignment-search-input::placeholder{color:#ffffff4d}.assignment-search-input:focus{border-color:#cd43ff80}.assignment-option{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:transparent;border:none;color:#fff;font-family:var(--font-primary);font-size:14px;text-align:left;cursor:pointer;transition:background .2s ease}.assignment-option:hover{background:#cd43ff1a}.assignment-option:disabled{opacity:.5;cursor:not-allowed}.assignment-option.current{background:#cd43ff26;font-weight:400}.dropdown-divider{height:1px;background:#cd43ff33;margin:4px 0}.current-indicator{color:#cd43ff;font-weight:400}.npc-option-row{display:flex;align-items:center;justify-content:flex-start!important;padding:0!important}.npc-assign-button{display:flex;align-items:center;gap:8px;padding:10px 12px;background:transparent;border:none;color:#fff;font-family:var(--font-primary);font-size:14px;cursor:pointer}.npc-assign-button:hover{background:#cd43ff1a}.npc-designation-toggles{display:flex;align-items:center;gap:4px;margin-left:auto;padding:0 8px;border-left:1px solid rgba(205,67,255,.15);flex-shrink:0}.npc-designation-btn{background:transparent;border:1px solid rgba(205,67,255,.2);color:#fff6;font-family:var(--font-primary);font-size:11px;font-weight:400;padding:3px 8px;border-radius:4px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.npc-designation-btn:hover{border-color:#cd43ff4d;color:#fff9}.npc-designation-btn.active{background:#ff43cd26;color:#ff43cd;border-color:#ff43cd66;text-shadow:0 0 8px rgba(255,67,205,.3)}.player-label{font-family:var(--font-primary);font-size:14px;color:#fff}.orphan-assignment{display:flex;flex-direction:column;align-items:center;gap:4px}.orphan-label{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffc143;letter-spacing:1px;background:#ffc14326;padding:4px 10px;border-radius:4px;border:1px solid rgba(255,193,67,.3)}.orphan-discord-hint{font-family:var(--font-primary);font-size:11px;color:#7289da;font-style:normal;white-space:nowrap;margin-top:4px}.kill-roster-modal{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:8px;width:400px;max-height:60vh;display:flex;flex-direction:column}.kill-roster-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(205,67,255,.15)}.kill-roster-header h2{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#cd43ff;margin:0;letter-spacing:.5px}.kill-roster-body{padding:12px 20px;overflow-y:auto;flex:1}.kill-roster-empty{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#fff6;text-align:center;padding:20px 0}.kill-roster-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05)}.kill-roster-row:last-child{border-bottom:none}.kill-roster-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0}.kill-roster-info{display:flex;flex-direction:column;min-width:0}.kill-roster-name{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kill-roster-synopsis{font-family:var(--font-primary);font-size:10px;font-weight:400;color:#fff6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avatar-hover-zoom{position:fixed;top:60%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:9999;border:2px solid rgba(205,67,255,.4);border-radius:8px;background:#000c;box-shadow:0 8px 32px #0009;overflow:hidden;transition:opacity .2s ease}.avatar-hover-zoom--hidden{opacity:0}.avatar-hover-zoom--visible{opacity:1}.avatar-hover-zoom img{display:block;width:100%;height:100%;object-fit:cover}.gm-override-controls{background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:10px;padding:12px}.gm-override-controls.compact{display:flex;align-items:center;gap:6px;padding:0;background:transparent;border:none;border-radius:0;margin-top:8px}.gm-override-controls.compact .override-btn{padding:3px 10px;font-size:11px}.gm-override-controls .controls-header{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(205,67,255,.1)}.gm-override-controls .controls-header h4{margin:0;font-family:var(--font-primary);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;color:#ffffff80}.gm-override-controls .controls-section{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.gm-override-controls .controls-section:last-child{margin-bottom:0}.gm-override-controls .danger-zone{padding-top:12px;border-top:1px solid rgba(217,83,79,.25)}.gm-override-controls .override-btn{padding:6px 12px;border:1px solid transparent;border-radius:6px;font-family:var(--font-primary);font-size:12px;font-weight:400;cursor:pointer;transition:all .2s;text-align:left;letter-spacing:.3px}.gm-override-controls .override-btn:disabled{opacity:.4;cursor:not-allowed}.gm-override-controls .override-btn.skip-all,.gm-override-controls .override-btn.dropdown-trigger{background:#cd43ff1f;border-color:#cd43ff33;color:#ffffffd9}.gm-override-controls .override-btn.skip-all:hover:not(:disabled),.gm-override-controls .override-btn.dropdown-trigger:hover:not(:disabled){background:#cd43ff33;border-color:#cd43ff59}.gm-override-controls .override-btn.pause{background:#ffa5001f;border-color:#ffa50033;color:orange}.gm-override-controls .override-btn.pause:hover:not(:disabled){background:#ffa50033;border-color:#ffa50059}.gm-override-controls .override-btn.resume{background:#43ff971f;border-color:#43ff9733;color:#43ff97}.gm-override-controls .override-btn.resume:hover:not(:disabled){background:#43ff9733;border-color:#43ff9759}.gm-override-controls .override-btn.intervene{background:#00c8ff1f;border-color:#00c8ff33;color:#00c8ff}.gm-override-controls .override-btn.intervene:hover:not(:disabled){background:#00c8ff33;border-color:#00c8ff59}.gm-override-controls .override-btn.stop{background:#d9534f1f;border-color:#d9534f33;color:#d9534f}.gm-override-controls .override-btn.stop:hover:not(:disabled){background:#d9534f33;border-color:#d9534f59}.gm-override-controls .skip-player-section{position:relative}.gm-override-controls .skip-dropdown{position:absolute;top:100%;left:0;right:0;z-index:10;margin-top:4px;background:#000000d9;border:1px solid rgba(205,67,255,.2);border-radius:8px;box-shadow:0 4px 16px #00000080;overflow:hidden}.gm-override-controls .skip-player-btn{width:100%;padding:8px 12px;border:none;background:transparent;color:#ffffffd9;font-family:var(--font-primary);font-size:12px;font-weight:400;text-align:left;cursor:pointer;transition:background .2s}.gm-override-controls .skip-player-btn:hover:not(:disabled){background:#cd43ff1f}.gm-override-controls .skip-player-btn:not(:last-child){border-bottom:1px solid rgba(205,67,255,.1)}.homer-view{display:flex;flex-direction:column;gap:24px}.homer-view .story-section{background:#cd43ff0a;border-radius:12px;padding:20px 24px;border:1px solid rgba(205,67,255,.1)}.homer-view .story-section:hover{border-color:#cd43ff33}.homer-header{display:flex;align-items:center;justify-content:space-between;padding:0 4px}.homer-analyzed-at{font-size:12px;color:#ffffff59;font-family:var(--font-primary)}.homer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.homer-loading-text{color:#cd43ffcc;font-family:var(--font-primary);font-size:14px}.homer-actions{display:flex;justify-content:center;padding:8px 0}.homer-error{color:#ff6464e6;font-size:12px;text-align:center;padding:4px 0}.homer-section-body{display:flex;flex-direction:column;gap:8px}.homer-text-line{color:#ffffffd9;font-size:14px;line-height:1.6;margin:0;font-family:var(--font-primary)}.homer-bullet-list{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:6px}.homer-bullet{color:#ffffffbf;font-size:13px;line-height:1.5;padding-left:16px;position:relative;font-family:var(--font-primary)}.homer-bullet:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:#cd43ff80}.homer-stale-badge{display:inline-block;margin-left:10px;background:#ffa50026;border:1px solid rgba(255,165,0,.3);color:orange;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:500;letter-spacing:.3px;vertical-align:middle}.homer-bold-prefix{color:#cd43ffe6;font-weight:500}.agent-analysis-layout .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:700;opacity:.7;transition:all .2s ease}.agent-analysis-layout .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.aeschylus-panel-section{display:flex;flex-direction:column;gap:8px}.aeschylus-section-label{font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:#ffffff80;margin:0}.aeschylus-section-card{background:#00000080;border:1px solid rgba(205,67,255,.15);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:12px}.aeschylus-field{display:flex;flex-direction:column;gap:4px}.aeschylus-field-label{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#cd43ffb3;text-transform:uppercase;letter-spacing:.5px}.aeschylus-field-value{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffffffd9;line-height:1.5;margin:0;white-space:pre-wrap}.aeschylus-field-value.aeschylus-dimmed{color:#ffffff80;font-size:13px}.aeschylus-homer-text{border-left:2px solid rgba(205,67,255,.3);padding-left:12px}.aeschylus-homer-section{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-bottom:1px solid rgba(205,67,255,.08)}.aeschylus-homer-section:last-child{border-bottom:none;padding-bottom:0}.aeschylus-homer-section:first-child{padding-top:0}.aeschylus-homer-label{font-family:var(--font-primary);font-size:12px;font-weight:500;color:#cd43ffcc;text-transform:uppercase;letter-spacing:.5px}.aeschylus-stale-badge{display:inline-block;margin-left:10px;background:#ffa50026;border:1px solid rgba(255,165,0,.3);color:orange;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:500;letter-spacing:.3px;text-transform:none;vertical-align:middle}.aeschylus-subsection-title{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#fff9;margin:8px 0 4px}.aeschylus-list{margin:0;padding-left:18px;color:#fffc;font-size:13px;line-height:1.6}.aeschylus-list li{margin-bottom:2px}.aeschylus-edit-textarea{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffffffe6;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:10px;resize:vertical;width:100%;box-sizing:border-box;line-height:1.5;transition:border-color .2s}.aeschylus-edit-textarea:focus{outline:none;border-color:#cd43ff99;box-shadow:0 0 10px #cd43ff26}.aeschylus-edit-textarea::placeholder{color:#ffffff4d}.aeschylus-progress-card{gap:14px}.aeschylus-progress-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.aeschylus-stat{display:flex;flex-direction:column;gap:2px}.aeschylus-stat-label{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#fff6;text-transform:uppercase;letter-spacing:.5px}.aeschylus-stat-value{font-family:var(--font-primary);font-size:15px;font-weight:400;color:#ffffffe6;font-variant-numeric:tabular-nums}.aeschylus-awaiting{display:flex;flex-direction:column;gap:6px;padding-top:8px;border-top:1px solid rgba(205,67,255,.1)}.aeschylus-awaiting-list{display:flex;flex-wrap:wrap;gap:6px}.aeschylus-awaiting-badge{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#ffffffd9;background:#cd43ff26;border:1px solid rgba(205,67,255,.25);border-radius:20px;padding:3px 10px}.pipeline-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;font-family:var(--font-primary);font-weight:400;margin-bottom:12px}.pipeline-banner--partial{background:#ffc14326;border:1px solid rgba(255,193,67,.3)}.pipeline-banner--critical{background:#ef444426;border:1px solid rgba(239,68,68,.3)}.pipeline-banner-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.pipeline-banner-message{color:#ffffffe6;font-size:13px;font-weight:400}.pipeline-banner--partial .pipeline-banner-message{color:#ffc143f2}.pipeline-banner--critical .pipeline-banner-message{color:#ef4444f2}.pipeline-banner-detail{color:#fff9;font-size:12px;font-weight:400}.pipeline-banner-actions{margin-left:auto;display:flex;gap:8px;align-items:center;flex-shrink:0}.pipeline-banner-dismiss{background:none;border:none;color:#ffffff80;cursor:pointer;font-size:16px;padding:4px;line-height:1;transition:color .2s}.pipeline-banner-dismiss:hover{color:#fffc}.herodotus-modal-content{background:transparent;border:2px solid #CD43FF;border-radius:12px;width:90%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;animation:slideUp .3s ease;font-family:var(--font-primary)}.herodotus-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid rgba(205,67,255,.3)}.herodotus-modal-title-section{display:flex;align-items:center;gap:16px}.herodotus-modal-icon{width:48px;height:48px;border-radius:50%;border:2px solid #CD43FF;object-fit:cover}.herodotus-modal-title-text h2{margin:0;color:#fffffff2;font-size:24px;font-weight:400}.herodotus-modal-subtitle{margin:4px 0 0;color:#cd43ffb3;font-size:14px}.herodotus-modal-ic-date{margin:8px 0 0;display:flex;align-items:center;gap:8px;font-size:13px}.ic-date-label{color:#cd43ffb3;font-weight:500}.ic-date-value{color:#cd43ff;font-weight:400;font-family:var(--font-primary)}.ic-date-estimated{color:#ffffff80;font-style:normal;font-size:12px;cursor:help}.modal-close-btn{background:transparent;border:none;color:#cd43ffb3;font-size:24px;cursor:pointer;padding:8px;transition:color .2s}.modal-close-btn:hover{color:#fffffff2}.herodotus-modal-body{padding:24px;overflow-y:auto;flex:1}.herodotus-section{margin-bottom:24px}.herodotus-section:last-child{margin-bottom:0}.herodotus-section h3{color:#cd43ffcc;font-size:16px;font-weight:400;margin:0 0 12px;border-bottom:1px solid rgba(205,67,255,.2);padding-bottom:8px}.herodotus-summary{color:#ffffffd9;font-size:15px;line-height:1.6;margin:0}.herodotus-list{margin:0;padding-left:20px;color:#ffffffd9;font-size:14px;line-height:1.6}.herodotus-list li{margin-bottom:8px}.herodotus-list li:last-child{margin-bottom:0}.herodotus-tags{display:flex;flex-wrap:wrap;gap:8px}.herodotus-tag{padding:6px 12px;border-radius:16px;font-size:13px;font-weight:400;display:inline-block}.character-tag{background:#cd43ff33;color:#cd43ffcc;border:1px solid rgba(205,67,255,.4)}.pc-tag{background:#22c55e33;color:#86efac;border:1px solid rgba(34,197,94,.4);position:relative}.pc-tag.mvp-tag .mvp-badge-overlay{position:absolute;top:-6px;right:-6px;background:#fbbf24;color:#1f2937;font-size:9px;font-weight:400;padding:2px 4px;border-radius:4px;line-height:1;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0006;pointer-events:none}.npc-tag{background:#fb923c33;color:#fdba74;border:1px solid rgba(251,146,60,.4)}.location-tag{background:#3b82f633;color:#93c5fd;border:1px solid rgba(59,130,246,.4)}.theme-tag{background:#ec489933;color:#f9a8d4;border:1px solid rgba(236,72,153,.4)}.herodotus-metadata{background:#cd43ff1a;border-radius:8px;padding:16px;margin-top:32px}.metadata-label{color:#cd43ffb3;font-size:13px;font-weight:500}.metadata-value{color:#fffffff2;font-size:13px}.analysis-mvp{padding:8px 0}.analysis-mvp-name{font-size:15px;font-weight:400;color:#fffffff2}.analysis-mvp-reason{font-size:14px;color:#ffffffb3}.herodotus-modal-footer{padding:20px 24px;border-top:1px solid rgba(205,67,255,.3);display:flex;justify-content:flex-end;gap:12px}.herodotus-modal-footer .btn-secondary{padding:10px 24px;background:transparent;border:1px solid #CD43FF;color:#cd43ffcc;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.herodotus-modal-footer .btn-secondary:hover{background:#cd43ff1a;border-color:#cd43ffb3;color:#fffffff2}.herodotus-modal-body::-webkit-scrollbar{width:8px}.herodotus-modal-body::-webkit-scrollbar-track{background:#cd43ff1a;border-radius:4px}.herodotus-modal-body::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:4px}.herodotus-modal-body::-webkit-scrollbar-thumb:hover{background:#cd43ff99}.herodotus-tag.clickable{cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.herodotus-tag.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000004d;text-decoration-style:solid}.herodotus-tag.clickable:active{transform:translateY(0)}.herodotus-tag.pc-tag.clickable:hover{background:#22c55e4d;border-color:#22c55e99;color:#bbf7d0}.herodotus-tag.npc-tag.clickable:hover{background:#fb923c4d;border-color:#fb923c99;color:#fed7aa}.herodotus-tag.character-tag.clickable:hover{background:#cd43ff4d;border-color:#cd43ff99;color:#fffffff2}.herodotus-modal-header-actions{display:flex;align-items:center;gap:8px}.herodotus-modal-header-actions .action-icon.edit-icon{padding:4px;background:transparent;border:none;outline:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.herodotus-modal-header-actions .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.herodotus-delete-btn{background:transparent;border:none;padding:4px;cursor:pointer;color:#ff43cd;display:flex;align-items:center;justify-content:center;opacity:.7;transition:all .2s ease;font-size:16px;line-height:1}.herodotus-delete-btn:hover{opacity:1;transform:scale(1.2)}.herodotus-delete-btn:active{transform:scale(.95)}.herodotus-edit-textarea{width:100%;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffd9;font-size:14px;line-height:1.6;padding:12px;resize:vertical;font-family:inherit;transition:border-color .2s,box-shadow .2s}.herodotus-edit-textarea:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 0 2px #cd43ff33}.herodotus-edit-textarea::placeholder{color:#cd43ff66}.herodotus-edit-input{width:100%;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffd9;font-size:14px;padding:10px 12px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.herodotus-edit-input:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 0 2px #cd43ff33}.herodotus-edit-input::placeholder{color:#cd43ff66}.herodotus-scene-section{background:#cd43ff0d;border-radius:8px;padding:16px;border:1px solid rgba(205,67,255,.15)}.temporal-data{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(205,67,255,.2)}.temporal-row{display:flex;align-items:center;gap:8px}.temporal-label{color:#cd43ffb3;font-size:13px;font-weight:500}.temporal-value{color:#cd43ff;font-size:13px;font-weight:400;background:#cd43ff26;padding:4px 10px;border-radius:4px;border:1px solid rgba(205,67,255,.3)}.temporal-value.duration{background:#cd43ff26;color:#cd43ff;border-color:#cd43ff4d}.scene-field{margin-bottom:16px}.scene-field:last-child{margin-bottom:0}.scene-label{color:#cd43ffb3;font-size:13px;font-weight:500;display:block;margin-bottom:4px}.scene-value{color:#ffffffd9;font-size:14px;line-height:1.5;margin:0;font-style:normal}.continuation-analysis{margin-top:16px;padding-top:16px;border-top:1px solid rgba(205,67,255,.2)}.continuation-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.continuation-row:last-child{margin-bottom:0}.continuation-label{color:#cd43ffb3;font-size:13px;font-weight:500;min-width:140px}.continuation-value{font-size:13px;font-weight:400;padding:4px 10px;border-radius:4px}.continuation-value.yes{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.4)}.continuation-value.no{background:#ff43cd33;color:#ff43cd;border:1px solid rgba(255,67,205,.4)}.continuation-value.session-link,.continuation-value.time-gap{background:#cd43ff26;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.continuation-reasoning{margin-top:12px;padding-top:12px;border-top:1px dashed rgba(205,67,255,.2)}.reasoning-label{color:#cd43ff99;font-size:12px;font-weight:500;display:block;margin-bottom:4px}.reasoning-value{color:#ffffffb3;font-size:13px;line-height:1.5;margin:0;font-style:normal}.herodotus-modal-content.ooc-modal{max-width:900px}.herodotus-modal-header.ooc-header{background:transparent}.ooc-header .herodotus-modal-header-actions{display:flex;align-items:center;gap:8px}.ooc-header .herodotus-delete-btn{background:transparent;border:none;padding:4px;cursor:pointer;color:#ff43cd;display:flex;align-items:center;justify-content:center;opacity:.7;transition:all .2s ease;font-size:16px;line-height:1}.ooc-header .herodotus-delete-btn:hover{opacity:1;transform:scale(1.2)}.ooc-header .herodotus-delete-btn:active{transform:scale(.95)}.ooc-modal .ooc-tone-indicator{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ooc-modal .tone-badge{padding:4px 12px;border-radius:20px;font-size:11px;font-family:var(--font-primary);font-weight:500;text-transform:uppercase;letter-spacing:1px;border:1px solid;background:transparent}.ooc-modal .tone-badge.small{padding:3px 10px;font-size:10px}.ooc-modal .tone-description{color:#ffffffd9;font-size:14px;line-height:1.5}.ooc-modal .topic-tag{background:#60a5fa33;color:#93c5fd;border:1px solid rgba(96,165,250,.4)}.ooc-modal .decisions-list li{position:relative;padding-left:8px}.ooc-modal .decisions-list li::marker{color:#22c55e;content:"✓ "}.ooc-modal .player-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.ooc-modal .player-stat-card{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:10px;padding:16px;transition:all .2s ease}.ooc-modal .player-stat-card:hover{background:#cd43ff26;border-color:#cd43ff80;transform:translateY(-2px)}.ooc-modal .player-stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ooc-modal .player-stat-card .player-name{font-size:15px}.ooc-modal .activity-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;text-transform:capitalize}.ooc-modal .activity-badge.activity-high{background:#22c55e33;color:#86efac;border:1px solid rgba(34,197,94,.4)}.ooc-modal .activity-badge.activity-medium{background:#60a5fa33;color:#93c5fd;border:1px solid rgba(96,165,250,.4)}.ooc-modal .activity-badge.activity-low{background:#fbbf2433;color:#fcd34d;border:1px solid rgba(251,191,36,.4)}.ooc-modal .activity-badge.activity-minimal{background:#94a3b833;color:#cbd5e1;border:1px solid rgba(148,163,184,.4)}.ooc-modal .player-stat-details{display:flex;flex-direction:row;gap:16px;margin-bottom:8px}.ooc-modal .player-stat-card .stat-row{display:flex;flex-direction:row;align-items:center;gap:6px;background:none;padding:0;border:none}.ooc-modal .player-stat-card .stat-label{color:#cd43ffb3;font-size:12px;text-transform:none}.ooc-modal .player-stat-card .stat-value{color:#fffffff2;font-size:13px;font-weight:500}.ooc-modal .player-topics{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;border-top:1px solid rgba(205,67,255,.2)}.ooc-modal .mini-tag{padding:3px 8px;border-radius:10px;font-size:10px;background:#60a5fa26;color:#93c5fd;border:1px solid rgba(96,165,250,.3)}.ooc-modal .interactions-list{display:flex;flex-direction:column;gap:12px}.ooc-modal .interaction-card{background:#cd43ff14;border:1px solid rgba(205,67,255,.25);border-radius:8px;padding:14px}.ooc-modal .interaction-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.ooc-modal .interaction-players{font-size:14px}.ooc-modal .interaction-description{color:#ffffffd9;font-size:13px;line-height:1.5;margin:0 0 8px}.ooc-modal .interaction-count{color:#cd43ffb3;font-size:12px;font-style:normal}.ooc-modal .styled-display-name-with-tooltip .gm-rank-tooltip{visibility:hidden;position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:#000000f2;color:#fffffff2;padding:8px 12px;border-radius:6px;border:1px solid rgba(205,67,255,.4);font-size:.85rem;white-space:nowrap;z-index:10000;pointer-events:none;box-shadow:0 4px 12px #00000080}.ooc-modal .styled-display-name-with-tooltip:hover .gm-rank-tooltip{visibility:visible}.ooc-modal .herodotus-modal-actions{display:flex;gap:8px;align-items:center}.ooc-modal .ooc-scope-info{display:flex;flex-wrap:wrap;gap:12px}.ooc-modal .scope-badge{padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;background:#cd43ff26;color:#ffffffd9;border:1px solid rgba(205,67,255,.4)}.ooc-modal .tone-evolution,.ooc-modal .engagement-trends{margin-top:12px;padding:12px;background:#1e1b2d99;border-radius:8px;font-size:13px;line-height:1.6;color:#cd43ffcc}.ooc-modal .tone-evolution strong{color:#ffffffd9}.character-memory-panel{margin-bottom:24px;border:1px solid rgba(205,67,255,.2);border-radius:8px;background:#0000004d;max-height:400px;overflow-y:auto}.character-memory-panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(205,67,255,.15)}.character-memory-panel-header h3{font-family:var(--font-primary);color:#cd43ff;font-size:15px;font-weight:400;margin:0;border-bottom:none;padding-bottom:0}.character-memory-count{color:#cd43ffb3;font-size:12px}.memory-filter-bar{display:flex;gap:4px;padding:8px 16px;border-bottom:1px solid rgba(205,67,255,.1)}.memory-filter-btn{background:none;border:1px solid rgba(205,67,255,.2);border-radius:4px;padding:3px 10px;font-size:11px;color:#cd43ff99;cursor:pointer;transition:all .15s ease}.memory-filter-btn:hover{border-color:#cd43ff66;color:#cd43ffe6}.memory-filter-btn.active{background:#cd43ff26;border-color:#cd43ff80;color:#cd43ff}.character-memory-loading,.character-memory-empty{padding:24px 16px;text-align:center;color:#cd43ff99;font-size:13px}.character-memory-list{padding:8px 0}.character-memory-group{padding:0 16px;margin-bottom:12px}.character-memory-group:last-child{margin-bottom:8px}.character-memory-group-header{display:flex;justify-content:space-between;align-items:center;padding:6px 0;margin-bottom:6px;border-bottom:1px solid rgba(205,67,255,.1)}.character-memory-session-name{color:#d8b4fe;font-size:13px;font-weight:400}.character-memory-story-date{color:#cd43ff99;font-size:11px}.character-memory-entry{padding:8px 0 8px 12px;border-left:2px solid rgba(205,67,255,.3);margin-bottom:6px}.character-memory-entry:last-child{margin-bottom:0}.memory-content-row{display:flex;align-items:flex-start;gap:8px}.character-memory-content{color:#f3e8ff;font-size:13px;line-height:1.5;margin:0 0 6px;flex:1}.memory-actions{display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .15s ease;flex-shrink:0}.character-memory-entry:hover .memory-actions{opacity:1}.memory-actions .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;font-size:16px;cursor:pointer;opacity:.7;transition:all .2s ease}.memory-actions .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.memory-actions .trash-icon-small{width:24px;height:24px}.memory-edit-container{display:flex;flex-direction:column;gap:6px}.memory-edit-textarea{width:100%;min-height:60px;padding:8px 10px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#f3e8ff;font-size:13px;line-height:1.5;font-family:inherit;resize:vertical}.memory-edit-textarea:focus{outline:none;border-color:#cd43ff99}.memory-edit-buttons{display:flex;gap:6px;justify-content:flex-end}.memory-edit-btn{background:none;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:4px 12px;font-size:14px;cursor:pointer;transition:all .15s ease}.memory-save-btn{color:#86efac;border-color:#86efac4d}.memory-save-btn:hover:not(:disabled){background:#86efac26;border-color:#86efac80}.memory-cancel-btn{color:#fca5a5;border-color:#fca5a54d}.memory-cancel-btn:hover:not(:disabled){background:#fca5a526;border-color:#fca5a580}.memory-edit-btn:disabled{opacity:.4;cursor:not-allowed}.memory-category-toggle{display:flex;gap:4px;margin-bottom:4px}.memory-category-toggle-btn{background:none;border:1px solid rgba(255,255,255,.15);border-radius:4px;padding:2px 10px;font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .15s ease;color:#ffffff80}.memory-category-toggle-btn:hover:not(:disabled){border-color:#cd43ff66;color:#cd43ffcc}.memory-category-toggle-btn.active{background:#cd43ff26;border-color:#cd43ff80;color:#cd43ff}.memory-category-toggle-btn:disabled{opacity:.4;cursor:not-allowed}.character-memory-entry.memory-entry-knowledge{border-left-color:#eab30880}.memory-category-badge.knowledge{display:inline-block;padding:1px 6px;border-radius:3px;font-size:9px;font-weight:400;letter-spacing:.5px;text-transform:uppercase;background:#eab30826;color:#eab308;border:1px solid rgba(234,179,8,.3);margin-right:6px;flex-shrink:0;align-self:flex-start;margin-top:2px}.character-memory-tags{display:flex;flex-wrap:wrap;gap:4px}.character-memory-tag{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500}.character-memory-tag.emotion-tag{background:#cd43ff1a;color:#d8b4fe;border:1px solid rgba(205,67,255,.2)}.character-memory-tag.involved-tag{background:#60a5fa26;color:#93c5fd;border:1px solid rgba(96,165,250,.25)}.character-memory-modal{position:relative;background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:12px;width:90%;max-width:600px;height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.character-memory-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.character-memory-modal-header h2{font-family:var(--font-primary);color:#cd43ff;font-size:1.25rem;font-weight:400;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.character-memory-modal .character-memory-panel{border:none;border-radius:0;background:transparent;max-height:none;overflow-y:auto;flex:1}.herodotus-character-modal-content{background:transparent;border:2px solid #cd43ff;border-radius:12px;width:90%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;animation:slideUp .3s ease;font-family:var(--font-primary)}.herodotus-character-modal-header{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;border-bottom:1px solid rgba(205,67,255,.3)}.herodotus-character-modal-title-section{display:flex;align-items:center;gap:16px}.herodotus-character-modal-icon{width:48px;height:48px;border-radius:50%;border:2px solid #cd43ff;object-fit:cover;box-shadow:0 0 15px #cd43ff4d;flex-shrink:0}.herodotus-character-modal-icon.avatar-placeholder{display:flex;align-items:center;justify-content:center;background:#cd43ff26;color:#cd43ff;font-size:20px}.herodotus-character-modal-title-text h2{margin:0;color:#f3e8ff;font-size:24px;font-weight:400}.herodotus-character-modal-subtitle{margin:4px 0 0;color:#e9d5ff;font-size:14px}.herodotus-character-modal-body{padding:24px;overflow-y:auto;flex:1}.herodotus-character-section{margin-bottom:24px}.herodotus-character-section:last-child{margin-bottom:0}.herodotus-character-section h3{color:#e9d5ff;font-size:16px;font-weight:400;margin:0 0 12px;border-bottom:1px solid rgba(205,67,255,.2);padding-bottom:8px}.herodotus-section-header-row{display:flex;justify-content:space-between;align-items:center}.herodotus-section-header-row h3{margin-bottom:0;border-bottom:none;padding-bottom:0;flex:1}.herodotus-character-summary{color:#f3e8ff;font-size:15px;line-height:1.6;margin:0}.herodotus-character-list{margin:0;padding-left:20px;color:#f3e8ff;font-size:14px;line-height:1.6}.herodotus-character-list li{margin-bottom:8px}.herodotus-character-list li:last-child{margin-bottom:0}.herodotus-character-tags{display:flex;flex-wrap:wrap;gap:8px}.herodotus-character-tag{padding:6px 12px;border-radius:16px;font-size:13px;font-weight:500;display:inline-block}.personality-tag{background:#cd43ff33;color:#e9d5ff;border:1px solid rgba(205,67,255,.4)}.herodotus-character-modal-body .herodotus-tags{display:flex;flex-wrap:wrap;gap:8px}.herodotus-character-modal-body .herodotus-tag{padding:6px 12px;border-radius:16px;font-size:13px;font-weight:500;display:inline-block}.herodotus-character-modal-body .herodotus-tag.session-tag{background:#60a5fa33;color:#93c5fd;border:1px solid rgba(96,165,250,.4)}.herodotus-character-modal-body .herodotus-tag.clickable{cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.herodotus-character-modal-body .herodotus-tag.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.herodotus-character-modal-body .herodotus-tag.clickable:active{transform:translateY(0)}.herodotus-character-modal-body .herodotus-tag.session-tag.clickable:hover{background:#60a5fa4d;border-color:#60a5fa99;color:#bfdbfe}.relationships-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.relationship-item{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:12px}.relationship-name{color:#e9d5ff;font-size:14px;font-weight:400;margin-bottom:4px}.relationship-description{color:#d8b4fe;font-size:13px;line-height:1.4}.herodotus-psych-section .psych-profile{background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:16px}.psych-field{margin-bottom:16px}.psych-field:last-child{margin-bottom:0}.psych-field strong{color:#e9d5ff;display:block;margin-bottom:8px;font-size:13px}.psych-list{margin:0;padding-left:20px}.psych-list li{margin-bottom:4px}.psych-worldview{color:#f3e8ff;font-size:14px;line-height:1.6;margin:0;font-style:normal;padding:8px 12px;background:#cd43ff1a;border-left:3px solid #cd43ff;border-radius:0 6px 6px 0}.psych-social-style{color:#f3e8ff;font-size:14px;text-transform:capitalize;padding:4px 12px;background:#cd43ff26;border-radius:12px;display:inline-block}.psych-trait-tag{background:#8b5cf633;color:#c4b5fd;border:1px solid rgba(139,92,246,.4)}.psych-trigger-tag{background:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.4)}.herodotus-voice-section .voice-profile{background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:16px}.voice-profile .voice-description,.voice-profile .voice-personality{color:#f3e8ff;font-size:14px;line-height:1.6;margin-bottom:12px}.voice-profile .voice-description strong,.voice-profile .voice-personality strong,.voice-profile .voice-examples strong{color:#e9d5ff;display:block;margin-bottom:4px;font-size:13px}.voice-profile .voice-examples{margin-top:12px}.voice-profile .example-phrases-list{margin:8px 0 0;padding-left:0;list-style:none}.voice-profile .example-phrase{color:#d8b4fe;font-size:14px;font-style:normal;padding:8px 12px;margin-bottom:8px;background:#cd43ff1a;border-left:3px solid #cd43ff;border-radius:0 6px 6px 0}.voice-profile .example-phrase:last-child{margin-bottom:0}.herodotus-story-history-section .story-history-list{display:flex;flex-direction:column;gap:16px}.story-history-entry{background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:16px}.story-history-session{color:#e9d5ff;font-size:15px;font-weight:400;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid rgba(205,67,255,.2)}.story-history-events{margin:0;padding-left:20px;color:#f3e8ff;font-size:13px;line-height:1.7}.story-history-events li{margin-bottom:8px;position:relative}.story-history-events li:last-child{margin-bottom:0}.story-history-events li::marker{color:#cd43ff}.session-appearances-list{display:flex;flex-direction:column;gap:12px}.session-appearance-item{background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:8px;padding:12px 16px}.session-appearance-name{color:#e9d5ff;font-size:14px;font-weight:400;margin-bottom:4px}.session-appearance-summary{color:#d8b4fe;font-size:13px;line-height:1.5}.appearances-info{display:flex;align-items:center;gap:8px}.appearances-count{background:#cd43ff33;color:#e9d5ff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;border:1px solid rgba(205,67,255,.3)}.herodotus-character-metadata{background:#cd43ff1a;border-radius:8px;padding:16px;margin-top:32px}.metadata-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.metadata-row:last-child{margin-bottom:0}.metadata-label{color:#d8b4fe;font-size:13px;font-weight:500}.metadata-value{color:#f3e8ff;font-size:13px}.herodotus-character-modal-footer{padding:20px 24px;border-top:1px solid rgba(205,67,255,.3);display:flex;justify-content:flex-end;gap:12px}.herodotus-character-modal-footer .btn-secondary{padding:10px 24px;background:transparent;border:1px solid #cd43ff;color:#e9d5ff;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.herodotus-character-modal-footer .btn-secondary:hover{background:#cd43ff1a;border-color:#e9d5ff;color:#f3e8ff}.herodotus-character-modal-body::-webkit-scrollbar{width:8px}.herodotus-character-modal-body::-webkit-scrollbar-track{background:#cd43ff1a;border-radius:4px}.herodotus-character-modal-body::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:4px}.herodotus-character-modal-body::-webkit-scrollbar-thumb:hover{background:#cd43ff99}.herodotus-character-modal-header .herodotus-modal-header-actions{display:flex;align-items:center;gap:8px}.herodotus-character-modal-header .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.herodotus-character-modal-header .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.herodotus-character-modal-header .herodotus-delete-btn{background:transparent;border:none;padding:4px;cursor:pointer;color:#ff43cd;display:flex;align-items:center;justify-content:center;opacity:.7;transition:all .2s ease;font-size:16px;line-height:1}.herodotus-character-modal-header .herodotus-delete-btn:hover{opacity:1;transform:scale(1.2)}.herodotus-character-modal-header .herodotus-delete-btn:active{transform:scale(.95)}.herodotus-character-modal-body .herodotus-edit-textarea{width:100%;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#e9d5ff;font-size:14px;line-height:1.6;padding:12px;resize:vertical;font-family:inherit;transition:border-color .2s,box-shadow .2s}.herodotus-character-modal-body .herodotus-edit-textarea:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 0 2px #cd43ff33}.herodotus-character-modal-body .herodotus-edit-textarea::placeholder{color:#cd43ff80}.herodotus-character-modal-body .herodotus-edit-input{width:100%;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#e9d5ff;font-size:14px;line-height:1.6;padding:8px 12px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.herodotus-character-modal-body .herodotus-edit-input:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 0 2px #cd43ff33}.herodotus-character-modal-body .herodotus-edit-input::placeholder{color:#cd43ff80}.relationships-edit{display:flex;flex-direction:column;gap:12px}.relationship-edit-item{background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:8px}.relationship-edit-header{display:flex;gap:8px;align-items:center}.relationship-edit-header .herodotus-edit-input{flex:1}.herodotus-edit-remove-btn{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#fca5a5;border-radius:6px;width:32px;height:32px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.herodotus-edit-remove-btn:hover{background:#ef44444d;border-color:#ef444499}.herodotus-edit-add-btn{background:#cd43ff1a;border:1px dashed rgba(205,67,255,.4);color:#d8b4fe;border-radius:8px;padding:10px;cursor:pointer;font-size:14px;font-family:inherit;transition:all .2s}.herodotus-edit-add-btn:hover{background:#cd43ff33;border-color:#cd43ff;color:#e9d5ff}.herodotus-appearance-log{display:flex;flex-direction:column;gap:12px}.herodotus-appearance-entry{display:flex;flex-direction:column;gap:4px;padding:12px;background:#cd43ff14;border-left:3px solid #cd43ff;border-radius:4px}.herodotus-appearance-description{color:#f3e8ff;font-size:14px;line-height:1.5}.herodotus-appearance-session{color:#a78bfa;font-size:12px;font-style:normal}.herodotus-appearance-edit{display:flex;flex-direction:column;gap:16px}.herodotus-appearance-entry-edit{display:flex;flex-direction:column;gap:8px;padding:12px;background:#cd43ff0d;border-radius:8px}.herodotus-appearance-entry-edit .herodotus-appearance-session{align-self:flex-end}.herodotus-appearance-creator{border-left-color:#fcd34d;background:#fcd34d1a}.herodotus-appearance-creator .herodotus-appearance-session{color:#fcd34d}.herodotus-player-modal-content{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0009,0 0 40px #cd43ff26,inset 0 1px #ffffff0d;animation:slideUp .3s ease;font-family:var(--font-primary)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.herodotus-player-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff08}.herodotus-player-modal-title-section{display:flex;align-items:center;gap:16px}.herodotus-player-modal-avatar{flex-shrink:0}.herodotus-player-modal-title-text h2{margin:0;color:#cd43ff;font-size:24px;font-weight:400;font-family:var(--font-primary);letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.3)}.herodotus-player-modal-subtitle{margin:4px 0 0;color:#cd43ffb3;font-size:13px;font-family:var(--font-primary);letter-spacing:.3px}.herodotus-player-modal-content .modal-close-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff9;font-size:24px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;line-height:1}.herodotus-player-modal-content .modal-close-btn:hover{background:#ff43cd26;border-color:#ff43cd4d;color:#ff43cd;transform:scale(1.05)}.herodotus-player-modal-header .herodotus-modal-header-actions{display:flex;align-items:center;gap:8px}.herodotus-player-modal-header .herodotus-delete-btn{background:transparent;border:none;padding:4px;cursor:pointer;color:#ff43cd;display:flex;align-items:center;justify-content:center;opacity:.7;transition:all .2s ease;font-size:16px;line-height:1}.herodotus-player-modal-header .herodotus-delete-btn:hover{opacity:1;transform:scale(1.2)}.herodotus-player-modal-header .herodotus-delete-btn:active{transform:scale(.95)}.herodotus-player-modal-body{padding:24px;overflow-y:auto;flex:1}.herodotus-player-loading,.herodotus-player-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:#a78bfa}.herodotus-player-empty-text{color:#6b7280;font-style:normal}.herodotus-player-section{margin-bottom:24px}.herodotus-player-section:last-child{margin-bottom:0}.herodotus-player-section h3{color:#cd43ff;font-size:16px;font-weight:400;font-family:var(--font-primary);margin:0 0 12px;border-bottom:1px solid rgba(205,67,255,.2);padding-bottom:8px}.herodotus-player-summary{color:#ffffffd9;font-size:15px;line-height:1.6;margin:0}.herodotus-player-stats{display:flex;flex-wrap:wrap;gap:12px}.herodotus-player-modal-content .stat-item{display:flex;flex-direction:column;align-items:center;padding:14px 20px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:10px;min-width:100px;transition:all .2s ease}.herodotus-player-modal-content .stat-item:hover{background:#cd43ff1f;border-color:#cd43ff4d}.herodotus-player-modal-content .stat-value{font-size:24px;font-weight:400;color:#cd43ff;font-family:var(--font-primary)}.herodotus-player-modal-content .stat-value.engagement{font-size:14px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.herodotus-player-modal-content .stat-label{font-size:11px;color:#cd43ffb3;margin-top:6px;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-primary)}.herodotus-player-role{background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:10px;padding:16px}.herodotus-player-modal-content .role-badge{display:inline-block;background:#cd43ff33;color:#cd43ff;padding:6px 16px;border-radius:20px;border:1px solid rgba(205,67,255,.4);font-weight:400;font-size:13px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.herodotus-player-modal-content .role-description{color:#fffc;font-size:14px;line-height:1.6;margin:0}.herodotus-player-tags{display:flex;flex-wrap:wrap;gap:8px}.herodotus-player-tag{padding:5px 12px;border-radius:20px;font-size:12px;font-weight:500;font-family:var(--font-primary);transition:all .2s ease}.herodotus-player-modal-content .playstyle-tag{background:#cd43ff26;color:#ffffffd9;border:1px solid rgba(205,67,255,.25)}.herodotus-player-modal-content .playstyle-tag:hover{background:#cd43ff33;border-color:#cd43ff66}.herodotus-player-modal-content .taste-tag{background:#ff43cd26;color:#ffb6e8f2;border:1px solid rgba(255,67,205,.25)}.herodotus-player-modal-content .taste-tag:hover{background:#ff43cd33;border-color:#ff43cd66}.herodotus-player-modal-content .interest-tag{background:#ffffff0d;color:#fffc;border:1px solid rgba(255,255,255,.15)}.herodotus-player-modal-content .interest-tag:hover{background:#ffffff14;border-color:#ffffff40}.herodotus-player-modal-content .rp-tag{background:#3b82f626;color:#93c5fdf2;border:1px solid rgba(59,130,246,.25)}.herodotus-player-modal-content .rp-tag:hover{background:#3b82f633;border-color:#3b82f666}.herodotus-player-modal-content .gm-tag{background:#f59e0b26;color:#fde047f2;border:1px solid rgba(245,158,11,.25)}.herodotus-player-modal-content .gm-tag:hover{background:#f59e0b33;border-color:#f59e0b66}.herodotus-player-text{color:#fffc;font-size:14px;line-height:1.6;margin:0}.herodotus-player-list{margin:0;padding-left:20px;color:#fffc;font-size:14px;line-height:1.8}.herodotus-player-list li{margin-bottom:4px}.strengths-list li::marker{color:#cd43ff}.tendencies-list li::marker{color:#fcd34d}.herodotus-player-characters{display:flex;flex-wrap:wrap;gap:8px}.character-link-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:10px;color:#ffffffd9;font-size:13px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.character-link-btn:hover:not(:disabled){background:#cd43ff26;border-color:#cd43ff66;transform:scale(1.02);box-shadow:0 4px 15px #cd43ff33}.character-link-btn:disabled{cursor:default;opacity:.6}.character-type-badge{padding:4px 8px;border-radius:20px;font-size:10px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:500;background:#cd43ff40;color:#cd43ff;border:1px solid rgba(205,67,255,.5);min-width:28px;text-align:center}.herodotus-player-modal-content .character-name{color:#ffffffe6}.character-first-appearance{font-size:10px;color:#fff6;font-style:normal;margin-left:auto;padding-left:8px}.herodotus-player-channels{display:flex;flex-direction:column;gap:16px}.channel-group{display:flex;flex-direction:column;gap:10px}.channel-group-label{font-size:11px;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;font-weight:400;font-family:var(--font-primary)}.herodotus-player-modal-content .channel-tag{font-size:11px;padding:5px 12px;border-radius:20px;font-family:var(--font-primary)}.herodotus-player-modal-content .channel-tag.ooc{background:#cd43ff1f;color:#fffc;border:1px solid rgba(205,67,255,.2)}.herodotus-player-modal-content .channel-tag.ic{background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.2)}.herodotus-player-timeline{display:flex;flex-wrap:wrap;gap:12px}.herodotus-player-modal-content .timeline-item{display:flex;flex-direction:column;gap:6px;padding:12px 18px;background:#cd43ff14;border:1px solid rgba(205,67,255,.15);border-radius:10px;transition:all .2s ease}.herodotus-player-modal-content .timeline-item:hover{background:#cd43ff1f;border-color:#cd43ff40}.herodotus-player-modal-content .timeline-label{font-size:10px;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-primary)}.herodotus-player-modal-content .timeline-value{font-size:14px;color:#ffffffe6;font-weight:500}.herodotus-player-modal-body::-webkit-scrollbar{width:8px}.herodotus-player-modal-body::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.herodotus-player-modal-body::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.herodotus-player-modal-body::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.herodotus-player-modal-content:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60%;height:2px;background:linear-gradient(90deg,transparent,rgba(205,67,255,.5),rgba(205,67,255,.8),rgba(205,67,255,.5),transparent);border-radius:2px}.herodotus-player-ai-badge{display:inline-flex;align-items:center;margin-left:12px;padding:3px 10px;background:#10b98133;border:1px solid rgba(16,185,129,.4);border-radius:12px;font-size:11px;font-weight:400;color:#10b981;letter-spacing:.5px;text-transform:uppercase;cursor:help;vertical-align:middle}.import-queue-edit-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.import-queue-edit-modal{background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #cd43ff4d;min-width:420px;max-width:520px;max-height:80vh;display:flex;flex-direction:column}.import-queue-edit-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px;border-bottom:1px solid rgba(205,67,255,.15)}.import-queue-edit-title{margin:0;color:#cd43ff;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.5)}.import-queue-edit-hint{margin:0;padding:12px 24px;color:#ffffff80;font-size:12px;line-height:1.4}.import-queue-edit-list{flex:1;overflow-y:auto;padding:4px 24px 16px;max-height:60vh}.import-queue-edit-list::-webkit-scrollbar{width:6px}.import-queue-edit-list::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:3px}.import-queue-edit-list::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:3px}.import-queue-edit-list::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.import-queue-edit-item{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.import-queue-edit-item:last-child{border-bottom:none}.import-queue-edit-item-info{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.import-queue-edit-item-name{color:#ffffffe6;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.import-queue-edit-item.is-disabled .import-queue-edit-item-name{color:#ffffff80}.import-queue-edit-badge{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;white-space:nowrap;flex-shrink:0}.import-queue-edit-badge.classification{color:#cd43ffcc;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2)}.import-queue-edit-badge.status-done{color:#43ff97e6;background:#43ff971a;border:1px solid rgba(67,255,151,.2)}.import-queue-edit-badge.status-fetching{color:#cd43ffe6;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3)}.import-queue-edit-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.15)}.import-queue-edit-loading{display:flex;align-items:center;justify-content:center;padding:40px 24px}.discord-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.discord-modal{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:12px;width:800px;min-width:800px;max-width:800px;height:80vh;min-height:80vh;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #cd43ff33;animation:slideUp .3s ease;position:relative}.discord-modal:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url(/fantasia/fantaweb/assets/pheidippides-7YKTyNzj.jpg);background-size:cover;background-position:center top;background-repeat:no-repeat;opacity:.45;pointer-events:none;z-index:0}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.discord-modal-header{background:#cd43ff1a;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(205,67,255,.2);position:relative;z-index:1;flex-shrink:0}.discord-modal-header h2{margin:0;color:#cd43ff;font-family:var(--font-primary);font-size:24px;font-weight:400}.modal-close{background:none;border:none;color:#fff9;font-size:28px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s;transform:rotate(90deg)}.modal-close:hover{color:#cd43ff;transform:rotate(90deg)}.discord-modal-body{padding:24px;overflow-y:auto;flex:1;min-height:0;position:relative;z-index:1}.discord-modal-body:has(.step-channel-select){overflow-y:hidden;padding:0;display:flex;flex-direction:column}.step-instructions h3{color:#fff;margin-bottom:24px;font-size:20px;font-weight:400}.instruction-steps{margin-bottom:12px}.instruction-step{display:flex;margin-bottom:24px;padding:20px;background:#ffffff05;border-radius:8px;border:1px solid rgba(205,67,255,.1);transition:all .3s}.instruction-step:hover{background:#cd43ff0d;border-color:#cd43ff33}.step-number{background:linear-gradient(135deg,#cd43ff,#7b1fa2);color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:400;flex-shrink:0;margin-right:16px}.step-content h4{color:#cd43ff;margin-top:0;margin-bottom:8px;font-size:16px;font-weight:400}.step-content p{color:#fffc;margin:8px 0;line-height:1.5}.intro-text{color:#ffffffb3;font-size:16px;margin-bottom:24px;text-align:center}.step-content ol{color:#ffffffb3;margin:12px 0;padding-left:20px}.step-content li{margin:6px 0}.external-link{color:#5865f2;text-decoration:none;display:inline-flex;align-items:center;margin-top:8px;transition:color .2s}.external-link:hover{color:#7289da;text-decoration:underline}.pheidippides-invite{display:flex;align-items:center;padding:16px;background:#5865f21a;border:2px solid #5865F2;border-radius:8px;margin:16px 0;text-decoration:none;transition:all .3s ease}.pheidippides-invite:hover{background:#5865f233;border-color:#7289da;transform:translateY(-2px);text-decoration:none;color:inherit}.bot-avatar{width:48px;height:48px;margin-right:16px;flex-shrink:0;border-radius:50%;overflow:hidden;background:#5865f21a}.bot-avatar img{width:100%;height:100%;object-fit:cover}.bot-details{flex-grow:1}.bot-details strong{display:block;color:#5865f2;font-size:16px;margin-bottom:4px}.bot-details small{color:#fff9;font-size:13px}.pheidippides-invite .arrow{color:#5865f2;font-size:20px;margin-left:12px}.loading-servers{display:flex;flex-direction:column;align-items:center;padding:40px 20px;color:#fff9}.loading-servers p{margin:0;font-size:14px}.invite-url-box{background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:4px;padding:12px;margin:12px 0;font-family:Courier New,monospace;font-size:12px;color:#ffffffe6;word-break:break-all;-webkit-user-select:all;user-select:all}.step-bot-setup h3{color:#fff;margin-bottom:24px;font-size:20px;font-weight:400}.form-group{margin-bottom:20px}.form-group label{display:block;color:#fffc;margin-bottom:8px;font-size:14px}.discord-input{width:100%;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:4px;padding:12px;color:#fff;font-size:14px;transition:all .2s}.discord-input:focus{outline:none;border-color:#cd43ff;background:#00000080}.help-text{color:#ffffff80;font-size:12px;margin-top:6px}.step-server-select{display:flex;flex-direction:column;height:100%}.step-server-select h3{color:#fff;margin-bottom:24px;font-size:20px;font-weight:400}.step-server-select .server-list{flex:1;min-height:0}.server-list{margin-bottom:24px;overflow-y:auto}.no-servers{color:#fff9;text-align:center;padding:40px 20px}.server-item{display:flex;align-items:center;padding:12px;margin-bottom:8px;background:#ffffff05;border:1px solid rgba(205,67,255,.1);border-radius:8px;cursor:pointer;transition:all .2s}.server-item:hover{background:#cd43ff0d;border-color:#cd43ff33}.server-item.selected{background:#cd43ff1a;border-color:#cd43ff}.server-icon{width:48px;height:48px;margin-right:16px;border-radius:50%;overflow:hidden;flex-shrink:0}.server-icon img{width:100%;height:100%}.server-icon-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#cd43ff,#7b1fa2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:400;font-size:20px}.server-info{flex-grow:1}.server-info h4{color:#fff;margin:0 0 4px;font-size:16px;font-weight:400}.server-info p{color:#fff9;margin:0;font-size:14px}.server-select-indicator{color:#cd43ff;font-size:24px;margin-left:12px}.step-importing{text-align:center;padding:40px 20px}.step-importing h3{color:#fff;margin-bottom:32px;font-size:20px;font-weight:400}.import-progress{margin-bottom:24px}.progress-bar{width:100%;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;background:linear-gradient(90deg,#cd43ff,#9333ea);border-radius:4px;transition:width .3s ease}.progress-bar.indeterminate .progress-fill{width:100%!important;animation:indeterminate-pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#cd43ff4d,#cd43ff 35%,#9333ea 65%,#9333ea4d);background-size:200% 100%}@keyframes indeterminate-pulse{0%{background-position:100% 0;opacity:.6}50%{opacity:1}to{background-position:-100% 0;opacity:.6}}.progress-text{color:#cd43ff;font-size:24px;font-weight:400;margin:0}.import-status{color:#fffc;margin-bottom:24px;font-size:14px}.import-details p{color:#ffffff80;margin:8px 0;font-size:13px}.step-complete{text-align:center;padding:60px 20px}.success-icon{font-size:64px;margin-bottom:24px}.step-complete h3{color:#fff;margin-bottom:16px;font-size:24px;font-weight:400}.step-complete p{color:#ffffffb3;margin:8px 0}.error-message{background:#ff00001a;border:1px solid rgba(255,0,0,.3);border-radius:4px;padding:12px;margin:16px 0;color:#ff6b6b;font-size:14px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:1px solid rgba(205,67,255,.1)}.step-channel-select .modal-actions{flex-shrink:0;margin:16px 24px 0;padding:16px 0 0;background:transparent;border-top:1px solid rgba(205,67,255,.2)}.step-channel-select .error-message{flex-shrink:0;margin:0 24px}.discord-modal-body::-webkit-scrollbar,.server-list::-webkit-scrollbar{width:8px}.discord-modal-body::-webkit-scrollbar-track,.server-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.discord-modal-body::-webkit-scrollbar-thumb,.server-list::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.discord-modal-body::-webkit-scrollbar-thumb:hover,.server-list::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.step-channel-select{display:flex;flex-direction:column;flex:1;min-height:0;padding:16px 0 0}.step-channel-select h3{padding:0 24px;margin:0 0 8px;color:#fff;font-size:20px;font-weight:400;flex-shrink:0}.step-channel-select .subtitle{color:#fff9;margin:0 0 16px;padding:0 24px;font-size:14px;flex-shrink:0}.channel-actions{display:flex;justify-content:space-between;align-items:center;margin:0 24px 16px;padding:12px 16px;background:#ffffff08;border-radius:8px;border:1px solid rgba(205,67,255,.1);flex-shrink:0}.selection-count{font-size:14px;color:#cd43ff;font-weight:400}.bulk-actions{display:flex;gap:8px}.channels-list{flex:1;overflow-y:auto;margin:0 24px;padding-right:8px;min-height:0}.channels-list::-webkit-scrollbar{width:8px}.channels-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.channels-list::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.channels-list::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.channel-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;margin-bottom:8px;transition:all .2s ease;cursor:pointer}.channel-item:hover{background:#ffffff0d;border-color:#cd43ff4d}.channel-item.selected{background:#cd43ff1a;border-color:#cd43ff66}.channel-item.indented{margin-left:32px}.category-group{margin-bottom:12px}.category-header{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:8px;margin-bottom:8px;font-weight:400;cursor:pointer;transition:all .2s ease}.category-header:hover{background:#cd43ff33;border-color:#cd43ff80}.category-checkbox{display:flex;align-items:center}.category-info{flex:1;display:flex;align-items:center;gap:8px}.category-expand-icon{font-size:12px;color:#fff9;width:16px;display:inline-block}.category-name{color:#ffffffe6;font-size:14px;cursor:pointer}.category-toggle{margin-left:auto}.channel-checkbox{display:flex;align-items:center}.channel-info{flex:1;display:flex;flex-direction:column;gap:8px}.channel-header{display:flex;align-items:center;gap:12px}.channel-name{font-size:16px;font-weight:400;color:#fff;cursor:pointer}.channel-imported-badge{font-size:10px;font-weight:400;font-family:var(--font-primary);letter-spacing:.5px;color:#4caf50e6;background:#4caf501f;border:1px solid rgba(76,175,80,.25);padding:1px 8px;border-radius:4px;white-space:nowrap}.channel-category{font-size:12px;color:#ffffff80;background:#ffffff1a;padding:2px 8px;border-radius:4px}.channel-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.channel-description{font-size:12px;color:#fff9;font-style:normal}.channel-toggle{display:flex;align-items:center}.toggle-button{display:flex;align-items:center;gap:2px;padding:4px;background:#ffffff0d;border:1px solid rgba(205,67,255,.3);border-radius:20px;cursor:pointer;transition:all .2s ease;position:relative}.toggle-button:hover{border-color:#cd43ff80;background:#ffffff14}.toggle-label{padding:6px 12px;border-radius:16px;font-size:13px;font-weight:400;transition:all .2s ease;color:#ffffff80}.toggle-label.active{color:#fff}.toggle-label.ooc.active{background:#ff6b6b}.toggle-label.ic.active{background:#4ecdc4}.loading-channels{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.loading-channels p{color:#fff9;font-size:14px}.discord-inline-linking{display:flex;flex-direction:column;gap:24px;padding:0;max-width:100%}.linking-hero{text-align:center;padding:20px 0;margin-bottom:8px}.linking-hero h3{font-size:24px;font-weight:400;color:#cd43ff;margin:0 0 12px;letter-spacing:.3px}.linking-hero .subtitle{font-size:15px;color:#ffffffb3;line-height:1.5;max-width:500px;margin:0 auto}.linking-info-sections{display:flex;flex-direction:column;gap:20px}.linking-info-box{background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:10px;padding:20px;display:flex;gap:16px;align-items:flex-start}.linking-info-box .info-icon{font-size:24px;flex-shrink:0;line-height:1;margin-top:2px}.linking-info-box .info-content{flex:1}.linking-info-box h4{font-size:16px;font-weight:400;color:#fff;margin:0 0 12px}.linking-info-box ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.linking-info-box li{font-size:14px;color:#fffc;line-height:1.6;padding-left:20px;position:relative}.linking-info-box li:before{content:"✓";position:absolute;left:0;color:#cd43ff;font-weight:400}.linking-steps{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:10px;padding:20px}.linking-steps h4{font-size:16px;font-weight:400;color:#fff;margin:0 0 16px}.linking-steps ol{list-style:none;counter-reset:step-counter;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.linking-steps li{font-size:14px;color:#fffc;line-height:1.6;padding-left:32px;position:relative;counter-increment:step-counter}.linking-steps li:before{content:counter(step-counter);position:absolute;left:0;top:0;width:24px;height:24px;background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:400;color:#cd43ff}.linking-actions{display:flex!important;flex-direction:column!important;align-items:center!important;gap:12px!important;padding:20px 0 0!important;border-top:1px solid rgba(205,67,255,.15);margin-top:8px}.linking-actions button{width:100%;max-width:300px;margin:0!important}.privacy-note{font-size:13px;color:#ffffff80;text-align:center;margin:0;padding:0;line-height:1.5}.loading-discord-status{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.loading-discord-status p{color:#fff9;font-size:14px;margin:0}.success-message{background:#4caf5026;border:1px solid rgba(76,175,80,.3);border-radius:8px;padding:14px 18px;color:#81c784;font-size:14px;text-align:center;animation:fadeIn .3s ease}.error-message{background:#ff43cd26;border:1px solid rgba(255,67,205,.3);border-radius:8px;padding:14px 18px;color:#ff8fcf;font-size:14px;text-align:center;animation:fadeIn .3s ease}.discord-linked-banner{background:#4caf501f;border:1px solid rgba(76,175,80,.3);border-radius:8px;padding:12px 16px;display:flex;align-items:center;gap:10px;margin-bottom:16px}.discord-linked-banner .linked-icon{font-size:18px;flex-shrink:0}.discord-linked-banner .linked-text{color:#81c784;font-size:14px;font-weight:400}.orphan-accounts-modal{max-width:800px;max-height:90vh;overflow-y:auto;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:12px;box-shadow:0 20px 60px #0009,0 0 40px #cd43ff26}.orphan-accounts-modal .modal-body{padding:24px}.orphan-accounts-modal .modal-header{border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff08}.orphan-accounts-modal .modal-header h2{font-family:var(--font-primary);color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.3)}.orphan-accounts-modal .modal-close{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff9;transition:all .2s ease}.orphan-accounts-modal .modal-close:hover{background:#ff43cd26;border-color:#ff43cd4d;color:#ff43cd}.orphan-tabs{display:flex;gap:0;padding:0 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#0003}.orphan-tab{padding:12px 24px;background:transparent;border:none;border-bottom:2px solid transparent;color:#fff9;font-size:13px;font-family:var(--font-primary);font-weight:500;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.orphan-tab:hover{color:#ffffffe6;background:#cd43ff0d}.orphan-tab.active{color:#cd43ff;border-bottom-color:#cd43ff;background:#cd43ff14}.orphan-tab-count{background:#cd43ff40;color:#cd43ff;font-size:10px;font-weight:400;padding:3px 8px;border-radius:20px;min-width:20px;text-align:center;border:1px solid rgba(205,67,255,.4)}.orphan-tab.active .orphan-tab-count{background:#cd43ff59;border-color:#cd43ff}.orphan-character-info{display:flex;align-items:center;gap:12px;flex:1}.orphan-character-avatar{width:48px;height:48px;border-radius:10px;object-fit:cover;border:1px solid rgba(205,67,255,.3);box-shadow:0 0 10px #cd43ff26}.orphan-character-details{flex:1}.orphan-discord-hint{font-size:12px;color:#7289da;margin-top:2px;font-style:normal}.orphan-description{font-size:12px;color:#ffffff80;margin-top:4px;line-height:1.4}.orphan-badge{padding:4px 10px;background:#ffc10726;border:1px solid rgba(255,193,7,.3);border-radius:20px;font-size:10px;font-family:var(--font-primary);font-weight:500;color:#ffc107;text-transform:uppercase;letter-spacing:1px}.orphan-info{padding:16px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);border-radius:10px;margin-bottom:24px}.orphan-list{margin-bottom:24px}.orphan-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.orphan-list-header h3{margin:0;font-size:15px;font-family:var(--font-primary);font-weight:400;color:#cd43ff;letter-spacing:.5px;text-shadow:0 0 15px rgba(205,67,255,.2)}.orphan-list h3{margin:0 0 16px;font-size:15px;font-family:var(--font-primary);font-weight:400;color:#cd43ff;letter-spacing:.5px}.orphan-delete-all-btn{background:#ff43cd1a;border:1px solid rgba(255,67,205,.4);border-radius:6px;color:#ff43cd;font-family:var(--font-primary);font-size:.85rem;padding:6px 16px;cursor:pointer;transition:all .2s ease;letter-spacing:.3px}.orphan-delete-all-btn:hover:not(:disabled){background:#ff43cd40;border-color:#ff43cd;box-shadow:0 0 15px #ff43cd80;transform:scale(1.05)}.orphan-delete-all-btn:disabled{opacity:.5;cursor:not-allowed}.orphan-item{padding:16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:10px;margin-bottom:10px;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center}.orphan-item:hover{background:#cd43ff1a;border-color:#cd43ff4d;transform:translateY(-1px)}.orphan-item.selected{background:#cd43ff26;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.orphan-item .orphan-info{padding:0;background:none;border:none;margin:0;flex:1}.orphan-name{font-weight:400;color:#fff;margin-bottom:4px}.orphan-email{font-size:13px;color:#fff9}.orphan-stats{display:flex;align-items:center;gap:12px}.post-count{padding:4px 10px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:20px;font-size:11px;font-family:var(--font-primary);font-weight:500;color:#cd43ff;letter-spacing:.5px}.reassign-mode-selector{margin-bottom:24px}.reassign-mode-selector h3{margin:0 0 16px;font-size:16px;font-weight:400;color:#cd43ff}.mode-options{display:flex;gap:12px}.mode-option{flex:1;padding:16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:10px;cursor:pointer;transition:all .3s ease;display:flex;gap:12px;align-items:flex-start}.mode-option:hover{background:#cd43ff1a;border-color:#cd43ff4d}.mode-option.selected{background:#cd43ff26;border-color:#cd43ff80}.mode-option input[type=radio]{margin-top:2px;accent-color:#CD43FF}.mode-details{flex:1}.mode-title{font-weight:400;color:#fff;margin-bottom:4px}.mode-description{font-size:13px;color:#fff9;line-height:1.4}.target-user-selector{margin-bottom:24px}.target-user-selector h3{margin:0 0 16px;font-size:15px;font-family:var(--font-primary);font-weight:400;color:#cd43ff;letter-spacing:.5px}.user-list{max-height:300px;overflow-y:auto;border:1px solid rgba(205,67,255,.2);border-radius:10px;background:#0000004d}.user-item{padding:12px 16px;border-bottom:1px solid rgba(205,67,255,.1);cursor:pointer;transition:all .3s ease}.user-item:last-child{border-bottom:none}.user-item:hover{background:#cd43ff1a}.user-item.selected{background:#cd43ff26;border-left:3px solid #CD43FF}.user-name{font-weight:400;color:#fff;margin-bottom:2px}.user-username{font-size:13px;color:#fff9}.reassign-actions{display:flex;gap:12px;padding:16px;background:#cd43ff0d;border-radius:10px;border:1px solid rgba(205,67,255,.15)}.loading-state,.empty-state{text-align:center;padding:48px 24px;color:#cd43ffb3}.empty-state p:first-child{font-family:var(--font-primary);font-size:16px;color:#cd43ffcc}.orphan-accounts-modal::-webkit-scrollbar,.user-list::-webkit-scrollbar{width:8px}.orphan-accounts-modal::-webkit-scrollbar-track,.user-list::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.orphan-accounts-modal::-webkit-scrollbar-thumb,.user-list::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.orphan-accounts-modal::-webkit-scrollbar-thumb:hover,.user-list::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.orphan-item.clustered{border-left:3px solid #CD43FF;background:#cd43ff0d}.orphan-item.clustered:hover{background:#cd43ff1a;border-color:#cd43ff80}.orphan-item.clustered.selected{background:#cd43ff26;border-color:#cd43ff99}.orphan-name-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.orphan-ai-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:12px;font-size:10px;font-weight:400;color:#cd43ff;letter-spacing:.5px;text-transform:uppercase;cursor:help}.orphan-characters{font-size:12px;color:#ffffffb3;margin-bottom:4px;font-style:normal}.orphan-merge-section{margin-top:16px;padding:16px;background:#cd43ff0d;border-radius:10px;border:1px solid rgba(205,67,255,.15)}.orphan-merge-section h4{font-family:var(--font-primary);color:#cd43ff;margin-bottom:12px;font-size:14px}.orphan-merge-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.orphan-merge-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;cursor:pointer;transition:all .2s ease}.orphan-merge-item:hover{background:#cd43ff1a;border-color:#cd43ff4d}.orphan-merge-item.selected{background:#cd43ff26;border-color:#cd43ff80}.orphan-merge-btn{padding:6px 12px;background:#ff6b9d26;border:1px solid rgba(255,107,157,.3);border-radius:6px;color:#ff6b9d;font-size:11px;font-weight:400;cursor:pointer;transition:all .2s ease}.orphan-merge-btn:hover{background:#ff6b9d40;border-color:#ff6b9d;transform:scale(1.05)}.import-source-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.import-source-modal{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:16px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #cd43ff33}.import-source-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;border-bottom:1px solid rgba(205,67,255,.2)}.import-source-header h2{font-family:var(--font-primary);font-size:24px;font-weight:400;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1px}.modal-close{background:none;border:none;color:#ffffff80;font-size:32px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.modal-close:hover{color:#cd43ff}.import-source-body{padding:32px}.import-source-description{color:#fffc;font-size:16px;text-align:center;margin-bottom:32px;line-height:1.6}.import-source-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.import-option{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:32px 24px;text-align:center;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:16px}.import-option:hover{background:#cd43ff1a;border-color:#cd43ff66;transform:translateY(-4px);box-shadow:0 8px 24px #cd43ff33}.import-option-icon{font-size:48px;margin-bottom:8px}.import-option-icon.discord-icon{display:flex;align-items:center;justify-content:center}.import-option-icon.discord-icon svg{width:60px;height:60px}.import-option h3{font-family:var(--font-primary);font-size:20px;font-weight:400;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1px}.import-option p{color:#ffffffb3;font-size:14px;line-height:1.6;margin:0;flex:1}.import-option button{margin-top:8px;align-self:center;min-width:120px;max-width:200px}@media (max-width: 768px){.import-source-options{grid-template-columns:1fr}}.freeform-import-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.freeform-import-modal{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #cd43ff33}.freeform-import-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;border-bottom:1px solid rgba(205,67,255,.2)}.freeform-import-header h2{font-family:var(--font-primary);font-size:24px;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1px}.freeform-import-header .modal-close{background:none;border:none;color:#ffffff80;font-size:32px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.freeform-import-header .modal-close:hover{color:#cd43ff}.freeform-import-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.freeform-import-body{padding:32px}.freeform-import-description{color:#fffc;font-size:14px;text-align:center;margin-bottom:24px;line-height:1.6}.freeform-drop-zone{border:2px dashed rgba(205,67,255,.3);border-radius:12px;padding:40px 24px;text-align:center;cursor:pointer;transition:all .3s ease;margin-bottom:24px;background:#cd43ff05}.freeform-drop-zone:hover{border-color:#cd43ff80;background:#cd43ff0d}.freeform-drop-zone.dragging{border-color:#cd43ff;background:#cd43ff1a;transform:scale(1.01)}.freeform-drop-zone.has-file{border-style:solid;border-color:#4ade8080;background:#4ade800d}.drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:12px}.drop-icon{font-size:48px;opacity:.8}.drop-text{color:#ffffffe6;font-size:16px;margin:0}.supported-formats{color:#ffffff80;font-size:13px;margin:0}.selected-file-info{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.file-icon{font-size:32px}.file-name{color:#4ade80;font-size:16px;font-weight:500;word-break:break-all}.file-size{color:#ffffff80;font-size:14px}.freeform-form-group{margin-bottom:16px}.freeform-form-group label{display:block;color:#fffc;font-size:14px;margin-bottom:8px}.freeform-form-group label .optional{color:#fff6;font-size:12px;margin-left:8px}.freeform-form-group input{width:100%;padding:12px 16px;background:#ffffff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#fff;font-size:14px;transition:all .2s ease;box-sizing:border-box}.freeform-form-group input:focus{outline:none;border-color:#cd43ff80;background:#ffffff14}.freeform-form-group input::placeholder{color:#ffffff4d}.freeform-form-group input:disabled{opacity:.5;cursor:not-allowed}.freeform-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:12px 16px;color:#ef4444;font-size:14px;margin-top:16px}.freeform-import-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px 32px;border-top:1px solid rgba(205,67,255,.2)}.freeform-import-footer button{min-width:100px}.fetch-channels-modal{background:transparent;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080,0 0 60px #cd43ff1a;overflow:hidden}.fetch-channels-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.2);flex-shrink:0}.fetch-channels-modal .modal-header h2{font-family:var(--font-primary);font-size:20px;font-weight:400;color:#cd43ff;margin:0;letter-spacing:.5px}.fetch-channels-modal .modal-description{font-family:var(--font-primary);font-size:13px;color:#ffffffb3;padding:16px 24px;margin:0;line-height:1.6;border-bottom:1px solid rgba(205,67,255,.1);background:#cd43ff05;flex-shrink:0}.fetch-channels-modal .modal-error{background:#ff434326;border:1px solid rgba(255,67,67,.4);color:#ff6b6b;padding:12px 24px;font-size:13px;flex-shrink:0}.fetch-channels-modal .modal-actions-top{display:flex;align-items:center;gap:12px;padding:12px 24px;border-bottom:1px solid rgba(205,67,255,.1);background:#cd43ff05;flex-shrink:0}.fetch-channels-modal .selection-count{font-family:var(--font-primary);font-size:12px;color:#cd43ffb3;margin-left:auto}.fetch-channels-modal .channels-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px 24px;display:flex;flex-direction:column;gap:12px;min-height:150px;max-height:calc(80vh - 280px)}.fetch-channels-modal .channels-list::-webkit-scrollbar{width:8px}.fetch-channels-modal .channels-list::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.fetch-channels-modal .channels-list::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.fetch-channels-modal .channels-list::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.fetch-channels-modal .no-channels{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;font-family:var(--font-primary);font-size:16px;color:#cd43ff99;text-align:center;padding:30px 40px;gap:20px}.fetch-channels-modal .no-channels p{margin:0;line-height:1.5}.fetch-channels-modal .category-group{display:flex;flex-direction:column;gap:12px;flex-shrink:0}.fetch-channels-modal .category-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;cursor:pointer;transition:all .2s ease}.fetch-channels-modal .category-header:hover{background:#cd43ff1a;border-color:#cd43ff}.fetch-channels-modal .category-header.selected{background:#cd43ff26;border-color:#cd43ff}.fetch-channels-modal .category-header.partial{background:#cd43ff14;border-color:#cd43ff80}.fetch-channels-modal .category-checkbox{width:20px;height:20px;border:2px solid rgba(205,67,255,.6);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:400;color:#cd43ff;flex-shrink:0;transition:all .2s ease}.fetch-channels-modal .category-header.selected .category-checkbox{background:#cd43ff;border-color:#cd43ff;color:#fff}.fetch-channels-modal .category-header.partial .category-checkbox{background:#cd43ff66;border-color:#cd43ff;color:#fff}.fetch-channels-modal .category-info{display:flex;align-items:baseline;gap:8px;flex:1;min-width:0}.fetch-channels-modal .category-name{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#cd43ff;letter-spacing:.5px;text-transform:uppercase}.fetch-channels-modal .category-count{font-size:12px;color:#fff6}.fetch-channels-modal .category-toggle-hint{font-size:10px;color:#cd43ff80;font-style:normal;opacity:0;transition:opacity .2s ease}.fetch-channels-modal .category-header:hover .category-toggle-hint{opacity:1}.fetch-channels-modal .category-channels{display:flex;flex-direction:column;gap:12px;padding-left:20px}.fetch-channels-modal .channel-item{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;cursor:pointer;transition:all .2s ease}.fetch-channels-modal .channel-item:hover{background:#cd43ff1a;border-color:#cd43ff;transform:translate(4px)}.fetch-channels-modal .channel-item.selected{background:#cd43ff26;border-color:#cd43ff}.fetch-channels-modal .channel-checkbox{width:18px;height:18px;border:2px solid rgba(205,67,255,.4);border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:400;color:#cd43ff;flex-shrink:0;transition:all .2s ease}.fetch-channels-modal .channel-item.selected .channel-checkbox{background:#cd43ff;border-color:#cd43ff;color:#fff}.fetch-channels-modal .channel-content{flex:1;min-width:0}.fetch-channels-modal .channel-name{font-family:var(--font-primary);font-size:16px;font-weight:400;color:#ffffffe6;margin:0 0 4px}.fetch-channels-modal .channel-slug{font-size:13px;color:#fff9;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fetch-channels-modal .channel-arrow{font-size:18px;color:#cd43ff80;flex-shrink:0;transition:transform .2s ease,color .2s ease}.fetch-channels-modal .channel-item:hover .channel-arrow{color:#cd43ff;transform:translate(4px)}.fetch-channels-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;background:#cd43ff0d;border-top:1px solid rgba(205,67,255,.2);flex-shrink:0}.advanced-purges-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10001;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:advPurgeFadeIn .2s ease}@keyframes advPurgeFadeIn{0%{opacity:0}to{opacity:1}}.advanced-purges-dialog{background:#000000f2;border:1px solid rgba(255,67,205,.3);border-radius:12px;padding:24px 28px;min-width:620px;max-width:720px;box-shadow:0 8px 32px #ff43cd33;display:flex;flex-direction:column;gap:14px;animation:advPurgeSlideIn .3s ease-out}@keyframes advPurgeSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.advanced-purges-title{font-family:var(--font-primary);font-size:20px;font-weight:400;color:#ff43cd;margin:0;text-align:center;letter-spacing:.5px}.advanced-purges-warning{background:#ff43cd1a;border:1px solid rgba(255,67,205,.2);border-radius:8px;padding:12px 16px;text-align:center}.advanced-purges-warning p{font-family:var(--font-primary);font-size:13px;font-weight:400;color:#ffffffe6;margin:0;line-height:1.5}.advanced-purges-heading{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffffffe6;margin:0}.advanced-purges-section-label{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#ffffff80;text-transform:uppercase;letter-spacing:1.5px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1);margin:0}.advanced-purges-grid,.advanced-purges-list{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;margin-top:8px}.advanced-purges-grid .custom-checkbox,.advanced-purges-list .custom-checkbox{justify-content:flex-start}.advanced-purges-grid .checkbox-label,.advanced-purges-list .checkbox-label{font-size:12px;font-weight:400;border:none!important;background:none!important;padding:0!important;box-shadow:none!important;outline:none!important}.advanced-purges-confirm-wrapper{margin-top:4px}.advanced-purges-confirm-input{width:100%;padding:12px 16px;background:#0009;border:1px solid rgba(255,67,205,.3);border-radius:8px;color:#fff;font-family:var(--font-primary);font-size:16px;font-weight:400;transition:all .2s ease}.advanced-purges-confirm-input:focus{outline:none;border-color:#ff43cd99;background:#000c;box-shadow:0 0 15px #ff43cd33}.advanced-purges-confirm-input::placeholder{color:#fff6}.advanced-purges-actions{display:flex;justify-content:center;gap:12px;margin-top:4px}.advanced-purges-actions button{min-width:140px}.advanced-purges-dialog::-webkit-scrollbar{width:4px}.advanced-purges-dialog::-webkit-scrollbar-track{background:transparent}.advanced-purges-dialog::-webkit-scrollbar-thumb{background:#ff43cd4d;border-radius:4px}.step-condition-editor{display:flex;flex-direction:column;gap:.5rem}.condition-toggle-row{display:flex;align-items:center;gap:.75rem}.condition-toggle-label{font-size:.85rem;color:var(--text-primary, #e0e0e0)}.condition-hint{font-size:.75rem;color:#cd43ff80;font-style:normal}.condition-editor-body{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:6px}.condition-logic-row{max-width:280px;margin-bottom:.25rem}.condition-rows{display:flex;flex-direction:column;gap:.375rem}.condition-row{display:flex;align-items:center;gap:.5rem}.condition-field{flex:1;min-width:0}.condition-operator{flex:0 0 140px}.condition-value{flex:1;min-width:0}.condition-value-input{width:100%;font-size:.85rem}.condition-value-number{max-width:80px}.condition-add-row{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.condition-add-btn{background:none;border:1px dashed rgba(205,67,255,.3);color:#cd43ffb3;font-size:.8rem;padding:.25rem .75rem;border-radius:4px;cursor:pointer;transition:all .15s ease}.condition-add-btn:hover{border-color:#cd43ff80;color:#cd43ff;background:#cd43ff0d}.condition-template-container{position:relative}.condition-template-menu{position:absolute;top:100%;left:0;z-index:100;display:flex;flex-direction:column;min-width:200px;background:#140a1ef2;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:.25rem;margin-top:.25rem;box-shadow:0 4px 12px #00000080}.condition-template-option{background:none;border:none;color:var(--text-primary, #e0e0e0);font-size:.8rem;text-align:left;padding:.4rem .6rem;border-radius:4px;cursor:pointer;transition:background .1s ease}.condition-template-option:hover{background:#cd43ff26;color:#cd43ff}.step-builder{display:flex;flex-direction:column;gap:1.5rem}.builder-header{margin-bottom:.5rem}.section-description{color:#fff9;font-size:.85rem;margin:.5rem 0 0}.steps-list{display:flex;flex-direction:column;gap:.75rem}.step-card{display:flex;gap:1rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;transition:all .2s ease}.step-card:hover{border-color:#cd43ff66;background:#cd43ff14}.step-order{width:32px;height:32px;border-radius:50%;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);color:#cd43ff;display:flex;align-items:center;justify-content:center;font-family:var(--font-primary);font-weight:400;flex-shrink:0}.step-content{flex:1;min-width:0}.step-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.step-name{font-family:var(--font-primary);color:#cd43ff;font-size:.95rem;margin:0}.step-actions{display:flex;gap:.25rem;flex-shrink:0}.step-description{color:#fff9;font-size:.85rem;margin:.5rem 0}.step-includes{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.5rem}.inclusion-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.2rem .5rem;border-radius:4px;font-size:.8rem;color:#ffffffd9;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25)}.inclusion-chip .chip-type{font-size:.6rem;text-transform:uppercase;font-weight:400;padding:.05rem .3rem;border-radius:2px;letter-spacing:.3px}.chip-category .chip-type{background:#43ff9733;color:#43ff97}.chip-group .chip-type{background:#ffc10733;color:#ffc107}.chip-field .chip-type{background:#4397ff33;color:#4397ff}.step-badge{display:inline-block;background:#43ff9733;border:1px solid rgba(67,255,151,.4);color:#43ff97;font-size:.7rem;padding:.125rem .5rem;border-radius:4px;margin-top:.5rem;text-transform:uppercase}.step-editor{background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.step-editor-header{padding:1rem 1.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.step-editor-title{font-family:var(--font-primary);color:#cd43ff;margin:0;font-size:1rem}.step-editor-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.step-editor-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;border-top:1px solid rgba(205,67,255,.2);background:#0003}.inclusions-list{display:flex;flex-wrap:wrap;gap:.5rem;min-height:40px;padding:.75rem;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:4px}.empty-hint{color:#fff6;font-size:.85rem;margin:0;font-style:normal}.inclusion-item{display:flex;align-items:center;gap:.5rem;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:.25rem .5rem;font-size:.85rem}.inclusion-type{font-size:.7rem;text-transform:uppercase;padding:.125rem .375rem;border-radius:2px;font-weight:400}.inclusion-type.type-category{background:#43ff9733;color:#43ff97}.inclusion-type.type-group{background:#ffc10733;color:#ffc107}.inclusion-type.type-field{background:#4397ff33;color:#4397ff}.inclusion-name{color:#ffffffe6}.inclusion-remove{background:transparent;border:none;color:#ffffff80;cursor:pointer;padding:0 .25rem;font-size:1rem;line-height:1}.inclusion-remove:hover{color:#ff6b6b}.add-inclusion-row{display:flex;gap:.5rem;margin-top:.5rem}.add-inclusion-btn{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:.5rem .75rem;color:#ffffffb3;font-size:.8rem;cursor:pointer;transition:all .2s ease}.add-inclusion-btn:hover:not(:disabled){background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff}.add-inclusion-btn.active{background:#cd43ff33;border-color:#cd43ff;color:#cd43ff}.add-inclusion-btn:disabled{opacity:.5;cursor:not-allowed}.inclusion-selector{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:4px;padding:1rem;margin-top:.5rem}.selector-hint{color:#fff9;font-size:.85rem;margin:0 0 .75rem}.selector-options{display:flex;flex-wrap:wrap;gap:.5rem}.selector-options.field-grid{max-height:200px;overflow-y:auto}.selector-option{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:4px;padding:.5rem .75rem;color:#fffc;font-size:.85rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.selector-option:hover:not(:disabled){background:#cd43ff26;border-color:#cd43ff66}.selector-option:disabled{opacity:.4;cursor:not-allowed}.option-count{color:#fff6;font-size:.75rem}.allocation-rule-editor{display:flex;flex-direction:column;gap:1.5rem}.rules-list{display:flex;flex-direction:column;gap:.75rem}.rule-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;transition:all .2s ease}.rule-card:hover{border-color:#cd43ff66;background:#cd43ff14}.rule-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.rule-info{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.rule-name{font-family:var(--font-primary);color:#cd43ff;font-size:.95rem;margin:0}.rule-type{font-size:.7rem;text-transform:uppercase;padding:.125rem .5rem;border-radius:4px;font-weight:400}.rule-type.type-batchPriority{background:#ffc10733;color:#ffc107}.rule-type.type-pointPool{background:#4397ff33;color:#4397ff}.rule-type.type-fixedPool{background:#43ff9733;color:#43ff97}.rule-type.type-rollAndAssign{background:#ff6b6b33;color:#ff6b6b}.rule-type.type-freeform{background:#ffffff1a;color:#ffffffb3}.rule-actions{display:flex;gap:.25rem;flex-shrink:0}.rule-description{color:#fff9;font-size:.85rem;margin:.5rem 0 0}.rule-summary{color:#ffffff80;font-size:.8rem;margin-top:.5rem;font-family:JetBrains Mono,monospace}.rule-targets{display:flex;align-items:flex-start;gap:.5rem;margin-top:.5rem}.targets-label{color:#fff6;font-size:.75rem;flex-shrink:0;padding-top:.15rem}.targets-chips{display:flex;flex-wrap:wrap;gap:.375rem}.target-chip{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;color:#ffffffd9;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25)}.rule-editor-inline{display:flex;flex-direction:column;gap:1.25rem}.rule-editor-toolbar{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;border-bottom:1px solid rgba(205,67,255,.15)}.rule-editor-toolbar .back-link{background:transparent;border:none;color:#cd43ffb3;cursor:pointer;font-family:var(--font-primary);font-size:.85rem;padding:.25rem 0;transition:color .2s ease}.rule-editor-toolbar .back-link:hover{color:#cd43ff}.rule-editor-fields{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.allocation-types{display:flex;flex-direction:column;gap:.5rem}.allocation-type-option{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#0003;border:1px solid rgba(205,67,255,.2);border-radius:4px;cursor:pointer;transition:all .2s ease}.allocation-type-option:hover{background:#cd43ff0d;border-color:#cd43ff4d}.allocation-type-option:has(input:checked){background:#cd43ff1a;border-color:#cd43ff}.allocation-type-option input[type=radio]{accent-color:#CD43FF;margin-top:2px}.type-config{background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:4px;padding:1rem;display:flex;flex-direction:column;gap:1rem}.form-textarea.code{font-family:JetBrains Mono,monospace;font-size:.85rem}.selector-grid{display:flex;flex-wrap:wrap;gap:.5rem;max-height:200px;overflow-y:auto;padding:.5rem;background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:4px}.selector-grid.fields{max-height:250px}.selector-checkbox{display:flex;align-items:center;gap:.5rem;padding:.375rem .625rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:.85rem}.selector-checkbox:hover{background:#cd43ff1a;border-color:#cd43ff4d}.selector-checkbox:has(input:checked){background:#cd43ff26;border-color:#cd43ff}.selector-checkbox input[type=checkbox]{accent-color:#CD43FF}.selector-checkbox .field-count,.selector-checkbox .field-type-hint{color:#fff6;font-size:.75rem}.form-hint.warning{color:#ffc107}.form-hint.error{color:#ef4444}.form-input.input-error{border-color:#ef4444}.form-input.code{font-family:JetBrains Mono,monospace;font-size:.85rem}.form-color{width:48px;height:36px;padding:.25rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;cursor:pointer}.form-color::-webkit-color-swatch-wrapper{padding:0}.form-color::-webkit-color-swatch{border:none;border-radius:2px}.cost-mode-toggle{display:flex;gap:0;border:1px solid rgba(205,67,255,.3);border-radius:6px;overflow:hidden;width:fit-content}.cost-mode-btn{padding:.5rem 1rem;background:#0000004d;color:#fff9;border:none;cursor:pointer;font-size:.85rem;transition:all .2s ease}.cost-mode-btn:not(:last-child){border-right:1px solid rgba(205,67,255,.3)}.cost-mode-btn:hover{background:#cd43ff1a;color:#fffc}.cost-mode-btn.active{background:#cd43ff33;color:#cd43ff;font-weight:500}.formula-presets{display:flex;flex-wrap:wrap;gap:.5rem}.preset-btn{padding:.375rem .75rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.25);border-radius:4px;color:#ffffffb3;cursor:pointer;font-size:.8rem;transition:all .2s ease}.preset-btn:hover{background:#cd43ff26;border-color:#cd43ff66;color:#ffffffe6}.field-group-builder{display:flex;flex-direction:column;gap:1.5rem}.groups-list{display:flex;flex-direction:column;gap:1rem}.category-block{display:flex;flex-direction:column;gap:.5rem}.category-label{font-family:var(--font-primary);color:#ffffff80;font-size:.75rem;text-transform:uppercase;letter-spacing:1px;padding:.5rem 0;border-bottom:1px solid rgba(205,67,255,.1)}.group-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;transition:all .2s ease}.group-card:hover{border-color:#cd43ff66;background:#cd43ff14}.group-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.group-name{font-family:var(--font-primary);color:#cd43ff;font-size:.95rem;margin:0}.group-actions{display:flex;gap:.25rem;flex-shrink:0}.group-description{color:#fff9;font-size:.85rem;margin:.5rem 0 0}.group-fields{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.75rem}.field-tag{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:.25rem .5rem;font-size:.8rem;color:#fffc}.group-editor{background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.group-editor-header{padding:1rem 1.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.group-editor-title{font-family:var(--font-primary);color:#cd43ff;margin:0;font-size:1rem}.group-editor-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;max-height:60vh;overflow-y:auto}.group-editor-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;border-top:1px solid rgba(205,67,255,.2);background:#0003}.quick-add-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.quick-add-btn{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:.5rem .75rem;color:#fffc;font-size:.85rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.quick-add-btn:hover{background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff}.quick-add-btn .field-count{color:#fff6;font-size:.75rem}.fields-selector{display:flex;flex-direction:column;gap:1rem;max-height:300px;overflow-y:auto;padding:.75rem;background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:4px}.category-section{display:flex;flex-direction:column;gap:.5rem}.category-header{color:#ffffff80;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;padding-bottom:.25rem;border-bottom:1px solid rgba(205,67,255,.1)}.category-fields{display:flex;flex-wrap:wrap;gap:.5rem}.field-checkbox{display:flex;align-items:center;gap:.5rem;padding:.375rem .625rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:.85rem}.field-checkbox:hover:not(.disabled){background:#cd43ff1a;border-color:#cd43ff4d}.field-checkbox:has(input:checked){background:#cd43ff26;border-color:#cd43ff}.field-checkbox.disabled{opacity:.4;cursor:not-allowed}.field-checkbox input[type=checkbox]{accent-color:#CD43FF}.selected-count{font-weight:400;color:#ffffff80;font-size:.85rem;margin-left:.5rem}.constraint-builder{display:flex;flex-direction:column;gap:1.5rem}.constraints-list{display:flex;flex-direction:column;gap:.75rem}.constraint-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;transition:all .2s ease}.constraint-card:hover{border-color:#cd43ff66;background:#cd43ff14}.constraint-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.constraint-info{display:flex;align-items:center;gap:.75rem}.constraint-name{font-family:var(--font-primary);color:#cd43ff;font-size:.95rem;margin:0}.constraint-severity{font-size:.7rem;text-transform:uppercase;padding:.125rem .5rem;border-radius:4px;font-weight:400}.constraint-severity.severity-error{background:#ff646433;color:#ff6b6b}.constraint-severity.severity-warning{background:#ffc10733;color:#ffc107}.constraint-actions{display:flex;gap:.25rem;flex-shrink:0}.constraint-description{color:#fff9;font-size:.85rem;margin:.5rem 0 0}.constraint-type-badge{font-size:.7rem;text-transform:uppercase;padding:.125rem .5rem;border-radius:4px;font-weight:400;background:#4397ff26;color:#4397ffcc}.constraint-logic{margin-top:.5rem}.constraint-logic code{font-family:JetBrains Mono,monospace;font-size:.8rem;color:#ffffffb3;background:#0000004d;padding:.25rem .5rem;border-radius:4px;display:inline-block}.constraint-error-message{color:#ffffff80;font-size:.8rem;margin-top:.5rem;font-style:normal}.constraint-editor{background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.constraint-editor-header{padding:1rem 1.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.constraint-editor-title{font-family:var(--font-primary);color:#cd43ff;margin:0;font-size:1rem}.constraint-editor-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;max-height:60vh;overflow-y:auto}.constraint-editor-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;border-top:1px solid rgba(205,67,255,.2);background:#0003}.type-options{display:flex;flex-direction:column;gap:.5rem}.type-option{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#0003;border:1px solid rgba(205,67,255,.2);border-radius:4px;cursor:pointer;transition:all .2s ease}.type-option:hover{background:#cd43ff0d;border-color:#cd43ff4d}.type-option:has(input:checked){background:#cd43ff1a;border-color:#cd43ff}.type-option input[type=radio]{accent-color:#CD43FF;margin-top:2px}.type-content{display:flex;flex-direction:column;gap:.125rem}.type-label{font-family:var(--font-primary);color:#ffffffe6;font-weight:400;font-size:.9rem}.type-desc{color:#fff6;font-size:.75rem;line-height:1.3}.fields-grid{display:flex;flex-wrap:wrap;gap:.5rem;max-height:200px;overflow-y:auto;padding:.5rem;background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:4px}.form-row.triple{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:end}.severity-options{display:flex;gap:1rem}.severity-option{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#0003;border:1px solid rgba(205,67,255,.2);border-radius:4px;cursor:pointer;transition:all .2s ease}.severity-option:hover{background:#cd43ff0d}.severity-option:has(input:checked){border-color:#cd43ff}.severity-option input[type=radio]{accent-color:#CD43FF}.severity-label{font-weight:500}.severity-label.error{color:#ff6b6b}.severity-label.warning{color:#ffc107}.severity-desc{color:#ffffff80;font-size:.8rem}.exception-builder{display:flex;flex-direction:column;gap:1.5rem}.exceptions-list{display:flex;flex-direction:column;gap:.75rem}.exception-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;transition:all .2s ease}.exception-card:hover{border-color:#cd43ff66;background:#cd43ff14}.exception-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.exception-description{font-family:var(--font-primary);color:#cd43ff;font-size:.95rem;margin:0}.exception-actions{display:flex;gap:.25rem;flex-shrink:0}.exception-rule{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;font-size:.85rem}.rule-if,.rule-then{font-weight:400;color:#fff6;text-transform:uppercase;font-size:.7rem}.rule-condition{background:#4397ff26;border:1px solid rgba(67,151,255,.3);border-radius:4px;padding:.25rem .5rem;color:#4397ff}.rule-effect{background:#43ff9726;border:1px solid rgba(67,255,151,.3);border-radius:4px;padding:.25rem .5rem;color:#43ff97}.exception-editor{background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden}.exception-editor-header{padding:1rem 1.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.exception-editor-title{font-family:var(--font-primary);color:#cd43ff;margin:0;font-size:1rem}.exception-editor-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;max-height:60vh;overflow-y:auto}.exception-editor-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;border-top:1px solid rgba(205,67,255,.2);background:#0003}.condition-section,.effect-section{background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:1rem}.subsection-title{font-family:var(--font-primary);color:#fffc;font-size:.9rem;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.keyword{background:#cd43ff33;color:#cd43ff;padding:.125rem .5rem;border-radius:4px;font-size:.7rem;font-weight:400;text-transform:uppercase}.effect-hint{color:#ffffff80;font-size:.8rem;margin:.75rem 0 0;font-style:normal}.selection-badge{background:#cd43ff33;color:#cd43ff;padding:.125rem .625rem;border-radius:20px;font-size:.75rem;font-weight:500;white-space:nowrap}.effect-row{background:#cd43ff0d;border:1px solid rgba(205,67,255,.12);border-radius:8px;padding:.75rem;margin-bottom:.5rem}.effect-row-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.effect-row .effect-hint{margin:.25rem 0 0;font-size:.75rem}.effect-type-dropdown{min-width:140px}.effect-field-dropdown{min-width:140px;flex:1}.effect-value-input{max-width:120px}.selection-section{background:#0003;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:1rem}.selection-step-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;margin-bottom:.75rem}.selection-step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.step-subform{border-top:1px solid rgba(205,67,255,.1);margin-top:.75rem;padding-top:.75rem}.selection-field-list{max-height:200px;overflow-y:auto;border:1px solid rgba(205,67,255,.15);border-radius:6px}.selection-field-list.compact{max-height:120px}.selection-field-option{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#cd43ff08;border-bottom:1px solid rgba(205,67,255,.08);cursor:pointer;transition:all .2s ease;color:#fffc;font-size:.85rem}.selection-field-option:last-child{border-bottom:none}.selection-field-option:hover{background:#cd43ff14}.selection-field-option.selected{background:#cd43ff1f;border-left:2px solid #CD43FF}.selection-field-option.excluded{opacity:.4;cursor:not-allowed}.field-checkbox{width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:#cd43ff;font-size:.75rem;font-weight:400}.field-label{flex:1}.form-row.compact{gap:.5rem}.form-textarea{width:100%;padding:.5rem .75rem;background:#00000080;border:.25px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-family:inherit;font-size:.85rem;resize:vertical;min-height:80px;transition:border-color .2s ease}.form-textarea:focus{outline:none;border-color:#cd43ff}.form-textarea::placeholder{color:#ffffff59}.per-option-toggle-row{display:flex;align-items:center;gap:.75rem}.form-hint{margin-top:.25rem;font-size:.75rem;color:#ffffff73}.per-option-effects-list{display:flex;flex-direction:column;gap:.75rem}.per-option-card{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:.75rem}.per-option-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.per-option-name{flex:1}.per-option-card .effect-row{margin-bottom:.5rem}.per-option-card .add-button.small{font-size:.75rem;padding:.25rem .5rem;margin-top:.25rem}.option-condition-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.5rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.1);border-radius:6px}.option-condition-label{font-family:var(--font-primary);font-size:.75rem;color:#cd43ffb3;white-space:nowrap;font-weight:400}.creation-rules-editor-modal{background:#0a0a0a;border:1px solid rgba(205,67,255,.3);border-radius:12px;max-width:900px;width:95%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080}.creation-rules-editor-modal .modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.header-title-section{display:flex;flex-direction:column;gap:.25rem}.creation-rules-editor-modal .modal-title{font-family:var(--font-primary);color:#cd43ff;font-size:1.25rem;margin:0}.sheet-name{font-size:.85rem;color:#fff9;display:flex;align-items:center;gap:.5rem}.ruleset-badge{background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:4px;padding:.125rem .5rem;font-size:.75rem;color:#cd43ff;font-weight:400}.editor-tabs{display:flex;gap:0;padding:0 1rem;border-bottom:1px solid rgba(205,67,255,.2);overflow-x:auto}.editor-tab{background:transparent;border:none;padding:.75rem 1rem;color:#fff9;font-family:var(--font-primary);font-size:.9rem;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.editor-tab:hover{color:#fffc;background:#cd43ff0d}.editor-tab.active{color:#cd43ff;border-bottom-color:#cd43ff}.tab-count{background:#cd43ff4d;color:#cd43ff;font-size:.7rem;padding:.125rem .375rem;border-radius:10px;font-weight:400}.editor-content{flex:1;overflow-y:auto;padding:1.5rem}.editor-section{display:flex;flex-direction:column;gap:1.5rem}.section-title{font-family:var(--font-primary);color:#cd43ff;font-size:1rem;margin:0;padding-bottom:.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-family:var(--font-primary);color:#cd43ff;font-size:.85rem}.form-input,.form-textarea,.form-select{background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:.75rem;color:#ffffffe6;font-family:var(--font-primary);font-size:.95rem;transition:all .2s ease}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#cd43ff;background:#0009;box-shadow:0 0 10px #cd43ff33}.form-select{cursor:pointer}.form-checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;color:#ffffffe6}.form-checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#CD43FF;cursor:pointer}.form-hint{font-size:.8rem;color:#ffffff80;margin:0;padding-left:0}.rules-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;margin-top:1rem}.stat-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;text-align:center;display:flex;flex-direction:column;gap:.25rem}.stat-value{font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff;font-weight:400}.stat-label{font-size:.75rem;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.creation-rules-editor-modal .modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:1rem;padding:1rem 1.5rem;border-top:1px solid rgba(205,67,255,.2)}.save-error-text{color:#f87171;font-size:.85rem;margin-right:auto}.empty-state{text-align:center;padding:3rem 2rem;color:#ffffff80}.empty-state-title{font-family:var(--font-primary);color:#cd43ffb3;margin-bottom:.5rem}.empty-state-text{font-size:.9rem;margin-bottom:1.5rem}.item-list{display:flex;flex-direction:column;gap:.75rem}.item-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;transition:all .2s ease}.item-card:hover{border-color:#cd43ff66;background:#cd43ff14}.item-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.item-card-title{font-family:var(--font-primary);color:#cd43ff;font-size:.95rem;margin:0}.item-card-actions{display:flex;gap:.5rem}.item-card-content{color:#ffffffb3;font-size:.85rem}.action-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:6px;padding:4px;color:#cd43ff;cursor:pointer;transition:all .2s ease}.action-btn-icon:hover:not(:disabled){background:#cd43ff26;transform:scale(1.1)}.action-btn-icon:active:not(:disabled){transform:scale(.95)}.action-btn-icon:disabled{opacity:.3;cursor:not-allowed}.action-btn-icon svg{width:16px;height:16px}.drag-handle{cursor:grab;color:#ffffff4d;padding:.25rem;margin-right:.5rem}.drag-handle:hover{color:#cd43ff99}.editor-content::-webkit-scrollbar{width:8px}.editor-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.editor-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.editor-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.sheet-methods-view{display:flex;flex-direction:column;height:100%}.methods-sub-tabs{display:flex;gap:0;border-bottom:1px solid rgba(205,67,255,.15);background:#cd43ff05;padding:0 24px;flex-shrink:0}.methods-sub-tab{padding:10px 20px;background:transparent;border:none;color:#ffffff80;font-size:12px;font-weight:500;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;text-transform:uppercase;letter-spacing:.8px;display:flex;align-items:center}.methods-sub-tab:hover{color:#cd43ffb3;background:#cd43ff08}.methods-sub-tab.active{color:#cd43ff;border-bottom-color:#cd43ff;background:#cd43ff0f}.methods-sub-tab.add-method-btn{font-size:18px;font-weight:400;padding:6px 14px;color:#cd43ff99;border:1px dashed rgba(205,67,255,.3);border-radius:6px;background:transparent;cursor:pointer;transition:all .2s ease;line-height:1;margin:4px 0;align-self:center}.methods-sub-tab.add-method-btn:hover{color:#cd43ff;border-color:#cd43ff99;background:#cd43ff14}.methods-content{flex:1;overflow-y:auto;padding:24px}.methods-content-flex{display:flex;flex-direction:column}.sheet-methods-view .method-description-text{font-size:14px;color:#fff9;margin:0 0 16px;line-height:1.6}.sheet-methods-view .custom-method-fields{margin-bottom:16px}.sheet-methods-view .creation-method-card{background:#cd43ff08;border:1px solid rgba(205,67,255,.15);border-radius:12px;padding:24px}.sheet-methods-view .method-title{font-size:18px;font-weight:400;color:#cd43ff;margin:0 0 8px;font-family:var(--font-primary)}.sheet-methods-view .method-description{font-size:14px;color:#ffffffb3;margin:0 0 20px;line-height:1.6}.sheet-methods-view .method-toggles-header{padding-bottom:20px;margin-bottom:4px;border-bottom:1px solid rgba(205,67,255,.15)}.sheet-methods-view .method-availability-row{display:flex;align-items:center;gap:16px}.sheet-methods-view .method-availability-label{font-size:12px;font-family:var(--font-primary);color:#cd43ff99;font-weight:500;white-space:nowrap;letter-spacing:.5px}.sheet-methods-view .method-toggle-compact{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;font-family:var(--font-primary);font-weight:400;color:#ffffffe6;letter-spacing:.5px;text-transform:uppercase}.sheet-methods-view .method-toggle-compact:hover{color:#cd43ff}.sheet-methods-view .custom-method-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.sheet-methods-view .custom-method-name-input{flex:1;background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:10px 14px;font-size:18px;font-weight:400;font-family:var(--font-primary);color:#cd43ff;outline:none;transition:border-color .2s ease}.sheet-methods-view .custom-method-name-input::placeholder{color:#cd43ff4d;font-weight:400}.sheet-methods-view .custom-method-name-input:focus{border-color:#cd43ff}.sheet-methods-view .custom-method-description{width:100%;background:transparent;border:1px solid transparent;border-radius:8px;color:#fff9;font-family:var(--font-primary);font-size:14px;line-height:1.6;padding:8px 12px;resize:vertical;min-height:40px;margin-bottom:16px;outline:none;transition:all .2s ease}.sheet-methods-view .custom-method-description:hover{background:#0003;border-color:#cd43ff1a}.sheet-methods-view .custom-method-description:focus{background:#0000004d;border-color:#cd43ff66}.sheet-methods-view .custom-method-description::placeholder{color:#ffffff40}.sheet-methods-view .methods-loading{display:flex;justify-content:center;align-items:center;padding:60px}.sheet-methods-view .methods-error{color:#f44;background:#ff44441a;border:1px solid rgba(255,68,68,.3);border-radius:8px;padding:10px 16px;font-size:.85rem;margin:0 24px}.methods-sub-tab.inherited{opacity:.8}.method-inherited-dot{display:inline-block;width:6px;height:6px;background:#cd43ff99;border-radius:50%;margin-left:6px;vertical-align:middle}.sheet-methods-view .inherited-banner{font-family:var(--font-primary);font-size:.7rem;color:#cd43ffcc;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:4px 12px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;display:inline-block}.sheet-methods-view .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:14px;font-weight:400;opacity:.7;transition:all .2s ease;margin-left:4px}.sheet-methods-view .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.methods-sub-tab .method-tab-star{padding:2px 4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:14px;opacity:.5;transition:all .2s ease;margin-left:4px;line-height:1}.methods-sub-tab .method-tab-star:hover{opacity:1;transform:scale(1.2);color:gold}.methods-sub-tab .method-tab-star:disabled{cursor:wait;opacity:.3}.methods-sub-tab .method-tab-default-badge{color:gold;font-size:14px;margin-left:4px;line-height:1}.methods-sub-tab .method-tab-trash{opacity:.5;transition:all .2s ease;margin-left:4px}.methods-sub-tab .method-tab-trash:hover{opacity:1;transform:scale(1.2)}.methods-sub-tab .sub-tab-rename-input{background:#00000080;border:1px solid rgba(205,67,255,.4);color:#e0e0e0;border-radius:4px;padding:2px 8px;font-size:13px;width:120px;outline:none}.methods-sub-tab .sub-tab-rename-input:focus{border-color:#cd43ff;box-shadow:0 0 6px #cd43ff4d}.methods-content::-webkit-scrollbar{width:8px}.methods-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.methods-content::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.methods-content::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.character-sheets-modal{position:relative;background:transparent;border:1px solid rgba(205,67,255,.4);border-radius:12px;max-width:1100px;width:95%;height:80vh;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.character-sheets-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.character-sheets-modal .modal-title{font-size:20px;font-weight:400;color:#cd43ff;margin:0;font-family:var(--font-primary)}.modal-tabs{display:flex;gap:0;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff08}.modal-tab{flex:1;padding:14px 24px;background:transparent;border:none;color:#fff9;font-size:14px;font-weight:500;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;text-transform:uppercase;letter-spacing:1px}.modal-tab:hover{color:#cd43ffcc;background:#cd43ff0d}.modal-tab.active{color:#cd43ff;border-bottom-color:#cd43ff;background:#cd43ff1a}.character-sheets-content{flex:1;overflow-y:auto;padding:24px;min-height:400px}.sheets-loading,.sheets-error,.sheets-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;min-height:350px}.sheets-loading p,.sheets-empty-state p{color:#cd43ffb3;margin-top:16px}.sheets-error p{color:#ef4444;margin-top:16px}.sheets-hint{font-size:12px;color:#ffffff80!important;margin-top:8px!important}.sheets-layout{display:flex;gap:24px;min-height:400px}.sheets-panel{flex:1}.details-panel{width:300px;min-width:300px;background:#cd43ff0d;border-radius:12px;padding:20px;border:1px solid rgba(205,67,255,.2)}.templates-section{margin-bottom:24px}.section-header{font-size:14px;font-weight:400;color:#cd43ff;margin:0 0 12px;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-primary)}.sheets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.modal-sheet-wrapper{position:relative;border-radius:12px;transition:all .3s ease}.modal-sheet-wrapper.enabled-for-creation{outline:3px solid #FFA8FF;outline-offset:-1px;border-radius:12px;filter:drop-shadow(0 0 8px #FFA8FF) drop-shadow(0 0 20px rgba(255,168,255,.6))}.modal-sheet-wrapper.enabled-for-creation .sheet-card{border-color:#ffa8ff}.details-title{font-size:18px;font-weight:400;color:#cd43ff;margin:0 0 12px;font-family:var(--font-primary)}.details-description{color:#ffffffd9;font-size:14px;line-height:1.6;margin:0 0 16px}.details-stats{display:flex;justify-content:space-around;background:#cd43ff08;border-radius:8px;padding:12px;margin-bottom:16px;border:1px solid rgba(205,67,255,.15)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-label{font-size:10px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:20px;font-weight:400;color:#cd43ff;font-family:var(--font-primary)}.details-sections{margin-bottom:16px}.sections-title{font-size:12px;font-weight:400;color:#cd43ffcc;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary)}.sections-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.section-item{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:6px 8px;background:#cd43ff08;border-radius:4px}.section-name{color:#ffffffe6}.section-fields{color:#ffffff80}.details-creation-steps{margin-bottom:16px}.creation-steps-badge{display:inline-block;padding:6px 12px;background:#43ff9726;border:1px solid rgba(67,255,151,.3);border-radius:6px;color:#43ff97;font-size:12px}.details-permissions{display:flex;flex-wrap:wrap;gap:8px}.permission-badge{padding:4px 10px;border-radius:4px;font-size:10px;text-transform:uppercase;font-weight:400;letter-spacing:.5px}.permission-badge.use{background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.3)}.permission-badge.clone{background:#60a5fa33;color:#60a5fa;border:1px solid rgba(96,165,250,.3)}.permission-badge.edit{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.filter-bar{display:flex;align-items:center;gap:16px;padding:12px 24px;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.15)}.filter-bar .filter-label{font-size:13px;color:#ffffffb3;font-family:var(--font-primary)}.filter-bar .filter-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:#fffc}.filter-bar .filter-checkbox input[type=checkbox]{accent-color:#CD43FF;width:16px;height:16px;cursor:pointer}.filter-bar .filter-checkbox:hover{color:#cd43ff}.filter-bar .filter-count{margin-left:auto;font-size:12px;color:#cd43ffb3;font-style:normal}.character-sheets-modal .modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d;position:relative}.character-sheets-modal .modal-footer .footer-hint{position:absolute;left:0;right:0;text-align:center;color:#cd43ff99;font-size:14px;letter-spacing:.3px;pointer-events:none}.character-sheets-modal .modal-footer .fantamaster-button{height:40px;min-height:40px}.character-sheets-modal .modal-footer .save-error-text{flex:1;color:#ef4444;font-size:13px;align-self:center}.character-sheets-content::-webkit-scrollbar,.sheets-panel::-webkit-scrollbar{width:8px}.character-sheets-content::-webkit-scrollbar-track,.sheets-panel::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.character-sheets-content::-webkit-scrollbar-thumb,.sheets-panel::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.character-sheets-content::-webkit-scrollbar-thumb:hover,.sheets-panel::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.method-sheet-selector{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(205,67,255,.15)}.method-sheet-selector label{color:#fff9;font-size:13px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.method-sheet-selector .dropdown{min-width:200px;flex:0 1 auto}.grant-points-modal{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;max-width:500px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0009,0 0 60px #cd43ff1a}.grant-points-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(205,67,255,.15)}.grant-points-title{font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#ffffffe6;letter-spacing:.5px}.grant-points-content{padding:1.25rem 1.5rem;overflow-y:auto;flex:1}.grant-form-toggle{display:flex;justify-content:flex-end;margin-bottom:1rem}.grant-form-toggle-btn{background:#000000e6;border:1px solid rgba(205,67,255,.2);border-radius:10px;color:#cd43ffcc;padding:.4rem 1rem;font-family:var(--font-primary);font-size:.8rem;font-weight:400;cursor:pointer;letter-spacing:.5px;transition:all .2s ease}.grant-form-toggle-btn:hover,.grant-form-toggle-btn.active{background:#cd43ff1a;border-color:#cd43ff66;color:#cd43ff;box-shadow:0 0 20px #cd43ff33}.grant-form{background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:1rem;margin-bottom:1.25rem}.grant-form-row{display:flex;gap:.75rem;margin-bottom:.75rem;align-items:flex-end}.grant-form-field{display:flex;flex-direction:column;gap:.3rem}.grant-form-field.amount{width:100px}.grant-form-field.pool,.grant-form-field.note{flex:1}.grant-form-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.8px;color:#cd43ffb3;font-weight:400}.grant-form-input{background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;color:#ffffffe6;padding:.5rem .75rem;font-size:.85rem;outline:none;transition:border-color .2s ease}.grant-form-input:focus{border-color:#cd43ff80}.grant-form-input::placeholder{color:#fff6}.grant-form-actions{display:flex;justify-content:flex-end;gap:.5rem}.grant-submit-btn{background:#000000e6;border:1px solid rgba(205,67,255,.3);border-radius:10px;color:#cd43ff;padding:.45rem 1rem;font-family:var(--font-primary);font-size:.8rem;font-weight:400;cursor:pointer;transition:all .2s ease;animation:buttonGlow 3s ease-in-out infinite}.grant-submit-btn:hover:not(:disabled){background:#cd43ff1a;border-color:#cd43ff;box-shadow:0 0 30px #cd43ff4d,0 0 60px #cd43ff33}.grant-submit-btn:disabled{opacity:.5;cursor:not-allowed;animation:none}.grant-pools-label{font-family:var(--font-primary);font-size:.75rem;text-transform:uppercase;letter-spacing:1px;color:#cd43ff99;margin-bottom:.75rem;font-weight:400}.grant-pool-list{display:flex;flex-direction:column;gap:.5rem}.grant-pool-item{background:#cd43ff0a;border:1px solid rgba(205,67,255,.1);border-radius:8px;padding:.75rem 1rem;transition:border-color .2s ease}.grant-pool-item:hover{border-color:#cd43ff40}.grant-pool-name{font-weight:400;color:#ffffffe6;font-size:.9rem;margin-bottom:.35rem;display:flex;align-items:center;gap:.5rem}.grant-pool-type-badge{font-size:.6rem;text-transform:uppercase;letter-spacing:.5px;color:#cd43ff99;background:#cd43ff1a;padding:.1rem .4rem;border-radius:3px;font-weight:400}.grant-pool-stats{display:flex;gap:1.25rem;font-size:.8rem;color:#ffffff80}.grant-pool-stat{display:flex;gap:.3rem}.grant-pool-stat-label{color:#ffffff80}.grant-pool-stat-value{color:#ffffffd9;font-weight:400}.grant-pool-stat-value.granted{color:#cd43ff}.grant-pool-stat-value.total{color:#fcd34d}.grant-points-empty{text-align:center;padding:2rem 1rem;color:#ffffff80;font-size:.85rem}.grant-points-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;padding:.75rem 1rem;color:#f87171;font-size:.8rem;margin-bottom:1rem}.grant-points-loading{display:flex;justify-content:center;align-items:center;padding:3rem 0}.grant-success-msg{background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:.5rem .75rem;color:#cd43ff;font-size:.8rem;margin-bottom:.75rem;text-align:center}.grant-points-footer{display:flex;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid rgba(205,67,255,.1)}.grant-points-footer .progression-btn{font-size:.78rem}.grant-close-btn{background:#000000e6;border:1px solid rgba(205,67,255,.2);border-radius:10px;color:#ffffff80;padding:.4rem 1.25rem;font-family:var(--font-primary);font-size:.8rem;cursor:pointer;transition:all .2s ease}.grant-close-btn:hover{background:#cd43ff1a;color:#ffffffe6;border-color:#cd43ff4d}.character-creation-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.character-creation-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:16px;width:100%;max-width:500px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #cd43ff4d}.character-creation-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid rgba(205,67,255,.2)}.character-creation-modal .modal-header h2{margin:0;font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff;letter-spacing:1px}.character-creation-modal .close-btn{background:transparent;border:none;color:#fff9;font-size:1.5rem;cursor:pointer;padding:.5rem;line-height:1;transition:color .2s ease}.character-creation-modal .close-btn:hover{color:#f44}.character-creation-modal .modal-content{padding:1.5rem;overflow-y:auto;flex:1}.loading-config{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;color:#cd43ffcc}.no-config-message{text-align:center;padding:2rem;color:#fff9}.no-config-message p{margin:0;font-size:1rem}.sheet-options{display:flex;flex-direction:column;gap:.75rem}.sheet-option{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .2s ease}.sheet-option:hover{background:#cd43ff0d;border-color:#cd43ff4d}.sheet-option.selected{background:#cd43ff1a;border-color:#cd43ff}.sheet-option input[type=radio]{margin-top:3px;accent-color:#CD43FF}.sheet-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.sheet-info .sheet-name{font-weight:400;color:#ffffffe6}.sheet-info .sheet-desc{font-size:.85rem;color:#ffffff80}.character-creation-modal .modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid rgba(205,67,255,.2)}.edit-lore-modal{max-width:650px}.lore-edit-divider{height:1px;background:#cd43ff26;margin:4px 0}.lore-edit-section-label{font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1.5px;color:#cd43ff;font-family:var(--font-primary)}.lore-metadata-fields{display:flex;flex-direction:column;gap:16px}.lore-edit-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px 0}.lore-edit-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#CD43FF;cursor:pointer}.lore-edit-checkbox .checkbox-label{color:#ffffffd9;font-size:14px}.wider-area-selector{position:relative}.wider-area-dropdown{position:absolute;top:100%;left:0;right:0;max-height:240px;overflow-y:auto;background:#07080afa;border:1px solid rgba(205,67,255,.3);border-radius:8px;margin-top:4px;z-index:100;display:flex;flex-direction:column;padding:4px}.wider-area-option{display:block;width:100%;text-align:left;padding:8px 12px;background:transparent;border:none;color:#ffffffd9;font-family:var(--font-primary);font-size:13px;cursor:pointer;border-radius:4px;transition:background .15s ease}.wider-area-option:hover{background:#cd43ff26}.wider-area-option.selected{background:#cd43ff33;color:#cd43ff}.wider-area-type{color:#cd43ff80;font-size:11px}.wider-area-divider{height:1px;background:#cd43ff26;margin:4px 0}.wider-area-create{color:#cd43ff;font-style:normal}.wider-area-no-results{padding:8px 12px;color:#fff6;font-size:13px;text-align:center}.relationship-edit-popover{width:280px;background:#000000d9;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 32px #0009,0 0 20px #cd43ff1a;animation:popoverFadeIn .15s ease}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.edit-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.edit-label{color:#cd43ffb3;font-size:11px;font-weight:400;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.romantic-toggle{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#ffffff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px;color:#fff9;font-size:12px;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease}.romantic-toggle:hover{border-color:#ff43cd66;background:#ff43cd1a}.romantic-toggle.active{border-color:#ff43cd80;background:#ff43cd26;color:#ff43cd}.strength-display{color:#ffffffe6;font-size:13px;font-weight:400;font-family:var(--font-primary)}.love-bonus-note{color:#ff43cd99;font-size:11px;font-weight:400}.type-dropdown-row{flex-direction:column;align-items:stretch;gap:6px}.type-dropdown-row .edit-label{margin-bottom:0}.type-dropdown{width:100%}.edit-actions{display:flex;gap:8px;margin-top:4px}.edit-cancel-btn,.edit-save-btn{flex:1;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:400;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.edit-cancel-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#fff9}.edit-cancel-btn:hover{background:#ffffff1a;border-color:#ffffff4d;color:#ffffffe6}.edit-save-btn{background:linear-gradient(135deg,#cd43ff4d,#9333ea4d);border:1px solid rgba(205,67,255,.4);color:#fffffff2}.edit-save-btn:hover{background:linear-gradient(135deg,#cd43ff66,#9333ea66);border-color:#cd43ff;box-shadow:0 0 16px #cd43ff33}.matrix-grid-view{width:100%;display:flex;flex-direction:column;gap:24px}.grid-layout{display:flex;gap:24px;width:100%}.grid-table-container{overflow:auto;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:12px;max-height:600px;width:100%}.grid-table-container::-webkit-scrollbar{width:8px;height:8px}.grid-table-container::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.grid-table-container::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.grid-table-container::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.grid-table-container::-webkit-scrollbar-corner{background:#0000004d}.character-matrix-grid{display:grid;gap:4px;width:fit-content}.corner-cell{width:44px;height:44px;background:#cd43ff1a;border-radius:8px}.header-cell{width:44px;height:44px;background:#cd43ff1a;border-radius:8px;padding:2px;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.header-cell.pc-header,.row-header.pc-header{background:#22c55e26;border-left:3px solid #4ade80}.header-cell.npc-header,.row-header.npc-header{background:#cd43ff26;border-left:3px solid #CD43FF}.row-header{width:44px;height:44px;background:#cd43ff1a;border-radius:8px;padding:2px;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.character-header{display:flex;flex-direction:column;gap:0;align-items:center;justify-content:center;width:100%;height:100%;max-height:40px;overflow:hidden}.row-header .character-header{align-items:flex-start}.matrix-grid-view .character-name{color:#ffffffe6;font-size:9px;font-weight:400;font-family:var(--font-primary);max-width:40px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default;line-height:1.2}.matrix-cell{background:#cd43ff08;border:1px solid rgba(205,67,255,.1);border-radius:6px;text-align:center;vertical-align:middle;transition:all .2s ease;cursor:pointer;width:44px;height:44px;min-width:44px;max-width:44px;padding:0;box-sizing:border-box;aspect-ratio:1}.matrix-cell.self-cell{background:#0000001a;cursor:default}.matrix-cell.self-cell .cell-content{color:#ffffff4d;font-weight:400}.matrix-cell.empty-cell{cursor:default}.matrix-cell.selected{border-width:2px;box-shadow:0 0 16px #fbbf2480;transform:scale(1.05)}.cell-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:2px}.relation-strength{color:#ffffffe6;font-size:9px;font-weight:400}.cell-content.diagonal-split{position:relative;width:100%;height:100%;padding:0}.relation-icon-bg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;opacity:.25;pointer-events:none;z-index:1}.diagonal-line{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.diagonal-line:after{content:"";position:absolute;top:0;left:0;width:141.4%;height:1px;background:#cd43ff4d;transform-origin:top left;transform:rotate(45deg)}.strength-bottom-left{position:absolute;bottom:4px;left:4px;font-size:10px;font-weight:400;z-index:3;text-shadow:0 0 3px rgba(0,0,0,.5)}.strength-top-right{position:absolute;top:4px;right:4px;font-size:10px;font-weight:400;z-index:3;text-shadow:0 0 3px rgba(0,0,0,.5)}.relation-details-panel{flex:0 0 300px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;animation:slideInRight .3s ease}.details-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#cd43ff1a;border-bottom:1px solid rgba(205,67,255,.2)}.details-header h4{margin:0;color:#ffffffe6;font-size:16px;font-weight:400;font-family:var(--font-primary)}.close-details-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffcc;font-size:20px;cursor:pointer;transition:all .2s ease}.close-details-btn:hover{background:#cd43ff33;border-color:#cd43ff;color:#cd43ff}.details-body{flex:1;padding:20px;overflow-y:auto}.relation-characters{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(205,67,255,.2)}.relation-character{flex:1;display:flex;flex-direction:column;gap:4px;align-items:center}.relation-character .char-name{color:#ffffffe6;font-size:14px;font-weight:400;font-family:var(--font-primary);text-align:center}.relation-character .char-type{font-size:10px;padding:2px 8px;border-radius:4px}.relation-arrow{color:#cd43ffb3;font-size:20px;flex-shrink:0}.relation-info{display:flex;flex-direction:column;gap:16px}.info-row{display:flex;flex-direction:column;gap:6px}.info-label{color:#cd43ffb3;font-size:11px;font-weight:400;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.info-value{color:#ffffffe6;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}.strength-bar{flex:1;height:8px;background:#cd43ff33;border-radius:4px;overflow:hidden}.strength-fill{height:100%;border-radius:4px;transition:width .3s ease}.relation-description{display:flex;flex-direction:column;gap:8px}.relation-description p{color:#ffffffb3;font-size:13px;line-height:1.6;margin:0}.relation-updated{color:#cd43ff99;font-size:11px;margin-top:8px}.view-timeline-btn{width:100%;margin-top:16px;padding:12px 16px;background:linear-gradient(135deg,#cd43ff4d,#9333ea4d);border:1px solid rgba(205,67,255,.5);border-radius:8px;color:#fffffff2;font-size:13px;font-weight:400;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.view-timeline-btn:hover{background:linear-gradient(135deg,#cd43ff66,#9333ea66);border-color:#cd43ff;color:#fff;box-shadow:0 0 20px #cd43ff4d;transform:translateY(-1px)}.matrix-legend{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:16px 20px;display:flex;gap:32px;flex-wrap:wrap}.legend-section{display:flex;flex-direction:column;gap:8px}.matrix-legend h5{margin:0;color:#ffffffe6;font-size:11px;font-weight:400;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.legend-items-wrap{gap:8px 16px;max-width:100%}.legend-items-wrap .legend-item{font-size:11px;min-width:90px}.legend-item span{font-size:14px}.legend-color{width:12px;height:12px;border-radius:3px;display:inline-block}.legend-color.pc-color{background:#22c55e4d;border:2px solid #4ade80}.legend-color.npc-color{background:#cd43ff4d;border:2px solid #CD43FF}.cell-reading-hint{flex-direction:column;align-items:flex-start;gap:4px}.diagonal-hint{position:relative;width:24px;height:24px;background:#cd43ff33;border-radius:4px;font-size:10px}.hint-top-right{position:absolute;top:1px;right:2px;color:#cd43ffb3}.hint-bottom-left{position:absolute;bottom:1px;left:2px;color:#cd43ffb3}.hint-text{font-size:10px;color:#cd43ffb3}.details-body::-webkit-scrollbar{width:6px}.details-body::-webkit-scrollbar-track{background:#0000004d}.details-body::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:3px}.details-body::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.relationship-lookup{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:16px 20px}.lookup-header h5{margin:0;color:#ffffffe6;font-size:12px;font-weight:400;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.lookup-select{flex:1;min-width:150px;padding:8px 12px;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ff;font-size:13px;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease}.lookup-select:hover{background:#cd43ff0d;border-color:#cd43ff80}.lookup-select:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 20px #cd43ff33}.lookup-relation{background:#cd43ff14;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:12px 16px}.relation-direction{display:flex;align-items:center;gap:8px;margin-bottom:8px}.relation-from,.relation-to{color:#ffffffe6;font-size:13px;font-weight:400;font-family:var(--font-primary)}.relation-arrow-icon{color:#cd43ffb3;font-size:14px}.relation-data{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.relation-data.no-relation{color:#fff6;font-size:12px;font-style:normal}.relation-data.no-participation{color:#cd43ff80;font-size:12px;font-style:normal;flex-direction:column;align-items:flex-start;gap:4px}.no-participation .last-joint-session{color:#ffffff59;font-size:11px}.relation-type-badge{font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;text-transform:capitalize}.relation-strength-value{color:#fffc;font-size:12px;font-weight:400;padding:2px 8px;background:#cd43ff33;border-radius:4px}.relation-desc{color:#ffffffb3;font-size:12px;line-height:1.4;flex-basis:100%;margin-top:4px}.relation-power-symbol{color:#fbbf24;font-size:16px;font-weight:400;padding:2px 8px;background:#fbbf2433;border-radius:4px;cursor:help}.power-balance-value{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.power-balance-value .power-from,.power-balance-value .power-to{color:#ffffffe6;font-size:13px;font-weight:500}.power-balance-value .power-symbol{color:#fbbf24;font-size:18px;font-weight:400}.power-balance-value .power-numbers{color:#ffffff80;font-size:11px;font-style:normal}.romantic-heart-icon{position:absolute;bottom:2px;right:2px;z-index:4;filter:drop-shadow(0 0 2px rgba(255,67,205,.6));pointer-events:none}.romantic-info{color:#ff43cd;gap:6px}.power-legend-symbol{color:#fbbf24;font-size:16px;font-weight:400;width:20px;display:inline-flex;justify-content:center}@media (max-width: 768px){.grid-layout{flex-direction:column!important}.grid-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.relation-details-panel{flex:1 1 auto!important;width:100%!important;max-height:40vh;overflow-y:auto}}.matrix-network-view{width:100%;display:flex;gap:24px;position:relative;justify-content:center;align-items:flex-start}.network-svg{flex:1;max-width:900px;height:600px;background:#7c3aed08;border:1px solid rgba(124,58,237,.2);border-radius:12px}.relation-edge{transition:stroke-width .2s,stroke-opacity .2s}.relation-edge:hover{stroke-width:4!important;stroke-opacity:1!important}.character-node{cursor:pointer;transition:all .2s}.character-node:hover .node-circle{stroke-width:3;filter:drop-shadow(0 0 10px rgba(124,58,237,.5))}.character-node.selected .node-circle{filter:drop-shadow(0 0 16px rgba(251,191,36,.8))}.character-node.hovered .node-circle{transform:scale(1.1)}.node-circle{transition:all .2s}.node-label,.node-type{pointer-events:none;-webkit-user-select:none;user-select:none}.character-info-panel{flex:0 0 280px;background:#7c3aed0d;border:1px solid rgba(124,58,237,.2);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;animation:slideInRight .3s ease}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.info-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:#7c3aed1a;border-bottom:1px solid rgba(124,58,237,.2)}.info-header h4{margin:0;color:#f3e8ff;font-size:16px;font-weight:400;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-type-badge{font-size:10px;font-weight:500;padding:4px 8px;border-radius:4px;text-transform:uppercase;flex-shrink:0}.char-type-badge.PC{background:#7c3aed4d;color:#e9d5ff}.char-type-badge.NPC{background:#cd43ff4d;color:#f3e8ff}.info-body{flex:1;padding:16px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{color:#a78bfa;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.info-value{color:#f3e8ff;font-size:14px;font-weight:500}.relations-list{display:flex;flex-direction:column;gap:12px;padding-top:12px;border-top:1px solid rgba(124,58,237,.2)}.relations-list h5{margin:0;color:#e9d5ff;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.relation-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:#7c3aed1a;border-left:3px solid;border-radius:6px;transition:all .2s}.relation-item:hover{background:#7c3aed26;transform:translate(4px)}.relation-target{color:#f3e8ff;font-size:13px;font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relation-type{color:#d8b4fe;font-size:11px;font-weight:500;text-transform:capitalize;padding:2px 8px;background:#7c3aed33;border-radius:4px;flex-shrink:0}.relation-power-symbol{color:#fbbf24;font-size:16px;font-weight:400;flex-shrink:0}.info-body::-webkit-scrollbar{width:6px}.info-body::-webkit-scrollbar-track{background:#7c3aed1a}.info-body::-webkit-scrollbar-thumb{background:#7c3aed66;border-radius:3px}.info-body::-webkit-scrollbar-thumb:hover{background:#7c3aed99}@media (max-width: 768px){.matrix-network-view{flex-direction:column!important}.network-svg{max-width:100%!important;width:100%!important;height:300px}.character-info-panel{flex:1 1 auto!important;width:100%!important;max-height:40vh;overflow-y:auto}}.relationship-timeline-view{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:var(--card-bg, #1e1e1e);border-radius:8px;height:100%}.relationship-timeline-view.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--text-secondary, #888);min-height:300px}.relationship-timeline-view.empty .hint{font-size:.85rem;margin-top:.5rem;opacity:.7}.timeline-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #333)}.timeline-header h3{margin:0;font-size:1.1rem;color:var(--text-primary, #fff)}.timeline-header .close-btn{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #888);cursor:pointer;padding:0 .5rem;line-height:1}.timeline-header .close-btn:hover{color:var(--text-primary, #fff)}.timeline-chart{display:flex;flex:1;min-height:200px;gap:.5rem}.y-axis{display:flex;flex-direction:column;justify-content:space-between;padding:.5rem 0;width:30px;font-size:.75rem;color:var(--text-secondary, #888)}.y-label{text-align:right}.timeline-points{display:flex;flex:1;gap:4px;align-items:flex-end;padding:.5rem 0;border-left:1px solid var(--border-color, #333);border-bottom:1px solid var(--border-color, #333);overflow-x:auto}.timeline-point{display:flex;flex-direction:column;align-items:center;flex:1;min-width:40px;max-width:80px;height:100%;cursor:pointer;position:relative}.timeline-point:hover .strength-bar{filter:brightness(1.2)}.strength-bar-container{flex:1;width:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}.strength-bar{width:60%;border-radius:4px 4px 0 0;position:relative;transition:height .3s ease,filter .2s ease;min-height:20px}.strength-value{position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:.7rem;font-weight:400;color:var(--text-primary, #fff);opacity:0;transition:opacity .2s ease}.timeline-point:hover .strength-value{opacity:1}.no-relation-marker{color:var(--text-secondary, #888);font-size:1.5rem;opacity:.5}.timeline-point.no-relation{opacity:.5}.session-label{padding-top:.5rem;font-size:.7rem;color:var(--text-secondary, #888);text-align:center}.session-index{font-weight:500}.change-indicator{position:absolute;top:0;right:2px;font-size:.8rem;font-weight:400;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.change-indicator.added{background:#27ae60;color:#fff}.change-indicator.modified{background:#f39c12;color:#fff}.change-indicator.removed{background:#e74c3c;color:#fff}.timeline-tooltip{background:var(--tooltip-bg, #2a2a2a);border:1px solid var(--border-color, #444);border-radius:6px;padding:.75rem;font-size:.85rem;box-shadow:0 4px 12px #0000004d}.tooltip-header{margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color, #333)}.tooltip-content{display:flex;flex-direction:column;gap:.25rem}.tooltip-row{display:flex;justify-content:space-between;gap:1rem}.tooltip-row .label{color:var(--text-secondary, #888)}.tooltip-row .value{font-weight:500}.tooltip-row .type-badge{font-weight:400;text-transform:capitalize}.tooltip-row.change{margin-top:.25rem}.change-badge{padding:2px 6px;border-radius:3px;font-size:.75rem;font-weight:500}.change-badge.added{background:#27ae6033;color:#27ae60}.change-badge.modified{background:#f39c1233;color:#f39c12}.change-badge.removed{background:#e74c3c33;color:#e74c3c}.no-relation-text{color:var(--text-secondary, #888);font-style:normal}.timeline-legend{display:flex;flex-wrap:wrap;gap:1.5rem;padding-top:.75rem;border-top:1px solid var(--border-color, #333);font-size:.75rem}.legend-section{display:flex;flex-direction:column;gap:.5rem}.legend-title{color:var(--text-secondary, #888);font-weight:500}.legend-items{display:flex;flex-wrap:wrap;gap:.75rem}.legend-item{display:flex;align-items:center;gap:.25rem}.legend-item.added{color:#27ae60}.legend-item.modified{color:#f39c12}.legend-item.removed{color:#e74c3c}@media (max-width: 600px){.timeline-legend{flex-direction:column;gap:.75rem}.legend-items{gap:.5rem}}.relationship-diff-view{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:transparent;border-radius:8px;height:100%}.relationship-diff-view.empty{display:flex;align-items:center;justify-content:center;color:#cd43ff99;min-height:300px}.diff-selectors{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.selector-group{display:flex;align-items:center;gap:.5rem}.selector-group label{font-size:.85rem;color:#cd43ff99}.selector-group select,.selector-group .session-dropdown{padding:.5rem .75rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#f3e8ff;font-size:.85rem;min-width:180px}.selector-arrow{font-size:1.2rem;color:#cd43ff99}.diff-filters{display:flex;align-items:center;gap:1.5rem;padding:.75rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.15);border-radius:6px}.filter-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#cd43ffb3;cursor:pointer}.filter-checkbox .filter-label,.filter-checkbox input{cursor:pointer}.sort-control{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.sort-control label{color:#cd43ff99}.sort-control select,.sort-control .sort-dropdown{padding:.35rem .5rem;background:#cd43ff14;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#f3e8ff;font-size:.8rem}.diff-summary{display:flex;flex-wrap:wrap;gap:.75rem}.summary-stat{padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:500}.summary-stat.added,.summary-stat.improved{background:#4ade8026;color:#4ade80}.summary-stat.removed,.summary-stat.worsened{background:#ff43cd26;color:#ff43cd}.summary-stat.type-changed{background:#fcd34d26;color:#fcd34d}.diff-table-container{flex:1;overflow:auto;background:#cd43ff05;border:1px solid rgba(205,67,255,.15);border-radius:8px}.no-diffs{display:flex;align-items:center;justify-content:center;height:200px;color:#cd43ff99;font-style:normal}.diff-table{width:100%;border-collapse:collapse;font-size:.85rem;table-layout:fixed}.diff-table th{position:sticky;top:0;background:#cd43ff26;padding:.75rem;text-align:left;font-weight:400;color:#f3e8ff;border-bottom:1px solid rgba(205,67,255,.3)}.diff-table th:nth-child(1),.diff-table td:nth-child(1){width:35%}.diff-table th:nth-child(2),.diff-table td:nth-child(2){width:22%}.diff-table th:nth-child(3),.diff-table td:nth-child(3){width:22%}.diff-table th:nth-child(4),.diff-table td:nth-child(4){width:21%}.diff-table td{padding:.6rem .75rem;border-bottom:1px solid rgba(205,67,255,.08)}.diff-row:hover{background:#cd43ff14}.diff-pair{white-space:nowrap}.diff-pair .char-from,.diff-pair .char-to{font-weight:500}.diff-pair .arrow{margin:0 .5rem;color:#cd43ff99}.diff-before,.diff-after{display:flex;align-items:center;gap:.5rem}.diff-before .strength,.diff-after .strength{font-weight:400;min-width:20px}.diff-before .type,.diff-after .type{padding:2px 6px;background:#cd43ff26;border-radius:3px;font-size:.75rem;text-transform:capitalize;color:#cd43ffe6}.diff-before .none,.diff-after .none{color:#cd43ff80}.diff-change{font-weight:500}.change-label{display:inline-block}.change-delta{margin-left:.5rem;font-weight:400}.diff-row.added td:first-child{border-left:3px solid #4ade80}.diff-row.removed td:first-child{border-left:3px solid #FF43CD}.diff-row.improved td:first-child{border-left:3px solid #4ade80}.diff-row.worsened td:first-child{border-left:3px solid #FF43CD}.diff-row.type-changed td:first-child{border-left:3px solid #fcd34d}.diff-row.unchanged td:first-child{border-left:3px solid rgba(205,67,255,.4)}@media (max-width: 600px){.diff-selectors{flex-direction:column;align-items:stretch}.selector-arrow{align-self:center;transform:rotate(90deg)}.diff-filters{flex-direction:column;align-items:flex-start;gap:.75rem}.diff-table{font-size:.8rem}}.session-change-summary{background:var(--card-bg, rgba(124, 58, 237, .05));border:1px solid var(--border-color, rgba(124, 58, 237, .2));border-radius:8px;padding:1rem;margin-bottom:1rem}.session-change-summary.empty{padding:.75rem 1rem}.no-changes{color:var(--text-secondary, #888);font-size:.85rem;font-style:normal}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color, rgba(124, 58, 237, .2))}.summary-header h4{margin:0;font-size:.9rem;color:var(--text-primary, #f3e8ff)}.change-counts{display:flex;gap:.5rem}.change-counts .count{padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:400}.change-counts .count.added{background:#27ae6033;color:#27ae60}.change-counts .count.modified{background:#f39c1233;color:#f39c12}.change-counts .count.removed{background:#e74c3c33;color:#e74c3c}.changes-list{display:flex;flex-direction:column;gap:.75rem}.change-section h5{margin:0 0 .5rem;font-size:.8rem;font-weight:400}.change-section.added h5{color:#27ae60}.change-section.modified h5{color:#f39c12}.change-section.removed h5{color:#e74c3c}.change-section ul{margin:0;padding:0;list-style:none}.change-section li{display:flex;justify-content:space-between;align-items:center;padding:.35rem .5rem;background:#0003;border-radius:4px;margin-bottom:.25rem;font-size:.8rem}.change-section li:last-child{margin-bottom:0}.change-pair{color:var(--text-primary, #d8b4fe);font-weight:500}.change-details{display:flex;align-items:center;gap:.5rem}.change-type{padding:1px 5px;background:#7c3aed33;border-radius:3px;font-size:.7rem;text-transform:capitalize}.change-type.strikethrough{text-decoration:line-through;opacity:.7}.type-change{font-size:.7rem;color:var(--text-secondary, #888)}.change-strength{font-weight:400;color:var(--text-primary, #d8b4fe)}.strength-delta{font-weight:400;font-size:.75rem}.strength-delta.positive{color:#27ae60}.strength-delta.negative{color:#e74c3c}@media (max-width: 500px){.change-section li{flex-direction:column;align-items:flex-start;gap:.25rem}.change-details{padding-left:.5rem}}.session-state-panel{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.state-section{background:var(--card-bg, rgba(124, 58, 237, .05));border:1px solid var(--border-color, rgba(124, 58, 237, .2));border-radius:8px;padding:.75rem 1rem}.state-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.4rem;border-bottom:1px solid rgba(205,67,255,.1)}.state-section-header h4{margin:0;font-size:.85rem;color:var(--text-primary, #f3e8ff);font-weight:400}.state-count{color:#a78bfa;font-size:.75rem}.memory-highlight-list{display:flex;flex-direction:column;gap:.5rem}.memory-highlight-card{padding:.5rem .65rem;background:#0003;border-left:2px solid rgba(205,67,255,.3);border-radius:0 4px 4px 0}.memory-highlight-content{color:#f3e8ff;font-size:.8rem;line-height:1.45;margin-bottom:.35rem}.memory-highlight-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.memory-highlight-character{color:#d8b4fe;font-size:.72rem;font-weight:400}.memory-highlight-emotions{display:flex;gap:.25rem}.emotion-badge{display:inline-block;padding:1px 6px;border-radius:10px;font-size:.68rem;font-weight:500;background:#cd43ff1a;color:#d8b4fe;border:1px solid rgba(205,67,255,.2)}.emotion-roster{display:flex;flex-direction:column;gap:.35rem}.character-emotion-row{display:flex;align-items:center;gap:.5rem;padding:.3rem .4rem;background:#00000026;border-radius:4px}.character-emotion-name{color:#d8b4fe;font-size:.78rem;font-weight:500;min-width:80px}.character-emotion-tags{display:flex;gap:.25rem;flex:1;flex-wrap:wrap}.character-emotion-count{color:#a78bfa;font-size:.7rem;opacity:.8}.entity-counts{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}.entity-count-pill{padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:400}.entity-count-pill.pc-pill{background:#60a5fa26;color:#93c5fd;border:1px solid rgba(96,165,250,.25)}.entity-count-pill.npc-pill{background:#cd43ff1a;color:#d8b4fe;border:1px solid rgba(205,67,255,.2)}.entity-count-pill.lore-pill{background:#fbbf241a;color:#fcd34d;border:1px solid rgba(251,191,36,.2)}.new-entities{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.new-entities-label{color:#a78bfa;font-size:.72rem;font-style:normal}.new-entity-tags{display:flex;gap:.25rem;flex-wrap:wrap}.new-entity-tag{padding:1px 6px;border-radius:10px;font-size:.68rem;font-weight:500;background:#27ae6026;color:#6ee7b7;border:1px solid rgba(39,174,96,.25)}@media (max-width: 500px){.character-emotion-row{flex-direction:column;align-items:flex-start}.character-emotion-name{min-width:unset}}.character-matrix-view{width:100%;height:100%;display:flex;flex-direction:column}.character-matrix-view.loading,.character-matrix-view.error,.character-matrix-view.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:60px 20px}.character-matrix-view.error p,.character-matrix-view.empty p{color:#cd43ff80;font-family:var(--font-primary);font-size:16px;margin:0}.matrix-controls{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#cd43ff0d;border-bottom:2px solid rgba(205,67,255,.2)}.matrix-info{display:flex;gap:16px;align-items:center}.matrix-count{color:#ffffffe6;font-size:14px;font-weight:400;font-family:var(--font-primary)}.matrix-updated{color:#cd43ffb3;font-size:13px}.snapshot-story-info{display:flex;gap:20px;padding:8px 20px;font-size:12px;color:#fff9;background:#cd43ff08;border-bottom:1px solid rgba(205,67,255,.1)}.story-info-item{display:inline-flex;gap:4px}.story-info-label{color:#cd43ff99;font-weight:500}.historical-indicator{background:#fbbf2433;color:#fcd34d;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;font-family:var(--font-primary)}.view-toggle{display:flex;gap:8px;position:relative;z-index:1}.view-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffcc;font-size:13px;font-weight:500;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;position:relative;z-index:1}.view-btn:hover{background:#cd43ff1a;border-color:#cd43ff80;color:#cd43ff}.view-btn.active{background:#cd43ff33;border-color:#cd43ff;color:#cd43ff;box-shadow:0 0 15px #cd43ff33}.view-btn .btn-icon{font-size:16px}.matrix-controls-right{display:flex;gap:16px;align-items:center}.session-selector{display:flex;align-items:center;gap:8px}.session-selector label{color:#cd43ffb3;font-size:13px;font-family:var(--font-primary);white-space:nowrap}.session-selector .session-dropdown{min-width:200px;max-width:300px;padding:8px 12px;padding-right:36px!important;font-size:13px}.matrix-content{flex:1;overflow:auto;padding:24px}.matrix-content::-webkit-scrollbar{width:8px;height:8px}.matrix-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.matrix-content::-webkit-scrollbar-thumb{background:#cd43ff33;border-radius:4px}.matrix-content::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.timeline-view-container{height:100%;display:flex;flex-direction:column}.timeline-overlay-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.timeline-overlay-message .timeline-prompt{color:#cd43ff;font-family:var(--font-primary);font-size:18px;font-weight:500;margin:0 0 8px}.timeline-overlay-message .timeline-hint{color:#cd43ff99;font-family:var(--font-primary);font-size:14px;margin:0}.matrix-info .loading-indicator{color:#cd43ff;font-size:13px;font-family:var(--font-primary);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.timeline-loading,.diff-loading,.diff-unavailable{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;min-height:200px}.diff-unavailable p{color:#cd43ff80;font-family:var(--font-primary);font-size:16px;margin:0}.members-matrix-view{width:100%;height:100%;display:flex;flex-direction:column}.members-matrix-view.loading,.members-matrix-view.error,.members-matrix-view.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:60px 20px}.members-matrix-view.error p,.members-matrix-view.empty p{color:#cd43ff80;font-family:var(--font-primary);font-size:16px;margin:0}.members-matrix-view .empty-hint{color:#cd43ff66!important;font-size:14px!important;margin-top:8px!important}.members-matrix-info{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#cd43ff0d;border-bottom:2px solid rgba(205,67,255,.2)}.members-matrix-info .matrix-count{color:#ffffffe6;font-size:14px;font-weight:400}.members-matrix-info .matrix-updated{color:#cd43ffb3;font-size:13px}.member-relationship-lookup{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:16px 20px;margin:24px 24px 0}.lookup-header{margin-bottom:12px}.lookup-header h5{margin:0;color:#ffffffe6;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.lookup-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lookup-select{flex:1;min-width:150px;padding:8px 12px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffe6;font-size:13px;cursor:pointer;transition:all .2s}.lookup-select:hover{background:#cd43ff26;border-color:#cd43ff80}.lookup-select:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 0 2px #cd43ff33}.lookup-select option{background:#1a1a2e;color:#ffffffe6}.lookup-arrow{color:#cd43ffb3;font-size:18px;font-weight:400;flex-shrink:0}.lookup-results{margin-top:16px;display:flex;flex-direction:column;gap:12px}.lookup-relationship-details{display:flex;flex-direction:column;gap:12px}.lookup-relationship{background:#cd43ff14;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:12px 16px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.lookup-name{color:#ffffffe6;font-size:13px;font-weight:400}.lookup-arrow-small{color:#cd43ffb3;font-size:14px}.lookup-type{font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;text-transform:capitalize;color:#fff}.lookup-strength{color:#ffffffb3;font-size:12px;font-weight:400;padding:2px 8px;background:#cd43ff33;border-radius:4px}.lookup-description{width:100%;margin:8px 0 0;color:#ffffffb3;font-size:12px;line-height:1.4}.lookup-no-relationship{color:#6b7280;font-size:12px;font-style:normal;margin:0}.members-matrix-grid-container{overflow:auto;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:12px;margin:24px;max-height:600px;width:fit-content;max-width:calc(100% - 48px)}.members-matrix-grid{display:grid;gap:4px;width:fit-content}.members-matrix-view .corner-cell{width:44px;height:44px;background:#cd43ff1a;border-radius:8px}.members-matrix-view .header-cell,.members-matrix-view .row-header-cell{width:44px;height:44px;background:#cd43ff1a;border-radius:8px;padding:2px;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.member-header-btn{display:flex;flex-direction:column;gap:0;align-items:center;justify-content:center;width:100%;height:100%;max-height:40px;background:transparent;border:none;color:#ffffffe6;cursor:pointer;font-size:9px;font-weight:400;overflow:hidden;padding:4px;border-radius:4px;transition:all .2s}.row-header-cell .member-header-btn{align-items:flex-start}.member-header-btn:hover{background:#cd43ff33}.member-header-btn .member-name{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.members-matrix-view .gm-header{background:#ff00ff4d}.members-matrix-view .gm-header .member-header-btn{color:#ff80ff}.members-matrix-view .matrix-cell{background:#cd43ff08;border:1px solid rgba(205,67,255,.1);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s;cursor:pointer;width:44px;height:44px;padding:0;box-sizing:border-box}.matrix-cell:hover:not(.self-cell){background:#cd43ff1a}.matrix-cell.has-relation{background:#cd43ff14}.matrix-cell.has-relation:hover{transform:scale(1.05);box-shadow:0 4px 12px #cd43ff4d;z-index:10}.matrix-cell.selected{background:#cd43ff33;border-width:2px;border-color:#cd43ff;box-shadow:0 0 16px #cd43ff80;transform:scale(1.05)}.self-cell{background:#0000001a;cursor:default}.self-indicator{color:#6b7280;font-size:16px;font-weight:400}.no-relation{color:#4b5563;font-size:20px}.relation-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;width:40px;height:40px;margin:0 auto;border-radius:8px;cursor:pointer;transition:all .2s;gap:2px}.relation-indicator:hover{transform:scale(1.1)}.relation-icon{font-size:14px}.relation-strength{font-size:9px;font-weight:400;color:#fff}.member-relationship-detail{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:20px;margin:0 24px 24px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.member-relationship-detail h4{margin:0 0 16px;color:#ffffffe6;font-size:16px;font-weight:400}.detail-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(205,67,255,.2)}.detail-header .member-name{color:#ffffffe6;font-size:16px;font-weight:400}.relation-arrow{color:#cd43ffb3;font-size:20px}.detail-content{display:flex;flex-direction:column;gap:12px}.detail-row{display:flex;align-items:center;gap:12px}.detail-label{color:#cd43ffb3;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;min-width:100px}.detail-value{color:#ffffffe6;font-size:14px;font-weight:500}.members-matrix-view .type-badge{padding:4px 12px;border-radius:6px;color:#fff;font-size:11px;font-weight:500;text-transform:capitalize}.detail-description{margin-top:8px}.detail-description p{margin:8px 0 0;color:#ffffffb3;font-size:13px;line-height:1.6}.close-detail-btn{margin-top:16px;padding:8px 16px;background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ffb3;cursor:pointer;font-size:13px;transition:all .2s}.close-detail-btn:hover{background:#cd43ff33;border-color:#cd43ff;color:#ffffffe6}.members-matrix-legend{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:16px 20px;margin:0 24px 24px}.members-matrix-legend h5{margin:0 0 12px;color:#ffffffe6;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.legend-items{display:flex;flex-wrap:wrap;gap:12px}.legend-item{display:flex;align-items:center;gap:6px;color:#ffffffb3;font-size:12px}.legend-color{width:12px;height:12px;border-radius:3px}.members-matrix-grid-container::-webkit-scrollbar{width:8px;height:8px}.members-matrix-grid-container::-webkit-scrollbar-track{background:#cd43ff1a;border-radius:4px}.members-matrix-grid-container::-webkit-scrollbar-thumb{background:#cd43ff66;border-radius:4px}.members-matrix-grid-container::-webkit-scrollbar-thumb:hover{background:#cd43ff99}.members-matrix-grid-container::-webkit-scrollbar-corner{background:#cd43ff1a}.level-settings-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.level-settings-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.level-settings-modal .modal-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;margin:0;display:flex;align-items:center;gap:12px;text-shadow:0 0 20px rgba(205,67,255,.5)}.level-settings-modal .level-type-badge{font-size:.65rem;font-weight:400;padding:4px 10px;border-radius:12px;background:linear-gradient(135deg,#cd43ff,#9c27d4);color:#fff;text-transform:uppercase;letter-spacing:.5px}.level-settings-modal-content{padding:24px;overflow-y:auto;flex:1}.level-settings-modal .settings-tab-toggle{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(205,67,255,.15)}.level-settings-modal .form-group{margin-bottom:20px}.level-settings-modal .form-group-checkbox{display:flex;flex-direction:column;gap:6px}.level-settings-modal .form-label{display:block;font-family:var(--font-primary);font-size:.9rem;font-weight:400;color:#cd43ffe6;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.level-settings-modal .required-asterisk{color:#ff1493;font-weight:400}.level-settings-modal .form-input,.level-settings-modal .form-textarea{width:100%;padding:12px 16px;font-size:1rem;font-weight:400;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;transition:all .3s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;outline:none}.level-settings-modal .form-input::placeholder,.level-settings-modal .form-textarea::placeholder{color:#fff6}.level-settings-modal .form-input:focus,.level-settings-modal .form-textarea:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 15px #cd43ff33}.level-settings-modal .form-input:disabled,.level-settings-modal .form-textarea:disabled{opacity:.5;cursor:not-allowed}.level-settings-modal .form-textarea{resize:vertical;min-height:80px;line-height:1.5}.level-settings-modal .dropdown{width:100%}.level-settings-modal .form-hint{display:block;font-size:.85rem;color:#cd43ff99;margin-top:6px;font-style:normal;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.level-settings-modal .frequency-row{display:flex;align-items:center;gap:12px}.level-settings-modal .frequency-label{color:#ffffffb3;font-size:.9rem;white-space:nowrap}.level-settings-modal .checkbox-row{display:flex;align-items:center;gap:12px}.level-settings-modal .checkbox-label-text{color:#ffffffe6;font-size:1rem}.level-settings-modal .archive-warning-box{background:#cd43ff14;border:1px solid rgba(205,67,255,.25);border-radius:8px;padding:16px 20px;margin-bottom:24px}.level-settings-modal .archive-warning-box p{color:#ffffffd9;font-size:.9rem;line-height:1.6;margin:0;padding:4px 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.level-settings-modal .archive-warning-box p:first-child{color:#cd43ff;font-weight:500}.level-settings-modal .error-message{background:#ff43431a;border:1px solid rgba(255,67,67,.3);border-radius:8px;padding:12px 16px;color:#ff4343;font-size:.9rem;margin-bottom:20px;animation:slideDown .3s ease}.level-settings-modal .delete-confirm-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10;border-radius:12px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.level-settings-modal .delete-confirm-popup{background:#07080afa;border:1px solid rgba(255,67,205,.5);border-radius:12px;padding:24px;max-width:360px;box-shadow:0 8px 32px #ff43cd4d;animation:popIn .2s ease}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.level-settings-modal .delete-confirm-popup p{color:#ffffffe6;font-size:1rem;margin:0 0 20px;line-height:1.5;text-align:center}.level-settings-modal .delete-warning-title{font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#ff43cd;margin:0 0 12px;text-align:center}.level-settings-modal .delete-warning-message{color:#fffc;font-size:.95rem;margin:0 0 20px;line-height:1.5;text-align:center;padding:12px;background:#ff43cd1a;border:1px solid rgba(255,67,205,.3);border-radius:8px}.level-settings-modal .delete-confirm-actions{display:flex;gap:12px;justify-content:center}.level-settings-modal .story-guidelines-section{margin-top:16px;padding-top:16px;border-top:1px solid rgba(205,67,255,.15)}.level-settings-modal .story-guidelines-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.level-settings-modal .story-guidelines-summary{font-size:.9rem;color:#ffffffb3;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.level-settings-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.level-settings-modal .modal-footer-right{display:flex;gap:10px}.level-settings-modal .delete-loading-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 0}.level-settings-modal .delete-loading-title{font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#ff43cd;margin:0 0 8px}.level-settings-modal .delete-loading-hint{font-size:.9rem;color:#fff9;font-style:normal;margin:0 0 20px}.level-settings-modal .participants-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(205,67,255,.15)}.level-settings-modal .participants-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;margin-bottom:10px}.level-settings-modal .participant-chip{display:flex;align-items:center;gap:8px;padding:6px 10px 6px 6px;background:#cd43ff14;border:1px solid rgba(205,67,255,.3);border-radius:20px;transition:all .2s ease}.level-settings-modal .participant-chip:hover{border-color:#cd43ff80;background:#cd43ff1f}.level-settings-modal .participant-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1px solid rgba(205,67,255,.3)}.level-settings-modal .participant-name{color:#ffffffe6;font-size:.85rem;white-space:nowrap}.level-settings-modal .participant-remove{background:none;border:none;color:#ffffff80;font-size:1rem;cursor:pointer;padding:0 2px;line-height:1;transition:color .2s ease}.level-settings-modal .participant-remove:hover{color:#ff43cd}.level-settings-modal .participants-empty{color:#cd43ff80;font-size:.85rem;font-style:normal;margin-top:8px}.level-settings-modal .participant-add-row{margin-top:8px}@media (max-width: 480px){.level-settings-modal{width:95%;max-height:95vh}.level-settings-modal .modal-header,.level-settings-modal-content,.level-settings-modal .modal-footer{padding:16px}.level-settings-modal .modal-footer{flex-direction:column;gap:12px}.level-settings-modal .modal-footer-right{width:100%;justify-content:flex-end}}.archives-sidebar{width:220px;min-width:220px;background:#0000004d;border-right:1px solid rgba(205,67,255,.15);padding:20px 0}.archives-sidebar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.archives-sidebar-item{display:flex;align-items:center;gap:10px;width:100%;padding:14px 20px;background:transparent;border:none;cursor:pointer;text-align:left;color:#fff9;font-size:13px;font-family:var(--font-primary);letter-spacing:.5px;transition:all .3s ease;border-left:3px solid transparent;position:relative}.archives-sidebar-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,rgba(205,67,255,.1),transparent);transition:width .3s ease}.archives-sidebar-item:hover:not(.disabled){color:#ffffffe6;background:#cd43ff0d}.archives-sidebar-item:hover:not(.disabled):before{width:100%}.archives-sidebar-item.active{background:#cd43ff1a;border-left-color:#cd43ff;color:#cd43ff;text-shadow:0 0 15px rgba(205,67,255,.3)}.archives-sidebar-item.active:before{width:100%;background:linear-gradient(90deg,rgba(205,67,255,.15),transparent)}.archives-sidebar-item.disabled{opacity:.35;cursor:not-allowed;color:#ffffff4d}.sidebar-label{font-weight:400;text-transform:uppercase;letter-spacing:1px}@media (max-width: 700px){.archives-sidebar{width:100%;min-width:unset;border-right:none;border-bottom:1px solid rgba(205,67,255,.15);padding:12px 0}.archives-sidebar-list{flex-direction:row;justify-content:space-around;padding:0 12px}.archives-sidebar-item{flex-direction:column;padding:10px 16px;gap:4px;border-left:none;border-bottom:2px solid transparent;text-align:center}.archives-sidebar-item:before{display:none}.archives-sidebar-item.active{border-left:none;border-bottom-color:#cd43ff}.sidebar-label{font-size:10px;letter-spacing:.5px}}.essence-view{display:flex;flex-direction:column;gap:24px}.essence-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.essence-empty .empty-title{color:#cd43ffcc;font-family:var(--font-primary);font-size:16px;margin:0 0 8px}.essence-empty .hint{font-size:12px;color:#ffffff59}.essence-view .story-section{background:#cd43ff0a;border-radius:12px;padding:20px 24px;border:1px solid rgba(205,67,255,.1)}.essence-view .story-section:hover{border-color:#cd43ff33}.gm-canon-badge{display:inline-flex;align-items:center;padding:2px 10px;margin-left:10px;background:#cd43ff26;border:1px solid rgba(205,67,255,.3);border-radius:12px;font-size:10px;font-weight:400;color:#cd43ff;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px;vertical-align:middle}.secrets-pyramid{display:flex;flex-direction:column;align-items:center;gap:8px}.secrets-pyramid-empty{text-align:center;color:#fff6;font-size:13px;padding:20px}.pyramid-layer{width:100%;padding:14px 18px;background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px;transition:all .3s ease;margin:0 auto}.pyramid-layer:hover{border-color:#cd43ff4d;background:#cd43ff0f}.pyramid-layer--rank-4,.pyramid-layer--rank-3{box-shadow:0 0 12px #cd43ff1a}.pyramid-layer-header{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.pyramid-layer-label{font-size:14px;font-weight:500;color:#cd43ff;font-family:var(--font-primary);letter-spacing:.3px;white-space:nowrap}.pyramid-layer-description{font-size:12px;color:#fff6;font-style:normal}.pyramid-layer-placeholder{font-style:italic;color:#fff3}.pyramid-layer-summary{font-size:.8rem;color:#ffffff80;font-style:normal;margin:2px 0 6px;line-height:1.3}.pyramid-characters{display:flex;flex-wrap:wrap;gap:6px}.pyramid-characters-empty{font-size:12px;color:#ffffff40;font-style:normal}.pyramid-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:14px;font-size:12px;color:#ffffffd9;transition:all .2s ease}.pyramid-chip--clickable{cursor:pointer}.pyramid-chip--clickable:hover{background:#cd43ff33;border-color:#cd43ff66;color:#cd43ff}.pyramid-chip--locked{border-color:#cd43ff66}.pyramid-chip-lock{font-size:10px;line-height:1}.secrets-change-summary{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:1rem;margin-top:16px}.secrets-change-summary.empty{padding:.75rem 1rem}.secrets-change-summary .no-changes{color:#ffffff80;font-size:13px;font-family:var(--font-primary)}.secrets-change-summary .summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(205,67,255,.15)}.secrets-change-summary .summary-header h4{margin:0;font-size:13px;font-weight:400;color:#ffffffd9;font-family:var(--font-primary)}.secrets-change-summary .change-counts{display:flex;gap:.5rem}.secrets-change-summary .change-counts .count{padding:2px 6px;border-radius:4px;font-size:11px;font-weight:400;font-family:var(--font-primary)}.secrets-change-summary .count.promoted{background:#27ae6033;color:#27ae60}.secrets-change-summary .count.added{background:#3498db33;color:#3498db}.secrets-change-summary .count.demoted{background:#f39c1233;color:#f39c12}.secrets-change-summary .count.removed{background:#e74c3c33;color:#e74c3c}.secrets-change-summary .changes-list{display:flex;flex-direction:column;gap:.75rem}.secrets-change-summary .change-section h5{margin:0 0 .5rem;font-size:12px;font-weight:400;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px}.secrets-change-summary .change-section.promoted h5{color:#27ae60}.secrets-change-summary .change-section.added h5{color:#3498db}.secrets-change-summary .change-section.demoted h5{color:#f39c12}.secrets-change-summary .change-section.removed h5{color:#e74c3c}.secrets-change-summary .change-section ul{margin:0;padding:0;list-style:none}.secrets-change-summary .change-section li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;background:#0003;border-radius:4px;margin-bottom:4px;font-size:13px;font-family:var(--font-primary)}.secrets-change-summary .change-section li:last-child{margin-bottom:0}.secrets-change-summary .change-character{color:#ffffffe6;font-weight:400}.secrets-change-summary .change-details{display:flex;align-items:center;gap:6px}.secrets-change-summary .layer-badge{padding:1px 6px;background:#7c3aed33;border-radius:3px;font-size:11px;color:#cd43ffe6;font-family:var(--font-primary)}.secrets-change-summary .layer-badge.faded{opacity:.5;text-decoration:line-through}.secrets-change-summary .layer-arrow{color:#ffffff80;font-size:12px}.secrets-change-summary .change-reason{width:100%;color:#ffffff80;font-size:12px;font-family:var(--font-primary);padding-left:2px}@media (max-width: 500px){.secrets-change-summary .change-section li{flex-direction:column;align-items:flex-start;gap:4px}.secrets-change-summary .change-details{padding-left:4px}}.secrets-view{display:flex;flex-direction:column;gap:24px}.secrets-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.secrets-empty .empty-title{color:#cd43ffcc;font-family:var(--font-primary);font-size:16px;margin:0 0 8px}.secrets-empty .hint{font-size:12px;color:#ffffff59}.secrets-view .story-section{background:#cd43ff0a;border-radius:12px;padding:20px 24px;border:1px solid rgba(205,67,255,.1)}.secrets-view .story-section:hover{border-color:#cd43ff33}.secrets-view .puppeteers-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.secrets-view .puppeteer-item{display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:#0003;border-radius:8px;border-left:3px solid #CD43FF;color:#ffffffd9;font-size:14px;line-height:1.6;transition:background .2s ease}.secrets-view .puppeteer-item:hover{background:#cd43ff0d}.secrets-view .puppeteer-name{background:none;border:none;padding:0;color:#cd43ff;font-size:14px;font-weight:400;text-align:left}.secrets-view button.puppeteer-name.clickable{cursor:pointer;transition:all .2s ease}.secrets-view button.puppeteer-name.clickable:hover{color:#e879f9;text-decoration:underline;text-shadow:0 0 10px rgba(205,67,255,.3)}.secrets-view span.puppeteer-name{cursor:default;opacity:.85}.secrets-view .puppeteer-role{color:#ffffffb3;font-size:13px;line-height:1.5}.secrets-view .section-title-actions .secrets-session-dropdown{min-width:160px;max-width:220px;padding:4px 8px;padding-right:28px!important;font-size:11px}.secrets-broom-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:4px;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:pointer;transition:all .2s ease;margin-left:auto;vertical-align:middle}.secrets-broom-icon:hover{background:#cd43ff26;color:#e056ff;transform:scale(1.1)}.secrets-broom-icon:active{transform:scale(.95)}.secrets-broom-icon:disabled{opacity:.4;cursor:not-allowed}.secrets-broom-icon.loading .broom-svg{animation:secrets-broom-sweep .6s ease-in-out infinite}.secrets-broom-icon .broom-svg{width:20px;height:20px}@keyframes secrets-broom-sweep{0%{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}to{transform:rotate(0)}}.structure-loading,.structure-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.structure-loading p,.structure-empty .empty-title{color:#cd43ffcc;font-family:var(--font-primary);font-size:16px;margin:0 0 8px}.structure-empty .hint{font-size:12px;color:#ffffff59}.structure-tree{display:flex;flex-direction:column;gap:12px}.tree-campaign,.tree-season,.tree-session,.tree-orphans{display:flex;flex-direction:column}.tree-children{margin-left:20px;padding-left:20px;border-left:1px solid rgba(205,67,255,.15);display:flex;flex-direction:column;gap:6px;margin-top:6px}.tree-item{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;transition:all .2s ease}.tree-item:hover{background:#cd43ff14}.campaign-item{background:#cd43ff0f;border:1px solid rgba(205,67,255,.15)}.campaign-item:hover{border-color:#cd43ff4d;box-shadow:0 0 15px #cd43ff1a}.season-item{background:#cd43ff08;border:1px solid rgba(205,67,255,.1)}.season-item:hover{border-color:#cd43ff33}.session-item{background:transparent;padding-left:28px}.session-item.clickable{cursor:pointer;background:#cd43ff08;border:1px solid rgba(205,67,255,.1)}.session-item.clickable:hover{background:#cd43ff1a;border-color:#cd43ff4d;box-shadow:0 0 15px #cd43ff1a}.session-item.clickable .tree-name{color:#ffffffe6;font-family:var(--font-primary)}.orphans-header{background:#cd43ff0a;border:1px solid rgba(205,67,255,.1);margin-top:16px}.orphans-label{font-size:12px;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-primary)}.tree-toggle{background:none;border:none;padding:6px 8px;cursor:pointer;color:#fff6;font-size:10px;transition:all .2s ease;border-radius:4px}.tree-toggle:hover{color:#cd43ff;background:#cd43ff1a}.tree-name{background:none;border:none;padding:0;color:#ffffffe6;font-size:14px;font-weight:500;cursor:pointer;text-align:left;transition:all .2s ease;font-family:var(--font-primary)}.tree-name:hover{color:#cd43ff;text-shadow:0 0 15px rgba(205,67,255,.3)}.tree-empty{padding:10px 16px;font-size:12px;color:#ffffff59;font-style:normal}.structure-detail{display:flex;flex-direction:column;gap:24px}.detail-breadcrumb{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid rgba(205,67,255,.15)}.breadcrumb-title{font-size:20px;font-weight:400;color:#cd43ff;font-family:var(--font-primary);letter-spacing:.5px;text-shadow:0 0 20px rgba(205,67,255,.2)}.breadcrumb-type{font-size:11px;color:#fff6;text-transform:uppercase;font-family:var(--font-primary);letter-spacing:1px}.reanalyze-btn{margin-left:auto}.detail-loading,.detail-no-analysis{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;text-align:center}.detail-loading p,.detail-no-analysis p{color:#cd43ffb3;margin:14px 0 0;font-family:var(--font-primary)}.detail-no-analysis .hint{font-size:12px;color:#ffffff59;margin-top:8px}.detail-content{display:flex;flex-direction:column;gap:20px}.detail-section{background:#cd43ff0d;border-radius:12px;padding:18px 22px;border:1px solid rgba(205,67,255,.12);transition:all .3s ease}.detail-section:hover{border-color:#cd43ff33;box-shadow:0 0 20px #cd43ff0d}.detail-section h3{font-size:10px;font-weight:400;color:#cd43ff;margin:0 0 12px;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary)}.summary-text{color:#ffffffe6;font-size:14px;line-height:1.8;margin:0;white-space:pre-wrap}.conflict-text{color:#fbbf24;font-size:14px;line-height:1.7;margin:0;font-style:normal;padding-left:14px;border-left:3px solid #fbbf24}.detail-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.detail-list li{color:#fffc;font-size:13px;line-height:1.6;padding:8px 14px 8px 18px;position:relative;background:#0003;border-radius:6px;transition:background .2s ease}.detail-list li:hover{background:#cd43ff0d}.detail-list li:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#cd43ff;border-radius:3px 0 0 3px}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:5px 14px;border-radius:20px;font-size:11px;font-family:var(--font-primary);letter-spacing:.5px;transition:all .2s ease}.theme-tag{background:#cd43ff1f;border:1px solid rgba(205,67,255,.2);color:#cd43ffe6}.theme-tag:hover{background:#cd43ff2e;border-color:#cd43ff59}.character-tag{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#86efac}.character-tag:hover{background:#22c55e26;border-color:#22c55e59}.pc-tag{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#86efac}.pc-tag:hover{background:#22c55e26;border-color:#22c55e59}.npc-tag{background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);color:#cd43ffe6}.npc-tag:hover{background:#cd43ff26;border-color:#cd43ff59}.tag.clickable{cursor:pointer}.tag.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000004d}.location-tag:hover{background:#3b82f626;border-color:#3b82f659}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.tree-campaign,.tree-season,.tree-session,.detail-section{animation:slideIn .3s ease}@media (max-width: 768px){.tree-children{margin-left:8px;padding-left:8px}.tree-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100vw - 80px)}}.mvps-view{display:flex;flex-direction:column;gap:28px}.mvps-summary{background:#cd43ff0f;border-radius:12px;padding:24px 28px;border:1px solid rgba(205,67,255,.15)}.mvps-summary h3{font-size:13px;font-weight:400;color:#cd43ff;margin:0 0 16px;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary)}.mvp-highlight{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mvp-highlight .mvp-character-name{color:#ff43cd;font-weight:500}.mvp-highlight .mvp-count{color:#ffffff80;font-size:13px}.mvps-table-container{background:#cd43ff0a;border-radius:12px;padding:24px 28px;border:1px solid rgba(205,67,255,.12)}.mvps-table-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.mvps-table-header h3{font-size:13px;font-weight:400;color:#cd43ff;margin:0;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary)}.mvps-table-container h3{font-size:13px;font-weight:400;color:#cd43ff;margin:0 0 20px;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary)}.mvp-broom-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:4px;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:pointer;transition:all .2s ease}.mvp-broom-icon:hover{background:#cd43ff26;color:#e056ff;transform:scale(1.1)}.mvp-broom-icon:active{transform:scale(.95)}.mvp-broom-icon:disabled{opacity:.4;cursor:not-allowed}.mvp-broom-icon.loading .broom-svg{animation:mvp-broom-sweep .6s ease-in-out infinite}.mvp-broom-icon .broom-svg{width:20px;height:20px}@keyframes mvp-broom-sweep{0%{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}to{transform:rotate(0)}}.mvps-table{width:100%;border-collapse:separate;border-spacing:0}.mvps-table thead th{text-align:left;padding:12px 16px;font-size:11px;font-weight:400;color:#cd43ffb3;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid rgba(205,67,255,.15)}.mvps-table tbody tr{transition:background .2s ease}.mvps-table tbody tr:hover{background:#cd43ff0d}.mvps-table tbody td{padding:14px 16px;font-size:13px;color:#ffffffd9;border-bottom:1px solid rgba(205,67,255,.06);vertical-align:middle}.mvps-table tbody tr:last-child td{border-bottom:none}.mvps-table .mvp-session-name{font-weight:500;color:#ffffffe6;min-width:140px}.mvps-table .mvp-character{color:#ff43cd;font-weight:500;min-width:100px}.mvps-table .mvp-player{min-width:120px}.mvps-table .mvp-reason{color:#fff9;font-style:normal;font-size:12px}.mvps-view .story-empty{text-align:center;padding:60px 20px;color:#fff6;font-style:normal}.thucydides-view{display:flex;flex-direction:column;gap:16px;padding:16px}.thucydides-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px}.thucydides-loading-text{color:#fff9;font-size:13px}.thucydides-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.thucydides-header-info{display:flex;flex-direction:column;gap:4px}.thucydides-analyzed-at{font-size:11px;color:#fff6}.thucydides-relevance{font-size:12px;color:#ffffff80}.thucydides-header-buttons{display:flex;gap:8px;align-items:center}.thucydides-actions{display:flex;justify-content:center;margin-top:12px}.thucydides-summary p{color:#fffc;font-size:13px;line-height:1.6}.thucydides-consequences{display:flex;flex-direction:column;gap:12px}.thucydides-consequence{transition:opacity .2s}.thucydides-consequence.thucydides-dismissed{opacity:.4}.thucydides-consequence.thucydides-dismissed .section-title{text-decoration:line-through}.thucydides-consequence-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.thucydides-consequence-header .section-title{margin:0;flex:1}.thucydides-badges{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.thucydides-badge{font-size:10px;font-weight:400;letter-spacing:.5px;text-transform:uppercase;padding:2px 8px;border-radius:10px;background:#0000004d;border:1px solid rgba(205,67,255,.2);color:#ffffffb3}.thucydides-significance-major{background:#ff475726;border-color:#ff475766;color:#ff4757}.thucydides-significance-medium{background:#ffa50226;border-color:#ffa50266;color:#ffa502}.thucydides-significance-minor{color:#ffffff80}.thucydides-polarity-positive{color:#2ed573;border-color:#2ed5734d}.thucydides-polarity-negative{color:#ff4757;border-color:#ff47574d}.thucydides-status-pending{color:#06b6d4;border-color:#06b6d44d}.thucydides-status-surfaced{color:#cd43ff;border-color:#cd43ff4d}.thucydides-status-resolved{color:#fff6}.thucydides-description{color:#fffc;font-size:13px;line-height:1.5;margin:4px 0}.thucydides-gm-edited{color:#cd43ff;font-size:11px}.thucydides-edit-textarea{width:100%;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-family:var(--font-primary);font-size:13px;padding:8px;resize:vertical}.thucydides-entities{display:flex;flex-direction:column;gap:4px;margin:8px 0;padding-left:8px;border-left:2px solid rgba(205,67,255,.2)}.thucydides-entity{font-size:12px;color:#ffffffb3}.thucydides-entity-name{color:#cd43ff}.thucydides-agenda-ref{color:#cd43ff99;font-size:11px}.thucydides-timing{display:flex;gap:12px;font-size:11px;color:#fff6;margin:4px 0}.thucydides-hooks{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}.thucydides-hook-badge{font-size:10px;padding:2px 6px;border-radius:8px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);color:#cd43ff}.thucydides-hook-interaction{font-size:10px;font-weight:400;color:#ffffff80;text-transform:uppercase}.thucydides-surface-rec{font-size:12px;color:#ffffff80;margin:4px 0;padding:4px 8px;border-left:2px solid rgba(6,182,212,.3)}.thucydides-footer{display:flex;justify-content:flex-start;align-items:center;gap:12px;padding:16px 0 0;border-top:1px solid rgba(205,67,255,.15);margin-top:8px}.thucydides-archived-section{margin-top:24px;border-top:1px solid rgba(205,67,255,.1);padding-top:16px;opacity:.5}.thucydides-archived-section .section-title{font-size:13px;color:#fff6;margin-bottom:8px}.thucydides-archived-item{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:12px}.thucydides-archived-title{color:#ffffff80;text-decoration:line-through}.thucydides-archived-reason{color:#ffffff4d;font-size:11px}.thucydides-error{color:#ff4757;font-size:13px;text-align:center}.continuity-chart-wrapper{display:flex;flex-direction:column;width:100%;height:100%;min-height:500px}.continuity-chart{position:relative;width:100%;flex:1;min-height:400px;background:#0006;border-radius:12px;overflow:auto;padding:0}.continuity-chart-inner{position:relative;min-width:100%;min-height:100%;padding-top:40px}.continuity-chart-svg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.continuity-chart-svg path{pointer-events:stroke}.continuity-node{position:absolute;background:#000c;border:1px solid rgba(205,67,255,.3);border-radius:6px;padding:4px 6px;min-width:60px;max-width:70px;width:65px;height:40px;box-sizing:border-box;font-family:var(--font-primary);font-size:10px;color:#fffffff2;cursor:pointer;transition:all .3s ease;z-index:2;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.continuity-node:hover{border-color:#cd43ff80;box-shadow:0 0 20px #cd43ff33;transform:translateY(-2px)}.continuity-node.selected{border-color:#cd43ff;box-shadow:0 0 25px #cd43ff4d}.continuity-node.dragging{opacity:.7;cursor:grabbing}.continuity-node.drop-target{box-shadow:0 0 0 3px #cd43ff80}.continuity-node__name{font-size:10px;font-weight:400;color:#cd43ff;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.continuity-node__date{font-size:8px;color:#cd43ffb3;margin-bottom:0;line-height:1.1}.continuity-node__characters{display:none}.continuity-arrow{stroke:#cd43ff;stroke-width:2px;fill:none;transition:stroke .2s ease,stroke-width .2s ease}g:hover>.continuity-arrow{stroke:#ff43cd;stroke-width:3px;filter:drop-shadow(0 0 4px rgba(255,67,205,.4))}.continuity-arrow.dragging{stroke:#cd43ff;stroke-width:2px;stroke-dasharray:5,5;opacity:.7}.continuity-chart-svg .arrowhead{fill:#cd43ff}.storyline-row{display:flex;align-items:flex-start;min-height:100px;padding:16px 0;border-bottom:1px solid rgba(205,67,255,.1);position:relative}.storyline-row:last-child{border-bottom:none}.storyline-row__label{min-width:160px;max-width:160px;padding-right:16px;font-family:var(--font-primary);font-size:13px;font-weight:400;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;gap:8px;position:sticky;left:0;background:#0006;z-index:3}.storyline-row__color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.storyline-row__name{color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.storyline-row__content{flex:1;position:relative;min-height:80px}.unlinked-section{margin-top:24px;padding:16px 20px 20px;border-top:1px dashed rgba(205,67,255,.2);min-height:120px}.unlinked-section__label{font-family:var(--font-primary);font-size:12px;color:#cd43ff80;text-transform:uppercase;letter-spacing:1px;margin-bottom:16px}.unlinked-section__content{display:flex;flex-wrap:wrap;gap:16px;min-height:90px}.unlinked-section .continuity-node{position:relative!important;left:unset!important;top:unset!important;opacity:.7;border-style:dashed;flex-shrink:0}.continuity-context-menu{position:fixed;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:8px 0;min-width:180px;z-index:1000;box-shadow:0 4px 20px #00000080}.continuity-context-menu__item{padding:10px 16px;font-family:var(--font-primary);font-size:13px;color:#ffffffe6;cursor:pointer;transition:background .2s ease}.continuity-context-menu__item:hover{background:#cd43ff33}.continuity-context-menu__item.destructive{color:#ff4343}.continuity-context-menu__item.destructive:hover{background:#ff434333}.continuity-context-menu__divider{height:1px;background:#cd43ff33;margin:8px 0}.storyline-editor{padding:24px}.storyline-editor__field{margin-bottom:20px}.storyline-editor__label{display:block;font-family:var(--font-primary);font-size:12px;color:#ffffffb3;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.storyline-editor__input{width:100%;padding:12px 16px;background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#fffffff2;font-family:var(--font-primary);font-size:14px}.storyline-editor__input:focus{outline:none;border-color:#cd43ff99;box-shadow:0 0 10px #cd43ff33}.storyline-editor__colors{display:flex;gap:12px;flex-wrap:wrap}.storyline-editor__color-option{width:36px;height:36px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .2s ease}.storyline-editor__color-option:hover{transform:scale(1.1)}.storyline-editor__color-option.selected{border-color:#fff;box-shadow:0 0 10px #ffffff4d}.storyline-editor__actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.storyline-editor__actions-right{display:flex;gap:12px}.storyline-editor__title{font-family:var(--font-primary);font-size:18px;color:#cd43ff;margin-bottom:24px;text-transform:uppercase;letter-spacing:1px}.storyline-editor__error{padding:12px;margin-bottom:16px;background:#ff434333;border:1px solid rgba(255,67,67,.4);border-radius:8px;color:#ff6b6b;font-size:13px}.storyline-editor__btn{padding:10px 20px;border-radius:20px;font-family:var(--font-primary);font-size:12px;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease}.storyline-editor__btn:disabled{opacity:.5;cursor:not-allowed}.storyline-editor__btn--cancel{background:transparent;border:1px solid rgba(255,255,255,.3);color:#ffffffb3}.storyline-editor__btn--cancel:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff80;color:#fff}.storyline-editor__btn--save{background:#cd43ff33;border:1px solid rgba(205,67,255,.4);color:#cd43ff}.storyline-editor__btn--save:hover:not(:disabled){background:#cd43ff4d;border-color:#cd43ff99}.storyline-editor__btn--delete{background:transparent;border:1px solid rgba(255,67,67,.3);color:#ff4343b3}.storyline-editor__btn--delete:hover:not(:disabled){background:#ff434333;border-color:#ff434380;color:#ff6b6b}.storyline-editor-modal{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;min-width:400px;max-width:500px;box-shadow:0 8px 32px #00000080}.continuity-loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:#cd43ffb3;font-family:var(--font-primary);font-size:14px}.continuity-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#ffffff80;font-family:var(--font-primary);text-align:center}.continuity-empty__icon{font-size:48px;margin-bottom:16px;opacity:.5}.continuity-empty__title{font-size:16px;margin-bottom:8px}.continuity-empty__subtitle{font-size:13px;opacity:.7}.continuity-toolbar{display:flex;justify-content:flex-end;padding:8px 16px;gap:12px}.continuity-toolbar__edit-btn{width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid rgba(205,67,255,.3);color:#ffffffb3;font-size:18px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.continuity-toolbar__edit-btn:hover{border-color:#cd43ff99;color:#cd43ff}.continuity-toolbar__edit-btn.active{background:#cd43ff4d;border-color:#cd43ff;color:#fff}.continuity-sever-prompt{position:fixed;transform:translate(-50%,calc(-100% - 12px));background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:10px;padding:12px 16px;z-index:1000;box-shadow:0 4px 20px #0009,0 0 12px #cd43ff26;display:flex;flex-direction:column;align-items:center;gap:10px}.continuity-sever-prompt__text{font-family:var(--font-primary);font-size:13px;color:#ffffffe6}.continuity-sever-prompt__actions{display:flex;gap:8px}.continuity-sever-prompt__btn{padding:6px 24px;border-radius:10px;font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .2s ease}.continuity-sever-prompt__btn--yes{background:#000000e6;border:1px solid rgba(255,67,205,.5);color:#ff43cd}.continuity-sever-prompt__btn--yes:hover{background:#ff43cd26;border-color:#ff43cd;box-shadow:0 0 12px #ff43cd4d}.continuity-sever-prompt__btn--no{background:#000000e6;border:1px solid rgba(205,67,255,.3);color:#cd43ffb3}.continuity-sever-prompt__btn--no:hover{background:#cd43ff14;border-color:#cd43ff80;color:#cd43ff}.continuity-node.edit-selected{border:2px solid #CD43FF;box-shadow:0 0 30px #cd43ff66}.continuity-node.edit-linked{border:2px solid #FF43CD;box-shadow:0 0 25px #ff43cd4d}.continuity-node.edit-selectable{border:1px solid rgba(6,182,212,.5);cursor:pointer;animation:edit-pulse 2s ease-in-out infinite}.continuity-node.edit-selectable:hover{border-color:#06b6d4cc;box-shadow:0 0 20px #06b6d44d}.continuity-node.edit-excluded{opacity:.3;pointer-events:none;filter:grayscale(.5)}@keyframes edit-pulse{0%,to{box-shadow:0 0 5px #06b6d41a}50%{box-shadow:0 0 15px #06b6d440}}.continuity-placeholder-node{position:absolute;width:65px;height:40px;border:2px dashed rgba(205,67,255,.4);border-radius:6px;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:2}.continuity-placeholder-node:hover{border-color:#cd43ffb3;box-shadow:0 0 15px #cd43ff33}.continuity-placeholder-node__label{font-family:var(--font-primary);font-size:18px;color:#cd43ff99}.continuity-arrow.edit-severable{cursor:pointer}g:hover>.continuity-arrow.edit-severable{stroke-dasharray:4,4;stroke-width:3px;stroke:#ff43cd;filter:drop-shadow(0 0 4px rgba(255,67,205,.4))}.continuity-arrow.edit-involved{stroke:#ff43cd;stroke-width:3px}@media (max-width: 768px){.storyline-row__label{min-width:100px;max-width:100px;font-size:10px}.continuity-node{min-width:60px;max-width:75px;width:70px;height:36px;padding:3px 6px}.continuity-node__name{font-size:9px}.unlinked-section__content{gap:10px}}.timeline-events{margin-top:8px}.timeline-events-toggle{display:inline-flex;align-items:center;gap:6px;padding:2px 0;background:transparent;border:none;color:#cd43ff;opacity:.7;cursor:pointer;font-size:12px;transition:all .2s ease}.timeline-events-toggle:hover{opacity:1;transform:scale(1.05)}.timeline-events-toggle-icon{font-size:14px}.timeline-events-toggle-count{font-family:var(--font-primary);font-size:10px;text-transform:uppercase;letter-spacing:.5px}.timeline-events-list{list-style:none;margin:8px 0 0;padding:0 0 0 12px;border-left:2px solid rgba(205,67,255,.15);animation:timelineEventsSlideDown .2s ease}@keyframes timelineEventsSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.timeline-event-entry{padding:6px 0;display:flex;flex-direction:column;gap:2px}.timeline-event-entry+.timeline-event-entry{border-top:1px solid rgba(205,67,255,.06)}.timeline-event-text{font-size:12px;line-height:1.5;color:#ffffffb3}.timeline-event-participants{font-size:11px;color:#60a5fab3;font-style:normal}.timeline-event-entry--major .timeline-event-text{font-weight:500;color:#ffffffe6}.timeline-event-major-icon{color:#cd43ff;font-size:10px;flex-shrink:0;margin-top:2px}.timeline-view{padding:16px 24px;overflow-y:auto;max-height:100%}.timeline-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.timeline-title{font-family:var(--font-primary);font-size:18px;font-weight:400;color:#e0e0e0;margin:0;text-transform:uppercase;letter-spacing:1px}.timeline-broom-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;background:#cd43ff14;border:1px solid rgba(205,67,255,.2);color:#cd43ff;cursor:pointer;transition:all .2s ease}.timeline-broom-icon:hover:not(:disabled){background:#cd43ff26;color:#e056ff;transform:scale(1.1)}.timeline-broom-icon:active:not(:disabled){transform:scale(.95)}.timeline-broom-icon:disabled,.timeline-broom-icon.loading{opacity:.5;cursor:not-allowed}.timeline-broom-icon.loading .broom-svg{animation:timeline-broom-spin 1.2s linear infinite}@keyframes timeline-broom-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.timeline-entries{display:flex;flex-direction:column;gap:0;padding-left:20px;position:relative}.timeline-entries:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:#cd43ff33}.timeline-entry{position:relative;padding:12px 0 12px 24px}.timeline-node{position:absolute;left:-17px;top:16px;width:10px;height:10px;border-radius:50%;background:#cd43ff66;border:2px solid rgba(205,67,255,.6);z-index:1}.timeline-node--anchor{background:#cd43ff;border-color:#cd43ff;box-shadow:0 0 6px #cd43ff66}.timeline-connector{display:none}.timeline-entry-content{background:#0000004d;border:1px solid rgba(205,67,255,.12);border-radius:6px;padding:12px 16px;transition:border-color .2s ease}.timeline-entry-content:hover{border-color:#cd43ff40}.timeline-entry-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.timeline-session-name{display:block;flex:1;min-width:0;background:none;border:none;color:#e0e0e0;font-family:var(--font-primary);font-size:14px;font-weight:400;padding:0;margin:0;cursor:pointer;text-align:left;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;transition:color .2s ease}.timeline-session-name:hover{color:#cd43ff}.timeline-date{display:block;font-size:12px;color:#cd43ffb3;margin-bottom:6px;font-family:var(--font-primary);letter-spacing:.3px}.timeline-date--uncertain{opacity:.7;font-style:normal}.timeline-flags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.timeline-flag{display:inline-block;font-size:10px;padding:2px 8px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px;font-weight:400}.timeline-flag--continuation,.timeline-flag--direct-continuation{background:#cd43ff26;color:#cd43ffcc;border:1px solid rgba(205,67,255,.25)}.timeline-flag--merge{background:#fbbf2426;color:#fbbf24e6;border:1px solid rgba(251,191,36,.25)}.timeline-flag--parallel{background:#93c5fd26;color:#93c5fde6;border:1px solid rgba(147,197,253,.25)}.timeline-flag--anchor{background:#22c55e26;color:#22c55ee6;border:1px solid rgba(34,197,94,.25)}.timeline-blurb{font-size:13px;line-height:1.6;color:silver;margin:0}.timeline-more-btn{background:none;border:none;color:#cd43ffb3;font-size:12px;font-family:var(--font-primary);cursor:pointer;padding:0;letter-spacing:.3px;transition:color .2s ease}.timeline-more-btn:hover{color:#cd43ff}.timeline-reorder-buttons{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.timeline-reorder-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:16px;border-radius:3px;background:#cd43ff14;border:1px solid rgba(205,67,255,.25);color:#cd43ffb3;cursor:pointer;padding:0;transition:all .2s ease}.timeline-reorder-btn:hover:not(:disabled){background:#cd43ff2e;border-color:#cd43ff80;color:#cd43ff}.timeline-reorder-btn:active:not(:disabled){transform:scale(.9)}.timeline-reorder-btn:disabled{opacity:.25;cursor:not-allowed}.timeline-header-left{display:flex;align-items:center;gap:16px}.timeline-filter-toggle{display:flex;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:6px;overflow:hidden}.timeline-filter-btn{padding:4px 12px;background:transparent;border:none;color:#ffffff80;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease}.timeline-filter-btn:hover{color:#ffffffb3;background:#cd43ff0d}.timeline-filter-btn--active{color:#cd43ff;background:#cd43ff1f}.timeline-filter-btn--active:hover{color:#cd43ff;background:#cd43ff26}.timeline-loading,.timeline-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:#ffffff80;font-size:14px}.archives-action-buttons{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:8px 0 12px;margin-bottom:4px;border-bottom:1px solid rgba(205,67,255,.1)}.archives-action-buttons__hint{margin-right:auto;font-size:13px;color:#cd43ffb3;font-style:normal}.archives-action-buttons .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;font-weight:400;opacity:.7;transition:all .2s ease}.archives-action-buttons .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.archives-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid transparent;background:#0009;cursor:pointer;transition:all .2s ease}.archives-action-btn--confirm{color:#cd43ff;border-color:#cd43ff4d}.archives-action-btn--confirm:hover{background:#cd43ff26;border-color:#cd43ff99;box-shadow:0 0 8px #cd43ff4d;transform:scale(1.1)}.archives-action-btn--cancel{color:#ffffff80;border-color:#ffffff1a}.archives-action-btn--cancel:hover{color:#f87171;background:#f871711a;border-color:#f8717166;transform:scale(1.1)}.archives-edit-modal{background:#0e0a14;border:1px solid rgba(205,67,255,.3);border-radius:12px;max-width:600px;width:90%;max-height:60vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff33}.archives-edit-modal-wide{max-width:800px}.archives-edit-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);flex-shrink:0}.archives-edit-modal .modal-title{font-size:20px;font-weight:400;color:#cd43ff;margin:0}.archives-edit-modal-content{display:flex;flex-direction:column;gap:20px;padding:24px;overflow-y:auto;flex:1}.archives-edit-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.15);flex-shrink:0}.archives-edit-modal .error-message{padding:12px 16px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:6px;color:#fca5a5;font-size:14px}.archives-edit-modal .form-group{display:flex;flex-direction:column;gap:8px}.archives-edit-modal .form-label-row{display:flex;align-items:center;gap:12px}.archives-edit-modal .form-label{font-size:14px;font-weight:400;color:#cd43ffcc}.archives-edit-modal .form-input,.archives-edit-modal .form-textarea{padding:10px 14px;background:#00000080;border:.25px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ff;font-size:14px;font-family:var(--font-primary);outline:none;transition:all .2s ease}.archives-edit-modal .form-input::placeholder,.archives-edit-modal .form-textarea::placeholder{color:#cd43ff66}.archives-edit-modal .form-input:focus,.archives-edit-modal .form-textarea:focus{outline:none;border-color:#cd43ff;background:#cd43ff0d;box-shadow:0 0 20px #cd43ff33}.archives-edit-modal .form-input:disabled,.archives-edit-modal .form-textarea:disabled{opacity:.5;cursor:not-allowed}.archives-edit-modal .form-textarea{resize:vertical;min-height:80px;line-height:1.6}.string-list-editor{display:flex;flex-direction:column;gap:8px}.string-list-item{display:flex;gap:8px;align-items:center}.string-list-item .form-input{flex:1}.string-list-remove{padding:6px 10px;background:#ff43cd26;border:1px solid rgba(255,67,205,.3);border-radius:6px;color:#ff43cd;cursor:pointer;font-size:14px;transition:all .2s ease;flex-shrink:0}.string-list-remove:hover{background:#ff43cd40;border-color:#ff43cd80}.string-list-remove.undo-delete{background:#43cdff26;border-color:#43cdff4d;color:#43cdff}.string-list-add{padding:8px 16px;background:#cd43ff1a;border:1px dashed rgba(205,67,255,.3);border-radius:6px;color:#cd43ffb3;cursor:pointer;font-size:13px;transition:all .2s ease;align-self:flex-start}.string-list-add:hover{background:#cd43ff33;border-color:#cd43ff80;color:#cd43ff}.paired-field-list{display:flex;flex-direction:column;gap:8px}.paired-field{display:flex;gap:8px;align-items:center}.paired-input-name{flex:2}.paired-input-number{flex:0 0 80px;text-align:center}.paired-unit{color:#cd43ff80;font-size:14px;flex-shrink:0}.puppeteer-field-list{display:flex;flex-direction:column;gap:8px}.puppeteer-field{display:flex;gap:8px;align-items:center}.puppeteer-field .form-input{flex:1}.mvp-edit-table,.continuity-edit-table{width:100%;border-collapse:collapse}.mvp-edit-table{table-layout:fixed}.mvp-edit-table .mvp-col-session{width:80px}.mvp-edit-table .mvp-col-character{width:170px}.mvp-edit-table .mvp-col-player{width:120px}.mvp-edit-table .mvp-col-reason{width:auto}.mvp-edit-table .mvp-col-lock{width:70px}.mvp-edit-table .mvp-col-delete{width:40px}.mvp-edit-table th,.continuity-edit-table th{text-align:left;padding:10px 12px;color:#cd43ffcc;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(205,67,255,.2)}.mvp-edit-table td,.continuity-edit-table td{padding:8px 12px;vertical-align:middle;border-bottom:1px solid rgba(205,67,255,.08)}.mvp-edit-table .form-input,.continuity-edit-table .form-input{padding:8px 10px;font-size:13px;width:100%}.mvp-edit-dropdown .custom-dropdown-trigger{padding:6px 10px;font-size:13px;min-height:unset}.mvp-edit-dropdown .custom-dropdown-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.mvp-session-cell,.continuity-session-cell{white-space:nowrap;color:#ffffffb3;font-size:13px;max-width:150px;overflow:hidden;text-overflow:ellipsis}.continuity-checkbox-cell{text-align:center}.continuity-checkbox-cell input[type=checkbox]{accent-color:#CD43FF;width:16px;height:16px}.continuity-follows-cell{display:flex;flex-direction:column;gap:6px;min-width:160px}.continuity-follows-tags{display:flex;flex-wrap:wrap;gap:4px}.continuity-follows-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#cd43ff1f;border:1px solid rgba(205,67,255,.3);border-radius:4px;font-size:12px;color:#ffffffd9;white-space:nowrap}.continuity-follows-tag__remove{background:none;border:none;color:#ff43cd99;cursor:pointer;padding:0 2px;font-size:11px;line-height:1;transition:color .2s ease}.continuity-follows-tag__remove:hover{color:#ff43cd}.continuity-follows-dropdown .custom-dropdown-trigger{padding:6px 10px;font-size:12px;min-height:28px}.deleted-row{opacity:.4}.deleted-row td{text-decoration:line-through}.deleted-count-hint{color:#ff43cd;font-size:13px;font-style:normal;margin:0}.timeline-edit-table{width:100%;border-collapse:collapse}.timeline-edit-table th{text-align:left;padding:10px 12px;color:#cd43ffcc;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(205,67,255,.2)}.timeline-edit-table td{padding:8px 12px;vertical-align:top;border-bottom:1px solid rgba(205,67,255,.08)}.timeline-edit-table .form-input{padding:8px 10px;font-size:13px;width:100%}.timeline-session-cell{white-space:nowrap;color:#ffffffb3;font-size:13px;max-width:120px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle!important}.timeline-blurb-input{min-height:60px;font-size:13px!important;line-height:1.4!important;resize:vertical}.archives-empty{color:#ffffff80;font-style:normal;text-align:center;padding:20px}.archives-edit-modal .required-asterisk{color:#ff1493;font-weight:400;margin-left:2px}.continuity-visual-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:200px;text-align:center}.continuity-visual-description{color:#fff9;font-size:14px;line-height:1.6;max-width:400px;margin:0}.secrets-layer-editor{display:flex;flex-direction:column;gap:12px}.secrets-layer-card{display:flex;flex-direction:column;gap:8px;padding:14px;background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px}.secrets-layer-card-header{display:flex;gap:8px;align-items:center}.secrets-layer-label-input{flex:1;font-weight:500}.secrets-layer-desc-input{font-size:13px}.secrets-layer-characters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-top:4px}.secrets-layer-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:12px;font-size:12px;color:#ffffffd9}.secrets-layer-chip-link{cursor:pointer;transition:color .2s ease}.secrets-layer-chip-link:hover{color:#cd43ffe6;text-decoration:underline}.secrets-layer-chip-remove{background:none;border:none;color:#ff43cd99;cursor:pointer;padding:0 2px;font-size:10px;line-height:1;transition:color .2s ease}.secrets-layer-chip-remove:hover{color:#ff43cd}.secrets-layer-add-char{display:flex;position:relative;gap:4px;align-items:center;width:fit-content}.secrets-layer-char-input{width:180px;padding:4px 8px!important;font-size:12px!important}.secrets-char-autocomplete{position:absolute;top:calc(100% + 2px);left:0;width:220px;max-height:180px;overflow-y:auto;background:#07080afa;border:1px solid rgba(205,67,255,.3);border-radius:6px;z-index:1000;display:flex;flex-direction:column;padding:3px}.secrets-char-autocomplete-option{display:block;width:100%;text-align:left;padding:6px 10px;background:transparent;border:none;color:#ffffffd9;font-family:var(--font-primary);font-size:12px;cursor:pointer;border-radius:4px;transition:background .15s ease}.secrets-char-autocomplete-option:hover{background:#cd43ff26;color:#cd43ff}.secrets-layer-add-btn{padding:4px 10px!important;font-size:14px;min-width:28px}.secrets-layer-summary-section{display:flex;flex-direction:column;gap:2px}.secrets-layer-summary-input{flex:1;font-size:.8rem;font-style:italic;font-family:var(--font-primary);color:#fff9;background:#cd43ff08;border:1px solid rgba(205,67,255,.1);border-radius:6px;padding:6px 10px;resize:vertical;outline:none;transition:all .2s ease}.secrets-layer-summary-input:focus{border-color:#cd43ff66;background:#cd43ff0f;box-shadow:0 0 15px #cd43ff26}.secrets-layer-summary-input::placeholder{color:#cd43ff4d;font-style:italic}.archives-modal{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:12px;max-width:1200px;width:95%;height:80vh;display:flex;flex-direction:column;box-shadow:0 0 40px #cd43ff26,0 8px 32px #00000080;position:relative;overflow:hidden}.archives-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(205,67,255,.5),transparent)}.archives-modal.archives-modal-sidebar{max-width:1200px}.archives-modal-body{display:flex;flex:1;overflow:hidden}@media (max-width: 700px){.archives-modal-body{flex-direction:column}}.archives-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:linear-gradient(180deg,rgba(205,67,255,.05) 0%,transparent 100%)}.archives-modal .modal-header .header-left{display:flex;align-items:center}.archives-modal .modal-title{font-size:20px;font-weight:400;color:#cd43ff;margin:0;font-family:var(--font-primary);letter-spacing:1px;text-shadow:0 0 20px rgba(205,67,255,.3)}.archives-modal .modal-header-actions{display:flex;align-items:center;gap:12px}.homer-panel{flex:1;display:flex;flex-direction:column;overflow:hidden}.archives-modal-content{flex:1;overflow-y:auto;padding:24px;background:linear-gradient(180deg,rgba(205,67,255,.02) 0%,transparent 50%)}.archives-loading,.archives-error,.archives-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.archives-loading p,.archives-empty-state p{color:#cd43ffcc;margin-top:16px;font-family:var(--font-primary)}.archives-hint,.hint{font-size:12px;color:#fff6!important;margin-top:8px!important}.empty-title{color:#cd43ffcc;font-family:var(--font-primary);font-size:16px}.archives-section{background:#cd43ff0d;border-radius:10px;padding:18px 22px;border:1px solid rgba(205,67,255,.15);transition:border-color .3s ease,box-shadow .3s ease}.archives-section:hover{border-color:#cd43ff40;box-shadow:0 0 20px #cd43ff0d}.section-title{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:400;color:#cd43ff;margin:0 0 12px;text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-primary)}.campaign-full-summary,.season-full-summary,.conflict-full-text,.plot-progression-text,.timespan-text,.summary-text{color:#ffffffe6;font-size:14px;line-height:1.8;margin:0;white-space:pre-wrap}.storyline-text{color:#ffffffe6;font-size:15px;line-height:1.8;margin:0;padding:18px;background:#cd43ff14;border-radius:10px;border-left:3px solid #CD43FF;white-space:pre-wrap;box-shadow:inset 0 0 30px #cd43ff08}.placeholder-text{color:#cd43ff59;font-size:14px;margin:0}.clickable-view{cursor:pointer}.clickable-view .archives-section:hover{background:#cd43ff0f;border-radius:8px}.section-title-actions{margin-left:auto;display:inline-flex;align-items:center;gap:10px}.section-title-actions .action-icon.edit-icon{padding:4px;background:transparent;border:none;color:#cd43ff;cursor:pointer;font-size:16px;opacity:.7;transition:all .2s ease}.section-title-actions .action-icon.edit-icon:hover{opacity:1;transform:scale(1.2)}.conflict-text{color:#fbbf24;font-size:14px;line-height:1.6;margin:0;font-style:normal}.archives-tags,.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tag,.theme-tag{padding:5px 14px;background:#cd43ff26;border:1px solid rgba(205,67,255,.2);border-radius:20px;font-size:11px;color:#cd43ffe6;font-family:var(--font-primary);letter-spacing:.5px;transition:all .2s ease}.tag:hover,.theme-tag:hover{background:#cd43ff33;border-color:#cd43ff66;box-shadow:0 0 10px #cd43ff33}.character-tag{padding:5px 14px;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:20px;font-size:11px;color:#86efac;font-family:var(--font-primary)}.character-tag.antagonist{background:#ff43cd1a;border-color:#ff43cd33;color:#fca5a5}.location-tag{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);color:#93c5fd}.objectives-list,.mysteries-list,.events-list,.hooks-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.objective-item,.mystery-item,.event-item{display:flex;align-items:flex-start;gap:12px;color:#ffffffd9;font-size:14px;line-height:1.6;padding:10px 14px;background:#0003;border-radius:8px;border-left:3px solid #CD43FF;transition:background .2s ease}.objective-item:hover,.mystery-item:hover,.event-item:hover{background:#cd43ff0d}.objective-marker{color:#cd43ff;font-size:14px}.mystery-marker{color:#fbbf24;font-weight:400;font-size:16px}.event-marker{color:#22c55e;font-size:14px}.hook-item{display:flex;align-items:flex-start;gap:12px;color:#ffffffd9;font-size:14px;line-height:1.6;padding:10px 14px;background:#0003;border-radius:8px;border-left:3px solid #CD43FF;transition:background .2s ease}.hook-item:hover{background:#cd43ff0d}.hook-marker{color:#cd43ff;font-size:14px}.archives-campaigns-list{display:flex;flex-direction:column;gap:16px}.archives-campaign-card{background:#cd43ff0d;border-radius:12px;padding:20px;border:1px solid rgba(205,67,255,.15);transition:all .3s ease}.archives-campaign-card.has-analysis{cursor:pointer}.archives-campaign-card.has-analysis:hover{border-color:#cd43ff66;background:#cd43ff14;transform:translateY(-2px);box-shadow:0 8px 25px #cd43ff26}.archives-campaign-card.no-analysis{opacity:.5}.campaign-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.campaign-name{font-size:18px;font-weight:400;color:#cd43ff;margin:0;font-family:var(--font-primary);letter-spacing:.5px}.analysis-badge{padding:4px 12px;background:#cd43ff26;border:1px solid rgba(205,67,255,.2);border-radius:12px;font-size:10px;color:#cd43ff;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.no-analysis-badge{padding:4px 12px;background:#ffffff0d;border-radius:12px;font-size:10px;color:#fff6}.campaign-summary{color:#fffc;font-size:14px;line-height:1.6;margin:0 0 12px}.campaign-conflict{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.conflict-label{font-size:10px;text-transform:uppercase;color:#fff6;letter-spacing:1px;font-family:var(--font-primary)}.campaign-themes{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.campaign-description{color:#ffffff80;font-size:13px;line-height:1.5;margin:0;font-style:normal}.campaign-footer{display:flex;justify-content:flex-end}.click-hint{font-size:10px;color:#ffffff4d;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.archives-campaign-detail,.archives-season-detail{display:flex;flex-direction:column;gap:20px}.act-list{display:flex;flex-direction:column;gap:14px}.act-item{padding:14px 18px;background:#0000004d;border-radius:10px;border-left:3px solid #CD43FF;transition:all .2s ease}.act-item:hover{background:#cd43ff0d}.act-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.act-number{font-size:10px;font-weight:400;color:#cd43ff;text-transform:uppercase;font-family:var(--font-primary);letter-spacing:1px}.act-name{font-size:14px;font-weight:400;color:#ffffffe6;font-family:var(--font-primary)}.act-summary{color:#ffffffb3;font-size:13px;line-height:1.5;margin:0}.seasons-list{display:flex;flex-direction:column;gap:12px}.season-card{padding:16px 18px;background:#00000040;border-radius:10px;border:1px solid rgba(205,67,255,.1);transition:all .3s ease}.season-card.has-analysis{cursor:pointer}.season-card.has-analysis:hover{border-color:#cd43ff4d;background:#cd43ff0d;transform:translate(4px)}.season-card.no-analysis{opacity:.4}.season-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.season-name{font-size:15px;font-weight:400;color:#cd43ff;margin:0;font-family:var(--font-primary)}.session-count{font-size:10px;color:#fff6;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.season-summary{color:#ffffffb3;font-size:13px;line-height:1.5;margin:0}.character-arcs-list{display:flex;flex-direction:column;gap:12px}.character-arc-item{padding:14px 18px;background:#00000040;border-radius:10px;border-left:3px solid #86efac;transition:background .2s ease}.character-arc-item:hover{background:#22c55e0d}.arc-character-name{font-size:13px;font-weight:400;color:#86efac;display:block;margin-bottom:6px;font-family:var(--font-primary)}.arc-development{color:#ffffffb3;font-size:13px;line-height:1.5;margin:0}.threads-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.threads-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.thread-item{padding:10px 14px;background:#00000040;border-radius:8px;font-size:13px;color:#fffc;transition:all .2s ease}.thread-item:hover{background:#cd43ff0d}.thread-item.introduced{border-left:3px solid #22c55e}.thread-item.resolved{border-left:3px solid rgba(255,255,255,.2);opacity:.6}.thread-item.ongoing{border-left:3px solid #fbbf24}.section-title.threads-introduced{color:#22c55e}.section-title.threads-resolved{color:#fff6}.section-title.threads-ongoing{color:#fbbf24}.archives-metadata{background:#0003;display:flex;flex-wrap:wrap;gap:24px;padding:14px 18px;border-radius:8px}.metadata-row{display:flex;gap:8px;align-items:baseline}.metadata-label{font-size:10px;color:#fff6;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.5px}.metadata-value{font-size:13px;color:#cd43ff;font-weight:500}.plot-progress-list{display:flex;flex-direction:column;gap:14px}.progress-item{display:flex;flex-direction:column;gap:8px}.progress-label{font-size:13px;color:#cd43ff;font-weight:500;font-family:var(--font-primary)}.progress-bar-container{display:flex;align-items:center;gap:12px;height:24px;background:#0006;border-radius:12px;padding:0 6px;border:1px solid rgba(205,67,255,.1)}.progress-bar{height:14px;background:linear-gradient(90deg,#cd43ffcc,#cd43ff);border-radius:7px;transition:width .5s ease;min-width:4px;box-shadow:0 0 10px #cd43ff4d}.progress-value{font-size:12px;color:#cd43ff;font-weight:400;min-width:45px;text-align:right;font-family:var(--font-primary)}.archives-characters-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.archives-characters-grid{grid-template-columns:1fr}}.archives-modal-content::-webkit-scrollbar{width:8px}.archives-modal-content::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.archives-modal-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px;transition:background .2s ease}.archives-modal-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.archives-section,.archives-campaign-card,.season-card,.act-item,.character-arc-item{animation:fadeIn .3s ease}.posting-rules-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:640px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:postingRulesPopIn .2s ease}@keyframes postingRulesPopIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.posting-rules-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.posting-rules-modal .modal-title{font-family:var(--font-primary);font-size:1.15rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.posting-rules-header-right{display:flex;align-items:center;gap:12px}.posting-rules-modal-content{padding:24px;overflow-y:auto;flex:1}.posting-rules-modal .form-group{margin-bottom:20px}.posting-rules-modal .form-group:last-child{margin-bottom:0}.posting-rules-modal .form-label{display:block;font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#cd43ffe6;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.posting-rules-modal .frequency-row{display:flex;align-items:center;gap:12px}.posting-rules-modal .frequency-label{color:#ffffffb3;font-size:.9rem;white-space:nowrap}.posting-rules-modal .posting-style-row{display:flex;gap:16px;margin-bottom:12px}.posting-rules-modal .posting-style-field{flex:1;display:flex;flex-direction:column;gap:4px}.posting-rules-modal .field-sublabel{font-size:.8rem;color:#cd43ff99;text-transform:uppercase;letter-spacing:.3px}.posting-rules-modal .example-sentence{background:#cd43ff14;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:12px 16px;line-height:1.5}.posting-rules-modal .example-label{font-size:.8rem;color:#cd43ff99;text-transform:uppercase;letter-spacing:.3px;margin-right:8px}.posting-rules-modal .example-text{font-style:normal;color:#fffc;font-size:.9rem}.posting-rules-modal .form-hint{display:block;color:#ffffff80;font-size:.8rem;margin-top:6px}.posting-rules-modal .ya-locked-hint{display:block;color:#ff43cd;font-size:.8rem;margin-top:6px;font-style:normal}.posting-rules-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.posting-rules-modal .modal-footer-right{display:flex;gap:10px}@media (max-width: 480px){.posting-rules-modal{width:95%;max-height:95vh}.posting-rules-modal .modal-header,.posting-rules-modal-content,.posting-rules-modal .modal-footer{padding:16px}.posting-rules-modal .posting-style-row{flex-direction:column;gap:12px}}.ownership-warning-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ownership-warning-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:420px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeInUp .2s ease-out}.ownership-warning-header{display:flex;justify-content:center;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.ownership-warning-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5);text-align:center}.ownership-warning-content{display:flex;flex-direction:column;align-items:center;gap:20px;padding:32px 24px;text-align:center}.ownership-warning-message{font-family:var(--font-primary);font-size:1rem;color:#ffffffe6;line-height:1.6;margin:0}.ownership-warning-footer{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.ownership-warning-footer .button{width:100%;max-width:200px}.transfer-ownership-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.transfer-ownership-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:480px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeInUp .2s ease-out}.transfer-ownership-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.transfer-ownership-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.transfer-ownership-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:6px;color:#cd43ff99;cursor:pointer;transition:all .2s ease}.transfer-ownership-close:hover{background:#cd43ff1a;color:#cd43ff}.transfer-ownership-content{flex:1;overflow-y:auto;padding:0}.transfer-ownership-content::-webkit-scrollbar{width:8px}.transfer-ownership-content::-webkit-scrollbar-track{background:#cd43ff0d;border-radius:4px}.transfer-ownership-content::-webkit-scrollbar-thumb{background:#cd43ff4d;border-radius:4px}.transfer-ownership-content::-webkit-scrollbar-thumb:hover{background:#cd43ff80}.transfer-ownership-loading{display:flex;align-items:center;justify-content:center;padding:48px 24px}.transfer-ownership-empty{display:flex;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.transfer-ownership-empty p{font-family:var(--font-primary);font-size:1rem;color:#cd43ff99;margin:0}.transfer-ownership-list{list-style:none;margin:0;padding:0}.transfer-ownership-item{display:flex;align-items:center;gap:14px;padding:14px 20px;background:#cd43ff08;border-bottom:1px solid rgba(205,67,255,.08);cursor:pointer;transition:all .2s ease}.transfer-ownership-item:hover{background:#cd43ff14;transform:translate(4px)}.transfer-ownership-item:last-child{border-bottom:none}.transfer-ownership-avatar{flex-shrink:0}.transfer-ownership-user-info{flex:1;min-width:0}.transfer-ownership-role{flex-shrink:0;padding:4px 10px;border-radius:20px;font-family:var(--font-primary);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.transfer-ownership-role-player{background:#ffd70033;color:gold;border:1px solid rgba(255,215,0,.3)}.transfer-ownership-role-spectator{background:#cd43ff26;color:#cd43ffcc;border:1px solid rgba(205,67,255,.3)}.transfer-ownership-footer{display:flex;justify-content:center;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.transfer-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1001;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.transfer-confirm-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:400px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeInUp .2s ease-out}.transfer-confirm-header{display:flex;justify-content:center;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.transfer-confirm-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5);text-align:center}.transfer-confirm-content{display:flex;flex-direction:column;align-items:center;gap:20px;padding:32px 24px;text-align:center}.transfer-confirm-loading{padding:24px 0}.transfer-confirm-message{font-family:var(--font-primary);font-size:1rem;color:#ffffffe6;line-height:1.6;margin:0}.transfer-confirm-footer{display:flex;justify-content:center;align-items:center;gap:16px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.fi-editor{margin-top:12px;padding:16px;background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px;display:flex;flex-direction:column;gap:12px}.fi-editor-header{display:flex;align-items:baseline;gap:10px}.fi-editor-subtitle{font-family:var(--font-primary);font-size:.75rem;color:#fff6;font-style:normal}.fi-editor-stat-row{display:flex;align-items:center;gap:8px}.fi-editor-label{font-family:var(--font-primary);font-size:.85rem;color:#ffffffb3;white-space:nowrap}.fi-editor-info-icon{display:inline-flex;align-items:center;cursor:help}.fi-unlink-btn{color:#ff43cdb3!important;border-color:#ff43cd4d!important;background:#ff43cd14!important}.fi-unlink-btn:hover{color:#ff43cd!important;border-color:#ff43cd80!important;background:#ff43cd26!important}.fi-editor-range-row{display:flex;align-items:center;gap:8px}.fi-editor-range-steppers{display:flex;align-items:center;gap:12px;margin-left:auto}.fi-editor-range-field{display:flex;align-items:center;gap:6px}.fi-editor-range-label{font-family:var(--font-primary);font-size:.75rem;color:#fff6;text-transform:uppercase;letter-spacing:.3px}.fi-editor-toggle-row{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:#00000026;border-radius:8px;border:1px solid rgba(205,67,255,.08)}.fi-editor-toggle-header{display:flex;align-items:center;gap:8px}.fi-editor-toggle-desc{font-family:var(--font-primary);font-size:.78rem;color:#ffffff73;line-height:1.3;padding-left:2px}.npc-romance-panel{margin-top:8px;padding:16px;background:#0003;border:1px solid rgba(255,67,205,.15);border-radius:10px;display:flex;flex-direction:column;gap:16px}.npc-romance-disclaimer{font-family:var(--font-primary);font-size:.78rem;color:#ffffff73;line-height:1.5;padding:10px 12px;background:#cd43ff08;border-radius:6px;border-left:2px solid rgba(205,67,255,.2)}.npc-romance-section{display:flex;flex-direction:column;gap:8px}.npc-romance-section-title{font-family:var(--font-primary);font-size:.85rem;font-weight:400;color:#cd43ffcc;margin:0;text-transform:uppercase;letter-spacing:.4px}.npc-romance-grid{display:flex;flex-direction:column;gap:6px}.npc-romance-pref-row{display:flex;align-items:center;gap:8px;padding:4px 10px;background:#0000001f;border-radius:6px}.npc-romance-pref-label{flex:1;font-family:var(--font-primary);font-size:.82rem;color:#ffffffb3}.npc-romance-percent{font-family:var(--font-primary);font-size:.8rem;color:#fff6;min-width:16px}.npc-romance-warning{font-family:var(--font-primary);font-size:.78rem;color:#ff43cd;padding:4px 10px;background:#ff43cd14;border-radius:4px;border:1px solid rgba(255,67,205,.2)}.npc-romance-monogamy-divider{height:1px;margin:10px 10px 4px;background:linear-gradient(90deg,transparent,rgba(205,67,255,.25),transparent)}.npc-romance-monogamy-row{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#0000001f;border-radius:6px}.npc-romance-monogamy-label{flex:1;font-family:var(--font-primary);font-size:.82rem;color:#ffffffb3}.sheet-field-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10500;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:fieldPickerFadeIn .15s ease}@keyframes fieldPickerFadeIn{0%{opacity:0}to{opacity:1}}.sheet-field-picker{background:#140f1ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.4);border-radius:12px;width:90%;max-width:900px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d}.sheet-field-picker-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.sheet-field-picker-header h2{font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.sheet-field-picker-content{padding:20px;overflow-y:auto;flex:1}.sheet-field-picker-loading,.sheet-field-picker-empty{display:flex;align-items:center;justify-content:center;padding:48px 0;color:#cd43ff80;font-family:var(--font-primary);font-size:.9rem}.sheet-field-picker-section{margin-bottom:20px}.sheet-field-picker-section .section-name{font-family:var(--font-primary);font-size:.9rem;font-weight:400;color:#cd43ffb3;margin:0 0 10px;text-transform:uppercase;letter-spacing:.5px}.sheet-field-picker-section .section-columns{display:flex;gap:12px;flex-wrap:wrap}.sheet-field-picker-section .section-column{flex:1;min-width:200px;display:flex;flex-direction:column;gap:6px}.field-cell{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:6px;border:1px solid rgba(205,67,255,.1);background:#0000004d;transition:all .2s ease}.field-cell .field-name{font-family:var(--font-primary);font-size:.85rem;color:#fffc}.field-cell .field-type{font-family:var(--font-primary);font-size:.7rem;color:#ffffff4d;text-transform:uppercase}.field-cell.field-linkable{cursor:pointer}.field-cell.field-linkable:hover{border-color:#cd43ff99;box-shadow:0 0 10px #cd43ff4d;background:#cd43ff14}.field-cell.field-linkable:hover .field-name{color:#cd43ff}.field-cell.field-disabled{opacity:.4;cursor:not-allowed}.grid-sub-picker-back{background:none;border:none;color:#cd43ff;font-size:1rem;cursor:pointer;padding:0 8px 0 0;opacity:.7;transition:opacity .2s ease}.grid-sub-picker-back:hover{opacity:1}.grid-column-list{display:flex;flex-direction:column;gap:6px}.mechanics-modal{position:relative;background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;width:90%;max-width:700px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);animation:mechanicsPopIn .2s ease}@keyframes mechanicsPopIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.mechanics-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.mechanics-modal .modal-title{font-family:var(--font-primary);font-size:1.15rem;font-weight:400;color:#cd43ff;margin:0;text-shadow:0 0 20px rgba(205,67,255,.5)}.mechanics-modal .modal-header-tabs{flex:1;display:flex;justify-content:center;margin:0 16px}.mechanics-modal-body{padding:24px;overflow-y:auto;flex:1}.mechanics-modal .form-group{margin-bottom:20px}.mechanics-modal .form-group:last-child{margin-bottom:0}.mechanics-modal .form-label{display:block;font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#cd43ffe6;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.mechanics-modal .form-sublabel{font-family:var(--font-primary);font-size:.8rem;color:#ffffff80;margin-top:4px;line-height:1.3}.mechanics-exception-row{display:flex;align-items:center;gap:12px;margin-bottom:8px;padding:8px 12px;background:#cd43ff0d;border-radius:8px;border:1px solid rgba(205,67,255,.1)}.mechanics-exception-row .exception-name{flex:1;font-family:var(--font-primary);font-size:.85rem;color:#fffc}.mechanics-pool-toggle{display:flex;flex-direction:column;gap:8px}.mechanics-pool-explanation{font-family:var(--font-primary);font-size:.8rem;color:#ffffff80;line-height:1.4;padding:8px 12px;background:#cd43ff08;border-radius:6px;border-left:2px solid rgba(205,67,255,.3)}.mechanics-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff08}.mechanics-modal .error-message{color:#f44;font-size:.8rem;padding:8px 12px;background:#ff44441a;border-radius:6px;margin-bottom:12px}.mechanics-modal .loading-state{display:flex;align-items:center;justify-content:center;padding:48px 0;color:#cd43ff99;font-family:var(--font-primary)}.mechanics-inline-row{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-top:12px;background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px}.mechanics-inline-label{font-family:var(--font-primary);font-size:.95rem;font-weight:400;color:#cd43ffd9;margin:0;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.mechanics-inline-linked{display:flex;align-items:center;gap:8px}.mechanics-inline-field-name{font-family:var(--font-primary);font-size:.85rem;color:#fffc}.field-link-btn{cursor:pointer;color:#cd43ff;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;padding:2px 8px;font-family:var(--font-primary);font-size:.75rem;transition:all .2s ease;white-space:nowrap}.field-link-btn:hover{background:#cd43ff33;border-color:#cd43ff}.mechanics-inline-link-btn{cursor:pointer;color:#cd43ffb3;background:#cd43ff14;border:1px dashed rgba(205,67,255,.25);border-radius:6px;padding:4px 12px;font-family:var(--font-primary);font-size:.8rem;white-space:nowrap;transition:all .2s ease}.mechanics-inline-link-btn:hover{background:#cd43ff26;border-color:#cd43ff66;color:#cd43ff}.mechanics-formula-section{margin-top:12px;padding:12px 16px;background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px}.mechanics-formula-row{display:flex;align-items:center;gap:8px;margin-top:8px}.mechanics-formula-input{flex:1;font-family:var(--font-primary);font-variant-numeric:tabular-nums;font-size:.9rem;color:#ffffffe6;background:#00000040;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:8px 12px;outline:none;transition:border-color .2s ease}.mechanics-formula-input:focus{border-color:#cd43ff;box-shadow:0 0 8px #cd43ff26}.mechanics-formula-input::placeholder{color:#ffffff40;font-style:normal}.mechanics-formula-fields{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.mechanics-formula-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#cd43ff1f;border:1px solid rgba(205,67,255,.25);border-radius:12px;font-family:var(--font-primary);font-size:.75rem;color:#cd43ffe6}.mechanics-formula-pill-remove{cursor:pointer;color:#ff43cd99;background:none;border:none;padding:0 2px;font-size:.8rem;line-height:1;transition:color .2s ease}.mechanics-formula-pill-remove:hover{color:#ff43cd}.mechanics-section-header{display:flex;align-items:center;justify-content:space-between;padding:8px 0;margin-top:16px;margin-bottom:12px;border-bottom:1px solid rgba(205,67,255,.15)}.mechanics-section-header h3{font-family:var(--font-primary);font-size:.95rem;font-weight:400;color:#cd43ffd9;margin:0;text-transform:uppercase;letter-spacing:.5px}.mechanics-section-header .required-badge{font-family:var(--font-primary);font-size:.7rem;color:#cd43ff80;text-transform:uppercase;letter-spacing:.5px}.linked-stat-card{background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px;padding:16px;margin-bottom:12px;transition:border-color .2s ease}.linked-stat-card:hover{border-color:#cd43ff40}.linked-stat-card .stat-name-input{font-family:var(--font-primary);font-size:.95rem;font-weight:400;color:#cd43ff;background:transparent;border:none;border-bottom:1px solid rgba(205,67,255,.2);padding:4px 0;width:100%;outline:none;transition:border-color .2s ease}.linked-stat-card .stat-name-input:focus{border-bottom-color:#cd43ff}.linked-stat-card .stat-name-input:disabled{color:#cd43ff99;cursor:default}.linked-stat-fields{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.linked-stat-fields .field-slot{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#00000026;border-radius:6px;border:1px dashed rgba(205,67,255,.15)}.linked-stat-fields .field-slot-label{font-family:var(--font-primary);font-size:.75rem;color:#fff6;text-transform:uppercase;letter-spacing:.5px;min-width:70px}.linked-stat-fields .field-slot-value{flex:1;font-family:var(--font-primary);font-size:.85rem;color:#fffc}.linked-stat-fields .field-slot-value.not-linked{color:#ffffff4d;font-style:normal}.linked-stat-fields .field-slot-value.field-deleted{color:#ff9632cc}.linked-stat-options{display:flex;align-items:center;gap:16px;margin-top:12px;flex-wrap:wrap}.linked-stat-options .option-group{display:flex;align-items:center;gap:6px}.mechanics-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer}.linked-stat-options .option-label{font-family:var(--font-primary);font-size:.75rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.3px}.linked-stat-card .stat-delete-wrapper{position:absolute;top:8px;right:8px}.linked-stat-card{position:relative}.initiative-formula-preview{font-family:var(--font-primary);font-size:.85rem;color:#cd43ff99;padding:6px 10px;background:#cd43ff0d;border-radius:6px;margin-top:8px;font-style:normal}.mechanics-empty-state{text-align:center;padding:24px;color:#fff6;font-family:var(--font-primary);font-size:.85rem}.mechanics-add-stat-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;margin-top:8px;cursor:pointer;color:#cd43ffb3;background:#cd43ff0d;border:1px dashed rgba(205,67,255,.2);border-radius:8px;font-family:var(--font-primary);font-size:.85rem;transition:all .2s ease}.mechanics-add-stat-btn:hover{background:#cd43ff1a;border-color:#cd43ff66;color:#cd43ff}.pool-color-group{flex-basis:100%}.pool-color-pickers{display:flex;align-items:center;gap:6px}.pool-color-picker{display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer}.pool-color-picker input[type=color]{-webkit-appearance:none;border:1px solid rgba(205,67,255,.3);border-radius:4px;width:28px;height:20px;padding:0;cursor:pointer;background:transparent}.pool-color-picker input[type=color]::-webkit-color-swatch-wrapper{padding:1px}.pool-color-picker input[type=color]::-webkit-color-swatch{border:none;border-radius:3px}.pool-color-label{font-size:.65rem;color:#fff6}.pool-color-arrow{color:#ffffff4d;font-size:.75rem;margin:0 2px 12px}.pool-border-width{display:flex;flex-direction:column;align-items:center;gap:2px}.pool-border-width .mechanics-formula-input{font-size:.75rem;padding:2px 4px;height:20px;border-radius:4px}.mechanics-defaults-view{display:flex;flex-direction:column;gap:16px}.mechanics-defaults-description{font-family:var(--font-primary);font-size:.85rem;color:#ffffff80;margin:0}.mechanics-defaults-toggle{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#cd43ff0a;border:1px solid rgba(205,67,255,.12);border-radius:10px}.mechanics-defaults-toggle .option-label{font-family:var(--font-primary);font-size:.85rem;color:#ffffffb3}.mechanics-section{display:flex;flex-direction:column;gap:10px}.mechanics-section-title{font-family:var(--font-primary);font-size:.9rem;font-weight:400;color:#cd43ffd9;margin:0;text-transform:uppercase;letter-spacing:.5px;padding-bottom:6px;border-bottom:1px solid rgba(205,67,255,.15)}.mechanics-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;cursor:pointer;color:#cd43ffb3;background:#cd43ff0d;border:1px dashed rgba(205,67,255,.25);border-radius:8px;font-family:var(--font-primary);font-size:.85rem;transition:all .2s ease}.mechanics-add-btn:hover{background:#cd43ff1a;border-color:#cd43ff66;color:#cd43ff}.mechanics-import-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.25);border-radius:8px;margin-bottom:12px}.mechanics-import-text{font-family:var(--font-primary);font-size:.82rem;color:#ffffffb3;margin:0}.fi-love-settings-wrapper{margin-top:12px;display:flex;flex-direction:column;gap:8px}.fi-love-settings-btn{width:auto;align-self:flex-start;border-color:#ff43cd40!important;color:#ff43cdb3!important;background:#ff43cd14!important}.fi-love-settings-btn:hover{color:#ff43cd!important;border-color:#ff43cd66!important;background:#ff43cd26!important}.section-eye-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:default;transition:all .2s ease;flex-shrink:0}.section-eye-icon.clickable{cursor:pointer}.section-eye-icon.clickable:hover{background:#cd43ff26;color:#e066ff}.section-eye-icon.clickable:active{opacity:.8}.section-eye-icon.readonly{opacity:.7}.section-eye-icon.readonly:hover{opacity:1}.section-eye-icon .eye-svg{width:18px;height:18px;filter:drop-shadow(0 0 4px rgba(205,67,255,.4))}.section-eye-icon.clickable:hover .eye-svg{filter:drop-shadow(0 0 8px rgba(205,67,255,.6))}.section-eye-tooltip .tooltip-content{white-space:pre-line;text-align:left;line-height:1.5}.section-settings-modal{position:relative;background:transparent;border-radius:12px;width:90%;max-width:420px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff4d;border:1px solid rgba(205,67,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:popIn .2s ease}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.section-settings-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.section-settings-modal .modal-title{font-family:var(--font-primary);font-size:1.15rem;font-weight:400;color:#cd43ff;margin:0;display:flex;align-items:center;gap:12px;text-shadow:0 0 20px rgba(205,67,255,.5)}.section-settings-modal .close-button{background:transparent;border:none;color:#cd43ffb3;cursor:pointer;padding:8px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.section-settings-modal .close-button:hover{background:#cd43ff26;color:#cd43ff}.section-settings-modal-content{padding:24px;overflow-y:auto;flex:1}.section-settings-modal .form-group{margin-bottom:20px}.section-settings-modal .form-group:last-child{margin-bottom:0}.section-settings-modal .form-label{display:block;font-family:var(--font-primary);font-size:.9rem;font-weight:500;color:#cd43ffe6;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px;cursor:help}.section-settings-modal .form-hint{display:block;font-size:.8rem;color:#cd43ff80;margin-bottom:8px;font-style:normal;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.section-settings-modal .dropdown{width:100%}.section-settings-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(205,67,255,.2);background:#cd43ff0d}.section-settings-modal .modal-footer-right{display:flex;gap:10px}@media (max-width: 480px){.section-settings-modal{width:95%;max-height:95vh}.section-settings-modal .modal-header,.section-settings-modal-content,.section-settings-modal .modal-footer{padding:16px}}.name-bank-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:4px;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:pointer;transition:all .2s ease}.name-bank-icon:hover{background:#cd43ff26;color:#e056ff;transform:scale(1.1)}.name-bank-icon:active{transform:scale(.95)}.name-bank-icon .name-bank-svg{width:18px;height:18px}.import-icon{display:inline-flex;align-items:center;justify-content:center;padding:4px;border:none;border-radius:6px;background:transparent;color:#cd43ff;cursor:default;transition:all .2s ease}.import-icon-medium{width:32px;height:32px}.import-icon-small{width:24px;height:24px}.import-icon.clickable{cursor:pointer}.import-icon.clickable:hover{background:#cd43ff26;color:#d75fff;transform:scale(1.1)}.import-icon.clickable:active{transform:scale(.95)}.import-icon.disabled{opacity:.4;cursor:not-allowed}.import-icon:disabled{opacity:.4;cursor:not-allowed}.import-icon.loading .import-svg{animation:import-bounce .6s ease-in-out infinite}@keyframes import-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.import-icon-medium .import-svg{width:20px;height:20px}.import-icon-small .import-svg{width:16px;height:16px}.game-navigator{display:flex;flex-direction:column;gap:.75rem;margin-bottom:0}.main-tabs{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;position:relative;overflow:visible}.main-tabs-left{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.main-tabs-center{display:flex;align-items:center;justify-content:center;gap:.5rem;flex:0 0 auto}.main-tabs-right{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex:1;min-width:0}.main-tab{background:transparent;border:none;border-bottom:1px solid transparent;padding:.5rem 1.5rem;color:#cd43ff80;font-family:var(--font-primary);font-size:.95rem;cursor:pointer;transition:all .2s ease;letter-spacing:.5px;white-space:nowrap}.main-tab:hover{color:#cd43ffcc;border-bottom-color:#cd43ff4d}.main-tab.active{color:#cd43ff;border-bottom-color:#cd43ff}.main-tab.tab-locked{color:#cd43ff33;cursor:pointer}.main-tab.tab-locked:hover{color:#cd43ff4d;border-bottom-color:transparent}.sub-tabs-wrapper{display:flex;gap:0;background:#0006;border-radius:12px;padding:4px;border:1px solid rgba(205,67,255,.2);margin-bottom:0}.sub-tab{flex:1;padding:12px 24px;background:transparent;border:none;color:#cd43ff99;font-family:var(--font-primary);font-size:1rem;cursor:pointer;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.sub-tab:hover{background:#cd43ff1a;color:#cd43ffcc}.sub-tab.active{background:#cd43ff33;color:#cd43ff;box-shadow:0 0 15px #cd43ff4d}.add-level-btn-middle{background:linear-gradient(135deg,#cd43ff33,#cd43ff1a);border:1px solid rgba(205,67,255,.4);border-radius:8px;color:#cd43ff;font-family:var(--font-primary);font-size:.9rem;padding:8px 20px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.add-level-btn-middle:hover{background:linear-gradient(135deg,#cd43ff4d,#cd43ff33);border-color:#cd43ff;box-shadow:0 0 15px #cd43ff66;transform:translateY(-1px)}.sanctum-ya-lock{cursor:not-allowed;opacity:.7;font-size:1rem}.sanctum-ya-lock:hover{transform:none;box-shadow:none}.join-game-btn{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ff;font-family:var(--font-primary);font-size:.85rem;padding:6px 16px;cursor:pointer;transition:all .2s ease;letter-spacing:.3px}.join-game-btn:hover{background:#cd43ff4d;border-color:#cd43ff;box-shadow:0 0 15px #cd43ff80;transform:scale(1.05)}.join-game-btn.pending{background:#ffc10726;border:1px solid rgba(255,193,7,.4);color:#ffc107}.join-game-btn.pending:hover{background:#ff980040;border-color:#ff9800;box-shadow:0 0 15px #ff980080;transform:scale(1.05)}.character-creation-btn{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ff;font-family:var(--font-primary);font-size:.85rem;padding:6px 16px;cursor:pointer;transition:all .2s ease;letter-spacing:.3px;white-space:nowrap}.character-creation-btn:hover{background:#cd43ff4d;border-color:#cd43ff;box-shadow:0 0 15px #cd43ff80;transform:scale(1.05)}.section-action-btn{background:#cd43ff26;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ff;font-family:var(--font-primary);font-size:.85rem;padding:6px 16px;cursor:pointer;transition:all .2s ease;letter-spacing:.3px;white-space:nowrap}.section-action-btn:hover{background:#cd43ff4d;border-color:#cd43ff;box-shadow:0 0 15px #cd43ff80;transform:scale(1.05)}.lore-category-tabs{display:flex;gap:.25rem;background:#0000004d;border-radius:8px;padding:3px;border:1px solid rgba(205,67,255,.15);justify-content:center}.lore-category-tab{padding:8px 16px;background:transparent;border:none;color:#cd43ff80;font-family:var(--font-primary);font-size:.85rem;cursor:pointer;border-radius:6px;transition:all .2s ease}.lore-category-tab:hover{background:#cd43ff1a;color:#cd43ffcc}.lore-category-tab.active{background:#cd43ff33;color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.lore-subcategory-tabs{display:flex;gap:.35rem;background:#0003;border-radius:6px;padding:3px;border:1px solid rgba(205,67,255,.1);justify-content:center;flex-wrap:wrap}.lore-subcategory-tab{padding:4px 10px;background:transparent;border:none;color:#cd43ff73;font-family:var(--font-primary);font-size:.75rem;cursor:pointer;border-radius:4px;transition:all .2s ease;letter-spacing:.3px}.lore-subcategory-tab:hover{background:#cd43ff14;color:#cd43ffb3}.lore-subcategory-tab.active{background:#cd43ff26;color:#cd43ff;box-shadow:0 0 8px #cd43ff26}.name-bank-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000}.name-bank-modal{background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:12px;width:800px;max-width:90vw;height:85vh;display:flex;flex-direction:column;box-shadow:0 0 40px #cd43ff26}.name-bank-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px;border-bottom:1px solid rgba(205,67,255,.15);flex-shrink:0}.name-bank-title{font-family:var(--font-primary);font-weight:400;font-size:18px;color:#cd43ff;margin:0}.name-bank-header-actions{display:flex;align-items:center;gap:8px}.name-bank-classify-progress{padding:6px 24px;font-family:var(--font-primary);font-size:12px;color:#cd43ff99;animation:namebank-pulse 1.5s ease-in-out infinite}@keyframes namebank-pulse{0%,to{opacity:.6}50%{opacity:1}}.name-bank-classify-result{padding:6px 24px;font-family:var(--font-primary);font-size:12px;color:#ffffff80;animation:namebank-fade-out 4s ease forwards}@keyframes namebank-fade-out{0%,70%{opacity:1}to{opacity:0}}.name-bank-body{display:flex;flex-direction:column;gap:12px;padding:16px 24px;overflow-y:auto;flex:1}.name-bank-cast-section{border-bottom:1px solid rgba(205,67,255,.1);padding-bottom:12px}.name-bank-cast-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;cursor:pointer;padding:4px 0}.name-bank-cast-label{font-family:var(--font-primary);font-weight:400;font-size:12px;color:#fff6;text-transform:uppercase;letter-spacing:.5px}.name-bank-cast-chevron{font-size:14px;color:#ffffff4d;transition:transform .2s ease;transform:rotate(0)}.name-bank-cast-chevron.expanded{transform:rotate(90deg)}.name-bank-cast-list{display:flex;flex-wrap:wrap;gap:4px 8px;margin-top:8px;padding:8px 0}.name-bank-cast-name{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#ff43cdb3}.name-bank-cast-name:not(:last-child):after{content:",";color:#ffffff26}.name-bank-controls{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.name-bank-toggle{display:flex;align-items:center;gap:12px}.name-bank-count{font-family:var(--font-primary);font-size:12px;color:#ffffff59;font-weight:400;margin-left:8px}.name-bank-input-row{display:flex;gap:6px}.name-bank-input{flex:1;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:6px 10px;font-family:var(--font-primary);font-size:12px;color:#ffffffe6;outline:none;transition:border-color .2s ease}.name-bank-input:focus{border-color:#cd43ff}.name-bank-input::placeholder{color:#ffffff40}.name-bank-add-btn{width:30px;height:30px;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;color:#cd43ff;font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.name-bank-add-btn:hover:not(:disabled){background:#cd43ff26;border-color:#cd43ff}.name-bank-add-btn:disabled{opacity:.3;cursor:not-allowed}.name-bank-controls .alphabet-filter{margin-bottom:0;gap:2px}.name-bank-controls .alphabet-filter .alphabet-letter{padding:2px 5px;font-size:11px}.name-bank-names-list{flex:1;overflow-y:auto;padding-top:4px}.name-bank-empty{font-family:var(--font-primary);font-size:12px;color:#ffffff40;font-style:italic}.name-bank-letter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:4px 8px}.name-bank-letter-column{min-width:0}.name-bank-letter-header{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#cd43ff80;text-transform:uppercase;border-bottom:1px solid rgba(205,67,255,.08);padding-bottom:2px;margin-bottom:4px}.name-bank-single-letter{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.name-bank-name-item{display:flex;align-items:center;justify-content:space-between;padding:2px 4px;border-radius:4px;transition:background .15s ease}.name-bank-name-item:hover{background:#cd43ff0f}.name-bank-name-text{font-family:var(--font-primary);font-size:11px;font-weight:400;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.name-bank-name-item.available .name-bank-name-text{color:#fffc}.name-bank-name-item.used .name-bank-name-text{color:#ff43cd99}.name-bank-name-remove{display:none;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:none;border-radius:50%;background:transparent;color:#ff43cd99;font-size:11px;cursor:pointer;transition:all .15s ease;line-height:1;flex-shrink:0}.name-bank-name-item:hover .name-bank-name-remove{display:flex}.name-bank-name-remove:hover{background:#ff43cd26;color:#ff43cd}.name-bank-names-list::-webkit-scrollbar{width:4px}.name-bank-names-list::-webkit-scrollbar-track{background:transparent}.name-bank-names-list::-webkit-scrollbar-thumb{background:#cd43ff26;border-radius:4px}.name-bank-names-list::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.name-bank-body::-webkit-scrollbar{width:5px}.name-bank-body::-webkit-scrollbar-track{background:transparent}.name-bank-body::-webkit-scrollbar-thumb{background:#cd43ff26;border-radius:4px}.name-bank-body::-webkit-scrollbar-thumb:hover{background:#cd43ff4d}.name-bank-footer{display:flex;justify-content:flex-end;padding:12px 24px 16px;border-top:1px solid rgba(205,67,255,.15);flex-shrink:0}.name-bank-suggest-btn{background:#000000e6;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:8px 16px;font-family:var(--font-primary);font-size:13px;font-weight:400;color:#cd43ff;cursor:pointer;transition:all .2s ease}.name-bank-suggest-btn:hover:not(:disabled){background:#cd43ff1a;border-color:#cd43ff}.name-bank-suggest-btn:disabled{opacity:.5;cursor:wait}.error-banner{background:#ff00001a;border:1px solid rgba(255,0,0,.3);border-radius:8px;padding:12px 16px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-message{color:#ff6b6b;font-size:14px}.error-dismiss{background:none;border:none;color:#ffffff80;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.error-dismiss:hover{color:#fffc}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#fff9}.saving-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.saving-overlay .unified-loading-state{min-height:auto;padding:40px;background:#140a1ee6;border:1px solid rgba(205,67,255,.3);border-radius:12px}.header-actions{display:flex;gap:10px;align-items:center}.add-level-btn,.leave-game-btn{min-width:120px}.section-tabs{display:flex;gap:0;margin-bottom:2rem;background:#0006;border-radius:12px;padding:4px;border:1px solid rgba(205,67,255,.2)}.section-tab{flex:1;padding:12px 24px;background:transparent;border:none;color:#cd43ff99;font-family:var(--font-primary);font-size:1rem;cursor:pointer;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.section-tab:hover{background:#cd43ff1a;color:#cd43ffcc}.section-tab.active{background:#cd43ff33;color:#cd43ff;box-shadow:0 0 15px #cd43ff4d}.tab-label{font-weight:400;font-size:1.1rem}.tab-full{font-size:.9rem;opacity:.8}.add-level-form{background:#0009;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:1.5rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.add-level-form h3{color:#cd43ff;font-family:var(--font-primary);margin-bottom:1rem}.form-input,.form-textarea,.form-select{width:100%;padding:10px 12px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;color:#ffffffe6;font-size:.95rem;margin-bottom:1rem;transition:all .3s ease;outline:none}.form-input:focus,.form-textarea:focus,.form-select:focus{background:#cd43ff1a;border-color:#cd43ff80;box-shadow:0 0 10px #cd43ff33}.form-textarea{resize:vertical;min-height:80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.form-actions{display:flex;flex-direction:column!important;align-items:center;gap:1rem}.game-levels{display:flex;flex-direction:column;gap:1rem;width:100%;align-items:center;padding:1rem 2rem 0}.level-card{background:#0009;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:.75rem 1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;cursor:pointer;width:100%}.level-card:hover{background:#cd43ff0d;border-color:#cd43ff66;transform:translateY(-2px);box-shadow:0 4px 20px #cd43ff33}.level-card.campaign{border-left:4px solid #FF88FF}.level-card.adventure{border-left:4px solid #E066FF}.level-card.session{border-left:4px solid #CD43FF}.level-card.top{border-left:4px solid #FF88FF}.level-card.medium{border-left:4px solid #E066FF}.level-card.bottom{border-left:4px solid #CD43FF}.level-card.clickable:hover{background:#cd43ff1a;transform:translateY(-3px);box-shadow:0 6px 24px #cd43ff4d}.level-card.clickable:active{transform:translateY(-1px)}.level-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:.5rem}.level-info{flex:1}.level-top-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:flex-start;gap:1rem}.level-top-row .level-name{grid-column:1;justify-self:start}.level-top-row .session-status-indicators{grid-column:2;justify-self:center}.level-top-row .level-right-section{grid-column:3;justify-self:end}.level-right-section{display:flex;flex-direction:column;gap:.25rem;align-items:flex-end}.level-stats-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:.5rem;flex-shrink:0}.level-stats-left{display:flex;flex-direction:row;align-items:center;gap:1.5rem;color:#cd43ff99;font-size:.85rem;flex-shrink:0}.level-name{color:#cd43ff;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;margin:0;display:flex;align-items:center;gap:.5rem}.collapse-btn{background:none;border:none;color:#cd43ffb3;font-size:.8rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.collapse-btn:hover{color:#cd43ff;transform:scale(1.2)}.lock-icon{font-size:.9rem;opacity:.7}.level-bottom-row{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.level-bottom-row.three-column{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem}.level-bottom-row.three-column .bottom-left{justify-self:start}.level-bottom-row.three-column .bottom-center{justify-self:center}.level-bottom-row.three-column .bottom-right{justify-self:end}.level-description{color:#ffffffb3;font-size:.9rem;margin:0;flex:1}.level-controls{display:flex;gap:.5rem;margin-top:.25rem}.reorder-btn{width:32px;height:32px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:1rem}.reorder-btn:hover:not(:disabled){background:#cd43ff33;transform:scale(1.1)}.reorder-btn:disabled{opacity:.3;cursor:not-allowed}.settings-btn{width:32px;height:32px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#cd43ff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:16px;padding:0}.settings-btn:hover{background:#cd43ff33;transform:scale(1.1)}.nested-levels-list{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:.75rem;max-height:200px;overflow-y:auto}.nested-level-item{padding:.5rem;background:#cd43ff1a;border-radius:4px;margin-bottom:.5rem;color:#cd43ff}.nested-level-item:last-child{margin-bottom:0}.level-stats{display:flex;flex-direction:row;align-items:center;gap:1.5rem;color:#cd43ff99;font-size:.85rem;flex-shrink:0}.stat{display:flex;flex-direction:row;align-items:center;gap:.5rem;color:#cd43ff99;flex-shrink:0;white-space:nowrap}.stat svg{opacity:.7}.form-group label{display:block;color:#cd43ffcc;font-size:.9rem;margin-bottom:.5rem;font-weight:400}.pc-selection-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.pc-selection-row .form-select{flex:1;margin-bottom:0}.form-input.disabled{background-color:#8080801a!important;color:#fff6!important;cursor:not-allowed!important;border-color:#cd43ff1a!important}@media (max-width: 768px){.section-tab{flex-direction:column;padding:8px 12px}.tab-full{display:none}.level-header{flex-direction:column;gap:1rem}.level-controls{align-self:flex-end}}.modal-content{background:transparent;border:2px solid rgba(205,67,255,.3);border-radius:12px;width:90%;max-width:600px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 40px #cd43ff33;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:1.5rem;border-bottom:1px solid rgba(205,67,255,.2);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#cd43ff1a,#9c27d41a)}.modal-header h2{margin:0;font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5)}.close-btn{background:transparent;border:none;color:#cd43ff;font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;border-radius:4px}.close-btn:hover{background:#cd43ff33;transform:scale(1.1)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.form-group label{display:block;margin-bottom:.5rem;color:#cd43ff;font-family:var(--font-primary);font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#fff;font-family:inherit;font-size:.95rem;transition:all .2s ease}.form-group select{padding-right:3rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#cd43ff;background:#cd43ff1a;box-shadow:0 0 15px #cd43ff33}.form-group textarea{resize:vertical;min-height:80px}.form-group select{cursor:pointer}.thread-setting-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.thread-setting-row label{color:#cd43ff;font-family:var(--font-primary);font-size:.9rem;text-transform:uppercase;letter-spacing:1px;margin:0}.thread-setting-row .toggle-container,.thread-setting-row .checkbox-wrapper{margin:0}.chronology-section{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;margin-bottom:1rem}.chronology-info{margin-bottom:.75rem}.chronology-index{font-family:var(--font-primary);font-size:1rem;color:#cd43ff;font-weight:400}.chronology-error{color:#f44;font-size:.85rem;margin-top:.5rem;margin-bottom:0}.chronology-hint{color:#999;font-size:.8rem;font-style:normal;margin-top:.5rem;margin-bottom:0}.modal-footer{padding:1.5rem;border-top:1px solid rgba(205,67,255,.2);display:flex;gap:1rem;justify-content:space-between;background:linear-gradient(90deg,#cd43ff0d,#9c27d40d)}.members-view{width:100%;padding:0 2rem}.members-list{display:flex;flex-direction:column;gap:12px;padding:1rem;width:100%;align-items:center}.member-item{display:flex;align-items:center;padding:16px;background:#cd43ff0d;border:.25px solid rgba(205,67,255,.2);border-radius:12px;transition:all .2s ease;position:relative;width:100%}.member-section{flex:1;display:flex;align-items:center}.member-section-left{gap:16px;justify-content:flex-start}.member-section-center{justify-content:center}.member-section-right{gap:8px;justify-content:flex-end}.member-item:hover{background:#cd43ff1a;border-color:#cd43ff66;transform:translate(4px)}.member-rank{font-family:var(--font-primary);color:#cd43ff99;font-size:16px;font-weight:400;min-width:32px;text-align:right}.member-avatar{flex-shrink:0}.member-info-wrapper{display:flex;flex-direction:column;gap:4px}.member-user-info{flex:1}.member-character-name{font-family:var(--font-primary);color:#cd43ffb3;font-size:14px;font-style:normal;margin-top:4px}.member-creator-label{font-family:var(--font-primary);color:#cd43ffcc;font-size:18px;font-weight:400}.member-pc-avatars{display:flex;gap:8px;align-items:center}.member-pc-avatar{width:40px;height:40px;border-radius:50%;border:2px solid rgba(205,67,255,.3);object-fit:cover;transition:all .2s ease}.member-pc-avatar:hover{border-color:#cd43ff99;transform:scale(1.1)}.member-herodotus-section{flex-shrink:0;display:flex;align-items:center;margin-left:12px}.pending-pc-indicator{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px}.pc-status-label{font-size:11px;font-weight:400;padding:2px 8px;border-radius:4px;font-family:var(--font-primary);letter-spacing:.5px}.pc-status-label.pending{background:#cd43ff26;color:#cd43ff;border:1px solid rgba(205,67,255,.5)}.pc-status-label.rejected{background:#ff43cd26;color:#ff43cd;border:1px solid rgba(255,67,205,.5)}.spectator-pc-actions{display:flex;gap:8px;margin-top:8px}.spectator-pc-actions button{font-size:10px;padding:6px 12px;height:auto}.members-view .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.member-info-wrapper .styled-display-name-with-tooltip{position:relative;cursor:pointer;display:inline-block}.member-info-wrapper .styled-display-name-with-tooltip .gm-rank-tooltip{visibility:hidden;position:absolute;bottom:calc(100% + 8px);left:0;background:#000000f2;color:#fffffff2;padding:8px 12px;border-radius:6px;border:1px solid rgba(205,67,255,.4);font-size:.85rem;white-space:nowrap;z-index:10000;pointer-events:none;box-shadow:0 4px 12px #00000080}.member-info-wrapper .styled-display-name-with-tooltip:hover .gm-rank-tooltip{visibility:visible}@media (max-width: 600px){.member-item{padding:12px;gap:12px}.creator-item{padding-left:36px}.member-rank{font-size:14px;min-width:24px}.member-character-name{font-size:12px}}.cast-view{padding:1rem 2rem;width:100%}.cast-content{display:flex;flex-direction:column;gap:2rem;width:100%;align-items:center}.character-card-row{display:flex;align-items:center;gap:20px;padding:16px;background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:12px;margin-bottom:12px;transition:all .3s ease;width:100%}.character-card-row.clickable{cursor:pointer}.character-card-row.clickable:hover{background:#cd43ff0d;border-color:#cd43ff66;transform:translateY(-2px)}.character-avatar-circle{flex-shrink:0;width:80px;height:80px;border-radius:50%;overflow:hidden;border:2px solid rgba(205,67,255,.3);background:#0009}.character-avatar-circle img{width:100%;height:100%;object-fit:cover}.character-details{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0;justify-content:center;overflow:visible}.character-details .character-name{font-family:var(--font-primary);font-size:18px;font-weight:400;color:#cd43ff;letter-spacing:.5px;line-height:1.2;text-align:left;display:flex;align-items:center;gap:8px;min-width:0}.character-details .character-name .character-name-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.character-details .character-name .mvp-badge-inline{flex-shrink:0;margin-left:auto}.character-details .character-name.dead-character{color:#ff6b9d}.character-details .character-intro{font-size:14px;color:#ffffffb3;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;text-align:left}.character-player-info{flex:1;min-width:0;display:flex;align-items:center;align-self:stretch;gap:12px;padding-left:20px;border-left:1px solid rgba(205,67,255,.2);overflow:visible}.player-avatar-normal{width:48px;height:48px;border-radius:50%}.player-display-name{display:flex;flex-direction:column;gap:4px}.npc-label{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#cd43ff;letter-spacing:1px;opacity:.8}.npc-label-official{color:#ff43cd;font-weight:500;opacity:1;text-shadow:0 0 8px rgba(255,67,205,.3)}.assignment-stack{display:flex;flex-direction:column;align-items:stretch;gap:4px;width:100%;overflow:visible}.character-player-info .user-profile-display{max-width:140px;overflow:visible}.character-player-info .user-profile-display-name,.character-player-info .styled-display-name,.character-player-info .username{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.creator-controller-info{display:flex;flex-direction:column;gap:2px}.attribution-line{font-family:var(--font-primary);font-size:10px;font-weight:400;color:#ffffff80;letter-spacing:.3px;white-space:nowrap}.attribution-name{color:#cd43ffcc}.character-created-by{display:flex;align-items:center;padding:0 12px;border-left:1px solid rgba(205,67,255,.15)}.created-by-label{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#ffffff80;letter-spacing:.5px;white-space:nowrap}.character-metadata-section{flex:1;display:flex;align-items:center;padding-left:20px;border-left:1px solid rgba(205,67,255,.2);min-width:0}.character-assignment-section{min-width:100px;display:flex;align-items:center;justify-content:flex-end;padding-left:20px;border-left:1px solid rgba(205,67,255,.2)}.pending-characters-section{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;padding:1.5rem}.pending-characters-section h3{font-family:var(--font-primary);color:#cd43ff;font-size:20px;margin:0 0 1rem;letter-spacing:.5px}.pending-character-card{display:flex;align-items:center;gap:16px;padding:16px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;margin-bottom:12px;transition:all .2s ease}.pending-character-card:last-child{margin-bottom:0}.pending-character-card:hover{background:#00000080;border-color:#cd43ff66}.pending-character-card .pending-pc-avatar{width:64px;height:64px;border-radius:8px;object-fit:cover;border:2px solid rgba(205,67,255,.3)}.pending-pc-info{flex:1;display:flex;flex-direction:column;gap:4px}.pending-pc-name{font-family:var(--font-primary);color:#cd43ff;font-size:18px;font-weight:400}.pending-pc-user{color:#ffffffb3;font-size:14px}.pending-pc-date{color:#ffffff80;font-size:12px;font-style:normal}.pending-pc-actions{display:flex;gap:8px}.characters-list{display:flex;flex-direction:column;gap:12px;width:100%}.character-item{display:flex;align-items:center;gap:16px;padding:16px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;transition:all .2s ease}.character-item:hover{background:#cd43ff1a;border-color:#cd43ff66;transform:translate(4px)}.character-item .character-avatar{width:56px;height:56px;border-radius:8px;object-fit:cover;border:2px solid rgba(205,67,255,.3)}.character-info{flex:1;display:flex;flex-direction:column;gap:4px}.character-info .character-name{font-family:var(--font-primary);color:#cd43ff;font-size:18px;font-weight:400}.character-info .character-user{color:#ffffffb3;font-size:14px}.import-game-btn.fantamaster-button.primary{animation:none!important;box-shadow:none!important}.view-transcripts-btn.fantamaster-button.primary{animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 10px #cd43ff80,0 0 20px #cd43ff4d}50%{box-shadow:0 0 20px #cd43ffcc,0 0 30px #cd43ff80}}.character-buttons-column{display:flex;flex-direction:column;align-items:stretch;gap:6px;flex-shrink:0;width:110px}.character-buttons-column .character-sheet-button-section{padding:0;min-width:auto}.character-buttons-column .character-sheet-btn{width:100%;justify-content:center}.character-buttons-column .metadata-history-btn{justify-content:center;padding:10px 16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ff;font-family:inherit;font-size:14px;font-weight:400;letter-spacing:normal;text-transform:uppercase}.character-buttons-column .metadata-history-btn:hover{background:#cd43ff40;border-color:#cd43ff;box-shadow:0 0 8px #cd43ff4d;transform:translateY(-1px)}.character-sheet-button-section{display:flex;align-items:center;justify-content:flex-end;padding:0 12px;min-width:100px;flex-shrink:0}.character-sheet-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#cd43ff26,#cd43ff0d);border:1px solid rgba(205,67,255,.4);border-radius:8px;color:#cd43ff;font-size:14px;font-weight:400;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.character-sheet-btn:hover{background:linear-gradient(135deg,#cd43ff40,#cd43ff26);border-color:#cd43ff;transform:translateY(-2px);box-shadow:0 4px 12px #cd43ff4d}.character-sheet-btn:active{transform:translateY(0);box-shadow:0 2px 6px #cd43ff33}.character-sheet-btn svg{flex-shrink:0}.grant-points-btn{display:flex;align-items:center;justify-content:center;padding:10px 16px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#cd43ff;font-size:13px;font-weight:400;cursor:pointer;transition:all .2s ease;white-space:nowrap}.grant-points-btn:hover{background:#cd43ff40;border-color:#cd43ff;box-shadow:0 0 8px #cd43ff4d;transform:translateY(-1px)}.grant-points-btn:active{transform:translateY(0)}.cast-progression-badge{display:flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:20px;font-size:11px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:1px;font-weight:400;cursor:pointer;transition:all .3s ease;border:1px solid}.cast-progression-badge.legit{background:#cd43ff1f;color:#cd43ff;border-color:#cd43ff4d}.cast-progression-badge.legit:hover{background:#cd43ff40;border-color:#cd43ff;box-shadow:0 0 8px #cd43ff4d}.cast-progression-badge.boosted{background:#ff43cd1f;color:#ff43cd;border-color:#ff43cd4d}.cast-progression-badge.boosted:hover{background:#ff43cd40;border-color:#ff43cd;box-shadow:0 0 8px #ff43cd4d}.character-herodotus-section{display:flex;align-items:center;justify-content:center;padding:0 12px}.herodotus-view{width:100%;min-height:60vh;padding:24px}.herodotus-view>.geography-section,.herodotus-view>.lore-section{width:100%;min-height:50vh}.herodotus-empty-state{max-width:600px;text-align:center;background:#7c3aed0d;border:2px dashed rgba(124,58,237,.3);border-radius:16px;padding:60px 40px;animation:fadeInUp .5s ease;display:flex;flex-direction:column;align-items:center}.herodotus-empty-icon{font-size:72px;margin-bottom:24px;opacity:.7;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.herodotus-empty-state h3{color:#e9d5ff;font-size:28px;font-weight:400;margin:0 0 16px}.herodotus-empty-state p{color:#c4b5fd;font-size:16px;line-height:1.6;margin:0 0 32px}.analyze-campaign-btn{background:linear-gradient(135deg,#7c3aed,#5b21b6);border:2px solid rgba(124,58,237,.5);color:#f3e8ff;font-size:16px;font-weight:400;padding:14px 32px;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #7c3aed33}.analyze-campaign-btn:hover{background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-color:#a78bfa;box-shadow:0 6px 16px #7c3aed66;transform:translateY(-2px)}.analyze-campaign-btn:active{transform:translateY(0);box-shadow:0 2px 8px #7c3aed4d}.matrix-modal-container{background:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(205,67,255,.3);border-radius:12px;max-width:1200px;width:95%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #cd43ff33;overflow:hidden}.matrix-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(205,67,255,.2)}.matrix-modal-header h2{font-size:20px;font-weight:400;color:#cd43ff;margin:0;font-family:var(--font-primary)}.matrix-modal-content{flex:1;overflow-y:auto;padding:24px}.system-navigator{display:flex;flex-direction:column;gap:.75rem;margin-bottom:0}.system-navigator .main-tabs{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;position:relative;overflow:visible}.system-navigator .main-tabs-left{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.system-navigator .main-tabs-center{display:flex;align-items:center;justify-content:center;gap:.5rem;flex:0 0 auto}.system-navigator .main-tabs-right{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex:1;min-width:0}.system-navigator .main-tab{background:transparent;border:none;border-bottom:1px solid transparent;padding:.5rem 1.5rem;color:#cd43ff80;font-family:var(--font-primary);font-size:.95rem;font-weight:400;cursor:pointer;transition:all .2s ease;letter-spacing:.5px;white-space:nowrap}.system-navigator .main-tab:hover{color:#cd43ffcc;border-bottom-color:#cd43ff4d}.system-navigator .main-tab.active{color:#cd43ff;border-bottom-color:#cd43ff}.system-welcome-tab{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px;min-height:400px}.system-welcome-tab .settings-content,.system-welcome-tab .system-welcome-loading{width:100%;align-self:stretch}.system-welcome-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.system-welcome-tab .settings-content{display:flex;flex-direction:column;gap:12px}.system-welcome-tab .settings-section{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:24px}.system-welcome-tab .section-title{font-family:var(--font-primary);font-size:20px;font-weight:400;color:#cd43ff;margin:0 0 20px;letter-spacing:.5px}.system-welcome-tab .info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1200px){.system-welcome-tab .info-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.system-welcome-tab .info-grid{grid-template-columns:1fr}}.system-welcome-tab .info-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;min-height:80px;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:6px;text-align:center}.system-welcome-tab .info-label{font-family:var(--font-primary);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:#cd43ffb3}.system-welcome-tab .info-value{font-family:var(--font-primary);font-size:14px;font-weight:500;color:#cd43ff}.system-welcome-tab .info-value.styled-display-name-with-tooltip{overflow:visible}.system-welcome-tab .about-section{padding:12px 20px}.system-welcome-tab .about-section .section-title{margin-bottom:8px}.system-welcome-tab .about-content{padding:10px 14px;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:6px}.system-welcome-tab .about-text{font-family:var(--font-primary);font-size:14px;line-height:1.8;color:#ffffffe6;margin:0;white-space:pre-wrap}.system-welcome-tab .specific-topics-list{display:flex;flex-direction:column;gap:12px}.system-welcome-tab .specific-topic{padding:16px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:6px}.system-welcome-tab .specific-topic.creator-only{border-color:#cd43ff80}.system-welcome-tab .creator-badge{display:inline-block;font-family:var(--font-primary);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:#cd43ff;background:#cd43ff26;padding:2px 8px;border-radius:4px;margin-bottom:8px}.system-welcome-tab .topic-title{font-family:var(--font-primary);font-size:16px;font-weight:400;color:#cd43ff;margin:0 0 8px}.system-welcome-tab .topic-content{font-family:var(--font-primary);font-size:14px;line-height:1.6;color:#fffc;margin:0;white-space:pre-wrap}.system-archives-tab{display:flex;flex-direction:column;gap:16px;padding:16px;min-height:400px}.archives-loading,.archives-error{display:flex;align-items:center;justify-content:center;min-height:300px}.archives-error p{color:#ff43cd}.archives-toolbar{display:flex;justify-content:flex-end;padding:0 4px}.archives-list{display:flex;flex-direction:column;gap:8px}.archive-item{display:flex;flex-direction:column;gap:4px}.archive-card{background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px;transition:all .2s ease}.archive-card:hover{background:#00000080;border-color:#cd43ff66}.archive-card.selected{border-color:#cd43ff99;background:#cd43ff14}.archive-header{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer}.expand-btn{background:none;border:none;color:#cd43ff99;cursor:pointer;font-size:12px;padding:4px;flex-shrink:0}.archive-info{flex:1;min-width:0}.archive-name{font-family:var(--font-primary);font-size:15px;font-weight:400;color:#cd43ff;margin:0}.archive-description{font-family:var(--font-primary);font-size:13px;color:#ffffff80;margin:4px 0 0;line-height:1.4}.archive-meta{font-family:var(--font-primary);font-size:12px;color:#cd43ff80;flex-shrink:0}.add-child-btn{background:none;border:1px solid rgba(205,67,255,.2);color:#cd43ff99;border-radius:4px;width:24px;height:24px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.add-child-btn:hover{border-color:#cd43ff80;color:#cd43ff}.archive-children{padding-left:8px;display:flex;flex-direction:column;gap:4px}.add-archive-form{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:20px}.add-archive-form h3{font-family:var(--font-primary);font-size:16px;font-weight:400;color:#cd43ff;margin:0 0 16px}.add-archive-form .form-input{width:100%;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:10px 14px;color:#ffffffe6;font-family:var(--font-primary);font-size:14px;font-weight:400;margin-bottom:12px;box-sizing:border-box}.add-archive-form .form-textarea{width:100%;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:10px 14px;color:#ffffffe6;font-family:var(--font-primary);font-size:14px;font-weight:400;resize:vertical;margin-bottom:12px;box-sizing:border-box}.form-actions{display:flex;gap:8px;justify-content:flex-end}.archive-details{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;padding:20px}.archive-details h2{font-family:var(--font-primary);font-size:18px;font-weight:400;color:#cd43ff;margin:0 0 12px}.archive-detail-desc{color:#ffffffb3;font-size:14px;line-height:1.6;margin:0 0 16px}.archive-actions{display:flex;gap:8px;justify-content:flex-end}.system-character-sheets-tab{display:flex;flex-direction:column;gap:16px;padding:16px;min-height:400px}.sheets-loading,.sheets-error{display:flex;align-items:center;justify-content:center;min-height:300px}.sheets-error p{color:#ff43cd}.sheet-card-wrapper{cursor:pointer}.sheet-simple-card{background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:16px;transition:all .2s ease}.sheet-simple-card:hover{background:#00000080;border-color:#cd43ff66;transform:translateY(-2px)}.sheet-card-name{font-family:var(--font-primary);font-size:15px;font-weight:400;color:#cd43ff;margin:0 0 8px}.sheet-card-desc{font-family:var(--font-primary);font-size:13px;color:#fff9;margin:0 0 12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sheet-card-meta{display:flex;gap:12px;align-items:center;font-family:var(--font-primary);font-size:12px;color:#fff6}.sheet-owner-badge{color:#cd43ff;background:#cd43ff26;padding:2px 8px;border-radius:4px;font-size:10px;text-transform:uppercase;letter-spacing:.5px}.schema-editor{padding:10px 12px;margin-bottom:12px;background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:6px}.schema-editor-header{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:4px 0}.schema-chevron{font-size:10px;opacity:.6;transition:transform .2s ease}.schema-title{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#cd43ff99;text-transform:uppercase;letter-spacing:.5px}.schema-count{font-family:var(--font-primary);font-size:10px;color:#ffffff4d}.schema-editor-body{padding-top:.75rem;border-top:1px solid rgba(205,67,255,.1);margin-top:.5rem}.schema-hint{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#ffffff59;margin:0 0 .75rem;line-height:1.4}.schema-column-row{margin-bottom:.5rem;background:#0000004d;border:1px solid rgba(205,67,255,.1);border-radius:6px;overflow:hidden;transition:border-color .2s ease}.schema-column-row:hover{border-color:#cd43ff40}.schema-column-main{display:flex;gap:.5rem;align-items:center;padding:.5rem}.schema-reorder{display:flex;flex-direction:column;gap:1px}.schema-reorder-btn{background:transparent;border:none;color:#fff3;cursor:pointer;padding:0 4px;font-size:8px;line-height:1;transition:color .2s ease}.schema-reorder-btn:hover:not(:disabled){color:#cd43ff}.schema-reorder-btn:disabled{opacity:.2;cursor:not-allowed}.schema-name-input{flex:1;font-size:12px!important}.schema-type-dropdown{width:120px;flex-shrink:0}.schema-required-btn{background:transparent;border:none;color:#fff3;cursor:pointer;padding:4px;font-size:14px;transition:all .2s ease;border-radius:4px}.schema-required-btn:hover{color:#ffd70099}.schema-required-btn.active{color:gold}.schema-options-btn{background:transparent;border:none;color:#fff3;cursor:pointer;padding:4px;font-size:13px;transition:all .2s ease;border-radius:4px}.schema-options-btn:hover{color:#cd43ff;background:#cd43ff1a}.schema-options-btn.active{color:#cd43ff;background:#cd43ff26}.schema-options-editor{padding:.5rem .75rem .75rem;background:#0003;border-top:1px solid rgba(205,67,255,.08)}.schema-options-label{font-family:var(--font-primary);font-size:10px;font-weight:400;color:#fff6;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:6px}.schema-options-row{display:flex;gap:.5rem;align-items:center}.schema-options-row .form-input{flex:1;font-size:12px!important}.schema-options-preview{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.schema-option-pill{font-family:var(--font-primary);font-size:10px;font-weight:400;padding:2px 8px;border-radius:10px;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);color:#ffffffb3}.schema-key-display{padding:2px .75rem 6px;font-family:var(--font-primary);font-size:9px;color:#fff3}.schema-key-display code{font-family:Courier New,monospace;color:#cd43ff66;font-size:9px}.schema-actions{display:flex;gap:.5rem;margin-top:.75rem}.system-catalog-manager{display:flex;gap:16px;padding:16px;min-height:400px}.catalog-type-list{width:200px;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.catalog-section-title{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#cd43ffb3;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px;padding:0 8px}.catalog-type-item{display:flex;align-items:center;border-radius:6px;transition:all .2s ease}.catalog-type-item:hover{background:#cd43ff14}.catalog-type-item.active{background:#cd43ff1f}.catalog-type-btn{flex:1;background:transparent;border:none;padding:10px 12px;color:#ffffff80;font-family:var(--font-primary);font-size:14px;font-weight:400;cursor:pointer;text-align:left;display:flex;align-items:center;gap:8px}.catalog-type-item:hover .catalog-type-btn{color:#fffc}.catalog-type-item.active .catalog-type-btn{color:#cd43ff}.catalog-entry-count{font-size:11px;color:#ffffff40;background:#ffffff0f;border-radius:10px;padding:1px 7px;min-width:18px;text-align:center}.catalog-delete-btn{background:transparent;border:none;color:#ffffff26;cursor:pointer;padding:4px 8px;font-size:12px;border-radius:4px;transition:all .2s ease;opacity:0}.catalog-type-item:hover .catalog-delete-btn{opacity:1}.catalog-delete-btn:hover{color:#ff43cd;background:#ff43cd1a}.catalog-add-form{display:flex;flex-direction:column;gap:6px;padding:8px;margin-top:4px}.catalog-add-input{background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:4px;padding:8px 10px;color:#ffffffe6;font-family:var(--font-primary);font-size:13px;font-weight:400;outline:none;transition:border-color .2s ease}.catalog-add-input:focus{border-color:#cd43ff66}.catalog-add-actions{display:flex;gap:6px}.catalog-add-btn{background:transparent;border:1px dashed rgba(205,67,255,.2);border-radius:6px;padding:10px 12px;color:#cd43ff80;font-family:var(--font-primary);font-size:13px;font-weight:400;cursor:pointer;text-align:left;transition:all .2s ease;margin-top:4px}.catalog-add-btn:hover{border-color:#cd43ff66;color:#cd43ff;background:#cd43ff0d}.catalog-entries-panel{flex:1;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px;padding:16px}.catalog-entries-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.catalog-entries-title{font-family:var(--font-primary);font-size:16px;font-weight:400;color:#cd43ff;margin:0;text-transform:capitalize}.catalog-fieldkey-row{padding:10px 12px;margin-bottom:12px;background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:6px}.catalog-fieldkey-label{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#cd43ff99;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:6px}.catalog-fieldkey-input-row{display:flex;gap:8px;align-items:center}.catalog-fieldkey-input{flex:1;font-family:Courier New,monospace!important;font-size:13px!important;letter-spacing:.3px}.catalog-fieldkey-hint{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#ffffff4d;margin:6px 0 0;line-height:1.4}.catalog-entry-form{display:flex;flex-direction:column;gap:8px;padding:12px;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:6px;margin-bottom:16px}.catalog-entry-form .form-input,.catalog-entry-form .form-textarea{background:#0006;border:1px solid rgba(205,67,255,.15);border-radius:4px;padding:8px 10px;color:#ffffffe6;font-family:var(--font-primary);font-size:13px;font-weight:400;outline:none;transition:border-color .2s ease}.catalog-entry-form .form-input:focus,.catalog-entry-form .form-textarea:focus{border-color:#cd43ff66}.catalog-entry-form .form-actions{display:flex;gap:8px;justify-content:flex-end}.catalog-entries-list{display:flex;flex-direction:column;gap:6px}.catalog-entry-card{display:flex;align-items:flex-start;justify-content:space-between;padding:10px 12px;background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:6px;transition:border-color .2s ease}.catalog-entry-card:hover{border-color:#cd43ff40}.catalog-entry-info{flex:1;min-width:0}.catalog-entry-name{font-family:var(--font-primary);font-size:14px;font-weight:400;color:#ffffffe6}.catalog-entry-category{font-family:var(--font-primary);font-size:11px;font-weight:400;color:#cd43ff99;margin-left:8px;text-transform:uppercase;letter-spacing:.5px}.catalog-entry-desc{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#fff6;margin:4px 0 0;line-height:1.4}.catalog-entry-actions{display:flex;gap:4px;flex-shrink:0;margin-left:12px}.entry-action-btn{background:transparent;border:none;color:#ffffff4d;cursor:pointer;padding:4px 6px;font-size:14px;border-radius:4px;transition:all .2s ease}.entry-action-btn:hover{color:#cd43ff;background:#cd43ff1a}.entry-action-btn.danger:hover{color:#ff43cd;background:#ff43cd1a}.xpa-designer{display:flex;flex-direction:column;gap:1.5rem;padding:1rem 0}.xpa-designer-header{display:flex;align-items:center;gap:.75rem}.xpa-designer-title{font-family:var(--font-primary);font-size:1.25rem;font-weight:300;color:#cd43ff;margin:0;letter-spacing:.5px}.xpa-dirty-dot{width:8px;height:8px;border-radius:50%;background:#cd43ff;animation:xpa-pulse 1.5s infinite}@keyframes xpa-pulse{0%,to{opacity:1}50%{opacity:.4}}.xpa-settings{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:#cd43ff08;border:1px solid rgba(205,67,255,.1);border-radius:8px}.xpa-form-group{display:flex;flex-direction:column;gap:.375rem}.xpa-form-label{color:#cd43ff;text-transform:uppercase;font-size:.75rem;letter-spacing:.5px;font-family:var(--font-primary);font-weight:300}.xpa-form-input{background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:6px;padding:.625rem;color:#ffffffe6;font-family:var(--font-primary);font-size:.875rem;font-weight:300;transition:border-color .2s}.xpa-form-input:focus{outline:none;border-color:#cd43ff}.xpa-form-input::placeholder{color:#ffffff4d}.xpa-textarea{resize:vertical;min-height:3rem}.xpa-form-hint{font-size:.7rem;color:#fff6;font-family:var(--font-primary);font-weight:300}.xpa-formula-input{font-family:Courier New,monospace;font-size:.8rem}.xpa-config-row{display:flex;gap:1rem;flex-wrap:wrap}.xpa-config-row>.xpa-form-group{flex:1;min-width:120px}.xpa-category-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:0;transition:border-color .2s}.xpa-category-card:hover,.xpa-category-card.expanded{border-color:#cd43ff66}.xpa-field-card{background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:6px;transition:border-color .2s}.xpa-field-card.expanded{border-color:#cd43ff4d}.xpa-card-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none}.xpa-card-title{flex:1;font-family:var(--font-primary);font-size:.9rem;font-weight:300;color:#ffffffe6}.xpa-card-body{display:flex;flex-direction:column;gap:1rem;padding:0 1rem 1rem}.xpa-expand-chevron{transition:transform .2s;color:#ffffff80;flex-shrink:0}.xpa-expand-chevron.expanded{transform:rotate(90deg)}.xpa-badge{background:#cd43ff26;color:#cd43ff;font-size:.7rem;padding:.15rem .5rem;border-radius:10px;font-family:var(--font-primary);font-weight:300}.xpa-badge-type{background:#cd43ff1a;color:#fff9;font-size:.65rem;padding:.1rem .4rem;border-radius:4px;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.3px}.xpa-card-actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}.xpa-icon-btn{background:none;border:none;color:#fff6;cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s}.xpa-icon-btn:hover:not(:disabled){color:#cd43ff;background:#cd43ff1a}.xpa-icon-btn:disabled{opacity:.3;cursor:default}.xpa-add-btn{background:transparent;border:1px dashed rgba(205,67,255,.3);color:#cd43ff;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-family:var(--font-primary);font-size:.8rem;font-weight:300;transition:border-color .2s,background .2s;width:100%;text-align:center}.xpa-add-btn:hover{border-color:#cd43ff;background:#cd43ff0d}.xpa-add-btn.primary{border-style:solid;background:#cd43ff1a}.xpa-add-btn.secondary{font-size:.75rem;padding:.375rem .75rem}.xpa-empty-state{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 2rem;text-align:center}.xpa-empty-title{font-family:var(--font-primary);font-size:1rem;color:#fff9;font-weight:300;margin:0}.xpa-empty-hint{font-family:var(--font-primary);font-size:.8rem;color:#fff6;font-weight:300;margin:0;max-width:400px}.xpa-categories-section,.xpa-modifiers-section{display:flex;flex-direction:column;gap:.75rem}.xpa-section-title{font-family:var(--font-primary);font-size:1rem;font-weight:300;color:#cd43ff;margin:0 0 .25rem;letter-spacing:.3px}.xpa-fields-list{display:flex;flex-direction:column;gap:.5rem}.xpa-field-config,.xpa-field-editor{display:flex;flex-direction:column;gap:.75rem}.xpa-lookup-table{display:flex;flex-direction:column;gap:.375rem}.xpa-table-header{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;padding:0 .25rem}.xpa-table-row{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:center}.xpa-row-actions{display:flex;align-items:center;gap:.125rem}.xpa-checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.xpa-checkbox-group input[type=checkbox]{accent-color:#CD43FF}.field-target-picker{display:flex;flex-direction:column;gap:1rem}.target-mode-selector{display:flex;flex-direction:row;gap:0}.target-mode-btn{background:transparent;border:none;padding:.75rem 1rem;color:#fff9;font-family:var(--font-primary);font-size:.85rem;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.target-mode-btn.active{color:#cd43ff;border-bottom-color:#cd43ff}.target-mode-btn:hover{color:#fffc;background:#cd43ff0d}.field-sections{display:flex;flex-direction:column;gap:1rem}.field-section{display:flex;flex-direction:column;gap:.5rem}.field-section-title{font-family:var(--font-primary);font-size:.8rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.field-checkboxes{display:flex;flex-wrap:wrap;gap:.5rem}.field-checkbox-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:4px;cursor:pointer;transition:all .2s;font-size:.85rem;color:#ffffffb3}.field-checkbox-item.checked{border-color:#cd43ff80;background:#cd43ff1a;color:#ffffffe6}.field-checkbox-item:hover{border-color:#cd43ff4d}.category-options{display:flex;flex-direction:column;gap:.5rem}.category-option{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:4px;cursor:pointer;transition:all .2s;color:#ffffffb3}.category-option:hover{border-color:#cd43ff4d}.category-option.selected{border-color:#cd43ff80;background:#cd43ff1a;color:#ffffffe6}.category-option-indicator{width:14px;height:14px;border-radius:50%;border:2px solid rgba(205,67,255,.4);background:transparent;flex-shrink:0;transition:all .2s ease;position:relative}.category-option.selected .category-option-indicator{border-color:#cd43ff;background:#cd43ff;box-shadow:inset 0 0 0 3px #000c}.group-input{width:100%;padding:.75rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#ffffffe6;font-family:var(--font-primary);box-sizing:border-box}.group-input:focus{outline:none;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.target-hint{font-size:.8rem;color:#fff6;margin:0}.advancement-editor{display:flex;flex-direction:column;gap:1.5rem;padding:.5rem 0}.advancement-mode-selector{display:flex;flex-direction:column;gap:.5rem}.advancement-empty-state{padding:2rem 1.5rem;text-align:center;color:var(--text-secondary, #a0a0a0);font-size:.9rem;background:#0003;border:1px dashed rgba(205,67,255,.2);border-radius:8px}.advancement-section{display:flex;flex-direction:column;gap:1rem}.advancement-section-title{font-family:var(--font-primary);font-size:.9rem;color:#cd43ff;text-transform:uppercase;letter-spacing:.5px;padding-bottom:.5rem;border-bottom:1px solid rgba(205,67,255,.15);margin:0}.advancement-subsection{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.advancement-subsection-title{font-family:var(--font-primary);font-size:.8rem;color:#cd43ffcc;text-transform:uppercase;letter-spacing:.4px;margin:0}.advancement-pool-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;overflow:hidden;transition:all .2s ease}.advancement-pool-card.expanded{border-color:#cd43ff66}.advancement-pool-card-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;cursor:pointer;transition:background .2s}.advancement-pool-card-header:hover{background:#cd43ff08}.advancement-pool-name{flex:1;font-family:var(--font-primary);font-size:.95rem;color:var(--text-primary, #e0e0e0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advancement-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:1px solid rgba(255,255,255,.2)}.advancement-pool-card-body{padding:0 1rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.advancement-expand-chevron{color:#ffffff80;transition:transform .2s;flex-shrink:0}.advancement-expand-chevron.expanded{transform:rotate(90deg)}.advancement-level-card{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:1rem}.advancement-level-header{display:flex;align-items:center;gap:.75rem}.advancement-level-number{font-family:var(--font-primary);font-size:.9rem;font-weight:400;color:#cd43ff;white-space:nowrap}.advancement-level-name-input{flex:1}.advancement-step-card{background:#00000040;border:1px solid rgba(205,67,255,.15);border-radius:6px;padding:.875rem;display:flex;flex-direction:column;gap:.75rem}.advancement-step-header{display:flex;align-items:center;gap:.75rem}.advancement-step-type-dropdown{flex-shrink:0}.advancement-step-type-dropdown .dropdown{min-width:120px}.advancement-step-name-input{flex:1}.advancement-step-config{display:flex;flex-direction:column;gap:.75rem;padding-top:.5rem;border-top:1px solid rgba(205,67,255,.1)}.advancement-cost-card{background:#0003;border:1px solid rgba(205,67,255,.12);border-radius:6px;padding:.75rem;display:flex;flex-direction:column;gap:.625rem}.advancement-prereq-row,.advancement-autogrant-row{display:flex;align-items:center;gap:.5rem;padding:.375rem 0}.advancement-options-list{display:flex;flex-direction:column;gap:.5rem}.advancement-option-card{background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:4px;padding:.625rem;display:flex;flex-direction:column;gap:.5rem}.advancement-condition-editor{display:flex;flex-direction:column;gap:.75rem}.advancement-info-text{font-size:.85rem;color:var(--text-secondary, #a0a0a0);padding:.75rem;background:#0003;border-radius:6px;border-left:3px solid rgba(205,67,255,.3);margin:0}.advancement-checkbox-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.advancement-repeating-config{padding-left:.5rem;border-left:2px solid rgba(205,67,255,.2);display:flex;flex-direction:column;gap:.75rem}.advancement-threshold-formula{padding:.75rem;background:#00000026;border:1px solid rgba(205,67,255,.12);border-radius:6px;display:flex;flex-direction:column;gap:.5rem}.advancement-thresholds{display:flex;flex-direction:column;gap:.5rem}.advancement-threshold-row{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:#0003;border-radius:4px;border:1px solid rgba(205,67,255,.1)}.advancement-threshold-label{font-family:var(--font-primary);font-size:.8rem;color:var(--text-primary, #e0e0e0);min-width:80px}.advancement-threshold-value{flex:1;font-size:.85rem;color:#cd43ff;font-weight:400}.advancement-threshold-add-row{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.advancement-add-btn{align-self:flex-start;margin-top:.25rem}.advancement-add-btn-inline{align-self:flex-start;margin-top:.125rem}.adv-form-group{display:flex;flex-direction:column;gap:.375rem}.adv-form-label{font-family:var(--font-primary);font-size:.9rem;color:#cd43ff;letter-spacing:.3px}.adv-form-input{padding:.625rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:var(--text-primary, #e0e0e0);font-size:.9rem;font-family:var(--font-primary);transition:border-color .2s,box-shadow .2s}.adv-form-input:focus{outline:none;background:#0009;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.adv-form-input::placeholder{color:#cd43ff66}.adv-form-input-narrow{max-width:100px;text-align:center}.adv-form-textarea{width:100%;padding:.625rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:var(--text-primary, #e0e0e0);font-size:.85rem;font-family:inherit;resize:vertical;min-height:60px;transition:border-color .2s,box-shadow .2s}.adv-form-textarea:focus{outline:none;background:#0009;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.adv-form-textarea::placeholder{color:#cd43ff66}.adv-form-hint{font-size:.7rem;color:#cd43ff80}.adv-form-row{display:flex;align-items:flex-end;gap:.75rem}.adv-form-color{width:48px;height:36px;padding:.25rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;cursor:pointer}.adv-form-color::-webkit-color-swatch-wrapper{padding:0}.adv-form-color::-webkit-color-swatch{border:none;border-radius:2px}.advancement-effects-list{display:flex;flex-direction:column;gap:.5rem}.advancement-effect-row{display:flex;align-items:center;gap:.5rem}.advancement-effect-row .adv-form-input{flex:1}.advancement-pool-card-body .field-target-picker{margin-top:.25rem}.multiclass-editor{margin-top:1.5rem;padding:1rem;background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:8px}.multiclass-editor-title{font-family:var(--font-primary);font-size:1rem;color:#ffffffe6;margin:0 0 .75rem}.multiclass-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:#ffffffd9;margin-bottom:1rem}.multiclass-toggle input[type=checkbox]{accent-color:#CD43FF}.multiclass-field-row{margin-bottom:1rem}.multiclass-prerequisites{margin-top:1rem}.multiclass-section-label{font-family:var(--font-primary);font-size:.9rem;color:#fffc;margin:0 0 .5rem}.multiclass-class-prereqs{margin-bottom:.75rem;padding:.6rem;background:#00000040;border:1px solid rgba(205,67,255,.1);border-radius:6px}.multiclass-class-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.multiclass-class-name{font-family:var(--font-primary);font-weight:400;font-size:.9rem;color:#cd43ffe6}.multiclass-no-prereqs{font-size:.8rem;color:#fff6;font-style:normal}.multiclass-prereq-row{display:flex;align-items:center;gap:.5rem;margin-top:.4rem}.multiclass-prereq-row .custom-dropdown{flex:1}.multiclass-prereq-value{width:60px;padding:.35rem .5rem;background:#00000080;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#ffffffe6;font-size:.85rem;text-align:center}.multiclass-prereq-remove{background:none;border:none;color:#ff6464b3;cursor:pointer;font-size:1.1rem;padding:.2rem .4rem;border-radius:4px;transition:all .15s ease}.multiclass-prereq-remove:hover{background:#ff646426;color:#ff6464f2}.revocation-editor{display:flex;flex-direction:column;gap:1.5rem;padding:.5rem 0}.revocation-empty-state{padding:2rem 1.5rem;text-align:center;color:var(--text-secondary, #a0a0a0);font-size:.9rem;background:#0003;border:1px dashed rgba(205,67,255,.2);border-radius:8px}.revocation-empty-hint{margin-top:.5rem;font-size:.8rem;color:#cd43ff80}.revocation-section-title{font-family:var(--font-primary);font-size:.9rem;color:#cd43ff;text-transform:uppercase;letter-spacing:.5px;padding-bottom:.5rem;border-bottom:1px solid rgba(205,67,255,.15);margin:0}.revocation-rule-card{background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px;overflow:hidden;transition:all .2s ease}.revocation-rule-card.expanded{border-color:#cd43ff66}.revocation-rule-card.disabled{opacity:.5}.revocation-rule-card-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;cursor:pointer;transition:background .2s}.revocation-rule-card-header:hover{background:#cd43ff08}.revocation-rule-name{flex:1;font-family:var(--font-primary);font-size:.95rem;color:var(--text-primary, #e0e0e0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.revocation-rule-name.unnamed{color:#cd43ff66;font-style:italic}.revocation-trigger-badge{font-size:.7rem;padding:.2rem .5rem;border-radius:4px;background:#cd43ff26;color:#cd43ffe6;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.revocation-expand-chevron{color:#ffffff80;transition:transform .2s;flex-shrink:0}.revocation-expand-chevron.expanded{transform:rotate(90deg)}.revocation-rule-card-body{padding:0 1rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.revoc-form-group{display:flex;flex-direction:column;gap:.375rem}.revoc-form-label{font-family:var(--font-primary);font-size:.9rem;color:#cd43ff;letter-spacing:.3px}.revoc-form-input{padding:.625rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:var(--text-primary, #e0e0e0);font-size:.9rem;font-family:var(--font-primary);transition:border-color .2s,box-shadow .2s}.revoc-form-input:focus{outline:none;background:#0009;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.revoc-form-input::placeholder{color:#cd43ff66}.revoc-form-textarea{width:100%;padding:.625rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:var(--text-primary, #e0e0e0);font-size:.85rem;font-family:inherit;resize:vertical;min-height:60px;transition:border-color .2s,box-shadow .2s}.revoc-form-textarea:focus{outline:none;background:#0009;border-color:#cd43ff;box-shadow:0 0 10px #cd43ff33}.revoc-form-textarea::placeholder{color:#cd43ff66}.revoc-form-hint{font-size:.7rem;color:#cd43ff80}.revoc-form-row{display:flex;align-items:flex-end;gap:.75rem}.revocation-checkbox-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.revocation-field-tags{display:flex;flex-wrap:wrap;gap:.375rem}.revocation-field-tag{display:flex;align-items:center;gap:.25rem;padding:.2rem .5rem;background:#cd43ff1a;border:1px solid rgba(205,67,255,.2);border-radius:4px;font-size:.8rem;color:var(--text-primary, #e0e0e0)}.revocation-field-tag-remove{cursor:pointer;color:#fff6;font-size:.75rem;padding:0 .125rem;transition:color .15s}.revocation-field-tag-remove:hover{color:#f44}.revocation-trigger-config{padding:.875rem;background:#00000040;border:1px solid rgba(205,67,255,.15);border-radius:6px;display:flex;flex-direction:column;gap:.75rem}.revocation-conditions-section{display:flex;flex-direction:column;gap:.75rem;padding-top:.5rem;border-top:1px solid rgba(205,67,255,.1)}.revocation-condition-row{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#0003;border-radius:4px;border:1px solid rgba(205,67,255,.1)}.revocation-condition-row .revoc-form-input{flex:1}.revocation-add-btn{align-self:flex-start;margin-top:.25rem}.revocation-delete-btn{color:#fff6;cursor:pointer;font-size:.85rem;padding:.25rem;transition:color .15s;flex-shrink:0;background:none;border:none}.revocation-delete-btn:hover{color:#f44}.revocation-info-text{font-size:.85rem;color:var(--text-secondary, #a0a0a0);padding:.75rem;background:#0003;border-radius:6px;border-left:3px solid rgba(205,67,255,.3);margin:0}.system-progression-manager{display:flex;flex-direction:column;gap:16px;padding:16px}.progression-section{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;overflow:hidden}.progression-section-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;transition:background .2s ease}.progression-section-header:hover{background:#cd43ff0d}.progression-section-title{font-family:var(--font-primary);font-size:16px;font-weight:400;color:#cd43ff;margin:0;letter-spacing:.5px}.section-toggle{color:#cd43ff80;font-size:14px}.progression-section-content{padding:0 20px 20px}.progression-section-desc{font-family:var(--font-primary);font-size:12px;font-weight:400;color:#fff6;margin:0 0 12px;line-height:1.5}.progression-save-bar{display:flex;justify-content:flex-end;margin-top:12px}.system-mechanics-tab{display:flex;flex-direction:column;min-height:400px}.system-used-tab{display:flex;flex-direction:column;gap:16px;padding:16px;min-height:400px}.used-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.system-rules-tab{display:flex;flex-direction:column;gap:16px;padding:16px;min-height:400px}.rules-loading{display:flex;align-items:center;justify-content:center;min-height:300px}.rules-list{display:flex;flex-direction:column;gap:8px}.rule-card{background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:8px;cursor:pointer;transition:all .2s ease}.rule-card:hover{background:#00000080;border-color:#cd43ff66}.rule-card.expanded{border-color:#cd43ff80}.rule-header{display:flex;align-items:center;gap:10px;padding:14px 16px}.rule-expand-icon{color:#cd43ff80;font-size:11px;flex-shrink:0;width:16px}.rule-title{font-family:var(--font-primary);font-size:15px;font-weight:400;color:#cd43ff;margin:0;flex:1}.rule-creator-badge{font-family:var(--font-primary);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:1px;color:#cd43ff;background:#cd43ff26;padding:2px 8px;border-radius:4px;flex-shrink:0}.rule-content{padding:0 16px 16px 42px}.rule-text{font-family:var(--font-primary);font-size:14px;line-height:1.7;color:#fffc;margin:0;white-space:pre-wrap}.checkbox-grid-config{display:flex;flex-direction:column;gap:1.5rem;padding:1rem}.config-section{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background-color:var(--background-secondary, #f5f5f5);border-radius:6px;border:1px solid var(--border-color, #e0e0e0)}.config-section h6{margin:0;font-size:.9rem;font-weight:400;color:var(--text-primary, #333)}.config-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.config-row{display:flex;align-items:center;gap:.5rem}.config-row label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary, #666);cursor:pointer}.config-select{padding:.4rem .6rem;border:1px solid var(--border-color, #ccc);border-radius:4px;background-color:var(--background-primary, #fff);color:var(--text-primary, #333);font-size:.9rem;cursor:pointer;margin-left:.5rem}.config-select:hover{border-color:var(--border-hover, #999)}.config-select:focus{outline:none;border-color:var(--primary-color, #007bff);box-shadow:0 0 0 2px #007bff1a}.grid-items-list{display:flex;flex-direction:column;gap:.75rem}.grid-item{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background-color:var(--background-primary, #fff);border:1px solid var(--border-color, #ddd);border-radius:4px;transition:border-color .2s}.grid-item:hover{border-color:var(--border-hover, #aaa)}.grid-item-controls{display:flex;gap:.5rem;justify-content:flex-start}.btn-icon-sm{padding:.25rem .5rem;background-color:var(--background-secondary, #f0f0f0);border:1px solid var(--border-color, #ccc);border-radius:3px;font-size:.85rem;cursor:pointer;transition:all .2s;min-width:30px;text-align:center}.btn-icon-sm:hover:not(:disabled){background-color:var(--background-hover, #e0e0e0);border-color:var(--border-hover, #999)}.btn-icon-sm:active:not(:disabled){transform:scale(.95)}.btn-icon-sm:disabled{opacity:.4;cursor:not-allowed}.btn-icon-sm.btn-delete{background-color:var(--danger-background, #fff0f0);border-color:var(--danger-border, #ffcccc);color:var(--danger-color, #c00)}.btn-icon-sm.btn-delete:hover:not(:disabled){background-color:var(--danger-hover, #ffe0e0);border-color:var(--danger-border-hover, #ff9999)}.grid-item-inputs{display:flex;gap:.5rem;flex-wrap:wrap}.grid-item-input{flex:1;min-width:120px;padding:.5rem;border:1px solid var(--border-color, #ccc);border-radius:4px;background-color:var(--background-primary, #fff);color:var(--text-primary, #333);font-size:.9rem;transition:border-color .2s}.grid-item-input:focus{outline:none;border-color:var(--primary-color, #007bff);box-shadow:0 0 0 2px #007bff1a}.grid-item-input::placeholder{color:var(--text-placeholder, #999)}.grid-item-input-short{flex:0 0 100px;min-width:100px}.empty-message{text-align:center;color:var(--text-secondary, #666);font-style:normal;padding:1rem;margin:0}@media (prefers-color-scheme: dark){.checkbox-grid-config{--background-primary: rgba(0, 0, 0, .5);--background-secondary: rgba(0, 0, 0, .3);--background-hover: rgba(205, 67, 255, .08);--border-color: rgba(205, 67, 255, .2);--border-hover: rgba(205, 67, 255, .4);--text-primary: rgba(255, 255, 255, .9);--text-secondary: rgba(255, 255, 255, .6);--text-placeholder: rgba(205, 67, 255, .4);--danger-background: rgba(255, 67, 205, .1);--danger-border: rgba(255, 67, 205, .3);--danger-hover: rgba(255, 67, 205, .15);--danger-border-hover: rgba(255, 67, 205, .5);--danger-color: #FF43CD}}.compound-config{display:flex;flex-direction:column;gap:.75rem}.compound-config-layout{padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.08)}.compound-config-layout .config-row{display:flex;gap:1rem}.compound-config-side{padding:.6rem;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#00000026}.compound-side-title{margin:0 0 .5rem;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:#fff9}.compound-type-select{min-width:120px}.config-input-narrow{max-width:80px}.compound-options-editor{display:flex;flex-direction:column;gap:.4rem;margin-top:.25rem}.compound-options-label{font-size:.8rem;color:#fff9;margin-bottom:.1rem}.compound-option-row{display:flex;align-items:center;gap:.4rem}.compound-option-row .config-input{flex:1}.compound-config-repeating{padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.08)}.compound-config-repeating .checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#ffffffd9;cursor:pointer}.compound-max-instances{margin-top:.4rem;padding-left:1.5rem}.compound-max-instances .config-hint{font-size:.75rem;color:#ffffff73;margin-top:.2rem}.catalog-manager{font-family:var(--font-primary)}.catalog-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.catalog-manager-header h5{margin:0;font-size:.9rem}.catalog-list{margin-bottom:.75rem}.catalog-list-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#0003;border:1px solid rgba(205,67,255,.1);border-radius:4px;margin-bottom:.25rem;cursor:pointer;transition:all .2s ease}.catalog-list-item:hover{background:#0000004d}.catalog-list-item.selected{border-color:#cd43ff66;background:#cd43ff0d}.catalog-list-info{display:flex;align-items:center;gap:.75rem}.catalog-list-name{font-weight:600;font-size:.85rem}.catalog-list-field{font-family:monospace;font-size:.7rem;opacity:.5}.catalog-list-count{font-size:.7rem;opacity:.4}.catalog-delete-btn,.catalog-del-btn{background:none;border:none;color:#ffffff4d;cursor:pointer;padding:.2rem;transition:all .2s ease}.catalog-delete-btn:hover,.catalog-del-btn:hover{color:var(--color-danger, #ff4757)}.catalog-empty{text-align:center;padding:1rem;opacity:.4;font-size:.8rem}.catalog-create-form{display:flex;gap:.5rem;padding:.5rem;background:#0003;border-radius:4px;margin-bottom:.75rem;flex-wrap:wrap}.catalog-entries-section{border-top:1px solid rgba(205,67,255,.15);padding-top:.75rem;margin-top:.75rem}.catalog-entries-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.catalog-entries-header h6{margin:0}.catalog-entry-list{margin-bottom:.5rem}.catalog-entry-row{display:flex;justify-content:space-between;align-items:center;padding:.4rem .5rem;border-bottom:1px solid rgba(205,67,255,.05)}.catalog-entry-row:nth-child(odd){background:#0003}.catalog-entry-row:nth-child(2n){background:#0000004d}.catalog-entry-info{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.catalog-entry-name{font-weight:500;font-size:.85rem}.catalog-entry-cat,.catalog-entry-rar{font-size:.65rem;opacity:.5}.catalog-entry-fx{font-size:.65rem;color:#ffd700b3}.catalog-entry-actions{display:flex;gap:.25rem}.catalog-edit-btn{background:none;border:1px solid rgba(205,67,255,.2);border-radius:3px;padding:.15rem .4rem;color:#cd43ffb3;font-size:.7rem;cursor:pointer;transition:all .2s ease}.catalog-edit-btn:hover{border-color:#cd43ff80;color:#cd43ff}.catalog-entry-form{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:6px;padding:.75rem;margin-top:.5rem}.catalog-entry-form h6{margin:0 0 .5rem}.catalog-effects-section{margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(205,67,255,.1)}.catalog-effects-section h6{margin:0 0 .35rem;font-size:.8rem}.catalog-effect-row{display:flex;gap:.35rem;align-items:center;margin-bottom:.25rem}.catalog-form-actions{display:flex;gap:.5rem;margin-top:.5rem}.config-cancel-btn{background:none;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:.3rem .75rem;color:#ffffff80;font-family:inherit;font-size:.8rem;cursor:pointer;transition:all .2s ease}.config-cancel-btn:hover{border-color:#fff6;color:#fffc}.catalog-bulk-import{background:#0000004d;border:1px solid rgba(205,67,255,.15);border-radius:6px;padding:.75rem;margin-bottom:.75rem}.catalog-bulk-import h6{margin:0 0 .35rem}.bulk-import-textarea{font-family:monospace!important;font-size:.75rem!important;width:100%;background:#00000080!important}.bulk-import-error{color:var(--color-danger, #ff4757);font-size:.8rem;margin-top:.35rem}.bulk-import-preview{font-size:.8rem;margin-top:.35rem;padding:.5rem;background:#0003;border-radius:4px}.bulk-import-preview strong{color:#ffd700cc}.bulk-import-preview ul{margin:.25rem 0 0;padding-left:1.25rem}.bulk-import-preview li{font-size:.75rem;opacity:.7}.record-column-list{margin-bottom:.5rem}.record-column-item{border:1px solid rgba(205,67,255,.1);border-radius:4px;margin-bottom:.25rem;overflow:hidden}.record-column-summary{display:flex;justify-content:space-between;align-items:center;padding:.4rem .6rem;background:#0003;cursor:pointer;transition:all .2s ease}.record-column-summary:hover{background:#0000004d}.record-column-info{display:flex;align-items:center;gap:.5rem}.record-column-name{font-weight:500;font-size:.85rem}.record-column-type{font-size:.7rem;opacity:.5;font-family:monospace}.record-column-width{font-size:.65rem;opacity:.4}.record-column-actions{display:flex;gap:.2rem}.col-move-btn{background:none;border:none;color:#ffffff4d;cursor:pointer;padding:.1rem .3rem;font-size:.65rem;transition:all .2s ease}.col-move-btn:hover{color:#ffffffb3}.col-delete-btn{background:none;border:none;color:#ffffff4d;cursor:pointer;padding:.1rem .3rem;transition:all .2s ease}.col-delete-btn:hover{color:var(--color-danger, #ff4757)}.variants-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem}.variant-item{background:#cd43ff08;border:1px solid rgba(205,67,255,.2);border-radius:6px;overflow:hidden}.variant-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;background:#cd43ff05;cursor:pointer}.variant-header:hover{background:#cd43ff0f}.variant-toggle{transition:transform .2s;font-size:.8rem;color:#cd43ffb3}.variant-toggle.expanded{transform:rotate(90deg)}.variant-label{font-family:var(--font-primary);font-size:.8rem;color:#cd43ffcc;font-weight:400;white-space:nowrap}.variant-condition-preview{flex:1;font-family:var(--font-primary);font-size:.8rem;color:#cd43ff80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variant-actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}.variant-move-btn{background:none;border:none;color:#cd43ff80;cursor:pointer;padding:.15rem .3rem;font-size:.65rem;line-height:1;border-radius:3px}.variant-move-btn:hover{color:#cd43ffe6;background:#cd43ff1a}.variant-delete-btn{cursor:pointer;color:#cd43ff80;transition:color .2s}.variant-delete-btn:hover{color:#ff43cd}.variant-content{padding:.75rem;display:flex;flex-direction:column;gap:.75rem;border-top:1px solid rgba(205,67,255,.15)}.variant-field{display:flex;flex-direction:column;gap:.25rem}.variant-field-label{font-family:var(--font-primary);font-size:.75rem;color:#cd43ffcc;letter-spacing:.03em}.variant-toggle-section{display:flex;flex-direction:column;gap:.35rem}.field-config-panel{display:flex;flex-direction:column;gap:1.25rem}.config-section{display:flex;flex-direction:column;gap:.75rem}.config-section h6{margin:0 0 .5rem;font-family:var(--font-primary);font-size:.85rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.config-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.config-section-header h6{margin:0}.config-row{display:grid;grid-template-columns:1fr;gap:.75rem}.config-row label{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;color:#cd43ffcc;font-weight:500}.config-input,.config-select,.config-textarea{width:100%;padding:.5rem .65rem;background:var(--bg-tertiary, #2a2a2a);border:1px solid var(--border-color, #333);border-radius:4px;color:var(--text-primary, #e0e0e0);font-size:.85rem;font-family:inherit;transition:border-color .2s}.config-input:focus,.config-select:focus,.config-textarea:focus{outline:none;border-color:#cd43ff}.config-textarea{resize:vertical;min-height:60px}.config-color{width:60px;height:36px;padding:.25rem;background:var(--bg-tertiary, #2a2a2a);border:1px solid var(--border-color, #333);border-radius:4px;cursor:pointer}.config-color::-webkit-color-swatch-wrapper{padding:0}.config-color::-webkit-color-swatch{border:none;border-radius:2px}.config-checkboxes{display:flex;flex-direction:row;gap:1rem}.checkbox-label{display:flex;flex-direction:row!important;align-items:center;justify-content:space-between;gap:.75rem!important;cursor:pointer;padding:.5rem .75rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:4px;transition:border-color .2s}.checkbox-label:hover{border-color:#cd43ff66}.options-list{display:flex;flex-direction:column;gap:.75rem}.option-item{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#0003;border:1px solid var(--border-color, #333);border-radius:4px}.option-inputs{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:center}.option-input{padding:.4rem .6rem;background:var(--bg-tertiary, #2a2a2a);border:1px solid var(--border-color, #333);border-radius:4px;color:var(--text-primary, #e0e0e0);font-size:.8rem;transition:border-color .2s}.option-input:focus{outline:none;border-color:#cd43ff}.option-description{width:100%;padding:.4rem .6rem;background:var(--bg-tertiary, #2a2a2a);border:1px solid var(--border-color, #333);border-radius:4px;color:var(--text-secondary, #a0a0a0);font-size:.75rem;font-style:normal;transition:border-color .2s}.option-description:focus{outline:none;border-color:#cd43ff}.btn-remove-option{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:3px;color:var(--text-secondary, #a0a0a0);cursor:pointer;transition:all .2s;font-size:1rem}.btn-remove-option:hover{background:#ef44441a;border-color:#ef44444d;color:#ff43cd}.empty-message{padding:1rem;text-align:center;font-family:var(--font-primary);font-size:.8rem;color:#cd43ff99;letter-spacing:.5px}.help-text{display:block;font-size:.75rem;color:#cd43ff80;font-style:normal;margin-top:.35rem}@media (max-width: 768px){.config-checkboxes{flex-direction:column;gap:.5rem}.option-inputs{grid-template-columns:1fr}.btn-remove-option{grid-column:1;width:100%;justify-self:stretch}}@media (min-width: 768px){.config-row:has(label:nth-child(2)),.config-row:has(label:nth-child(3)){grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.field-editor{display:flex;flex-direction:column;gap:.75rem}.field-editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.field-editor-header h5{margin:0;font-family:var(--font-primary);font-size:.95rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.field-count{font-size:.8rem;color:#cd43ffb3}.field-editor-empty{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;text-align:center;background:#cd43ff0d;border:1px dashed rgba(205,67,255,.3);border-radius:6px}.field-editor-empty p{font-family:var(--font-primary);color:#cd43ffcc;font-size:.9rem;letter-spacing:.5px;margin:0}.fields-list{display:flex;flex-direction:column;gap:.5rem}.field-item{background:#cd43ff08;border:1px solid rgba(205,67,255,.2);border-radius:4px;overflow:hidden}.field-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;background:#cd43ff05;border-bottom:1px solid transparent;transition:border-color .2s}.field-item:hover .field-header{border-bottom-color:#cd43ff33}.field-toggle{background:none;border:none;color:#cd43ff99;cursor:pointer;padding:.15rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.field-toggle:hover{color:#cd43ff}.field-type-icon{font-size:.95rem;opacity:.8}.field-name{font-size:.85rem;font-weight:500;color:#ffffffe6}.field-key{font-size:.75rem;color:#cd43ff99;font-family:Courier New,monospace}.field-badge{padding:.15rem .4rem;border-radius:3px;font-size:.7rem;font-weight:500;text-transform:uppercase}.field-badge.required{background:#ef444426;color:#ff43cd}.field-badge.readonly{background:#9ca3af26;color:#d1d5db}.field-item .show-title-toggle{display:flex;align-items:center;gap:8px;margin-left:.75rem;padding-left:.75rem;border-left:1px solid rgba(205,67,255,.2)}.field-item .show-title-label{font-size:.7rem;color:#cd43ffb3;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;cursor:pointer;margin:0}.field-actions{display:flex;gap:.25rem;margin-left:auto}.btn-icon-xs{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:3px;color:#cd43ff80;cursor:pointer;transition:all .2s;font-size:.75rem}.btn-icon-xs:hover:not(:disabled){background:#cd43ff1a;color:#cd43ff;border-color:#cd43ff4d}.btn-icon-xs:disabled{opacity:.2;cursor:not-allowed}.btn-icon-xs.btn-delete:hover:not(:disabled){background:#ff43cd26;border-color:#ff43cd66;color:#ff43cd}.field-config{padding:.75rem;background:#0003}.btn-add-field{padding:.5rem 1rem;background:transparent;border:1px dashed rgba(205,67,255,.3);border-radius:4px;color:#cd43ff99;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-add-field:hover{background:#cd43ff0d;border-color:#cd43ff;color:#cd43ff}.modal-content{background:transparent;border:1px solid rgba(205,67,255,.3);border-radius:8px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid rgba(205,67,255,.2)}.modal-header h3{margin:0;font-size:1.1rem;font-weight:400;color:#cd43ff}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#cd43ff99;font-size:1.3rem;cursor:pointer;border-radius:4px;transition:all .2s}.modal-close:hover{background:#cd43ff1a;color:#cd43ff}.add-field-modal{max-width:450px}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.modal-body .form-group{display:flex;flex-direction:column;gap:.5rem}.modal-body .form-group label{font-family:var(--font-primary);font-size:.85rem;font-weight:500;color:#cd43ff;text-transform:uppercase;letter-spacing:.5px}.field-name-input{padding:.65rem .85rem;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#ffffffe6;font-size:.9rem;font-family:inherit;transition:border-color .2s}.field-name-input:focus{outline:none;border-color:#cd43ff}.field-name-input::placeholder{color:#cd43ff66}.field-type-select{padding:.65rem .85rem;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#ffffffe6;font-size:.9rem;font-family:inherit;cursor:pointer;transition:border-color .2s}.field-type-select:focus{outline:none;border-color:#cd43ff}.field-type-select option{background:#000000f2;color:#ffffffe6}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:.5rem;border-top:1px solid rgba(205,67,255,.2)}@media (max-width: 768px){.field-header{flex-wrap:wrap}.field-type-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.6rem;padding:1rem}.field-type-option{padding:.75rem .5rem}}.column-editor{display:flex;flex-direction:column;gap:1rem}.column-editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.column-editor-header h4{margin:0;font-family:var(--font-primary);font-size:1rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.column-count{font-size:.85rem;color:#cd43ffb3}.column-editor-empty{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;text-align:center;background:#cd43ff0d;border:1px dashed rgba(205,67,255,.3);border-radius:6px}.column-editor-empty p{font-family:var(--font-primary);color:#cd43ffcc;font-size:.95rem;letter-spacing:.5px}.columns-grid{display:flex;flex-direction:column;gap:.75rem}.column-item{background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:6px;overflow:hidden}.column-header{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#cd43ff14;border-bottom:1px solid rgba(205,67,255,.2)}.column-toggle{background:none;border:none;color:#cd43ffb3;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.column-toggle:hover{color:#cd43ff}.column-title-input{flex:1;padding:.4rem .6rem;background:#0006;border:1px solid rgba(205,67,255,.2);border-radius:4px;color:#ffffffe6;font-family:var(--font-primary);font-size:.9rem;transition:all .3s}.column-title-input:focus{outline:none;border-color:#cd43ff;background:#00000080;box-shadow:0 0 0 2px #cd43ff1a}.column-item .show-title-toggle{display:flex;align-items:center;gap:10px;margin-left:.75rem;padding-left:.75rem;border-left:1px solid rgba(205,67,255,.2)}.column-item .show-title-label{font-family:var(--font-primary);font-size:.75rem;color:#cd43ffcc;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;cursor:pointer;margin:0}.column-actions{display:flex;gap:.35rem}.btn-icon-sm{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ffb3;cursor:pointer;transition:all .2s;font-size:.85rem}.btn-icon-sm:hover:not(:disabled){background:#cd43ff33;color:#cd43ff;border-color:#cd43ff80}.btn-icon-sm:disabled{opacity:.3;cursor:not-allowed}.btn-icon-sm.btn-delete:hover:not(:disabled){background:#ff43cd26;border-color:#ff43cd66;color:#ff43cd}.column-options{padding:.75rem;background:#ffffff05;border-bottom:1px solid var(--border-color, #333)}.column-options label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary, #a0a0a0)}.width-input{width:80px;padding:.35rem .5rem;background:var(--bg-tertiary, #2a2a2a);border:1px solid var(--border-color, #333);border-radius:4px;color:var(--text-primary, #e0e0e0);font-size:.85rem}.width-input:focus{outline:none;border-color:var(--primary-color, #6366f1)}.help-text{display:block;margin-top:.35rem;font-size:.75rem;color:var(--text-muted, #666)}.column-content{padding:.75rem}.btn-add-column{padding:.65rem 1.25rem;background:var(--bg-tertiary, #2a2a2a);border:1px dashed var(--border-color, #333);border-radius:6px;color:var(--text-secondary, #a0a0a0);font-size:.9rem;cursor:pointer;transition:all .2s}.btn-add-column:hover{background:var(--bg-hover, #333);border-color:var(--primary-color, #6366f1);color:var(--primary-color, #6366f1)}@media (max-width: 768px){.column-header{flex-wrap:wrap}.column-title-input{min-width:0}}.section-editor{display:flex;flex-direction:column;gap:1rem}.section-editor-empty{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem;text-align:center}.section-editor-empty p{font-family:var(--font-primary);color:#cd43ffcc;font-size:1.1rem;letter-spacing:.5px}.section-editor-item{display:flex;flex-direction:column;width:100%;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.section-header{display:flex;align-items:center;gap:.75rem;padding:1rem;width:100%;background:#cd43ff1a;border-bottom:1px solid rgba(205,67,255,.3)}.section-toggle{background:none;border:none;color:#cd43ffb3;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.section-toggle:hover{color:#cd43ff}.toggle-icon{display:inline-block;transition:transform .2s;font-size:.8rem}.toggle-icon.expanded{transform:rotate(90deg)}.section-title-input{flex:1;padding:.5rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:6px;color:#ffffffe6;font-family:var(--font-primary);font-size:1rem;font-weight:500;text-align:left;transition:all .3s}.section-title-input:focus{outline:none;border-color:#cd43ff;background:#0009;box-shadow:0 0 0 3px #cd43ff1a}.show-title-toggle{display:flex;align-items:center;gap:12px;margin-left:1rem;padding-left:1rem;border-left:1px solid rgba(205,67,255,.3)}.show-title-label{font-family:var(--font-primary);font-size:.85rem;color:#cd43ffe6;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;cursor:pointer;margin:0}.section-actions{display:flex;gap:.5rem}.btn-icon{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ffb3;cursor:pointer;transition:all .2s;font-size:.9rem}.btn-icon:hover:not(:disabled){background:#cd43ff33;color:#cd43ff;border-color:#cd43ff80}.btn-icon:disabled{opacity:.3;cursor:not-allowed}.btn-icon.btn-delete:hover:not(:disabled){background:#ff43cd26;border-color:#ff43cd66;color:#ff43cd}.section-options{display:flex;gap:1.5rem;padding:.75rem 1rem;background:#cd43ff0d;border-bottom:1px solid rgba(205,67,255,.3)}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:#cd43ffe6;font-family:var(--font-primary);letter-spacing:.5px}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.section-content{padding:1rem;width:100%}.section-visible-when{padding:0 1rem .75rem;display:flex;flex-direction:column;gap:.35rem}.btn-add-section{padding:.75rem 1.5rem;background:var(--bg-tertiary, #2a2a2a);border:2px dashed var(--border-color, #333);border-radius:6px;color:var(--text-secondary, #a0a0a0);font-size:.95rem;cursor:pointer;transition:all .2s}.btn-add-section:hover{background:var(--bg-hover, #333);border-color:var(--primary-color, #6366f1);color:var(--primary-color, #6366f1)}@media (max-width: 768px){.section-header{flex-wrap:wrap}.section-title-input{min-width:0}.section-options{flex-direction:column;gap:.75rem}}.section-manager{background:#14141e99;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.section-manager-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(205,67,255,.2)}.section-manager-header h3{margin:0;font-family:var(--font-primary);font-size:1.1rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.section-count{font-size:.9rem;color:#ffffff80;font-family:Courier New,monospace}.section-manager-empty{text-align:center;padding:3rem 1rem;color:#ffffff80}.section-list{display:flex;flex-direction:column;gap:0}.section-item{display:flex;flex-direction:row!important;align-items:center;justify-content:space-between;flex-wrap:nowrap;padding:1rem 1.25rem;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-bottom:none;transition:all .2s ease;text-align:left}.section-item:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.section-item:last-of-type{border-bottom:1px solid rgba(205,67,255,.2);border-bottom-left-radius:8px;border-bottom-right-radius:8px}.section-item:hover{background:#cd43ff1a;border-color:#cd43ff66;z-index:1}.section-item.duplicate{background:#ff99001a;border-color:#f906}.section-item.duplicate:hover{background:#ff990026;border-color:#f909}.section-item-left{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.section-item-right{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0}.section-item-index{font-family:Courier New,monospace;font-size:.9rem;color:#cd43ffb3;font-weight:400;min-width:40px}.section-item.duplicate .section-item-index{color:#f90c}.section-item-info{display:flex;align-items:center;gap:.75rem}.section-item-title{font-size:1rem;color:#ffffffe6;font-weight:500}.duplicate-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#f903;border:1px solid rgba(255,153,0,.4);border-radius:4px;font-size:.75rem;color:#f90;text-transform:uppercase;letter-spacing:.5px;font-weight:400;animation:duplicatePulse 2s ease-in-out infinite}@keyframes duplicatePulse{0%,to{opacity:1}50%{opacity:.6}}.section-item-stats{display:flex;gap:.5rem}.stat-badge{padding:.25rem .5rem;background:#cd43ff1a;border:1px solid rgba(205,67,255,.3);border-radius:4px;font-size:.75rem;color:#cd43ffe6;font-family:Courier New,monospace}.section-item.duplicate .stat-badge{background:#ff99001a;border-color:#ff99004d;color:#ff9900e6}.section-item-actions{display:flex;gap:.5rem}.action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:6px;color:#cd43ff;font-size:1rem;font-weight:400;cursor:pointer;transition:all .2s ease}.action-btn:hover:not(:disabled){background:#cd43ff4d;border-color:#cd43ff;transform:scale(1.1)}.action-btn:disabled{opacity:.3;cursor:not-allowed}.action-btn-delete{background:#dc143c33;border-color:#dc143c66;color:#dc143c;font-size:1.5rem;line-height:1}.action-btn-delete:hover:not(:disabled){background:#dc143c4d;border-color:#dc143c}.section-insert-divider{position:relative;height:1px;background:#cd43ff1a;display:flex;align-items:center;justify-content:center}.insert-btn{position:relative;padding:.35rem .75rem;background:#14141ee6;border:1px solid rgba(205,67,255,.3);border-radius:4px;color:#cd43ffb3;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;opacity:0}.section-insert-divider:hover .insert-btn{opacity:1}.insert-btn:hover:not(:disabled){background:#cd43ff33;border-color:#cd43ff;color:#cd43ff;transform:scale(1.05)}.insert-btn:disabled{opacity:.3;cursor:not-allowed}.section-manager-actions{display:flex;justify-content:center;padding:2rem 0}@media (max-width: 768px){.section-item-header{flex-wrap:wrap;gap:.5rem}.section-item-stats{width:100%;justify-content:flex-start;margin-left:40px}.section-item-actions{margin-left:.5rem}.action-btn{width:28px;height:28px;font-size:.9rem}}.version-manager{padding:2rem;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.version-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.version-manager-header h3{margin:0;font-family:var(--font-primary);font-size:1.3rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.version-manager-empty,.version-empty{padding:2rem;text-align:center;color:#ffffff80}.version-empty small{display:block;margin-top:.5rem;font-size:.85rem;color:#fff6}.version-error{padding:1rem;margin-bottom:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ff43cd;display:flex;align-items:center;gap:.75rem}.version-error .error-icon{font-size:1.2rem}.version-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.version-loading p{font-family:var(--font-primary);color:#cd43ffcc;font-size:1rem}.version-form{padding:2rem;margin-bottom:1.5rem;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.version-form h4{margin:0 0 1.5rem;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.form-textarea{resize:vertical;min-height:80px}.checkbox-label{display:block;margin-bottom:0;font-family:var(--font-primary);font-weight:400;font-size:.95rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.form-actions{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid rgba(205,67,255,.3)}.version-list{display:flex;flex-direction:column;gap:1rem}.version-item{padding:1.5rem;background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:8px;transition:all .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.version-item:hover{border-color:#cd43ff99;box-shadow:0 0 20px #cd43ff1a}.version-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.version-item-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.version-item-title h4{margin:0;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#ffffffe6}.version-badge-default{padding:.25rem .625rem;background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3);border-radius:4px;font-size:.7rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em}.version-order{padding:.25rem .625rem;background:#cd43ff33;color:#cd43ff;border:1px solid rgba(205,67,255,.3);border-radius:4px;font-size:.7rem;font-weight:400}.version-item-actions{display:flex;gap:.5rem}.btn-icon{padding:.5rem .75rem;background:#0000004d;border:1px solid rgba(205,67,255,.3);border-radius:6px;cursor:pointer;transition:all .2s;font-size:1rem}.btn-icon:hover:not(:disabled){background:#cd43ff33;border-color:#cd43ff80}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon.btn-danger:hover:not(:disabled){background:#ef444433;border-color:#ef444480}.version-item-description{margin:.75rem 0;font-size:.9rem;color:#fff9;line-height:1.6}.version-item-meta{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(205,67,255,.2)}.version-item-meta small{font-size:.75rem;color:#fff6}.history-version-view{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.history-version-view h3{margin:0 0 1rem;font-family:var(--font-primary);font-size:1.3rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.history-description{margin:0 0 2rem;font-size:.95rem;color:#ffffffb3;line-height:1.6}.history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1.5rem}.history-loading p{font-family:var(--font-primary);color:#cd43ffcc;font-size:1rem}.history-empty{padding:3rem;text-align:center;color:#ffffff80}.history-empty small{display:block;margin-top:.75rem;font-size:.85rem;color:#fff6}.history-snapshots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.history-snapshot-button{background:#0006;border:2px solid rgba(205,67,255,.3);border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .3s;text-align:left;display:flex;flex-direction:column;gap:1rem}.history-snapshot-button:not(:disabled):not(.current):hover{border-color:#cd43ff99;background:#cd43ff1a;box-shadow:0 0 20px #cd43ff33;transform:translateY(-2px)}.history-snapshot-button.current{border-color:#22c55e80;background:#22c55e0d;cursor:not-allowed}.history-snapshot-button:disabled{opacity:.7;cursor:not-allowed}.snapshot-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.snapshot-header h4{margin:0;font-family:var(--font-primary);font-size:1.1rem;font-weight:400;color:#ffffffe6}.current-badge{padding:.25rem .625rem;background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3);border-radius:4px;font-size:.7rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.snapshot-description{margin:0;font-size:.9rem;color:#fff9;line-height:1.5}.snapshot-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid rgba(205,67,255,.2)}.snapshot-date{font-size:.75rem;color:#ffffff80}.revert-hint{font-size:.8rem;color:#cd43ff;font-weight:400;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.history-snapshots-grid{grid-template-columns:1fr}}.sheet-designer{display:flex;flex-direction:column;height:100vh;width:100%;background:#07080a;color:#ffffffe6;position:relative;z-index:100}.sheet-designer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1.5rem}.sheet-designer-loading p{font-family:var(--font-primary);color:#cd43ffcc;font-size:1.2rem;letter-spacing:.5px}.sheet-designer-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:2px solid rgba(205,67,255,.3);background:#cd43ff0d}.sheet-designer-title{display:flex;flex-direction:column;align-items:flex-start;gap:0}.title-row{display:flex;align-items:center;gap:.75rem}.sheet-designer-title h2{margin:0;font-family:var(--font-primary);font-size:2rem;color:#cd43ff;text-shadow:0 0 20px rgba(205,67,255,.5);letter-spacing:2px}.dirty-indicator{color:#000;font-size:1.5rem;line-height:1;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.familiar-tip{margin:1rem 2rem;padding:.75rem 1rem;font-size:.9rem;line-height:1.5;color:#ffffffb3;background:#cd43ff14;border-left:3px solid rgba(205,67,255,.4);border-radius:4px}.familiar-tip strong{color:#cd43ff;font-weight:400}.sheet-designer-actions{display:flex;gap:.75rem}.sheet-designer-error{display:flex;align-items:center;gap:.75rem;margin:1rem 1.5rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ff43cd}.error-icon{font-size:1.2rem}.sheet-designer-content{flex:1;overflow-y:auto;padding:2rem}.sheet-basic-info{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:2rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.75rem;font-family:var(--font-primary);font-weight:400;font-size:.95rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.form-input,.form-textarea{width:100%;padding:.875rem 1rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffe6;font-size:.95rem;font-family:inherit;transition:all .3s}.form-input::placeholder,.form-textarea::placeholder{color:#fff6}.form-input:focus,.form-textarea:focus{outline:none;border-color:#cd43ff;background:#0009;box-shadow:0 0 0 3px #cd43ff1a}.form-textarea{resize:vertical;min-height:100px}.sheet-permissions{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:1.5rem 2rem;margin-top:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sheet-permissions h4{margin:0 0 1.25rem;font-family:var(--font-primary);font-size:1rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1.5px;font-weight:400}.permissions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.permission-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px;transition:all .3s}.permission-item:hover{border-color:#cd43ff66;background:#0006}.permission-item label{font-family:var(--font-primary);font-size:.9rem;color:#ffffffd9;font-weight:500;letter-spacing:.5px;cursor:pointer}.sheet-availability{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:1.5rem 2rem;margin-top:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:100}.sheet-availability h4{margin:0 0 .5rem;font-family:var(--font-primary);font-size:1rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1.5px;font-weight:400}.availability-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;align-items:start}.availability-grid.three-columns{grid-template-columns:repeat(3,1fr)}.availability-item{display:flex;flex-direction:column;gap:.5rem;position:relative}.availability-item label{font-family:var(--font-primary);font-size:.9rem;color:#ffffffd9;font-weight:500;letter-spacing:.5px}.multi-select-container{display:flex;flex-direction:column;gap:.5rem}.selected-items{display:flex;flex-wrap:wrap;gap:.5rem;min-height:32px}.selected-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;background:#cd43ff33;border:1px solid rgba(205,67,255,.4);border-radius:16px;font-size:.85rem;color:#ffffffe6}.tag-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin:0;background:#ffffff1a;border:none;border-radius:50%;color:#ffffffb3;font-size:14px;line-height:1;cursor:pointer;transition:all .2s}.tag-remove:hover{background:#ff64644d;color:#ff6b6b}.loading-text{font-size:.85rem;color:#ffffff80;font-style:normal}.multiselect-dropdown{position:relative}.multiselect-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background:#00000080;border:1px solid rgba(205,67,255,.3);border-radius:8px;color:#ffffffd9;font-family:var(--font-primary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.multiselect-trigger:hover:not(:disabled){border-color:#cd43ff80;background:#cd43ff0d}.multiselect-trigger.open{border-color:#cd43ff;box-shadow:0 0 15px #cd43ff33}.multiselect-trigger:disabled{opacity:.5;cursor:not-allowed}.multiselect-value{flex:1;text-align:left}.multiselect-arrow{font-size:.7rem;color:#cd43ff99;transition:transform .2s ease}.multiselect-trigger.open .multiselect-arrow{transform:rotate(180deg)}.multiselect-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:250px;overflow-y:auto;padding:.5rem;background:#000000f2;border:1px solid rgba(205,67,255,.3);border-radius:8px;box-shadow:0 4px 20px #cd43ff33;z-index:1000;animation:fadeInDown .15s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.multiselect-menu .checkbox-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:4px;cursor:pointer;transition:all .2s ease}.multiselect-menu .checkbox-item:hover{background:#cd43ff14}.multiselect-menu .checkbox-item .checkbox-label{font-family:inherit;font-size:.85rem;color:#ffffffd9;margin:0;display:inline;text-transform:none;letter-spacing:normal;font-weight:400}.no-items-text{font-size:.85rem;color:#fff6;font-style:normal;padding:.5rem}.checkbox-field-content{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.checkbox-field-text{flex:1}.checkbox-label{display:block;margin-bottom:.5rem;font-family:var(--font-primary);font-weight:400;font-size:.95rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.checkbox-field .help-text{display:block;margin:0;font-size:.85rem;color:#ffffff80;font-style:normal}.checkbox-field .custom-checkbox{flex-shrink:0}.sheet-sections,.sheet-settings{background:#0006;border:1px solid rgba(205,67,255,.3);border-radius:12px;padding:2rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sheet-sections h3,.sheet-settings h3{margin:0 0 1.5rem;font-family:var(--font-primary);font-size:1.3rem;font-weight:400;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.sheet-designer-footer{position:sticky;bottom:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 2rem;border-top:2px solid rgba(205,67,255,.3);background:#cd43ff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -4px 12px #0000004d}.sheet-designer-footer-left,.sheet-designer-footer-right{display:flex;gap:1rem;flex:1}.sheet-designer-footer-right{justify-content:flex-end}.sheet-designer-footer-center{position:absolute;left:50%;transform:translate(-50%);display:flex;justify-content:center}.btn-primary{background:var(--primary-color, #6366f1);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #4f46e5)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-tertiary, #2a2a2a);color:var(--text-primary, #e0e0e0);border:1px solid var(--border-color, #333)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover, #333)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.validation-warning{margin:1.5rem 0;padding:1.5rem;background:#ff99001a;border:2px solid rgba(255,153,0,.4);border-radius:12px;animation:warningPulse 2s ease-in-out infinite}@keyframes warningPulse{0%,to{border-color:#f906;box-shadow:0 0 #f903}50%{border-color:#f909;box-shadow:0 0 20px #ff99004d}}.warning-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.warning-icon{font-size:1.5rem;animation:warningShake 3s ease-in-out infinite}@keyframes warningShake{0%,to{transform:rotate(0)}10%,30%,50%,70%,90%{transform:rotate(-5deg)}20%,40%,60%,80%{transform:rotate(5deg)}}.warning-header h3{margin:0;font-family:var(--font-primary);font-size:1.2rem;color:#f90;text-transform:uppercase;letter-spacing:1px}.warning-content{margin-left:2.25rem}.warning-content>p{margin:0 0 1rem;color:#fffc;line-height:1.6}.duplicate-warning-item{padding:.75rem;margin:.5rem 0;background:#0000004d;border-left:3px solid #FF9900;border-radius:4px;font-size:.95rem}.duplicate-warning-item strong{color:#f90;font-weight:400}.duplicate-positions{margin-left:.5rem;color:#ffffff80;font-size:.9rem;font-family:Courier New,monospace}.warning-actions{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(255,153,0,.2);display:flex;flex-direction:column;gap:.75rem}.auto-fix-hint{color:#fff9;font-size:.85rem;font-style:normal;line-height:1.4}@media (max-width: 768px){.sheet-designer-header{flex-direction:column;align-items:stretch;gap:1rem}.sheet-designer-actions{justify-content:center}.sheet-designer-content,.sheet-basic-info,.sheet-sections,.sheet-settings,.sheet-permissions{padding:1rem}.permissions-grid{grid-template-columns:1fr}}.sheet-version-display{display:flex;align-items:center;justify-content:space-between;padding:1rem;margin:1rem 0;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.sheet-version-info{display:flex;align-items:center;gap:.75rem}.sheet-version-info label{font-weight:400;color:#ffffffe6;font-size:.95rem}.current-version-name{font-weight:500;color:#cd43ff;font-size:1rem;padding:.25rem .75rem;background:#cd43ff1a;border-radius:4px}.current-version-name.editable{cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;border:1px solid transparent}.current-version-name.editable:hover{background:#cd43ff33;border-color:#cd43ff80}.edit-icon{font-size:.85rem;opacity:.5;transition:opacity .2s ease}.current-version-name.editable:hover .edit-icon{opacity:1}.version-name-input{font-size:1rem;font-weight:500;color:#cd43ff;padding:.25rem .75rem;background:#cd43ff26;border:2px solid #CD43FF;border-radius:4px;outline:none;min-width:150px}.version-name-input:focus{background:#cd43ff33;box-shadow:0 0 0 3px #cd43ff33}.preview-container{display:flex;flex-direction:column;gap:1.5rem}.preview-version-selector{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:#0000004d;border:1px solid rgba(205,67,255,.2);border-radius:8px}.preview-version-selector label{font-weight:400;color:#ffffffe6;font-size:.95rem;white-space:nowrap}.version-select{flex:1;max-width:300px;padding:.5rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-size:.9rem;cursor:pointer;transition:all .2s ease}.version-select:hover{background:#ffffff14;border-color:#cd43ff4d}.version-select:focus{outline:none;border-color:#cd43ff;background:#ffffff1a}.version-select option{background:#000000f2;color:#fff}.version-loading{padding:3rem 2rem;text-align:center;color:#cd43ff;font-size:1rem;font-style:normal}.sheet-image-section{margin-top:1.5rem;padding:1.5rem;background:#cd43ff0d;border:1px solid rgba(205,67,255,.2);border-radius:12px;position:relative;z-index:1}.sheet-image-section h4{margin:0 0 1rem;font-family:var(--font-primary);font-size:1.1rem;color:#cd43ff;text-transform:uppercase;letter-spacing:1px}.image-upload-container{position:relative}.image-preview-wrapper{display:flex;flex-direction:column;align-items:center;gap:1rem}.sheet-image-preview{max-width:300px;max-height:200px;object-fit:cover;border-radius:8px;border:2px solid rgba(205,67,255,.3)}.image-actions{display:flex;gap:.75rem}.image-upload-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem;background:#ffffff05;border:2px dashed rgba(205,67,255,.3);border-radius:12px;cursor:pointer;transition:all .3s ease;color:#cd43ff99}.image-upload-placeholder:hover{background:#cd43ff0d;border-color:#cd43ff80;color:#cd43ffcc}.image-upload-placeholder span{font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.image-upload-loading{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:#000c;border-radius:12px}.image-upload-loading span{color:#cd43ffcc;font-size:.9rem}.dreamer-admin-section{margin-top:1.5rem;padding:1.5rem;background:#ffd7000d;border:1px solid rgba(255,215,0,.3);border-radius:12px}.dreamer-admin-section h4{margin:0 0 1rem;font-family:var(--font-primary);font-size:1.1rem;color:gold;text-transform:uppercase;letter-spacing:1px}.admin-info{display:flex;flex-direction:column;gap:.75rem}.admin-row{display:flex;align-items:center;gap:1rem}.admin-label{font-weight:400;color:#ffffffb3;min-width:80px}.admin-value{flex:1;color:#ffffffe6}.rules-view{padding:2rem;height:100%;display:flex;align-items:center;justify-content:center}.rules-placeholder{max-width:500px;text-align:center;padding:3rem 2rem;background:#cd43ff0d;border:1px dashed rgba(205,67,255,.3);border-radius:16px}.rules-placeholder-icon{font-size:4rem;margin-bottom:1.5rem}.rules-placeholder h3{margin:0 0 1rem;font-family:var(--font-primary);font-size:1.5rem;color:#cd43ff}.rules-placeholder p{margin:0 0 1rem;color:#ffffffb3;line-height:1.6}.rules-placeholder-example{padding:1rem;background:#0000004d;border-radius:8px;font-size:.9rem;color:#fff9}.rules-placeholder-example strong{color:#ffffffe6}.rules-status{margin-top:1.5rem;padding:.75rem 1rem;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:8px;display:flex;align-items:center;justify-content:center;gap:.5rem;color:#22c55ee6}.rules-status-icon{font-size:1.2rem}.session-expired-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:sessionExpiredFadeIn .3s ease}.session-expired-modal{position:relative;background:transparent;width:90%;max-width:420px;animation:sessionExpiredSlideUp .4s cubic-bezier(.16,1,.3,1)}.session-expired-modal .modal-header{padding:32px 32px 0;text-align:center}.session-expired-modal .modal-title{margin:0;font-family:var(--font-primary);font-size:26px;font-weight:400;color:#cd43ff;letter-spacing:1px;text-shadow:0 2px 10px rgba(205,67,255,.3)}.session-expired-modal .modal-content{padding:24px 32px 32px;text-align:center}.session-message{color:#ffffffe6;font-size:16px;line-height:1.6;margin:0 0 8px;font-weight:400}.session-submessage{color:#cd43ff99;font-size:14px;line-height:1.5;margin:0}.session-expired-modal .modal-footer{padding:0 32px 32px;display:flex;justify-content:center}.session-expired-modal .modal-footer .fantamaster-button{width:100%;max-width:280px}@keyframes sessionExpiredFadeIn{0%{opacity:0}to{opacity:1}}@keyframes sessionExpiredSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 480px){.session-expired-modal{max-width:calc(100% - 32px);margin:16px}.session-expired-modal .modal-header{padding:24px 24px 0}.session-expired-modal .modal-content{padding:20px 24px 24px}.session-expired-modal .modal-footer{padding:0 24px 24px}.session-expired-modal .modal-title{font-size:22px}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modalFadeIn .2s ease}.modal-overlay--elevated{z-index:9000}.modal-overlay--top{z-index:10000}.modal-overlay--topmost{z-index:10500}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}html{overflow:hidden!important;height:100%!important;margin:0;padding:0}body{overflow:hidden!important;height:100%!important;max-width:100vw;margin:0!important;padding:0!important}#root{height:100vh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}@media (max-width: 1024px){.carousel-container .carousel-grid{grid-template-columns:repeat(2,1fr)!important;gap:16px}.game-navigator,.world-navigator,.system-navigator{width:200px!important;min-width:200px!important}.carousel-controls{gap:24px}}.modal-overlay>div[class*=modal],.modal-overlay>div[class*=Modal]{max-width:95vw;max-height:95vh}@media (max-width: 768px){input[type=text],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=url],textarea,select{font-size:16px!important}.post-content,.post-text,.message-content,.comment-content,.description-text{word-break:break-word;overflow-wrap:anywhere}pre,code{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.button-group,.action-bar,.toolbar{flex-wrap:wrap!important;gap:8px}}#root{height:100vh;height:100dvh}@media (max-width: 768px){.modal-overlay>div[class*=modal],.modal-overlay>div[class*=Modal]{height:100vh!important;height:100dvh!important}.mobile-drawer{height:100vh;height:100dvh}}@media (prefers-reduced-motion: reduce){.mobile-drawer,.mobile-drawer-backdrop{transition:none!important}.modal-overlay>div[class*=modal],.modal-overlay>div[class*=Modal]{transition:none!important;animation:none!important}.summon-familiar-btn{animation:none!important}.campaign-card:hover,.game-card:hover,.world-card:hover{transform:none!important}.dashboard-header-card:after{animation:none!important}}@media (max-width: 768px){body.modal-open,body.drawer-open{touch-action:none;-webkit-overflow-scrolling:auto}}@media (max-width: 768px){.fantaweb-layout-mobile .fantaweb-content{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}}html.pwa-mode,html.pwa-mode *:not(svg):not(svg *){font-weight:600!important}
