:root{
  --nova-ink:#101828; --nova-muted:#667085; --nova-line:#e4e7ec;
  --nova-primary:#0b5fff; --nova-bg:#f7f8fa; --nova-topbar:#0f172a;
}
body.nova-body{background:var(--nova-bg);color:var(--nova-ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;}
.nova-topbar{background:var(--nova-topbar);}
.nova-topbar .navbar-brand,.nova-topbar .nav-link{color:#e7eaf0;}
.nova-topbar .nav-link.active{color:#fff;font-weight:600;border-bottom:2px solid var(--nova-primary);}
.nova-topbar .nav-link:hover{color:#fff;}
.nova-mark{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;
  background:var(--nova-primary);color:#fff;font-weight:700;font-size:14px;}
.nova-mark-lg{width:44px;height:44px;font-size:22px;border-radius:12px;}
.nova-main{padding:24px 24px 64px;max-width:1440px;}
.nova-footer{padding:12px 24px 24px;}
.card{border:1px solid var(--nova-line);border-radius:10px;box-shadow:0 1px 2px rgba(16,24,40,.04);}
.nova-stat-label{font-size:.78rem;color:var(--nova-muted);text-transform:uppercase;letter-spacing:.04em;}
.nova-stat-value{font-size:1.75rem;font-weight:600;line-height:1.2;}
.nova-centered{min-height:100vh;display:flex;align-items:center;justify-content:center;}
.nova-card-wrap{width:100%;max-width:420px;padding:16px;}
.nova-card{border-radius:14px;}
.nova-locale{width:auto;min-width:120px;}
.nova-filelist{max-height:260px;overflow:auto;padding-left:0;list-style:none;}
.nova-filelist li{padding:1px 0;border-bottom:1px dashed var(--nova-line);}
.nova-pre{max-height:320px;overflow:auto;background:#0f172a;color:#e7eaf0;padding:12px;border-radius:8px;}
[dir="rtl"] .nova-main{direction:rtl;}

/* --- media library (1.1.0) --- */
.nova-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;}
.nova-media-tile{overflow:hidden;margin:0;}
.nova-media-thumb{aspect-ratio:4/3;background:#f1f3f7;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.nova-media-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.nova-media-ext{font-weight:700;color:var(--nova-muted);letter-spacing:.06em;}
.nova-dropzone{border:1.5px dashed var(--nova-line);border-radius:8px;padding:12px;transition:border-color .15s,background .15s;}
.nova-dropzone.is-over{border-color:var(--nova-primary);background:#eef4ff;}
.nova-media-tile details summary::-webkit-details-marker{display:none;}

/* --- page inspector (1.2.0) --- */
.nova-tree,.nova-tree ul{list-style:none;padding-left:14px;margin:0;}
.nova-tree li{position:relative;padding:2px 0;}
.nova-tree li::before{content:'';position:absolute;left:-8px;top:12px;width:6px;border-top:1px solid var(--nova-line);}
.nova-tree>li::before{display:none;}
.nova-tree ul{border-left:1px solid var(--nova-line);}
#nova-document{max-height:520px;}
#nova-ops{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;}

/* --- preview stage (1.3.0) --- */
.nova-preview-stage{background:#eef0f4;border:1px solid var(--nova-line);border-radius:10px;padding:16px;display:flex;justify-content:center;}
.nova-preview-frame{background:#fff;border:1px solid var(--nova-line);border-radius:6px;height:70vh;max-width:100%;box-shadow:0 2px 10px rgba(16,24,40,.06);}

/* --- template designer (1.4.0) --- */
.nova-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;line-height:1.45;}
.nova-token-grid{display:grid;grid-template-columns:1fr;gap:2px;max-height:280px;overflow:auto;}
.nova-token{display:flex;align-items:center;gap:6px;padding:2px 0;border-bottom:1px dashed var(--nova-line);}
.nova-swatch{width:14px;height:14px;border-radius:3px;border:1px solid var(--nova-line);display:inline-block;flex:0 0 auto;}

/* --- publishing & SEO (1.9.0) --- */
.nova-publish-list{max-height:280px;overflow:auto;border:1px solid var(--nova-line);border-radius:6px;padding:6px 10px;}
.nova-serp{border:1px solid var(--nova-line);border-radius:8px;padding:10px 12px;background:#fff;}
.nova-serp-url{font-size:.75rem;color:#0b7a3b;word-break:break-all;}
.nova-serp-title{color:#1a0dab;font-size:1.05rem;line-height:1.3;margin:2px 0;}
.nova-serp-desc{font-size:.82rem;color:#4d5156;}
