/* Catalogue Studio admin. Cool neutral canvas, white working surfaces, navy ink, brass only for state. */
@font-face{font-family:"Karla";src:url("../fonts/karla.woff2") format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("../fonts/pdf/PlayfairDisplay-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
:root{--ink:#172B4D;--ink2:#2B3F63;--brass:#A88A4C;--brass-text:#6E5726;--canvas:#F5F5F3;--panel:#FFFFFF;--line:#E3E1DC;--line2:#EFEDE9;--muted:#676259;--danger:#A1261B;--ok:#2E6B46;--warn:#8A5A0B;--focus:#2F5D9E;--ui:"Karla",system-ui,-apple-system,"Segoe UI",sans-serif;--display:"Playfair Display",Georgia,serif;--r:7px}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body.ad{margin:0;min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr);background:var(--canvas);color:var(--ink);font:15px/1.5 var(--ui)}
a{color:var(--ink2)}a:hover{color:var(--ink)}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.sr,.ad-skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ad-skip:focus{position:fixed;z-index:99;top:8px;left:8px;background:#fff;padding:8px 12px;border-radius:6px}
code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em}
code{background:var(--line2);padding:1px 5px;border-radius:4px}
h1,h2,h3{line-height:1.25}
/* sidebar */
.ad-side{position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:16px;padding:20px 14px;background:var(--panel);border-right:1px solid var(--line)}
.ad-mark{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);padding:0 8px}
.ad-mark-b{font-family:var(--display);font-size:17px;letter-spacing:.02em}
.ad-mark-s{font-size:12px;color:var(--muted)}
.ad-search input{width:100%;border:1px solid var(--line);border-radius:var(--r);padding:7px 10px;font:inherit;font-size:13px;background:var(--canvas)}
.ad-nav{display:flex;flex-direction:column;gap:1px}
.ad-nav a{padding:7px 10px;border-radius:6px;text-decoration:none;color:var(--ink);font-weight:500;font-size:14px}
.ad-nav a:hover{background:var(--canvas)}
.ad-nav a[aria-current=page]{background:var(--canvas);box-shadow:inset 3px 0 0 var(--brass);font-weight:700}
.ad-sep{height:1px;background:var(--line2);margin:7px 8px}
.ad-side-foot{margin-top:auto;display:flex;justify-content:space-between;font-size:12px;color:var(--muted);padding:0 8px}
.ad-menu{display:none}
.ad-main{padding:26px 34px 70px;min-width:0;max-width:none}
.ad--wide .ad-main{max-width:1560px}
.ad-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.ad-head h1{font-family:var(--display);font-weight:400;font-size:28px;margin:0}
.ad-sub{margin:4px 0 0;color:var(--muted);font-size:14px}
.ad-actions,.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.row.center{justify-content:center}
.ad-flash{padding:11px 14px;border-radius:var(--r);margin-bottom:16px;background:#EDF4EF;border:1px solid #CFE2D4;color:#20462E}
.ad-flash--error{background:#FBEDEB;border-color:#EDCBC6;color:#6E1A12}
.ad-toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--r);z-index:200;box-shadow:0 10px 30px rgba(0,0,0,.2);max-width:90vw}
.ad-toast--error{background:var(--danger)}
.note{padding:12px 14px;border-radius:var(--r);background:#FBF6EA;border:1px solid #EADFC4;margin-bottom:16px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}
.note--quiet{background:var(--panel);border-color:var(--line)}
.muted{color:var(--muted)}.warn{color:var(--warn)}.err{color:var(--danger)}.ok{color:var(--ok)}
.nowrap{white-space:nowrap}.grow{flex:1}.mt{margin-top:14px}.inline{display:inline}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:600;font-size:14px;line-height:1.2;padding:8px 14px;border-radius:var(--r);border:1px solid var(--ink);background:var(--ink);color:#fff;text-decoration:none;cursor:pointer;white-space:nowrap}
.btn:hover{background:#0E1D36;color:#fff}
.btn--ghost{background:var(--panel);color:var(--ink);border-color:var(--line)}
.btn--ghost:hover{background:var(--canvas);color:var(--ink);border-color:#CFCBC3}
.btn--link{background:none;border-color:transparent;color:var(--ink2);padding-left:6px;padding-right:6px;font-weight:500;text-decoration:underline;text-underline-offset:2px}
.btn--link:hover{background:none;color:var(--ink)}
.btn--danger{background:var(--danger);border-color:var(--danger)}
.btn--danger-t{color:var(--danger)!important}
.btn--sm{padding:5px 10px;font-size:13px}
.btn--icon{padding:2px 8px;background:none;color:var(--ink);border-color:transparent;font-weight:400}
.btn--block{width:100%}
.btn:disabled{opacity:.5;cursor:default}
.filebtn{position:relative;overflow:hidden}.filebtn input{position:absolute;inset:0;opacity:0;cursor:pointer}
/* forms */
.fld{display:flex;flex-direction:column;gap:5px;min-width:0}
.fld>span{font-size:13px;font-weight:600;color:var(--ink)}
.fld small{color:var(--muted);font-size:12px;line-height:1.4}
input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]),select,textarea{font:inherit;font-size:14px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:6px;padding:7px 9px;width:100%;min-width:0}
input:focus,select:focus,textarea:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px rgba(47,93,158,.15)}
textarea{resize:vertical}
input[type=color]{width:52px;height:34px;padding:2px;border:1px solid var(--line);border-radius:6px;background:#fff}
input[type=checkbox],input[type=radio]{accent-color:var(--ink);width:16px;height:16px}
.chk{display:inline-flex;align-items:center;gap:7px;font-size:14px;cursor:pointer}
.chks{display:flex;flex-direction:column;gap:6px}.chks--wrap{flex-direction:row;flex-wrap:wrap;gap:6px 16px}
.chklist{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;max-height:260px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.chklist .chk{padding-left:calc(var(--d,0) * 14px)}
.g2,.g3,.g4{display:grid;gap:14px 18px;align-items:start}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.span2{grid-column:span 2}.span3{grid-column:1/-1}
.stack{display:flex;flex-direction:column;gap:12px;max-width:640px}
.grp{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:16px 18px 18px;margin:0 0 16px}
.grp legend{font-weight:700;padding:0 6px;font-size:15px}
.card-p{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin-bottom:18px}
.card-p h2,.side-p h2{font-size:16px;margin:0 0 10px}
.card-p summary{cursor:pointer;list-style:none}.card-p summary::-webkit-details-marker{display:none}
.card-p summary .inline-h{display:inline;font-size:16px;margin:0}.card-p summary::after{content:" +";color:var(--muted)}.card-p[open] summary::after{content:" −"}
.card-p[open] summary{margin-bottom:12px}
.h2{font-size:17px;margin:26px 0 10px}
.tabs{display:flex;gap:4px;flex-wrap:wrap;margin:-4px 0 18px;position:sticky;top:0;background:var(--canvas);padding:6px 0;z-index:5}
.tabs a{padding:6px 11px;border-radius:6px;text-decoration:none;color:var(--ink);font-size:14px;border:1px solid var(--line);background:var(--panel)}
/* tables */
.tblwrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.tblwrap--tall{max-height:420px}
.tbl{width:100%;border-collapse:collapse;font-size:14px;background:var(--panel)}
.tbl th,.tbl td{padding:9px 12px;border-bottom:1px solid var(--line2);text-align:left;vertical-align:middle}
.tbl thead th{position:sticky;top:0;background:#FAFAF8;font-size:12px;font-weight:700;color:var(--muted);z-index:1}
.tbl tr:last-child td{border-bottom:0}
.tbl--sm th,.tbl--sm td{padding:6px 10px;font-size:13px}
.tbl--edit td{padding:4px 6px}.tbl--edit input,.tbl--edit select{padding:5px 7px}
.w1{width:1%}
/* badges */
.bdg{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--line2);color:var(--ink);white-space:nowrap}
.bdg--published,.bdg--active{background:#E3F0E7;color:#1F4A2E}
.bdg--changed{background:#FBF1DA;color:#6B4808}
.bdg--draft,.bdg--unpublished,.bdg--muted{background:var(--line2);color:var(--muted)}
.bdg--archived,.bdg--discontinued{background:#ECEAE6;color:#6B655B}
.bdg--warn,.bdg--hidden{background:#FBE9E3;color:#7A2E19}
.bdg--flag,.bdg--coming-soon{background:#EEF1F7;color:var(--ink2)}
/* filters, bulk */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;align-items:center}
.filters input,.filters select{width:auto;max-width:220px}.filters .grow{flex:1;min-width:200px;max-width:none}
.bulkbar{position:sticky;top:0;z-index:6;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px;margin-bottom:10px;background:var(--ink);color:#fff;border-radius:var(--r)}
.bulkbar select,.bulkbar input{width:auto}
.bulkbar .btn--link{color:#fff}.bulkbar .btn--danger-t{color:#FFD9D3!important}.bulkbar .btn:not(.btn--link){background:#fff;color:var(--ink);border-color:#fff}
.bulkbar span[data-for]{display:inline-flex;gap:6px}
.bulkbar span[hidden]{display:none}
.listhead{display:flex;justify-content:space-between;gap:12px;margin:4px 0 10px;font-size:13px}
.empty{padding:40px 20px;text-align:center;background:var(--panel);border:1px dashed var(--line);border-radius:10px;color:var(--muted)}
.pager{display:flex;gap:4px;margin-top:16px;flex-wrap:wrap}.pager a,.pager span{padding:5px 10px;border-radius:6px;border:1px solid var(--line);background:var(--panel);text-decoration:none;color:var(--ink);font-size:14px}.pager [aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}
/* thumbs & grids */
.th{display:block;width:56px;height:56px;object-fit:contain;background:#F2EFEA;border-radius:5px;border:1px solid var(--line2)}
.th--sm{width:40px;height:40px}.th--empty{background:repeating-linear-gradient(45deg,#F2EFEA 0 6px,#EAE6DF 6px 12px)}
.th--pdf{display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:var(--muted)}
.th-remote{position:absolute;top:6px;right:6px;font-size:10px;font-weight:700;background:#FBF1DA;color:#6B4808;border-radius:4px;padding:1px 5px}.th-failed{background:#FBE9E3;color:#7A2E19}
.pgrid,.mgrid,.cgrid{list-style:none;padding:0;margin:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(168px,1fr))}
.pcard,.mgrid li,.cgrid li{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px}
.pcard a,.mgrid a,.cgrid a{display:block;text-decoration:none;color:var(--ink)}
.pcard-img,.mgrid-img,.cgrid-img{position:relative;display:block;aspect-ratio:1/1;margin-bottom:8px}
.pcard-img .th,.mgrid-img .th,.cgrid-img .th{width:100%;height:100%}
.pcard b,.mgrid b,.cgrid b{display:block;font-size:13.5px;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.pcard small,.mgrid small,.cgrid small{color:var(--muted);font-size:12px}
.pcard-sel{position:absolute;top:14px;left:14px;z-index:2;background:#fff;border-radius:4px;padding:2px;line-height:0}
.pcard-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.pcard[draggable=true]{cursor:grab}.dragging{opacity:.4}
.rows{list-style:none;padding:0;margin:0}.rows a{display:flex;gap:12px;align-items:center;padding:8px 4px;border-bottom:1px solid var(--line2);text-decoration:none;color:var(--ink)}.rows b{display:block}.rows small{color:var(--muted)}
.plain{list-style:none;padding:0;margin:0}.plain li{padding:5px 0;border-bottom:1px solid var(--line2)}
.kv{list-style:none;padding:0;margin:0}.kv li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--line2)}.kv b{font-variant-numeric:tabular-nums}
.kv--sm li{font-size:13px}
.dash{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dash .card-p{margin:0}.card-p--wide{grid-column:1/-1}
/* product & form layouts */
.pform{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.sticky{position:sticky;top:16px;display:flex;flex-direction:column;gap:14px}
.savebox{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:8px}
.side-p{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px}
.side-p h3{font-size:13px;margin:10px 0 4px;color:var(--muted)}
.pv-img .pv{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#F2EFEA;border-radius:6px}
.mrows{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-direction:column;gap:6px}
.mrow{display:flex;gap:10px;align-items:center;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:#fff}
.mrow[draggable=true]{cursor:grab}
.mrow-t{flex:1;min-width:0;font-size:14px}.mrow-t small{display:block;color:var(--muted);font-size:12px}
.mrow select{width:auto}.drag{color:#B3ADA3;letter-spacing:-2px;user-select:none}
.mrow-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mrows--compact .mrow{padding:4px 8px}
.mpick-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.danger{margin-top:30px;padding:16px 18px;border:1px solid #EDCBC6;border-radius:10px;background:#FFFBFA}.danger h2{font-size:15px;margin:0 0 6px}
.danger-row{margin-top:24px}
.tree{list-style:none;padding:0;margin:0;background:var(--panel);border:1px solid var(--line);border-radius:10px}
.tree-row{border-bottom:1px solid var(--line2);padding:2px 12px 2px calc(12px + var(--d) * 22px)}
.tree-row summary{display:flex;align-items:center;gap:10px;padding:8px 0;cursor:pointer}
.tree-name{font-weight:600}.tree-act{margin-left:auto;display:flex}.tree-edit{padding:4px 0 14px;display:flex;flex-direction:column;gap:10px}
.is-archived{opacity:.6}
/* media */
.drop{border:2px dashed #CFCAC0;border-radius:12px;padding:22px;text-align:center;background:var(--panel);margin-bottom:16px}
.drop.over{border-color:var(--brass);background:#FBF7EE}
.drop p{margin:0 0 8px}
.queue{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin-bottom:16px}
.queue-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.queue-head h2{font-size:15px;margin:0}
.queue ol{list-style:none;margin:8px 0 0;padding:0;max-height:300px;overflow:auto}
.q{display:grid;grid-template-columns:minmax(0,1fr) auto 120px auto auto;gap:10px;align-items:center;padding:5px 0;border-bottom:1px solid var(--line2);font-size:13px}
.q-n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.q-s{color:var(--muted)}
.q-bar{height:5px;background:var(--line2);border-radius:3px;overflow:hidden}.q-bar span{display:block;height:100%;background:var(--brass)}
.q--done .q-s{color:var(--ok)}.q--error .q-s{color:var(--danger)}
.mdetail{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
.focal{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.focal img{display:block;max-width:100%;max-height:70vh;background:#F2EFEA;border-radius:8px}
.focal-dot{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 2px var(--ink);pointer-events:none}
.mdetail-side{display:flex;flex-direction:column;gap:14px}
/* dialogs */
.dlg{border:0;border-radius:12px;padding:22px;max-width:520px;width:calc(100% - 32px);box-shadow:0 24px 60px rgba(23,43,77,.28);color:var(--ink)}
.dlg--wide{max-width:900px}.dlg::backdrop{background:rgba(23,43,77,.4)}
.dlg h2{margin:0 0 10px;font-size:19px}.dlg-act{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;flex-wrap:wrap}
.pickgrid{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;max-height:55vh;overflow:auto}
.pickgrid button{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:6px;border:2px solid transparent;border-radius:8px;font-size:12px;width:100%;box-sizing:border-box}
.pickgrid button[aria-pressed=true]{border-color:var(--ink);background:#EEF1F7}.pickgrid button:focus-visible{outline:2px solid var(--focus)}
.pickgrid img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#F2EFEA;border-radius:5px}
.pickgrid span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ppick{list-style:none;padding:0;margin:8px 0 0;max-height:52vh;overflow:auto;border:1px solid var(--line);border-radius:8px}
.ppick label{display:grid;grid-template-columns:20px 40px 1fr;gap:10px;align-items:center;padding:6px 10px;border-bottom:1px solid var(--line2);cursor:pointer}
.ppick img{width:40px;height:40px;object-fit:contain;background:#F2EFEA;border-radius:4px}.ppick b{display:block;font-size:14px}.ppick small{color:var(--muted)}
.progress{height:8px;background:var(--line2);border-radius:4px;overflow:hidden;margin:6px 0}.progress span{display:block;height:100%;width:0;background:var(--brass);transition:width .3s}
.importsum{display:grid;grid-template-columns:repeat(6,minmax(80px,1fr));gap:8px;margin:14px 0}.importsum div{background:var(--canvas);border-radius:8px;padding:10px;text-align:center;font-size:12px;color:var(--muted)}.importsum b{display:block;font-size:22px;color:var(--ink)}
/* templates */
.tgrid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:16px}
.tgrid li{display:grid;grid-template-columns:150px 1fr;gap:16px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px}
.tgrid p{margin:4px 0;font-size:13px}.tthumb{display:block;line-height:0;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.tplpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-bottom:14px}
.tplcard{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}
.tplcard:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.tplcard b{display:block}.tplcard small{display:block;font-size:12px;line-height:1.35}
/* builder */
.b-head{margin-bottom:12px}
.save--ok{color:var(--ok)}.save--err{color:var(--danger);font-weight:600}
.conflict{padding:12px 14px;margin-bottom:12px;background:#FBEDEB;border:1px solid #EDCBC6;border-radius:8px}
.b-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,44%);gap:22px;align-items:start}
.b-steps{position:sticky;top:0;z-index:5;display:flex;gap:2px;flex-wrap:wrap;background:var(--canvas);padding:6px 0 10px}
.b-steps a{padding:5px 10px;border-radius:6px;font-size:13px;text-decoration:none;color:var(--muted);border:1px solid transparent}
.b-steps a.on{color:var(--ink);background:var(--panel);border-color:var(--line);font-weight:700}
.b-sec{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin-bottom:18px;scroll-margin-top:56px}
.b-sec>h2{font-size:18px;margin:0 0 12px}.b-sec h3{font-size:15px;margin:18px 0 8px}
.b-sec .grp{background:#FCFCFB}
.seg{display:flex;flex-wrap:wrap;gap:0;border:0;padding:0;margin:0 0 12px}
.seg label{cursor:pointer}.seg input{position:absolute;opacity:0}
.seg span{display:block;padding:7px 12px;border:1px solid var(--line);margin-left:-1px;background:#fff;font-size:14px}
.seg label:first-child span{border-radius:7px 0 0 7px;margin-left:0}.seg label:last-child span{border-radius:0 7px 7px 0}
.seg input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}.seg input:focus-visible+span{outline:2px solid var(--focus);outline-offset:1px}
.arrange-list,.fieldlist,.lb-pages{list-style:none;padding:0;margin:8px 0;display:flex;flex-direction:column;gap:4px;max-height:520px;overflow:auto}
.arr-group{font-size:12px;font-weight:700;color:#6E5726;padding:8px 2px 2px}
.is-repeat{opacity:.75}
.fieldlist .mrow input:not([type=checkbox]){max-width:220px;margin-left:auto}
.fieldlist .chk{min-width:150px}
.lbp{border:1px solid var(--line);border-radius:8px;background:#fff}
.lbp-h{display:flex;gap:10px;align-items:center;padding:8px 10px;cursor:grab}
.lbp-b{padding:4px 14px 14px;border-top:1px solid var(--line2)}
.b-preview{position:sticky;top:12px;height:calc(100vh - 24px);display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.b-ptool{display:flex;gap:6px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line);flex-wrap:wrap}.b-ptool select{width:auto;font-size:13px;padding:4px 6px}
.b-preview iframe{flex:1;width:100%;border:0;background:#E7E5E1}
.fname{font-size:14px}.pubbox{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:8px;background:#FCFCFB}
.pfbox{margin-top:12px}.pfbox h4{margin:12px 0 4px;font-size:14px}.pf{margin:0;padding-left:18px;font-size:14px}.pf--block{color:var(--danger)}.pf--warn{color:#6B4808}.pf--info{color:var(--muted)}
.sharelist{list-style:none;padding:0;margin:0 0 12px}.sharelist li{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line2)}
.copyfield{max-width:520px;background:var(--canvas)!important}
.qrprev{display:block;width:160px;height:160px;border:1px solid var(--line);border-radius:6px;image-rendering:pixelated}
/* login */
.ad-login{margin:0;min-height:100vh;display:grid;place-items:center;background:var(--canvas);font:15px/1.5 var(--ui);color:var(--ink)}
.ad-login main{width:min(380px,calc(100% - 32px));background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px}
.ad-login h1{font-size:20px;margin:6px 0 18px}
/* responsive */
@media (max-width:1200px){.b-grid{grid-template-columns:1fr}.b-preview{position:relative;height:70vh;top:0}.pform,.mdetail{grid-template-columns:1fr}.dash{grid-template-columns:1fr 1fr}}
@media (max-width:860px){body.ad{grid-template-columns:1fr}.ad-side{position:fixed;inset:0 auto 0 0;width:260px;z-index:50;transform:translateX(-100%);transition:transform .2s}.menu-open .ad-side{transform:none;box-shadow:0 0 0 100vw rgba(0,0,0,.3)}
.ad-menu{display:block;position:fixed;top:10px;right:10px;z-index:60;border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 10px;font:inherit}
.ad-main{padding:52px 14px 60px}.g3,.g4{grid-template-columns:1fr 1fr}.dash{grid-template-columns:1fr}.tgrid{grid-template-columns:1fr}.importsum{grid-template-columns:repeat(3,1fr)}.q{grid-template-columns:1fr auto}.q-bar{grid-column:1/-1}}
@media (max-width:560px){.filters .grow{flex-basis:100%}.g2,.g3,.g4{grid-template-columns:1fr}.span2{grid-column:auto}.tgrid li{grid-template-columns:1fr}.filters input,.filters select{max-width:none;flex:1 1 140px}.pgrid,.mgrid,.cgrid{grid-template-columns:repeat(2,1fr)}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
