:root{--bg:#0d0d12;--sidebar:#14141c;--panel:#16161f;--panel-2:#1c1c27;--border:#262633;--border-strong:#33334a;--text:#ecedf2;--muted:#8b8ca0;--primary:#8b5cf6;--primary-2:#a855f7;--primary-soft:#241a3d;--danger:#f43f5e;--success:#22c55e;--warn:#f59e0b;--shadow:0 1px 2px rgba(0,0,0,0.3),0 8px 24px rgba(0,0,0,0.25);--radius:16px}:root[data-theme=light]{--bg:#f5f6fa;--sidebar:#ffffff;--panel:#ffffff;--panel-2:#f3f4f8;--border:#e7e9f0;--border-strong:#d9dce6;--text:#1a1c28;--muted:#6a7186;--primary:#7c3aed;--primary-2:#9333ea;--primary-soft:#f0eafe;--shadow:0 1px 2px rgba(16,24,40,0.04),0 6px 18px rgba(16,24,40,0.06)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--primary)}a,a:hover{text-decoration:none}a:hover{color:var(--primary-2)}h2,h3{letter-spacing:-.01em}code{background:var(--primary-soft);color:#c4b5fd;padding:.1rem .35rem;border-radius:5px;font-size:.85em}.small{font-size:.8rem}.muted{color:var(--muted)}.err{color:var(--danger);font-size:.82rem}.layout{display:flex;min-height:100vh}.sidebar{width:244px;flex-shrink:0;background:var(--sidebar);border-right:1px solid var(--border);padding:1.4rem 1rem;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:.6rem;padding:0 .5rem 1.4rem}.brand-logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-2));display:grid;place-items:center;color:#fff;font-weight:800;font-size:1rem;box-shadow:0 4px 14px rgba(139,92,246,.4)}.brand-name{font-weight:700;font-size:1.05rem;line-height:1.1}.brand-ver{font-size:.7rem;color:var(--muted);font-weight:600}.brand:hover .brand-name{color:var(--primary)}.nav-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);padding:.7rem .7rem .35rem}.sidebar nav a{display:flex;align-items:center;gap:.6rem;padding:.58rem .7rem;border-radius:10px;color:var(--muted);font-size:.92rem;font-weight:500}.sidebar nav a:hover{background:var(--panel-2);color:var(--text)}.sidebar nav a.active{background:linear-gradient(135deg,rgba(139,92,246,.22),rgba(168,85,247,.12));color:#fff;box-shadow:inset 0 0 0 1px rgba(139,92,246,.3)}.sidebar nav a .ic{width:18px;text-align:center}.sidebar-foot{margin-top:auto}.content{flex:1 1;padding:1.8rem 2.2rem;max-width:1180px;width:100%}.content:has(.wide-page){max-width:none}.table-scroll{overflow-x:auto}.page-title{font-size:1.5rem;margin:0 0 .4rem;font-weight:700}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.3rem 1.4rem;margin-bottom:1.3rem;box-shadow:var(--shadow);min-width:0;max-width:100%}.card h2{margin:0 0 1rem;font-size:1rem;font-weight:650}.card h3.sub{margin:1.4rem 0 .7rem;font-size:.9rem;color:var(--muted);font-weight:600}.row{display:flex;gap:1rem;flex-wrap:wrap}.grid2{grid-template-columns:1fr 1fr;grid-gap:1rem}.grid2,.grid3{display:grid;gap:1rem}.grid3{grid-template-columns:repeat(3,1fr);grid-gap:1rem}.grid4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1rem;gap:1rem}@media (max-width:780px){.grid2,.grid3,.grid4{grid-template-columns:1fr}}@media (min-width:781px) and (max-width:1100px){.grid4{grid-template-columns:repeat(2,1fr)}}label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:.3rem;font-weight:500}input,select,textarea{width:100%;padding:.55rem .7rem;border:1px solid var(--border-strong);border-radius:10px;font:inherit;background:var(--panel-2);color:var(--text);transition:border .15s,box-shadow .15s}input::placeholder{color:#5c5d70}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(139,92,246,.2)}select option{background:var(--panel-2);color:var(--text)}.field{margin-bottom:.9rem}.inline{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.btn,button{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;border:1px solid transparent;color:#fff;border-radius:10px;cursor:pointer;font:inherit;font-weight:550;background:linear-gradient(135deg,var(--primary),var(--primary-2));transition:filter .15s,transform .05s}.btn:hover,button:hover:not(:disabled){filter:brightness(1.1);text-decoration:none}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.5;cursor:default}.btn.secondary,button.secondary{background:var(--panel-2);color:var(--text);border-color:var(--border-strong)}a.btn:not(.secondary),a.btn:not(.secondary):hover,a.btn:not(.secondary):visited{color:#fff}button.secondary:hover:not(:disabled){background:var(--border)}button.danger{background:var(--danger)}button.danger.x,button.x{background:transparent;color:var(--muted);border:none;padding:.2rem .4rem}button.x:hover{color:var(--danger);filter:none}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--border);font-size:.9rem}th{color:var(--muted);font-weight:600;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--panel-2)}tr.row-selected{background:color-mix(in srgb,var(--primary) 12%,transparent)}tr.row-selected:hover{background:color-mix(in srgb,var(--primary) 18%,transparent)}.badge{font-size:.72rem;padding:.18rem .55rem;border-radius:999px;background:var(--panel-2);border:1px solid var(--border-strong);color:var(--muted);font-weight:600;display:inline-block}.badge.lvl-info{background:color-mix(in srgb,var(--success) 12%,transparent);border-color:color-mix(in srgb,var(--success) 35%,transparent);color:color-mix(in srgb,var(--success) 70%,white)}.badge.lvl-warn{background:color-mix(in srgb,var(--warn) 12%,transparent);border-color:color-mix(in srgb,var(--warn) 35%,transparent);color:color-mix(in srgb,var(--warn) 70%,white)}.badge.lvl-error{background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:color-mix(in srgb,var(--danger) 35%,transparent);color:color-mix(in srgb,var(--danger) 70%,white)}.ok-badge{color:var(--success);font-size:.85rem;font-weight:600}.gen-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.6rem;flex-wrap:wrap}.gen-row input{flex:1 1;min-width:180px}.block-editor{border:1px solid var(--border-strong);border-radius:10px;padding:.8rem;margin-bottom:.6rem;background:var(--panel-2);min-width:0;max-width:100%;overflow-x:auto;overflow-wrap:anywhere;word-break:break-word}.block-editor:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.block-editor h1,.card .block-editor h1{font-size:2rem;font-weight:800;line-height:1.2;margin:1.1rem 0 .6rem}.block-editor h2,.card .block-editor h2{font-size:1.6rem;font-weight:750;line-height:1.25;margin:1.1rem 0 .55rem}.block-editor h3,.card .block-editor h3{font-size:1.3rem;font-weight:700;line-height:1.3;margin:1rem 0 .5rem}.block-editor h4,.card .block-editor h4{font-size:1.1rem;font-weight:700;line-height:1.35;margin:.9rem 0 .45rem}.block-editor h5,.block-editor h6,.card .block-editor h5,.card .block-editor h6{font-size:1rem;font-weight:700;margin:.8rem 0 .4rem}.block-editor img{max-width:100%;height:auto}.block-editor table{max-width:100%;table-layout:fixed}.block-editor table td,.block-editor table th{overflow-wrap:anywhere;word-break:break-word}.block-editor code,.block-editor pre{white-space:pre-wrap;overflow-wrap:anywhere}.block-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem;flex-wrap:wrap;gap:.4rem}.menu-col{background:var(--panel-2);border:1px solid var(--border);border-radius:12px;padding:.8rem}.menu-col-head{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary);margin-bottom:.6rem}.menu-list{list-style:none;margin:0 0 .6rem;padding:0;display:flex;flex-direction:column;gap:.4rem;min-height:12px}.menu-item{display:flex;align-items:center;gap:.5rem;background:var(--panel);border:1px solid var(--border-strong);border-radius:9px;padding:.45rem .55rem;cursor:-webkit-grab;cursor:grab;font-size:.85rem}.menu-item.dragging{opacity:.4;border-color:var(--primary)}.menu-item .grip{color:var(--muted);cursor:-webkit-grab;cursor:grab}.menu-item-text{flex:1 1;display:flex;flex-direction:column;line-height:1.2}.menu-item-text small{color:var(--muted);font-size:.72rem}.menu-item .x{margin-left:auto}.menu-tree-item{list-style:none}.top-zone{border:1px dashed var(--border-strong);border-radius:8px;padding:.3rem .5rem;font-size:.74rem;color:var(--muted);text-align:center;margin-bottom:.5rem}.nest-zone{cursor:copy;color:var(--muted);border:1px dashed var(--border-strong);border-radius:6px;padding:0 .3rem;font-size:.8rem}.nest-zone:hover{color:var(--primary);border-color:var(--primary)}.menu-sublist{list-style:none;margin:.3rem 0 .3rem 1.1rem;padding-left:.6rem;border-left:2px solid var(--border-strong);display:flex;flex-direction:column;gap:.3rem}.menu-subitem{background:var(--panel)}.menu-add{display:flex;gap:.35rem}.menu-add input{padding:.4rem .5rem;font-size:.82rem}.empty{padding:.4rem}.editor-layout{display:flex;gap:1.3rem;align-items:flex-start;min-width:0;max-width:100%}.editor-main{flex:1 1;min-width:0;max-width:100%}.editor-aside{width:300px;flex-shrink:0;position:-webkit-sticky;position:sticky;top:1rem;align-self:flex-start;margin-left:auto}.editor-aside.collapsed{width:auto}@media (max-width:1000px){.editor-layout{flex-direction:column}.editor-aside{width:100%;position:static;margin-left:0}}.link-row{border-bottom:1px solid var(--border);padding:.4rem 0}.link-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.2rem}.link-sugg{display:flex;justify-content:space-between;align-items:center;gap:.4rem;font-size:.82rem;padding:.3rem 0;border-bottom:1px solid var(--border)}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:.7rem;gap:.7rem}.media-item{border:1px solid var(--border-strong);border-radius:10px;padding:.5rem;text-align:center;background:var(--panel-2)}.media-item.sel{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.media-item img{max-height:60px;max-width:100%;margin:0 auto .3rem;object-fit:contain}.media-name{font-size:.72rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.3rem}.btn.small,button.small{padding:.25rem .5rem;font-size:.78rem}.toast-wrap{position:fixed;top:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.6rem;width:340px;max-width:calc(100vw - 2rem)}.toast{display:flex;gap:.7rem;align-items:flex-start;background:var(--panel);border:1px solid var(--border-strong);border-radius:11px;padding:.8rem .9rem;box-shadow:var(--shadow);animation:toastIn .2s ease}@keyframes toastIn{0%{transform:translateX(20px);opacity:0}to{transform:none;opacity:1}}.toast-ic{font-size:1.1rem;line-height:1.3;flex-shrink:0;width:1.9rem;height:1.9rem;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--panel-2)}.toast--pending .toast-ic{background:color-mix(in srgb,var(--primary) 16%,var(--panel-2))}.toast--success .toast-ic{background:color-mix(in srgb,var(--success) 16%,var(--panel-2))}.toast--error .toast-ic{background:color-mix(in srgb,var(--danger) 16%,var(--panel-2))}.toast--info .toast-ic{background:color-mix(in srgb,var(--warn) 16%,var(--panel-2))}.toast-body{flex:1 1;min-width:0}.toast-title{font-weight:600;font-size:.9rem}.toast-msg{font-size:.8rem;color:var(--muted);margin-top:.15rem;white-space:pre-wrap;word-break:break-word}.toast-link{display:inline-block;margin-top:.4rem;font-size:.82rem;font-weight:600}.toast-x{background:transparent;border:none;color:var(--muted);padding:0 .2rem}.toast-x:hover{color:var(--text);filter:none}.center{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(1200px 600px at 50% -10%,rgba(139,92,246,.15),transparent),var(--bg)}.center form{width:360px}.progress-bar{height:6px;border-radius:999px;background:var(--panel-2);overflow:hidden;margin-bottom:.25rem}.progress-bar>span{display:block;width:100%;height:100%;background:var(--primary);border-radius:999px;transform:scaleX(var(--progress,0));transform-origin:left;transition:transform .3s ease}.block-editor-row{display:grid;grid-template-columns:minmax(0,1fr) 190px;grid-gap:.8rem;gap:.8rem;align-items:start;min-width:0}.block-stats{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem;flex-shrink:0}.block-stats-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary);margin-bottom:.5rem}@media (max-width:900px){.block-editor-row{grid-template-columns:1fr}}.tabs{display:flex;gap:.3rem;border-bottom:1px solid var(--border);margin-bottom:1rem;flex-wrap:wrap}.tabs .tab{padding:.55rem 1rem;font-size:.88rem;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;text-decoration:none}.tabs .tab:hover{color:var(--text)}.tabs .tab.active{color:var(--primary);border-bottom-color:var(--primary)}.domain-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.8rem;margin-bottom:.6rem}.domain-deploy-box{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem}.col-picker{position:relative}.col-picker summary{list-style:none}.col-picker summary::-webkit-details-marker{display:none}.col-picker-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:200px;background:var(--panel);border:1px solid var(--border-strong);border-radius:10px;padding:.6rem .8rem;box-shadow:var(--shadow)}mark.a7-link-hint{background:rgba(139,92,246,.35);color:inherit;border-radius:3px;padding:0 1px}::highlight(a7-link-hint){background-color:rgba(139,92,246,.35);color:inherit}.mobile-bar,.nav-backdrop,.page-editor-mobile-toolbar{display:none}@media (max-width:820px){.page-editor-mobile-toolbar{gap:.5rem;flex-wrap:wrap;top:calc(3.2rem + env(safe-area-inset-top));z-index:55;padding:.5rem 1rem;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);margin:0 -1rem .8rem}.mobile-bar,.page-editor-mobile-toolbar{display:flex;position:-webkit-sticky;position:sticky;border-bottom:1px solid var(--border)}.mobile-bar{align-items:center;gap:.7rem;top:0;z-index:60;padding:calc(.6rem + env(safe-area-inset-top)) calc(1rem + env(safe-area-inset-right)) .6rem calc(1rem + env(safe-area-inset-left));background:color-mix(in srgb,var(--sidebar) 92%,transparent);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px)}.mobile-title{font-weight:700;font-size:1rem}.burger{width:44px;height:44px;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.burger span{display:block;width:20px;height:2px;background:currentColor;border-radius:2px;transition:transform .25s,opacity .2s}body.nav-open .burger span:first-child{transform:translateY(6px) rotate(45deg)}body.nav-open .burger span:nth-child(2){opacity:0}body.nav-open .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.layout{display:block;min-height:auto}.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:70;width:min(82vw,290px);height:100dvh;padding-top:calc(1.2rem + env(safe-area-inset-top));padding-bottom:calc(1.2rem + env(safe-area-inset-bottom));padding-left:calc(1rem + env(safe-area-inset-left));transform:translateX(-100%);transition:transform .28s cubic-bezier(.22,1,.36,1);overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:8px 0 32px rgba(0,0,0,.35)}body.nav-open .sidebar{transform:none}.nav-backdrop{display:block;position:fixed;inset:0;z-index:65;background:rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity .28s}body.nav-open .nav-backdrop{opacity:1;pointer-events:auto}body.nav-open{overflow:hidden}.content{padding:1rem calc(1rem + env(safe-area-inset-right)) calc(2rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left));max-width:none}.sidebar nav a{padding:.75rem .7rem;font-size:1rem}.card{padding:1rem;border-radius:14px;margin-bottom:1rem}.page-title{font-size:1.25rem}input,select,textarea{font-size:16px;padding:.7rem .8rem}.btn,button{padding:.65rem 1rem;min-height:44px}.btn.small,button.small{min-height:36px;padding:.4rem .7rem}button.x{min-height:32px}.row{flex-direction:column;align-items:stretch;gap:.7rem}.row>.field,.row>div{width:100%!important;min-width:0!important;flex:none!important}.grid2,.grid3,.grid4{grid-template-columns:1fr}table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.toast-wrap{top:auto;bottom:calc(1rem + env(safe-area-inset-bottom));left:1rem;right:1rem;width:auto}.editor-layout{flex-direction:column}.editor-aside{width:100%;position:static}.block-editor-row{grid-template-columns:1fr}.media-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}}@media (max-width:400px){.content{padding-left:.7rem;padding-right:.7rem}.card{padding:.8rem}.page-title{font-size:1.15rem}}@media (prefers-reduced-motion:reduce){.toast{animation:none}.btn,.burger span,.nav-backdrop,.progress-bar>span,.sidebar,button,input,select,textarea{transition:none}button:active:not(:disabled){transform:none}}.tf-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);margin-bottom:.7rem}.tf-section>summary{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.7rem 1rem;cursor:pointer;font-weight:600;min-height:44px}.tf-section>summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:var(--radius)}.tf-section-body{padding:0 1rem 1rem}.tf-hint{margin:.2rem 0 .6rem}.tf-color{width:220px;max-width:100%}.tf-color-row{gap:.35rem;flex-wrap:nowrap}.tf-picker{width:40px;height:40px;padding:2px;flex:0 0 auto;cursor:pointer}.tf-hex{min-width:0;flex:1 1 auto;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85rem;padding:.45rem .5rem}.tf-state{font-weight:400;font-size:.72rem}.tf-changed{color:var(--primary)}.tf-chip{flex:0 0 auto;white-space:nowrap}.tf-palette:focus-visible,.tf-picker:focus-visible,.tf-reset:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tf-seg{border:0;margin:0 0 .9rem;padding:0;min-width:0}.tf-seg>legend{font-size:.8rem;color:var(--muted);font-weight:500;padding:0;margin-bottom:.3rem}.tf-font-list,.tf-seg-row{display:flex;flex-wrap:wrap;gap:.4rem}.tf-seg-opt{position:relative;display:block;margin:0;color:var(--text);font-size:.85rem}.tf-seg-opt>input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.tf-seg-face{display:flex;align-items:center;gap:.45rem;min-height:40px;padding:.4rem .8rem;border:1px solid var(--border-strong);border-radius:10px;background:var(--panel-2)}.tf-seg-opt>input:checked+.tf-seg-face{border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}.tf-seg-opt>input:focus-visible+.tf-seg-face{outline:2px solid var(--primary);outline-offset:2px}.tf-font-opt .tf-seg-face{flex-direction:column;align-items:flex-start;gap:.1rem;min-width:150px}.tf-palettes{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:.5rem;gap:.5rem;margin-bottom:.8rem}.tf-palette{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.25rem;text-align:left;padding:.5rem;min-height:44px;font-weight:500}.tf-palette-name{color:var(--text);font-size:.85rem}.tf-strip{display:flex;height:22px;border-radius:6px;overflow:hidden;border:1px solid var(--border-strong)}.tf-strip>i{flex:1 1}@media (max-width:640px){.tf-color{width:100%}.tf-picker{width:44px;height:44px}.tf-hex,.tf-reset{min-height:44px}.tf-reset{min-width:44px;justify-content:center}.tf-seg-face{min-height:44px}.tf-font-opt .tf-seg-face{min-width:0}.tf-font-opt{flex:1 1 100%}.tf-palettes{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.tf-palette{min-height:64px}.tf-section>summary{min-height:48px}.tf-check{min-height:44px;align-items:center;gap:.6rem}.tf-check input[type=checkbox]{width:22px!important;height:22px;flex-shrink:0}}.src-dot{display:inline-block;width:.7em;height:.7em;border-radius:50%;vertical-align:middle;border:1px solid transparent}.src-dot-ok{background:var(--success,#2ea043);border-color:color-mix(in srgb,var(--success,#2ea043) 60%,black)}.src-dot-bad{background:var(--danger,#e5362b);border-color:color-mix(in srgb,var(--danger,#e5362b) 60%,black)}