/* =========================================================================
   Studio Franzone — CRM / Back Office
   Palette navy + champagne gold, layout con sidebar.
   ========================================================================= */
:root{
  --navy:#182547; --navy-dark:#0f1a35; --navy-light:#2a3a5f;
  --navy-soft:#f5f6f9; --navy-subtle:#ebedf3;
  --gold:#C9B589; --gold-dark:#B8976B; --gold-light:#E8DCC0;
  --emerald:#2d5f4f;
  --greige:#E8E6E1; --warm-white:#faf9f7; --warm-gray:#f5f4f0;
  --ink:#1a1f2e; --muted:#6b7280; --line:#e3e6ee;
  --danger:#c0392b; --danger-bg:#fdecea;
  --ok:#1e7e57; --ok-bg:#e7f6ee;
  --warn-bg:#fff6e5;
  --radius:14px; --radius-sm:9px;
  --shadow:0 1px 3px rgba(15,26,53,.08),0 8px 24px rgba(15,26,53,.06);
  --shadow-sm:0 1px 2px rgba(15,26,53,.08);
  --sans:'DM Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --display:'Outfit',var(--sans);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body.admin{font-family:var(--sans);color:var(--ink);background:var(--navy-soft);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--navy);text-decoration:none}
h1,h2,h3{font-family:var(--display);margin:0;color:var(--navy);font-weight:700;letter-spacing:-.01em}

/* ---------- Layout shell ---------- */
.admin-shell{display:flex;min-height:100vh}
.admin-sidebar{width:248px;flex-shrink:0;background:var(--navy);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.admin-brand{display:flex;align-items:center;justify-content:space-between;padding:1.35rem 1.4rem;border-bottom:1px solid rgba(255,255,255,.09)}
.admin-brand a{color:#fff;display:flex;flex-direction:column;line-height:1.15}
.admin-brand strong{font-family:var(--display);font-size:1.05rem}
.admin-brand span{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.admin-sidebar-close{display:none;background:none;border:none;color:#fff;cursor:pointer}
.admin-nav{flex:1;padding:.85rem .7rem;overflow-y:auto}
.admin-nav-link{display:flex;align-items:center;gap:.7rem;padding:.62rem .8rem;border-radius:var(--radius-sm);color:rgba(255,255,255,.78);font-weight:500;margin-bottom:.15rem;transition:.16s;position:relative}
.admin-nav-link:hover{background:rgba(255,255,255,.07);color:#fff}
.admin-nav-link.is-active{background:var(--gold);color:var(--navy-dark);font-weight:600}
.admin-nav-link svg{flex-shrink:0}
.admin-badge{margin-left:auto;background:var(--gold);color:var(--navy-dark);font-style:normal;font-size:.7rem;font-weight:700;padding:.05rem .45rem;border-radius:99px}
.admin-nav-link.is-active .admin-badge{background:var(--navy-dark);color:var(--gold)}
.admin-sidebar-foot{padding:1rem 1.4rem;border-top:1px solid rgba(255,255,255,.09);display:flex;flex-direction:column;gap:.5rem}
.admin-sidebar-foot a{color:rgba(255,255,255,.7);font-size:.85rem}
.admin-sidebar-foot a:hover{color:#fff}
.admin-logout{color:var(--gold-light)!important}

.admin-main{flex:1;display:flex;flex-direction:column;min-width:0}
.admin-topbar{display:flex;align-items:center;gap:1rem;padding:1rem 1.8rem;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.admin-burger{display:none;background:none;border:none;cursor:pointer;color:var(--navy)}
.admin-pagetitle{font-size:1.18rem;margin:0}
.admin-user{margin-left:auto;display:flex;align-items:center;gap:.9rem;font-size:.9rem}
.admin-user span{font-weight:600}
.admin-user-link{color:var(--muted);font-size:.82rem}
.admin-content{padding:1.8rem;max-width:1180px;width:100%}

/* ---------- Cards ---------- */
.a-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.4rem;margin-bottom:1.4rem}
.a-card-form{max-width:100%}
.a-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem;gap:1rem}
.a-card-head h2{font-size:1.05rem}
.a-link{color:var(--navy);font-weight:600;font-size:.85rem;background:none;border:none;cursor:pointer;padding:0}
.a-link:hover{color:var(--gold-dark);text-decoration:underline}
.a-link-danger{color:var(--danger)}
.a-section-title{font-size:1.1rem}

/* ---------- Stats ---------- */
.a-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.4rem}
.a-stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.3rem;display:flex;flex-direction:column;gap:.2rem;box-shadow:var(--shadow-sm);transition:.16s}
.a-stat:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.a-stat-num{font-family:var(--display);font-size:2rem;font-weight:700;color:var(--navy);line-height:1}
.a-stat-label{font-size:.82rem;color:var(--muted)}
.a-stat-accent{background:var(--navy);border-color:var(--navy)}
.a-stat-accent .a-stat-num{color:var(--gold)}
.a-stat-accent .a-stat-label{color:rgba(255,255,255,.8)}

.a-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:start}
.a-grid-detail{display:grid;grid-template-columns:1fr 320px;gap:1.4rem;align-items:start}

/* ---------- Tables ---------- */
.a-table{width:100%;border-collapse:collapse;font-size:.9rem}
.a-table th{text-align:left;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:.55rem .6rem;border-bottom:2px solid var(--line)}
.a-table td{padding:.7rem .6rem;border-bottom:1px solid var(--line);vertical-align:middle}
.a-table tr:last-child td{border-bottom:none}
.a-table small{color:var(--muted)}
.a-table-hover tbody tr{cursor:pointer;transition:background .12s}
.a-table-hover tbody tr:hover{background:var(--navy-soft)}
.a-row-actions{display:flex;gap:.8rem;align-items:center;white-space:nowrap}
.a-row-actions form{margin:0}

/* ---------- Pills / badges ---------- */
.a-pill{display:inline-block;font-size:.72rem;font-weight:600;padding:.18rem .6rem;border-radius:99px;white-space:nowrap}
.a-pill-nuovo{background:var(--warn-bg);color:#9a6a00}
.a-pill-in_lavorazione{background:#e8f0fe;color:#1a56b0}
.a-pill-qualificato{background:var(--gold-light);color:var(--gold-dark)}
.a-pill-cliente{background:var(--ok-bg);color:var(--ok)}
.a-pill-chiuso{background:#eee;color:#666}
.a-pill-appt-programmato{background:#e8f0fe;color:#1a56b0}
.a-pill-appt-confermato{background:var(--ok-bg);color:var(--ok)}
.a-pill-appt-completato{background:var(--navy-subtle);color:var(--navy)}
.a-pill-appt-annullato{background:var(--danger-bg);color:var(--danger)}
.a-tag{font-style:normal;color:var(--gold-dark)}
.a-dot{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle;margin-right:.3rem}

/* ---------- Chips / filtri ---------- */
.a-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.2rem;flex-wrap:wrap}
.a-filters{display:flex;gap:.4rem;flex-wrap:wrap}
.a-chip{font-size:.82rem;padding:.35rem .8rem;border-radius:99px;background:#fff;border:1px solid var(--line);color:var(--muted);font-weight:500}
.a-chip:hover{border-color:var(--gold)}
.a-chip.is-on{background:var(--navy);color:#fff;border-color:var(--navy)}
.a-search{display:flex;gap:.4rem}
.a-search input{padding:.45rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);font-family:inherit;min-width:220px}

/* ---------- Pipeline ---------- */
.a-pipeline{display:flex;flex-direction:column;gap:.55rem}
.a-pipe-row{display:flex;align-items:center;gap:.7rem;font-size:.85rem}
.a-pipe-label{width:120px;flex-shrink:0;color:var(--muted)}
.a-pipe-bar{flex:1;height:8px;background:var(--navy-subtle);border-radius:99px;overflow:hidden}
.a-pipe-bar span{display:block;height:100%;background:var(--gold);border-radius:99px}
.a-pipe-num{width:28px;text-align:right;font-weight:700;color:var(--navy)}

/* ---------- Appuntamenti ---------- */
.a-appt-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}
.a-appt-list li{display:flex;flex-direction:column;padding:.6rem .8rem;background:var(--navy-soft);border-radius:var(--radius-sm);border-left:3px solid var(--gold)}
.a-appt-when{font-size:.75rem;color:var(--gold-dark);font-weight:600;text-transform:capitalize}
.a-appt-title{font-weight:600}
.a-appt-list small{color:var(--muted)}

/* ---------- Detail ---------- */
.a-back{display:inline-block;margin-bottom:1rem;color:var(--muted);font-weight:600;font-size:.88rem}
.a-back:hover{color:var(--navy)}
.a-deflist{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.5rem}
.a-deflist div{display:flex;flex-direction:column}
.a-deflist span{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.a-deflist strong{font-weight:600}
.a-message{margin-top:1.1rem;padding:1rem;background:var(--navy-soft);border-radius:var(--radius-sm);font-size:.92rem;white-space:pre-line}

/* ---------- Timeline ---------- */
.a-timeline{list-style:none;margin:1.1rem 0 0;padding:0;position:relative}
.a-timeline:before{content:"";position:absolute;left:6px;top:4px;bottom:4px;width:2px;background:var(--line)}
.a-timeline li{position:relative;padding:0 0 1.1rem 1.7rem}
.a-tl-dot{position:absolute;left:0;top:4px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--gold)}
.a-tl-stato .a-tl-dot{border-color:var(--navy)}
.a-tl-chiamata .a-tl-dot{border-color:var(--emerald)}
.a-tl-email .a-tl-dot{border-color:#1a56b0}
.a-tl-body p{margin:0 0 .15rem}
.a-tl-body small{color:var(--muted);text-transform:capitalize}
.a-noteform{margin-bottom:.5rem}
.a-note-row{display:flex;gap:.5rem}
.a-note-row select{flex-shrink:0;width:120px}
.a-note-row input{flex:1}

/* ---------- Forms ---------- */
.a-form .form-group{margin-bottom:1rem;display:flex;flex-direction:column}
.a-form label{font-size:.82rem;font-weight:600;margin-bottom:.35rem;color:var(--navy)}
.a-form input[type=text],.a-form input[type=email],.a-form input[type=password],
.a-form input[type=tel],.a-form input[type=number],.a-form input[type=datetime-local],
.a-form input[type=color],.a-form select,.a-form textarea{
  width:100%;padding:.6rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);
  font-family:inherit;font-size:.92rem;background:#fff;color:var(--ink);transition:.14s}
.a-form input:focus,.a-form select:focus,.a-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,181,137,.18)}
.a-form input[type=color]{height:42px;padding:.2rem;cursor:pointer}
.a-form textarea{resize:vertical}
.a-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;line-height:1.5}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.a-check label{flex-direction:row;align-items:center;gap:.5rem;font-weight:500;cursor:pointer}
.a-check input{width:auto}
.a-hint{color:var(--muted);font-size:.8rem}
.a-hint code{background:var(--navy-subtle);padding:.1rem .35rem;border-radius:4px}

/* ---------- Galleria admin ---------- */
.a-gallery-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.7rem;margin-bottom:1rem}
.a-gallery-item{position:relative;border-radius:var(--radius-sm);overflow:hidden;aspect-ratio:4/3;border:1px solid var(--line)}
.a-gallery-item img{width:100%;height:100%;object-fit:cover;display:block}
.a-img-del{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;border:none;background:rgba(192,57,43,.92);color:#fff;font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.a-cover-preview{width:100%;border-radius:var(--radius-sm);margin-bottom:.8rem;display:block}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--sans);font-weight:600;font-size:.92rem;
  padding:.65rem 1.15rem;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:.16s;text-decoration:none;line-height:1}
.btn-sm{padding:.45rem .85rem;font-size:.85rem}
.btn-block{width:100%;justify-content:center}
.btn-primary{background:var(--navy);color:#fff}
.btn-primary:hover{background:var(--navy-light)}
.btn-outline{background:#fff;color:var(--navy);border-color:var(--line)}
.btn-outline:hover{border-color:var(--gold);color:var(--gold-dark)}
.btn-danger{background:var(--danger-bg);color:var(--danger)}
.btn-danger:hover{background:#f9d9d4}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#1ebe5a}

/* ---------- Alerts ---------- */
.a-alert{padding:.85rem 1.1rem;border-radius:var(--radius-sm);margin-bottom:1.2rem;font-size:.9rem;font-weight:500}
.a-alert-success{background:var(--ok-bg);color:var(--ok)}
.a-alert-error{background:var(--danger-bg);color:var(--danger)}
.a-empty{color:var(--muted);text-align:center;padding:1.5rem;font-size:.92rem}

/* ---------- Login ---------- */
.admin-login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--navy-dark),var(--navy) 70%)}
.login-card{background:#fff;border-radius:var(--radius);box-shadow:0 20px 60px rgba(0,0,0,.35);padding:2.4rem;width:100%;max-width:380px}
.login-brand{text-align:center;margin-bottom:1.6rem;display:flex;flex-direction:column;gap:.25rem}
.login-brand strong{font-family:var(--display);font-size:1.4rem;color:var(--navy)}
.login-brand span{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dark)}
.login-form .form-group{margin-bottom:1rem;display:flex;flex-direction:column}
.login-form label{font-size:.82rem;font-weight:600;margin-bottom:.35rem;color:var(--navy)}
.login-form input{width:100%;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm);font-family:inherit;font-size:.95rem}
.login-form input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,181,137,.18)}
.login-back{display:block;text-align:center;margin-top:1.2rem;color:var(--muted);font-size:.85rem}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .a-grid-2,.a-grid-detail,.form-row,.a-deflist{grid-template-columns:1fr}
  .admin-sidebar{position:fixed;left:0;top:0;transform:translateX(-100%);transition:transform .22s;z-index:60;box-shadow:8px 0 30px rgba(0,0,0,.3)}
  .admin-sidebar.is-open{transform:translateX(0)}
  .admin-sidebar-close{display:block}
  .admin-burger{display:block}
  .admin-content{padding:1.1rem}
  .admin-topbar{padding:.9rem 1.1rem}
  .a-search input{min-width:0}
}

/* ============================================================
   SUPER CRM v2 — componenti aggiuntivi
   ============================================================ */
.a-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap;}
.a-filters{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;}
.a-filters input,.a-filters select{padding:.5rem .7rem;border:1px solid #d8dce4;border-radius:8px;font-size:.9rem;}
.a-muted{color:#6b7280;}
.a-small{font-size:.82rem;}
.a-text-danger{color:#dc2626;font-weight:600;}

.a-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1.1rem;border-radius:8px;font-weight:600;font-size:.9rem;border:1px solid transparent;cursor:pointer;text-decoration:none;}
.a-btn-primary{background:#182547;color:#fff;}
.a-btn-primary:hover{background:#0f1a35;color:#fff;}
.a-btn-ghost{background:#fff;border-color:#d8dce4;color:#374151;}
.a-btn-ghost:hover{background:#f3f4f6;}
.a-btn-lg{padding:.85rem 1.5rem;font-size:1rem;}

.a-pill{display:inline-block;padding:.25rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#eef1f6;color:#374151;}
.a-pill-green{background:#dcfce7;color:#15803d;}
.a-pill-gray{background:#e5e7eb;color:#6b7280;}
.a-tag{display:inline-block;padding:.22rem .6rem;border-radius:6px;font-size:.72rem;font-weight:700;color:#fff;}

.a-table-tasks tr.is-overdue td{background:#fef2f2;}
.a-progress{width:80px;height:7px;background:#e5e7eb;border-radius:99px;overflow:hidden;}
.a-progress span{display:block;height:100%;background:#16a34a;}
.a-link-strong{font-weight:600;color:#182547;text-decoration:none;}
.a-link-strong:hover{text-decoration:underline;}
.a-actions{white-space:nowrap;}
.a-actions .a-link{color:#475569;text-decoration:none;margin-right:.5rem;display:inline-flex;align-items:center;gap:.2rem;}

.u-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.4rem;vertical-align:middle;}

.a-form .a-grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.a-form label{display:block;font-size:.85rem;font-weight:600;color:#374151;margin-bottom:.9rem;}
.a-form input,.a-form select,.a-form textarea{width:100%;padding:.6rem .7rem;border:1px solid #d8dce4;border-radius:8px;font-size:.92rem;margin-top:.3rem;font-family:inherit;}
.a-form .a-check{display:flex;align-items:center;gap:.5rem;font-weight:500;}
.a-form .a-check input{width:auto;margin:0;}
.a-form-actions{display:flex;gap:.6rem;margin-top:.5rem;}
.a-roles-legend{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #eceef2;}
.a-roles-legend ul{margin:.5rem 0 0;padding-left:1.1rem;color:#4b5563;font-size:.9rem;line-height:1.7;}

.a-card-feature{text-align:center;padding:2rem;}
.a-feat-ico{display:inline-flex;width:64px;height:64px;align-items:center;justify-content:center;background:#182547;color:#fff;border-radius:16px;margin-bottom:1rem;}
.a-feat-ico-green{background:#16a34a;}
.a-list{margin:.5rem 0 0;padding-left:1.1rem;color:#4b5563;line-height:1.8;}

.a-stats-crm{margin-bottom:1rem;}
.a-stat-navy{background:#182547;color:#fff;}
.a-stat-navy .a-stat-label{color:rgba(255,255,255,.8);}
.a-stat-danger{background:#fee2e2;}
.a-stat-danger .a-stat-num{color:#dc2626;}
.a-stat-warn{background:#fef3c7;}
.a-stat-warn .a-stat-num{color:#b45309;}

.a-detail-head{display:flex;justify-content:space-between;align-items:center;}
.a-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.25rem 0;padding:1rem;background:#f8fafc;border-radius:10px;}
.a-meta-grid span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;}
.a-meta-grid strong{color:#182547;}
.a-timeline{margin:1rem 0;}
.a-tl-item{display:flex;gap:.75rem;margin-bottom:1rem;}
.a-tl-dot{width:10px;height:10px;border-radius:50%;background:#182547;margin-top:.4rem;flex:none;}
.a-tl-item p{margin:.25rem 0 0;}
.a-inline-form{display:flex;gap:.5rem;margin-top:1rem;}
.a-inline-form input{flex:1;padding:.6rem .8rem;border:1px solid #d8dce4;border-radius:8px;}

.a-tabs{display:flex;gap:.25rem;}
.a-tabs a{padding:.5rem 1rem;border-radius:8px;text-decoration:none;color:#6b7280;font-weight:600;font-size:.9rem;}
.a-tabs a.is-active{background:#182547;color:#fff;}

@media(max-width:720px){
  .a-form .a-grid2,.a-meta-grid{grid-template-columns:1fr;}
  .a-toolbar{flex-direction:column;align-items:stretch;}
}

/* Notifiche topbar */
.admin-notif{position:relative;}
.admin-notif-btn{position:relative;background:none;border:none;color:#475569;cursor:pointer;padding:.4rem;}
.admin-notif-drop{position:absolute;right:0;top:calc(100% + .5rem);width:320px;max-height:400px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.15);padding:.5rem;display:none;z-index:200;}
.admin-notif-drop.open{display:block;}
.admin-notif-item{display:block;padding:.7rem .8rem;border-radius:8px;text-decoration:none;color:#182547;}
.admin-notif-item:hover{background:#f3f4f6;}
.admin-notif-item span{display:block;font-size:.83rem;color:#6b7280;}
.admin-notif-item small{color:#9ca3af;font-size:.74rem;}

/* Switch rapido pubblica/offline */
.a-switch{border:none;cursor:pointer;padding:.35rem .8rem;border-radius:999px;font-size:.78rem;font-weight:700;}
.a-switch.on{background:#dcfce7;color:#15803d;}
.a-switch.off{background:#f3f4f6;color:#9ca3af;}
.a-switch:hover{filter:brightness(.95);}

/* Permessi granulari nel form utente */
.a-perm-block{margin:1rem 0;padding:1rem;background:#f8fafc;border-radius:10px;}
.a-perm-mode{font-weight:600;}
.a-perm-group{border:1px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem;margin:.6rem 0;}
.a-perm-group legend{font-weight:700;color:#182547;font-size:.85rem;padding:0 .4rem;}
.a-perm-check{display:inline-flex;align-items:center;gap:.4rem;width:48%;margin:.25rem 0;font-weight:500;font-size:.88rem;}
.a-perm-check input{width:auto;margin:0;}
.a-check-strong{background:#fff7ed;border:1px solid #fed7aa;padding:.7rem;border-radius:8px;margin:.5rem 0;}
@media(max-width:600px){.a-perm-check{width:100%;}}

/* === Moduli studio (contabilità, AML, privacy) === */
.btn-navy{background:var(--navy);color:#fff;border:1px solid var(--navy)}
.btn-navy:hover{background:var(--navy-dark)}
.a-calc-box{background:var(--navy-soft);border:1px solid var(--navy-subtle);border-radius:10px;padding:.75rem 1rem}
.a-calc-box .r{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;font-size:.92rem;border-bottom:1px solid var(--navy-subtle)}
.a-calc-box .r:last-child{border-bottom:none}
.a-calc-box .r span{color:var(--ink-soft,#6b7280)}
.a-calc-box .r.grand{font-size:1.05rem;font-weight:800;color:var(--navy);border-top:2px solid var(--navy);border-bottom:none;margin-top:.25rem;padding-top:.6rem}
.a-calc-box .r.net{color:var(--gold,#b08d57);font-weight:800}
.a-kv{display:grid;grid-template-columns:1fr 1fr;gap:.7rem 1.2rem;font-size:.92rem}
.a-kv > div span{display:block;color:#6b7280;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.1rem}
