@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0f1117;--bg-secondary:#1a1d2e;--bg-card:#1e2235;--bg-input:#252840;--border:#2e3250;--border-focus:#7c6af7;--text-primary:#e8eaf6;--text-secondary:#9fa8da;--text-muted:#5c6bc0;--accent:#7c6af7;--accent-hover:#6a58e0;--accent-light:#7c6af726;--success:#66bb6a;--danger:#ef5350;--warning:#ffa726;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 8px 40px #00000080;--shadow-glow:0 0 20px #7c6af740;--font:"Inter", -apple-system, BlinkMacSystemFont, sans-serif}html,body{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}h1{letter-spacing:-.03em;font-size:2rem;font-weight:700}h2{letter-spacing:-.02em;font-size:1.5rem;font-weight:600}h3{font-size:1.125rem;font-weight:600}.page{max-width:900px;padding:var(--sp-8) var(--sp-6);margin:0 auto}.page-header{margin-bottom:var(--sp-8);justify-content:space-between;align-items:center;display:flex}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-6);box-shadow:var(--shadow-sm)}.btn{align-items:center;gap:var(--sp-2);padding:10px var(--sp-5);border-radius:var(--r-sm);font-family:var(--font);cursor:pointer;white-space:nowrap;border:none;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-secondary{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.btn-danger{color:var(--danger);border:1px solid var(--danger);background:0 0}.btn-danger:hover{background:#ef53501a}.btn-sm{padding:6px 12px;font-size:.8rem}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.form-group{gap:var(--sp-2);margin-bottom:var(--sp-5);flex-direction:column;display:flex}.form-label{color:var(--text-secondary);letter-spacing:.02em;text-transform:uppercase;font-size:.85rem;font-weight:500}.form-input,.form-select,.form-textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-primary);font-family:var(--font);width:100%;padding:10px 14px;font-size:.95rem;transition:border-color .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-light);outline:none}.form-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239fa8da' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.form-textarea{resize:vertical;min-height:80px}.toggle-row{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-5);display:flex}.toggle-label{color:var(--text-primary);cursor:pointer;font-size:.95rem}.toggle{cursor:pointer;width:44px;height:24px;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle-slider{background:var(--border);border-radius:24px;transition:background .25s;position:absolute;inset:0}.toggle-slider:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .25s;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-slider{background:var(--accent)}.toggle input:checked+.toggle-slider:before{transform:translate(20px)}.file-upload{border:2px dashed var(--border);border-radius:var(--r-md);padding:var(--sp-6);text-align:center;cursor:pointer;transition:all .2s;position:relative}.file-upload:hover{border-color:var(--accent);background:var(--accent-light)}.file-upload input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-upload-text{color:var(--text-secondary);font-size:.875rem}.file-upload-text strong{color:var(--accent)}.file-selected{border-color:var(--success);background:#66bb6a14}.file-selected .file-upload-text{color:var(--success)}.story-list{gap:var(--sp-3);flex-direction:column;display:flex}.story-row{align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color .2s,box-shadow .2s;display:flex}.story-row:hover{border-color:var(--accent);box-shadow:var(--shadow-glow)}.story-cover{border-radius:var(--r-sm);object-fit:cover;background:var(--bg-input);flex-shrink:0;width:52px;height:52px}.story-cover-placeholder{border-radius:var(--r-sm);background:var(--bg-input);flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.5rem;display:flex}.story-info{flex:1;min-width:0}.story-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:600;overflow:hidden}.story-meta{color:var(--text-muted);margin-top:2px;font-size:.8rem}.badge{letter-spacing:.05em;border-radius:20px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-block}.badge-premium{color:var(--warning);background:#ffa72626;border:1px solid #ffa7264d}.badge-free{color:var(--success);background:#66bb6a1f;border:1px solid #66bb6a4d}.story-actions{gap:var(--sp-2);flex-shrink:0;display:flex}.slide-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-6);position:relative}.slide-number{top:var(--sp-4);left:var(--sp-5);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:600;position:absolute}.slide-remove-btn{top:var(--sp-3);right:var(--sp-4);position:absolute}.slides-stack{gap:var(--sp-5);flex-direction:column;display:flex}.slide-grid{gap:var(--sp-4);margin-top:var(--sp-8);grid-template-columns:1fr 1fr;display:grid}.alert{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);margin-bottom:var(--sp-4);font-size:.875rem}.alert-success{color:var(--success);background:#66bb6a1f;border:1px solid #66bb6a4d}.alert-error{color:var(--danger);background:#ef53501f;border:1px solid #ef53504d}.progress-bar{background:var(--border);height:4px;margin:var(--sp-2) 0;border-radius:2px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), #a78bfa);border-radius:2px;height:100%;transition:width .3s}.nav{background:var(--bg-secondary);border-bottom:1px solid var(--border);padding:var(--sp-4) var(--sp-6);align-items:center;gap:var(--sp-4);z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;position:sticky;top:0}.nav-brand{color:var(--text-primary);align-items:center;gap:var(--sp-2);font-size:1.1rem;font-weight:700;text-decoration:none;display:flex}.nav-back{color:var(--text-secondary);align-items:center;gap:6px;font-size:.875rem;text-decoration:none;transition:color .2s;display:flex}.nav-back:hover{color:var(--text-primary)}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:var(--sp-12) var(--sp-6);color:var(--text-muted)}.empty-state-icon{margin-bottom:var(--sp-4);font-size:3rem}.empty-state p{margin-bottom:var(--sp-5);font-size:1rem}.sidebar-link{color:var(--text-secondary);border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.sidebar-link:hover{color:var(--accent);background:#7c6af71f}.sidebar-brand-text{background:linear-gradient(135deg,#e8eaf6,#a78bfa);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;font-size:1rem;font-weight:800}.divider{background:var(--border);height:1px;margin:var(--sp-6) 0}@media (max-width:640px){.page{padding:var(--sp-5) var(--sp-4)}.page-header{gap:var(--sp-4);flex-direction:column;align-items:flex-start}.slide-grid{grid-template-columns:1fr}.story-row{flex-wrap:wrap}}
