/* css/account-more.css - look of the account sections ledger, receipts, downloads, devices and security (js/account/{ledger,receipts,downloads,devices,security}.js).
   Builds on css/account.css (cards, tables, notices, forms, grids: `ac-*`) and the design tokens; every rule here is prefixed `acm-`. Dark theme only, like the site.
   Rules of the owner: symmetric, equal-width cards, centred orphans, one control height (--ctl-h), nothing wider than the page at 320 px. */

.acm{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}
.acm-intro{margin:0;color:var(--text-2);font-size:var(--fs-m);line-height:1.5;text-wrap:pretty}
.acm-status{margin:0;text-align:center;padding:24px 0}
.acm .ac-hint,.acm .ac-notice-text,.acm .ac-notice p{text-wrap:pretty}
.acm-center{text-align:center;margin:0}
.acm-sub{margin:var(--sp-2) 0 0;font-size:var(--fs-l);font-weight:750;letter-spacing:-.01em;text-align:center}
.acm-mono{font-family:var(--mono);font-size:var(--fs-s);overflow-wrap:anywhere}
.acm-link{display:inline-flex;align-items:center;min-height:24px;color:var(--accent-2);text-decoration:underline;text-underline-offset:2px;font-size:var(--fs-s)}
.acm-link:hover{color:var(--accent)}
.acm-link:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-xs)}

/* a single centred figure (balance, used slots) */
.acm-stat{width:100%;align-items:center;text-align:center;gap:var(--sp-1);padding-block:14px}
.acm-stat-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
.acm-usage{font-size:var(--fs-l);font-variant-numeric:tabular-nums}

/* ---------- tables (ledger, receipts) ---------- */
.acm-ledger-table th,.acm-receipts-table th{white-space:nowrap}
.acm-c-date{white-space:nowrap}
.acm-detail{display:flex;flex-direction:column;gap:2px;align-items:flex-start;min-width:0}
.acm-detail-main{font-weight:600}
.ac-table .acm-c-amount{font-weight:700}
.acm-pos{color:var(--good)}
.acm-neg{color:var(--text)}
.acm-ledger-table .acm-c-type,.acm-receipts-table .acm-c-type{text-align:center}   /* a badge narrower than its column sits on the column's centre line (found by the page audit in Turkish: "Tamamlandı" left in a wider cell) */
.acm-c-action{text-align:right;white-space:nowrap;width:1%}
.acm-foot{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}
.acm-count{font-size:var(--fs-s);color:var(--text-3)}
@media (max-width:640px){
  .ac-table.ac-stack td.acm-c-action{grid-template-columns:minmax(0,1fr);justify-items:stretch;text-align:center;padding-top:8px}
  .ac-table.ac-stack td.acm-c-action::before{content:none}
  .ac-table.ac-stack .acm-c-date{white-space:normal}
  .ac-table.ac-stack td .ac-badge{justify-self:start}
}

/* ---------- cards in centred rows (downloads, devices): equal width, a lone last card stays on the centre line ---------- */
.acm-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-4)}
.acm-cards>*{flex:0 0 min(100%,360px);min-width:0}
@media (max-width:600px){.acm-cards>*{flex-basis:100%}}
.acm-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);min-height:var(--ctl-h);min-width:0}
.acm-card-head .ac-card-title{min-width:0;overflow-wrap:anywhere}
.acm-card-head .ac-badge{flex:none}
.acm-wide{width:100%}
.acm-dl-card{align-items:stretch}
.acm-dl-card .ac-kv{grid-template-columns:auto minmax(0,1fr)}
.acm-dl-card .ac-kv dd{text-align:right}
.acm-dl-card .ac-hint{margin:0}
.acm-sha{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--bg-0)}
.acm-sha-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
.acm-sha-value{grid-column:1 / -1;order:3;font:var(--fs-s)/1.5 var(--mono);color:var(--text-2);display:grid;justify-content:center;text-align:center}
.acm-sha-value span{display:block;white-space:nowrap}
@media (max-width:360px){.acm-sha-value{font-size:11px}}
.acm-sha .bm-btn{justify-self:end}
.acm-notes summary{cursor:pointer;font-weight:650;color:var(--text-2);padding:6px 0;min-height:var(--ctl-h);display:flex;align-items:center}
.acm-notes summary:hover{color:var(--text)}
.acm-notes summary:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-xs)}
.acm-notes-text{margin:0;padding:6px 0 2px;color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}
.acm-started{margin:0;min-height:1.3em;text-align:center;font-size:var(--fs-s);color:var(--good)}
.acm-help{display:flex;flex-direction:column;gap:var(--sp-2);align-items:center;text-align:center;color:var(--text-2);font-size:var(--fs-m)}
.acm-help p{margin:0;max-width:70ch;text-wrap:balance}
.acm-banner{text-align:center}
.acm-dl-soon .bm-btn{margin-top:auto}

/* ---------- devices ---------- */
.acm-slots{display:flex;gap:6px;justify-content:center}
.acm-slot{display:block;width:34px;height:8px;border-radius:4px;background:var(--bg-4)}
.acm-slot-on{background:var(--brand-grad)}
.acm-dev-card{justify-content:flex-start}
.acm-dev-card .ac-kv dd{text-align:right}
.acm-dev-card>.acm-pair,.acm-dev-card>.acm-confirm,.acm-dev-card>.acm-rename{margin-top:auto}
.acm-dev-past{opacity:.78}
.acm-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}
.acm-pair>.bm-btn{width:100%}
.acm-confirm{display:flex;flex-direction:column;gap:var(--sp-2);padding:12px;border:1px solid color-mix(in srgb,var(--bad) 45%,var(--line));border-radius:var(--radius-m);background:color-mix(in srgb,var(--bad) 7%,var(--bg-1))}
.acm-confirm p{margin:0;font-size:var(--fs-m);line-height:1.45;text-align:center;text-wrap:balance}
.acm-confirm-all{width:100%}
.acm-rename{display:flex;flex-direction:column;gap:var(--sp-2)}

/* ---------- receipt ---------- */
.acm-receipt{width:100%;max-width:560px;align-self:center}
.acm-receipt-title{text-align:center;font-size:var(--fs-xl)}
.acm-kv{grid-template-columns:minmax(0,40%) minmax(0,1fr)}
.acm-kv dd{text-align:right}
.acm-actions-start{justify-content:flex-start}
.acm-consent{display:flex;flex-direction:column;gap:4px;padding-top:var(--sp-3);border-top:1px solid var(--line)}
.acm-consent strong{font-size:var(--fs-m);color:var(--text-2);font-weight:400}
.acm-consent p{margin:0;line-height:1.5;text-wrap:pretty}
@media (max-width:480px){
  .acm-kv{grid-template-columns:minmax(0,1fr)}
  .acm-kv dd{text-align:left;padding-bottom:6px}
}

/* ---------- security: 2 x 2 equal cards, the action area pinned to the bottom so buttons of a row line up ---------- */
.acm-sec-grid{align-items:stretch}
.acm-sec-card{justify-content:flex-start}
.acm-card-actions{margin-top:auto;padding-top:var(--sp-2);display:flex;flex-wrap:wrap;gap:var(--sp-2);justify-content:center}
.acm-card-actions>.bm-btn{flex:1 1 150px}
.acm-sec-card .ac-hint{margin:0}
.acm-sec-delete{border-color:color-mix(in srgb,var(--bad) 35%,var(--line))}
.acm-form .ac-status:empty{display:none}
.acm-form .ac-check span{text-wrap:pretty}
.acm-split{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;margin:0}
.acm-split dt{font-weight:700;margin-top:var(--sp-2)}
.acm-split dt:first-child{margin-top:0}
.acm-split dd{margin:0;color:var(--text-2);font-size:var(--fs-m);line-height:1.5}
.acm-list{margin:0;padding:0 0 0 18px;color:var(--text-2);font-size:var(--fs-m);line-height:1.6}

/* ---------- print: only the receipt ---------- */
@media print{
  body.acm-printing *{visibility:hidden!important}
  body.acm-printing .acm-receipt,body.acm-printing .acm-receipt *{visibility:visible!important}
  body.acm-printing .acm-receipt{position:absolute;left:0;top:0;width:100%;max-width:none;margin:0;padding:24px;border:0;border-radius:0;box-shadow:none;background:#fff!important;color:#000!important}
  body.acm-printing .acm-receipt *{color:#000!important;background:transparent!important}
  body.acm-printing .acm-receipt .ac-hint{color:#333!important}
}
