.skeleton{display:inline-block;background:linear-gradient(90deg,#f3f4f6,#e5e7eb,#f3f4f6);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:4px}.skeleton-line{display:block;border-radius:4px}.skeleton-block{display:block}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-table{display:flex;flex-direction:column;gap:12px;padding:16px 0}.skeleton-table-header,.skeleton-table-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:12px 16px;border-bottom:1px solid #f3f4f6}.skeleton-table-header{background:#f9fafb;border-radius:6px 6px 0 0}.skeleton-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;padding:16px 0}.skeleton-card{padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.skeleton-detail{padding:24px;max-width:800px}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background:#e5e7eb}}.global-toasts{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.global-toast{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;border-radius:10px;box-shadow:0 4px 16px #0000002e;min-width:280px;max-width:420px;animation:gtoastIn .3s cubic-bezier(.16,1,.3,1);pointer-events:auto}.global-toast span{font-size:.88rem;font-weight:500;line-height:1.4}.global-toast.success{background:#10b981;color:#fff}.global-toast.error{background:#ef4444;color:#fff}.global-toast.warning{background:#f59e0b;color:#fff}@keyframes gtoastIn{0%{opacity:0;transform:translate(100%) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@media (max-width: 640px){.global-toasts{left:1rem;right:1rem;bottom:1rem}.global-toast{min-width:auto;width:100%}}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:center;z-index:9000;animation:confirmFadeIn .15s ease}.confirm-box{background:#fff;border-radius:16px;padding:2rem;width:400px;max-width:90vw;text-align:center;box-shadow:0 20px 50px #00000040;animation:confirmSlideUp .2s cubic-bezier(.16,1,.3,1)}.confirm-icon-wrap{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.confirm-icon-wrap.danger{background:#fee2e2;color:#dc2626}.confirm-icon-wrap.warning{background:#fef3c7;color:#d97706}.confirm-icon-wrap.info{background:#dbeafe;color:#2563eb}.confirm-box h3{font-size:1.1rem;font-weight:700;color:#111827;margin:0 0 .5rem}.confirm-box p{font-size:.9rem;color:#6b7280;margin:0 0 1.5rem;line-height:1.5}.confirm-btns{display:flex;gap:.75rem;justify-content:center}.confirm-btn-cancel{padding:.6rem 1.25rem;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-weight:600;font-size:.85rem;cursor:pointer;transition:background .15s}.confirm-btn-cancel:hover{background:#f3f4f6}.confirm-btn-ok{padding:.6rem 1.25rem;border-radius:8px;border:none;color:#fff;font-weight:600;font-size:.85rem;cursor:pointer;transition:background .15s}.confirm-btn-ok.danger{background:#dc2626}.confirm-btn-ok.danger:hover{background:#b91c1c}.confirm-btn-ok.warning{background:#d97706}.confirm-btn-ok.warning:hover{background:#b45309}.confirm-btn-ok.info{background:#2563eb}.confirm-btn-ok.info:hover{background:#1d4ed8}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes confirmSlideUp{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.blog-editor-page{min-height:100vh;background:#f8fafc;display:flex;flex-direction:column}.blog-editor-content{padding:1.25rem 2rem;display:grid;grid-template-columns:1fr 272px;gap:1rem;align-items:start;flex:1}.blog-editor-main{display:flex;flex-direction:column;gap:.75rem}.blog-editor-sidebar{display:flex;flex-direction:column;gap:.75rem;position:sticky;top:1rem}.blog-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.875rem}.blog-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.blog-section-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.625rem .875rem;background:none;border:none;cursor:pointer;color:#374151}.blog-section-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.blog-section-body{padding:0 .875rem .875rem}.blog-field{margin-bottom:.625rem}.blog-field:last-child{margin-bottom:0}.blog-field-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.blog-field-label{font-size:.75rem;font-weight:500;color:#6b7280}.blog-field-counter{font-size:.6875rem;font-weight:500;color:#9ca3af}.blog-field-hint{font-size:.6875rem;color:#9ca3af;margin:.2rem 0 0}.blog-input{width:100%;padding:.375rem .625rem;font-size:.8125rem;border-radius:5px;border:1px solid #e5e7eb;background:#f9fafb;color:#111827;box-sizing:border-box;font-family:inherit;transition:border-color .15s}.blog-input:focus{outline:none;border-color:#3b82f6;background:#fff}.blog-input--title{font-size:.9375rem;font-weight:500}.blog-input--textarea{resize:vertical;min-height:56px}.blog-input--code{font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem;line-height:1.6;min-height:320px}.blog-content-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.blog-content-char-count{font-size:.6875rem;color:#9ca3af}.blog-status-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.blog-status-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.blog-status-badge{display:flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:9999px;border:none;cursor:pointer;font-size:.75rem;font-weight:500;transition:opacity .15s}.blog-status-badge:hover{opacity:.85}.blog-status-badge--published{background:#d1fae5;color:#065f46}.blog-status-badge--draft{background:#fef3c7;color:#92400e}.blog-status-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.blog-status-dot--published{background:#10b981}.blog-status-dot--draft{background:#f59e0b}.blog-featured-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.8125rem;color:#374151;margin-top:.25rem}.blog-fields-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.blog-seo-bar-wrap{margin-top:.25rem}.blog-save-btn{width:100%;padding:.5rem;font-size:.8125rem}.blog-img-preview{width:100%;height:100px;-o-object-fit:cover;object-fit:cover;border-radius:5px;margin-bottom:.5rem}.blog-table-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.blog-table{width:100%;border-collapse:collapse;font-size:.875rem}.blog-table th{padding:.625rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;background:#f9fafb;border-bottom:1px solid #e5e7eb}.blog-table td{padding:.6rem 1rem;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:middle}.blog-table tr:last-child td{border-bottom:none}.blog-table tr:hover td{background:#f8fafc}.blog-dropzone{border:2px dashed #d1d5db;border-radius:8px;padding:1.25rem .875rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;margin-bottom:.5rem}.blog-dropzone:hover{border-color:#9ca3af;background:#f9fafb}.blog-dropzone--over{border-color:#3b82f6;background:#eff6ff}.blog-dropzone--loading{opacity:.6;pointer-events:none}.blog-generate-btn{width:100%;display:flex;align-items:center;justify-content:center;padding:.375rem;font-size:.8125rem;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb;color:#374151;cursor:pointer;transition:background .15s;font-family:inherit}.blog-generate-btn:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.blog-generate-btn:disabled{opacity:.5;cursor:not-allowed}.blog-score-circle{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;margin:.25rem auto 0}.blog-score-circle--red{background:#fee2e2;color:#dc2626}.blog-score-circle--amber{background:#fef3c7;color:#d97706}.blog-score-circle--green{background:#d1fae5;color:#059669}.blog-score-check{display:flex;align-items:flex-start;gap:.375rem;padding:.2rem 0;font-size:.75rem;color:#9ca3af;line-height:1.3}.blog-score-check--pass{color:#374151}.blog-faq-item{border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .625rem;margin-bottom:.375rem;background:#fafafa}.blog-faq-question{margin-bottom:.375rem}.blog-section-divider{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin:.75rem 0 .5rem;padding-bottom:.25rem;border-bottom:1px solid #f3f4f6}@media (max-width: 960px){.blog-editor-content{grid-template-columns:1fr;padding:1rem}.blog-editor-sidebar{position:static}}
