html[data-admin] body{background:var(--bg);background-image:none;color:var(--fg);font-family:var(--font-body);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;animation:none}html[data-admin] *,html[data-admin] :after,html[data-admin] :before{transition:none}html[data-admin]{color-scheme:dark;--bg:oklch(0.07 0.02 270);--surface:oklch(0.10 0.02 270);--surface-2:oklch(0.13 0.02 270);--surface-3:oklch(0.165 0.02 270);--surface-4:oklch(0.21 0.02 270);--fg:oklch(0.955 0.006 270);--muted:oklch(0.72 0.02 270);--subtle:oklch(0.55 0.02 270);--border:oklch(0.205 0.02 270);--border-strong:oklch(0.30 0.02 270);--accent:oklch(0.55 0.20 260);--accent-strong:oklch(0.63 0.20 260);--accent-soft:oklch(0.30 0.10 260);--accent-fg:oklch(0.99 0 0);--success:oklch(0.74 0.15 155);--success-soft:oklch(0.28 0.06 155);--warning:oklch(0.80 0.14 85);--warning-soft:oklch(0.30 0.06 85);--danger:oklch(0.64 0.21 27);--danger-soft:oklch(0.30 0.08 27);--font-body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--r-sm:6px;--r:10px;--r-md:14px;--r-lg:18px;--r-pill:999px;--shadow-sm:0 1px 2px oklch(0.02 0 0/0.5);--shadow:0 2px 8px -2px oklch(0.02 0 0/0.6),0 1px 2px oklch(0.02 0 0/0.5);--shadow-md:0 8px 24px -6px oklch(0.02 0 0/0.7),0 2px 6px oklch(0.02 0 0/0.5);--shadow-lg:0 18px 50px -10px oklch(0.01 0 0/0.85);--sidebar-w:264px;--topbar-h:64px;--topbar-bg:oklch(0.07 0.02 270/0.85);--ease:cubic-bezier(0.2,0.7,0.2,1)}html[data-admin][data-theme=light]{color-scheme:light;--bg:oklch(0.98 0.005 260);--surface:oklch(0.96 0.008 260);--surface-2:oklch(0.99 0.003 260);--surface-3:oklch(0.94 0.01 260);--surface-4:oklch(0.92 0.012 260);--fg:oklch(0.16 0.02 260);--muted:oklch(0.40 0.015 260);--subtle:oklch(0.55 0.04 260);--border:oklch(0.85 0.008 260);--border-strong:oklch(0.75 0.02 260);--accent:oklch(0.50 0.19 260);--accent-strong:oklch(0.40 0.13 260);--accent-soft:oklch(0.88 0.04 260);--accent-fg:oklch(0.99 0 0);--success:oklch(0.32 0.10 155);--success-soft:oklch(0.92 0.04 155);--warning:oklch(0.38 0.11 75);--warning-soft:oklch(0.93 0.05 75);--danger:oklch(0.30 0.13 27);--danger-soft:oklch(0.93 0.04 27);--topbar-bg:oklch(0.98 0.005 260/0.85);--shadow-sm:0 1px 2px oklch(0 0 0/0.06);--shadow:0 2px 8px -2px oklch(0 0 0/0.08),0 1px 2px oklch(0 0 0/0.05);--shadow-md:0 8px 24px -6px oklch(0 0 0/0.10),0 2px 6px oklch(0 0 0/0.06);--shadow-lg:0 18px 50px -10px oklch(0 0 0/0.16)}html[data-admin] button{cursor:pointer;background:none;border:none}html[data-admin] button,html[data-admin] input,html[data-admin] select,html[data-admin] textarea{font:inherit;color:inherit}html[data-admin] a{color:inherit;text-decoration:none}html[data-admin] img,html[data-admin] svg{display:block;max-width:100%}html[data-admin] ul{list-style:none}html[data-admin] :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}html[data-admin] ::selection{background:var(--accent-soft)}html[data-admin] .display,html[data-admin] h1,html[data-admin] h2,html[data-admin] h3,html[data-admin] h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}html[data-admin] .eyebrow,html[data-admin] .mono{font-family:var(--font-mono)}html[data-admin] .eyebrow{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--subtle)}html[data-admin] .shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}html[data-admin] .main{display:flex;flex-direction:column;min-width:0}html[data-admin] .content{padding:28px 32px 56px;max-width:1480px;width:100%}html[data-admin] .page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}html[data-admin] .page-head h1{font-size:24px}html[data-admin] .page-head .eyebrow{margin-bottom:6px;display:block}html[data-admin] .sidebar{position:sticky;top:0;height:100vh;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:18px 14px;gap:6px}html[data-admin] .brand{display:flex;align-items:center;gap:10px;padding:6px 8px 18px;margin-bottom:4px;border-bottom:1px solid var(--border)}html[data-admin] .brand-mark{width:36px;height:36px;border-radius:9px;background:linear-gradient(140deg,var(--accent),var(--accent-strong));display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--accent-fg);box-shadow:var(--shadow),inset 0 1px 0 oklch(1 0 0/.15)}html[data-admin] .brand-name{font-family:var(--font-display);font-weight:600;font-size:15px;letter-spacing:-.01em}html[data-admin] .brand-role{font-family:var(--font-mono);font-size:10.5px;color:var(--subtle);letter-spacing:.04em}html[data-admin] .nav-section{margin-top:14px}html[data-admin] .nav-label{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.14em;color:var(--subtle);padding:6px 10px}html[data-admin] .nav-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--r);color:var(--muted);font-size:13.5px;font-weight:500;position:relative;width:100%;transition:background .15s var(--ease),color .15s var(--ease)}html[data-admin] .nav-item:hover{background:var(--surface-2);color:var(--fg)}html[data-admin] .nav-item.active{background:var(--surface-3);color:var(--fg)}html[data-admin] .nav-item.active:before{content:"";position:absolute;left:-14px;top:8px;bottom:8px;width:3px;background:var(--accent);border-radius:0 3px 3px 0}html[data-admin] .nav-item svg{width:17px;height:17px;flex-shrink:0;opacity:.85}html[data-admin] .nav-item .count{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;background:var(--surface-4);color:var(--muted);padding:1px 7px;border-radius:var(--r-pill)}html[data-admin] .nav-item.active .count{background:var(--accent-soft);color:var(--accent-strong)}html[data-admin] .sidebar-foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px}html[data-admin] .avatar{width:32px;height:32px;border-radius:var(--r-pill);flex-shrink:0;background:linear-gradient(140deg,oklch(.55 .18 200),oklch(.5 .2 280));display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:12.5px;color:var(--accent-fg)}html[data-admin] .who{min-width:0}html[data-admin] .who-name{font-size:13px;font-weight:500}html[data-admin] .who-mail{font-family:var(--font-mono);font-size:10.5px;color:var(--subtle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html[data-admin] .topbar{height:var(--topbar-h);position:sticky;top:0;z-index:20;background:var(--topbar-bg);backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;padding:0 32px}html[data-admin] .crumbs{font-family:var(--font-mono);font-size:12px;color:var(--subtle)}html[data-admin] .crumbs strong{color:var(--fg);font-weight:500}html[data-admin] .searchbar{margin-left:18px;flex:1;max-width:460px;position:relative}html[data-admin] .searchbar input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:9px 12px 9px 36px;font-size:13px;transition:border-color .15s,background .15s}html[data-admin] .searchbar input::placeholder{color:var(--subtle)}html[data-admin] .searchbar input:focus{outline:none;border-color:var(--accent);background:var(--surface-2)}html[data-admin] .searchbar svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--subtle)}html[data-admin] .searchbar kbd{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:10px;background:var(--surface-3);color:var(--muted);border:1px solid var(--border-strong);border-radius:4px;padding:1px 5px}html[data-admin] .topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}html[data-admin] .iconbtn{width:36px;height:36px;border-radius:var(--r);display:grid;place-items:center;color:var(--muted);border:1px solid transparent;transition:background .15s,color .15s,border-color .15s}html[data-admin] .iconbtn:hover{background:var(--surface-2);color:var(--fg)}html[data-admin] .iconbtn svg{width:17px;height:17px}html[data-admin] .dot-badge{position:relative}html[data-admin] .dot-badge:after{content:"";position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%;background:var(--accent);border:2px solid var(--surface)}html[data-admin] .btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--r);font-family:var(--font-display);font-weight:500;font-size:13px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--fg);transition:background .15s var(--ease),border-color .15s,transform .05s}html[data-admin] .btn:hover{background:var(--surface-3)}html[data-admin] .btn:active{transform:translateY(1px)}html[data-admin] .btn svg{width:15px;height:15px}html[data-admin] .btn.primary{background:var(--accent);border-color:var(--accent-strong);color:var(--accent-fg);box-shadow:0 1px 0 oklch(1 0 0/.1) inset,var(--shadow-sm)}html[data-admin] .btn.primary:hover{background:var(--accent-strong)}html[data-admin] .btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}html[data-admin] .btn.ghost:hover{background:var(--surface-2);color:var(--fg)}html[data-admin] .btn.danger{background:var(--danger-soft);border-color:color-mix(in oklch,var(--danger) 40%,transparent);color:var(--danger)}html[data-admin] .btn.danger:hover{background:color-mix(in oklch,var(--danger) 22%,var(--danger-soft))}html[data-admin] .btn.sm{padding:5px 10px;font-size:12px}html[data-admin] .btn.icon-only{padding:8px}html[data-admin] .btn.icon-only svg{width:15px;height:15px}html[data-admin] .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow)}html[data-admin] .card-pad{padding:20px}html[data-admin] .card-head{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}html[data-admin] .card-head h3{font-size:14px}html[data-admin] .card-head .eyebrow{margin-bottom:2px}html[data-admin] .kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}html[data-admin] .kpi{padding:18px 20px;position:relative;overflow:hidden}html[data-admin] .kpi .eyebrow{margin-bottom:10px}html[data-admin] .kpi .value{font-family:var(--font-display);font-weight:600;font-size:26px;letter-spacing:-.02em}html[data-admin] .kpi .delta{font-family:var(--font-mono);font-size:11.5px;margin-top:6px;display:inline-flex;align-items:center;gap:5px}html[data-admin] .kpi .delta.up{color:var(--success)}html[data-admin] .kpi .delta.down{color:var(--danger)}html[data-admin] .kpi .delta.flat{color:var(--subtle)}html[data-admin] .kpi .spark{position:absolute;right:0;bottom:0;left:0;height:38px;opacity:.7}html[data-admin] .table-wrap{overflow-x:auto}html[data-admin] table{width:100%;border-collapse:collapse;font-size:13px}html[data-admin] thead th{text-align:left;font-family:var(--font-mono);font-weight:500;font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--subtle);padding:12px 16px;border-bottom:1px solid var(--border);white-space:nowrap}html[data-admin] tbody td{padding:13px 16px;border-bottom:1px solid var(--border);vertical-align:middle}html[data-admin] tbody tr{transition:background .12s}html[data-admin] tbody tr:hover{background:var(--surface-2)}html[data-admin] tbody tr:last-child td{border-bottom:none}html[data-admin] .row-title{font-weight:500;color:var(--fg)}html[data-admin] .row-sub{font-family:var(--font-mono);font-size:11px;color:var(--subtle);margin-top:2px}html[data-admin] .badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10.5px;font-weight:500;padding:3px 8px;border-radius:var(--r-pill);border:1px solid transparent;white-space:nowrap}html[data-admin] .badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}html[data-admin] .badge.published{background:var(--success-soft);color:var(--success);border-color:color-mix(in oklch,var(--success) 35%,transparent)}html[data-admin] .badge.draft{background:var(--surface-3);color:var(--muted);border-color:var(--border-strong)}html[data-admin] .badge.scheduled{background:var(--warning-soft);color:var(--warning);border-color:color-mix(in oklch,var(--warning) 35%,transparent)}html[data-admin] .badge.danger{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in oklch,var(--danger) 35%,transparent)}html[data-admin] .badge.lang{background:var(--surface-3);color:var(--muted);border-color:var(--border-strong)}html[data-admin] .badge.lang.active{background:var(--accent-soft);color:var(--accent-strong);border-color:color-mix(in oklch,var(--accent) 35%,transparent)}html[data-admin] .field{margin-bottom:16px}html[data-admin] .field label{display:block;font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--subtle);margin-bottom:6px}html[data-admin] .input,html[data-admin] .select,html[data-admin] .textarea{width:100%;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r);padding:9px 12px;font-size:13.5px;transition:border-color .15s,background .15s}html[data-admin] .input:focus,html[data-admin] .select:focus,html[data-admin] .textarea:focus{outline:none;border-color:var(--accent);background:var(--surface)}html[data-admin] .input.mono{font-family:var(--font-mono);font-size:12.5px}html[data-admin] .textarea{resize:vertical;min-height:96px;line-height:1.55}html[data-admin] .help{font-family:var(--font-mono);font-size:11px;color:var(--subtle);margin-top:5px}html[data-admin] .row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}html[data-admin] .row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}html[data-admin] .seg{display:inline-grid;grid-auto-flow:column;gap:6px;padding:5px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}html[data-admin] .seg-tab{cursor:pointer;border:0;background:transparent;color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:9px 14px;border-radius:7px;transition:all .18s ease}html[data-admin] .seg-tab.active{background:var(--surface);color:var(--fg)}html[data-admin] .seg-tab:not(.active):hover{color:var(--fg)}html[data-admin] .editor-toolbar{display:flex;gap:2px;padding:6px;border-bottom:1px solid var(--border);background:var(--surface);border-radius:var(--r-md) var(--r-md) 0 0;flex-wrap:wrap}html[data-admin] .tb-btn{width:30px;height:30px;border-radius:var(--r-sm);display:grid;place-items:center;color:var(--muted);transition:background .12s,color .12s}html[data-admin] .tb-btn:hover{background:var(--surface-3);color:var(--fg)}html[data-admin] .tb-btn.active{background:var(--accent-soft);color:var(--accent-strong)}html[data-admin] .tb-btn svg{width:15px;height:15px}html[data-admin] .tb-sep{width:1px;background:var(--border);margin:4px}html[data-admin] .editor-body{min-height:320px;padding:20px 22px;background:var(--surface-2);border-radius:0 0 var(--r-md) var(--r-md);font-size:14.5px;line-height:1.7;color:var(--fg)}html[data-admin] .editor-body p{margin-bottom:14px}html[data-admin] .editor-body h2{font-size:19px;margin:22px 0 10px}html[data-admin] .editor-body blockquote{border-left:3px solid var(--accent);padding:8px 16px;background:var(--surface-3);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--muted);font-style:italic}html[data-admin] .editor-body code{font-family:var(--font-mono);font-size:12.5px;background:var(--surface-3);padding:1px 5px;border-radius:4px}html[data-admin] .editor-body ul{padding-left:22px;margin-bottom:14px}html[data-admin] .editor-body ul li{list-style:disc;margin-bottom:4px}html[data-admin] .form-grid{display:grid;gap:12px}html[data-admin] .form-grid .field{margin-bottom:0}html[data-admin] .form-error{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:16px;background:var(--danger-soft);border:1px solid color-mix(in oklch,var(--danger) 40%,transparent);border-radius:var(--r);color:var(--danger);font-size:12.5px}html[data-admin] .form-error svg{width:15px;height:15px;flex-shrink:0}html[data-admin] .form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}html[data-admin] .tag-checks{display:flex;flex-wrap:wrap;gap:8px 16px}html[data-admin] .tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:18px}html[data-admin] .mtiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}html[data-admin] .mtile{position:relative;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;background:var(--surface);transition:border-color .15s}html[data-admin] .mtile:hover{border-color:var(--border-strong)}html[data-admin] .mtile.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}html[data-admin] .mtile-btn{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}html[data-admin] .mtile-frame{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--surface-2)}html[data-admin] .mtile-frame img{width:100%;height:100%;object-fit:cover;display:block}html[data-admin] .mtile-frame iframe{width:100%;height:100%;border:0;display:block;transform:scale(1);pointer-events:none}html[data-admin] .tile-thumb-img{width:100%;height:100%;object-fit:cover;display:block}html[data-admin] .mtile-version{position:absolute;top:8px;left:8px;z-index:2}html[data-admin] .mtile-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px}html[data-admin] .mtile-overlay{position:absolute;bottom:40px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .15s}html[data-admin] .mtile.active .mtile-overlay,html[data-admin] .mtile:hover .mtile-overlay{opacity:1}html[data-admin] .mtile-overlay .iconbtn{background:var(--surface)}html[data-admin] .mdetail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;align-items:start}@media (max-width:980px){html[data-admin] .mdetail{grid-template-columns:1fr}html[data-admin] .mtiles{grid-template-columns:repeat(2,1fr)}}html[data-admin] .kquick{margin-top:10px}html[data-admin] .kquick .input{width:100%;padding:7px 10px;font-size:12.5px}html[data-admin] .ktask>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px}html[data-admin] .ktask>summary::-webkit-details-marker{display:none}html[data-admin] .ktask-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}html[data-admin] .tab{padding:9px 14px;font-size:13px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:6px;transition:color .15s,border-color .15s}html[data-admin] .tab:hover{color:var(--fg)}html[data-admin] .tab.active{color:var(--fg);border-bottom-color:var(--accent)}html[data-admin] .tab .badge{margin-left:2px}html[data-admin] .upload{border:1.5px dashed var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);padding:28px;text-align:center;color:var(--subtle);display:grid;place-items:center;gap:8px;min-height:168px;transition:border-color .15s,background .15s}html[data-admin] .upload:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--surface-3)}html[data-admin] .upload svg{width:24px;height:24px}html[data-admin] .toggle{position:relative;display:inline-block;width:38px;height:22px;flex-shrink:0}html[data-admin] .toggle input{opacity:0;width:0;height:0}html[data-admin] .toggle .slider{position:absolute;inset:0;background:var(--surface-4);border-radius:var(--r-pill);transition:background .18s var(--ease);cursor:pointer}html[data-admin] .toggle .slider:before{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;background:var(--fg);border-radius:50%;transition:transform .18s var(--ease)}html[data-admin] .toggle input:checked+.slider{background:var(--accent)}html[data-admin] .toggle input:checked+.slider:before{transform:translateX(16px);background:var(--accent-fg)}html[data-admin] .pill{font-family:var(--font-mono);font-size:11.5px;padding:5px 11px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--border);color:var(--muted);transition:background .12s,color .12s,border-color .12s}html[data-admin] .pill:hover{color:var(--fg);border-color:var(--border-strong)}html[data-admin] .pill.active{background:var(--accent-soft);color:var(--accent-strong);border-color:var(--accent)}html[data-admin] .pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-top:1px solid var(--border);font-size:12.5px;color:var(--muted)}html[data-admin] .pagination .pages{display:flex;gap:4px}html[data-admin] .page-btn{min-width:30px;height:30px;padding:0 8px;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:12px;color:var(--muted)}html[data-admin] .page-btn:hover{background:var(--surface-2);color:var(--fg)}html[data-admin] .page-btn.active{background:var(--accent);color:var(--accent-fg)}html[data-admin] .proj-cover{aspect-ratio:16/10;background:var(--surface-3);position:relative}html[data-admin] .proj-cover .grip{position:absolute;inset:0;background:linear-gradient(135deg,var(--accent-soft),transparent 60%)}html[data-admin] .proj-body{padding:14px 16px 16px}html[data-admin] .proj-title{font-family:var(--font-display);font-weight:600;font-size:14.5px;margin-bottom:3px}html[data-admin] .proj-meta{font-family:var(--font-mono);font-size:11px;color:var(--subtle);display:flex;gap:8px;align-items:center}html[data-admin] .inbox{display:grid;grid-template-columns:360px 1fr;min-height:560px}html[data-admin] .inbox-list{border-right:1px solid var(--border);overflow-y:auto}html[data-admin] .inbox-item{padding:14px 18px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s;position:relative}html[data-admin] .inbox-item:hover{background:var(--surface-2)}html[data-admin] .inbox-item.active{background:var(--surface-3)}html[data-admin] .inbox-item.unread:before{content:"";position:absolute;left:8px;top:22px;width:7px;height:7px;border-radius:50%;background:var(--accent)}html[data-admin] .inbox-item.unread{padding-left:24px}html[data-admin] .inbox-row1{display:flex;justify-content:space-between;gap:10px;margin-bottom:2px}html[data-admin] .inbox-from{font-weight:600;font-size:13px}html[data-admin] .inbox-date{font-family:var(--font-mono);font-size:10.5px;color:var(--subtle);white-space:nowrap}html[data-admin] .inbox-subject{font-size:13px;color:var(--fg);margin-bottom:2px}html[data-admin] .inbox-preview{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-admin] .inbox-pane{padding:26px 30px}html[data-admin] .login-wrap{min-height:100vh;display:grid;place-items:center;padding:40px 20px;position:relative;overflow:hidden}html[data-admin] .login-grid{position:absolute;inset:0;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 70% at 50% 45%,oklch(0 0 0) 0,transparent 70%);opacity:.5}html[data-admin] .login-glow{position:absolute;width:600px;height:600px;background:radial-gradient(circle,oklch(.45 .2 260/.35),transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);filter:blur(40px);pointer-events:none}html[data-admin] .login-card{position:relative;z-index:2;width:100%;max-width:410px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:36px 34px 30px}html[data-admin] .login-logo{display:flex;align-items:center;gap:12px;margin-bottom:26px}html[data-admin] .login-logo .brand-mark{width:42px;height:42px;border-radius:11px;font-size:18px}html[data-admin] .login-logo .brand-name{font-size:18px}html[data-admin] .login-card h1{font-size:22px;margin-bottom:5px}html[data-admin] .login-card .sub{font-family:var(--font-mono);font-size:11.5px;color:var(--subtle);margin-bottom:24px}html[data-admin] .login-card .field{margin-bottom:14px}html[data-admin] .login-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:12.5px}html[data-admin] .checkbox{display:inline-flex;align-items:center;gap:8px;color:var(--muted);cursor:pointer}html[data-admin] .checkbox input{width:14px;height:14px;accent-color:var(--accent)}html[data-admin] .login-card .btn.primary{width:100%;justify-content:center;padding:11px;font-size:14px}html[data-admin] .login-foot{margin-top:22px;padding-top:18px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-mono);font-size:11px;color:var(--subtle)}html[data-admin] .login-foot svg{width:13px;height:13px;color:var(--success)}@keyframes admin-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}html[data-admin] .skeleton{background:linear-gradient(90deg,var(--surface-2) 0,var(--surface-3) 40%,var(--surface-2) 80%);background-size:800px 100%;animation:admin-shimmer 1.4s linear infinite;border-radius:var(--r-sm)}html[data-admin] .empty{padding:56px 20px;text-align:center;color:var(--muted)}html[data-admin] .empty svg{width:36px;height:36px;margin:0 auto 14px;color:var(--subtle)}html[data-admin] .empty h3{font-size:15px;color:var(--fg);margin-bottom:4px}html[data-admin] .empty p{font-size:13px;max-width:320px;margin:0 auto 16px}html[data-admin] .error-banner{display:flex;gap:12px;padding:14px 16px;background:var(--danger-soft);border:1px solid color-mix(in oklch,var(--danger) 40%,transparent);border-radius:var(--r-md);color:var(--fg)}html[data-admin] .error-banner svg{width:18px;height:18px;color:var(--danger);flex-shrink:0}html[data-admin] .error-banner strong{display:block;font-size:13px;margin-bottom:2px}html[data-admin] .error-banner span{font-family:var(--font-mono);font-size:11.5px;color:var(--muted)}html[data-admin] .divider{height:1px;background:var(--border);margin:18px 0}html[data-admin] .muted{color:var(--muted)}html[data-admin] .subtle{color:var(--subtle)}html[data-admin] .flex{display:flex}html[data-admin] .between{justify-content:space-between}html[data-admin] .center{align-items:center}html[data-admin] .gap-2{gap:8px}html[data-admin] .gap-3{gap:12px}html[data-admin] .gap-4{gap:16px}html[data-admin] .mt-2{margin-top:8px}html[data-admin] .mt-3{margin-top:12px}html[data-admin] .mt-4{margin-top:16px}html[data-admin] .mt-6{margin-top:24px}html[data-admin] .mb-2{margin-bottom:8px}html[data-admin] .mb-4{margin-bottom:16px}html[data-admin] .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}html[data-admin] .grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}html[data-admin] .aside{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:18px;position:sticky;top:calc(var(--topbar-h) + 24px)}html[data-admin] .aside .eyebrow{margin-bottom:12px}html[data-admin] .aside-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}html[data-admin] .aside-row:last-child{border-bottom:none}html[data-admin] .aside-row .lbl{font-size:12.5px;color:var(--muted)}html[data-admin] .nav-section.nav-system{margin-top:18px;padding-top:14px;border-top:1px dashed var(--border)}html[data-admin] .nav-system .nav-label{display:flex;align-items:center;justify-content:space-between;gap:8px}html[data-admin] .nav-tag{font-family:var(--font-mono);font-size:9px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;background:var(--surface-3);color:var(--subtle);padding:2px 7px;border-radius:var(--r-pill);border:1px solid var(--border);white-space:nowrap}html[data-admin] .nav-external{color:var(--muted)}html[data-admin] .nav-external:hover{color:var(--fg)}html[data-admin] .nav-external .ext-mark{margin-left:auto;width:12px;height:12px;opacity:0;transition:opacity .15s var(--ease),transform .15s var(--ease)}html[data-admin] .nav-external:hover .ext-mark{opacity:.55;transform:translate(2px,-2px)}html[data-admin] .ds-redirect{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}html[data-admin] .ds-icon{width:38px;height:38px;border-radius:10px;flex-shrink:0;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center;border:1px solid color-mix(in oklch,var(--accent) 25%,transparent)}html[data-admin] .ds-icon svg{width:18px;height:18px}html[data-admin] .login-ds-link{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border);font-family:var(--font-mono);font-size:11.5px;color:var(--muted);transition:color .15s}html[data-admin] .login-ds-link:hover{color:var(--accent-strong)}html[data-admin] .login-ds-link svg{width:12px;height:12px}html[data-admin] .login-error{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;margin-bottom:16px;background:var(--danger-soft);color:var(--fg);border:1px solid color-mix(in oklch,var(--danger) 40%,transparent);border-radius:var(--r);font-size:12.5px}html[data-admin] .login-error svg{width:16px;height:16px;color:var(--danger);flex-shrink:0;margin-top:1px}html[data-admin] .login-error strong{display:block;font-size:12.5px;margin-bottom:1px}html[data-admin] .login-error span{font-family:var(--font-mono);font-size:11px;color:var(--muted)}html[data-admin] .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}html[data-admin] .cols-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}html[data-admin] .stat{display:flex;flex-direction:column;gap:4px;padding:16px}html[data-admin] .stat-num{font-family:var(--font-display);font-weight:700;font-size:28px;letter-spacing:-.02em}html[data-admin] .stat-label{font-size:12px;color:var(--muted)}html[data-admin] .cols-2 .card{padding:18px 20px}html[data-admin] .cols-2 .card h3{font-size:14px;margin-bottom:12px}html[data-admin] .list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}html[data-admin] .li-title{display:block;font-weight:600}html[data-admin] .li-sub{display:block;font-size:12px;opacity:.65}html[data-admin] .toolbar{display:flex;gap:8px;margin-bottom:12px;align-items:center;flex-wrap:wrap}html[data-admin] .toolbar .select{width:auto;min-width:150px}html[data-admin] .toolbar form{display:flex;flex:1;max-width:360px}html[data-admin] .toolbar .input{width:100%}html[data-admin] .row-link{color:var(--fg);font-weight:500}html[data-admin] .row-link:hover{color:var(--accent-strong)}html[data-admin] .badge-draft{background:var(--accent);color:var(--accent-fg)}html[data-admin] .badge-published{background:var(--success-soft);color:var(--success)}html[data-admin] .badge-archived{opacity:.6}html[data-admin] .pager{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:12px;font-size:12.5px;color:var(--muted);flex-wrap:wrap}html[data-admin] .pager a{display:inline-flex;align-items:center;height:30px;padding:0 10px;border-radius:var(--r-sm);color:var(--muted);transition:background .12s,color .12s}html[data-admin] .pager a:hover{background:var(--surface-2);color:var(--fg)}html[data-admin] .share-box{margin-top:16px;padding:16px;border:1px solid var(--border);border-radius:10px}html[data-admin] .share-title{font-weight:600;margin-bottom:8px}html[data-admin] .share-url{font-size:13px;word-break:break-all;margin-bottom:10px}html[data-admin] .share-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}html[data-admin] .phases-manager{margin-top:20px;border-top:1px solid var(--border);padding-top:16px}html[data-admin] .phase-item{border:1px solid var(--border);border-radius:10px;padding:10px 14px;margin-bottom:8px}html[data-admin] .phase-item summary{cursor:pointer;display:flex;gap:8px;align-items:center}html[data-admin] .phase-item form{margin-top:10px}html[data-admin] .phase-row-actions{margin-top:8px}html[data-admin] .phase-add{margin-top:12px}html[data-admin] .file-list{list-style:none;padding:0;margin:0 0 12px}html[data-admin] .file-row{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}html[data-admin] .file-row .muted{margin-left:auto;font-size:12px}@media (max-width:1180px){html[data-admin] .kpi-grid,html[data-admin] .stats-grid{grid-template-columns:repeat(2,1fr)}html[data-admin] .inbox{grid-template-columns:300px 1fr}}@media (max-width:860px){html[data-admin] .shell{grid-template-columns:1fr}html[data-admin] .sidebar{display:none}html[data-admin] .content{padding:20px 16px 40px}html[data-admin] .cols-2,html[data-admin] .grid-2,html[data-admin] .grid-3,html[data-admin] .inbox,html[data-admin] .kpi-grid,html[data-admin] .row-2,html[data-admin] .stats-grid{grid-template-columns:1fr}html[data-admin] .inbox-list{max-height:320px}}html[data-admin] .client-card{min-width:0}html[data-admin] .token-box{display:flex;flex-direction:column;gap:8px}html[data-admin] .token-url{display:block;padding:8px 10px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-admin] .proj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}html[data-admin] .proj-card{overflow:hidden}html[data-admin] .proj-card .grip{position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,oklch(.5 .18 260/.35),transparent 60%)}html[data-admin] .proj-year{position:absolute;left:14px;bottom:12px;font-size:11px;color:oklch(.95 0 0);text-shadow:0 1px 2px oklch(0 0 0/.6)}html[data-admin] .proj-card .proj-meta a{font-size:11px}@media (max-width:1180px){html[data-admin] .proj-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}html[data-admin] .tiptap-wrap{border:1px solid var(--border);border-radius:8px;overflow:hidden}html[data-admin] .tbar{display:flex;gap:4px;padding:6px 8px;border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center}html[data-admin] .tbtn{min-width:28px;height:28px;border:none;border-radius:6px;background:transparent;cursor:pointer;font-size:13px;color:inherit;display:grid;place-items:center}html[data-admin] .tbtn:hover{background:var(--surface-3)}html[data-admin] .tbtn.active{background:var(--accent);color:var(--accent-fg)}html[data-admin] .tbar-sep{width:1px;height:18px;background:var(--border);margin:0 4px}html[data-admin] .tbar-count{margin-left:auto;font-size:11px;color:var(--subtle);white-space:nowrap}html[data-admin] .tiptap-body{min-height:260px;padding:12px 14px;outline:none;font-size:15px;line-height:1.6}html[data-admin] .tiptap-body h2{font-size:20px;margin:14px 0 6px}html[data-admin] .tiptap-body h3{font-size:17px;margin:12px 0 4px}html[data-admin] .tiptap-body ol,html[data-admin] .tiptap-body ul{padding-left:22px;margin:6px 0}html[data-admin] .tiptap-body ul{list-style:disc}html[data-admin] .tiptap-body ol{list-style:decimal}html[data-admin] .tiptap-body blockquote{border-left:3px solid var(--border);padding-left:12px;margin:8px 0;opacity:.85}html[data-admin] .tiptap-body pre{background:rgba(127,127,127,.12);border-radius:6px;padding:10px;font-family:var(--font-mono,monospace);font-size:13px}html[data-admin] .tiptap-body h4{font-size:15px;margin:10px 0 4px}html[data-admin] .tiptap-body ul[data-type=taskList]{list-style:none;padding-left:4px}html[data-admin] .tiptap-body ul[data-type=taskList] li{display:flex;gap:8px;align-items:baseline}html[data-admin] .tiptap-body ul[data-type=taskList] input[type=checkbox]{accent-color:var(--accent)}html[data-admin] .tiptap-body ul[data-type=taskList] li[data-checked=true]>div{opacity:.55;text-decoration:line-through}html[data-admin] .tiptap-body mark{background:rgba(250,204,21,.35);border-radius:3px;padding:0 2px;color:inherit}html[data-admin] .tiptap-body table{border-collapse:collapse;margin:8px 0}html[data-admin] .tiptap-body td,html[data-admin] .tiptap-body th{border:1px solid var(--border);padding:5px 10px;min-width:60px;position:relative}html[data-admin] .tiptap-body th{background:var(--surface-2);font-family:var(--font-mono);font-size:12px;text-transform:uppercase}html[data-admin] .tiptap-body .selectedCell:after{content:"";position:absolute;inset:0;background:rgba(127,127,127,.15);pointer-events:none}html[data-admin] .tiptap-body img{max-width:100%;border-radius:6px;border:1px solid var(--border)}html[data-admin] .tiptap-body [data-youtube-video]{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:6px;border:1px solid var(--border);margin:8px 0;max-width:640px}html[data-admin] .tiptap-body [data-youtube-video] iframe{position:absolute;inset:0;width:100%;height:100%;border:0}html[data-admin] .pop{position:relative;display:inline-flex}html[data-admin] .pop-body{position:absolute;top:calc(100% + 6px);left:0;z-index:60;background:var(--surface-2,#151b2b);border:1px solid var(--border);border-radius:8px;padding:10px;box-shadow:0 8px 24px rgba(0,0,0,.4);display:flex;flex-direction:column;gap:8px;min-width:240px}html[data-admin] .pop-body .input{font-size:13px}html[data-admin] .swatches{display:flex;gap:6px;flex-wrap:wrap;max-width:180px}html[data-admin] .swatch{width:22px;height:22px;border-radius:6px;border:1px solid var(--border);cursor:pointer;padding:0}html[data-admin] .tiptap-fs{position:fixed;inset:0;z-index:90;background:var(--surface-1,#0d1220);display:flex;flex-direction:column;overflow:auto}html[data-admin] .tiptap-fs .tbar{position:sticky;top:0;background:var(--surface-1,#0d1220);z-index:91}html[data-admin] .tiptap-fs .tiptap-body{flex:1;min-height:unset;max-width:760px;margin:0 auto;width:100%}html[data-admin] .md-canvas{display:grid;grid-template-columns:1fr 1fr}html[data-admin] .md-mode-edit,html[data-admin] .md-mode-preview{grid-template-columns:1fr}html[data-admin] .md-mode-edit .md-preview,html[data-admin] .md-mode-preview .md-area{display:none}html[data-admin] .md-area{min-height:260px;padding:12px 14px;outline:none;border:none;resize:vertical;background:transparent;color:inherit;width:100%;display:block;font-size:13.5px;line-height:1.65}html[data-admin] .md-preview{min-height:260px;padding:12px 14px;overflow:auto;border-left:1px solid var(--border);font-size:15px;line-height:1.6}html[data-admin] .md-preview img{max-width:100%;border-radius:6px;border:1px solid var(--border)}html[data-admin] .md-preview h2{font-size:20px;margin:14px 0 6px}html[data-admin] .md-preview h3{font-size:17px;margin:12px 0 4px}html[data-admin] .md-preview h4{font-size:15px;margin:10px 0 4px}html[data-admin] .md-preview ol,html[data-admin] .md-preview ul{padding-left:22px;margin:6px 0}html[data-admin] .md-preview ul{list-style:disc}html[data-admin] .md-preview ol{list-style:decimal}html[data-admin] .md-preview blockquote{border-left:3px solid var(--border);padding-left:12px;margin:8px 0;opacity:.85}html[data-admin] .md-preview pre{background:rgba(127,127,127,.12);border-radius:6px;padding:10px}html[data-admin] .md-preview table{border-collapse:collapse;margin:8px 0}html[data-admin] .md-preview td,html[data-admin] .md-preview th{border:1px solid var(--border);padding:6px 10px;text-align:left}@media (max-width:720px){html[data-admin] .md-canvas{grid-template-columns:1fr}html[data-admin] .md-preview{border-left:none;border-top:1px solid var(--border)}}html[data-admin] .tiptap-body p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--subtle);float:left;height:0;pointer-events:none}html[data-admin] .field-label{display:block;font-size:13px;margin:10px 14px 6px;color:var(--subtle)}html[data-admin] .cover-preview{width:100%;border-radius:8px;border:1px solid var(--border)}html[data-admin] .cover-box{display:flex;flex-direction:column;gap:8px}html[data-admin] .editor-grid{display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start}html[data-admin] .editor-main{min-width:0}html[data-admin] .title-card{margin-bottom:14px}html[data-admin] .title-input{font-family:var(--font-display);font-size:18px;font-weight:600;padding:12px 14px}html[data-admin] .excerpt-field{margin:0 0 14px}html[data-admin] .editor-main .tiptap-wrap{margin-bottom:16px}html[data-admin] .editor-actions{border-top:1px solid var(--border);padding-top:14px}html[data-admin] .editor-actions .actions-meta{font-size:11px}html[data-admin] .back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;font-family:var(--font-mono);font-size:12px;color:var(--subtle);transition:color .15s}html[data-admin] .back-link:hover{color:var(--fg)}html[data-admin] .aside .select-sm{width:auto;padding:5px 10px;font-size:12px}html[data-admin] .aside-row-col{flex-direction:column;align-items:stretch;gap:6px}html[data-admin] .aside-row-col .lbl{display:inline-flex;align-items:center;gap:5px}html[data-admin] .aside .input-sm{padding:6px 8px;font-size:12px;width:100%}html[data-admin] .upload-sm{min-height:130px;padding:18px;cursor:pointer}html[data-admin] .upload-sm input[type=file]{display:none}html[data-admin] .upload-sm span{font-size:12px}html[data-admin] .wrap{flex-wrap:wrap}html[data-admin] .tag-add{display:flex;gap:6px;margin-top:10px}html[data-admin] .tag-add .input{flex:1;min-width:0;padding:6px 10px;font-size:12.5px}html[data-admin] .btn-block{width:100%;justify-content:center}html[data-admin] .danger-text{color:var(--danger)}html[data-admin] .danger-text:hover{background:var(--danger-soft);color:var(--danger)}html[data-admin] .btn.disabled{opacity:.45;pointer-events:none}html[data-admin] .table-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:14px 20px;border-bottom:1px solid var(--border)}html[data-admin] .table-toolbar .searchbar{margin:0;max-width:280px}html[data-admin] .table-toolbar .toolbar-right{margin-left:auto}html[data-admin] .cell-sm{font-size:12px}html[data-admin] .row-actions{justify-content:flex-end}html[data-admin] .iconbtn.sm{width:30px;height:30px}html[data-admin] .iconbtn.sm svg{width:15px;height:15px}html[data-admin] .iconbtn.danger:hover{background:var(--danger-soft);color:var(--danger)}html[data-admin] .pagination .page-btn{display:inline-flex;align-items:center;justify-content:center}html[data-admin] .pagination .page-btn svg{width:14px;height:14px}html[data-admin] .pagination .page-btn.active{pointer-events:none}@media (max-width:1100px){html[data-admin] .editor-grid{grid-template-columns:1fr}html[data-admin] .aside{position:static}}html[data-admin] .lightbox-trigger{display:block;width:100%;padding:0;cursor:zoom-in;background:none;border:none}html[data-admin] .lightbox-trigger img{display:block;width:100%}html[data-admin] dialog.admin-lightbox{border:none;border-radius:var(--radius-lg,18px);padding:0;background:transparent;max-width:min(94vw,1500px);max-height:94vh}html[data-admin] dialog.admin-lightbox::backdrop{background:oklch(0 0 0/.72);backdrop-filter:blur(2px)}html[data-admin] dialog.admin-lightbox img{display:block;max-width:100%;max-height:92vh;object-fit:contain;border-radius:var(--radius,12px);border:1px solid var(--border);cursor:zoom-out}html[data-admin] .mockup-html-preview{display:flex;flex-direction:column;gap:6px}html[data-admin] .mockup-html-preview iframe{width:100%;aspect-ratio:16/10;border:1px solid var(--border);border-radius:var(--radius-sm,8px);background:var(--surface-2)}html[data-admin] .mention-pop{position:fixed;z-index:100;background:var(--surface-2,#151b2b);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.4);padding:4px;min-width:230px;max-height:260px;overflow:auto}html[data-admin] .mention-item{display:flex;gap:8px;align-items:center;width:100%;text-align:left;background:none;border:none;color:inherit;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13px}html[data-admin] .mention-item.active,html[data-admin] .mention-item:hover{background:var(--surface-3)}html[data-admin] .mention-type{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--subtle);border:1px solid var(--border);padding:1px 5px;border-radius:4px;white-space:nowrap}html[data-admin] .modal-overlay{position:fixed;inset:0;z-index:90;background:oklch(.08 .02 270/.62);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px}html[data-admin] .modal{width:100%;max-width:560px;max-height:90vh;overflow:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:22px;box-shadow:var(--shadow-lg)}