@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600&family=Crimson+Text:wght@400;600&display=swap";:root{--color-gold-light: #f4e4bc;--color-gold-primary: #d4af37;--color-gold-dark: #8b6914;--color-gold-darker: #6a5515;--color-beige-light: #c4b998;--color-beige-medium: #9a8c6a;--color-beige-dark: #6a5d3a;--color-bg-black: #0a0a0a;--color-bg-blue-black: #1a1a2e;--color-bg-brown-black: #1a1611;--color-bg-brown-darker: #0f0d0a;--color-bg-brown-dark: #2a2416;--color-bg-brown-medium: #3a3322;--color-bg-brown-lighter: #221f18;--color-danger-darkest: #440808;--color-danger-dark: #661111;--color-danger-medium: #aa3333;--color-danger-light: #ff6666;--color-danger-primary: #dc2626;--color-danger-hover: #b91c1c;--primary-color: var(--color-gold-primary);--primary-hover: var(--color-gold-light);--secondary-color: var(--color-gold-dark);--secondary-hover: var(--color-bg-brown-medium);--danger-color: var(--color-danger-primary);--danger-hover: var(--color-danger-hover);--success-color: #059669;--warning-color: #d97706;--bg-primary: var(--color-bg-black);--bg-secondary: var(--color-bg-brown-black);--bg-input: var(--color-bg-brown-black);--bg-tertiary: var(--color-bg-blue-black);--bg-card: var(--color-bg-brown-black);--bg-card-gradient-start: var(--color-bg-brown-black);--bg-card-gradient-end: var(--color-bg-brown-darker);--text-primary: var(--color-gold-primary);--text-secondary: var(--color-beige-light);--text-normal: var(--color-beige-light);--text-light: var(--color-beige-medium);--text-muted: var(--color-beige-dark);--border-color: var(--color-gold-dark);--border-color-dark: var(--color-bg-brown-medium);--border-color-light: var(--color-gold-primary);--border-radius: .5rem;--border-radius-sm: .25rem;--border-radius-lg: .625rem;--border-width: 1px;--border-width-thick: 2px;--border-width-thicker: 3px;--box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--box-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--font-family: "Crimson Text", serif;--font-family-heading: "Cinzel", serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.05rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--text-primary);background-color:var(--bg-secondary)}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at top,var(--bg-tertiary) 0%,var(--bg-primary) 100%),url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><rect width="100" height="100" fill="%23000"/><circle cx="50" cy="50" r="1" fill="%23444" opacity="0.3"/></svg>');z-index:-2}.stone-texture{position:fixed;inset:0;opacity:.1;background:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(212,175,55,.03) 2px,rgba(212,175,55,.03) 4px);z-index:-1}.page-wrapper{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:var(--spacing-md);min-height:100vh}.main{position:relative}.header-full-width{width:100%;padding:var(--spacing-lg) 0;margin-bottom:var(--spacing-2xl);border-bottom:var(--border-width-thicker) solid var(--border-color);box-shadow:0 4px 20px #000c;background:linear-gradient(180deg,#000000e6,#000000b3)}.header-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.header-with-actions{display:flex;justify-content:space-between;align-items:center}.header-actions-container{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.header-separator{width:2px;height:32px;background:linear-gradient(180deg,transparent 0%,var(--border-color) 50%,transparent 100%);margin:0 var(--spacing-xs)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl);padding:var(--spacing-lg) 0;border-bottom:var(--border-width-thicker) solid var(--border-color);box-shadow:0 4px 20px #000c;background:linear-gradient(180deg,#000000e6,#000000b3)}.header:after{content:"";position:absolute;bottom:calc(-1 * var(--border-width-thicker));left:0;right:0;height:var(--border-width);background:linear-gradient(90deg,transparent,var(--primary-color),transparent);animation:shimmer 3s infinite}.header h1{font-family:var(--font-family-heading);font-size:var(--font-size-3xl);font-weight:600;text-shadow:2px 2px 4px #000,0 0 20px rgba(212,175,55,.5);letter-spacing:3px;margin-bottom:var(--spacing-sm);background:linear-gradient(180deg,var(--color-gold-light) 0%,var(--primary-color) 50%,var(--secondary-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.card{background:linear-gradient(135deg,#1a1611f2,#0f0d0af2);border:2px solid var(--secondary-color);border-radius:var(--border-radius-lg);padding:var(--spacing-md);position:relative;transition:all .3s}.card-header{font-family:Cinzel,serif;font-size:1rem;color:var(--primary-color);margin-bottom:.8rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color-dark);text-transform:uppercase;letter-spacing:1px}.card-header h3{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--spacing-sm)}.card-meta{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;color:var(--text-light);font-size:var(--font-size-sm);letter-spacing:1px}.card-meta>span{border:1px solid var(--border-color);padding:var(--spacing-xs) var(--spacing-sm);border-radius:calc(var(--border-radius) / 2);font-size:var(--font-size-sm);font-weight:500}.card-content{padding:var(--spacing-lg)}.card-actions{display:flex;gap:var(--spacing-sm);padding-top:var(--spacing-lg);margin-top:var(--spacing-md);border-top:var(--border-width) solid var(--border-color-dark)}.description{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-md)}.author{font-size:var(--font-size-sm);color:var(--text-light);font-style:italic}.card-header-top{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.status-badge{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);border:var(--border-width) solid;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.status-badge-pending{background:#d9770626;border-color:var(--warning-color);color:#fbbf24}.status-badge-draft{background:#6a5d3a33;border-color:var(--color-beige-dark);color:var(--text-light)}.btn{padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(135deg,var(--color-bg-brown-dark) 0%,var(--bg-secondary) 100%);color:var(--primary-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-family:var(--font-family);letter-spacing:1px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn:hover{background:linear-gradient(135deg,var(--color-bg-brown-medium) 0%,var(--color-bg-brown-dark) 100%);border-color:var(--border-color-light);transform:translateY(-1px);box-shadow:0 2px 8px #d4af374d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--color-gold-darker) 100%);color:var(--bg-secondary);font-weight:600}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%)}.btn-secondary{background-color:var(--secondary-color)}.btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-bg-brown-medium) 0%,var(--color-bg-brown-dark) 100%);border-color:var(--border-color-light);transform:translateY(-1px);box-shadow:0 2px 8px #d4af374d}.btn-danger{background:linear-gradient(135deg,var(--color-danger-dark) 0%,var(--color-danger-darkest) 100%);color:var(--color-danger-light);border-color:var(--color-danger-medium)}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,var(--color-danger-medium) 0%,var(--color-danger-dark) 100%);border-color:var(--color-danger-light);color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #dc262666}.split-button-container{position:relative;display:inline-flex}.split-button-group{display:flex;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.split-button-main{position:relative;padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(135deg,var(--secondary-color) 0%,var(--color-gold-darker) 100%);color:var(--bg-secondary);border:var(--border-width) solid rgba(0,0,0,.2);font-family:var(--font-family);font-size:var(--font-size-base);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100px;flex-shrink:0;transition:all .2s ease;border-top-left-radius:var(--border-radius);border-bottom-left-radius:var(--border-radius)}.split-button-main:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%)}.split-button-main:active:not(:disabled){transform:translateY(1px)}.split-button-main:disabled{opacity:.5;cursor:not-allowed}.split-button-toggle{padding:var(--spacing-sm);background:linear-gradient(135deg,var(--secondary-color) 0%,var(--color-gold-darker) 100%);color:var(--bg-secondary);border:var(--border-width) solid rgba(0,0,0,.2);border-left:1px solid rgba(0,0,0,.3);font-size:var(--font-size-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:32px;transition:all .2s ease;border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius)}.split-button-toggle:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%)}.split-button-toggle:disabled{opacity:.7;cursor:not-allowed;filter:brightness(.95)}.split-button-toggle.active{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%)}.indicator{gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-light)}.split-button-main .indicator{display:flex;align-items:center;justify-content:center;pointer-events:none}.indicator.indicator-unsaved{color:var(--warning-color);text-shadow:0 0 10px var(--warning-color)}.indicator.indicator-autosave{color:var(--success-color);text-shadow:0 0 10px var(--success-color);animation:pulse 2s ease-in-out infinite}.dropdown-menu{position:absolute;top:calc(100% + var(--spacing-xs));right:0;min-width:150px;background:var(--color-bg-brown-black);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--box-shadow-lg);z-index:1000;overflow:hidden;animation:slideDown .15s ease-out}.menu-item{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;display:flex;align-items:center;gap:var(--spacing-sm);transition:all .2s ease;border:none;background:none;width:100%;text-align:left}.menu-item:hover:not(:disabled){background:var(--color-bg-brown-medium);color:var(--text-primary)}.menu-item:disabled{opacity:.5;cursor:not-allowed}.menu-item+.menu-item{border-top:var(--border-width) solid var(--border-color-dark)}.split-button-container .menu-divider{height:1px;background:var(--border-color);margin:var(--spacing-xs) 0}.chevron-down{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.btn-action{white-space:nowrap;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-md);font-weight:600;letter-spacing:.5px;min-width:8.125rem}.btn-xs{padding:2px 6px;font-size:var(--font-size-xs)}.btn-sm{padding:4px 8px;font-size:var(--font-size-xs)}.form-label{font-family:var(--font-family-heading);color:var(--primary-color);font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm);display:block;text-transform:uppercase;letter-spacing:1px}.form-checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);font-size:var(--font-size-base);cursor:pointer;-webkit-user-select:none;user-select:none}.form-checkbox-label input[type=checkbox]{width:auto;cursor:pointer;accent-color:var(--primary-color)}.form-input,.form-textarea,.form-select{width:100%;background:var(--bg-secondary);border:var(--border-width-thick) solid var(--border-color-dark);color:var(--text-secondary);padding:var(--spacing-sm);font-family:var(--font-family);font-size:var(--font-size-base);border-radius:var(--border-radius);transition:all .3s}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--border-color);box-shadow:0 0 10px #d4af3733}.form-textarea{min-height:200px;resize:vertical;line-height:1.6}.form-row{display:flex;gap:var(--spacing-md)}.form-row .form-group{flex:1}.form-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.form-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:var(--spacing-md)}.editor-form{background:var(--bg-primary);border-radius:var(--border-radius);padding:var(--spacing-lg);max-width:600px;max-height:80vh;overflow-y:auto;box-shadow:var(--box-shadow-lg);width:100%}.editor-form h4{margin-bottom:var(--spacing-lg);color:var(--text-primary);border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-sm)}.modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:2000;padding:var(--spacing-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:linear-gradient(135deg,var(--bg-card-gradient-start) 0%,var(--bg-card-gradient-end) 100%);border:var(--border-width-thick) solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);max-width:500px;width:100%;box-shadow:0 20px 60px #000000e6,inset 0 1px #d4af3733;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:var(--border-width) solid var(--border-color)}.modal-header h2{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);color:var(--primary-color);text-shadow:2px 2px 4px rgba(0,0,0,.5);margin:0}.modal-close-btn{background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-3xl);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.modal-close-btn:hover{color:var(--primary-color);transform:rotate(90deg)}.modal-body{margin-bottom:var(--spacing-lg)}.modal-footer{display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding-top:var(--spacing-md);border-top:var(--border-width) solid var(--border-color-dark)}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-xl)}.login-form{display:flex;flex-direction:column}.login-form .form-group{margin-bottom:var(--spacing-lg)}.login-form label{display:block;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.login-form .form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);color:var(--text-secondary);font-family:var(--font-family);font-size:var(--font-size-base);transition:all .3s}.login-form .form-input:focus{outline:none;border-color:var(--border-color);box-shadow:0 0 15px #d4af374d}.login-form .form-input:disabled{opacity:.6;cursor:not-allowed}.alert{padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-md);font-size:var(--font-size-sm)}.alert-error{background:#dc262626;border:var(--border-width) solid var(--color-danger-dark);color:var(--color-danger-light)}.alert-success{background:#05966926;border:var(--border-width) solid var(--success-color);color:#6ee7b7}.alert-warning{background:#d9770626;border:var(--border-width) solid var(--warning-color);color:#fbbf24}.user-widget{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);font-size:var(--font-size-base)}.btn-login{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);font-weight:600;box-shadow:0 2px 8px #d4af374d;border-width:var(--border-width-thick)}.btn-login:hover:not(:disabled){box-shadow:0 4px 12px #d4af3766}.user-dropdown-container{position:relative}.user-settings-btn{letter-spacing:1px}.user-dropdown-menu{position:absolute;top:calc(100% + var(--spacing-xs));right:0;min-width:180px;background:linear-gradient(135deg,var(--color-bg-brown-dark) 0%,var(--bg-secondary) 100%);border:var(--border-width-thick) solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 10px 25px #000c,0 0 15px #d4af3733;z-index:1000;overflow:hidden}.user-dropdown-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;color:var(--text-secondary);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:500;text-align:left;cursor:pointer;transition:all .2s;border-bottom:var(--border-width) solid var(--border-color-dark)}.user-dropdown-item:last-child{border-bottom:none}.user-dropdown-item:hover{background:linear-gradient(135deg,var(--color-bg-brown-medium) 0%,var(--color-bg-brown-dark) 100%);color:var(--primary-color)}.user-dropdown-item-danger:hover{background:linear-gradient(135deg,var(--color-danger-dark) 0%,var(--color-danger-darkest) 100%);color:var(--color-danger-light)}.markdown-content h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md);color:var(--primary-color);border-bottom:2px solid var(--border-color);padding-bottom:var(--spacing-sm)}.markdown-content h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm);margin-top:var(--spacing-lg);color:var(--text-primary)}.markdown-content h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm);margin-top:var(--spacing-md);color:var(--text-primary)}.markdown-content p{margin-bottom:var(--spacing-md);line-height:1.6}.markdown-content strong{font-weight:600;color:var(--text-primary)}.markdown-content em{font-style:italic;color:var(--text-secondary)}.markdown-content blockquote{margin:var(--spacing-md) 0;padding:var(--spacing-md) var(--spacing-lg);border-left:var(--border-width-thicker) solid var(--border-color);background:linear-gradient(90deg,rgba(212,175,55,.05) 0%,transparent 100%);font-style:italic;color:var(--text-secondary);position:relative}.markdown-content blockquote:before{content:'"';position:absolute;left:var(--spacing-xs);top:0;font-size:var(--font-size-3xl);color:var(--border-color);opacity:.3;font-family:var(--font-family-heading);line-height:1}.markdown-content blockquote p{margin:0}.markdown-content blockquote p:not(:last-child){margin-bottom:var(--spacing-sm)}.image-card{background:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--box-shadow);overflow:hidden;margin-bottom:var(--spacing-md)}.image-card h4{margin-bottom:var(--spacing-sm);color:var(--text-primary)}.image-container{margin-top:var(--spacing-sm);text-align:center;background:var(--bg-secondary);padding:var(--spacing-sm);border-radius:var(--border-radius)}.image-container img{transition:transform .2s ease}.image-container img:hover{transform:scale(1.02)}.image-preview{text-align:center;margin-top:var(--spacing-sm)}.image-preview img{border:1px solid var(--border-color);border-radius:var(--border-radius)}.loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.error{padding:var(--spacing-lg);background:#dc26261a;border:1px solid var(--danger-color);border-radius:var(--border-radius);color:var(--danger-color);margin-bottom:var(--spacing-lg)}.auth-link-section{text-align:center;margin:var(--spacing-md) 0}.auth-link-text{color:var(--text-secondary)}.auth-link-button{color:var(--color-primary);background:none;border:none;padding:0;font:inherit;cursor:pointer;text-decoration:underline;transition:color .2s}.auth-link-button:hover:not(:disabled){color:var(--primary-hover)}.auth-link-button:disabled{opacity:.5;cursor:not-allowed}.user-settings-modal{max-width:600px;max-height:90vh;display:flex;flex-direction:column}.user-settings-modal .modal-body{overflow-y:auto;flex:1;min-height:0}.user-info-section{margin-bottom:var(--spacing-xl)}.user-info-section h3{font-family:var(--font-family-heading);font-size:var(--font-size-lg);color:var(--primary-color);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:1px}.user-info-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}.user-info-item{background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius);border:var(--border-width) solid var(--border-color-dark)}.user-info-item label{display:block;font-size:var(--font-size-xs);color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.user-info-value{font-size:var(--font-size-lg);color:var(--primary-color);font-weight:600}.user-info-input{font-size:var(--font-size-lg);color:var(--primary-color);font-weight:600;background:#0000004d;padding:var(--spacing-sm) var(--spacing-md);margin-top:var(--spacing-xs)}.user-info-input:focus{background:#00000080}.user-actions-section h3{font-family:var(--font-family-heading);font-size:var(--font-size-lg);color:var(--primary-color);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:1px}.action-item{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--border-radius);border:var(--border-width) solid var(--border-color-dark);margin-bottom:var(--spacing-md)}.action-item.danger-zone{border-color:var(--color-danger-dark);background:linear-gradient(135deg,rgba(68,8,8,.3) 0%,var(--bg-secondary) 100%)}.action-item.confirm-delete{flex-direction:column;align-items:flex-start}.action-description{flex:1}.action-description strong{display:block;color:var(--text-primary);font-size:var(--font-size-md);margin-bottom:var(--spacing-xs)}.action-description p{color:var(--text-light);font-size:var(--font-size-sm);margin:0}.confirm-actions{display:flex;gap:var(--spacing-sm);width:100%;margin-top:var(--spacing-md)}.site-footer{margin-top:var(--spacing-2xl);padding:var(--spacing-xl) 0;border-top:var(--border-width) solid var(--border-color-dark);background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 100%)}.footer-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md);text-align:center}.footer-links{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.footer-link{background:none;border:none;color:var(--text-light);font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);transition:all .2s}.footer-link:hover{color:var(--primary-color);text-decoration:underline}.footer-separator{color:var(--text-muted);-webkit-user-select:none;user-select:none}.footer-copyright{color:var(--text-muted);font-size:var(--font-size-xs)}.info-modal{max-width:700px}.info-modal-body{max-height:60vh;overflow-y:auto;padding-right:var(--spacing-sm)}.info-content{color:var(--text-secondary);line-height:1.7}.info-content h3{font-family:var(--font-family-heading);font-size:var(--font-size-xl);color:var(--primary-color);margin-bottom:var(--spacing-lg);text-transform:uppercase;letter-spacing:1px}.info-content h4{font-family:var(--font-family-heading);font-size:var(--font-size-lg);color:var(--text-primary);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md)}.info-content p{margin-bottom:var(--spacing-md)}.info-content ul{margin:var(--spacing-md) 0;padding-left:var(--spacing-xl)}.info-content li{margin-bottom:var(--spacing-sm)}.info-content a{color:var(--primary-color);text-decoration:underline;transition:color .2s}.info-content a:hover{color:var(--primary-hover)}.contact-info{background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius);border:var(--border-width) solid var(--border-color-dark);margin:var(--spacing-md) 0}.info-footnote{margin-top:var(--spacing-xl);padding-top:var(--spacing-md);border-top:var(--border-width) solid var(--border-color-dark);color:var(--text-muted);font-size:var(--font-size-xs)}.queue-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-md);border-bottom:var(--border-width) solid var(--border-color)}.queue-header h2{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);color:var(--primary-color);margin:0}.queue-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.queue-item{background:linear-gradient(135deg,var(--bg-card-gradient-start) 0%,var(--bg-card-gradient-end) 100%);border:var(--border-width-thick) solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);transition:all .3s}.queue-item:hover{border-color:var(--border-color-light);box-shadow:0 4px 12px #d4af3733}.queue-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.queue-item-info{flex:1}.queue-item-title{font-family:var(--font-family-heading);font-size:var(--font-size-xl);color:var(--primary-color);margin:0 0 var(--spacing-sm) 0}.queue-item-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);color:var(--text-light);font-size:var(--font-size-sm)}.meta-separator{color:var(--text-muted)}.queue-item-details{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:var(--border-width) solid var(--border-color-dark)}.queue-item-description{color:var(--text-secondary);line-height:1.6}.queue-item-description h4{font-family:var(--font-family-heading);color:var(--primary-color);font-size:var(--font-size-md);margin-bottom:var(--spacing-sm)}.queue-item-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.empty-queue{text-align:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.user-management-toolbar{display:flex;align-items:center;gap:var(--spacing-md)}.user-search-input{min-width:300px;flex:1}.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:var(--font-size-sm)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.hidden{display:none}.flex{display:flex}.flex-column{flex-direction:column}.flex-1{flex:1}.flex-between{justify-content:space-between}.flex-center{align-items:center}.flex-between-center{display:flex;justify-content:space-between;align-items:center}.flex-center-gap{display:flex;align-items:center;gap:var(--spacing-xs)}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}@media(max-width:768px){.container{padding:var(--spacing-sm)}.header{flex-direction:column;gap:var(--spacing-lg);align-items:stretch;padding:var(--spacing-md) 0}.header-full-width{padding:var(--spacing-md) 0}.header-content h1,.header h1{font-size:var(--font-size-2xl)}.header-with-actions{flex-direction:column;gap:var(--spacing-md);align-items:stretch}.header-separator{display:none}.user-dropdown-container,.user-settings-btn,.btn-action{width:100%}.card-actions{flex-direction:column}.create-btn{bottom:var(--spacing-md);right:var(--spacing-md);left:var(--spacing-md);border-radius:var(--border-radius)}.form-overlay{padding:var(--spacing-sm)}.editor-form{max-height:90vh;padding:var(--spacing-md)}.form-row{flex-direction:column;gap:var(--spacing-sm)}.form-actions{flex-direction:column}.card-actions{flex-direction:column;gap:var(--spacing-xs)}.modal-content{max-width:90%;padding:var(--spacing-lg)}.modal-header h2{font-size:var(--font-size-xl)}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}.flex.gap-md{flex-direction:column;gap:var(--spacing-sm)}.user-info-grid{grid-template-columns:1fr}.action-item{flex-direction:column;align-items:flex-start}.action-item .btn{width:100%}.confirm-actions{flex-direction:column}.confirm-actions .btn{width:100%}.footer-links{flex-direction:column;gap:var(--spacing-xs)}.footer-separator{display:none}.info-modal{max-width:95%}.info-modal-body{max-height:70vh}.user-management-toolbar{flex-direction:column;align-items:stretch}.user-search-input{min-width:unset;width:100%}.queue-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}}.markdown-renderer-wrapper{position:relative}.btn-expand-text{display:inline-block;margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:none;border:1px solid var(--color-gold-dark);color:var(--color-gold-primary);font-size:.875rem;cursor:pointer;border-radius:var(--border-radius);transition:all .2s ease;font-family:var(--font-primary)}.btn-expand-text:hover{background:var(--color-gold-dark);color:var(--bg-primary);border-color:var(--color-gold-primary)}.btn-expand-text:active{transform:translateY(1px)}.markdown-content{transition:max-height .3s ease}.markdown-content table{width:100%;border-collapse:collapse;margin:var(--spacing-md) 0;overflow-x:auto}.markdown-content table th,.markdown-content table td{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gold-dark);text-align:left}.markdown-content table th{background:var(--color-bg-brown-medium);color:var(--color-gold-primary);font-weight:600;font-family:var(--font-heading)}.markdown-content table tbody{display:table-row-group}.markdown-content table tr{display:table-row}.markdown-content table tr:nth-child(2n){background:var(--color-bg-brown-darker)}.markdown-content table tr:hover{background:var(--color-bg-brown-lighter)}@media(max-width:768px){.markdown-content table{font-size:.875rem}.markdown-content table th,.markdown-content table td{padding:var(--spacing-xs) var(--spacing-sm)}}.ai-settings-modal{max-width:650px;max-height:90vh;display:flex;flex-direction:column}.ai-settings-modal .modal-body{overflow-y:auto;flex:1;min-height:0}.ai-settings-info{background:#d4af371a;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-xl)}.ai-settings-info .info-text{color:var(--text-light);font-size:var(--font-size-sm);margin:0;line-height:1.5}.settings-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:var(--border-width) solid var(--border-color-dark)}.settings-section:last-of-type{border-bottom:none}.settings-section h3{color:var(--text-normal);font-size:var(--font-size-lg);margin-bottom:var(--spacing-md);font-weight:600}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;color:var(--text-normal);font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--spacing-xs)}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-input);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);color:var(--text-normal);font-size:var(--font-size-base);font-family:var(--font-family);transition:all .2s}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #d4af371a}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-input-error{border-color:#dc3545}.form-input-error:focus{border-color:#dc3545;box-shadow:0 0 0 2px #dc35451a}.form-error{display:block;color:#dc3545;font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.form-hint{display:block;color:var(--text-dim);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23d4af37' d='M4 6l4 4 4-4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-sm) center;background-size:16px;padding-right:calc(var(--spacing-md) + 24px);cursor:pointer}select.form-input:disabled{cursor:not-allowed;opacity:.6}select.form-input option{background:var(--bg-secondary);color:var(--text-secondary);padding:var(--spacing-sm)}select.form-input option:hover,select.form-input option:focus,select.form-input option:checked{background:var(--color-bg-brown-medium);color:var(--text-primary)}.form-help{color:var(--text-muted);font-size:var(--font-size-xs);margin-top:var(--spacing-xs);margin-bottom:0;line-height:1.4}.form-help a{color:var(--primary-color);text-decoration:none;font-weight:500;transition:all .2s}.form-help a:hover{color:var(--primary-hover);text-decoration:underline}.form-range{width:100%;height:6px;background:var(--bg-input);border-radius:var(--border-radius);outline:none;-webkit-appearance:none;margin:var(--spacing-sm) 0}.form-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:var(--primary-color);border-radius:50%;cursor:pointer;transition:all .2s}.form-range::-webkit-slider-thumb:hover{background:var(--primary-hover);transform:scale(1.1)}.form-range::-moz-range-thumb{width:18px;height:18px;background:var(--primary-color);border-radius:50%;cursor:pointer;border:none;transition:all .2s}.form-range::-moz-range-thumb:hover{background:var(--primary-hover);transform:scale(1.1)}.loading-state{padding:var(--spacing-xl);text-align:center;color:var(--text-muted)}.ai-assistant-panel{background:linear-gradient(135deg,#8a2be21a,#4b00821a);border:var(--border-width-thick) solid rgba(138,43,226,.3);border-radius:var(--border-radius-lg);margin:var(--spacing-lg) 0;overflow:hidden;transition:all .3s ease}.ai-assistant-panel.ai-assistant-disabled{background:#8080801a;border-color:var(--border-color)}.ai-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:#8a2be226;cursor:pointer;transition:background .2s}.ai-panel-header:hover{background:#8a2be233}.ai-panel-header h4{margin:0;color:var(--text-normal);font-size:var(--font-size-lg);font-weight:600}.ai-panel-toggle{background:none;border:none;color:var(--text-light);font-size:var(--font-size-lg);cursor:pointer;padding:0;transition:transform .3s}.ai-panel-body{padding:var(--spacing-lg)}.ai-settings-prompt{color:var(--text-light);margin:0;line-height:1.6}.ai-settings-prompt a{color:var(--primary-color);text-decoration:none;font-weight:500}.ai-settings-prompt a:hover{text-decoration:underline}.ai-operations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.btn-ai{background:linear-gradient(135deg,#8a2be2cc,#4b0082cc);border:var(--border-width) solid rgba(138,43,226,.5);color:var(--text-normal);padding:var(--spacing-md);border-radius:var(--border-radius);font-weight:500;transition:all .2s;cursor:pointer;text-align:left;font-size:var(--font-size-sm);box-shadow:0 0 8px #8a2be233}.btn-ai:hover:not(:disabled){background:linear-gradient(135deg,#8a2be2,indigo);transform:translateY(-2px);box-shadow:0 4px 12px #8a2be266}.btn-ai:disabled{opacity:.6;cursor:not-allowed;position:relative}.btn-ai:disabled:after{content:"";position:absolute;top:50%;left:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border:2px solid rgba(255,255,255,.3);border-top-color:#fffc;border-radius:50%;animation:ai-spinner-rotate .6s linear infinite}@keyframes ai-spinner-rotate{to{transform:rotate(360deg)}}.btn-ai:focus-visible{outline:2px solid rgba(138,43,226,1);outline-offset:2px}.ai-loading{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-2xl);gap:var(--spacing-md)}.ai-spinner{width:40px;height:40px;border:4px solid rgba(138,43,226,.2);border-top-color:#8a2be2;border-radius:50%;animation:ai-spin 1s linear infinite}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-loading p{color:var(--text-light);margin:0;font-size:var(--font-size-sm)}.btn-ai-corner{position:absolute;top:0;right:0;background:linear-gradient(135deg,#8a2be2f2,#4b0082f2);border:var(--border-width) solid rgba(138,43,226,.6);border-radius:var(--border-radius);color:var(--text-normal);padding:6px 10px;min-width:32px;min-height:32px;font-size:14px;cursor:pointer;transition:all .2s;z-index:1;box-shadow:0 0 8px #8a2be240}@keyframes ai-button-pulse{0%,to{box-shadow:0 0 8px #8a2be240}50%{box-shadow:0 0 16px #8a2be273}}.btn-ai-corner:not(:hover){animation:ai-button-pulse 3s ease-in-out infinite}.btn-ai-corner:hover{background:linear-gradient(135deg,#8a2be2,indigo);transform:translateY(-2px) scale(1.05);box-shadow:0 4px 16px #8a2be280;animation:none}.btn-ai-corner:focus-visible{outline:2px solid rgba(138,43,226,1);outline-offset:2px}.btn-ai-inline{background:linear-gradient(135deg,#8a2be2e6,#4b0082e6);border:var(--border-width) solid rgba(138,43,226,.5);border-radius:var(--border-radius);color:var(--text-normal);padding:6px 12px;font-size:14px;cursor:pointer;transition:all .2s;white-space:nowrap;box-shadow:0 0 6px #8a2be233}.btn-ai-inline:hover{background:linear-gradient(135deg,#8a2be2,indigo);transform:translateY(-1px);box-shadow:0 2px 10px #8a2be266}.btn-ai-inline:focus-visible{outline:2px solid rgba(138,43,226,1);outline-offset:2px}@media(prefers-reduced-motion:reduce){.btn-ai-corner{animation:none!important}.btn-ai:disabled:after{animation:none!important;border:2px solid rgba(255,255,255,.5)}.btn-ai:hover:not(:disabled),.btn-ai-corner:hover,.btn-ai-inline:hover{transform:none}}.form-group-with-ai{position:relative}.form-group-with-ai .form-label{padding-right:50px}.input-with-ai-button{display:flex;gap:var(--spacing-sm);align-items:center}.input-with-ai-button .form-input{flex:1}.subsection-actions{display:flex;gap:var(--spacing-sm);align-items:center}.ai-assistant-modal{max-width:800px;max-height:90vh;overflow-y:auto}.ai-context-preview{background:#0003;border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.ai-context-preview h4{margin-top:0;margin-bottom:var(--spacing-sm);color:var(--text-light);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.context-preview-content{font-size:var(--font-size-sm);line-height:1.6}.context-preview-content strong{color:var(--text-normal)}.ai-customize-section{margin-bottom:var(--spacing-lg)}.customize-toggle{background:#0003;border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);color:var(--text-normal);cursor:pointer;width:100%;text-align:left;font-size:var(--font-size-sm);font-weight:500;transition:all .2s;margin-bottom:var(--spacing-md)}.customize-toggle:hover{background:#0000004d;border-color:var(--primary-color)}.customize-content{animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ai-generate-section{margin-bottom:var(--spacing-lg)}.btn-block{width:100%;text-align:center}.ai-result-section{background:#0003;border:var(--border-width) solid rgba(138,43,226,.3);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.ai-result-section h4{margin-top:0;margin-bottom:var(--spacing-md);color:var(--text-normal);display:flex;align-items:center;gap:var(--spacing-sm)}.ai-result-preview{font-size:var(--font-size-sm);line-height:1.6}.ai-result-preview h5{margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm);color:var(--text-normal)}.ai-result-preview h6{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-xs);color:var(--text-light);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.5px}.ai-result-preview ul{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg)}.ai-result-preview li{margin-bottom:var(--spacing-xs)}.suggestion-card{background:#0003;border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.suggestion-card h5{margin-top:0;margin-bottom:var(--spacing-sm);color:var(--text-normal)}.suggestion-card p{margin:var(--spacing-xs) 0;color:var(--text-light)}.tags-preview{background:#0003;border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);padding:var(--spacing-md);color:var(--text-normal);font-family:var(--font-mono);font-size:var(--font-size-sm)}.ai-result{background:#0000004d;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);overflow:hidden}.ai-result-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:#8a2be21a;border-bottom:var(--border-width) solid var(--border-color)}.ai-result-header h5{margin:0;color:var(--text-normal);font-size:var(--font-size-base);font-weight:600}.ai-result-content{padding:var(--spacing-lg)}.ai-result-preview{background:#0003;border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);padding:var(--spacing-md);max-height:400px;overflow-y:auto;color:var(--text-light);line-height:1.6}.ai-result-preview p{margin:0 0 var(--spacing-sm) 0}.ai-result-preview p:last-child{margin-bottom:0}.ai-result-preview ul{margin:var(--spacing-sm) 0;padding-left:var(--spacing-xl)}.ai-result-preview li{margin-bottom:var(--spacing-sm)}.ai-result-preview strong{color:var(--text-normal)}.ai-result-preview em{color:var(--primary-color)}.ai-result-actions{padding:var(--spacing-md);background:#0003;border-top:var(--border-width) solid var(--border-color-dark);display:flex;gap:var(--spacing-sm);justify-content:flex-end}.alert-close{background:none;border:none;color:var(--text-muted);font-size:var(--font-size-xl);line-height:1;cursor:pointer;padding:0;margin-left:var(--spacing-md);transition:color .2s}.alert-close:hover{color:var(--text-normal)}@media(max-width:768px){.ai-operations-grid{grid-template-columns:1fr}.btn-ai{padding:var(--spacing-sm)}.ai-result-preview{max-height:300px}.btn-ai-corner{padding:8px 12px;min-width:44px;min-height:44px;font-size:16px}.form-group-with-ai .form-label{padding-right:60px}}.autocomplete-container{position:relative;width:100%}.autocomplete-input{width:100%}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;max-height:300px;overflow-y:auto;background:var(--bg-secondary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 8px #00000080;margin-top:var(--spacing-xs);z-index:2100}.autocomplete-option{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color .2s;border-bottom:var(--border-width) solid var(--border-color-dark)}.autocomplete-option:last-child{border-bottom:none}.autocomplete-option:hover,.autocomplete-option.highlighted{background:var(--hover-color)}.autocomplete-option-label{color:var(--text-normal);font-weight:500}.autocomplete-option-id{color:var(--text-muted);font-size:var(--font-size-sm);margin-top:var(--spacing-xs);font-family:Courier New,monospace}.autocomplete-loading,.autocomplete-empty{padding:var(--spacing-md);text-align:center;color:var(--text-muted)}.autocomplete-loading{font-style:italic}.autocomplete-empty{opacity:.7}.confirm-dialog{max-width:400px;text-align:center;padding:2rem}.confirm-dialog-icon{font-size:3rem;margin-bottom:1rem}.confirm-dialog-icon.danger{color:var(--color-danger-primary, #dc2626)}.confirm-dialog-icon.warning{color:var(--warning-color, #d97706)}.confirm-dialog-icon.info{color:var(--primary-color, #d4af37)}.confirm-dialog-title{font-size:1.5rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary, #f9fafb)}.confirm-dialog-message{color:var(--text-secondary, #9ca3af);margin-bottom:1.5rem;line-height:1.5}.confirm-dialog-actions{display:flex;gap:.75rem;justify-content:center}.confirm-dialog-actions .btn{min-width:100px}.confirm-dialog-input-group{margin:1.5rem 0;text-align:left}.confirm-dialog-input-label{display:block;color:var(--text-secondary, #9ca3af);margin-bottom:.5rem;font-size:.875rem}.confirm-dialog-input-label strong{color:var(--color-danger-primary, #dc2626);font-weight:600}.confirm-dialog-input{width:100%;padding:.5rem;background:var(--bg-secondary, #1f2937);border:1px solid var(--border-color, #374151);border-radius:4px;color:var(--text-primary, #f9fafb);font-size:.875rem}.confirm-dialog-input:focus{outline:none;border-color:var(--color-danger-primary, #dc2626)}.confirm-dialog-actions .btn:disabled{opacity:.5;cursor:not-allowed}.conversation-modal{max-width:1400px;width:90vw;height:85vh;display:flex;flex-direction:column;padding:0}.conversation-modal .modal-header{margin-bottom:0;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0}.conversation-modal .modal-header h2{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);color:var(--primary-color);text-shadow:2px 2px 4px rgba(0,0,0,.5);margin:0}.conversation-modal-body{flex:1;display:flex;gap:1px;overflow:hidden;background:var(--border-color-dark);margin-bottom:0}.conversation-panel{flex:0 0 40%;background:linear-gradient(135deg,var(--bg-card-gradient-start) 0%,var(--bg-card-gradient-end) 100%);display:flex;flex-direction:column;overflow:hidden}.messages-container{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.message{display:flex;flex-direction:column;gap:var(--spacing-xs)}.message-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.message-user{align-items:flex-end}.message-user .message-label{color:var(--primary-color)}.message-user .message-content{background:#d4af371a;border:var(--border-width) solid rgba(212,175,55,.3);margin-left:3rem}.message-assistant{align-items:flex-start}.message-assistant .message-label{color:var(--text-secondary)}.message-assistant .message-content{background:#0000004d;border:var(--border-width) solid var(--border-color-dark);margin-right:3rem}.message-content{padding:var(--spacing-md);border-radius:var(--border-radius);color:var(--text-secondary);line-height:1.6}.message-content strong{color:var(--text-primary)}.message-content em{color:var(--primary-color);font-style:normal}.typing-indicator{display:flex;gap:var(--spacing-xs);padding:var(--spacing-xs) 0}.typing-indicator span{width:8px;height:8px;background:var(--text-muted);border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.input-container{padding:var(--spacing-md) var(--spacing-lg);border-top:var(--border-width) solid var(--border-color);background:#0003;display:flex;gap:var(--spacing-md)}.message-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:var(--border-width-thick) solid var(--border-color-dark);border-radius:var(--border-radius);color:var(--text-secondary);font-size:var(--font-size-sm);font-family:var(--font-family);resize:vertical;min-height:60px;transition:all .3s}.message-input:focus{outline:none;border-color:var(--border-color);box-shadow:0 0 10px #d4af3733}.message-input:disabled{opacity:.5;cursor:not-allowed}.preview-panel{flex:0 0 60%;background:linear-gradient(135deg,var(--bg-card-gradient-start) 0%,var(--bg-card-gradient-end) 100%);padding:var(--spacing-lg) var(--spacing-xl);overflow-y:auto}.preview-panel h3{margin:0 0 var(--spacing-lg) 0;color:var(--primary-color);font-family:var(--font-family-heading);font-size:var(--font-size-xl);text-transform:uppercase;letter-spacing:1px}.preview-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-style:italic}.preview-field{margin-bottom:var(--spacing-lg)}.preview-field label{display:block;font-weight:600;color:var(--primary-color);margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.preview-value{color:var(--text-secondary);line-height:1.6}.preview-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.preview-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag{padding:var(--spacing-xs) var(--spacing-md);background:#d4af3726;border:var(--border-width) solid var(--border-color);border-radius:16px;font-size:var(--font-size-sm);color:var(--text-secondary)}.preview-sections{display:flex;flex-direction:column;gap:var(--spacing-md)}.preview-section{padding:var(--spacing-md);background:#0003;border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius)}.preview-section strong{display:block;color:var(--primary-color);margin-bottom:var(--spacing-sm)}.preview-section p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);font-size:var(--font-size-sm)}.preview-connections{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.connection-badge{padding:var(--spacing-xs) var(--spacing-md);background:#8a2be233;border:var(--border-width) solid rgba(138,43,226,.4);color:var(--text-secondary);border-radius:var(--border-radius);font-size:var(--font-size-xs);font-weight:600}.preview-encounter{padding:var(--spacing-md);background:#0000004d;border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);margin-bottom:var(--spacing-md)}.preview-encounter strong{display:block;color:#c93;margin-bottom:var(--spacing-sm)}.preview-encounter p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);font-size:var(--font-size-sm)}.creatures-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.creature-badge{padding:var(--spacing-xs) var(--spacing-md);background:#dc262633;border:var(--border-width) solid rgba(220,38,38,.4);color:var(--text-secondary);border-radius:var(--border-radius);font-size:var(--font-size-xs);font-weight:600}.preview-items{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.item-badge{padding:var(--spacing-xs) var(--spacing-md);background:#d9770633;border:var(--border-width) solid rgba(217,119,6,.4);color:var(--text-secondary);border-radius:var(--border-radius);font-size:var(--font-size-xs);font-weight:600}.editable-field{position:relative}.editable-field label{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.btn-edit-field{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:1rem;padding:var(--spacing-xs);opacity:.6;transition:all .2s}.btn-edit-field:hover{opacity:1;transform:scale(1.1)}.preview-value.editing{background:#0000004d;border:var(--border-width) solid var(--primary-color);border-radius:var(--border-radius);padding:var(--spacing-sm)}.edit-controls{display:flex;flex-direction:column;gap:var(--spacing-sm)}.edit-input{width:100%;padding:var(--spacing-sm);background:var(--bg-secondary);border:var(--border-width-thick) solid var(--border-color-dark);border-radius:var(--border-radius);color:var(--text-secondary);font-family:var(--font-family);font-size:inherit;transition:all .3s}.edit-input:focus{outline:none;border-color:var(--border-color);box-shadow:0 0 10px #d4af3733}.edit-buttons{display:flex;gap:var(--spacing-sm)}.edit-hint{font-size:var(--font-size-xs);color:var(--text-muted);font-style:italic;margin-top:var(--spacing-xs)}.editable-tag{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.tag-remove{background:none;border:none;color:inherit;cursor:pointer;font-size:1.2rem;line-height:1;padding:0 var(--spacing-xs);opacity:.7;transition:opacity .2s}.tag-remove:hover{opacity:1}.read-only{opacity:.9}.conversation-modal .modal-footer{padding:var(--spacing-md) var(--spacing-xl);margin-top:0;border-top:var(--border-width) solid var(--border-color);border-radius:0 0 var(--border-radius-lg) var(--border-radius-lg);background:#0000004d}.wizard-modal-overlay{padding:var(--spacing-lg)}.wizard-modal{max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.wizard-header{flex-shrink:0}.wizard-steps{display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-xl);background:#0003;border-bottom:var(--border-width) solid var(--border-color);gap:var(--spacing-sm);flex-shrink:0}.wizard-step{display:flex;align-items:center;gap:var(--spacing-sm);opacity:.5;transition:opacity .2s;flex:1}.wizard-step.active{opacity:1}.wizard-step.completed{opacity:.8}.wizard-step-number{width:28px;height:28px;border-radius:50%;background:var(--bg-tertiary);border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-sm);flex-shrink:0}.wizard-step.active .wizard-step-number{background:var(--primary-color);border-color:var(--primary-color);color:var(--bg-primary)}.wizard-step.completed .wizard-step-number{background:var(--success-color);border-color:var(--success-color);color:#fff}.wizard-step-info{display:flex;flex-direction:column}.wizard-step-label{font-weight:600;font-size:var(--font-size-sm);color:var(--text-primary)}.wizard-step-description{font-size:var(--font-size-xs);color:var(--text-secondary)}.wizard-content{flex:1;overflow-y:auto;padding:var(--spacing-xl)}.wizard-error{margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.wizard-error .alert-dismiss{background:none;border:none;color:inherit;font-size:var(--font-size-lg);cursor:pointer;padding:0;margin-left:var(--spacing-md)}.wizard-actions{display:flex;justify-content:space-between;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:var(--border-width) solid var(--border-color)}.wizard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);gap:var(--spacing-lg);color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.wizard-setup-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.wizard-form-section{background:#00000026;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--spacing-lg)}.wizard-form-section h3{font-size:var(--font-size-lg);color:var(--primary-color);margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:var(--border-width) solid var(--border-color)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.premise-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.premise-textarea{min-height:100px;resize:vertical}.premise-suggestions{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:#0000001a;border-radius:var(--border-radius-md)}.premise-suggestions h4{margin:0 0 var(--spacing-sm) 0;color:var(--primary-color)}.suggestions-hint{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-md)}.suggestions-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.suggestion-card{background:#ffffff0d;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--spacing-md);text-align:left;cursor:pointer;transition:all .2s;color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.5}.suggestion-card:hover{background:#ffffff1a;border-color:var(--primary-color)}.wizard-plot-step,.wizard-generate-step,.wizard-review-step{display:flex;flex-direction:column;gap:var(--spacing-lg)}.wizard-step-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.step-header-info h3{margin:0;color:var(--primary-color)}.step-description{margin:var(--spacing-xs) 0 0 0;color:var(--text-secondary);font-size:var(--font-size-sm)}.step-header-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.refine-input-section{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:#00000026;border-radius:var(--border-radius-md)}.refine-input-section textarea{flex:1;resize:none}.plot-points-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.plot-point-card{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:#00000026;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);transition:border-color .2s}.plot-point-card:hover{border-color:var(--primary-color)}.plot-point-card.editing{border-color:var(--primary-color);background:#00000040}.plot-point-number{width:32px;height:32px;border-radius:50%;background:var(--primary-color);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.plot-point-content{flex:1;min-width:0}.plot-point-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xs)}.plot-point-title{margin:0;font-size:var(--font-size-md);color:var(--text-primary)}.plot-point-actions{display:flex;gap:var(--spacing-xs)}.plot-point-summary{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.5}.plot-point-flow{margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-muted)}.plot-point-title-input{margin-bottom:var(--spacing-sm)}.plot-point-edit-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.add-plot-point-btn{align-self:center}.btn-icon{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-xs);font-size:var(--font-size-md);border-radius:var(--border-radius-sm);transition:all .2s;line-height:1}.btn-icon:hover{color:var(--primary-color);background:#ffffff1a}.btn-icon-danger:hover{color:var(--danger-color)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.generate-start-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);gap:var(--spacing-xl);text-align:center}.generate-summary{color:var(--text-secondary)}.generate-summary p{margin:var(--spacing-sm) 0}.generate-summary strong{color:var(--primary-color)}.generate-note{font-size:var(--font-size-sm);font-style:italic}.generation-progress{margin-bottom:var(--spacing-lg)}.progress-bar-container{height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden;margin-bottom:var(--spacing-sm)}.progress-bar{height:100%;background:var(--primary-color);transition:width .3s ease}.progress-stats{display:flex;justify-content:space-between;font-size:var(--font-size-sm);color:var(--text-secondary)}.batches-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.batch-card{padding:var(--spacing-md);background:#00000026;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md)}.batch-pending{opacity:.6}.batch-generating{border-color:var(--primary-color)}.batch-completed{border-color:var(--success-color)}.batch-error{border-color:var(--danger-color)}.batch-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.batch-status-icon{font-size:var(--font-size-lg)}.batch-generating .batch-status-icon{animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.batch-label{font-weight:600;flex:1}.batch-status{font-size:var(--font-size-sm);color:var(--text-secondary)}.batch-plot-points{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.batch-plot-point{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);background:#0003;border-radius:var(--border-radius-sm)}.batch-error .error-message{color:var(--danger-color);margin-bottom:var(--spacing-sm)}.batch-sections{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:var(--border-width) dashed var(--border-color)}.section-preview{background:#0000001a;border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-sm)}.section-preview-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background .2s}.section-preview-header:hover{background:#ffffff0d}.section-preview-toggle{color:var(--text-secondary);font-size:var(--font-size-xs)}.section-preview-title{flex:1;font-weight:600}.section-preview-meta{font-size:var(--font-size-xs);color:var(--text-muted)}.section-preview-content{padding:var(--spacing-md);padding-top:0}.section-preview-description{margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-secondary)}.section-preview-encounters,.section-preview-items{margin-top:var(--spacing-sm)}.section-preview-encounters h5,.section-preview-items h5{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--primary-color)}.section-preview-encounters ul,.section-preview-items ul{margin:0;padding-left:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--text-secondary)}.encounter-creatures{color:var(--text-muted)}.review-summary{background:#00000026;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--spacing-lg)}.review-summary h4{margin:0 0 var(--spacing-md) 0;color:var(--primary-color)}.summary-stats{display:flex;gap:var(--spacing-xl);flex-wrap:wrap}.stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--primary-color)}.stat-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.connections-section{background:#00000026;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--spacing-lg)}.connections-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.connections-header h4{margin:0;color:var(--primary-color)}.connections-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.connection-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:#0000001a;border-radius:var(--border-radius-sm)}.connection-card.editing{flex-direction:column;align-items:stretch}.connection-flow{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;flex-shrink:0}.connection-arrow{color:var(--primary-color)}.connection-details{flex:1;font-size:var(--font-size-sm)}.connection-condition{color:var(--text-primary);font-style:italic}.connection-description{color:var(--text-secondary);margin-left:var(--spacing-sm)}.connection-actions{display:flex;gap:var(--spacing-xs)}.connection-edit-form{width:100%}.connection-edit-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.add-connection-form{background:#0000001a;border-radius:var(--border-radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.add-connection-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.no-connections{color:var(--text-secondary);font-style:italic;text-align:center;padding:var(--spacing-lg)}@media(max-width:768px){.wizard-steps{flex-direction:column;gap:var(--spacing-sm)}.wizard-step-info{display:none}.form-row{grid-template-columns:1fr}.wizard-step-header{flex-direction:column}.step-header-actions{width:100%;justify-content:flex-end}.summary-stats{justify-content:space-around}.connection-card{flex-direction:column;align-items:flex-start}.connection-actions{width:100%;justify-content:flex-end}}.printable-adventure{padding-top:0;margin-top:0}.print-controls{padding:1rem;margin-bottom:1rem;background:var(--surface-color);border-bottom:1px solid var(--border-color);display:flex;gap:1rem;justify-content:center;max-width:1200px;margin-left:auto;margin-right:auto}.creature-statblock{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1rem;margin:1rem 0}.creature-header{font-size:1.2em;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}.creature-description{margin:.5rem 0;font-style:italic}.creature-stats{display:flex;gap:1rem;flex-wrap:wrap;margin:.5rem 0;padding:.5rem 0;border-top:1px dotted var(--border-color);border-bottom:1px dotted var(--border-color)}.creature-abilities{margin:.5rem 0}.abilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.5rem;margin-top:.25rem}.creature-actions{margin-top:.5rem;padding-top:.5rem;border-top:1px dotted var(--border-color)}.action-item{margin:.25rem 0 .25rem 1rem}.help-tooltip-container{position:relative;display:inline-block;margin-left:4px;vertical-align:middle}.help-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);cursor:help;font-size:12px;padding:0;line-height:1;transition:all .2s ease;font-family:sans-serif}.help-icon:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.help-tooltip-content{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);box-shadow:0 4px 12px #0000004d;white-space:normal;max-width:350px;font-size:var(--font-size-sm);color:var(--text-primary);z-index:1000;pointer-events:none;line-height:1.4}.help-tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--border-color)}@media print{@page{margin:2cm}body{background:#fff!important;color:#000!important;font-size:12pt;line-height:1.5}.no-print,.header-full-width,.header,.stone-texture,body:before,.footer,button,.btn,.modal-overlay{display:none!important}.container{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important;min-height:auto!important}h1{font-size:24pt;color:#000!important;background:none!important;-webkit-text-fill-color:black!important;text-shadow:none!important;margin-bottom:.5cm;page-break-after:avoid}h2{font-size:18pt;color:#000!important;border-bottom:2px solid black;padding-bottom:.2cm;margin-top:1cm;page-break-after:avoid}h3{font-size:14pt;color:#000!important;margin-top:.5cm;page-break-after:avoid}p,li{color:#000!important}.print-header{text-align:center;margin-bottom:1cm}.print-meta{margin-bottom:1cm;border:1px solid #ccc;padding:.5cm;display:flex;flex-wrap:wrap;gap:1cm;justify-content:center}.print-divider{margin:1cm 0;border-top:1px solid black}.print-section{margin-bottom:1cm;page-break-inside:avoid;border:1px solid #eee;padding:.5cm}.section-header{border-bottom:1px solid #ccc;margin-bottom:.5cm}.section-id{float:right;font-family:monospace;font-size:.9em;color:#666!important}.section-items,.section-encounters,.section-connections{margin-top:.5cm;padding-top:.5cm;border-top:1px dotted #ccc}.creature-statblock{background:#fff!important;border:1px solid #333!important;padding:.3cm;margin:.3cm 0;page-break-inside:avoid}.creature-header{font-size:11pt;color:#000!important;border-bottom:2px solid #333!important;margin-bottom:.2cm;padding-bottom:.1cm}.creature-description{font-size:9pt;color:#333!important;margin:.2cm 0}.creature-stats{display:flex;gap:.5cm;flex-wrap:wrap;border-top:1px dotted #666!important;border-bottom:1px dotted #666!important;padding:.2cm 0;margin:.2cm 0}.creature-stats div{color:#000!important;font-size:9pt}.creature-abilities{margin:.2cm 0;font-size:9pt}.abilities-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.2cm;margin-top:.1cm}.abilities-grid span{color:#000!important;font-size:8pt}.creature-actions{margin-top:.2cm;padding-top:.2cm;border-top:1px dotted #666!important}.action-item{margin:.1cm 0 .1cm .3cm;font-size:9pt;color:#000!important}.encounter-item h4{font-size:11pt;color:#000!important;margin:.3cm 0 .2cm}.print-footer{margin-top:2cm;text-align:center;font-size:9pt;color:#666!important;border-top:1px solid #ccc;padding-top:.5cm}}.spell-tooltip{position:relative;background:#fff;border:1px solid #ccc;border-radius:4px;padding:16px;box-shadow:0 4px 12px #00000026;max-width:400px;font-size:14px;z-index:1000}.spell-tooltip.loading,.spell-tooltip.error{padding:8px 12px;font-style:italic;color:#666}.spell-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;border-bottom:1px solid #eee;padding-bottom:8px}.spell-header h4{margin:0;font-size:16px}.spell-tooltip .close-btn{background:none;border:none;font-size:24px;cursor:pointer;padding:0;color:#666}.spell-tooltip .close-btn:hover{color:#d32f2f}.spell-meta,.spell-casting{display:flex;gap:12px;margin:8px 0;flex-wrap:wrap;font-size:13px}.spell-meta .badge{background:#e3f2fd;padding:2px 8px;border-radius:12px;font-size:11px}.spell-components,.spell-description,.spell-higher-level{margin:12px 0;line-height:1.6}.spell-higher-level{padding-top:12px;border-top:1px solid #eee;font-style:italic}.spell-list{margin:8px 0}.spell-level{margin:6px 0}.spell-name.interactive{color:#1976d2;cursor:help;text-decoration:underline dotted}.spell-name.interactive:hover{color:#1565c0}.spell-name.print sup{font-size:10px;color:#666}.special-abilities-section,.actions-section,.legendary-actions-section{margin:20px 0;padding:var(--spacing-md);border-radius:var(--border-radius);border:var(--border-width) solid var(--border-color)}.abilities-list .ability-entry,.actions-list .action-entry{padding:var(--spacing-md);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);margin-bottom:var(--spacing-md)}.ability-header,.action-header{display:flex;justify-content:space-between;align-items:center}.ability-actions,.action-actions{display:flex;gap:8px}.ability-description,.action-description{margin-top:8px;white-space:pre-wrap}.spell-appendix{margin-top:32px;padding-top:24px;border-top:var(--border-width-thick) solid #333}.spell-appendix h2{margin-bottom:16px}.spell-entry{display:flex;gap:12px;margin:16px 0;page-break-inside:avoid}.spell-number{font-weight:700;min-width:30px}.spell-title{margin:0 0 6px;font-size:18px}.spellcasting-stats{margin-top:8px;padding:8px;border-radius:4px;display:flex;flex-wrap:wrap;gap:12px}.spellcasting-stats .stat-item{font-size:13px}.spell-slots{margin-top:8px;font-size:13px;color:#555}.spell-slots .slot-info{margin-right:8px}.defenses-list{margin:4px 0}.defenses-container{display:inline}.defense-segment{display:inline;position:relative}.defense-segment.has-tooltip{cursor:help;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.defense-segment.has-tooltip:hover{text-decoration-color:var(--primary-color)}.defense-segment.active{font-weight:500}.tooltip-portal{position:absolute;left:0;top:100%;margin-top:4px;z-index:1001}.damage-type-tooltip{position:relative;background:#fff;border:1px solid #ccc;border-radius:4px;padding:12px;box-shadow:0 4px 8px #00000026;min-width:250px;max-width:350px;font-size:14px;z-index:1002}.damage-type-tooltip.error{padding:8px 12px;font-style:italic;color:#d32f2f}.condition-tooltip{position:relative;background:#fff;border:1px solid #ccc;border-radius:4px;padding:12px;box-shadow:0 4px 8px #00000026;min-width:280px;max-width:400px;font-size:14px;z-index:1002}.condition-tooltip.error{padding:8px 12px;font-style:italic;color:#d32f2f}.tooltip-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #e0e0e0}.tooltip-header h4{margin:0;font-size:15px;font-weight:600}.condition-icon{font-size:18px;margin-right:4px}.tooltip-header .close-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:0;color:#666;line-height:1}.tooltip-header .close-btn:hover{color:#d32f2f}.tooltip-content{font-size:13px}.tooltip-content .description{margin:8px 0;line-height:1.4}.tooltip-content .effects,.tooltip-content .common-sources,.tooltip-content .removal{margin:8px 0}.tooltip-content ul{margin:4px 0;padding-left:20px}.tooltip-content li{margin:2px 0;line-height:1.3}.tooltip-content strong{font-weight:600;color:#333}@media print{.spell-tooltip,.damage-type-tooltip,.condition-tooltip{display:none!important}.defense-segment.has-tooltip{text-decoration:none;cursor:default}.spell-name.interactive{text-decoration:none;color:inherit}.spell-appendix{page-break-before:always}.creature-special-abilities{margin-top:.2cm;padding-top:.2cm;border-top:1px dotted #666!important}.ability-item{margin:.1cm 0 .1cm .3cm;font-size:9pt;color:#000!important}.spell-list.print-mode{margin:.1cm 0;font-size:9pt}.spell-appendix h2{font-size:14pt;color:#000!important}.spell-entry{margin:.3cm 0;font-size:9pt}.spell-title{font-size:10pt;margin-bottom:.1cm}.spell-stats p{margin:.05cm 0;color:#000!important}}.entry-card{padding:var(--spacing-md);background:#1a161180;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);border-left:var(--border-width-thicker) solid var(--color-gold-dark);margin-bottom:var(--spacing-md)}.entry-card:first-child{margin-top:var(--spacing-md)}.entry-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.entry-card-header strong{color:var(--color-gold-primary);font-size:1.1em}.entry-card-actions{display:flex;gap:var(--spacing-xs)}.entry-card-description{margin-top:var(--spacing-sm);color:var(--text-secondary);font-size:.9em;line-height:1.5}.entry-editor{margin-top:var(--spacing-md);padding:var(--spacing-md);background:#2a24164d;border:1px solid var(--border-color);border-radius:var(--border-radius)}.entry-editor h6{margin-top:0;margin-bottom:var(--spacing-md);color:var(--color-gold-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-header h5{margin:0;color:var(--color-gold-primary)}.demo-mode-banner{background:linear-gradient(135deg,#d4af3726,#b8860b26);border:var(--border-width) solid rgba(212,175,55,.4);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);box-shadow:0 2px 10px #d4af3733}.banner-icon{font-size:var(--font-size-xl)}.banner-text{color:var(--text-primary);font-size:var(--font-size-base);line-height:1.5}.btn-link{background:none;border:none;color:var(--primary-color);font-family:var(--font-family);font-size:inherit;cursor:pointer;text-decoration:underline;padding:0 var(--spacing-xs);transition:color .2s}.btn-link:hover{color:var(--secondary-color)}.adventures-toolbar{display:flex;gap:var(--spacing-md);align-items:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background:linear-gradient(135deg,var(--color-bg-brown-dark) 0%,var(--bg-secondary) 100%);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 15px #000000b3}.search-section{flex:1;min-width:0}.search-container{max-width:600px;margin:var(--spacing-2xl) auto;padding:0 1rem;position:relative}.search-wrapper{position:relative;background:linear-gradient(135deg,var(--color-bg-brown-dark) 0%,var(--bg-secondary) 100%);padding:3px;border-radius:var(--border-radius-lg);box-shadow:inset 0 2px 5px #00000080,0 4px 15px #000000b3}.search-wrapper:before{content:"";position:absolute;inset:0;border-radius:var(--border-radius-lg);padding:2px;background:linear-gradient(135deg,var(--secondary-color),var(--primary-color),var(--secondary-color));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.search-box{width:100%;padding:var(--spacing-md) var(--spacing-2xl) var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border:none;color:var(--primary-color);font-size:var(--font-size-lg);font-family:var(--font-family);border-radius:var(--border-radius);transition:all .3s}.search-box::placeholder{color:var(--text-muted)}.search-box:focus{outline:none;background:var(--color-bg-brown-lighter);box-shadow:0 0 20px #d4af374d}.search-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--secondary-color);pointer-events:none}.adventures-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.adventure-card{background:linear-gradient(135deg,var(--bg-card-gradient-start) 0%,var(--bg-card-gradient-end) 100%);border:var(--border-width-thick) solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);position:relative;overflow:hidden;transition:all .3s;cursor:pointer;box-shadow:0 4px 15px #000000b3,inset 0 1px #d4af371a}.adventure-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--primary-color),transparent);opacity:0;transition:opacity .3s}.adventure-card:hover{transform:translateY(-5px);border-color:var(--border-color-light);box-shadow:0 8px 25px #d4af374d,inset 0 1px #d4af3733}.adventure-card:hover:before{opacity:1}.adventure-title{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);color:var(--primary-color);margin-bottom:var(--spacing-sm);text-shadow:2px 2px 4px rgba(0,0,0,.5)}.card-btn{flex:1;padding:var(--spacing-sm);background:linear-gradient(135deg,var(--color-bg-brown-dark) 0%,var(--bg-secondary) 100%);border:var(--border-width) solid var(--border-color);color:var(--primary-color);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--border-radius-sm);transition:all .3s;text-transform:uppercase;letter-spacing:1px}.card-btn:hover{background:linear-gradient(135deg,var(--color-bg-brown-medium) 0%,var(--color-bg-brown-dark) 100%);border-color:var(--border-color-light);transform:translateY(-1px);box-shadow:0 2px 8px #d4af374d}.card-btn.play{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--color-gold-darker) 100%);color:var(--bg-secondary);font-weight:600}.card-btn.play:hover{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%)}.card-btn.delete:hover{background:linear-gradient(135deg,var(--color-danger-dark) 0%,var(--color-danger-darkest) 100%);border-color:var(--color-danger-medium);color:var(--color-danger-light)}.card-header{margin-bottom:var(--spacing-md)}.card-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.card-content{margin-bottom:var(--spacing-md)}.card-content .description{color:var(--text-secondary);font-size:var(--font-size-base);line-height:1.6;margin-bottom:var(--spacing-sm)}.card-content .author{color:var(--text-muted);font-size:var(--font-size-sm);font-style:italic}.card-meta,.card-meta-secondary{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.card-meta span,.card-meta-secondary span{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.5px;white-space:nowrap;border:var(--border-width) solid}.card-meta .system{background:linear-gradient(135deg,#d4af3726,#b8860b26);border-color:var(--border-color);color:var(--primary-color)}.card-meta .difficulty{background:linear-gradient(135deg,#05966926,#04785726);border-color:#05966966;color:#10b981}.card-meta .duration{background:linear-gradient(135deg,#d9770626,#b4530926);border-color:#d9770666;color:#f59e0b}.card-meta-secondary .party,.card-meta-secondary .style{background:linear-gradient(135deg,#8b5cf626,#6d28d926);border-color:#8b5cf666;color:#a78bfa}.card-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.card-tags .tag{padding:var(--spacing-xs) var(--spacing-sm);background:linear-gradient(135deg,var(--color-bg-brown-dark) 0%,var(--color-bg-brown-darker) 100%);border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius-sm);color:var(--text-light);font-size:var(--font-size-xs);letter-spacing:.5px;transition:all .2s}.card-tags .tag:hover{border-color:var(--border-color);color:var(--primary-color)}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:600;border:var(--border-width) solid;display:inline-flex;align-items:center;gap:var(--spacing-xs)}.status-badge-pending{background:linear-gradient(135deg,#d9770633,#b4530933);border-color:#d9770680;color:#fbbf24}.status-badge-draft{background:linear-gradient(135deg,#6b728033,#4b556333);border-color:#6b728080;color:#9ca3af}.card-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}@media(max-width:768px){.adventures-toolbar{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm)}.search-box{margin-left:0;max-width:none}.adventures-grid{grid-template-columns:1fr}.card-header-top{flex-direction:column}.card-meta,.card-meta-secondary{font-size:var(--font-size-xs)}.card-actions{flex-wrap:wrap}}.editor-banner{margin-bottom:var(--spacing-lg)}.editor-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--spacing-lg);min-height:80vh}.editor-main,.editor-sidebar{background:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--box-shadow);padding:var(--spacing-lg)}.editor-actions{display:flex;gap:var(--spacing-sm)}.section-tabs{display:flex;flex-direction:column;gap:var(--spacing-sm)}.section-tab{padding:var(--spacing-md);border-radius:var(--border-radius);background:linear-gradient(135deg,#1a1611cc,#2a241699);border:var(--border-width) solid var(--border-color-dark);cursor:pointer;transition:all .3s ease;border-left:var(--border-width-thicker) solid var(--color-gold-dark);box-shadow:0 2px 4px #0000004d}.section-tab:hover{background:linear-gradient(135deg,#2a2416e6,#3a3322b3);border-left-color:var(--primary-color);transform:translate(2px)}.section-tab.active{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);color:var(--bg-secondary);border-color:var(--primary-color);border-left-color:var(--primary-color);font-weight:600;box-shadow:0 4px 12px #d4af3766}.adventure-details-tab{font-weight:600;background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);border:var(--border-width) solid var(--primary-color);border-left:var(--border-width-thicker) solid var(--primary-color);color:var(--bg-secondary)}.adventure-details-tab.active{box-shadow:0 4px 12px #d4af3780}.adventure-details-tab:hover{transform:translate(2px);color:var(--primary-hover)}.section-tab-container{margin-bottom:var(--spacing-sm)}.expand-arrow{display:inline-block;transition:transform .2s;font-size:.7em;width:16px;text-align:center;-webkit-user-select:none;user-select:none}.expand-arrow.expanded{transform:rotate(90deg)}.section-subsections{padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) calc(var(--spacing-lg) + 8px);background:var(--bg-tertiary);border-left:2px solid var(--border-color);margin-left:var(--spacing-md);margin-top:var(--spacing-sm);border-radius:0 0 var(--border-radius) var(--border-radius)}.subsection-group{margin-bottom:var(--spacing-sm)}.subsection-header{font-size:.85em;font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.subsection-item{font-size:.85em;padding:4px 8px;margin-bottom:2px;cursor:pointer;border-radius:var(--border-radius-sm);transition:background .2s;color:var(--text-primary)}.subsection-item:hover{background:var(--bg-secondary);color:var(--primary-color)}.subsection-count{font-size:.85em;padding:4px 8px;margin-bottom:4px;color:var(--text-secondary)}@keyframes highlight-pulse{0%{box-shadow:0 0 #2563ebb3;border-color:var(--primary-color)}50%{box-shadow:0 0 20px 10px #2563eb4d;border-color:var(--primary-color)}to{box-shadow:0 0 #2563eb00;border-color:var(--border-color)}}.highlight{animation:highlight-pulse 2s ease-out}.section-subsection{margin-bottom:var(--spacing-2xl);padding:var(--spacing-lg);background:#0000004d;border:1px solid var(--border-color-dark);border-radius:var(--border-radius)}.section-subsection h4{font-family:Cinzel,serif;color:var(--primary-color);font-size:var(--font-size-lg);margin-bottom:var(--spacing-md)}.editor-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:var(--spacing-md);overflow:hidden}.editor-card .card-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.editor-card .card-header h5{margin:0;font-size:var(--font-size-base);font-weight:600}.editor-card .card-content{padding:var(--spacing-md)}.editor-card .card-content p{margin-bottom:var(--spacing-sm)}.editor-card .card-content p:last-child{margin-bottom:0}.creature-form{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.creature-form h5,.creature-form h6{margin:0;font-size:var(--font-size-base);color:var(--text-primary);margin-bottom:var(--spacing-sm)}.creature-form .form-row{margin-bottom:var(--spacing-sm)}.creature-form .form-row input{flex:1}.ability-scores{margin:var(--spacing-md) 0;padding:var(--spacing-sm);background:var(--bg-primary);border-radius:var(--border-radius);border:1px solid var(--border-color)}.ability-input{display:flex;flex-direction:column;align-items:center;text-align:center}.ability-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.ability-score{width:60px;text-align:center;margin-bottom:var(--spacing-xs)}.ability-modifier{font-size:var(--font-size-sm);font-weight:600;color:var(--primary-color);background:var(--bg-tertiary);padding:2px 6px;border-radius:calc(var(--border-radius) / 2);min-width:30px}.sections-header{margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm);display:flex;justify-content:space-between;align-items:center}.sections-header strong{font-size:.9em;color:var(--text-secondary)}.section-description-textarea{min-height:200px}.subsection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.creature-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.image-preview-img{max-width:200px;max-height:150px;object-fit:contain}.input-narrow{max-width:80px}.form-tip{color:var(--text-secondary);font-size:var(--font-size-sm)}.image-preview-large{max-width:100%;max-height:300px;object-fit:contain;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius)}.image-preview-error{display:none;padding:var(--spacing-md);text-align:center;color:var(--text-secondary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius)}.view-mode .form-input:disabled,.view-mode .form-textarea:disabled,.view-mode .form-input[disabled],.view-mode .form-textarea[disabled]{opacity:1;cursor:default;background:#0003}.view-mode .section-content-display{padding:var(--spacing-lg);background:#0003;border-radius:var(--border-radius);border-left:3px solid var(--primary-color);line-height:1.7}.view-mode .encounter-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.view-mode .encounter-card h4{color:var(--primary-color);margin-bottom:var(--spacing-sm)}.view-mode .creatures-list{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:#0003;border-radius:var(--border-radius-sm)}.view-mode .creature-item{margin-left:var(--spacing-md);margin-top:var(--spacing-xs);padding:var(--spacing-xs);border-left:2px solid var(--border-color-dark)}.view-mode .item-card,.view-mode .connection-card,.view-mode .image-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.view-mode .connection-card.clickable{cursor:pointer;transition:all .2s ease}.view-mode .connection-card.clickable:hover{background:var(--bg-tertiary);border-color:var(--primary-color);box-shadow:0 2px 8px #2563eb33}.view-mode .section-image{max-width:100%;height:auto;border-radius:var(--border-radius);margin-top:var(--spacing-xs)}.view-mode .text-muted{color:var(--text-secondary)}.view-mode .text-sm{font-size:var(--font-size-sm)}@media(max-width:1024px){.editor-layout{grid-template-columns:1fr;gap:var(--spacing-md)}.editor-sidebar{order:-1}.editor-actions{flex-direction:column;align-items:stretch}}@media(max-width:768px){.section-subsection{padding:var(--spacing-md)}}.encounter-editor-form{background:var(--bg-primary);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-top:var(--spacing-lg)}.encounter-editor-form .form-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:var(--border-width) solid var(--border-color)}.encounter-editor-form .form-header h4{margin:0 0 var(--spacing-xs) 0}.encounter-editor-form .form-subtitle{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm)}.encounter-editor-form .creature-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.encounter-editor-form .abilities-section{background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius);border:var(--border-width) solid var(--border-color)}.encounter-editor-form .abilities-section h5{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-md)}.encounter-editor-form .abilities-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--spacing-md)}.encounter-editor-form .ability-input{display:flex;flex-direction:column;gap:var(--spacing-xs)}.encounter-editor-form .ability-label{font-weight:600;font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase}.encounter-editor-form .ability-input-field{padding:var(--spacing-sm);border:var(--border-width) solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-weight:600;text-align:center;font-size:var(--font-size-md)}.encounter-editor-form .form-row-text{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.creatures-management{background:var(--bg-secondary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);margin:var(--spacing-lg) 0}.creatures-management .creatures-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:var(--border-width) solid var(--border-color)}.creatures-management .creatures-header h5{margin:0;font-size:var(--font-size-md)}.dropdown-container{position:relative}.dropdown-trigger{cursor:pointer}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000004d;min-width:200px;z-index:1000;overflow:hidden}.dropdown-item{display:block;width:100%;padding:var(--spacing-md);background:none;border:none;border-bottom:var(--border-width) solid var(--border-color);color:var(--text-primary);text-align:left;cursor:pointer;transition:background .2s ease;font-size:var(--font-size-md)}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:var(--bg-secondary)}.dropdown-item:active{background:var(--bg-tertiary)}.creature-editor-modal{max-width:800px;max-height:90vh;overflow-y:auto}.creature-editor-modal .abilities-section{background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius);border:var(--border-width) solid var(--border-color);margin:var(--spacing-md) 0}.creature-editor-modal .abilities-section h5{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-md)}.creature-editor-modal .abilities-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--spacing-md)}.creature-editor-modal .ability-input{display:flex;flex-direction:column;gap:var(--spacing-xs)}.creature-editor-modal .ability-label{font-weight:600;font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase}.creature-editor-modal .ability-input-field{padding:var(--spacing-sm);border:var(--border-width) solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-weight:600;text-align:center;font-size:var(--font-size-md)}.creature-editor-modal .form-row-text{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.creatures-management .creatures-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.creatures-management .creature-entry{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:4px;transition:all .2s ease}.creatures-management .creature-entry>:first-child{display:flex;justify-content:space-between;align-items:center;width:100%}.creatures-management .creature-entry:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #2563eb26}.creatures-management .creature-info{display:flex;gap:var(--spacing-md);align-items:center;flex:1}.creatures-management .creature-name{font-weight:600;color:var(--text-primary)}.creatures-management .creature-stat{font-size:var(--font-size-sm);color:var(--text-secondary);background:var(--bg-secondary);padding:2px 8px;border-radius:4px}.creatures-management .creature-actions{display:flex;gap:var(--spacing-sm)}.creatures-management .creature-no-match{display:flex;gap:var(--spacing-sm);align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:#d977061a;border:1px solid rgba(217,119,6,.3);border-radius:4px;font-size:var(--font-size-sm)}.creatures-management .creature-no-match .text-muted{color:var(--warning-color)}.inventory-search-modal{max-width:900px;max-height:90vh;overflow-y:auto}.inventory-search-modal .search-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.item-editor-modal{max-width:900px;max-height:90vh;overflow-y:auto}.item-editor-modal .form-row-three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-md)}.inventory-search-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.creature-card{border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);background:var(--bg-secondary);display:flex;flex-direction:column;gap:var(--spacing-md);transition:all .3s ease;height:100%}.creature-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #2563eb33;transform:translateY(-2px)}.creature-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.creature-card .card-title-section{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.creature-card .card-title{margin:0;font-size:var(--font-size-md);font-weight:600;color:var(--text-primary)}.creature-card .card-source{font-size:var(--font-size-sm);color:var(--text-secondary);background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;display:inline-block;width:fit-content}.creature-card .card-cr{font-weight:700;color:var(--primary-color);font-size:var(--font-size-md);background:#2563eb1a;padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;white-space:nowrap}.creature-card .card-body{display:flex;flex-direction:column;gap:var(--spacing-md);flex:1}.creature-card .creature-metadata{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);font-size:var(--font-size-sm)}.creature-card .meta-item{background:var(--bg-tertiary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;color:var(--text-secondary)}.creature-card .creature-stats{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:var(--font-size-sm)}.creature-card .stat-row{display:flex;justify-content:space-between}.creature-card .stat-label{color:var(--text-secondary);font-weight:500}.creature-card .stat-value{color:var(--text-primary);font-weight:600}.creature-card .card-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.4}.creature-card .ability-scores{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.creature-card .ability-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xs);background:var(--bg-tertiary);border-radius:4px;font-size:var(--font-size-xs);text-align:center}.creature-card .ability-label{font-weight:600;color:var(--text-secondary);font-size:10px;text-transform:uppercase}.creature-card .ability-value{font-weight:700;color:var(--primary-color);font-size:var(--font-size-sm)}.creature-card .card-footer{display:flex;gap:var(--spacing-sm);border-top:var(--border-width) solid var(--border-color);padding-top:var(--spacing-md)}.creatures-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.item-card{border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);background:var(--bg-secondary);display:flex;flex-direction:column;gap:var(--spacing-md);transition:all .2s ease}.item-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #2563eb33;transform:translateY(-2px)}.item-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.item-card .card-title{margin:0;font-size:var(--font-size-md);font-weight:600;color:var(--text-primary)}.item-card .item-rarity{font-size:var(--font-size-xs);font-weight:600;padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.item-card .rarity-common{background:#64748b33;color:#64748b}.item-card .rarity-uncommon{background:#22c55e33;color:#22c55e}.item-card .rarity-rare{background:#3b82f633;color:#3b82f6}.item-card .rarity-very-rare{background:#a855f733;color:#a855f7}.item-card .rarity-legendary{background:#eab30833;color:#eab308}.item-card .card-body{display:flex;flex-direction:column;gap:var(--spacing-md);flex:1}.item-card .item-metadata{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);font-size:var(--font-size-sm)}.item-card .meta-item{background:var(--bg-tertiary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;color:var(--text-secondary)}.item-card .attunement-required{background:#ef444433;color:#ef4444;font-weight:600}.item-card .item-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.4}.item-card .item-properties{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.item-card .property-badge{font-size:var(--font-size-xs);background:var(--bg-tertiary);color:var(--text-secondary);padding:2px 6px;border-radius:4px}.item-card .card-footer{display:flex;gap:var(--spacing-sm);border-top:var(--border-width) solid var(--border-color);padding-top:var(--spacing-md)}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.search-loading,.search-empty{text-align:center;padding:var(--spacing-lg);color:var(--text-secondary)}.search-empty p{margin:var(--spacing-sm) 0}.pagination-controls{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) 0;border-top:var(--border-width) solid var(--border-color)}.pagination-info{color:var(--text-secondary);font-size:var(--font-size-sm)}.button-group{display:flex;gap:var(--spacing-sm)}.btn-icon{background:none;border:none;font-size:24px;cursor:pointer;padding:0;color:var(--text-primary);transition:all .2s ease}.btn-icon:hover{color:var(--primary-color)}@media(max-width:1024px){.creatures-grid,.items-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.inventory-search-modal .form-row{grid-template-columns:1fr}.item-editor-modal .form-row-three{grid-template-columns:1fr 1fr}.encounter-editor-form .form-row,.encounter-editor-form .form-row-text{grid-template-columns:1fr}.encounter-editor-form .abilities-grid,.creature-editor-modal .abilities-grid{grid-template-columns:repeat(3,1fr)}.creature-editor-modal .form-row-text{grid-template-columns:1fr}}.actions-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.actions-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.action-details{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);color:var(--text-secondary)}.attack-bonus,.attack-damage,.attack-save,.attack-usage{font-size:.9em;padding:2px 8px;background:#daa52026;border-radius:4px;border:1px solid var(--color-gold-dark)}.abilities-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.ability-header strong{color:var(--color-gold-primary)}.legendary-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.collapsible-section{margin:var(--spacing-md) 0}.collapsible-header{display:flex;align-items:center;gap:var(--spacing-sm);background:linear-gradient(135deg,#1a1611cc,#2a241699);border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);border-left:var(--border-width-thicker) solid var(--color-gold-dark);transition:all .3s ease}.collapsible-header:hover{background:linear-gradient(135deg,#2a2416e6,#3a3322b3);border-left-color:var(--primary-color)}.collapsible-toggle{flex:1;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:transparent;border:none;color:var(--text-primary);cursor:pointer;font-size:var(--font-size-md);font-weight:500;text-align:left}.collapsible-toggle .toggle-icon{font-size:.8em;transition:transform .2s;display:inline-block;width:16px;text-align:center;-webkit-user-select:none;user-select:none;flex-shrink:0}.collapsible-toggle .collapsible-title{flex:1}.collapsible-action{padding-right:var(--spacing-md);flex-shrink:0}.collapsible-content{border-radius:var(--border-radius)}@media(max-width:768px){.creatures-grid,.items-grid,.item-editor-modal .form-row-three{grid-template-columns:1fr}.pagination-controls{flex-direction:column;gap:var(--spacing-sm)}.button-group{flex-direction:column;width:100%}.button-group .btn{width:100%}.creatures-management .creature-entry{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.creatures-management .creature-actions{width:100%}.creatures-management .creature-actions .btn{flex:1}.encounter-editor-form .abilities-grid{grid-template-columns:repeat(2,1fr)}.encounter-editor-form .form-row-text{grid-template-columns:1fr}.creature-editor-modal .abilities-grid{grid-template-columns:repeat(2,1fr)}.creature-editor-modal .form-row-text{grid-template-columns:1fr}}.required-indicator{color:var(--danger-color);margin-left:2px;font-weight:600}.form-required-note{font-size:var(--font-size-sm);color:var(--text-secondary);margin:var(--spacing-sm) 0 var(--spacing-md) 0;font-style:italic}.advanced-options-toggle{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);margin:var(--spacing-lg) 0 var(--spacing-md) 0;background:linear-gradient(135deg,#1a1611cc,#2a241699);border:var(--border-width) solid var(--border-color-dark);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;transition:all .3s ease;font-size:var(--font-size-md);font-weight:500;border-left:var(--border-width-thicker) solid var(--color-gold-dark)}.advanced-options-toggle:hover{background:linear-gradient(135deg,#2a2416e6,#3a3322b3);border-left-color:var(--primary-color);transform:translate(2px)}.advanced-options-toggle .toggle-icon{font-size:.8em;transition:transform .2s;display:inline-block;width:16px;text-align:center}.advanced-options-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:var(--border-width) solid var(--border-color)}.create-section-prompt{margin-top:var(--spacing-2xl);padding:var(--spacing-xl);text-align:center;background:linear-gradient(135deg,#1a161199,#2a241666);border:2px dashed var(--border-color-dark);border-radius:var(--border-radius)}.btn-create-section{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-2xl);font-size:var(--font-size-lg);font-weight:600;background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);border:var(--border-width) solid var(--primary-color);box-shadow:0 4px 12px #d4af3766;transition:all .3s ease}.btn-create-section:hover{transform:translateY(-2px);box-shadow:0 6px 16px #d4af3799}.btn-create-section .btn-icon{font-size:1.2em}.version-history-modal{max-width:600px;max-height:80vh}.version-history-modal .modal-body{max-height:60vh;overflow-y:auto}.snapshot-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.snapshot-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-secondary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease}.snapshot-item:hover{background:var(--bg-tertiary);border-color:var(--primary-color);box-shadow:0 2px 8px #d4af3733}.snapshot-item.selected{background:var(--bg-tertiary);border-color:var(--primary-color)}.snapshot-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.snapshot-time-relative{font-size:.95em;color:var(--text-primary);font-weight:500}.snapshot-type{display:flex;gap:var(--spacing-xs)}.badge{font-size:.75em;padding:2px 8px;border-radius:var(--border-radius);font-weight:600;text-transform:uppercase}.badge-auto{background:#64646433;color:var(--text-muted);border:var(--border-width) solid var(--border-color)}.badge-manual{background:#d4af3733;color:var(--primary-color);border:var(--border-width) solid var(--primary-color)}.badge-autosave{background:#4682b433;color:#4682b4;border:var(--border-width) solid #4682b4}.snapshot-actions{display:flex;gap:var(--spacing-xs)}.snapshot-actions-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:var(--border-width) solid var(--border-color)}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.empty-state p{margin-bottom:var(--spacing-sm)}@media(max-width:768px){.editor-actions{flex-wrap:wrap}}.image-form-modal{max-width:600px;max-height:90vh;overflow-y:auto}.storage-stats{padding:var(--spacing-md);background:#0000004d;border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:var(--spacing-lg)}.storage-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.storage-count{color:var(--text-secondary)}.storage-bar{height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.storage-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));transition:width .3s ease}.radio-group{display:flex;gap:var(--spacing-md)}.radio-option{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:all .2s ease}.radio-option:hover{background:var(--bg-tertiary);border-color:var(--primary-color)}.radio-option input[type=radio]{cursor:pointer}.radio-option input[type=radio]:checked+span{color:var(--primary-color);font-weight:600}.upload-dropzone{border:2px dashed var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-xl);text-align:center;background:#0003;transition:all .3s ease;min-height:200px;display:flex;align-items:center;justify-content:center}.upload-dropzone.dragging{border-color:var(--primary-color);background:#d4af371a;transform:scale(1.02)}.upload-dropzone.has-file{border-color:var(--success-color, #22c55e);background:#22c55e1a}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.dropzone-icon{font-size:48px;opacity:.6}.dropzone-text{margin:0;color:var(--text-primary);font-size:var(--font-size-md)}.dropzone-or{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm)}.dropzone-button{cursor:pointer}.upload-progress-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md)}.upload-filename{margin:0;color:var(--text-primary);font-size:var(--font-size-md);word-break:break-all}.upload-progress-bar{width:100%;height:24px;background:var(--bg-tertiary);border-radius:12px;overflow:hidden;border:1px solid var(--border-color)}.upload-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));transition:width .3s ease;display:flex;align-items:center;justify-content:center}.upload-progress-text{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:600}.upload-success{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md)}.success-icon{font-size:48px;color:var(--success-color, #22c55e)}.success-text{margin:0;color:var(--success-color, #22c55e);font-size:var(--font-size-md);font-weight:600}@media(max-width:768px){.image-form-modal{max-width:95%}.radio-group{flex-direction:column}.storage-label{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.upload-dropzone{padding:var(--spacing-lg);min-height:180px}.dropzone-icon{font-size:36px}}.spellcasting-section-wrapper{margin-top:var(--spacing-lg)}.spellcasting-section{margin-top:var(--spacing-md);padding:var(--spacing-lg);background:#1a161180;border:1px solid var(--border-color);border-radius:var(--border-radius);border-left:3px solid var(--color-gold-dark)}.spellcasting-section .section-header{padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.spellcasting-stats{margin-bottom:var(--spacing-lg)}.spellcasting-stats .form-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.component-checkboxes{display:flex;gap:var(--spacing-md);align-items:center;padding:var(--spacing-sm) 0}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;font-weight:500}.checkbox-label input[type=checkbox]{cursor:pointer}.spell-slots-section{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--border-radius);border:1px solid var(--border-color)}.spell-slots-section>.form-label{display:block;margin-bottom:var(--spacing-md);font-weight:600;color:var(--text-secondary)}.spell-slots-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:var(--spacing-sm)}.spell-slot-input{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.slot-label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase}.slot-input{width:50px;text-align:center;padding:var(--spacing-xs);font-weight:600}.spells-by-level{display:flex;flex-direction:column;gap:var(--spacing-md)}.spell-level-group{padding:var(--spacing-md);background:#2a24164d;border:1px solid var(--border-color);border-radius:var(--border-radius)}.spell-level-header{margin-bottom:var(--spacing-sm)}.spell-level-name{font-weight:600;color:var(--color-gold-primary)}.spell-level-content{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm)}.spell-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.chip-gold{background:#daa52026;border-color:var(--color-gold-dark)}.chip-gold:hover{background:#daa52033}.spell-add-controls{display:flex;gap:var(--spacing-sm);align-items:center;flex:1;min-width:200px}.spell-browse-btn{white-space:nowrap}.spell-autocomplete{position:relative;flex:1;min-width:150px}.spell-autocomplete-input{width:100%}.spell-autocomplete-loading{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:var(--font-size-sm)}.spell-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000004d;max-height:300px;overflow-y:auto;z-index:1000}.spell-autocomplete-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background .2s ease}.spell-autocomplete-item:hover,.spell-autocomplete-item.selected{background:var(--bg-secondary)}.spell-autocomplete-item .spell-name{font-weight:500}.spell-level-badge{font-size:var(--font-size-xs);padding:2px 6px;background:#daa52026;border:1px solid var(--color-gold-dark);border-radius:4px;color:var(--color-gold-primary)}.spell-search-modal{max-width:900px;max-height:90vh;overflow-y:auto}.spell-search-filters{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.spell-search-filters .form-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--spacing-md)}.spell-search-results{min-height:300px}.spells-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--spacing-md)}.spell-card{padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease}.spell-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #2563eb33}.chips-input-container{width:100%}.chips-input-wrapper{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);min-height:38px}.chips-input-wrapper:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 2px #2563eb1a}.chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:#2563eb1a;border:1px solid var(--primary-color);border-radius:16px;font-size:var(--font-size-sm);color:var(--text-primary);transition:background .2s ease}.chip:hover{background:#2563eb26}.chip-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:none;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;font-size:14px;line-height:1;transition:all .2s ease}.chip-remove:hover{background:#ef444433;color:#ef4444}.chips-autocomplete{position:relative;flex:1;min-width:150px}.chips-input{width:100%;padding:var(--spacing-xs);border:none;background:transparent;font-size:var(--font-size-base);color:var(--text-primary)}.chips-input:focus{outline:none;box-shadow:none}.chips-input-loading{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:var(--font-size-sm)}.chips-input-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000004d;max-height:300px;overflow-y:auto;z-index:1000}.chips-input-item{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background .2s ease;font-size:var(--font-size-base)}.chips-input-item:hover,.chips-input-item.selected{background:var(--bg-secondary)}.chips-input-item.chips-input-custom{border-top:1px solid var(--border-color);font-style:italic;color:var(--text-secondary)}.chips-input-custom-label{font-style:normal;color:var(--text-primary);font-weight:500;margin-right:var(--spacing-xs)}.chips-input-empty{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);font-style:italic}.spell-card.selected{border-color:var(--color-gold-primary);background:#daa5201a}.spell-card-header{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.spell-card-checkbox{flex-shrink:0}.spell-card-title{display:flex;justify-content:space-between;align-items:flex-start;flex:1;gap:var(--spacing-sm)}.spell-card-title h4{margin:0;font-size:var(--font-size-md)}.spell-card-body{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.spell-school,.spell-casting-time{font-size:var(--font-size-xs);padding:2px 6px;background:var(--bg-tertiary);border-radius:4px;color:var(--text-secondary)}.spell-card-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.4}.spell-card-actions{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.modal-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.selected-count{color:var(--color-gold-primary);font-weight:500}.modal-actions{display:flex;gap:var(--spacing-sm)}.badge.concentration{background:#3b82f633;color:#3b82f6;font-size:var(--font-size-xs);padding:2px 4px;border-radius:4px}.badge.ritual{background:#a855f733;color:#a855f7;font-size:var(--font-size-xs);padding:2px 4px;border-radius:4px}@media(max-width:1024px){.spellcasting-stats .form-row{grid-template-columns:repeat(2,1fr)}.spell-slots-grid{grid-template-columns:repeat(5,1fr)}.spell-search-filters .form-row{grid-template-columns:1fr}}@media(max-width:768px){.spellcasting-stats .form-row{grid-template-columns:1fr}.spell-slots-grid{grid-template-columns:repeat(3,1fr)}.spell-add-controls{flex-direction:column;align-items:stretch}.spell-browse-btn{width:100%}.spells-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column;gap:var(--spacing-md)}.modal-actions{width:100%;flex-direction:column}.modal-actions .btn{width:100%}}.encounter-form-modal{max-width:900px;max-height:90vh;overflow-y:auto}.encounter-form-modal .modal-header{display:flex;align-items:center;gap:var(--spacing-md)}.encounter-form-modal .modal-header h2{flex:1;margin:0}.encounter-form-modal .unsaved-indicator{font-size:var(--font-size-sm);color:var(--warning-color);font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);background:#eab3081a;border:1px solid var(--warning-color);border-radius:var(--border-radius)}.encounter-form-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-lg);border-top:var(--border-width) solid var(--border-color);margin-top:var(--spacing-lg)}@media(max-width:768px){.encounter-form-modal{max-width:95%}.encounter-form-modal .modal-footer{flex-direction:column-reverse;gap:var(--spacing-md)}.encounter-form-modal .modal-footer .btn{width:100%}}.player-layout{display:grid;grid-template-columns:1fr 350px;gap:var(--spacing-lg);min-height:80vh}.player-main{background:linear-gradient(135deg,#1a1611e6,#0f0d0ae6);border:2px solid var(--secondary-color);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);position:relative;box-shadow:var(--box-shadow)}.player-main:before,.player-main:after{content:"✦";position:absolute;color:var(--secondary-color);font-size:var(--font-size-2xl)}.player-main:before{top:1rem;left:1rem}.player-main:after{bottom:1rem;right:1rem}.player-sidebar{display:flex;flex-direction:column;gap:var(--spacing-md)}.sidebar-toggle-btn{width:100%;margin-bottom:var(--spacing-md);font-weight:600}.sidebar-section-jump{margin-bottom:var(--spacing-md)}.sidebar-section-jump .section-jump-select{width:100%;font-weight:600;font-size:var(--font-size-base);padding:var(--spacing-md) var(--spacing-md);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-secondary);box-shadow:var(--box-shadow);color:var(--text-secondary);font-family:var(--font-family);transition:all .3s}.player-actions{display:flex;gap:var(--spacing-sm)}.section-header-with-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);gap:var(--spacing-lg)}.section-header-with-nav h2{margin:0;flex:1}.section-jump-controls{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.section-jump-label{color:var(--text-secondary);font-size:var(--font-size-sm);white-space:nowrap}.section-jump-select{background:var(--bg-secondary);border:var(--border-width) solid var(--border-color-dark);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family);font-size:var(--font-size-sm);border-radius:var(--border-radius);cursor:pointer;transition:all .3s;min-width:200px}.section-jump-select:focus{outline:none;border-color:var(--border-color);box-shadow:0 0 10px #d4af3733}.section-jump-select:hover{border-color:var(--border-color)}.section-content{color:var(--text-secondary);line-height:1.8;font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl)}.section-content h1,.section-content h2,.section-content h3{font-family:Cinzel,serif;color:var(--primary-color);margin:var(--spacing-lg) 0 1rem 0;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.section-content p{margin-bottom:1rem}.section-content em{color:var(--color-gold-light);font-style:italic}.section-content strong{color:var(--primary-color);font-weight:600}.section-notes{margin-bottom:var(--spacing-lg)}.section-notes h4{margin-bottom:var(--spacing-sm);color:var(--text-primary)}.connections-section{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:2px solid var(--border-color-dark)}.connections-title{font-family:Cinzel,serif;font-size:var(--font-size-xl);color:var(--primary-color);margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.connection-buttons{display:flex;flex-wrap:wrap;gap:1rem}.connection-btn:before{content:"➤";margin-right:.5rem;display:inline-block;transition:transform .3s}.connection-btn{padding:var(--spacing-sm) 1.5rem;font-size:1rem}.encounter-card,.item-card{border-radius:var(--border-radius);box-shadow:var(--box-shadow);padding:var(--spacing-md)}.encounters-section,.items-section,.images-section{margin-bottom:var(--spacing-lg)}.encounters-section h3,.items-section h3,.images-section h3{margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:var(--font-size-lg)}.encounter-creature{padding:var(--spacing-sm) 0;color:var(--text-secondary);border-bottom:1px solid var(--border-color-dark)}.encounter-creature:last-of-type{border-bottom:none}.creature-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.creature-name{font-weight:600;color:var(--primary-color);font-size:var(--font-size-md)}.creature-count{background:var(--secondary-color);color:var(--bg-secondary);padding:.2rem .5rem;border-radius:var(--border-radius-sm);font-weight:700;font-size:var(--font-size-sm)}.creature-count-badge{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);color:var(--bg-secondary);padding:.3rem .6rem;border-radius:var(--border-radius-sm);font-weight:700;font-size:var(--font-size-sm);box-shadow:0 2px 4px #0000004d}.creature-stats{display:flex;gap:1rem;margin-bottom:.3rem;font-size:.95rem}.creature-stats .stat{color:var(--text-secondary)}.creature-stats-grid{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-sm);padding:var(--spacing-sm);background:#0003;border-radius:var(--border-radius-sm)}.stat-item{color:var(--text-secondary);font-size:var(--font-size-sm)}.stat-item strong{color:var(--primary-color);margin-right:.25rem}.abilities-section{margin:var(--spacing-sm) 0;padding:var(--spacing-sm);background:#0003;border-radius:var(--border-radius-sm);border-left:var(--border-width-thick) solid var(--secondary-color)}.abilities-section>strong{display:block;color:var(--primary-color);margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm)}.abilities-grid .ability{font-size:var(--font-size-sm);color:var(--text-secondary);padding:.25rem;background:#0000004d;border-radius:calc(var(--border-radius) / 2);text-align:center}.abilities-grid .ability strong{color:var(--primary-color);margin-right:.25rem}.creature-detail{margin:var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--text-secondary);padding-left:var(--spacing-sm);border-left:var(--border-width) solid var(--border-color-dark)}.creature-detail strong{color:var(--text-primary);margin-right:.25rem}.creature-description{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:var(--border-width) solid var(--border-color-dark);color:var(--text-secondary);line-height:1.5;font-style:italic}.creature-abilities{font-size:.85rem;color:var(--text-light);font-style:italic}.encounter-chance{margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--border-color-dark);color:var(--text-light);font-size:var(--font-size-sm);font-style:italic}.creatures{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.creatures h5{margin-bottom:var(--spacing-sm);color:var(--text-secondary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.creature-info{padding:var(--spacing-sm);border-radius:calc(var(--border-radius) / 2)}.creature-info:last-child{margin-bottom:0}.item-card{cursor:pointer}.item-card:hover{border-color:var(--primary-color);box-shadow:0 0 15px #d4af374d}.item-entry{padding:var(--spacing-sm) 0;color:var(--text-secondary);border-bottom:1px solid var(--border-color-dark)}.item-entry:last-child{border-bottom:none}.item-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem}.item-name{font-weight:600;color:var(--primary-color)}.item-chance-text{color:var(--text-light)}.section-image{width:100%;max-height:200px;object-fit:contain;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);cursor:pointer}.navigation-buttons{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-lg);flex-wrap:wrap}.journal-textarea{min-height:300px;font-family:var(--font-family);line-height:1.6}.creature-actions>strong{display:block;margin-bottom:var(--spacing-sm);color:var(--color-gold-primary)}.creature-actions .action-entry:last-child{margin-bottom:0}.creature-actions .action-header strong{color:var(--color-gold-primary);font-size:1em}.creature-actions .action-usage{color:var(--text-secondary);font-size:.85em;margin-left:var(--spacing-xs)}.creature-actions .action-stats{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);font-size:.9em}.creature-actions .attack-bonus,.creature-actions .attack-damage,.creature-actions .attack-save{padding:2px 6px;background:#daa52026;border-radius:3px;border:1px solid var(--color-gold-dark);color:var(--text-primary)}.creature-actions .action-description{font-size:.85em;line-height:1.4}@media(max-width:1024px){.player-layout{grid-template-columns:1fr;gap:var(--spacing-md)}.player-sidebar{order:-1}.player-actions{flex-direction:column;align-items:stretch}}@media(max-width:768px){.navigation-buttons{flex-direction:column;gap:var(--spacing-sm)}.section-header-with-nav{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.section-jump-controls{width:100%}.section-jump-select{flex:1;min-width:0}}.adventure-overview{display:grid;grid-template-columns:1fr 350px;gap:var(--spacing-lg);min-height:80vh}.overview-main{background:linear-gradient(135deg,#1a1611e6,#0f0d0ae6);border:2px solid var(--secondary-color);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);position:relative;box-shadow:var(--box-shadow)}.overview-main:before,.overview-main:after{content:"✦";position:absolute;color:var(--secondary-color);font-size:var(--font-size-2xl)}.overview-main:before{top:1rem;left:1rem}.overview-main:after{bottom:1rem;right:1rem}.overview-header{text-align:center;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--border-color)}.overview-title{font-family:Cinzel,serif;font-size:2.5rem;color:var(--primary-color);margin:0 0 var(--spacing-sm) 0;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.overview-author{font-size:var(--font-size-lg);color:var(--text-secondary);font-style:italic;margin:0}.overview-description{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:#0003;border-radius:var(--border-radius);border-left:4px solid var(--secondary-color);color:var(--text-secondary);line-height:1.8;font-size:var(--font-size-lg)}.overview-description p{margin-bottom:1rem}.overview-description p:last-child{margin-bottom:0}.overview-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:#0003;border-radius:var(--border-radius)}.metadata-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.metadata-label{font-size:var(--font-size-sm);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.metadata-value{font-size:var(--font-size-md);color:var(--text-secondary)}.overview-section-title{font-family:Cinzel,serif;font-size:var(--font-size-lg);color:var(--primary-color);margin:0 0 var(--spacing-md) 0;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.overview-tags,.overview-warnings{margin-bottom:var(--spacing-xl)}.tags-container,.warnings-container{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.overview-tag{background:linear-gradient(135deg,#d4af3733,#daa52033);border:1px solid var(--secondary-color);color:var(--text-secondary);padding:.4rem .8rem;border-radius:var(--border-radius);font-size:var(--font-size-sm);transition:all .3s}.overview-warning{background:#8b000033;border:1px solid rgba(139,0,0,.5);color:var(--text-secondary);padding:.4rem .8rem;border-radius:var(--border-radius);font-size:var(--font-size-sm)}.overview-legal{margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background:#0003;border-radius:var(--border-radius);border:1px solid var(--border-color-dark)}.legal-item{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.legal-item:last-child{margin-bottom:0}.legal-label{font-weight:600;color:var(--text-primary)}.legal-value{color:var(--text-secondary)}.legal-notice{color:var(--primary-color)}.attribution-section{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color-dark)}.attribution-text{margin:var(--spacing-xs) 0;padding-left:var(--spacing-md);color:var(--text-secondary);font-size:var(--font-size-sm);font-style:italic}.overview-actions{display:flex;justify-content:center;padding-top:var(--spacing-lg);border-top:2px solid var(--border-color)}.btn-large{padding:1rem 3rem;font-size:var(--font-size-lg);font-weight:600;min-width:250px}.overview-sidebar{display:flex;flex-direction:column;gap:var(--spacing-lg)}.sidebar-title{font-family:Cinzel,serif;font-size:var(--font-size-lg);color:var(--primary-color);margin:0 0 var(--spacing-md) 0;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.sidebar-sections-nav{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:var(--box-shadow)}.sections-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.section-list-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm);background:#0003;border-radius:var(--border-radius-sm);border-left:2px solid var(--border-color-dark);transition:all .3s}.section-list-item:hover{border-left-color:var(--secondary-color);background:#0000004d}.section-number{color:var(--primary-color);font-weight:600;font-size:var(--font-size-sm);min-width:1.5rem}.section-list-item .section-title{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.4}.sidebar-images{display:flex;flex-direction:column;gap:var(--spacing-md)}.overview-image-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:var(--box-shadow)}.overview-image{width:100%;border-radius:var(--border-radius);cursor:pointer;transition:all .3s}.overview-image:hover{box-shadow:0 0 15px #d4af374d}.image-title{font-weight:600;color:var(--text-primary);margin:var(--spacing-sm) 0 var(--spacing-xs) 0}.image-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}@media(max-width:1024px){.adventure-overview{grid-template-columns:1fr;gap:var(--spacing-md)}.overview-sidebar{order:-1}.overview-title{font-size:2rem}.overview-metadata{grid-template-columns:1fr}}.expandable-text{margin:.25rem 0}.expand-toggle-btn{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:.85rem;padding:.25rem .5rem;margin-left:.5rem;text-decoration:underline;transition:color .2s ease}.expand-toggle-btn:hover{color:var(--accent-color)}.expand-toggle-btn:focus{outline:2px solid var(--primary-color);outline-offset:2px}.creature-special-abilities,.creature-legendary-actions{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(191,166,124,.2)}@media(max-width:768px){.overview-main{padding:var(--spacing-lg)}.overview-title{font-size:1.75rem}.btn-large{min-width:200px;padding:.8rem 2rem}}.notification-container{position:fixed;top:80px;right:20px;max-width:420px;width:100%;z-index:3000;pointer-events:none}@media(max-width:768px){.notification-container{inset:auto 20px 20px;max-width:none}}.notification{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background:linear-gradient(135deg,var(--bg-card-gradient-start) 0%,var(--bg-card-gradient-end) 100%);border:var(--border-width-thick) solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:0 10px 25px #000c,0 0 20px #d4af374d,inset 0 1px #d4af3733;pointer-events:auto;min-height:60px}.notification-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);font-weight:700;border-radius:50%;background:#0000004d}.notification-content{flex:1;min-width:0}.notification-title{font-family:var(--font-family-heading);font-size:var(--font-size-md);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs);line-height:1.3}.notification-message{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.4;word-wrap:break-word}.notification-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0;align-items:center}.notification-action-btn{padding:var(--spacing-xs) var(--spacing-md);background:transparent;border:var(--border-width) solid currentColor;border-radius:var(--border-radius);color:inherit;font-family:var(--font-family);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s;white-space:nowrap}.notification-action-btn:hover{background:#ffffff1a;transform:translateY(-1px)}.notification-action-btn:active{transform:translateY(0)}.notification-close-btn{flex-shrink:0;background:none;border:none;color:var(--text-light);font-size:var(--font-size-2xl);line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:all .2s;border-radius:var(--border-radius)}.notification-close-btn:hover{color:var(--text-primary);background:#ffffff1a}.notification-success{border-color:var(--success-color);box-shadow:0 10px 25px #000c,0 0 20px #0596694d,inset 0 1px #05966933}.notification-success .notification-icon{color:#6ee7b7;background:#05966933}.notification-success .notification-action-btn{color:#6ee7b7}.notification-error{border-color:var(--color-danger-medium);box-shadow:0 10px 25px #000c,0 0 20px #dc262666,inset 0 1px #dc262633}.notification-error .notification-icon{color:var(--color-danger-light);background:#dc262633}.notification-error .notification-action-btn{color:var(--color-danger-light)}.notification-warning{border-color:var(--warning-color);box-shadow:0 10px 25px #000c,0 0 20px #d977064d,inset 0 1px #d9770633}.notification-warning .notification-icon{color:#fbbf24;background:#d9770633}.notification-warning .notification-action-btn{color:#fbbf24}.notification-info{border-color:var(--border-color);box-shadow:0 10px 25px #000c,0 0 20px #d4af374d,inset 0 1px #d4af3733}.notification-info .notification-icon{color:var(--primary-color);background:#d4af3733}.notification-info .notification-action-btn{color:var(--primary-color)}@keyframes notification-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes notification-slide-in-mobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes notification-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes notification-slide-out-mobile{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}.notification-enter{animation:notification-slide-in .3s ease-out forwards}.notification-exit{animation:notification-slide-out .3s ease-in forwards}@media(max-width:768px){.notification-enter{animation:notification-slide-in-mobile .3s ease-out forwards}.notification-exit{animation:notification-slide-out-mobile .3s ease-in forwards}.notification-actions{flex-direction:column;align-items:stretch}.notification-action-btn{width:100%;text-align:center}}@media(max-width:480px){.notification{padding:var(--spacing-md);gap:var(--spacing-sm)}.notification-icon{width:24px;height:24px;font-size:var(--font-size-lg)}.notification-title{font-size:var(--font-size-base)}.notification-message{font-size:var(--font-size-xs)}}.journal-page{max-width:900px;margin:0 auto;padding:2rem 1rem}.journal-header{margin-bottom:2rem}.journal-intro{margin-bottom:1.5rem}.journal-intro h1{font-size:2rem;margin-bottom:.5rem;color:var(--text-primary)}.journal-intro p{color:var(--text-secondary);font-size:1rem}.search-section{margin-bottom:1.5rem}.search-wrapper{display:flex;gap:.5rem;align-items:center}.search-wrapper .search-box{flex:1;padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem}.journal-form{margin-bottom:2rem;padding:1.5rem}.journal-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.journal-form-header h2{font-size:1.5rem;margin:0;color:var(--text-primary)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary)}.form-control{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;font-family:inherit;background-color:var(--bg-secondary);color:var(--text-primary);transition:border-color .2s}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.form-control::placeholder{color:var(--text-tertiary)}.form-text{display:block;margin-top:.25rem;font-size:.875rem;color:var(--text-secondary)}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.journal-entries{display:flex;flex-direction:column;gap:1.5rem}.journal-entry-card{padding:1.5rem;transition:box-shadow .2s}.journal-entry-card:hover{box-shadow:0 4px 12px #00000026}.journal-entry-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.journal-entry-header h3{font-size:1.25rem;margin:0;color:var(--text-primary);flex:1}.journal-entry-actions{display:flex;gap:.5rem}.journal-entry-content{margin-bottom:1rem;color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.journal-entry-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{display:inline-block;padding:.25rem .75rem;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;font-size:.875rem;color:var(--text-secondary)}.journal-entry-footer{padding-top:1rem;border-top:1px solid var(--border-color)}.journal-entry-footer small{color:var(--text-secondary);font-size:.875rem}.empty-state{text-align:center;padding:3rem 2rem}.empty-state h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.empty-state p{color:var(--text-secondary);margin-bottom:1.5rem}.btn-icon{background:none;border:none;padding:.5rem;cursor:pointer;font-size:1.25rem;color:var(--text-secondary);transition:color .2s,background-color .2s;border-radius:4px}.btn-icon:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.btn-icon.btn-danger:hover{color:var(--danger-color)}@media(max-width:768px){.journal-page{padding:1rem .5rem}.journal-intro h1{font-size:1.5rem}.search-wrapper{flex-direction:column}.search-wrapper .search-box{width:100%}.journal-form,.journal-entry-card{padding:1rem}.form-actions{flex-direction:column}.form-actions button{width:100%}}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner p{margin-top:1rem;color:var(--text-secondary)}.alert{padding:1rem;border-radius:4px;margin-bottom:1rem}.alert-danger{background-color:#dc35451a;border:1px solid rgba(220,53,69,.3);color:#dc3545}
