:root{--color-navy: #0d1929;--color-gold: #ffc700;--color-white: #f5f5f5;--color-slate: #3d4f5c;--color-charcoal: #1a2332;--color-gold-50: #fff9e6;--color-gold-100: #ffebb3;--color-gold-200: #ffe080;--color-gold-300: #ffd54d;--color-gold-400: #ffcc1a;--color-gold-500: #ffc700;--color-gold-600: #e6b300;--color-gold-700: #b38900;--color-gold-800: #806200;--color-bg-primary: #0d1929;--color-bg-secondary: #1a2332;--color-bg-tertiary: #3d4f5c;--color-bg-elevated: #283544;--color-bg-overlay: #0a1118;--color-text-primary: #f5f5f5;--color-text-secondary: #b8c5d0;--color-text-tertiary: #8896a4;--color-text-disabled: #5a6872;--color-text-inverse: #0d1929;--color-accent: #ffc700;--color-accent-hover: #e6b300;--color-accent-active: #b38900;--color-border-primary: #3d4f5c;--color-border-secondary: #2a3a47;--color-border-focus: #ffc700;--color-success: #4ade80;--color-success-hover: #22c55e;--color-success-bg: rgba(74, 222, 128, .15);--color-success-text: #86efac;--color-error: #ef4444;--color-error-hover: #dc2626;--color-error-bg: rgba(239, 68, 68, .15);--color-error-text: #fca5a5;--color-warning: #fbbf24;--color-warning-hover: #f59e0b;--color-warning-bg: rgba(251, 191, 36, .15);--color-warning-text: #fde047;--overlay-dark-10: rgba(13, 25, 41, .1);--overlay-dark-20: rgba(13, 25, 41, .2);--overlay-dark-30: rgba(13, 25, 41, .3);--overlay-dark-50: rgba(13, 25, 41, .5);--overlay-dark-80: rgba(13, 25, 41, .8);--overlay-dark-90: rgba(13, 25, 41, .9);--overlay-light-05: rgba(245, 245, 245, .05);--overlay-light-10: rgba(245, 245, 245, .1);--overlay-light-15: rgba(245, 245, 245, .15);--overlay-light-20: rgba(245, 245, 245, .2);--overlay-gold-10: rgba(255, 199, 0, .1);--overlay-gold-20: rgba(255, 199, 0, .2);--overlay-gold-30: rgba(255, 199, 0, .3);--overlay-gold-40: rgba(255, 199, 0, .4);--gradient-gold: linear-gradient(135deg, #ffc700 0%, #e6b300 50%, #b38900 100%);--gradient-gold-subtle: linear-gradient(135deg, #ffcc1a 0%, #ffc700 100%);--gradient-navy-charcoal: linear-gradient(135deg, #0d1929 0%, #1a2332 100%);--gradient-overlay: linear-gradient(180deg, transparent 0%, rgba(13, 25, 41, .8) 100%);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .6);--shadow-gold: 0 4px 12px rgba(255, 199, 0, .4);--shadow-gold-lg: 0 8px 24px rgba(255, 199, 0, .5);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--color-bg-primary);color:var(--color-text-primary)}::selection{background:#4a9eff;color:#fff}::-moz-selection{background:#4a9eff;color:#fff}a{color:inherit;text-decoration:none}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease}button:disabled{opacity:.6;cursor:not-allowed}.header{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.header-container{max-width:1400px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{text-decoration:none;color:inherit;flex-shrink:0}.brand h1{font-size:24px;font-weight:700;margin:0;color:var(--color-text-primary);transition:color .2s ease}.nucleus-text{color:#4a9eff}.brand:hover h1{color:var(--color-text-primary)}.brand:hover .nucleus-text{color:#5dadff}.nav{display:flex;gap:8px;flex:1}.nav-link{padding:10px 20px;font-size:16px;font-weight:600;color:var(--color-text-secondary);text-decoration:none;border-radius:8px;transition:all .2s ease}.nav-link:hover{background:var(--overlay-light-05);color:var(--color-text-primary)}.nav-link.active{background:#4a9eff;color:#fff}.nav-link-admin{color:var(--color-error)}.nav-link-admin:hover{background:var(--color-error-bg);color:var(--color-error-hover)}.nav-link-admin.active{background:var(--color-error);color:var(--color-text-primary)}.auth-section{flex-shrink:0}.user-menu,.auth-links{display:flex;align-items:center;gap:12px}.btn{padding:10px 20px;font-size:14px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.btn-secondary:hover{background:var(--color-bg-tertiary);transform:translateY(-1px)}.nucleus-dropdown{position:relative;flex-shrink:0}.btn-nucleus{background:linear-gradient(135deg,#2a5a8f,#1e4570);border:2px solid #4a9eff;color:#fff!important;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;text-decoration:none;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;box-shadow:0 2px 8px #4a9eff33}.btn-nucleus:hover{background:linear-gradient(135deg,#3468a8,#265886);border-color:#5dadff;transform:translateY(-1px);box-shadow:0 4px 16px #4a9eff66}.dropdown-arrow{font-size:10px;opacity:.8;transition:transform .2s ease}.nucleus-dropdown:hover .dropdown-arrow{transform:rotate(180deg)}.nucleus-dropdown-menu{position:absolute;top:100%;right:0;padding-top:8px;z-index:1000}.nucleus-dropdown-menu a{display:block;background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:8px;box-shadow:0 4px 16px #0003;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.nucleus-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;box-sizing:border-box}.nucleus-dropdown-item:hover{background:linear-gradient(135deg,#3468a8,#265886);border-color:#5dadff;box-shadow:0 4px 16px #4a9eff66}.dropdown-icon{font-size:18px;flex-shrink:0}@media (max-width: 968px){.btn-nucleus{font-size:13px;padding:8px 16px}}@media (max-width: 768px){.header-container{flex-wrap:wrap;gap:16px}.brand h1{font-size:20px}.nav{order:3;width:100%;justify-content:center}.nav-link{flex:1;text-align:center;padding:8px 12px;font-size:14px}.auth-section{margin-left:auto}.btn-nucleus{font-size:12px;padding:8px 12px}}.post-card{display:block;text-decoration:none;color:inherit;border-radius:8px;overflow:hidden;background:var(--color-bg-secondary);box-shadow:var(--shadow-md);transition:transform .2s ease,box-shadow .2s ease;border:1px solid var(--color-border-secondary)}.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-border-focus)}.post-card-image{position:relative;width:100%;padding-top:56.25%;background:var(--color-bg-tertiary);overflow:hidden}.post-card-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.post-card-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--gradient-gold);color:var(--color-text-inverse);font-size:14px;font-weight:500}.post-card-info{padding:12px 16px}.post-card-title{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.post-card-downloads{display:inline-block;margin-top:8px;font-size:13px;color:var(--color-text-secondary)}.post-grid-container{width:100%}.posts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:24px;max-width:1400px;margin:0 auto}.load-more{display:flex;justify-content:center;padding:32px 24px}.load-more-button{padding:12px 32px;font-size:15px;font-weight:600;color:var(--color-text-inverse);background:var(--color-accent);border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.load-more-button:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-gold)}.load-more-button:disabled{opacity:.6;cursor:not-allowed}.post-grid-loading,.post-grid-error,.post-grid-empty{display:flex;align-items:center;justify-content:center;min-height:400px;color:var(--color-text-tertiary);font-size:16px}.post-grid-error{color:var(--color-error)}@media (max-width: 1200px){.posts-grid{grid-template-columns:repeat(3,1fr);gap:20px;padding:20px}}@media (max-width: 968px){.posts-grid{grid-template-columns:repeat(2,1fr);gap:20px;padding:20px}}@media (max-width: 640px){.posts-grid{grid-template-columns:repeat(2,1fr);gap:16px;padding:16px}}.sort-selector{display:flex;align-items:center;gap:12px;padding:12px 0}.sort-label{font-size:14px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.sort-dropdown{padding:8px 32px 8px 12px;font-size:14px;font-weight:500;color:var(--color-text-primary);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:6px;cursor:pointer;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}.sort-dropdown:hover{border-color:var(--color-border-hover);background-color:var(--color-bg-hover)}.sort-dropdown:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.sort-dropdown option{padding:8px;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.homepage{min-height:100vh;background:var(--color-bg-primary)}.homepage-controls{max-width:1400px;margin:0 auto;padding:24px 24px 0;display:flex;justify-content:flex-end;align-items:center}.homepage-header{text-align:center;padding:64px 32px 32px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary)}.homepage-header h1{font-size:48px;font-weight:700;margin:0 0 16px;color:var(--color-text-primary)}.homepage-header p{font-size:18px;color:var(--color-text-tertiary);margin:0}.post-page{min-height:100vh;background:var(--color-bg-primary);padding:0;color:var(--color-text-secondary)}.post-page *{color:inherit}.back-link{display:inline-block;padding:16px 32px;color:var(--color-text-tertiary)!important;font-weight:500;text-decoration:none;transition:color .2s ease;font-size:14px}.post-layout{display:grid;grid-template-columns:1fr 1.2fr;min-height:calc(100vh - 50px);gap:0}.post-info-column{background:var(--color-bg-secondary);padding:40px 48px;overflow-y:auto;border-right:1px solid var(--color-border-primary)}.post-media-column{background:var(--color-bg-primary);padding:40px;display:flex;flex-direction:column;gap:20px;overflow-y:auto;position:sticky;top:0;height:100vh}.post-header{margin-bottom:32px}.post-info-column .post-title{font-size:48px!important;font-weight:700;margin:0 0 16px;color:var(--color-text-primary)!important;line-height:1.2}.post-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--color-text-tertiary)!important;margin-bottom:12px}.post-meta span{display:inline-flex;align-items:center;color:var(--color-text-tertiary)!important}.post-author{color:var(--color-text-secondary)!important}.author-link{color:var(--color-accent)!important;text-decoration:none;transition:color .2s ease}.author-link:hover{color:var(--color-text-primary)!important;text-decoration:underline}.author-socials{display:flex;gap:10px;margin-bottom:12px;align-items:center}.social-link{text-decoration:none;transition:all .2s ease;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;height:32px;border-radius:6px;background:var(--overlay-light-05);border:1px solid var(--overlay-light-10);white-space:nowrap}.post-category-badge{display:inline-block;padding:6px 14px;background:var(--color-accent);color:var(--color-text-inverse);border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.post-info-column section{margin-bottom:32px}.post-info-column h2{font-size:20px;font-weight:600;margin:0 0 16px;color:var(--color-text-primary)!important}.post-info-column h3{font-size:16px;font-weight:600;margin:0 0 12px;color:var(--color-text-secondary)!important;text-transform:uppercase;letter-spacing:.5px;font-size:13px}.post-description{font-size:15px;line-height:1.7;color:var(--color-text-secondary)!important;white-space:pre-wrap}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-block;padding:6px 12px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:4px;font-size:13px;color:var(--color-text-secondary)!important;text-decoration:none;transition:all .2s ease;cursor:pointer}.tag:hover{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse)!important;transform:translateY(-1px)}.files-container{background:var(--color-bg-overlay);border-radius:4px;border:1px solid var(--color-border-secondary);padding:12px;font-family:Courier New,Courier,monospace;font-size:13px;line-height:1.6}.file-hover-preview{position:fixed;background:var(--color-bg-secondary);border:2px solid var(--color-accent);border-radius:6px;padding:8px;z-index:10000;pointer-events:none;opacity:0;transition:opacity .15s ease;box-shadow:var(--shadow-xl);white-space:nowrap}.download-section{margin-top:40px;padding-top:24px;border-top:1px solid var(--color-border-primary);display:flex;flex-direction:column;gap:12px}.download-button{padding:16px 48px;font-size:16px;font-weight:600;color:var(--color-text-inverse);background:var(--color-accent);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;display:inline-block;min-width:200px}.download-button:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-gold)}.edit-button{padding:14px 48px;font-size:15px;font-weight:600;color:var(--color-accent)!important;background:var(--overlay-gold-10);border:1px solid var(--overlay-gold-30);border-radius:8px;text-align:center;text-decoration:none;transition:all .2s ease;display:inline-block;min-width:200px}.edit-button:hover{background:var(--overlay-gold-20);border-color:var(--color-accent);color:var(--color-text-primary)!important;transform:translateY(-1px)}.screenshot-main{flex:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-overlay);border-radius:8px;overflow:hidden;border:1px solid var(--color-border-primary)}.screenshot-main img{width:100%;height:100%;object-fit:contain;display:block}.screenshot-thumbnails{display:flex;gap:12px;flex-wrap:wrap}.screenshot-thumb{width:120px;height:80px;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .2s ease;background:var(--color-bg-overlay)}.screenshot-thumb:hover{border-color:var(--color-text-disabled)}.screenshot-thumb.active{border-color:var(--color-accent)}.screenshot-thumb img{width:100%;height:100%;object-fit:cover;display:block}.screenshot-placeholder{flex:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-overlay);border-radius:8px;border:1px solid var(--color-border-primary);color:var(--color-text-disabled)!important;font-size:16px}.screenshot-placeholder span{color:var(--color-text-disabled)!important}.loading,.error{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:18px;color:var(--color-text-tertiary)!important}.error{color:var(--color-error)!important;flex-direction:column;gap:16px}@media (max-width: 1200px){.post-layout{grid-template-columns:1fr 1fr}}@media (max-width: 968px){.post-layout{grid-template-columns:1fr}.post-media-column{position:relative;height:auto;min-height:400px}.post-info-column{border-right:none;border-bottom:1px solid var(--color-border-primary)}}@media (max-width: 640px){.post-info-column,.post-media-column{padding:24px 20px}.post-title{font-size:24px}.screenshot-thumbnails{gap:8px}.screenshot-thumb{width:80px;height:54px}.file-row{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.file-info-column{width:100%;flex-direction:column;align-items:flex-start}.file-images-column{width:100%;justify-content:flex-start}.character-mods-grid,.stage-mods-grid{grid-template-columns:1fr;gap:16px}}.character-mods-section{margin-top:32px;margin-bottom:32px}.character-mods-section h3{font-size:16px;font-weight:600;margin:0 0 16px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px}.character-mods-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}.character-mod-card{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all .2s}.character-mod-card:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-gold)}.character-mod-csp{width:100%;display:flex;justify-content:center;align-items:center;background:var(--color-bg-secondary);border-radius:4px;padding:8px}.character-mod-csp img{width:136px;height:188px;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.character-mod-info{display:flex;flex-direction:column;gap:8px}.character-mod-name{font-size:14px;font-weight:600;color:var(--color-text-primary);text-align:center}.character-mod-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.character-mod-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.character-mod-stock{width:40px;height:40px;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.character-mod-nucleus-btn{flex:1;text-align:center;padding:8px 12px;font-size:12px;white-space:nowrap;background:linear-gradient(135deg,#1a2f42,#243447);border:2px solid #4a9eff;color:#fff!important;border-radius:6px;font-weight:600;transition:all .2s;text-decoration:none}.character-mod-nucleus-btn:hover{background:linear-gradient(135deg,#1f3749,#2a3e52);border-color:#5dadff;transform:translateY(-1px);box-shadow:0 4px 16px #4a9eff4d}@media (max-width: 968px){.character-mods-grid{grid-template-columns:repeat(2,1fr)}}.stage-mods-section{margin-top:32px;margin-bottom:32px}.stage-mods-section h3{font-size:16px;font-weight:600;margin:0 0 16px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px}.stage-mods-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.stage-mod-card{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:12px;transition:all .2s}.stage-mod-card:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-gold)}.stage-mod-screenshot{width:100%;border-radius:4px;overflow:hidden;background:var(--color-bg-secondary)}.stage-mod-screenshot img{width:100%;height:auto;display:block;object-fit:cover}.stage-mod-info{display:flex;flex-direction:column;gap:8px}.stage-mod-name{font-size:16px;font-weight:600;color:var(--color-text-primary);text-align:center}.stage-mod-filename{font-size:12px;color:var(--color-text-tertiary);text-align:center;font-family:Courier New,monospace}.stage-mod-nucleus-btn{width:100%;text-align:center;padding:10px 16px;font-size:13px;background:linear-gradient(135deg,#1a2f42,#243447);border:2px solid #4a9eff;color:#fff!important;border-radius:6px;font-weight:600;transition:all .2s;text-decoration:none}.stage-mod-nucleus-btn:hover{background:linear-gradient(135deg,#1f3749,#2a3e52);border-color:#5dadff;transform:translateY(-1px);box-shadow:0 4px 16px #4a9eff4d}@media (max-width: 968px){.stage-mods-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.stage-mods-grid{grid-template-columns:1fr}}.edit-post-page{min-height:100vh;background:var(--color-bg-primary);padding:0}.edit-header{padding:20px 40px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary)}.edit-header .back-link{display:inline-block;color:var(--color-text-tertiary);font-weight:500;text-decoration:none;transition:color .2s ease;font-size:14px;margin-bottom:8px}.edit-header .back-link:hover{color:var(--color-text-primary)}.edit-header h1{font-size:32px;margin:10px 0 0;color:var(--color-text-primary)}.edit-form{width:100%}.edit-main-content{display:grid;grid-template-columns:1fr 350px;gap:0;max-width:1400px;margin:0 auto}.edit-fields-column{background:var(--color-bg-secondary);padding:40px;border-right:1px solid var(--color-border-primary)}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;padding:12px;background:var(--overlay-dark-30);border:1px solid var(--overlay-light-10);border-radius:6px;color:var(--color-text-primary);font-size:16px;font-family:inherit;transition:border-color .2s}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.form-group select option{background:var(--color-bg-secondary);color:var(--color-text-primary)}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-accent)}.form-group textarea{resize:vertical;min-height:100px}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{opacity:.6;cursor:not-allowed}.tags-input-wrapper{display:flex;gap:10px;align-items:center}.tags-input-wrapper input{flex:1}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tag.editable{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--overlay-gold-20);border:1px solid var(--overlay-gold-40);border-radius:20px;color:var(--color-accent);font-size:14px}.tag-remove{background:none;border:none;color:var(--color-accent);font-size:20px;line-height:1;cursor:pointer;padding:0;margin:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.tag-remove:hover{background:var(--overlay-gold-30)}.tag-remove:disabled{opacity:.5;cursor:not-allowed}.read-only-field{padding:12px;background:var(--overlay-dark-20);border:1px solid var(--overlay-light-05);border-radius:6px}.category-badge{display:inline-block;padding:6px 12px;background:var(--color-accent);border:1px solid var(--color-accent);border-radius:6px;color:var(--color-text-inverse);font-size:14px;font-weight:600}.help-text{color:var(--overlay-light-15);font-size:14px;margin:0;line-height:1.5}.files-summary{margin-top:12px;display:flex;flex-direction:column;gap:8px}.file-summary-item{display:flex;align-items:center;gap:10px;padding:8px;background:var(--overlay-dark-20);border-radius:6px}.file-icon{font-size:18px}.file-name{color:var(--color-text-primary);font-size:14px;font-weight:500;flex:1}.file-meta{color:var(--overlay-light-15);font-size:13px}.form-actions{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid var(--overlay-light-05)}.delete-section{margin-top:40px;padding:24px;background:var(--color-error-bg);border:1px solid rgba(239,68,68,.3);border-radius:12px}.delete-section h3{color:var(--color-error);font-size:18px;margin:0 0 12px}.delete-section .help-text{color:var(--color-text-secondary);margin-bottom:16px}.delete-confirm{margin-top:16px;padding:16px;background:var(--overlay-dark-30);border-radius:8px}.confirm-text{color:var(--color-error);font-weight:600;margin:0 0 12px}.confirm-actions{display:flex;gap:12px}.edit-screenshots-column{display:flex;flex-direction:column;gap:24px;background:var(--color-bg-primary);padding:40px 30px}.edit-screenshots-column h3{font-size:18px;color:var(--color-text-primary);margin:0 0 12px;font-weight:600}.screenshots-compact{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:12px 0}.screenshot-compact-item{aspect-ratio:16 / 9;overflow:hidden;border-radius:8px;border:1px solid var(--overlay-light-10);background:var(--overlay-dark-30)}.screenshot-compact-item img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.screenshot-compact-item:hover img{transform:scale(1.05)}.no-screenshots{padding:40px;text-align:center;background:var(--overlay-dark-20);border:1px solid var(--overlay-light-05);border-radius:8px;color:var(--color-text-tertiary)}.post-meta-info{padding:20px;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px}.post-meta-info h3{font-size:18px;color:var(--color-text-primary);margin:0 0 16px}.meta-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--overlay-light-05)}.meta-item:last-child{border-bottom:none}.meta-label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.meta-value{color:var(--color-text-primary);font-size:14px;font-weight:600}.badge-approved{padding:4px 12px;background:var(--color-success-bg);border:1px solid rgba(34,197,94,.4);border-radius:12px;color:var(--color-success);font-size:12px;font-weight:600}.badge-pending{padding:4px 12px;background:var(--color-warning-bg);border:1px solid rgba(251,191,36,.4);border-radius:12px;color:var(--color-warning);font-size:12px;font-weight:600}.btn{padding:12px 24px;font-size:15px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-gold)}.btn-primary:disabled{background:var(--color-bg-elevated);opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:var(--overlay-light-05);color:var(--color-text-primary);border:1px solid var(--overlay-light-10)}.btn-secondary:hover{background:var(--overlay-light-15);border-color:var(--overlay-light-20);transform:translateY(-1px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-danger{background:var(--color-error);color:var(--color-text-primary)}.btn-danger:hover{background:var(--color-error-hover);transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.btn-danger:disabled{background:var(--color-error-hover);opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-small{padding:8px 16px;font-size:13px}@media (max-width: 1024px){.edit-main-content{grid-template-columns:1fr}.edit-screenshots-column{order:2}.screenshots-compact{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.edit-header{padding:16px 20px}.edit-fields-column{padding:24px 20px;border-right:none;border-bottom:1px solid var(--color-border-primary)}.edit-screenshots-column{padding:24px 20px}.screenshots-compact{grid-template-columns:repeat(2,1fr)}.form-actions,.confirm-actions{flex-direction:column}.form-actions .btn,.confirm-actions .btn{width:100%}}.character-assets-section{margin-top:24px;padding:20px;background:var(--overlay-gold-10);border:1px solid var(--overlay-gold-20);border-radius:8px}.character-assets-list{display:flex;flex-direction:column;gap:16px;margin-top:12px}.character-asset-item{padding:16px;background:var(--overlay-dark-30);border:1px solid var(--overlay-light-05);border-radius:8px}.character-asset-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--overlay-light-05)}.character-asset-header strong{color:var(--color-text-primary);font-size:16px}.badge-unsafe{padding:4px 12px;background:var(--color-error-bg);border:1px solid rgba(239,68,68,.4);border-radius:12px;color:var(--color-error-text);font-size:12px;font-weight:600}.badge-color{padding:4px 12px;border-radius:12px;color:var(--color-text-inverse);font-size:12px;font-weight:600}.current-asset{display:flex;align-items:center;justify-content:center;min-height:120px;padding:12px;background:var(--overlay-dark-30);border:2px dashed var(--overlay-light-10);border-radius:8px}.current-asset-preview{border-radius:6px;border:1px solid var(--overlay-light-15);background:var(--overlay-dark-30);object-fit:contain}.asset-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;max-height:300px;overflow-y:auto;padding:8px;background:var(--overlay-dark-20);border:1px solid var(--overlay-light-05);border-radius:6px}.asset-option{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;background:var(--overlay-dark-30);border:2px solid var(--overlay-light-10);border-radius:6px;cursor:pointer;transition:all .2s ease;min-height:90px}.asset-option.selected{background:var(--overlay-gold-20);border-color:var(--color-accent);box-shadow:0 0 8px var(--overlay-gold-40)}.asset-option.none-option{background:var(--color-error-bg);border-color:#ef44444d;color:var(--color-text-secondary);font-size:13px;font-weight:600}.asset-option.none-option:hover{background:#ef444433;border-color:#ef444480}@media (max-width: 768px){.character-asset-controls{grid-template-columns:1fr}.asset-selector{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}}.cards-management-section{margin-top:30px;padding-top:30px;border-top:1px solid var(--color-border-primary)}.section-header-flex label{margin:0 0 5px}.btn-delete-card{background:#ef444426;color:var(--color-error-text);border-color:#ef44444d}.no-cards-message{text-align:center;padding:60px 20px;color:var(--color-text-tertiary);background:var(--color-bg-primary);border:2px dashed var(--color-border-primary);border-radius:8px}.modal-box{background:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border-secondary);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .2s ease}.files-container{background:var(--color-bg-primary);border-radius:4px;border:1px solid var(--color-border-secondary);padding:12px;font-family:Courier New,Courier,monospace;font-size:13px;line-height:1.6}.file-row{position:relative;padding:2px 0;transition:background .1s ease}.file-row:hover{background:var(--overlay-gold-10)}.file-name{color:var(--color-text-secondary);font-family:Courier New,Courier,monospace;font-size:13px;cursor:default;white-space:pre}.folder-name{color:var(--color-accent);font-weight:600}.file-hover-preview{position:fixed;background:var(--color-bg-secondary);border:2px solid var(--color-accent);border-radius:6px;padding:8px;z-index:10000;pointer-events:none;opacity:0;transition:opacity .15s ease;box-shadow:var(--shadow-lg);white-space:nowrap}.file-row:hover .file-hover-preview{opacity:1}.file-hover-preview img{display:block}.file-csp{width:68px;height:94px;object-fit:contain;image-rendering:pixelated}.file-stock{width:40px;height:40px;object-fit:contain;image-rendering:pixelated}.file-image{max-width:300px;max-height:300px;object-fit:contain}.upload-page{min-height:100vh;background:var(--color-bg-primary);padding:40px 20px}.upload-container{max-width:900px;margin:0 auto;background:var(--color-bg-secondary);border-radius:12px;padding:40px;box-shadow:var(--shadow-md)}.upload-container h1{font-size:32px;font-weight:700;margin:0 0 24px;color:var(--color-text-primary)}.progress-steps{display:flex;justify-content:space-between;margin-bottom:40px;position:relative}.progress-steps:before{content:"";position:absolute;top:16px;left:0;right:0;height:2px;background:var(--color-border-primary);z-index:0}.progress-step{flex:1;text-align:center;font-size:14px;font-weight:600;color:var(--color-text-tertiary);position:relative;z-index:1}.progress-step:before{content:"";display:block;width:32px;height:32px;background:var(--color-bg-secondary);border:2px solid var(--color-border-primary);border-radius:50%;margin:0 auto 8px}.progress-step.active{color:var(--color-accent)}.progress-step.active:before{border-color:var(--color-accent);background:var(--color-accent)}.progress-step.completed:before{border-color:var(--color-success);background:var(--color-success)}.error-message{padding:16px;background:var(--color-error-bg);color:var(--color-error);border-radius:8px;margin-bottom:24px;font-weight:500}.upload-step{display:flex;flex-direction:column;gap:24px}.file-drop-zone{border:2px dashed var(--color-border-primary);border-radius:12px;padding:60px 20px;text-align:center;background:var(--color-bg-primary);transition:all .2s ease;cursor:pointer}.file-drop-zone:hover{border-color:var(--color-accent);background:var(--overlay-gold-10)}.file-drop-zone.drag-active{border-color:var(--color-accent);background:var(--overlay-gold-20)}.file-input-hidden{display:none}.file-input-label{cursor:pointer;display:block}.files-empty p:first-child{font-size:48px;margin:0 0 16px}.files-empty p:nth-child(2){font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.files-selected{text-align:left}.files-selected ul{list-style:none;padding:0;margin:12px 0}.files-selected li{padding:8px 12px;background:var(--color-bg-elevated);border-radius:6px;margin:4px 0;font-family:monospace}.hint{font-size:14px;color:var(--color-text-tertiary);margin:8px 0 0}.upload-options{padding:20px;background:var(--color-bg-tertiary);border-radius:8px}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:500}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.option-hint{margin:8px 0 0 32px;font-size:14px;color:var(--color-text-tertiary)}.review-step h2{font-size:24px;font-weight:600;margin:0 0 8px}.step-description{color:var(--color-text-tertiary);margin:0 0 24px}.processed-files-list{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.processed-file-card{border:1px solid var(--color-border-primary);border-radius:8px;padding:20px;background:var(--color-bg-elevated)}.file-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.file-header h3{font-size:18px;font-weight:600;margin:0;font-family:monospace}.badge{padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.badge-character{background:var(--overlay-gold-10);color:var(--color-accent)}.badge-safe{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-danger{background:var(--color-error-bg);color:var(--color-error)}.badge-color{color:var(--color-text-inverse);font-weight:600}.file-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.info-item{font-size:14px}.info-item strong{color:var(--color-text-primary)}.file-type-hint{color:var(--color-text-tertiary);font-style:italic}.generated-assets{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-primary)}.generated-assets h4{font-size:16px;font-weight:600;margin:0 0 12px}.assets-preview{display:flex;gap:24px;flex-wrap:wrap}.asset-item{display:flex;flex-direction:column;align-items:center;gap:8px}.csp-preview{width:120px;height:auto;border-radius:8px;box-shadow:var(--shadow-sm)}.stock-preview{width:60px;height:auto;border-radius:4px;box-shadow:var(--shadow-sm)}.review-actions{display:flex;justify-content:space-between;gap:16px}.details-step h2{font-size:24px;font-weight:600;margin:0 0 8px}.form-group{margin-bottom:24px}.form-group label{display:block;font-weight:600;margin-bottom:8px;color:var(--color-text-primary)}.form-input,.form-textarea,.form-select{width:100%;padding:12px;border:1px solid var(--color-border-primary);border-radius:6px;font-size:16px;font-family:inherit;background:var(--color-bg-secondary);color:var(--color-text-primary)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--overlay-gold-10)}.form-textarea{resize:vertical}.details-actions{display:flex;justify-content:space-between;gap:16px;margin-top:32px}.processing-step{text-align:center;padding:60px 20px}.spinner{width:64px;height:64px;border:6px solid var(--color-border-primary);border-top:6px solid var(--color-accent);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 24px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-step h2{font-size:24px;font-weight:600;margin:0 0 8px}.processing-step p{color:var(--color-text-secondary)}.success-step{text-align:center;padding:60px 20px}.success-icon{width:80px;height:80px;border-radius:50%;background:var(--color-success);color:var(--color-text-primary);font-size:48px;line-height:80px;margin:0 auto 24px}.success-step h2{font-size:28px;font-weight:700;margin:0 0 16px;color:var(--color-text-primary)}.success-step p{font-size:16px;color:var(--color-text-secondary);margin:8px 0}.success-actions{display:flex;justify-content:center;gap:16px;margin-top:32px}.btn-secondary:hover:not(:disabled){background:var(--color-bg-elevated)}.btn-large{padding:16px 48px;font-size:18px;width:100%}.btn-fix{background:var(--color-warning);color:var(--color-text-inverse);margin-top:12px}.btn-fix:hover:not(:disabled){background:var(--color-warning-hover)}.fix-action{margin-top:16px;padding:12px;background:var(--color-warning-bg);border-radius:8px;border:1px solid var(--color-warning)}.fix-action .hint{margin:8px 0 0;font-size:13px;color:var(--color-warning-text)}.fixed-info{margin-top:16px;padding:12px;background:var(--color-success-bg);border-radius:8px;border:1px solid var(--color-success)}.success-message{margin:0 0 8px;color:var(--color-success);font-weight:600}.hash-info{font-size:13px;color:var(--color-text-primary)}.hash-info div{margin:4px 0}.hash-info code{font-family:Courier New,monospace;background:var(--color-bg-elevated);padding:2px 6px;border-radius:4px;font-size:12px;color:var(--color-text-tertiary)}.tags-display{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:12px;background:var(--color-bg-tertiary);border-radius:8px;min-height:48px}.tag-bubble{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-accent);color:var(--color-text-inverse);border-radius:16px;font-size:14px;font-weight:500}.tag-remove{background:none;border:none;color:var(--color-text-inverse);font-size:20px;font-weight:700;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.tag-input-row{display:flex;gap:12px;align-items:center}.tag-input-row .form-input{flex:1;margin-bottom:0}.screenshots-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px;padding:12px;background:var(--color-bg-tertiary);border-radius:8px}.screenshot-item{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:var(--color-bg-elevated)}.screenshot-item img{width:100%;height:100%;object-fit:cover}.screenshot-remove{position:absolute;top:4px;right:4px;width:28px;height:28px;border-radius:50%;background:var(--color-error);color:#fff;border:none;font-size:20px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.screenshot-remove:hover{background:var(--color-error-hover)}.screenshot-upload{margin-top:8px}.screenshot-upload label{display:inline-block;margin-bottom:8px;cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay-dark-50);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:var(--color-bg-secondary);border-radius:12px;padding:0;max-width:600px;width:90%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--color-border-primary)}.modal-header h3{margin:0;font-size:20px;font-weight:600;color:var(--color-text-primary)}.modal-close{background:none;border:none;font-size:32px;color:var(--color-text-tertiary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.modal-body{padding:24px;overflow-y:auto}.asset-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;margin-top:16px}.asset-picker-option{display:flex;flex-direction:column;align-items:center;padding:12px;border:2px solid var(--color-border-primary);border-radius:8px;cursor:pointer;transition:all .2s ease;background:var(--color-bg-tertiary)}.asset-picker-option:hover{border-color:var(--color-accent);background:var(--overlay-gold-10);transform:translateY(-2px);box-shadow:var(--shadow-md)}.asset-picker-option img{margin-bottom:8px}.asset-picker-filename{font-size:12px;color:var(--color-text-tertiary);text-align:center;margin:0;word-break:break-word;max-width:100%}.asset-provided{text-align:center}.asset-provided .hint{margin:4px 0 0}@media (max-width: 768px){.upload-container{padding:24px}.progress-steps{font-size:12px}.progress-step:before{width:24px;height:24px}.file-info-grid{grid-template-columns:1fr}.review-actions,.details-actions,.success-actions{flex-direction:column}.btn{width:100%}.modal-content{width:95%;max-height:90vh}.asset-picker-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.character-asset-controls{grid-template-columns:1fr}.asset-selector{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}}.character-assets-section{margin-top:20px;padding:20px;background:var(--overlay-gold-10);border:1px solid var(--overlay-gold-20);border-radius:8px}.character-assets-section h4{margin:0 0 16px;color:var(--color-text-primary);font-size:16px;font-weight:600}.asset-control label{font-size:13px;color:var(--color-text-tertiary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.current-asset{display:flex;align-items:center;justify-content:center;min-height:120px;padding:12px;background:var(--overlay-dark-10);border:2px dashed var(--color-border-primary);border-radius:8px}.current-asset-preview{border-radius:6px;border:1px solid var(--color-border-primary);background:var(--color-bg-tertiary);object-fit:contain}.no-asset-preview{color:var(--color-text-disabled);font-size:14px;font-style:italic}.asset-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;max-height:300px;overflow-y:auto;padding:8px;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:6px}.asset-option{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;background:var(--color-bg-secondary);border:2px solid var(--color-border-primary);border-radius:6px;cursor:pointer;transition:all .2s ease;min-height:90px}.asset-option:hover{background:var(--overlay-gold-10);border-color:var(--overlay-gold-40);transform:translateY(-2px)}.asset-option.selected{background:var(--overlay-gold-20);border-color:var(--color-accent);box-shadow:0 0 8px var(--overlay-gold-30)}.asset-option:disabled{opacity:.5;cursor:not-allowed}.asset-option.none-option{background:var(--color-error-bg);border-color:#ef444433;color:var(--color-text-secondary);font-size:13px;font-weight:600}.asset-option.none-option:hover{background:#ef444433;border-color:#ef444466}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px}.card-box{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:8px;overflow:hidden;transition:border-color .2s ease}.badge-safe{padding:4px 12px;background:var(--color-success-bg);border:1px solid rgba(34,197,94,.4);border-radius:12px;color:var(--color-success);font-size:12px;font-weight:600}.badge-warning{padding:4px 12px;background:var(--color-warning-bg);border:1px solid rgba(234,179,8,.4);border-radius:12px;color:var(--color-warning);font-size:12px;font-weight:600}.card-box-actions{padding:0 15px 15px;display:flex;gap:8px;flex-wrap:wrap}.btn-edit-assets,.btn-fix{flex:1;padding:8px 12px;font-size:13px;border-radius:4px;cursor:pointer;transition:all .2s ease;border:1px solid;min-width:100px}.btn-edit-assets{background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:var(--color-border-secondary)}.btn-edit-assets:hover:not(:disabled){background:var(--color-bg-elevated)}.btn-fix{background:var(--overlay-gold-20);color:var(--color-accent);border-color:var(--overlay-gold-40)}.btn-fix:hover:not(:disabled){background:var(--overlay-gold-30)}.btn-edit-assets:disabled,.btn-fix:disabled{opacity:.5;cursor:not-allowed}.fixed-info{padding:0 15px 15px}.success-message{color:var(--color-success);font-size:13px;margin:0 0 8px}.hash-info{font-size:11px;color:var(--color-text-tertiary)}.hash-info code{background:var(--color-bg-primary);padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;color:var(--color-text-secondary)}.close-editor{background:var(--color-accent);border:none;color:var(--color-text-inverse);font-size:14px;font-weight:600;cursor:pointer;padding:8px 20px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-editor:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.asset-thumb{aspect-ratio:1;border:2px solid var(--color-border-primary);border-radius:4px;background:var(--color-bg-primary);cursor:pointer;transition:all .2s ease;padding:0;overflow:hidden}.asset-thumb:hover:not(:disabled){border-color:var(--color-border-secondary)}.asset-thumb:disabled{opacity:.5;cursor:not-allowed}.character-files-section{margin-bottom:30px}.character-files-section h3{font-size:20px;margin-bottom:15px;color:var(--color-text-primary)}.files-section{margin-bottom:30px}.files-section h3{font-size:20px;margin-bottom:15px;color:var(--color-text-primary)}.post-details-section{margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid var(--color-border-primary)}.post-details-section h3{font-size:20px;margin-bottom:20px;color:var(--color-text-primary)}.review-details-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px}.section-header-flex{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-header-flex h3{margin:0}.btn-delete-card{background:var(--color-error-bg);color:var(--color-error-text);border-color:#ef44444d}.btn-delete-card:hover:not(:disabled){background:#ef444440}.modal-box{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .2s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border-primary)}.modal-form .form-group{margin-bottom:20px}.modal-form .form-group:last-of-type{margin-bottom:20px}.modal-form label{display:block;font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.modal-form input[type=text],.modal-form select{width:100%;padding:12px;background:var(--overlay-dark-30);border:1px solid var(--overlay-light-10);border-radius:6px;color:var(--color-text-primary);font-size:16px;font-family:inherit;transition:border-color .2s}.modal-form select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.modal-form select option{background:var(--color-bg-secondary);color:var(--color-text-primary)}.modal-form input[type=text]:focus,.modal-form select:focus{outline:none;border-color:var(--color-accent)}.modal-actions{display:flex;gap:12px;margin-top:24px;border-top:1px solid var(--color-border-primary);padding-top:20px}.modal-form .help-text{color:var(--overlay-light-15);font-size:14px;margin:16px 0 0;line-height:1.5;text-align:center}.card-preview-stock{flex:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-elevated);border-left:1px solid var(--color-border-primary)}.admin-page{min-height:100vh;background:var(--color-bg-primary);padding:40px 20px}.admin-container{max-width:1400px;margin:0 auto}.admin-header{margin-bottom:32px}.admin-header h1{font-size:36px;font-weight:700;margin:0 0 8px;color:var(--color-text-primary)}.subtitle{font-size:18px;color:var(--color-text-secondary);margin:0}.error-message{padding:16px;background:var(--color-error-bg);color:var(--color-error-text);border-radius:8px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;font-weight:500}.loading{text-align:center;padding:60px 20px;font-size:18px;color:var(--color-text-secondary)}.empty-state{text-align:center;padding:80px 20px;background:var(--color-bg-secondary);border-radius:12px;box-shadow:var(--shadow-md)}.empty-icon{width:80px;height:80px;border-radius:50%;background:var(--color-success);color:#fff;font-size:48px;line-height:80px;margin:0 auto 24px}.empty-state h2{font-size:24px;font-weight:600;margin:0 0 8px;color:var(--color-text-primary)}.empty-state p{font-size:16px;color:var(--color-text-secondary);margin:0}.pending-posts-list{display:flex;flex-direction:column;gap:24px}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.list-header h2{font-size:24px;font-weight:600;margin:0;color:var(--color-text-primary)}.pending-post-card{background:var(--color-bg-secondary);border-radius:12px;box-shadow:var(--shadow-md);border:2px solid var(--color-border-primary);transition:all .2s ease;overflow:hidden}.pending-post-card:hover,.pending-post-card.expanded{border-color:var(--color-accent)}.post-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--color-bg-secondary);color:var(--color-text-primary)}.post-header-clickable{display:flex;gap:20px;flex:1;cursor:pointer;align-items:center;transition:background .2s ease;min-width:0}.post-header-clickable:hover{opacity:.9}.post-header-actions{display:flex;gap:12px;flex-shrink:0;margin-left:20px}.post-thumbnail{flex-shrink:0;width:120px;height:90px;border-radius:8px;overflow:hidden;background:var(--color-bg-tertiary)}.post-thumbnail img{width:100%;height:100%;object-fit:cover}.post-header-info{flex:1;min-width:0}.post-title{font-size:20px;font-weight:600;margin:0 0 8px;color:var(--color-text-primary)}.post-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--color-text-secondary)}.meta-item strong{color:var(--color-text-primary);margin-right:4px}.expand-icon{font-size:20px;color:var(--color-accent);margin-left:auto;flex-shrink:0}.post-expanded-content{padding:24px;border-top:1px solid var(--color-border-primary);background:var(--color-bg-tertiary);color:var(--color-text-primary)}.post-edit-form{padding:24px 0;color:var(--color-text-primary)}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.form-input,.form-textarea,.form-select{width:100%;padding:12px;border:1px solid var(--color-border-primary);border-radius:6px;font-size:16px;font-family:inherit;transition:border-color .2s;color:var(--color-text-primary);background:var(--color-bg-secondary)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-accent)}.form-textarea{resize:vertical;font-family:inherit}.tags-display{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.tag{padding:6px 12px;background:var(--color-bg-elevated);border-radius:12px;font-size:13px;color:var(--color-text-primary)}.tag.editable{padding-right:6px;display:inline-flex;align-items:center;gap:6px}.tag-remove{background:none;border:none;color:var(--color-text-primary);font-size:18px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.tag-remove:hover{background:var(--overlay-light-10)}.tag-input-row{display:flex;gap:10px;align-items:center}.tag-input-row input{flex:1}.edit-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border-primary)}.post-view-content{padding:24px 0;background:var(--color-bg-tertiary);color:var(--color-text-primary)}.content-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--color-border-primary)}.content-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.content-section h4{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 12px}.content-section p{margin:0;color:var(--color-text-secondary);line-height:1.6;white-space:pre-wrap}.post-tags{display:flex;flex-wrap:wrap;gap:8px}.post-view-content .tag{background:var(--color-bg-elevated);color:var(--color-text-primary)}.screenshots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.screenshot-preview{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;border-radius:8px;border:1px solid var(--color-border-primary)}.files-list{display:flex;flex-direction:column;gap:12px}.file-item{padding:12px;background:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border-primary)}.file-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.file-name{font-family:monospace;font-weight:600;font-size:14px;color:var(--color-text-primary)}.file-char{color:var(--color-text-secondary);font-size:14px}.file-assets-preview{display:flex;gap:12px;margin-top:8px}.badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.badge-safe{background:var(--color-success-bg);color:var(--color-success-text)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge-unsafe{background:var(--color-error-bg);color:var(--color-error-text)}.badge-color{background-color:var(--color);color:var(--color-text-inverse)}.asset-csp{width:68px;height:auto;border-radius:6px;border:1px solid var(--color-border-primary)}.asset-stock{width:48px;height:auto;border-radius:4px;border:1px solid var(--color-border-primary)}.character-assets-section{background:var(--color-bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--color-accent);color:var(--color-text-primary)}.character-assets-section h4{margin-top:0;color:var(--color-text-primary)}.character-asset-item{padding:20px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:8px;margin-bottom:16px}.character-asset-item:last-child{margin-bottom:0}.character-asset-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--color-border-primary)}.character-name-color{display:flex;align-items:center;gap:10px}.character-name-color strong{color:var(--color-text-primary);font-size:16px}.character-asset-controls{display:grid;grid-template-columns:1fr 1fr;gap:24px}.asset-control{display:flex;flex-direction:column;gap:12px}.asset-control label{font-size:13px;color:var(--color-text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.current-asset{display:flex;align-items:center;justify-content:center;min-height:120px;padding:12px;background:var(--color-bg-secondary);border:2px dashed var(--color-border-primary);border-radius:8px}.current-asset-preview{border-radius:6px;border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);object-fit:contain}.current-asset-preview.csp-preview{width:102px;height:141px}.current-asset-preview.stock-preview{width:72px;height:72px}.no-asset-preview{color:var(--color-text-tertiary);font-size:14px;font-style:italic}.asset-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;max-height:300px;overflow-y:auto;padding:8px;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:6px}.asset-option{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;background:var(--color-bg-elevated);border:2px solid var(--color-border-primary);border-radius:6px;cursor:pointer;transition:all .2s ease;min-height:90px}.asset-option:hover{background:var(--overlay-gold-20);border-color:var(--color-accent);transform:translateY(-2px)}.asset-option.selected{background:var(--overlay-gold-30);border-color:var(--color-accent);box-shadow:0 0 8px var(--overlay-gold-20)}.asset-option.none-option{background:var(--color-error-bg);border-color:var(--color-error);color:var(--color-text-primary);font-size:13px;font-weight:600}.asset-option.none-option:hover{background:#ef444440;border-color:var(--color-error-hover)}.asset-option-preview{max-width:60px;max-height:60px;object-fit:contain;border-radius:4px}.asset-option-label{font-size:10px;color:var(--color-text-secondary);text-align:center;word-break:break-word;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.edit-actions{display:flex;gap:12px;padding-top:20px;padding-bottom:20px;border-top:1px solid var(--color-border-primary);border-bottom:1px solid var(--color-border-primary);margin-top:20px;margin-bottom:20px}.btn{padding:12px 24px;font-size:15px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:8px 16px;font-size:14px}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-gold)}.btn-approve{background:var(--color-success);color:#fff}.btn-approve:hover:not(:disabled){background:var(--color-success-hover);transform:translateY(-1px);box-shadow:0 4px 8px #4ade804d}.btn-reject{background:var(--color-error);color:#fff}.btn-reject:hover:not(:disabled){background:var(--color-error-hover);transform:translateY(-1px);box-shadow:0 4px 8px #ef44444d}@media (max-width: 1024px){.character-asset-controls{grid-template-columns:1fr}}@media (max-width: 768px){.admin-container{padding:0}.admin-header h1{font-size:28px}.list-header{flex-direction:column;align-items:flex-start;gap:12px}.list-header h2{font-size:20px}.pending-post-card{margin:0 -20px;border-radius:0;border-left:none;border-right:none}.post-header{flex-direction:column;align-items:stretch;gap:12px}.post-header-clickable{flex-direction:column;align-items:flex-start}.post-header-actions{margin-left:0;justify-content:stretch}.post-header-actions .btn{flex:1}.post-thumbnail{width:100%;height:180px}.expand-icon{margin-left:auto}.post-title{font-size:18px}.post-meta{flex-direction:column;gap:6px}.screenshots-grid{grid-template-columns:1fr}.edit-actions{flex-direction:column}.edit-actions .btn{width:100%}.asset-selector{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}}.cards-management-section{margin-top:20px;padding:20px;background:var(--color-bg-secondary);border:1px solid var(--color-accent);border-radius:8px}.section-header-flex{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:20px}.section-header-flex h4{margin:0 0 5px;color:var(--color-text-primary)}.help-text{color:var(--color-text-secondary);font-size:13px;margin:0;line-height:1.5}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.card-box{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:8px;overflow:hidden;transition:border-color .2s ease}.card-box:hover{border-color:var(--color-border-secondary)}.card-box-preview{width:100%;height:200px;background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;overflow:hidden}.card-box-preview img{width:100%;height:100%;object-fit:contain}.no-preview-placeholder{color:var(--color-text-tertiary);font-size:14px}.card-box-info{padding:15px}.card-box-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.card-box-meta{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.card-box-file{font-size:12px;color:var(--color-text-tertiary);word-break:break-all}.badge-type{background:var(--color-accent);color:var(--color-text-inverse);padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.card-box-actions{padding:0 15px 15px;display:flex;gap:8px}.btn-edit-assets,.btn-delete-card{flex:1;padding:8px 12px;font-size:13px;border-radius:4px;cursor:pointer;transition:all .2s ease;border:1px solid}.btn-edit-assets{background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:var(--color-border-primary)}.btn-edit-assets:hover{background:var(--color-bg-elevated)}.btn-delete-card{background:var(--color-error-bg);color:var(--color-error-text);border-color:var(--color-error)}.btn-delete-card:hover{background:#ef444440}.no-cards-message{text-align:center;padding:60px 20px;color:var(--color-text-tertiary);background:var(--color-bg-tertiary);border:2px dashed var(--color-border-primary);border-radius:8px}.inline-asset-editor{border-top:1px solid var(--color-border-primary);background:var(--color-bg-secondary);padding:15px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}.asset-editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.asset-editor-header h4{margin:0;font-size:14px;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.5px}.close-editor{background:none;border:none;color:var(--color-text-tertiary);font-size:24px;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.close-editor:hover{color:var(--color-text-primary)}.asset-select-group{margin-bottom:20px}.asset-select-group:last-child{margin-bottom:0}.asset-select-group label{display:block;font-size:13px;color:var(--color-text-secondary);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.asset-options-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.asset-thumb{aspect-ratio:1;border:2px solid var(--color-border-primary);border-radius:4px;background:var(--color-bg-tertiary);cursor:pointer;transition:all .2s ease;padding:0;overflow:hidden}.asset-thumb:hover{border-color:var(--color-border-secondary)}.asset-thumb.selected{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--overlay-gold-30)}.asset-thumb img{width:100%;height:100%;object-fit:contain;display:block}.asset-thumb-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);font-size:11px}.asset-thumb-error{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:24px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay-dark-80);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-box{background:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border-primary);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:20px;border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:20px;color:var(--color-text-primary)}.modal-close-btn{background:none;border:none;color:var(--color-text-tertiary);font-size:28px;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s ease;line-height:1}.modal-close-btn:hover{color:var(--color-text-primary)}.modal-form{padding:20px}.modal-actions{display:flex;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid var(--color-border-primary)}.modal-actions .btn{flex:1}.card-preview-dual{display:flex;width:100%;height:100%;gap:4px}.card-preview-csp{flex:3;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary)}.card-preview-csp img{max-width:100%;max-height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.card-preview-stock{flex:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border-left:1px solid var(--color-border-primary)}.card-preview-stock img{width:60px;height:60px;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.card-preview-stock .no-preview-placeholder{font-size:11px}@media (max-width: 768px){.cards-grid{grid-template-columns:1fr}.section-header-flex{flex-direction:column}.asset-options-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}}.user-management-page{max-width:1400px;margin:0 auto;padding:2rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{margin:0;color:var(--color-text-primary)}.total-count{color:var(--color-text-secondary);font-size:.9rem;margin:0}.filters-bar{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.search-box{flex:1;min-width:300px}.search-box input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border-primary);border-radius:8px;font-size:1rem;background:var(--color-bg-secondary);color:var(--color-text-primary)}.search-box input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--overlay-gold-20)}.filter-buttons{display:flex;gap:.5rem}.filter-buttons button{padding:.75rem 1.5rem;border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s;color:var(--color-text-primary)}.filter-buttons button:hover{background:var(--color-bg-elevated)}.filter-buttons button.active{background:var(--color-accent);color:var(--color-text-inverse);border-color:var(--color-accent)}.users-table-container{background:var(--color-bg-secondary);border-radius:12px;box-shadow:var(--shadow-md);overflow:hidden;margin-bottom:2rem}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:var(--color-bg-tertiary);border-bottom:2px solid var(--color-border-primary)}.users-table th{padding:1rem;text-align:left;font-weight:600;color:var(--color-text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.users-table td{padding:1rem;border-bottom:1px solid var(--color-border-primary)}.users-table tbody tr:hover{background:var(--color-bg-elevated)}.users-table tbody tr.banned-row{background:var(--color-error-bg)}.users-table tbody tr.banned-row:hover{background:#ef444440}.username-cell{font-weight:500;color:var(--color-text-primary)}.ban-reason{margin-left:.5rem;color:var(--color-error);cursor:help;font-size:1.1rem}.role-badge,.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.role-badge.admin{background:var(--overlay-gold-30);color:var(--color-accent)}.role-badge.user{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.status-badge.active{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge.banned{background:var(--color-error-bg);color:var(--color-error-text)}.actions-cell{white-space:nowrap}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.btn-small{padding:.4rem .8rem;border:none;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-small:disabled{opacity:.5;cursor:not-allowed}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-warning{background:var(--color-warning);color:#fff}.btn-warning:hover:not(:disabled){background:var(--color-warning-hover)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:var(--color-success-hover)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-error-hover)}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-tertiary)}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.pagination button{padding:.75rem 1.5rem;border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);border-radius:8px;cursor:pointer;transition:all .2s;color:var(--color-text-primary)}.pagination button:hover:not(:disabled){background:var(--color-bg-elevated)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.page-info{color:var(--color-text-secondary);font-size:.9rem}.loading,.error,.no-users{text-align:center;padding:3rem;color:var(--color-text-secondary);font-size:1.1rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay-dark-50);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--color-bg-secondary);border-radius:12px;padding:2rem;max-width:500px;width:90%;box-shadow:var(--shadow-lg)}.modal-content h2{margin:0 0 1rem;color:var(--color-text-primary)}.modal-content p{margin:0 0 1rem;color:var(--color-text-secondary)}.modal-content textarea{width:100%;padding:.75rem;border:1px solid var(--color-border-primary);border-radius:8px;font-family:inherit;font-size:1rem;resize:vertical;margin-bottom:1rem;background:var(--color-bg-primary);color:var(--color-text-primary)}.modal-content textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--overlay-gold-20)}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.modal-actions button{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s;background:var(--color-accent);color:var(--color-text-inverse)}.modal-actions button:hover{background:var(--color-accent-hover)}.admin-layout{min-height:calc(100vh - 80px);background:var(--color-bg-primary)}.admin-header{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary);padding:1.5rem 2rem 0}.admin-header h1{margin:0 0 1rem;color:var(--color-text-primary);font-size:1.75rem}.admin-tabs{display:flex;gap:.5rem}.admin-tabs .tab{padding:.75rem 1.5rem;text-decoration:none;color:var(--color-text-secondary);border-bottom:2px solid transparent;transition:all .2s;font-weight:500}.admin-tabs .tab:hover{color:var(--color-accent);background:var(--color-bg-secondary)}.admin-tabs .tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.admin-content{padding:0}.search-page{min-height:100vh;background:var(--color-bg-primary);color:var(--color-text-primary)}.search-page *{color:inherit}.search-header{padding:24px 32px 16px;border-bottom:1px solid var(--color-border-secondary)}.back-link{display:inline-block;margin-bottom:12px;color:var(--color-text-tertiary)!important;text-decoration:none;font-size:14px;transition:color .2s ease}.back-link:hover{color:var(--color-text-primary)!important}.search-header h1{font-size:32px;font-weight:700;margin:0;color:var(--color-text-primary)!important}.search-controls{max-width:1400px;margin:24px auto 0;padding:24px;background:var(--color-bg-secondary);border-radius:8px}.search-form{display:flex;gap:12px;margin-bottom:20px}.search-input{flex:1;padding:12px 16px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:6px;color:var(--color-text-primary)!important;font-size:15px;transition:border-color .2s ease}.search-input:focus{outline:none;border-color:var(--color-accent)}.search-input::placeholder{color:var(--color-text-disabled)}.search-button{padding:12px 32px;background:var(--color-accent);color:var(--color-text-inverse)!important;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.search-button:hover{background:var(--color-accent-hover)}.filters{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:200px}.filter-group label{font-size:13px;font-weight:600;color:var(--color-text-secondary)!important;text-transform:uppercase;letter-spacing:.5px}.filter-select{padding:10px 12px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);border-radius:6px;color:var(--color-text-primary)!important;font-size:14px;cursor:pointer;transition:border-color .2s ease}.filter-select:focus{outline:none;border-color:var(--color-accent)}.clear-filters-button{padding:10px 20px;background:var(--color-border-secondary);border:1px solid var(--color-border-primary);border-radius:6px;color:var(--color-text-secondary)!important;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.clear-filters-button:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)!important}.active-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-secondary)}.active-filters-label{font-size:13px;font-weight:600;color:var(--color-text-tertiary)!important}.filter-tag{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--color-accent);color:var(--color-text-inverse)!important;border-radius:4px;font-size:13px;font-weight:500}.filter-tag button{background:none;border:none;color:var(--color-text-inverse)!important;font-size:18px;line-height:1;cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.filter-tag button:hover{opacity:.7}@media (max-width: 968px){.search-header{padding:20px 24px 12px}.search-header h1{font-size:28px}.search-controls{margin:20px auto 0;padding:20px}.filters{flex-direction:column;align-items:stretch}.filter-group{min-width:auto}}@media (max-width: 640px){.search-header{padding:16px 20px 12px}.search-header h1{font-size:24px}.search-controls{margin:16px auto 0;padding:16px}.search-form{flex-direction:column}}.categories-page{min-height:100vh;background:var(--color-bg-primary);padding:32px 24px;display:flex;align-items:center;justify-content:center}.categories-container{max-width:1200px;width:100%}.categories-header{text-align:center;margin-bottom:48px}.categories-header h1{font-size:48px;font-weight:700;margin:0 0 16px;color:var(--color-text-primary)}.categories-header p{font-size:18px;color:var(--color-text-tertiary);margin:0}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.category-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);border-radius:12px;padding:32px;text-decoration:none;transition:all .3s ease;cursor:pointer;text-align:center}.category-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent);transform:translateY(-4px);box-shadow:var(--shadow-gold)}.category-icon{width:80px;height:80px;margin:0 auto 20px;background:var(--color-bg-tertiary);border:2px solid var(--color-border-secondary);border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.category-icon img{width:100%;height:100%;object-fit:contain}.category-name{font-size:24px;font-weight:600;margin:0 0 12px;color:var(--color-text-primary)}.category-description{font-size:15px;color:var(--color-text-tertiary);margin:0;line-height:1.5}@media (max-width: 968px){.categories-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.categories-header h1{font-size:36px}}@media (max-width: 640px){.categories-page{padding:24px 16px}.categories-grid{grid-template-columns:1fr;gap:16px}.categories-header h1{font-size:28px}.category-card{padding:24px}.category-icon{width:64px;height:64px}.category-name{font-size:20px}}.characters-page{min-height:100vh;background:var(--color-bg-primary);padding:32px 24px}.characters-container{max-width:1400px;margin:0 auto}.characters-header{text-align:center;margin-bottom:48px}.characters-header h1{font-size:48px;font-weight:700;margin:0 0 16px;color:var(--color-text-primary)}.characters-header p{font-size:18px;color:var(--color-text-tertiary);margin:0}.characters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}.character-card{background:var(--color-bg-secondary);border:2px solid var(--color-border-secondary);border-radius:12px;padding:20px;text-decoration:none;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;align-items:center}.character-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent);transform:translateY(-4px);box-shadow:var(--shadow-gold)}.character-card-all{background:linear-gradient(135deg,#1a2f42,#243447);border-color:#4a9eff}.character-card-all:hover{background:linear-gradient(135deg,#1f3749,#2a3e52);border-color:#5dadff;box-shadow:0 8px 32px #4a9eff40}.character-card-all .character-placeholder{background:linear-gradient(135deg,#4a9eff26,#5dadff1a);border:2px solid rgba(74,158,255,.3)}.character-csp{width:136px;height:188px;object-fit:contain;border-radius:8px;margin-bottom:16px;background:var(--color-bg-overlay)}.character-placeholder{width:136px;height:188px;background:linear-gradient(135deg,#2a3d50,#1f2f3f);border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;border:2px solid rgba(61,79,92,.5)}.character-initial{font-size:48px;font-weight:700;color:#4a9eff}.character-name{font-size:16px;font-weight:600;margin:0;color:var(--color-text-primary);text-align:center}@media (max-width: 968px){.characters-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}.characters-header h1{font-size:36px}.character-csp,.character-placeholder{width:102px;height:141px}.character-initial{font-size:40px}}@media (max-width: 640px){.characters-page{padding:24px 16px}.characters-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.characters-header h1{font-size:28px}.character-card{padding:16px}.character-csp,.character-placeholder{width:68px;height:94px}.character-initial{font-size:32px}.character-name{font-size:14px}}.character-page{min-height:100vh;background:var(--color-bg-primary);padding:32px 24px}.character-container{max-width:1400px;margin:0 auto}.character-header{text-align:center;margin-bottom:48px}.back-link{display:inline-block;margin-bottom:16px;color:var(--color-text-tertiary);text-decoration:none;font-size:14px;transition:color .2s ease}.back-link:hover{color:var(--color-text-primary)}.character-header h1{font-size:48px;font-weight:700;margin:0 0 16px;color:var(--color-text-primary)}.character-header p{font-size:18px;color:var(--color-text-tertiary);margin:0 0 16px}.btn-toggle-hidden{padding:10px 20px;background:var(--color-accent);color:var(--color-text-inverse);border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-toggle-hidden:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.csp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px}.csp-card{background:var(--color-bg-secondary);border:2px solid var(--color-border-secondary);border-radius:12px;overflow:hidden;text-decoration:none;transition:all .3s ease;cursor:pointer;position:relative}.csp-card:hover{border-color:var(--color-accent);transform:translateY(-4px);box-shadow:var(--shadow-gold)}.btn-hide-csp{position:absolute;top:8px;right:8px;padding:6px 12px;background:var(--color-error);color:var(--color-text-primary);border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;opacity:0;transition:opacity .2s ease;z-index:10}.csp-card:hover .btn-hide-csp{opacity:1}.btn-hide-csp:hover{background:var(--color-error-hover)}.btn-unhide-csp{position:absolute;top:8px;right:8px;padding:6px 12px;background:var(--color-success);color:var(--color-text-inverse);border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;opacity:0;transition:opacity .2s ease;z-index:10}.csp-card:hover .btn-unhide-csp{opacity:1}.btn-unhide-csp:hover{background:var(--color-success-hover)}.csp-card-hidden{opacity:.5;border-color:var(--color-error);border-width:3px;background:#ef444426}.csp-card-hidden:hover{opacity:.8}.csp-card-hidden .btn-unhide-csp{opacity:1}.csp-hidden-badge{display:inline-block;padding:2px 8px;background:var(--color-error);color:var(--color-text-primary);font-size:11px;font-weight:600;border-radius:4px;margin-top:4px}.csp-image{width:100%;aspect-ratio:136 / 188;object-fit:contain;display:block;background:var(--color-bg-overlay)}.csp-placeholder{width:100%;aspect-ratio:136 / 188;background:var(--color-bg-overlay);display:flex;align-items:center;justify-content:center;color:var(--color-text-disabled);font-size:14px}.csp-info{padding:16px;display:flex;flex-direction:column;gap:6px}.csp-title{font-size:16px;font-weight:600;margin:0;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csp-color{font-size:14px;color:var(--color-accent);font-weight:500}.csp-downloads{font-size:13px;color:var(--color-text-tertiary)}.loading,.error,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--color-text-tertiary);font-size:18px;gap:16px}.error{color:var(--color-error)}.upload-link{padding:12px 24px;background:var(--color-accent);color:var(--color-text-inverse);text-decoration:none;border-radius:6px;font-weight:600;transition:all .2s ease}.upload-link:hover{background:var(--color-accent-hover);transform:translateY(-1px)}@media (max-width: 968px){.csp-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px}.character-header h1{font-size:36px}}@media (max-width: 640px){.character-page{padding:24px 16px}.csp-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}.character-header h1{font-size:28px}.csp-info{padding:12px}.csp-title{font-size:14px}}.load-more-container{display:flex;justify-content:center;padding:40px 0}.btn-load-more{padding:12px 40px;background:var(--color-accent);color:var(--color-text-inverse);border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-load-more:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:var(--shadow-gold)}.btn-load-more:disabled{background:var(--color-text-disabled);cursor:not-allowed;opacity:.6}.stages-page{min-height:100vh;background:var(--color-bg-primary);padding:2rem 0}.stages-container{max-width:1400px;margin:0 auto;padding:0 2rem}.stages-header{margin-bottom:3rem}.stages-header .back-link{display:inline-block;color:var(--color-accent);text-decoration:none;margin-bottom:1rem;font-size:1rem;transition:color .2s}.stages-header .back-link:hover{color:var(--color-accent-hover)}.stages-header h1{font-size:2.5rem;color:var(--color-text-primary);margin-bottom:.5rem;font-weight:700}.stages-header p{color:var(--color-text-secondary);font-size:1.1rem}.stages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.stage-card{background:var(--color-bg-secondary);border-radius:12px;padding:1rem;text-align:center;text-decoration:none;transition:all .3s ease;border:2px solid transparent;cursor:pointer}.stage-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent);transform:translateY(-5px);box-shadow:var(--shadow-gold)}.stage-card-all{background:linear-gradient(135deg,#1a2f42,#243447);border-color:#4a9eff}.stage-card-all .stage-placeholder{background:linear-gradient(135deg,#4a9eff26,#5dadff1a);border:2px solid rgba(74,158,255,.3)}.stage-card-all:hover{background:linear-gradient(135deg,#1f3749,#2a3e52);border-color:#5dadff;box-shadow:0 8px 32px #4a9eff40}.stage-preview{width:100%;height:150px;object-fit:cover;border-radius:8px;margin-bottom:1rem;background:var(--overlay-dark-20)}.stage-placeholder{width:100%;height:150px;background:linear-gradient(135deg,#2a3d50,#1f2f3f);border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;border:2px solid rgba(61,79,92,.5)}.stage-initial{font-size:4rem;color:#4a9eff;font-weight:700;text-transform:uppercase}.stage-name{color:var(--color-text-primary);font-size:1.1rem;font-weight:600;margin:0}@media (max-width: 768px){.stages-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.stages-header h1{font-size:2rem}.stage-preview,.stage-placeholder{height:120px}.stage-initial{font-size:3rem}}.profile-page{min-height:100vh;background:var(--color-bg-primary);padding:40px 20px}.profile-container{max-width:1200px;margin:0 auto}.profile-header{background:var(--color-bg-secondary);border-radius:12px;padding:40px;margin-bottom:40px;box-shadow:var(--shadow-md)}.back-link{display:inline-block;color:var(--color-accent);text-decoration:none;font-weight:600;margin-bottom:24px;transition:color .2s ease}.back-link:hover{color:var(--color-accent-hover)}.profile-info{display:flex;gap:32px;align-items:flex-start}.profile-avatar{width:100px;height:100px;border-radius:50%;background:var(--gradient-gold);color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;flex-shrink:0}.profile-details{flex:1}.profile-details h1{font-size:32px;font-weight:700;margin:0 0 8px;color:var(--color-text-primary)}.join-date{color:var(--color-text-secondary);margin:0 0 16px;font-size:14px}.bio{color:var(--color-text-secondary);margin:16px 0;line-height:1.6;font-size:16px}.social-links{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.social-link{text-decoration:none;transition:all .2s ease;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;height:32px;border-radius:6px;background:var(--overlay-light-10);border:1px solid var(--color-border-secondary);white-space:nowrap}.social-link img{width:18px;height:18px;object-fit:contain;flex-shrink:0}.social-text{font-size:14px;font-weight:500;color:inherit!important}.social-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.social-link.twitter{background:#1d9bf01a;border-color:#1d9bf033}.social-link.twitter:hover{background:#1d9bf033;border-color:#1d9bf066}.social-link.discord{background:#5865f21a;border-color:#5865f233}.social-link.discord:hover{background:#5865f233;border-color:#5865f266}.social-link.youtube{background:#ff00001a;border-color:#f003}.social-link.youtube:hover{background:#f003;border-color:#f006}.social-link.patreon{background:#ff424d1a;border-color:#ff424d33}.social-link.patreon:hover{background:#ff424d33;border-color:#ff424d66}.social-link.bluesky{background:#0085ff1a;border-color:#0085ff33}.social-link.bluesky:hover{background:#0085ff33;border-color:#0085ff66}.edit-profile-btn{margin-top:16px}.edit-form{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border-secondary)}.edit-form .form-group{margin-bottom:20px}.edit-form label{display:block;font-weight:600;margin-bottom:8px;color:var(--color-text-primary)}.edit-form input,.edit-form textarea{width:100%;padding:12px;border:1px solid var(--color-border-primary);border-radius:6px;font-size:16px;font-family:inherit;background:var(--color-bg-tertiary);color:var(--color-text-primary)}.edit-form input:focus,.edit-form textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--overlay-gold-10)}.edit-form textarea{resize:vertical;min-height:80px}.char-count{display:block;text-align:right;font-size:12px;color:var(--color-text-tertiary);margin-top:4px}.form-actions{display:flex;gap:12px;margin-top:24px}.profile-posts{background:var(--color-bg-secondary);border-radius:12px;padding:40px;box-shadow:var(--shadow-md)}.profile-posts h2{font-size:24px;font-weight:700;margin:0 0 8px;color:var(--color-text-primary)}.posts-count{color:var(--color-text-secondary);margin:0 0 24px;font-size:14px}.posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:24px}.no-posts{text-align:center;padding:60px 20px;color:var(--color-text-secondary)}.no-posts p{margin-bottom:24px;font-size:16px}.btn{padding:12px 24px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-2px)}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn-secondary:hover{background:var(--color-border-primary)}.profile-page.loading,.profile-page.error{display:flex;align-items:center;justify-content:center;min-height:60vh;font-size:18px;color:var(--color-text-secondary)}.profile-page.error{flex-direction:column;gap:20px}@media (max-width: 768px){.profile-header{padding:24px}.profile-info{flex-direction:column;align-items:center;text-align:center}.profile-details h1{font-size:24px}.social-links{justify-content:center}.posts-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.auth-page{min-height:100vh;background:var(--color-bg-primary);display:flex;align-items:center;justify-content:center;padding:40px 20px}.auth-container{max-width:450px;width:100%;background:var(--color-bg-secondary);border-radius:12px;padding:40px;box-shadow:var(--shadow-md)}.auth-header{margin-bottom:32px}.auth-header .back-link{display:inline-block;color:var(--color-accent);text-decoration:none;font-weight:600;margin-bottom:24px;transition:color .2s ease}.auth-header .back-link:hover{color:var(--color-accent-hover)}.auth-header h1{font-size:32px;font-weight:700;margin:0 0 8px;color:var(--color-text-primary)}.auth-header p{color:var(--color-text-secondary);margin:0}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-form .form-group{display:flex;flex-direction:column}.auth-form label{font-weight:600;margin-bottom:8px;color:var(--color-text-primary)}.auth-form input{padding:12px;border:1px solid var(--color-border-primary);border-radius:6px;font-size:16px;font-family:inherit;transition:border-color .2s ease;background:var(--color-bg-tertiary);color:var(--color-text-primary)}.auth-form input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--overlay-gold-10)}.auth-form input:disabled{background:var(--color-bg-secondary);color:var(--color-text-disabled);cursor:not-allowed}.btn{padding:12px 24px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-primary{background:var(--color-accent);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-2px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-large{padding:16px 24px;font-size:18px;width:100%;margin-top:8px}.auth-footer{margin-top:24px;text-align:center;padding-top:24px;border-top:1px solid var(--color-border-primary)}.auth-footer p{color:var(--color-text-secondary);margin:0}.auth-link{color:var(--color-accent);text-decoration:none;font-weight:600;transition:color .2s ease}.auth-link:hover{color:var(--color-accent-hover)}.dev-notice{margin-top:24px;padding:16px;background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:8px}.dev-notice p{margin:4px 0;font-size:14px;color:var(--color-warning-text)}.dev-notice strong{color:var(--color-accent)}.success-message{background:var(--color-success-bg);border:1px solid var(--color-success);color:var(--color-success-text);padding:20px;border-radius:8px;margin:20px 0;text-align:center}.success-message p{margin:12px 0;line-height:1.6}.success-message .email-highlight{font-weight:600;color:var(--color-success)}.success-message .note{font-size:14px;color:var(--color-success-text);background:var(--overlay-dark-20);padding:12px;border-radius:6px;margin:16px 0}.success-message .btn{margin:8px 4px}.error-message{background:var(--color-error-bg);border:1px solid var(--color-error);color:var(--color-error-text);padding:16px;border-radius:8px;margin:16px 0;text-align:center}.error-message p{margin:8px 0}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-elevated);transform:translateY(-2px)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}.forgot-password-link{display:block;text-align:right;margin-top:-8px;margin-bottom:16px;font-size:14px}.auth-subtitle{color:var(--color-text-secondary);margin-bottom:24px;text-align:center}.loading{text-align:center;padding:40px;color:var(--color-text-secondary);font-size:18px}@media (max-width: 480px){.auth-container{padding:24px}.auth-header h1{font-size:24px}}*{box-sizing:border-box}.app{min-height:100vh;background:var(--color-bg-primary)}#root{max-width:100%;margin:0;padding:0}
