
/* =========================================================
   DAILY EXPENSES TRACKING
   Feature-specific styles only. No generic selectors.
========================================================= */
.daily-expenses-shell{padding-bottom:28px}
.daily-expenses-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:8px}.daily-expenses-toolbar-compact{min-height:8px}
.daily-expenses-title{margin:0;font-size:24px;color:#172033}
.daily-expenses-subtitle{margin:5px 0 0;color:#64748b;font-size:13px}
.daily-expenses-month{display:flex;align-items:center;gap:8px}
.daily-expenses-month select{min-width:170px}

.daily-expenses-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
.daily-expenses-summary-card{background:#fff;border:1px solid #e5e9f0;border-radius:12px;padding:15px;box-shadow:0 5px 18px #00000008}
.daily-expenses-summary-card .label{font-size:12px;color:#64748b;font-weight:700}
.daily-expenses-summary-card .value{font-size:22px;font-weight:800;margin-top:5px;color:#172033}
.daily-expenses-summary-card .hint{font-size:11px;color:#94a3b8;margin-top:4px}

.daily-expenses-top-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px;margin-bottom:16px}
.daily-expenses-panel{background:#fff;border:1px solid #e5e9f0;border-radius:12px;overflow:hidden;box-shadow:0 5px 18px #00000008}
.daily-expenses-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid #edf0f4}
.daily-expenses-panel-head h3{margin:0;font-size:15px}
.daily-expenses-panel-head .muted{font-size:12px}
.daily-expenses-panel-body{padding:14px 16px}
.daily-expenses-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.daily-expenses-export-wrap{position:relative}.daily-expenses-export-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:170px;background:#fff;border:1px solid #dbe1e8;border-radius:10px;box-shadow:0 12px 28px #0002;padding:6px}.daily-expenses-export-menu[hidden]{display:none}.daily-expenses-export-menu button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:9px 10px;border-radius:7px;font:inherit;font-size:12px;cursor:pointer}.daily-expenses-export-menu button:hover{background:#f1f5f9}

.daily-expenses-table-wrap{overflow:auto}
.daily-expenses-table{width:100%;border-collapse:collapse;min-width:780px}
.daily-expenses-table th,.daily-expenses-table td{padding:11px 12px;border-bottom:1px solid #edf0f4;text-align:left;font-size:13px;vertical-align:middle}
.daily-expenses-table th{font-size:11px;text-transform:uppercase;letter-spacing:.35px;color:#64748b;background:#f8fafc;white-space:nowrap}
.daily-expenses-table tr:last-child td{border-bottom:0}
.daily-expenses-table tr:hover td{background:#fafcff}
.daily-expenses-table .amount{font-weight:800;white-space:nowrap}
.daily-expenses-table .actions{white-space:nowrap}
.daily-expenses-table .actions .btn{padding:6px 9px;font-size:11px;margin-right:4px}

.daily-expenses-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}
.daily-expenses-pill.paid{background:#dcfce7;color:#166534}
.daily-expenses-pill.unpaid{background:#fef3c7;color:#92400e}
.daily-expenses-pill.necessary{background:#e0f2fe;color:#075985}
.daily-expenses-pill.optional{background:#f3e8ff;color:#6b21a8}
.daily-expenses-pill.unnecessary{background:#fee2e2;color:#991b1b}
.daily-expenses-pill.fixed{background:#eef2ff;color:#3730a3}
.daily-expenses-pill.daily{background:#f1f5f9;color:#334155}

.daily-expenses-filterbar{display:grid;grid-template-columns:1.4fr .9fr .9fr .9fr .95fr auto;gap:8px;margin-bottom:12px}
.daily-expenses-filterbar input,.daily-expenses-filterbar select{min-width:0}
.daily-expenses-empty{padding:34px;text-align:center;color:#64748b;font-size:13px}
.daily-expenses-category-list{display:flex;flex-wrap:wrap;gap:8px}
.daily-expenses-category-item{display:inline-flex;align-items:center;gap:5px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:5px 9px;font-size:12px}
.daily-expenses-category-item button{border:0;background:transparent;cursor:pointer;color:#64748b;font-size:12px;padding:0 1px}
.daily-expenses-category-add{display:flex;gap:8px;margin-top:12px}
.daily-expenses-category-add input{flex:1}

.daily-expenses-modal{position:fixed;inset:0;background:#0f172a66;display:none;align-items:center;justify-content:center;padding:20px;z-index:6000}
.daily-expenses-modal.show{display:flex}
.daily-expenses-modal-card{width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 24px 80px #0004;padding:20px}
.daily-expenses-modal-card h3{margin:0 0 5px}
.daily-expenses-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.daily-expenses-form-grid .full{grid-column:1/-1}
.daily-expenses-form-grid label{display:block;font-size:12px;font-weight:700;color:#475569;margin-bottom:5px}
.daily-expenses-form-grid input,.daily-expenses-form-grid select,.daily-expenses-form-grid textarea{width:100%;font:inherit;padding:10px;border:1px solid #d6dce6;border-radius:8px;outline:none}
.daily-expenses-form-grid textarea{min-height:82px;resize:vertical}
.daily-expenses-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}

.dashboard-expense-chart-panel{margin-top:16px}
.dashboard-expense-chart-wrap{height:300px;padding:12px 16px 18px;position:relative}
.dashboard-expense-chart-wrap canvas{width:100%!important;height:100%!important}

.daily-expenses-income-table{min-width:650px}

@media(max-width:1050px){
  .daily-expenses-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .daily-expenses-top-grid{grid-template-columns:1fr}
  .daily-expenses-filterbar{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .daily-expenses-summary{grid-template-columns:1fr}
  .daily-expenses-form-grid{grid-template-columns:1fr}
  .daily-expenses-form-grid .full{grid-column:auto}
  .daily-expenses-filterbar{grid-template-columns:1fr}
}

/* Report + filtered total additions */
.daily-expenses-total-row td{background:#f8fafc;border-top:2px solid #dbe3ec;font-weight:700}
.daily-expenses-total-row:hover td{background:#f8fafc!important}
.daily-expenses-total-note{font-size:11px;color:#64748b;font-weight:500}
.daily-expenses-report-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:12px 14px;background:#f8fafc;border:1px solid #e5e9f0;border-radius:10px}
.daily-expenses-report-bar>div:first-child{display:flex;flex-direction:column;gap:3px}
.daily-expenses-report-bar strong{font-size:13px;color:#172033}
.daily-expenses-report-bar .muted{font-size:11px}
.daily-expenses-report-modal-card{width:min(680px,100%)}
.daily-expenses-report-mode{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px;padding:11px 12px;background:#f8fafc;border:1px solid #e5e9f0;border-radius:9px}
.daily-expenses-report-mode label{font-size:12px;font-weight:700;color:#334155;cursor:pointer}
.daily-expenses-report-mode input{margin-right:6px}
.daily-expenses-report-preview{margin-top:14px;padding:12px;border:1px dashed #cbd5e1;border-radius:9px;background:#fbfdff;font-size:12px;color:#334155;line-height:1.7}
.daily-expenses-report-preview .muted{font-size:11px;color:#64748b}
@media(max-width:650px){
  .daily-expenses-report-bar{align-items:stretch;flex-direction:column}
  .daily-expenses-report-bar .btn{width:100%}
}

/* V10: compact management controls + category tracker */
.daily-expenses-management-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.daily-expenses-management-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;background:#fff;border:1px solid #e5e9f0;border-radius:12px;padding:16px;box-shadow:0 5px 18px #00000008}
.daily-expenses-management-card h3{margin:3px 0 4px;font-size:15px;color:#172033}
.daily-expenses-management-card .muted{font-size:12px}
.daily-expenses-management-kicker{font-size:10px;font-weight:800;letter-spacing:.8px;color:#64748b}
.daily-expenses-management-meta{display:flex;flex-direction:column;align-items:flex-end;min-width:80px}
.daily-expenses-management-meta b{font-size:18px;color:#172033}
.daily-expenses-management-meta span{font-size:10px;color:#94a3b8}
.daily-expenses-management-card>.btn{grid-column:2;grid-row:1 / span 1;white-space:nowrap}
.daily-expenses-manager-card{width:min(900px,100%)}
.daily-expenses-manager-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.daily-expenses-manager-head h3{margin:0 0 4px}
.daily-expenses-manager-category-add{margin:0 0 14px}
.daily-expenses-category-manager-list{display:flex;flex-direction:column;gap:8px}
.daily-expenses-category-manager-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid #e5e9f0;border-radius:10px;background:#fafcff}
.daily-expenses-category-manager-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.daily-expenses-category-manager-actions .btn{padding:6px 9px;font-size:11px}
.category-view-btn{padding:6px 9px;font-size:11px;background:#f8fafc;border:1px solid #dbe3ec;color:#334155}
.daily-expenses-category-report-card{width:min(980px,100%)}
.daily-expenses-category-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.daily-expenses-category-summary>div{border:1px solid #e5e9f0;border-radius:10px;background:#f8fafc;padding:12px}
.daily-expenses-category-summary span{display:block;font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.3px}
.daily-expenses-category-summary b{display:block;font-size:18px;margin-top:3px;color:#172033}
.daily-expenses-category-report-actions{display:flex;justify-content:flex-end;margin-bottom:10px}
.daily-expenses-report-modal-card{z-index:2}
/* Amounts are intentionally plain text inputs; no browser spinner controls. */
.dex-amount-input{appearance:textfield;-moz-appearance:textfield}
.dex-amount-input::-webkit-outer-spin-button,.dex-amount-input::-webkit-inner-spin-button{appearance:none;-webkit-appearance:none;margin:0}
@media(max-width:900px){
  .daily-expenses-management-strip{grid-template-columns:1fr}
  .daily-expenses-category-summary{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .daily-expenses-management-card{grid-template-columns:1fr}
  .daily-expenses-management-card>.btn{grid-column:auto;grid-row:auto;width:100%}
  .daily-expenses-manager-head{align-items:stretch;flex-direction:column}
  .daily-expenses-category-manager-row{grid-template-columns:1fr}
  .daily-expenses-category-manager-actions{justify-content:flex-start}
  .daily-expenses-category-summary{grid-template-columns:1fr}
}
