/* =============================================================
   ALP ARS LOJİSTİK CRM — app.css
   ============================================================= */

/* ===== FONTS ===== */
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@500;600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

/* ===== DARK THEME (DEFAULT) ===== */
:root {
  --bg-base:       #07111D;
  --bg-surface:    #0D1E2E;
  --bg-elevated:   #132639;
  --bg-hover:      #172D43;
  --border:        #1E3A52;
  --border-light:  #2A4F6E;
  --accent:        #1B6CB5;
  --accent-hover:  #1558A0;
  --accent-muted:  rgba(27,108,181,.15);
  --gold:          #C9962A;
  --gold-muted:    rgba(201,150,42,.12);
  --success:       #25A970;
  --success-muted: rgba(37,169,112,.12);
  --danger:        #F04F4F;
  --danger-muted:  rgba(240,79,79,.12);
  --warning:       #E8930A;
  --warning-muted: rgba(232,147,10,.12);
  --text-primary:  #E8F0FA;
  --text-secondary:#9DB4CC;
  --text-muted:    #4E7090;
  --r:  6px;
  --rl: 12px;
  --transition: .15s ease;
}

/* ===== LIGHT THEME ===== */
[data-theme="light"] {
  --bg-base:       #F0F4F8;
  --bg-surface:    #FFFFFF;
  --bg-elevated:   #F5F8FC;
  --bg-hover:      #EBF0F6;
  --border:        #D5E0EC;
  --border-light:  #B8CBE0;
  --accent:        #1B6CB5;
  --accent-hover:  #1558A0;
  --accent-muted:  rgba(27,108,181,.1);
  --gold:          #B8860B;
  --gold-muted:    rgba(184,134,11,.1);
  --success:       #1A9E5A;
  --success-muted: rgba(26,158,90,.08);
  --danger:        #D63B3B;
  --danger-muted:  rgba(214,59,59,.08);
  --warning:       #C87A1A;
  --warning-muted: rgba(200,122,26,.08);
  --text-primary:  #1A2C3D;
  --text-secondary:#4A6278;
  --text-muted:    #8AA5BC;
}

/* ===== RESET ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html,body{height:100%;}
body{font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;background:var(--bg-base);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;}
a{color:var(--accent);text-decoration:none;}
a:hover{color:var(--accent-hover);}
input,select,textarea,button{font-family:inherit;font-size:inherit;}
button{cursor:pointer;border:none;background:none;}

/* ===== LAYOUT ===== */
.app-layout{display:flex;height:100vh;overflow:hidden;}
.main-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.page-body{flex:1;overflow-y:auto;padding:1.8rem 2rem;}

/* ===== SIDEBAR ===== */
.sidebar{width:230px;flex-shrink:0;background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto;}
[data-theme="light"] .sidebar{box-shadow:2px 0 8px rgba(0,0,0,.06);}
.sidebar-logo{display:flex;align-items:center;gap:.8rem;padding:1.3rem 1.1rem;border-bottom:1px solid var(--border);}
.logo-mark{width:36px;height:36px;background:var(--accent);border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;}
.logo-mark svg{width:20px;height:20px;}
.logo-name{font-family:'Syne',sans-serif;font-weight:700;font-size:.88rem;color:var(--text-primary);}
.logo-sub{font-size:.62rem;color:var(--text-muted);letter-spacing:.05em;margin-top:.1rem;}
.sidebar-nav{flex:1;padding:.8rem .6rem;}
.nav-label{font-size:.6rem;font-weight:700;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;padding:.6rem .5rem .3rem;margin-top:.3rem;}
.nav-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;border-radius:var(--r);font-size:.82rem;font-weight:500;color:var(--text-secondary);transition:all var(--transition);margin-bottom:.1rem;}
.nav-item svg{width:16px;height:16px;flex-shrink:0;}
.nav-item:hover{background:var(--bg-elevated);color:var(--text-primary);}
.nav-item.active{background:var(--accent-muted);color:var(--accent);font-weight:600;}
.sidebar-footer{padding:.9rem .8rem;border-top:1px solid var(--border);}
.user-info{display:flex;align-items:center;gap:.6rem;}
.avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;flex-shrink:0;}
.user-details{flex:1;min-width:0;}
.user-name{font-size:.78rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.user-role{font-size:.65rem;color:var(--text-muted);}
.btn-logout{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);border-radius:var(--r);transition:all var(--transition);}
.btn-logout:hover{background:var(--danger-muted);color:var(--danger);}
.btn-logout svg{width:15px;height:15px;}
.btn-theme-toggle{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);border-radius:var(--r);transition:all var(--transition);}
.btn-theme-toggle:hover{background:var(--accent-muted);color:var(--accent);}
.btn-theme-toggle svg{width:15px;height:15px;}

/* ===== TOPBAR ===== */
.topbar{display:flex;align-items:center;justify-content:space-between;padding:.9rem 2rem;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0;}
[data-theme="light"] .topbar{box-shadow:0 1px 4px rgba(0,0,0,.06);}
.topbar-title{font-family:'Syne',sans-serif;font-weight:700;font-size:1.15rem;color:var(--text-primary);}
.topbar-meta{font-size:.75rem;color:var(--text-muted);font-family:'JetBrains Mono',monospace;}

/* ===== FOOTER ===== */
.page-footer{padding:.7rem 2rem;border-top:1px solid var(--border);background:var(--bg-surface);display:flex;justify-content:space-between;font-size:.7rem;color:var(--text-muted);}
.page-footer a{color:var(--accent);}

/* ===== CARD ===== */
.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--rl);padding:1.4rem;}
.card-title{display:flex;align-items:center;gap:.5rem;font-family:'Syne',sans-serif;font-weight:700;font-size:.88rem;color:var(--text-primary);letter-spacing:.02em;margin-bottom:1.2rem;}
.card-title svg{width:16px;height:16px;color:var(--accent);flex-shrink:0;}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:var(--r);font-size:.82rem;font-weight:600;transition:all var(--transition);cursor:pointer;border:1px solid transparent;white-space:nowrap;}
.btn svg{width:14px;height:14px;flex-shrink:0;}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;}
.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff;}
.btn-outline{background:transparent;border-color:var(--border-light);color:var(--text-secondary);}
.btn-outline:hover{border-color:var(--accent);color:var(--accent);}
.btn-danger{background:var(--danger-muted);border-color:rgba(240,79,79,.3);color:var(--danger);}
.btn-danger:hover{background:rgba(240,79,79,.2);}
.btn-sm{padding:.35rem .75rem;font-size:.75rem;}
.btn-icon{padding:.4rem;}

/* ===== GRIDS ===== */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.4rem;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;}
.grid-cols-3-1{display:grid;grid-template-columns:2fr 1fr;gap:1.2rem;}
.mb-4{margin-bottom:1rem;}
.mb-6{margin-bottom:1.5rem;}

/* ===== STAT CARDS ===== */
.stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--rl);padding:1.1rem 1.2rem;position:relative;overflow:hidden;}
.stat-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--border);}
.stat-card.success::after{background:var(--success);}
.stat-card.danger::after{background:var(--danger);}
.stat-card.gold::after{background:var(--gold);}
.stat-label{display:flex;align-items:center;gap:.4rem;font-size:.68rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem;}
.stat-label svg{width:13px;height:13px;}
.stat-value{font-family:'JetBrains Mono',monospace;font-size:1.4rem;font-weight:500;color:var(--text-primary);line-height:1.2;}
.stat-sub{font-size:.68rem;color:var(--text-muted);margin-top:.3rem;}

/* ===== FORMS ===== */
.form-field{margin-bottom:1rem;}
.form-field label{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:.4rem;letter-spacing:.02em;}
.form-field input,.form-field select,.form-field textarea{width:100%;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r);padding:.6rem .8rem;color:var(--text-primary);outline:none;transition:border-color var(--transition);}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);}
.form-field select{cursor:pointer;}
.form-field textarea{resize:vertical;min-height:80px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.req{color:var(--danger);margin-left:.1rem;}
.divider{border:none;border-top:1px solid var(--border);margin:1.2rem 0;}

/* ===== SECTION HEADER ===== */
.section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.8rem;}
.section-title{font-family:'Syne',sans-serif;font-weight:700;font-size:1.05rem;color:var(--text-primary);}
.section-sub{font-size:.75rem;color:var(--text-muted);margin-top:.2rem;}

/* ===== SEARCH BAR ===== */
.search-bar{display:flex;align-items:center;gap:.5rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r);padding:.45rem .8rem;}
.search-bar svg{width:14px;height:14px;color:var(--text-muted);flex-shrink:0;}
.search-bar input{background:none;border:none;outline:none;color:var(--text-primary);font-size:.82rem;width:180px;}
.filter-select{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r);padding:.45rem .7rem;color:var(--text-secondary);font-size:.8rem;outline:none;cursor:pointer;}
.filter-select:focus{border-color:var(--accent);}

/* ===== TABLE ===== */
.table-wrap{overflow-x:auto;border-radius:var(--r);}
table{width:100%;border-collapse:collapse;}
th{font-size:.67rem;font-weight:700;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;padding:.7rem .9rem;text-align:left;background:var(--bg-elevated);white-space:nowrap;}
td{padding:.75rem .9rem;border-bottom:1px solid var(--border);font-size:.82rem;color:var(--text-secondary);}
tr:last-child td{border-bottom:none;}
tr:hover td{background:rgba(27,108,181,.03);}
td.primary{color:var(--text-primary);font-weight:500;}
td.mono{font-family:'JetBrains Mono',monospace;font-size:.78rem;}
td.small{font-size:.76rem;}
.text-right{text-align:right;}
.amount-pos{color:var(--success);font-family:'JetBrains Mono',monospace;}
.amount-neg{color:var(--danger);font-family:'JetBrains Mono',monospace;}
.text-danger{color:var(--danger)!important;}
.text-success{color:var(--success)!important;}
.mono{font-family:'JetBrains Mono',monospace;}

/* ===== BADGES ===== */
.badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:20px;font-size:.65rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;}
.badge-success{background:var(--success-muted);color:var(--success);}
.badge-danger{background:var(--danger-muted);color:var(--danger);}
.badge-warning{background:var(--warning-muted);color:var(--warning);}
.badge-accent{background:var(--accent-muted);color:var(--accent);}
.badge-gold{background:var(--gold-muted);color:var(--gold);}
.badge-muted{background:var(--bg-elevated);color:var(--text-muted);}

/* ===== ALERTS ===== */
.alert{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem 1rem;border-radius:var(--r);font-size:.82rem;margin-bottom:1rem;}
.alert svg{width:16px;height:16px;flex-shrink:0;margin-top:.1rem;}
.alert-success{background:var(--success-muted);color:var(--success);border:1px solid rgba(37,169,112,.2);}
.alert-danger{background:var(--danger-muted);color:var(--danger);border:1px solid rgba(240,79,79,.2);}

/* ===== EMPTY STATE ===== */
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--text-muted);}
.empty-state svg{width:48px;height:48px;margin-bottom:1rem;opacity:.3;}
.empty-state h3{font-family:'Syne',sans-serif;font-size:.95rem;font-weight:700;color:var(--text-secondary);margin-bottom:.4rem;}
.empty-state p{font-size:.8rem;}

/* ===== CURRENCY CARDS ===== */
.currency-card{display:flex;align-items:center;gap:.8rem;background:var(--bg-elevated);border-radius:var(--r);padding:.8rem 1rem;border:1px solid var(--border);}
.currency-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;font-size:.65rem;font-weight:800;letter-spacing:.05em;flex-shrink:0;}
.currency-badge.usd{background:rgba(37,169,112,.15);color:var(--success);}
.currency-badge.eur{background:var(--accent-muted);color:var(--accent);}
.currency-badge.gold{background:var(--gold-muted);color:var(--gold);}
.currency-badge.gbp{background:rgba(240,79,79,.1);color:var(--danger);}
.currency-label{font-size:.68rem;color:var(--text-muted);margin-bottom:.15rem;}
.currency-value{font-family:'JetBrains Mono',monospace;font-size:.95rem;font-weight:500;color:var(--text-primary);}

/* ===== CALCULATOR ===== */
.calc-display{background:var(--bg-base);border-radius:var(--r);padding:.8rem 1rem;margin-bottom:.8rem;text-align:right;min-height:60px;}
.calc-expr{font-size:.7rem;color:var(--text-muted);font-family:'JetBrains Mono',monospace;min-height:16px;}
#cDisplay{font-family:'JetBrains Mono',monospace;font-size:1.5rem;font-weight:500;color:var(--text-primary);}
.calc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;}
.calc-btn{padding:.65rem;border-radius:var(--r);font-size:.9rem;font-weight:600;background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border);transition:all var(--transition);cursor:pointer;}
.calc-btn:hover{background:var(--bg-hover);}
.calc-btn.op{background:var(--accent-muted);color:var(--accent);border-color:transparent;}
.calc-btn.clear{background:var(--danger-muted);color:var(--danger);border-color:transparent;}
.calc-btn.eq{background:var(--accent);color:#fff;border-color:transparent;}
.calc-btn.span2{grid-column:span 2;}

/* ===== PAGINATION ===== */
nav[role=navigation]{display:flex;justify-content:center;margin-top:.5rem;}
.pagination,.flex.items-center{display:flex;gap:.3rem;flex-wrap:wrap;align-items:center;}
.page-link,.pagination a,.relative.inline-flex{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:.2rem .5rem;border-radius:var(--r);font-size:.78rem;font-weight:500;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);transition:all var(--transition);}
.page-link:hover,.pagination a:hover{border-color:var(--accent);color:var(--accent);}
.page-item.active .page-link{background:var(--accent);border-color:var(--accent);color:#fff;}

/* ===== NOTES ===== */
.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;}
.note-card{background:var(--bg-elevated);border-radius:var(--rl);padding:1rem;border:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem;transition:border-color var(--transition);}
.note-card:hover{border-color:var(--border-light);}
.note-card.color-blue{border-top:3px solid var(--accent);}
.note-card.color-green{border-top:3px solid var(--success);}
.note-card.color-yellow{border-top:3px solid var(--gold);}
.note-card.color-red{border-top:3px solid var(--danger);}
.note-title{font-weight:600;color:var(--text-primary);font-size:.88rem;}
.note-body{font-size:.8rem;color:var(--text-secondary);line-height:1.6;flex:1;}
.note-date{font-size:.68rem;color:var(--text-muted);font-family:'JetBrains Mono',monospace;}

/* ===== CUSTOMER AVATAR ===== */
.customer-avatar{width:36px;height:36px;border-radius:9px;background:var(--accent-muted);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0;}

/* ===== LOGIN PAGE ===== */
.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-base);padding:1rem;}
.login-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--rl);padding:2.5rem;width:100%;max-width:400px;}
.login-logo{display:flex;align-items:center;gap:.8rem;margin-bottom:2rem;}

/* ===== PROFILE THEME SELECT ===== */
.theme-select-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.65rem 1.1rem;border-radius:var(--r);border:2px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-size:.82rem;font-weight:600;cursor:pointer;transition:all var(--transition);}
.theme-select-btn svg{width:16px;height:16px;}
.theme-select-btn:hover{border-color:var(--accent);color:var(--accent);}
.theme-select-btn.active{border-color:var(--accent);background:var(--accent-muted);color:var(--accent);}

/* ===== CARI CARDS ===== */
.cari-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.1rem;}
.cari-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--rl);padding:1.2rem;transition:border-color var(--transition);}
.cari-card:hover{border-color:var(--border-light);}
.cari-card-header{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:1rem;}
.cari-company{font-weight:600;color:var(--text-primary);font-size:.9rem;line-height:1.3;}
.cari-contact{font-size:.75rem;color:var(--text-muted);margin-top:.15rem;}
.cari-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem;margin-top:.8rem;}
.cari-stat{background:var(--bg-elevated);border-radius:var(--r);padding:.6rem .7rem;}
.cari-stat-label{font-size:.61rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.25rem;}
.cari-stat-value{font-family:'JetBrains Mono',monospace;font-size:.87rem;font-weight:500;}

/* ===== RESERVATION FORM ===== */
.res-section{margin-bottom:1.5rem;}
.res-section-title{display:flex;align-items:center;gap:.45rem;font-family:'Syne',sans-serif;font-size:.75rem;font-weight:700;color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.9rem;padding-bottom:.6rem;border-bottom:1px solid var(--border);}
.res-section-title svg{width:14px!important;height:14px!important;flex-shrink:0;}
.res-mode-tabs{display:flex;gap:.5rem;flex-wrap:wrap;}
.res-mode-tab{position:relative;cursor:pointer;}
.res-mode-tab input[type=radio]{position:absolute;opacity:0;width:0;height:0;}
.res-mode-tab span{display:inline-flex;align-items:center;padding:.55rem 1.1rem;border-radius:var(--r);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-size:.82rem;font-weight:600;transition:all var(--transition);cursor:pointer;}
.res-mode-tab input:checked+span{background:var(--accent);border-color:var(--accent);color:#fff;}
.res-mode-tab span:hover{border-color:var(--border-light);color:var(--text-primary);}
.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.82rem;color:var(--text-secondary);}
.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);}

/* ===== CBM HESAPLAMA ===== */
.cbm-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.2rem;}
.cbm-tab{padding:.5rem 1.2rem;border-radius:20px;font-size:.83rem;font-weight:600;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:all var(--transition);}
.cbm-tab:hover{border-color:var(--border-light);color:var(--text-primary);}
.cbm-tab.active{background:#E8670A;border-color:#E8670A;color:#fff;}
.cbm-header{display:grid;grid-template-columns:1fr 1fr 1fr 80px 110px 44px;gap:.5rem;padding:.3rem 0;font-size:.65rem;font-weight:700;color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;}
.cbm-row{display:grid;grid-template-columns:1fr 1fr 1fr 80px 110px 44px;gap:.5rem;margin-bottom:.4rem;align-items:center;}
.cbm-input{width:100%;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r);padding:.58rem .65rem;font-size:.83rem;color:var(--text-primary);outline:none;font-family:'JetBrains Mono',monospace;transition:border-color var(--transition);}
.cbm-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);}
.cbm-input::placeholder{color:var(--text-muted);font-family:'Plus Jakarta Sans',sans-serif;}
.cbm-delete{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(240,79,79,.08);border:1px solid rgba(240,79,79,.2);border-radius:var(--r);color:var(--danger);cursor:pointer;transition:all var(--transition);}
.cbm-delete:hover{background:rgba(240,79,79,.18);}
.cbm-delete svg{width:15px;height:15px;}
.btn-cbm-calc{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.3rem;border-radius:var(--r);background:#E8670A;border:1px solid #E8670A;color:#fff;font-weight:600;font-size:.84rem;cursor:pointer;transition:all var(--transition);}
.btn-cbm-calc:hover{background:#D45C09;}
.btn-cbm-calc svg{width:15px;height:15px;}
.cbm-result-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.9rem;}
.cbm-res-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--rl);padding:1rem 1.1rem;text-align:center;position:relative;}
.cbm-res-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--border);border-radius:var(--rl) var(--rl) 0 0;}
.cbm-res-card.cbm-accent::before{background:var(--accent);}
.cbm-res-card.cbm-orange::before{background:#E8670A;}
.cbm-res-icon{width:28px;height:28px;margin:0 auto .5rem;opacity:.45;}
.cbm-res-icon svg{width:28px;height:28px;}
.cbm-res-label{font-size:.64rem;font-weight:700;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3rem;}
.cbm-res-value{font-family:'JetBrains Mono',monospace;font-size:1.25rem;font-weight:500;color:var(--text-primary);}
.cbm-res-unit{font-size:.67rem;color:var(--text-muted);margin-top:.15rem;}

/* ===== RESPONSIVE ===== */
@media(max-width:1200px){.cbm-result-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:900px){
  .grid-4{grid-template-columns:1fr 1fr;}
  .grid-cols-3-1{grid-template-columns:1fr;}
  .cbm-header,.cbm-row{grid-template-columns:1fr 1fr 1fr 70px;}
  .cbm-result-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:600px){
  .grid-2,.grid-3,.grid-4,.form-row{grid-template-columns:1fr;}
  .page-body{padding:1rem;}
}

/* ===== KEYFRAMES ===== */
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* ===== LOGIN PAGE FIX ===== */
.login-card svg { width:18px; height:18px; flex-shrink:0; }
.login-card .input-icon svg { width:16px; height:16px; }

/* ===== GLOBAL SVG GUARD ===== */
svg:not([width]):not([height]) { width:16px; height:16px; }
.btn svg, .nav-item svg, .badge svg { width:14px; height:14px; flex-shrink:0; }
.stat-value svg, .card-title svg { width:16px; height:16px; flex-shrink:0; }
