/* System 12 styles: metro archive digitization. All classes prefixed a12-. */
.a12-pb{position:relative;height:18px;background:var(--panel-3);border-radius:9px;overflow:hidden;min-width:90px}
.a12-pb i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#b45309,#7c2d12);border-radius:9px}
.a12-pb.mid i{background:linear-gradient(90deg,#d97706,#b45309)}.a12-pb.hi i{background:linear-gradient(90deg,#e11d48,#9f1239)}
.a12-pb.dg i{background:linear-gradient(90deg,#10b981,#047857)}
.a12-pb span{position:relative;display:block;text-align:right;padding-right:7px;font-size:.72rem;font-weight:700;line-height:18px;color:var(--ink);font-variant-numeric:tabular-nums}
.a12-pb.thin{height:12px;margin-top:4px}.a12-pb.thin span{line-height:12px;font-size:.66rem}
.a12-occ{font-size:.78rem;color:var(--ink-2);display:block;margin-bottom:2px}
.a12-exp{color:var(--bad);font-weight:600}
.a12-hash{font-size:.72rem;word-break:break-all;background:var(--panel-3)}
.a12-dcard{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.a12-dline{display:flex;gap:9px;align-items:flex-start;font-size:.88rem;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:9px 11px}
.a12-dline .ic{flex:0 0 auto;margin-top:2px;color:var(--brand-2)}
.a12-dline.bad{background:#fff1f2;border-color:#fecdd3}.a12-dline.bad .ic{color:var(--bad)}
.a12-warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e;border-radius:9px;padding:8px 10px;margin-top:8px}

/* steppers (acts, transfer packages) */
.a12-steps{list-style:none;display:flex;flex-direction:column;gap:2px;margin:6px 0 4px;counter-reset:s}
.a12-steps li{display:flex;gap:10px;align-items:flex-start;position:relative;padding:6px 0}
.a12-steps li i{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--panel-3);color:var(--ink-2);font-style:normal;font-weight:700;font-size:.78rem;flex:0 0 auto;border:2px solid var(--border-2)}
.a12-steps li i .ic{width:14px;height:14px}
.a12-steps li div{display:flex;flex-direction:column;min-width:0}.a12-steps li b{font-size:.88rem}.a12-steps li span{font-size:.78rem;color:var(--ink-2)}
.a12-steps li.done i{background:var(--good);border-color:var(--good);color:#fff}
.a12-steps li.cur i{background:#fffbeb;border-color:var(--warn);color:#b45309;box-shadow:0 0 0 4px rgba(217,119,6,.15)}
.a12-steps li.cur b{color:#b45309}
.a12-steps.h{flex-direction:row;flex-wrap:wrap;gap:8px 18px;margin:12px 0 6px}
.a12-steps.h li{flex:1 1 160px}

/* dashboard */
.a12-lang{margin:0}
.a12-qs{display:flex;gap:8px;padding:10px;margin-bottom:14px;align-items:center}
.a12-qs .search{flex:1;height:40px;background:#fff}
.a12-fulls{display:flex;flex-direction:column;gap:10px;max-height:430px;overflow:auto;padding-right:4px}
.a12-full{cursor:pointer;padding:6px 8px;border-radius:10px}.a12-full:hover{background:var(--panel-2)}
.a12-fh{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:.86rem;min-width:0}
.a12-fh b{color:#7c2d12;flex:0 0 auto}.a12-fh span:not(.st){flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-2)}
.a12-dgn{text-align:center;margin-top:-6px}.a12-dgn b{display:block;font-size:1.8rem;color:#047857}.a12-dgn span{font-size:.8rem;color:var(--ink-2)}
.a12-nc li{cursor:pointer}.a12-nc li:hover b{color:var(--brand)}
.a12-nc li>.ic{color:var(--muted)}

/* overview: access matrix, roles */
.a12-mtx td,.a12-mtx th{text-align:center}.a12-mtx td:first-child,.a12-mtx th:first-child,.a12-mtx td:nth-child(2),.a12-mtx th:nth-child(2){text-align:left}
.a12-mtx th .ic{width:12px;height:12px;color:var(--warn)}
.a12-mx{padding:4px!important}
.a12-lv{display:inline-grid;place-items:center;width:30px;height:28px;border-radius:7px;font-weight:800;font-size:.8rem;font-style:normal;border:1px solid transparent}
.a12-lv.l0{background:var(--panel-3);color:var(--muted)}.a12-lv.l1{background:#ecfdf5;color:#047857;border-color:#a7f3d0}
.a12-lv.l2{background:#fffbeb;color:#b45309;border-color:#fde68a}.a12-lv.l3{background:#fff1f2;color:#be123c;border-color:#fecdd3}
button.a12-lv:not(:disabled):hover{transform:scale(1.08);box-shadow:var(--shadow-card)}
.a12-legend{display:flex;flex-wrap:wrap;gap:8px 18px;padding:10px 14px;border-top:1px solid var(--border);font-size:.82rem;align-items:center}
.a12-legend span{display:inline-flex;align-items:center;gap:6px}
.a12-roles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.a12-role{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px}
.a12-role span{font-size:.82rem;color:var(--ink-2)}.a12-role em{font-style:normal;font-size:.78rem;font-weight:700;color:#7c2d12}

/* fonds */
.a12-create{margin-bottom:14px}
.a12-fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.a12-fcard{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-card);border-top:4px solid #b45309}
.a12-fcard.closed{border-top-color:#94a3b8;background:linear-gradient(#fafafa,#fff)}
.a12-fch{display:flex;align-items:center;gap:6px}
.a12-fno{font-family:var(--mono);font-weight:800;color:#7c2d12;background:#fdf2e9;border-radius:7px;padding:2px 8px;margin-right:auto}
.a12-fcard h3{font-size:.98rem;line-height:1.3}
.a12-fst{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;text-align:center;background:var(--panel-2);border-radius:10px;padding:8px 4px;margin:4px 0}
.a12-fst div{display:flex;flex-direction:column;font-size:.72rem;color:var(--ink-2)}.a12-fst b{font-size:1.1rem;color:var(--ink)}
.a12-fca{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}

/* registration & scan */
.a12-dev{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;padding:5px 10px;border-radius:999px;background:#ecfdf5;color:#047857}
.a12-dev.bad{background:#fff1f2;color:#be123c}.a12-dev .ic{width:14px;height:14px}
.a12-scan .card-b .fgrid{grid-template-columns:1fr 1fr}
.a12-mode{margin-bottom:10px}
.a12-loc{line-height:1.55;background:var(--panel-2);border-radius:9px;padding:8px 10px}.a12-loc .ic{width:14px;height:14px}
.a12-scanbar{position:relative;height:30px;margin-top:10px;background:#1f2937;border-radius:8px;overflow:hidden;color:#e5e7eb;font-size:.8rem;display:flex;align-items:center;padding:0 10px}
.a12-scanbar i{position:absolute;top:0;bottom:0;width:30%;background:linear-gradient(90deg,transparent,rgba(52,211,153,.55),transparent);animation:a12scan 1.1s linear infinite}
.a12-scanbar span{position:relative}
@keyframes a12scan{from{left:-30%}to{left:100%}}
.a12-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.a12-thumbs figure{width:78px;text-align:center}
.a12-thumbs img,.a12-pdfph{width:78px;height:110px;object-fit:cover;border-radius:6px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-card);animation:pop .2s}
.a12-pdfph{display:grid;place-items:center;align-content:center;gap:4px;color:var(--bad);font-weight:700;font-size:.8rem}
.a12-thumbs figcaption{font-size:.68rem;color:var(--ink-2);font-family:var(--mono)}
.a12-sum{margin-top:8px}
.a12-okline{display:flex;gap:9px;align-items:flex-start;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;border-radius:10px;padding:9px 11px;font-size:.85rem}
.a12-okline div{display:flex;flex-direction:column;min-width:0}.a12-okline code{font-size:.72rem}

/* approval */
.a12-appr{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;align-items:start}
.a12-queue{list-style:none;display:flex;flex-direction:column;gap:6px;max-height:640px;overflow:auto}
.a12-queue li{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.a12-queue li:hover{border-color:var(--border-2)}.a12-queue li.on{border-color:#b45309;box-shadow:0 0 0 3px rgba(180,83,9,.12)}
.a12-queue b{font-family:var(--mono);font-size:.84rem;color:#7c2d12}.a12-queue span{font-size:.86rem}.a12-queue em{font-style:normal;font-size:.75rem;color:var(--ink-2)}
.a12-apv{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:16px;min-width:0}
.a12-apvh{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.a12-apvh h3{font-size:1.02rem}
.a12-apg{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.a12-apg figure{width:210px;text-align:center}
.a12-apg img,.a12-apg .a12-pdfph{width:210px;height:297px;object-fit:contain;background:#f8fafc;border:1px solid var(--border);border-radius:8px}
.a12-apg figcaption{font-size:.74rem;color:var(--ink-2);font-family:var(--mono);margin-top:3px}
.a12-integ{display:flex;gap:10px;align-items:flex-start;border-radius:12px;padding:10px 12px;font-size:.88rem}
.a12-integ>.ic{width:22px;height:22px;flex:0 0 auto}
.a12-integ div{display:flex;flex-direction:column;min-width:0}.a12-integ span{font-size:.8rem;overflow-wrap:anywhere}
.a12-integ.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.a12-integ.bad{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}
.a12-integ code{font-size:.72rem}

/* search centre */
.a12-sf{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;align-items:end}
.a12-sf label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;color:var(--ink-2);min-width:0}
.a12-sf label.a12-sq{grid-column:span 2}
.a12-sf input:not([type=checkbox]),.a12-sf select{height:34px;border:1px solid var(--border-2);border-radius:9px;padding:0 8px;background:#fff;font-weight:400;color:var(--ink);min-width:0;width:100%}
.a12-sf label.chk{flex-direction:row;align-items:center;height:34px}
.a12-bulk{margin-top:12px}

/* viewer */
.a12-vs{height:42px;background:#fff}
.a12-vlist{list-style:none;margin-top:8px}.a12-vlist li{padding:8px 10px;border-radius:8px;cursor:pointer;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.a12-vlist li:hover{background:var(--panel-2)}
.a12-h3{display:flex;align-items:center;gap:8px;font-size:1rem;margin:18px 2px 10px;flex-wrap:wrap}.a12-h3 .ic{color:#7c2d12}
.a12-vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.a12-vcard{display:flex;flex-direction:column;gap:4px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px;font-size:.84rem}
.a12-vcard:hover{border-color:#b45309;box-shadow:var(--shadow-card)}
.a12-vcard b{font-family:var(--mono);font-size:.8rem;color:#7c2d12}.a12-vcard>span:not(.st):not(.a12-vth){color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.a12-vth{display:grid;place-items:center;height:190px;background:var(--panel-3);border-radius:8px;overflow:hidden;color:var(--muted)}
.a12-vth img{width:100%;height:100%;object-fit:cover;object-position:top}
.a12-vwrap{display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px;align-items:start}
.a12-vside{display:flex;flex-direction:column;gap:12px;min-width:0}
.a12-dl{grid-template-columns:minmax(100px,40%) 1fr;font-size:.86rem}
.a12-vmain{background:#1f2937;border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;min-width:0;min-height:560px}
.a12-vbar{display:flex;align-items:center;gap:4px;padding:8px 10px;background:#111827;color:#e5e7eb;flex-wrap:wrap}
.a12-vbar .iconbtn{color:#e5e7eb;font-size:1.3rem}.a12-vbar .iconbtn:hover{background:#374151;color:#fff}
.a12-vbar .btn.ghost{background:#1f2937;border-color:#374151;color:#e5e7eb}
.a12-vbar span{font-size:.84rem;font-variant-numeric:tabular-nums;min-width:52px;text-align:center}
.a12-vstage{flex:1;overflow:auto;padding:18px;display:flex;justify-content:center;align-items:flex-start;max-height:74vh}
.a12-page{transition:width .15s,transform .2s;box-shadow:0 12px 30px rgba(0,0,0,.45);background:#fff;flex:0 0 auto;max-width:none}
.a12-page img{display:block;width:100%;height:auto}
.a12-vstage .a12-page{width:100%}
.a12-pdf{width:100%;height:70vh;border:0;background:#fff;border-radius:6px}
.a12-vthumbs{display:flex;gap:8px;padding:10px;background:#111827;overflow-x:auto}
.a12-vthumbs button{position:relative;width:60px;height:84px;border-radius:5px;overflow:hidden;border:2px solid transparent;flex:0 0 auto;background:#374151;color:#e5e7eb;display:grid;place-items:center}
.a12-vthumbs button.on{border-color:#f59e0b}
.a12-vthumbs img{width:100%;height:100%;object-fit:cover;object-position:top}
.a12-vthumbs span{position:absolute;right:3px;bottom:2px;font-size:.66rem;background:rgba(0,0,0,.6);color:#fff;border-radius:4px;padding:0 4px}
.a12-locked{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:#cbd5e1;padding:80px 20px;max-width:420px;margin:auto}
.a12-locked .ic{width:48px;height:48px;color:#f59e0b}.a12-locked b{font-size:1.1rem;color:#fff}.a12-locked span{font-size:.88rem}
.a12-hl{list-style:none;display:flex;flex-direction:column;gap:4px;margin:8px 0}
.a12-hl li{display:flex;gap:6px;align-items:flex-start;font-size:.8rem}.a12-hl li span{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}
.a12-hl li.ok .ic{color:var(--good)}.a12-hl li.bad .ic{color:var(--bad)}.a12-hl li.bad{color:var(--bad)}
.a12-hl code{font-size:.7rem}

/* e-signature modal */
.a12-sign{display:flex;gap:12px;align-items:flex-start}
.a12-sign-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#fdf2e9;color:#7c2d12;flex:0 0 auto}.a12-sign-ic .ic{width:26px;height:26px}

/* expertise, acts, ledger */
.a12-holdnote{font-size:.78rem;color:var(--bad);display:flex;gap:4px;align-items:center;margin-top:2px}.a12-holdnote .ic{width:13px;height:13px}
.a12-acts{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
.a12-actc{cursor:pointer}.a12-actc:hover{border-color:#b45309}
.a12-acth{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.a12-acth b{font-family:var(--mono);color:#7c2d12}
.a12-chain{display:flex;flex-direction:column;gap:0;position:relative}
.a12-block{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin-left:22px;margin-bottom:14px}
.a12-block::before{content:"";position:absolute;left:-22px;top:18px;width:14px;height:14px;border-radius:50%;background:#7c2d12;box-shadow:0 0 0 4px #fdf2e9}
.a12-block::after{content:"";position:absolute;left:-16px;top:34px;bottom:-16px;width:2px;background:#e7c9a9}
.a12-block:last-child::after{display:none}
.a12-bh{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.a12-seq{font-family:var(--mono);font-weight:800;color:#7c2d12}
.a12-block p{margin:6px 0;font-size:.9rem}
.a12-bdocs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}
.a12-bhash{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.78rem;color:var(--ink-2)}.a12-bhash code{font-size:.72rem}

/* transfer */
.a12-trs{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}
.a12-trh{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.a12-trh b{font-family:var(--mono);color:#7c2d12;font-size:1rem}
.a12-console{background:#0b1220;color:#86efac;font:12px/1.5 var(--mono);padding:12px;border-radius:10px;max-height:260px;overflow:auto;white-space:pre-wrap;word-break:break-all}

/* reports */
.a12-natf{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.a12-natf label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;color:var(--ink-2)}
.a12-natf select{height:36px;border:1px solid var(--border-2);border-radius:9px;padding:0 8px;background:#fff}

/* integrations */
.a12-ints{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}
.a12-int{border-left:4px solid var(--border-2)}.a12-int.ok{border-left-color:var(--good)}.a12-int.bad{border-left-color:var(--bad)}
.a12-inth{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.a12-intdl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:.82rem;margin-bottom:10px}.a12-intdl dt{color:var(--ink-2)}.a12-intdl dd{min-width:0;overflow-wrap:anywhere}
.a12-intdl code{font-size:.74rem}
.a12-ilog{list-style:none;margin-top:10px;border-top:1px dashed var(--border);padding-top:8px;display:flex;flex-direction:column;gap:3px;font-size:.76rem}
.a12-ilog li.bad{color:var(--bad)}.a12-ilog li.warn{color:#b45309}.a12-ilog .mono{font-size:.72rem;color:var(--ink-2)}

@media (max-width:1100px){.a12-vwrap{grid-template-columns:minmax(0,1fr)}.a12-appr{grid-template-columns:240px minmax(0,1fr)}}
@media (max-width:900px){.a12-appr{grid-template-columns:minmax(0,1fr)}.a12-queue{max-height:260px}.a12-vmain{min-height:420px}}
@media (max-width:640px){
  .a12-sf label.a12-sq{grid-column:auto}
  .a12-sf{grid-template-columns:1fr 1fr}
  .a12-scan .card-b .fgrid{grid-template-columns:1fr 1fr}
  .a12-apg figure,.a12-apg img,.a12-apg .a12-pdfph{width:140px}.a12-apg img,.a12-apg .a12-pdfph{height:198px}
  .a12-ints,.a12-acts{grid-template-columns:minmax(0,1fr)}
  .a12-vstage{padding:10px}
  .a12-qs{flex-wrap:wrap}.a12-qs .search{flex:1 1 100%}
  .a12-fst b{font-size:1rem}
}
