:root{--primary-blue: #3b82f6;--primary-blue-hover: #2563eb;--text-primary: #111827;--text-secondary: #6b7280;--text-muted: #9ca3af;--border-light: #e5e7eb;--border-medium: #d1d5db;--bg-white: #ffffff;--bg-light: #f9fafb;--bg-lighter: #f3f4f6;--bg-secondary: #f8fafc;--success-green: #10b981;--success-bg: #ecfdf5;--error-red: #ef4444;--error-bg: #fef2f2;--warning-yellow: #f59e0b;--warning-bg: #fffbeb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--primary-color: #3b82f6;--primary-color-dark: #2563eb;--background-color: #ffffff;--surface-color: #ffffff;--border-color: #e5e7eb}.admin-section{padding:24px;max-width:100%;margin:0 auto;min-height:calc(100vh - 64px);background:var(--bg-white);color:var(--text-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid var(--border-light)}.section-header h2{color:var(--text-primary);font-size:32px;font-weight:700;margin:0;letter-spacing:-.025em}.admin-section-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--text-secondary);min-height:400px;background:var(--bg-white)}.loading-spinner{width:32px;height:32px;border:2px solid var(--border-light);border-top:2px solid var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.admin-section-loading p{font-size:14px;color:var(--text-secondary);margin:0;font-weight:500}.message{padding:16px 20px;border-radius:var(--radius-md);margin-bottom:24px;font-weight:500;font-size:14px;border:1px solid}.message.success,.success-message{background:var(--success-bg);color:#065f46;border-color:#a7f3d0}.message.error,.error-message{background:var(--error-bg);color:#991b1b;border-color:#fecaca}.message.warning{background:var(--warning-bg);color:#92400e;border-color:#fed7aa}.btn{padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.4;font-family:inherit;border:1px solid;background:transparent}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.btn-primary:hover:not(:disabled){background:var(--primary-blue-hover);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(0)}.btn-primary.outlined{color:var(--primary-blue);border-color:var(--primary-blue);background:var(--bg-white)}.btn-primary.outlined:hover:not(:disabled){background:var(--primary-blue);color:var(--bg-white)}.btn-secondary{color:var(--text-secondary);border-color:var(--border-medium);background:var(--bg-white)}.btn-secondary:hover:not(:disabled){background:var(--bg-light);color:var(--text-primary);border-color:var(--text-secondary)}.btn-danger{color:var(--error-red);border-color:var(--error-red);background:var(--bg-white)}.btn-danger:hover:not(:disabled){background:var(--error-red);color:#fff}.btn-success{color:var(--success-green);border-color:var(--success-green);background:var(--bg-white)}.btn-success:hover:not(:disabled){background:var(--success-green);color:#fff}.btn-sm{padding:6px 12px;font-size:13px}.btn-lg{padding:14px 28px;font-size:16px;font-weight:600}.overview-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap;padding:20px;background:var(--bg-light);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.search-input{width:100%;padding:12px 16px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:14px;background:var(--bg-white);color:var(--text-primary);transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.search-input::placeholder{color:var(--text-muted)}.filter-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.filter-select{padding:14px 44px 14px 18px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:14px;font-weight:500;background:var(--bg-white);color:var(--text-primary);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:160px;position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M6 9l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 14px center;background-size:18px;box-shadow:0 1px 3px #00000014}.filter-select:hover{border-color:var(--primary-blue);box-shadow:0 2px 8px #3b82f626;transform:translateY(-1px)}.filter-select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61f,0 2px 8px #3b82f626;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b82f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M6 9l6 6 6-6'/%3e%3c/svg%3e");transform:translateY(-1px)}.filter-select:active{transform:translateY(0)}.filter-select.has-selection{border-color:var(--primary-blue);background-color:#3b82f605;color:var(--primary-blue);font-weight:600}.filter-select.has-selection:hover{background-color:#3b82f60d}.filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:600;color:#fff;background:var(--primary-blue);border-radius:10px;margin-left:8px}.tab-buttons{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--border-light);overflow-x:auto;padding-bottom:0}.tab-btn{padding:12px 20px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;white-space:nowrap}.tab-btn.active{color:var(--primary-blue);border-bottom-color:var(--primary-blue)}.tab-btn:not(.active):hover{color:var(--text-primary);background:var(--bg-light)}.content-section{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:24px;margin-bottom:24px}.content-grid{display:grid;gap:24px}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.item-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:20px;transition:all .2s ease;cursor:pointer}.item-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-2px)}.item-card-header{margin-bottom:12px}.item-card-header h4{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 8px;line-height:1.3}.item-card-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:13px;color:var(--text-secondary)}.item-card-content{margin-bottom:16px}.item-card-excerpt{color:var(--text-secondary);font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.item-card-actions{display:flex;gap:8px;justify-content:flex-end;border-top:1px solid var(--border-light);padding-top:16px}.status-badge{padding:4px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;text-transform:capitalize}.status-badge.published{background:var(--success-bg);color:#065f46}.status-badge.draft{background:var(--bg-lighter);color:var(--text-secondary)}.status-badge.scheduled{background:var(--warning-bg);color:#92400e}.form-container{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border-light);overflow:hidden}.form-header{padding:20px 24px;border-bottom:1px solid var(--border-light);background:var(--bg-light)}.form-header h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.form-header-actions{display:flex;gap:12px}.form-content{padding:24px;max-height:calc(100vh - 200px);overflow-y:auto}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;color:var(--text-primary);font-size:14px;font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:14px;background:var(--bg-white);color:var(--text-primary);transition:all .2s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:100px}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;border-top:1px solid var(--border-light);background:var(--bg-light)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state h3{color:var(--text-primary);font-size:20px;font-weight:600;margin-bottom:8px}@media (max-width: 768px){.admin-section{padding:16px}.section-header{flex-direction:column;align-items:flex-start;gap:16px}.section-header h2{font-size:28px}.overview-controls{flex-direction:column;align-items:stretch;padding:16px}.search-box{max-width:none;min-width:auto}.filter-controls{flex-direction:column;gap:12px}.filter-group{width:100%}.filter-select{min-width:auto;width:100%}.items-grid{grid-template-columns:1fr}.form-content{padding:16px}.form-actions{padding:16px;flex-direction:column}.tab-buttons{gap:0}.tab-btn{padding:10px 16px;font-size:13px}}@media (max-width: 480px){.admin-section{padding:12px}.section-header h2{font-size:24px}.item-card,.form-header,.form-content,.form-actions{padding:16px}}.form-helper-text{font-size:.875rem;color:var(--text-secondary);margin-top:4px;padding:8px;background:var(--bg-lighter);border-radius:var(--radius-sm);border-left:3px solid var(--primary-blue)}.form-helper-text code{background:var(--border-light);padding:2px 4px;border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;color:var(--text-primary)}.books-grid{display:grid;gap:20px;grid-template-columns:1fr}.book-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:all .2s ease}.book-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-medium)}.book-card-main{display:flex;gap:16px;padding:20px}.book-cover{flex-shrink:0;width:80px;height:120px;border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-lighter);border:1px solid var(--border-light)}.cover-image{width:100%;height:100%;object-fit:cover}.cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-lighter) 0%,var(--bg-light) 100%);color:var(--text-muted);font-size:24px}.book-details{flex:1;min-width:0}.book-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;gap:12px}.book-title{margin:0;font-size:18px;font-weight:600;color:var(--text-primary);line-height:1.3;flex:1;min-width:0;word-wrap:break-word}.book-status{flex-shrink:0}.book-author{font-size:14px;color:var(--text-secondary);margin-bottom:8px;font-weight:500}.book-genre{display:flex;gap:12px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.genre-tag{background:var(--primary-blue);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.pages-info{font-size:12px;color:var(--text-muted);background:var(--bg-lighter);padding:4px 8px;border-radius:4px}.book-meta{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.book-rating{display:flex;gap:2px}.book-dates{display:flex;flex-direction:column;gap:4px}.date-info{font-size:12px;color:var(--text-muted)}.book-review-preview{font-size:13px;color:var(--text-secondary);line-height:1.4;margin-top:8px;font-style:italic}.book-card-actions{display:flex;gap:8px;padding:16px 20px;background:var(--bg-light);border-top:1px solid var(--border-light)}.btn-link{color:var(--primary-blue);border:none;background:none;text-decoration:underline;padding:8px 12px}.btn-link:hover{background:var(--bg-lighter);text-decoration:none}.book-form-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;margin-bottom:32px}.form-left-column{display:flex;flex-direction:column;gap:20px}.form-left-column h3{margin:0 0 16px;font-size:18px;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--primary-blue);padding-bottom:8px}.form-right-column{display:flex;flex-direction:column;gap:20px}.form-right-column h3{margin:0 0 16px;font-size:18px;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--primary-blue);padding-bottom:8px}.form-right-column h4{margin:24px 0 12px;font-size:16px;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-medium);padding-bottom:8px;text-transform:uppercase;letter-spacing:.3px}.cover-upload-group{min-height:80px;max-height:100px;display:flex;align-items:center;justify-content:center}.uploads-row{display:flex;gap:12px}.mini-upload-group{flex:1}.mini-upload-group label{display:none!important}.mini-upload-group .image-upload-container{min-height:40px!important;height:40px!important}.mini-upload-group .image-upload-area{min-height:40px!important;height:40px!important;padding:4px!important;font-size:20px!important;border:1px dashed var(--border-medium)!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--text-primary)!important;background:var(--bg-white)!important}.mini-upload-group .image-upload-area:hover{border-color:var(--primary-blue)!important;background:var(--bg-lighter)!important}.mini-upload-group .upload-placeholder{font-size:8px!important;padding:2px!important;display:none!important}.mini-upload-group .upload-icon{font-size:20px!important;margin:0!important}.mini-upload-group .file-preview{margin-top:4px!important;padding:4px!important;font-size:16px!important;text-align:center!important;background:none!important;border:none!important}.mini-upload-group .download-link{font-size:16px!important;text-decoration:none!important}.mini-upload-group .image-upload-container .upload-help-text{position:absolute!important;bottom:-20px!important;left:0!important;right:0!important;font-size:8px!important;color:var(--text-muted)!important;text-align:center!important}.status-dropdown-mini{width:100%!important;padding:8px 12px!important;border:2px solid var(--border-light)!important;border-radius:var(--radius-sm)!important;background:var(--bg-white)!important;font-size:11px!important;font-weight:600!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;background-image:url("data:image/svg+xml;charset=US-ASCII,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'><path fill='%23666' d='m0 1 2 2 2-2z'/></svg>")!important;background-repeat:no-repeat!important;background-position:right 8px center!important;background-size:8px!important;cursor:pointer!important;transition:all .2s ease!important;text-transform:uppercase!important;letter-spacing:.3px!important}.status-dropdown-mini:hover{border-color:var(--primary-blue)!important;box-shadow:0 0 0 2px #2563eb1a!important}.status-dropdown-mini:focus{outline:none!important;border-color:var(--primary-blue)!important;box-shadow:0 0 0 2px #2563eb33!important}.cover-upload-group .image-upload-container{min-height:80px!important;height:80px!important;padding:8px!important}.cover-upload-group .image-upload-area{min-height:60px!important;height:60px!important;padding:8px!important;font-size:12px!important}.cover-upload-group .upload-placeholder{font-size:10px!important;padding:4px!important}.cover-upload-group .upload-icon{font-size:16px!important;margin-bottom:2px!important}.rating-grid,.technical-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px;padding:16px;background:var(--bg-white);border-radius:var(--radius-md);border:1px solid var(--border-light)}.rating-group{display:flex;flex-direction:column;gap:8px}.rating-group label{font-size:13px;font-weight:600;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px}.rating-group input,.rating-group input[type=date]{width:100%;text-align:center;font-weight:600;font-size:14px;padding:8px 4px;border:2px solid var(--border-medium);border-radius:var(--radius-sm);background:var(--bg-white)}.rating-group input:disabled{background:var(--bg-lighter);color:var(--text-muted);cursor:not-allowed}.form-buttons{display:flex;gap:12px;margin-top:20px;justify-content:flex-end}.status-dropdown{min-width:200px;padding:12px 16px;border:2px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-white);font-size:14px;font-weight:600;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'><path fill='%23666' d='m0 1 2 2 2-2z'/></svg>");background-repeat:no-repeat;background-position:right 16px center;background-size:12px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.status-dropdown:hover{border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.status-dropdown:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f633}.publish-btn{padding:8px 16px;background:var(--primary-blue);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;font-size:12px;cursor:pointer;transition:background-color .2s ease}.publish-btn:hover{background:var(--primary-blue-hover)}.form-bottom-section{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:32px;padding:24px 0}.rating-group input:focus{border-color:var(--primary-blue);outline:none;box-shadow:0 0 0 3px #3b82f61a}.rating-group input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;background:var(--border-light);border-radius:3px;border:none;outline:none;padding:0;margin:8px 0}.rating-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:var(--primary-blue);border-radius:50%;cursor:pointer;border:2px solid var(--bg-white);box-shadow:0 2px 4px #0000001a}.rating-group input[type=range]::-moz-range-thumb{width:18px;height:18px;background:var(--primary-blue);border-radius:50%;cursor:pointer;border:2px solid var(--bg-white);box-shadow:0 2px 4px #0000001a}.rating-group input[type=range]:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px #2563eb33,0 2px 4px #0000001a}.rating-group input[type=range]:focus::-moz-range-thumb{box-shadow:0 0 0 3px #2563eb33,0 2px 4px #0000001a}.rating-group span{display:inline-block;min-width:20px;text-align:center;font-weight:600;color:var(--primary-blue);font-size:14px}.book-form-layout .form-group{margin-bottom:0}.book-form-layout .form-group label{font-weight:700;color:var(--text-primary);margin-bottom:4px;display:block;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.book-form-layout .form-group input,.book-form-layout .form-group select,.book-form-layout .form-group textarea{width:100%;padding:12px 16px;border:2px solid var(--border-light);border-radius:var(--radius-md);font-size:14px;transition:all .2s ease;background:var(--bg-white)}.book-form-layout .form-group input:focus,.book-form-layout .form-group select:focus,.book-form-layout .form-group textarea:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2563eb1a}.book-form-layout .form-group textarea{resize:vertical;font-family:inherit;line-height:1.6;min-height:120px}.form-bottom-section .form-group input,.form-bottom-section .form-group select,.form-bottom-section .form-group textarea{width:100%;padding:12px 16px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:14px}.form-bottom-section .form-group textarea{resize:vertical;font-family:inherit;line-height:1.5;min-height:80px;height:80px}.form-bottom-section .form-group{background:var(--bg-white);padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:0 2px 8px #0000000d}.form-bottom-section .form-group label{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:16px;display:block;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--primary-blue);padding-bottom:8px}.file-preview{margin-top:8px;padding:8px;background:var(--bg-lighter);border-radius:var(--radius-sm);border:1px solid var(--border-light)}.download-link{display:inline-flex;align-items:center;gap:6px;color:var(--primary-blue);text-decoration:none;font-size:12px;font-weight:500;padding:4px 8px;border-radius:var(--radius-sm);transition:all .2s ease}.download-link:hover{background:var(--primary-blue);color:#fff;text-decoration:none}.form-bottom-section .image-upload-container{min-height:60px!important;height:60px!important}.form-bottom-section .image-upload-area{min-height:40px!important;height:40px!important;font-size:11px!important;padding:4px!important}@media (max-width: 768px){.book-form-layout{grid-template-columns:1fr;gap:16px}.form-right-column{order:-1}.form-bottom-section{grid-template-columns:1fr;gap:16px}}.demo-section{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:24px;margin-bottom:24px}.demo-section h3{color:var(--text-primary);font-size:24px;font-weight:600;margin:0 0 8px}.demo-section p{color:var(--text-secondary);margin:0 0 24px}.demo-form{display:flex;flex-direction:column;gap:24px}.demo-uploads{display:grid;grid-template-columns:1fr 1fr;gap:24px}.upload-demo{background:var(--bg-light);border-radius:var(--radius-md);padding:16px;border:1px solid var(--border-light)}.demo-preview{background:var(--bg-secondary);border-radius:var(--radius-md);padding:20px;border:1px solid var(--border-light)}.demo-preview h4{margin:0 0 16px;color:var(--text-primary);font-weight:600}.project-card{background:var(--bg-white);border-radius:var(--radius-md);border:1px solid var(--border-light);overflow:hidden;box-shadow:var(--shadow-sm)}.project-header{height:200px;background:var(--bg-lighter);display:flex;align-items:center;justify-content:center}.project-image{width:100%;height:100%;object-fit:cover}.placeholder-image{color:var(--text-muted);font-size:14px;text-align:center}.project-content{padding:16px}.project-content h3{margin:0 0 8px;color:var(--text-primary);font-size:18px;font-weight:600}.project-content p{margin:0 0 12px;color:var(--text-secondary);font-size:14px}.audio-preview{margin-top:12px}.audio-preview audio{width:100%;max-width:300px}.blog-preview{background:var(--bg-white);border-radius:var(--radius-md);border:1px solid var(--border-light);overflow:hidden;box-shadow:var(--shadow-sm)}.featured-image{width:100%;height:200px;object-fit:cover}.blog-content{padding:20px}.blog-content h1{margin:0 0 12px;color:var(--text-primary);font-size:24px;font-weight:700}.blog-content p{margin:0 0 16px;color:var(--text-secondary);font-size:16px;line-height:1.6}.audio-narration{background:var(--bg-light);border-radius:var(--radius-md);padding:16px;border:1px solid var(--border-light)}.audio-narration h4{margin:0 0 12px;color:var(--text-primary);font-size:16px;font-weight:600}.audio-narration audio{width:100%;max-width:400px}.gallery-preview{background:var(--bg-light);border-radius:var(--radius-md);padding:16px;border:1px solid var(--border-light)}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px;margin-top:16px}.gallery-item{text-align:center}.gallery-item img{width:100%;height:80px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-light)}.gallery-item p{margin:8px 0 0;font-size:12px;color:var(--text-secondary);font-family:Monaco,Menlo,Ubuntu Mono,monospace}.empty-gallery{text-align:center;color:var(--text-muted);font-style:italic;padding:40px}.demo-instructions{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:24px;border:1px solid var(--border-light);margin-top:32px}.demo-instructions h3{margin:0 0 16px;color:var(--text-primary);font-size:20px;font-weight:600}.demo-instructions ol{margin:0 0 24px;padding-left:20px}.demo-instructions li{margin-bottom:8px;color:var(--text-secondary);line-height:1.5}.demo-features h4{margin:0 0 16px;color:var(--text-primary);font-size:18px;font-weight:600}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.feature-item{background:var(--bg-white);border-radius:var(--radius-md);padding:16px;border:1px solid var(--border-light);text-align:center}.feature-item strong{display:block;margin-bottom:8px;color:var(--text-primary);font-size:14px}.feature-item p{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.4}@media (max-width: 768px){.demo-uploads{grid-template-columns:1fr}.book-card-main{flex-direction:column;align-items:center;text-align:center;gap:16px}.book-cover{width:100px;height:150px}.book-header{flex-direction:column;align-items:center;gap:8px}.book-genre{justify-content:center}.book-dates{align-items:center}.feature-grid{grid-template-columns:1fr}.image-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.form-group.compact{margin-bottom:16px}.form-group.compact label{font-weight:700;color:var(--text-primary);margin-bottom:4px;display:block;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.form-group.compact input,.form-group.compact select,.form-group.compact textarea{width:100%;padding:12px 16px;border:2px solid var(--border-light);border-radius:var(--radius-md);font-size:14px;transition:all .2s ease;background:var(--bg-white)}.form-group.compact input:focus,.form-group.compact select:focus,.form-group.compact textarea:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2563eb1a}.form-row{display:flex;gap:16px;margin-bottom:16px;align-items:flex-start}.form-row .form-group.compact{margin-bottom:0}.featured-btn{padding:12px 20px!important;border-radius:var(--radius-md)!important;border:2px solid var(--border-light)!important;background:var(--bg-white)!important;color:var(--text-secondary)!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;transition:all .2s ease!important;display:flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important}.featured-btn:hover{border-color:#fbbf24!important;background:#fefce8!important;color:#92400e!important}.featured-btn.active{border-color:#fbbf24!important;background:#fef3c7!important;color:#92400e!important}.featured-btn .star-icon{font-size:16px;line-height:1}.storage-management{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border-light);overflow:hidden}.storage-management .section-header{background:var(--bg-light);padding:24px;border-bottom:1px solid var(--border-light)}.storage-management .section-header h2{color:var(--text-primary);font-size:24px;font-weight:700;margin:0 0 8px;display:flex;align-items:center;gap:12px}.storage-management .section-header p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.storage-stats{padding:24px;border-bottom:1px solid var(--border-light)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.stat-card{background:var(--bg-lighter);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:20px;text-align:center;transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-value{font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.stat-label{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.usage-bar{background:var(--border-light);border-radius:6px;height:8px;overflow:hidden}.usage-fill{background:linear-gradient(90deg,#10b981,#3b82f6 50%,#f59e0b 80%,#ef4444);height:100%;transition:width .3s ease;border-radius:6px}.test-upload-section{padding:24px;border-bottom:1px solid var(--border-light);background:var(--bg-white)}.test-upload-section h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 16px;display:flex;align-items:center;gap:8px}.test-upload-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.test-upload-controls select,.test-upload-controls input[type=file]{padding:8px 12px;border:2px solid var(--border-light);border-radius:var(--radius-md);font-size:14px;background:var(--bg-white);transition:border-color .2s ease}.test-upload-controls select:focus,.test-upload-controls input[type=file]:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2563eb1a}.test-upload-btn{padding:8px 16px;background:var(--primary-blue);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.test-upload-btn:hover:not(:disabled){background:var(--primary-blue-hover);transform:translateY(-1px)}.test-upload-btn:disabled{opacity:.5;cursor:not-allowed}.test-upload-note{font-size:12px;color:var(--text-muted);margin:0;font-style:italic}.database-tracking{padding:24px;border-bottom:1px solid var(--border-light)}.database-tracking h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 16px;display:flex;align-items:center;gap:8px}.bucket-selector{display:flex;align-items:center;gap:12px;margin-bottom:20px}.bucket-selector label{font-size:14px;font-weight:600;color:var(--text-primary)}.bucket-selector select{padding:8px 12px;border:2px solid var(--border-light);border-radius:var(--radius-md);font-size:14px;background:var(--bg-white);transition:border-color .2s ease}.bucket-selector select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #2563eb1a}.file-history h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 16px}.storage-buckets{padding:24px;border-bottom:1px solid var(--border-light)}.storage-buckets h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 20px;display:flex;align-items:center;gap:8px}.bucket-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.bucket-card{background:var(--bg-lighter);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;transition:all .2s ease}.bucket-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.bucket-header{background:var(--bg-white);padding:16px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center}.bucket-header h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0}.file-count{background:var(--primary-blue);color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.file-list{max-height:300px;overflow-y:auto}.file-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-light);transition:background-color .2s ease}.file-item:hover{background:var(--bg-light)}.file-item:last-child{border-bottom:none}.file-info{flex:1;min-width:0}.file-name{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:4px;word-break:break-word}.file-details{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--text-muted)}.file-details span{background:var(--bg-light);padding:2px 6px;border-radius:4px;white-space:nowrap}.smart-name{background:var(--success-bg)!important;color:#065f46!important}.display-name{background:var(--warning-bg)!important;color:#92400e!important}.file-actions{display:flex;gap:8px;flex-shrink:0}.view-btn,.delete-btn{padding:6px 12px;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;gap:4px}.view-btn{background:var(--primary-blue);color:#fff}.view-btn:hover{background:var(--primary-blue-hover);transform:translateY(-1px)}.delete-btn{background:var(--error-red);color:#fff}.delete-btn:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.delete-btn:disabled{opacity:.5;cursor:not-allowed}.more-files{font-style:italic;color:var(--text-muted);justify-content:center}.storage-actions{padding:24px;text-align:center}.refresh-btn{padding:12px 24px;background:var(--bg-lighter);border:2px solid var(--border-medium);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.refresh-btn:hover:not(:disabled){background:var(--bg-light);border-color:var(--primary-blue);color:var(--primary-blue);transform:translateY(-1px)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.error-message{margin:16px 24px;padding:12px 16px;background:var(--error-bg);border:1px solid #fecaca;border-radius:var(--radius-md);color:#991b1b;font-size:14px;display:flex;align-items:center;gap:8px}.error-icon{font-size:16px;flex-shrink:0}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:16px}.test-upload-controls{flex-direction:column;align-items:stretch}.bucket-grid{grid-template-columns:1fr}.bucket-selector{flex-direction:column;align-items:stretch;gap:8px}.file-details{flex-direction:column;gap:4px}}.admin-app{min-height:100vh;background:var(--background-color);color:var(--text-primary);display:flex;flex-direction:column}.admin-header{background:var(--surface-color);border-bottom:2px solid var(--border-color);box-shadow:0 2px 8px #0000000d;position:sticky;top:0;z-index:100}.admin-header-content{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:70px;max-width:1400px;margin:0 auto}.admin-brand{display:flex;align-items:center}.brand-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--text-primary);font-weight:600;font-size:1.25rem;transition:color .3s ease}.brand-link:hover{color:var(--primary-color)}.brand-icon{font-size:1.5rem}.brand-text{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.admin-nav{flex:1;display:flex;justify-content:center}.nav-list{display:flex;list-style:none;margin:0;padding:0;gap:.5rem}.nav-item{position:relative}.nav-link{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;text-decoration:none;color:var(--text-secondary);font-weight:500;border-radius:8px;transition:all .3s ease;position:relative}.nav-link:hover{color:var(--primary-color);background-color:#3b82f61a;transform:translateY(-1px)}.nav-link.active{color:var(--primary-color);background-color:#3b82f626;font-weight:600}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--primary-color);border-radius:2px}.nav-icon{font-size:1.1rem}.nav-label{font-size:.95rem}.admin-user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:none;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .3s ease;color:var(--text-primary)}.user-menu-trigger:hover{border-color:var(--primary-color);background-color:#3b82f60d}.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.user-info{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.user-name{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.user-email{font-size:.8rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.dropdown-arrow{font-size:.8rem;color:var(--text-secondary);transition:transform .3s ease}.user-menu-trigger[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px #0000001f;min-width:220px;z-index:200;overflow:hidden}.dropdown-header{padding:1rem;border-bottom:1px solid var(--border-color);background:#3b82f608}.user-details{display:flex;flex-direction:column;gap:.25rem}.user-details strong{font-weight:600;color:var(--text-primary)}.user-details span{font-size:.85rem;color:var(--text-secondary)}.dropdown-divider{height:1px;background:var(--border-color);margin:0}.dropdown-content{padding:.5rem 0}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;color:var(--text-primary);background:none;border:none;width:100%;text-align:left;font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.dropdown-item:hover{background-color:#3b82f61a}.dropdown-item.logout-item:hover{background-color:#ef44441a;color:#dc2626}.item-icon{font-size:1rem}.admin-breadcrumb{background:var(--background-color);border-bottom:1px solid var(--border-color);padding:.75rem 2rem}.breadcrumb-content{display:flex;align-items:center;gap:.5rem;max-width:1400px;margin:0 auto;font-size:.9rem}.breadcrumb-home{color:var(--text-secondary);text-decoration:none;transition:color .3s ease}.breadcrumb-home:hover{color:var(--primary-color)}.breadcrumb-separator{color:var(--text-secondary);margin:0 .25rem}.breadcrumb-current{color:var(--text-primary);font-weight:500}.admin-main{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.auth-loading,.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.auth-loading{flex-direction:column;gap:1.5rem}.loading-spinner{width:48px;height:48px;border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.loading-progress{width:200px}.progress-bar{width:100%;height:6px;background:var(--border-color);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--primary-color);border-radius:3px;transition:width .3s ease;animation:shimmer 2s infinite}@keyframes shimmer{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}@media (max-width: 1200px){.admin-header-content{padding:0 1.5rem}.admin-main{padding:1.5rem}}@media (max-width: 768px){.admin-header-content{padding:0 1rem;height:60px}.brand-text{display:none}.nav-list{gap:.25rem}.nav-link{padding:.5rem .75rem}.nav-label{display:none}.nav-icon{font-size:1.2rem}.user-info{display:none}.admin-breadcrumb{padding:.5rem 1rem}.admin-main{padding:1rem}.user-menu-dropdown{min-width:200px}}@media (max-width: 480px){.admin-header-content{height:56px}.nav-link{padding:.5rem}.admin-breadcrumb{font-size:.8rem}.admin-main{padding:.75rem}}.admin-section{background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:2rem;margin-bottom:2rem}.admin-section-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1.5rem;text-align:center}.admin-section-error{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.admin-section-error h2{color:var(--text-primary);margin-bottom:1rem}.admin-section-error code{background:var(--background-color);padding:.25rem .5rem;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:.9rem}.nav-link:focus,.user-menu-trigger:focus,.dropdown-item:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media (prefers-contrast: high){.nav-link.active{background-color:var(--primary-color);color:#fff}.user-menu-trigger{border-width:2px}}@media (prefers-reduced-motion: reduce){.nav-link,.user-menu-trigger,.dropdown-arrow,.loading-spinner,.progress-fill{transition:none;animation:none}}.mobile-nav-toggle{display:none;background:none;border:none;font-size:var(--text-xl);color:var(--text-primary);cursor:pointer;border-radius:var(--radius-md);transition:all .2s ease;z-index:1001}.mobile-nav-toggle:hover{background:var(--bg-light)}.mobile-nav-toggle:focus{outline:2px solid var(--primary-blue);outline-offset:2px}.mobile-nav-menu{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:none;z-index:1000}.mobile-nav-menu.open{display:block}.mobile-nav-panel{position:absolute;top:0;right:0;width:min(85vw,320px);height:100vh;background:var(--bg-white);padding:var(--space-lg);box-shadow:-4px 0 20px #00000026;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;display:flex;flex-direction:column}.mobile-nav-menu.open .mobile-nav-panel{transform:translate(0)}.mobile-user-info{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--bg-lighter);border-radius:var(--radius-lg);margin-bottom:var(--space-lg)}.mobile-user-avatar{width:48px;height:48px;background:var(--primary-blue);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--text-lg)}.mobile-user-details{flex:1;min-width:0}.mobile-user-name{font-weight:600;color:var(--text-primary);font-size:var(--text-base);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-user-email{color:var(--text-secondary);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-nav-links{flex:1;display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-lg)}.mobile-nav-link{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:500;transition:all .2s ease;position:relative}.mobile-nav-link:hover{background:var(--bg-light);color:var(--primary-blue)}.mobile-nav-link.active{background:var(--primary-blue);color:#fff}.mobile-nav-icon{font-size:var(--text-lg);width:24px;display:flex;justify-content:center}.mobile-nav-label{flex:1}.mobile-nav-indicator{font-size:var(--text-lg);color:currentColor}.mobile-menu-actions{border-top:1px solid var(--border-light);padding-top:var(--space-md);margin-bottom:var(--space-md)}.mobile-action-link{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:500;transition:all .2s ease;width:100%;border:none;background:none;cursor:pointer;text-align:left}.mobile-action-link:hover{background:var(--bg-light)}.mobile-action-link.logout-action{color:var(--error-red)}.mobile-action-link.logout-action:hover{background:var(--error-bg)}.action-icon{font-size:var(--text-lg);width:24px;display:flex;justify-content:center}.mobile-pwa-hint{padding:var(--space-sm);background:var(--bg-lighter);border-radius:var(--radius-md);text-align:center}.mobile-pwa-hint p{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}@media (max-width: 767px){.mobile-nav-toggle{display:flex}.admin-nav .nav-list,.admin-user-menu{display:none}}@media (min-width: 768px){.mobile-nav-menu{display:none!important}}.button{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;white-space:nowrap;box-sizing:border-box}.button:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d}.button:disabled,.button--disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.button--primary{background:#3b82f6;color:#fff;border:1px solid #3b82f6}.button--primary:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.button--secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.button--secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.button--outline{background:transparent;color:#3b82f6;border:1px solid #3b82f6}.button--outline:hover:not(:disabled){background:#3b82f6;color:#fff}.button--ghost{background:transparent;color:#374151;border:1px solid transparent}.button--ghost:hover:not(:disabled){background:#f3f4f6}.button--danger{background:#dc2626;color:#fff;border:1px solid #dc2626}.button--danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.button--small{padding:6px 12px;font-size:12px;line-height:1.5;min-height:28px}.button--medium{padding:8px 16px;font-size:14px;line-height:1.5;min-height:36px}.button--large{padding:12px 24px;font-size:16px;line-height:1.5;min-height:44px}.button--full-width{width:100%}.button--icon-only{padding:8px;min-width:36px}.button--icon-only.button--small{padding:6px;min-width:28px}.button--icon-only.button--large{padding:12px;min-width:44px}.button--loading{pointer-events:none}.button__spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.button__spinner-icon{width:16px;height:16px;animation:button-spin 1s linear infinite}.button__spinner-circle{stroke:currentColor;stroke-linecap:round;stroke-dasharray:31.416;stroke-dashoffset:31.416;animation:button-dash 2s ease-in-out infinite}@keyframes button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes button-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.button__text{transition:opacity .2s ease}.button__text--loading{opacity:0}.button__left-icon{margin-right:8px;display:flex;align-items:center}.button__right-icon{margin-left:8px;display:flex;align-items:center}.button__icon-content{display:flex;align-items:center;justify-content:center}.button--icon-only .button__left-icon,.button--icon-only .button__right-icon{margin:0}@media (max-width: 640px){.button--large{padding:10px 20px;font-size:14px;min-height:40px}.button--medium{padding:8px 14px;font-size:13px;min-height:34px}.button--small{padding:6px 10px;font-size:12px;min-height:26px}}.image-upload{margin-bottom:20px}.image-upload__label{display:block;font-weight:600;font-size:14px;color:#374151;margin-bottom:8px}.image-upload__area{border:2px dashed #d1d5db;border-radius:12px;padding:24px;text-align:center;transition:all .2s ease;cursor:pointer;background:#fff;position:relative;min-height:120px;display:flex;align-items:center;justify-content:center}.image-upload__area:hover{border-color:#3b82f6;background:#f8faff}.image-upload__area.drag-over{border-color:#3b82f6;background:#eff6ff;border-style:solid}.image-upload__area.disabled{opacity:.6;cursor:not-allowed;background:#f9fafb}.image-upload__area.uploading{cursor:default;border-color:#3b82f6;background:#f8faff}.image-upload__placeholder{display:flex;flex-direction:column;align-items:center;gap:8px}.image-upload__icon{font-size:48px;color:#9ca3af;margin-bottom:8px}.image-upload__text{font-size:16px;font-weight:500;color:#374151}.image-upload__hint{font-size:14px;color:#6b7280}.image-upload__smart-naming{font-size:12px;color:#059669;background:#ecfdf5;padding:4px 8px;border-radius:4px;margin-top:8px;border:1px solid #a7f3d0}.image-upload__warning{background:#fef3c7;color:#92400e;padding:8px 12px;border-radius:6px;font-size:14px;margin-bottom:12px;border:1px solid #fbbf24;display:flex;align-items:center;gap:8px}.image-upload__loading{display:flex;flex-direction:column;align-items:center;gap:12px;color:#3b82f6}.image-upload__loading span{font-weight:500}.image-upload__preview{position:relative;width:100%;max-width:300px;margin:0 auto}.image-upload__preview-img{width:100%;height:200px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.image-upload__file-preview{display:flex;flex-direction:column;align-items:center;padding:20px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;width:100%;max-width:300px;margin:0 auto}.image-upload__file-preview .file-icon{font-size:48px;margin-bottom:12px;color:#6b7280}.image-upload__file-preview .file-name{font-size:14px;font-weight:500;color:#374151;text-align:center;word-break:break-word;max-width:100%}.image-upload__preview-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;gap:12px;opacity:0;transition:opacity .2s ease;border-radius:8px}.image-upload__preview:hover .image-upload__preview-overlay{opacity:1}.image-upload__remove-btn,.image-upload__change-btn{background:#ffffffe6;border:none;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:500;cursor:pointer;transition:background .2s ease}.image-upload__remove-btn{color:#dc2626}.image-upload__change-btn{color:#3b82f6}.image-upload__remove-btn:hover{background:#fee2e2;color:#b91c1c}.image-upload__change-btn:hover{background:#dbeafe;color:#1d4ed8}.image-upload__remove-btn:disabled,.image-upload__change-btn:disabled{opacity:.5;cursor:not-allowed}.image-upload__error{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:14px}.image-upload__error .error-icon{font-size:16px}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 640px){.image-upload__area{padding:16px;min-height:100px}.image-upload__icon{font-size:36px}.image-upload__text{font-size:14px}.image-upload__hint{font-size:12px}.image-upload__preview-img{height:150px}.image-upload__preview-overlay{flex-direction:column;gap:8px}.image-upload__remove-btn,.image-upload__change-btn{font-size:11px;padding:6px 10px}}.image-upload__area:focus-within{outline:2px solid #3b82f6;outline-offset:2px}@media (prefers-color-scheme: dark){.image-upload__label{color:#f3f4f6}.image-upload__area{background:#1f2937;border-color:#4b5563}.image-upload__area:hover{background:#374151;border-color:#60a5fa}.image-upload__text{color:#f3f4f6}.image-upload__hint{color:#9ca3af}.image-upload__file-preview{background:#374151;border-color:#4b5563}.image-upload__file-preview .file-name{color:#f3f4f6}}.step-progress-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:modalOverlayIn .3s ease-out}@keyframes modalOverlayIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}.step-progress-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #00000026;max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalIn .4s cubic-bezier(.34,1.56,.64,1);border:1px solid #e5e7eb}@keyframes modalIn{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.step-progress-header{padding:24px 24px 20px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;background:#f8fafc}.step-progress-title{display:flex;align-items:center;gap:12px}.title-icon{font-size:28px;animation:iconBounce 2s ease-in-out infinite}@keyframes iconBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-1.5px)}}.step-progress-title h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.step-progress-close{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.step-progress-close:hover{background:#f3f4f6;color:#374151}.step-progress-bar{padding:20px 24px;background:#f8fafc;border-bottom:1px solid #e5e7eb}.progress-track{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:4px;transition:width .8s cubic-bezier(.4,0,.2,1);position:relative}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShimmer 2s ease-in-out infinite}@keyframes progressShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{text-align:center;font-size:14px;font-weight:500;color:#374151}.step-progress-content{padding:24px;flex:1;overflow-y:auto;min-height:0}.steps-list{display:flex;flex-direction:column;gap:16px}.step-item{display:flex;gap:16px;position:relative}.step-indicator{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.step-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;border:2px solid #e5e7eb;background:#fff;transition:all .3s ease;z-index:1}.step-connector{width:2px;flex:1;background:#e5e7eb;margin-top:8px;transition:background-color .3s ease}.step-item.pending .step-icon{background:#f3f4f6;border-color:#d1d5db;color:#6b7280}.step-item.active .step-icon{background:#dbeafe;border-color:#3b82f6;color:#1d4ed8;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{box-shadow:0 0 #3b82f6b3}70%{box-shadow:0 0 0 10px #3b82f600}}.step-item.success .step-icon{background:#dcfce7;border-color:#22c55e;color:#15803d}.step-item.success .step-connector{background:#22c55e}.step-item.error .step-icon{background:#fef2f2;border-color:#ef4444;color:#dc2626;animation:shake .5s cubic-bezier(.36,.07,.19,.97)}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.step-item.skipped .step-icon{background:#f1f5f9;border-color:#94a3b8;color:#64748b}.step-content{flex:1;min-width:0}.step-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.step-title{margin:0;font-size:16px;font-weight:600;color:#1f2937}.step-timing{font-size:12px;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:12px;font-weight:500}.step-description{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.step-error{margin-top:12px;padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.error-message{font-size:14px;color:#dc2626;margin-bottom:8px}.retry-step-btn{background:#dc2626;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.retry-step-btn:hover{background:#b91c1c}.step-spinner{margin-top:8px;display:flex;align-items:center;gap:8px}.spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.spinner.small{width:16px;height:16px}.step-progress-error{margin:0 24px 24px;padding:16px;background:#fef2f2;border:1px solid #fecaca;border-radius:12px}.error-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-weight:600;color:#dc2626}.error-icon{font-size:20px}.error-details{font-size:14px;color:#7f1d1d;line-height:1.5}.step-progress-footer{padding:20px 24px;border-top:1px solid #e5e7eb;background:#f8fafc;display:flex;align-items:center;justify-content:space-between}.footer-left{flex:1}.footer-right{display:flex;gap:12px}.status-indicator{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500}.status-indicator.success{color:#059669}.status-indicator.error{color:#dc2626}.btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.btn-primary:hover{background:#2563eb;border-color:#2563eb}.btn-secondary{background:#fff;color:#374151;border-color:#d1d5db}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}@media (max-width: 640px){.step-progress-modal-overlay{padding:16px}.step-progress-modal{max-width:100%;border-radius:12px}.step-progress-header{padding:20px 16px 16px}.step-progress-title h2{font-size:18px}.step-progress-bar,.step-progress-content{padding:16px}.step-progress-footer{padding:16px;flex-direction:column;gap:12px;align-items:stretch}.footer-left{text-align:center}.footer-right{justify-content:center}.step-item{gap:12px}.step-icon{width:32px;height:32px;font-size:14px}.step-header{flex-direction:column;align-items:flex-start;gap:4px}.step-timing{align-self:flex-end}}.pwa-install-prompt{position:fixed;bottom:20px;left:20px;right:20px;max-width:400px;margin:0 auto;background:var(--primary-blue, #3b82f6);color:#fff;padding:var(--space-md, 1rem);border-radius:var(--radius-lg, 12px);box-shadow:0 8px 25px #00000026;z-index:1000;transform:translateY(100%);opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:var(--space-md, 1rem)}.pwa-install-prompt.show{transform:translateY(0);opacity:1}.install-content{display:flex;align-items:center;gap:var(--space-sm, .75rem);flex:1;min-width:0}.install-icon{font-size:1.5rem;flex-shrink:0}.install-text{flex:1;min-width:0}.install-text h4{margin:0 0 .25rem;font-size:var(--text-base, 1rem);font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.install-text p{margin:0;font-size:var(--text-sm, .875rem);opacity:.9;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.install-actions{display:flex;align-items:center;gap:var(--space-sm, .75rem);flex-shrink:0}.install-btn{background:#fff;color:var(--primary-blue, #3b82f6);border:none;padding:var(--space-sm, .75rem) var(--space-md, 1rem);border-radius:var(--radius-md, 8px);font-weight:600;font-size:var(--text-sm, .875rem);cursor:pointer;transition:all .2s ease;min-height:var(--touch-min, 44px);white-space:nowrap}.install-btn:hover{background:#f9fafb;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.install-btn:active{transform:translateY(0)}.dismiss-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2rem;padding:var(--space-xs, .5rem);border-radius:var(--radius-sm, 6px);opacity:.8;transition:all .2s ease;min-height:var(--touch-min, 44px);min-width:var(--touch-min, 44px);display:flex;align-items:center;justify-content:center;flex-shrink:0}.dismiss-btn:hover{opacity:1;background:#ffffff1a}.dismiss-btn:focus{outline:2px solid white;outline-offset:2px}@media (max-width: 480px){.pwa-install-prompt{left:16px;right:16px;bottom:16px;padding:var(--space-sm, .75rem)}.install-content{gap:var(--space-xs, .5rem)}.install-text h4{font-size:var(--text-sm, .875rem)}.install-text p{font-size:var(--text-xs, .75rem);-webkit-line-clamp:1}.install-btn{padding:var(--space-xs, .5rem) var(--space-sm, .75rem);font-size:var(--text-xs, .75rem)}.dismiss-btn{font-size:1rem}}@media (max-width: 360px){.pwa-install-prompt{padding:var(--space-xs, .5rem)}.install-content{flex-direction:column;align-items:flex-start;gap:var(--space-xs, .5rem)}.install-actions{align-self:flex-end}}@media (prefers-color-scheme: dark){.pwa-install-prompt{background:#1f2937;color:#f9fafb}.install-btn{background:#f9fafb;color:#1f2937}.install-btn:hover{background:#e5e7eb}}@media (prefers-reduced-motion: reduce){.pwa-install-prompt{transition:none}.install-btn:hover{transform:none}}@media (prefers-contrast: high){.pwa-install-prompt{border:2px solid white}.install-btn{border:2px solid var(--primary-blue, #3b82f6)}.dismiss-btn{border:1px solid white}}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideOutDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@media (display-mode: standalone){.pwa-install-prompt{display:none!important}}.enhanced-markdown-editor{border:1px solid var(--border-medium);border-radius:var(--radius-lg);background:var(--bg-white);overflow:hidden;box-shadow:0 1px 3px #0000000d}.enhanced-markdown-editor,.enhanced-markdown-editor *,.enhanced-markdown-editor:before,.enhanced-markdown-editor:after,.enhanced-markdown-editor *:before,.enhanced-markdown-editor *:after{color:#111827!important;background-color:transparent!important}.enhanced-markdown-editor .markdown-editor,.enhanced-markdown-editor .w-md-editor,.enhanced-markdown-editor .w-md-editor-text-container{background-color:#fff!important}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-light);border-bottom:1px solid var(--border-light);flex-wrap:wrap;gap:12px}.toolbar-left,.toolbar-center,.toolbar-right{display:flex;align-items:center;gap:12px}.editor-stats{display:flex;align-items:center;gap:16px}.stat-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);font-weight:500}.stat-icon{font-size:14px}.view-mode-toggle{display:flex;background:var(--bg-white);border:1px solid var(--border-medium);border-radius:var(--radius-md);overflow:hidden}.mode-btn{padding:8px 14px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;border-right:1px solid var(--border-light)}.mode-btn:last-child{border-right:none}.mode-btn:hover{background:var(--bg-light);color:var(--text-primary)}.mode-btn.active{background:var(--primary-blue);color:#fff}.quick-insert-select{padding:8px 32px 8px 12px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:13px;font-weight:500;background:var(--bg-white);color:var(--text-primary);cursor:pointer;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M6 9l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:14px;min-width:140px}.quick-insert-select:hover{border-color:var(--primary-blue)}.quick-insert-select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.upload-btn{padding:8px 12px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:13px;font-weight:500;background:var(--bg-white);color:var(--text-primary);cursor:pointer;transition:all .2s ease;margin-left:8px}.upload-btn:hover:not(:disabled){border-color:var(--primary-blue);background:var(--bg-light)}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.upload-status{background:var(--success-bg);color:var(--success-green);padding:4px 8px;border-radius:var(--radius-sm);font-size:12px;border:1px solid rgba(16,185,129,.2)}.mentions-dropdown{position:absolute;top:40px;left:20px;width:320px;max-height:300px;background:var(--bg-white);border:1px solid var(--border-medium);border-radius:var(--radius-lg);box-shadow:0 10px 25px #0000001a;z-index:1000;overflow:hidden;font-family:inherit}.mentions-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-light);border-bottom:1px solid var(--border-light);font-size:13px;font-weight:600;color:var(--text-primary)}.mentions-icon{font-size:14px}.mentions-query{color:var(--primary-blue);font-weight:500}.mentions-list{max-height:200px;overflow-y:auto}.mention-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-light);transition:all .2s ease}.mention-item:hover,.mention-item.active{background:var(--bg-light)}.mention-item.active{border-left:3px solid var(--primary-blue)}.mention-icon{font-size:16px;flex-shrink:0}.mention-content{flex:1;min-width:0}.mention-name{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-filename{font-size:12px;color:var(--text-secondary);font-family:Monaco,Menlo,Ubuntu Mono,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-description{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.mention-meta{flex-shrink:0;text-align:right}.mention-counter{font-size:11px;color:var(--text-muted);background:var(--bg-lighter);padding:2px 6px;border-radius:10px;font-weight:500}.mention-empty{padding:20px 16px;text-align:center;color:var(--text-secondary)}.mention-empty span{display:block;font-size:14px;margin-bottom:4px}.mention-empty small{font-size:12px;color:var(--text-muted)}.mentions-footer{padding:8px 16px;background:var(--bg-lighter);border-top:1px solid var(--border-light);text-align:center}.mentions-footer small{font-size:11px;color:var(--text-muted)}.mentions-footer kbd{background:var(--bg-white);border:1px solid var(--border-medium);border-radius:3px;padding:1px 4px;font-size:10px;font-family:monospace;color:var(--text-primary)}.commands-dropdown{width:360px;max-height:400px}.commands-dropdown .mentions-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.commands-dropdown .mentions-icon{color:#fbbf24}.command-item{padding:10px 16px;border-left:3px solid transparent}.command-item:hover,.command-item.active{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-left:3px solid #667eea}.command-item .mention-name{font-weight:600;color:var(--text-primary)}.command-item .mention-filename{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:11px;color:#7c3aed;background:#7c3aed1a;padding:2px 6px;border-radius:4px;margin-top:2px;display:inline-block}.command-item .mention-description{color:var(--text-secondary);font-size:12px;margin-top:3px}.command-syntax{font-size:10px;color:var(--text-muted);background:var(--bg-lighter);padding:2px 5px;border-radius:8px;font-family:monospace;border:1px solid var(--border-light)}.commands-dropdown .mention-empty small{color:#7c3aed}.command-item[data-category=format] .mention-icon{filter:hue-rotate(0deg)}.command-item[data-category=structure] .mention-icon{filter:hue-rotate(120deg)}.command-item[data-category=content] .mention-icon{filter:hue-rotate(240deg)}.markdown-editor{position:relative}.markdown-editor.drag-over{border-color:var(--primary-blue);background:#3b82f605}.drag-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#3b82f61a;border:2px dashed var(--primary-blue);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;z-index:10;pointer-events:none}.drag-content{text-align:center;color:var(--primary-blue)}.drag-icon{font-size:48px;margin-bottom:12px}.drag-text{font-size:16px;font-weight:600}.upload-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:20}.upload-content{text-align:center;color:var(--text-secondary)}.upload-spinner{width:32px;height:32px;border:3px solid var(--border-light);border-top:3px solid var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 12px}.upload-text{font-size:14px;font-weight:500}.markdown-editor .w-md-editor,.markdown-editor .w-md-editor *,.markdown-editor .w-md-editor textarea,.markdown-editor .w-md-editor-text-pre,.markdown-editor .w-md-editor-text-input,.markdown-editor .w-md-editor-text,.markdown-editor .w-md-editor-text textarea,.markdown-editor .w-md-editor-text-container,.markdown-editor .w-md-editor-text-container *,.markdown-editor .w-md-editor-text-area,.markdown-editor .w-md-editor-text-area *,.markdown-editor .w-md-editor-text-input>.w-md-editor-text-pre,.markdown-editor .w-md-editor-text-input>.w-md-editor-text-pre *,.markdown-editor .w-md-editor-text-container .w-md-editor-text,.markdown-editor .w-md-editor-text-container .w-md-editor-text-pre,.enhanced-markdown-editor textarea,.enhanced-markdown-editor input,.enhanced-markdown-editor .w-md-editor textarea,.enhanced-markdown-editor .w-md-editor-text,.enhanced-markdown-editor .w-md-editor-text-input,.enhanced-markdown-editor .w-md-editor-text-area,.enhanced-markdown-editor .w-md-editor-text-container textarea,.enhanced-markdown-editor .w-md-editor-text-container .w-md-editor-text{color:#111827!important;background-color:#fff!important;font-size:16px!important;line-height:1.6!important;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif!important;border:none!important;caret-color:#111827!important}.markdown-editor .w-md-editor-preview{background-color:var(--bg-white)!important;border-left:1px solid var(--border-light)!important}.markdown-editor textarea,.markdown-editor .w-md-editor-text-container textarea,.markdown-editor .w-md-editor-text-area>.w-md-editor-text,.markdown-editor .w-md-editor-text-area textarea{color:#111827!important;background-color:#fff!important;caret-color:#111827!important}.markdown-editor .w-md-editor-text-pre .token,.markdown-editor .w-md-editor-text-pre span{color:#111827!important}.markdown-editor .w-md-editor-text::-webkit-scrollbar,.markdown-editor .w-md-editor-preview::-webkit-scrollbar{width:8px}.markdown-editor .w-md-editor-text::-webkit-scrollbar-track,.markdown-editor .w-md-editor-preview::-webkit-scrollbar-track{background:var(--bg-light)}.markdown-editor .w-md-editor-text::-webkit-scrollbar-thumb,.markdown-editor .w-md-editor-preview::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:4px}.markdown-editor .w-md-editor-text::-webkit-scrollbar-thumb:hover,.markdown-editor .w-md-editor-preview::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media (max-width: 768px){.editor-toolbar{flex-direction:column;align-items:stretch;gap:12px}.toolbar-left,.toolbar-center,.toolbar-right{justify-content:center}.view-mode-toggle{width:100%}.mode-btn{flex:1;text-align:center}.quick-insert-select{width:100%;min-width:auto}}@media (max-width: 480px){.editor-toolbar{padding:12px}.editor-stats{justify-content:space-between;width:100%}.stat-item{font-size:12px}}.markdown-editor .w-md-editor-preview h1,.markdown-editor .w-md-editor-preview h2,.markdown-editor .w-md-editor-preview h3,.markdown-editor .w-md-editor-preview h4,.markdown-editor .w-md-editor-preview h5,.markdown-editor .w-md-editor-preview h6{color:var(--text-primary)!important;margin-top:24px!important;margin-bottom:16px!important;font-weight:600!important}.markdown-editor .w-md-editor-preview h1{font-size:32px!important;border-bottom:2px solid var(--border-light)!important;padding-bottom:8px!important}.markdown-editor .w-md-editor-preview h2{font-size:28px!important}.markdown-editor .w-md-editor-preview h3{font-size:24px!important}.markdown-editor .w-md-editor-preview p{color:var(--text-primary)!important;margin-bottom:16px!important;line-height:1.7!important}.markdown-editor .w-md-editor-preview blockquote{border-left:4px solid var(--primary-blue)!important;background:var(--bg-light)!important;padding:16px 20px!important;margin:20px 0!important;border-radius:0 var(--radius-md) var(--radius-md) 0!important}.markdown-editor .w-md-editor-preview code{background:var(--bg-lighter)!important;padding:2px 6px!important;border-radius:var(--radius-sm)!important;font-size:14px!important;color:var(--text-primary)!important}.markdown-editor .w-md-editor-preview pre{background:var(--bg-lighter)!important;border:1px solid var(--border-light)!important;border-radius:var(--radius-md)!important;padding:16px!important;margin:20px 0!important;overflow-x:auto!important}.markdown-editor .w-md-editor-preview table{border-collapse:collapse!important;width:100%!important;margin:20px 0!important}.markdown-editor .w-md-editor-preview th,.markdown-editor .w-md-editor-preview td{border:1px solid var(--border-medium)!important;padding:12px!important;text-align:left!important}.markdown-editor .w-md-editor-preview th{background:var(--bg-light)!important;font-weight:600!important}.admin-section{padding:24px;max-width:100%;margin:0 auto;min-height:calc(100vh - 64px);background:#fff;color:#111827}.blog-overview{background:#fff}.overview-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.search-box{flex:1;max-width:400px;min-width:250px}.search-input{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;color:#111827;transition:all .2s ease}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input::placeholder{color:#9ca3af}.tab-buttons{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid #e5e7eb;overflow-x:auto;padding-bottom:0}.tab-btn{padding:12px 20px;border:none;background:transparent;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;white-space:nowrap}.tab-btn.active{color:#3b82f6;border-bottom-color:#3b82f6}.tab-btn:not(.active):hover{color:#111827;background:#f9fafb}.filter-controls{display:flex;gap:12px;align-items:center}.filter-select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;color:#111827;cursor:pointer;transition:all .2s ease;min-width:120px}.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.posts-section{background:#fff}.posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.post-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s ease;cursor:pointer}.post-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-2px)}.post-card.scheduled{border-left:3px solid #f59e0b}.post-card.draft{border-left:3px solid #6b7280}.post-card.published{border-left:3px solid #10b981}.post-header{margin-bottom:12px}.post-header h4{color:#111827;font-size:18px;font-weight:600;margin:0 0 8px;line-height:1.3}.post-date{color:#6b7280;font-size:13px;font-weight:500}.scheduled-date{color:#d97706}.draft-date{color:#4b5563}.post-excerpt{color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-date-info{display:flex;flex-direction:column;gap:6px;margin-top:8px}.post-date{font-size:14px;font-weight:600;color:#111827}.post-time{font-size:12px;color:#6b7280;font-weight:500}.post-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;width:fit-content}.post-status-badge.published{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.post-status-badge.scheduled{background:#fffbeb;color:#92400e;border:1px solid #fed7aa}.post-status-badge.draft{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.status-icon{font-size:10px}.post-actions{display:flex;gap:8px;justify-content:flex-end;border-top:1px solid #e5e7eb;padding-top:16px}.empty-state{text-align:center;padding:60px 20px;color:#6b7280}.empty-state h3{color:#111827;font-size:20px;font-weight:600;margin-bottom:8px}.empty-state p{font-size:14px;margin-bottom:24px;max-width:400px;margin-left:auto;margin-right:auto}.editor-form{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;display:flex;flex-direction:column;min-height:calc(100vh - 120px)}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.editor-header-left{display:flex;align-items:center;gap:16px}.editor-header-center{flex:1;text-align:center}.editor-header-center h2{color:#111827;font-size:20px;font-weight:600;margin:0}.editor-header-right{display:flex;align-items:center;gap:12px}.btn-back{background:#fff;color:#6b7280;border:1px solid #d1d5db;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;border-radius:8px;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.btn-back:hover{background:#f9fafb;color:#111827;border-color:#9ca3af}.editor-main{display:grid;grid-template-columns:1fr 320px;flex:1;min-height:0}.editor-content{padding:24px 32px;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;min-height:0;overflow-y:auto}.editor-sidebar{padding:24px;background:#f9fafb;display:flex;flex-direction:column;gap:24px;overflow-y:auto;min-height:0}.sidebar-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s ease}.sidebar-section:hover{border-color:#d1d5db}.sidebar-section h3{color:#111827;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:6px;color:#111827;font-size:14px;font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;color:#111827;transition:all .2s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.title-input{font-size:16px;font-weight:600;padding:16px 20px}.excerpt-input{min-height:80px;resize:vertical}.form-group input[type=date],.form-group input[type=time]{cursor:pointer}.form-group input[type=url]{font-family:SFMono-Regular,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}.checkbox-label{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-bottom:12px}.checkbox-label:hover{background:#f3f4f6;border-color:#d1d5db}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;margin:0}.publish-immediately-btn{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;width:100%;font-size:14px;font-weight:500;color:#111827}.publish-immediately-btn:hover{border-color:#3b82f6;background:#f9fafb}.publish-immediately-btn.active{border-color:#3b82f6;background:#eff6ff;color:#1d4ed8}.publish-immediately-btn .icon{font-size:16px}.editor-actions{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.editor-actions .btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid;background:#fff}.editor-actions .btn-primary{color:#3b82f6;border-color:#3b82f6}.editor-actions .btn-primary:hover{background:#3b82f6;color:#fff}.editor-actions .btn-secondary{color:#6b7280;border-color:#d1d5db}.editor-actions .btn-secondary:hover{background:#f9fafb;color:#111827;border-color:#9ca3af}.btn-header-save{background:#10b981;color:#fff;border:1px solid #10b981;padding:8px 16px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease}.btn-header-save:hover{background:#059669;border-color:#059669}.btn-header-save:disabled{opacity:.5;cursor:not-allowed}.readonly-input{background:#f9fafb!important;color:#6b7280!important;cursor:not-allowed}.readonly-input:hover{border-color:#d1d5db!important}.form-hint{font-size:12px;color:#6b7280;margin-top:4px;font-style:italic}.publish-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;padding:4px 8px;border-radius:6px}.status-immediate{background:#ecfdf5;color:#065f46}.status-scheduled{background:#fffbeb;color:#92400e}.status-draft{background:#f3f4f6;color:#4b5563}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.section-header h2{color:#111827;font-size:32px;font-weight:700;margin:0;letter-spacing:-.025em}.create-post-btn{background:#3b82f6;color:#fff;border:1px solid #3b82f6;padding:12px 24px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.create-post-btn:hover{background:#2563eb;border-color:#2563eb;transform:translateY(-1px)}.admin-section-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#6b7280;min-height:400px;background:#fff}.loading-spinner{width:32px;height:32px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.message{padding:16px 20px;border-radius:8px;margin-bottom:24px;font-weight:500;font-size:14px;border:1px solid}.message.success{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.message.error{background:#fef2f2;color:#991b1b;border-color:#fecaca}.writing-stats-section{margin-bottom:24px;padding:16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0}.writing-stats-section h3{color:#1e293b;font-size:14px;font-weight:600;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.stat-item{text-align:center;padding:8px;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.stat-value{display:block;font-size:18px;font-weight:700;color:#3b82f6;margin-bottom:2px}.stat-label{display:block;font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.created-date-info{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b7280;margin-top:12px;padding:8px 12px;background:#f9fafb;border-radius:6px}.created-date-info .icon{font-size:14px;color:#9ca3af}.markdown-editor{border-radius:8px;overflow:hidden;border:1px solid #d1d5db;background:#fff;flex:1;display:flex;flex-direction:column;min-height:400px}.markdown-editor .w-md-editor{border:none!important;background:#fff!important;flex:1!important;display:flex!important;flex-direction:column!important}.markdown-editor .w-md-editor-text{font-size:14px!important;line-height:1.6!important;font-family:SFMono-Regular,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace!important;color:#374151!important;padding:16px!important;flex:1!important}.markdown-editor .w-md-editor-text-container{flex:1!important;display:flex!important;flex-direction:column!important}.markdown-editor .w-md-editor-text pre{white-space:pre-wrap!important;word-wrap:break-word!important;font-family:inherit!important}@media (max-width: 1024px){.editor-main{grid-template-columns:1fr}.editor-content{border-right:none;border-bottom:1px solid #e5e7eb}.editor-sidebar{background:#fff}.posts-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width: 768px){.admin-section{padding:16px}.section-header{flex-direction:column;align-items:flex-start;gap:16px}.section-header h2{font-size:28px}.overview-controls{flex-direction:column;align-items:stretch}.search-box{max-width:none;min-width:auto}.posts-grid{grid-template-columns:1fr}.editor-header{flex-direction:column;align-items:stretch;gap:12px}.editor-header-left,.editor-header-right{justify-content:center}.editor-content{padding:16px 20px}.editor-sidebar{padding:16px}.editor-actions{padding:16px;flex-direction:column}.tab-buttons{gap:0}.tab-btn{padding:10px 16px;font-size:13px}}@media (max-width: 480px){.admin-section{padding:12px}.section-header h2{font-size:24px}.post-card{padding:16px}.editor-content{padding:12px 16px}.editor-sidebar{padding:12px}.sidebar-section,.editor-actions{padding:16px}}.btn:focus,.tab-btn:focus,.post-card:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.loading-spinner{animation-duration:2s!important;animation-iteration-count:infinite!important}}@media (prefers-contrast: high){.post-card,.editor-form,.sidebar-section{border-width:2px;border-color:#000}.btn{border-width:2px}.section-header h2,.post-header h4{color:#000}}
