.responsive-menu-toggle,.sidebar-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.content{min-width:0;transition:margin-left .22s ease}
.sidebar{transition:transform .22s ease,visibility .22s}
@media(min-width:1200px){body.sidebar-collapsed .sidebar{transform:translateX(-100%);visibility:hidden}body.sidebar-collapsed .content{margin-left:0}.sidebar .brand{gap:7px}.sidebar .brand>div{min-width:0}.sidebar-close{width:28px;padding:4px}}
.insight-panel{min-width:0}.insight-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.insight-head p{color:#6a7e8f;font-size:13px;margin:6px 0 0}
.comparison-filter{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end;padding:16px 0}.comparison-filter label{font-size:12px;color:#536b7d}.comparison-filter input{margin-top:5px}.comparison-presets{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0}
.comparison-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.comparison-card{padding:17px;border:1px solid #dae7ef;border-radius:12px;background:linear-gradient(135deg,#f4faff,#fff);min-width:0}.comparison-card>span{font-size:12px;color:#637c8e}.comparison-card strong{display:block;font-size:clamp(17px,1.6vw,25px);margin:8px 0;color:#173e5b;overflow-wrap:anywhere}.comparison-card small{display:block;color:#677b88;font-size:12px}.metric-delta{display:inline-flex;font-size:12px;border-radius:5px;padding:4px 7px;margin-top:8px;background:#edf1f4;color:#4a6274}.metric-delta.good{color:#146449;background:#e6f5ee}.metric-delta.bad{color:#ab3647;background:#fff0f1}
.comparison-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px}.insight-panel h6{font-weight:700;color:#204b67}.insight-note{font-size:12px;color:#677e8e;line-height:1.7;padding:12px;border-radius:8px;background:#f3f7fa}.expense-detail{max-height:380px;overflow:auto}.expense-detail thead th{position:sticky;top:0;background:#f0f6fa;z-index:1}.comparison-chart{display:flex;gap:6px;height:180px;align-items:flex-end;overflow:hidden;border-bottom:1px solid #dae5ed;margin:16px 0 6px}.comparison-day{flex:1;min-width:0;display:flex;gap:2px;height:100%;align-items:flex-end}.comparison-day span{flex:1;border-radius:3px 3px 0 0;background:#278bd2;min-height:1px}.comparison-day span+span{background:#c5ddec}.chart-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:#627b8c}.chart-legend i{display:inline-block;width:9px;height:9px;border-radius:2px;background:#278bd2;margin-right:5px}.chart-legend span+span i{background:#c5ddec}.comparison-table{font-size:13px}.comparison-table td:first-child{white-space:normal;overflow-wrap:anywhere}
.comparison-table .text-end{white-space:nowrap}.insight-panel [type=date]{min-width:0;max-width:100%}
@media(max-width:900px){.comparison-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-filter button{grid-column:1/-1}.comparison-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-columns{grid-template-columns:1fr}}
@media(max-width:400px){.comparison-card{padding:12px}.comparison-cards{gap:8px}.comparison-card strong{font-size:17px}.insight-head .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.content,.sidebar{transition:none}}
@media print{.sidebar,.responsive-menu-toggle,.comparison-filter,.comparison-presets{display:none!important}.content{margin-left:0!important}.comparison-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.expense-detail{max-height:none;overflow:visible}}
