/* Intentionally no mobile .gqdash styles: keep the approved production palette. */
#dt-finance.gqf { min-width:0; }
.gqf-old-nav { display:none!important; }
.gqf-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; padding:5px; background:#edf3fa; border:1px solid #dfe8f4; border-radius:10px; margin-bottom:12px; }
.gqf-tab { border:1px solid transparent; border-radius:7px; background:transparent; color:#6b7f9a; padding:11px 4px; font:inherit; font-size:13px; font-weight:600; line-height:1.4; cursor:pointer; }
.gqf-tab[aria-selected="true"] { color:#1769e0; background:#fff; border-color:#d5e5f9; box-shadow:0 2px 6px #3458880c; }
.gqf-tab-mobile-icon { display:none; }
.gqf-report-nav { display:flex; gap:7px; margin:0 0 14px; }
.gqf-report-nav[hidden] { display:none; }
.gqf-button { border:1px solid #d8e5f5; border-radius:7px; background:#f1f7ff; color:#2673cf; font:inherit; font-size:12px; padding:8px 12px; cursor:pointer; }
.gqf-button[aria-pressed="true"] { background:#e4efff; border-color:#99bff3; font-weight:600; }
.gqf button:focus-visible,.gqf select:focus-visible,.gqf input:focus-visible,.gqf-bill-modal [role="button"]:focus-visible { outline:2px solid #4086e8; outline-offset:3px; }
.gqf button:disabled { opacity:.4; cursor:default; }
#dt-finance.gqf[data-view="stats"] #hf-content,#dt-finance.gqf[data-view="summary"] #hf-content { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:start; }
.gqf-metrics { grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:10px!important; margin:0!important; }
.gqf-metrics>.glass-card { padding:16px 8px!important; border-radius:10px!important; background:linear-gradient(135deg,#f4f8ff,#eaf2ff)!important; border:1px solid #dce8f8!important; box-shadow:0 3px 8px #29466a06!important; }
.gqf-metrics>.glass-card>div:first-child { font-size:12px!important; margin-bottom:6px; }
.gqf-metrics>.glass-card[data-tone="green"] { background:linear-gradient(135deg,#f0fcf6,#e3f6ee)!important; border-color:#d5eee1!important; }
.gqf-metrics>.glass-card[data-tone="amber"] { background:linear-gradient(135deg,#fffaf2,#fff1da)!important; border-color:#f3e5cc!important; }
.gqf-metrics>.glass-card[data-tone="violet"] { background:linear-gradient(135deg,#faf7ff,#efe9fb)!important; border-color:#e7ddf4!important; }
.gqf-report-card { min-width:0; padding:16px!important; margin:0!important; border-radius:10px!important; background:#fff!important; border:1px solid #e0e9f3!important; box-shadow:0 3px 12px #23436708!important; }
.gqf-report-card .gc-title { font-size:14px!important; font-weight:700!important; color:#213859!important; border-bottom:1px solid #edf2f8; padding-bottom:10px; margin-bottom:10px; }
.gqf-report-card[data-section="rooms"],.gqf-report-card[data-section="recoup"],.gqf-report-card[data-section="types"],.gqf-report-card[data-section="balance"] { grid-column:1/-1; }
.gqf-report-card[data-section="types"]>.gc-title+div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:26px; }
.gqf-report-card[data-section="balance"] { background:linear-gradient(120deg,#edf9f4,#f5fcfa)!important; border-color:#d9eee3!important; }
.gqf-type-row { display:flex; justify-content:space-between; padding:10px 0!important; font-size:13px!important; gap:12px; border-bottom:1px solid #edf2f8; }
.gqf-type-row small { font-size:10px; margin-left:6px; }
.gqf-month-net { font-size:24px; color:#25966a; font-weight:700; margin:12px 0; }
.gqf-room-table-scroll { overflow:auto; }
.gqf-room-table-scroll table { width:100%; border-collapse:collapse; }
.gqf-room-table-scroll th:not(:first-child),.gqf-room-table-scroll td:not(:first-child) { text-align:right; white-space:nowrap; }
.gqf-room-table-scroll td { border-bottom:1px solid #edf2f8; }
.gqf-months { grid-column:1/-1; display:flex; overflow:auto; margin:0!important; gap:6px!important; padding-bottom:3px!important; }
.gqf-months button { min-height:36px; border-radius:7px!important; font-size:12px!important; padding:7px 11px!important; }
.gqf-months button { white-space:nowrap; }
.gqf-months button[aria-pressed="true"] { color:#246dca; background:#e5f0ff; border-color:#a4c7f5; }
.gqf-room-head,.gqf-room-row { display:grid!important; grid-template-columns:1.2fr .8fr .8fr .8fr .8fr .6fr; gap:8px; font-size:12px!important; padding:10px 6px!important; }
.gqf-room-head { background:#f1f6fc; color:#7488a4; border-radius:6px; }
.gqf-room-head>span:nth-child(n+3) { text-align:right; }
.gqf-report-card table { min-width:370px; font-size:12px!important; }
.gqf-report-card th,.gqf-report-card td { padding:10px 8px!important; }
.gqf-report-card th { background:#f2f7fc; color:#7488a4; }
.gqf-filters { display:grid; grid-template-columns:130px 120px minmax(140px,1fr) auto; gap:8px; padding:12px; border:1px solid #e0eaf5; background:#f7faff; border-radius:10px; margin-bottom:12px; }
.gqf-filters select,.gqf-filters input,.gqf-pagination select { min-width:0; border:1px solid #dce7f4; border-radius:7px; padding:9px 10px; background:#fff; color:#34506f; font:inherit; font-size:12px; box-sizing:border-box; }
.gqf-record-summary { display:flex; flex-wrap:wrap; gap:14px; font-size:12px; color:#7890ab; margin:0 0 12px; }
.gqf-record-summary>span:first-child { margin-right:auto; }
.gqf .in,.gqf-bill-modal .in { color:#159667; }
.gqf .out { color:#d86063; }
.gqf-record-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.gqf-record { width:100%; min-width:0; display:block; text-align:left; border:1px solid #e1eaf4; border-radius:10px; background:#fff; box-shadow:0 3px 9px #23436706; padding:14px; color:#28415f; font:inherit; cursor:pointer; }
.gqf-record:hover { border-color:#a7c8f4; background:#fbfdff; }
.gqf-record-top { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.gqf-record-type { font-size:13px; font-weight:600; }
.gqf-status { font-size:10px; border-radius:5px; padding:3px 6px; }
.gqf-status.green { background:#e8f8f0; color:#169569; }
.gqf-status.amber { background:#fff2df; color:#b98128; }
.gqf-status.red { background:#fff0ef; color:#d56260; }
.gqf-amount { margin-left:auto; font-size:16px; font-variant-numeric:tabular-nums; }
.gqf-record-meta { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; font-size:11px; color:#7890aa; overflow-wrap:anywhere; }
.gqf-record-meta>span:last-child { margin-left:auto; }
.gqf-record-bottom { display:flex; gap:12px; justify-content:space-between; align-items:start; margin-top:10px; border-top:1px solid #eff3f8; padding-top:9px; font-size:11px; color:#7b8eaa; }
.gqf-record-bottom>span { overflow-wrap:anywhere; min-width:0; }
.gqf-record-bottom em { font-style:normal; white-space:nowrap; color:#3e82d5; }
.gqf-flow-list { display:grid; gap:8px; }
.gqf-flow-list .gqf-record { border-left:3px solid #c3dcf9; }
.gqf-day { display:flex; color:#6985a7; font-size:12px; font-weight:600; padding:14px 2px 3px; }
.gqf-day:first-child { padding-top:0; }
.gqf-pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:10px; margin-top:16px; color:#7890aa; font-size:12px; }
.gqf-empty { grid-column:1/-1; background:#f7faff; border:1px dashed #dce7f4; border-radius:9px; padding:22px 14px; font-size:12px; color:#8999af; text-align:center; }
.gqf-hint { color:#8a9ab0; font-size:11px; line-height:1.7; margin:0 0 12px; }
.gqf-bill-modal { z-index:100005!important; padding:24px; box-sizing:border-box; background:rgba(28,49,79,.38)!important; }
.gqf-bill-modal .n-sheet { width:min(960px,100%)!important; max-width:960px!important; max-height:calc(100dvh - 64px)!important; border-radius:14px!important; display:flex; flex-direction:column; overflow:hidden!important; box-shadow:0 24px 90px #183a6438!important; }
.gqf-bill-modal .n-hero { flex:0 0 auto!important; background:linear-gradient(120deg,#f0f6ff,#f8fbff)!important; color:#254268!important; border-bottom:1px solid #dfeaf6; padding:18px 22px!important; }
.gqf-bill-modal .n-htop .l { font-size:16px!important; color:#254268!important; }
.gqf-bill-modal .n-hx { background:#fff!important; color:#6c85a5!important; border:1px solid #d9e5f4; border-radius:8px; min-width:34px; min-height:34px; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.gqf-bill-modal .n-hero .v { font-size:25px!important; margin-top:8px!important; }
.gqf-bill-modal .n-hero .v.ex { color:#d15f66!important; }
.gqf-bill-modal .n-hero .v.in { color:#159667!important; }
.gqf-bill-modal .nst.gqf-status.amber { background:#fff2df!important; color:#b27d29!important; }
.gqf-bill-modal .nst.gqf-status.green { background:#e8f8f0!important; color:#159667!important; }
.gqf-bill-modal .nst.gqf-status.red { background:#fff0ef!important; color:#d15f66!important; }
.gqf-bill-modal .n-hero .tg { color:#7f93af!important; font-size:12px!important; }
.gqf-bill-modal .n-body { flex:1; min-height:0; overflow:auto; padding:12px 20px!important; background:#f5f8fc!important; }
.gqf-bill-modal .nrow { padding:15px!important; border:1px solid #e0e9f4!important; border-radius:10px!important; background:#fff!important; margin-top:9px; }
.gqf-bill-modal .nbi { border-radius:9px!important; }
.gqf-bill-modal .hf-r3 { flex-wrap:wrap; }
.gqf-bill-modal .hf-r3>span { overflow-wrap:anywhere; }
.gqf-bill-modal .narr { color:#6593cb!important; font-size:16px!important; }
.gqf-bill-modal .ndet { padding:15px!important; background:#fff!important; border:1px solid #e0e9f4!important; border-top:0!important; border-radius:0 0 10px 10px!important; margin:-3px 0 8px!important; }
.gqf-section-title { color:#30527d; font-size:12px; font-weight:700; padding:12px 0 8px; border-bottom:1px solid #edf2f8; margin-bottom:8px; }
.gqf-section-title:first-child { padding-top:0; }
.gqf-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 26px; }
.gqf-field { display:grid; grid-template-columns:85px minmax(0,1fr); gap:8px; font-size:12px; line-height:1.65; min-width:0; }
.gqf-field.wide { grid-column:1/-1; }
.gqf-field>span { color:#899ab1; }
.gqf-field>strong { font-weight:400; color:#34516f; min-height:19px; overflow-wrap:anywhere; }
.gqf-bill-modal .fbillc-foot { display:flex; align-items:center; gap:12px; background:#fff!important; border-top:1px solid #e4edf7; padding:12px 20px!important; }
.gqf-modal-note { margin-right:auto; font-size:11px; color:#8195ad; }
.gqf-bill-modal .fbillc-foot .btn { flex:none!important; width:auto!important; min-width:88px; padding:9px 18px!important; background:#edf5ff!important; color:#2d75d0!important; border:1px solid #d7e6f9!important; border-radius:8px!important; box-shadow:none!important; }
@media(min-width:769px) {
 .gq-v3:has(#dt-finance.active) .gq-v3-side { display:block!important; }
 .gq-v3:has(#dt-finance.active) #dt-shared-top,.gq-v3:has(#dt-finance.active) #detail-tabs { grid-column:1/10!important; }
 .gq-v3 #dt-finance.active { grid-column:1/10!important; grid-row:5!important; padding:0!important; }
 #dt-finance.gqf .gqdash { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .gqf .gqdash>.gq-filter,.gqf .gqdash>.gq-profit,.gqf .gqdash>[data-gqf-card="assets"],.gqf .gqdash>[data-gqf-card="overview"],.gqf .gqdash>[data-gqf-card="advice"],.gqf .gqdash>.gq-del { grid-column:1/-1; margin:0!important; }
 .gqf .gqdash>.gq-card { min-width:0; margin:0!important; }
 .gqf .gqdash>.gq-profit { border-radius:11px!important; background:linear-gradient(120deg,#edf8f2,#f6fbf8)!important; border:1px solid #d9ebdf; }
}
/* Approved compact mobile tabs: existing 46px buttons / 56px group, no layout growth. */
@media(max-width:768px) {
 #dt-finance.gqf .gqf-nav { grid-template-columns:repeat(4,minmax(0,1fr)); gap:3px; padding:4px; margin:4px 0 13px; background:#fff; border:1px solid #e7e9ef; border-radius:12px; box-shadow:0 1px 3px #0000000a; }
 #dt-finance.gqf .gqf-tab { display:flex; flex-direction:row; align-items:center; justify-content:center; gap:3px; min-width:0; height:46px; min-height:46px; padding:10px 2px; font-size:11px; font-weight:600; line-height:16px; color:#596579; border:1px solid transparent; border-radius:8px; background:transparent; box-shadow:none; transition:background .15s,color .15s; -webkit-tap-highlight-color:transparent; touch-action:manipulation; }
 #dt-finance.gqf .gqf-tab:first-child { font-size:10px; }
 #dt-finance.gqf .gqf-tab-name { white-space:nowrap; }
 #dt-finance.gqf .gqf-tab-emoji { display:none; }
 #dt-finance.gqf .gqf-tab-mobile-icon { display:block; width:13px; height:13px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; color:#8692a5; }
 #dt-finance.gqf .gqf-tab[aria-selected="true"] { color:#376bce; background:#eaf2ff; border-color:transparent; box-shadow:none; }
 #dt-finance.gqf .gqf-tab[aria-selected="true"] .gqf-tab-mobile-icon { color:#638bd1; }
 #dt-finance.gqf .gqf-tab:active { color:#2c60be; background:#dfeaff; border-color:transparent; box-shadow:none; transform:none; }
 #dt-finance.gqf .gqdash>.gq-filter,#dt-finance.gqf .gqdash>.gq-profit,#dt-finance.gqf .gqdash>.gq-card { border:1px solid #e7e9ef; border-radius:12px; box-shadow:0 1px 3px #0000000a; }
 #dt-finance.gqf .gqf-report-card,#dt-finance.gqf .gqf-record { border-color:#e7e9ef!important; border-radius:12px!important; box-shadow:0 1px 3px #0000000a!important; }
 #dt-finance.gqf .gqf-filters { background:#fff; border-color:#e7e9ef; border-radius:12px; box-shadow:0 1px 3px #0000000a; }
}
@media(max-width:768px) and (prefers-reduced-motion:reduce) { #dt-finance.gqf .gqf-tab { transition:none; } }
@media(min-width:769px) and (max-width:1200px) {
 .gq-v3:has(#dt-finance.active) #dt-shared-top,.gq-v3:has(#dt-finance.active) #detail-tabs,.gq-v3 #dt-finance.active { grid-column:1/9!important; }
 .gqf-filters { grid-template-columns:1fr 1fr; }
 .gqf-filters input { grid-column:1; }
 .gqf-record-list { grid-template-columns:1fr; }
}
@media(max-width:768px) {
 #dt-finance.gqf { padding-bottom:calc(85px + env(safe-area-inset-bottom,0px))!important; }
 .gqf-nav { gap:3px; padding:4px; border-radius:10px; margin:4px 0 13px; }
 .gqf-tab { font-size:11px; padding:10px 3px; min-height:46px; line-height:1.5; }
 .gqf-tab:first-child { font-size:10px; }
 .gqf-report-nav .gqf-button { min-height:42px; flex:1; background:#f3f7ff; }
 .gqf-report-nav .gqf-button[aria-pressed="true"] { background:linear-gradient(120deg,#e6f0ff,#f0f5ff); border-color:#b4cff4; }
 #dt-finance.gqf[data-view="stats"] #hf-content,#dt-finance.gqf[data-view="summary"] #hf-content { grid-template-columns:minmax(0,1fr); gap:12px; }
 .gqf-report-card { padding:14px!important; border-radius:12px!important; }
 .gqf-report-card[data-section="types"]>.gc-title+div { grid-template-columns:minmax(0,1fr); }
 .gqf-metrics { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:9px!important; }
 .gqf-metrics>.glass-card { padding:14px 8px!important; border-radius:12px!important; }
 .gqf-room-head,.gqf-room-row { min-width:450px; }
 .gqf-report-card[data-section="rooms"] .gc-title+div { overflow:auto; }
 .gqf-filters { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:11px; background:linear-gradient(140deg,#f1f7ff,#f8fbff); border-radius:12px; }
 .gqf-filters select,.gqf-filters input { min-height:42px; font-size:12px; padding:10px 8px; }
 .gqf-filters input { grid-column:1/-1; grid-row:2; }
 .gqf-filters>.gqf-button { grid-column:1/-1; min-height:36px; }
 .gqf-record-summary { gap:8px 12px; font-size:11px; padding:0 2px; }
 .gqf-record-summary>span:first-child { width:100%; }
 .gqf-record-list { grid-template-columns:minmax(0,1fr); }
 .gqf-record { border-radius:12px; padding:14px; box-shadow:0 4px 12px #23436708; }
 .gqf-amount { font-size:17px; }
 .gqf-record-meta { font-size:11px; line-height:1.6; }
 .gqf-record-meta>span:last-child { margin-left:0; }
 .gqf-flow-list .gqf-record { border-left:3px solid #b9d6f9; background:linear-gradient(110deg,#fff,#fbfdff); }
 .gqf-pagination .gqf-button { min-height:42px; }
 .gqf-bill-modal { padding:12px!important; align-items:center!important; }
 .gqf-bill-modal .n-sheet { width:100%!important; max-height:calc(100dvh - 30px)!important; border-radius:15px!important; }
 .gqf-bill-modal .n-hero { background:linear-gradient(135deg,#e9f2ff,#f4f8ff)!important; padding:16px!important; }
 .gqf-bill-modal .n-htop .l { font-size:14px!important; }
 .gqf-bill-modal .n-body { padding:6px 10px 10px!important; }
 .gqf-bill-modal .nrow { padding:12px!important; }
 .gqf-bill-modal .nbi { width:30px!important; height:30px!important; flex-shrink:0; }
 /* Keep the approved card/detail width; restore the original template layout. */
 .gqf-bill-modal .nrow { margin-left:0!important; margin-right:0!important; }
 .gqf-bill-modal.gqf-original-rent .nrow { padding:13px 4px!important; }
 .gqf-bill-modal .nbt { font-size:12px!important; }
 .gqf-bill-modal .namt { font-size:15px!important; }
 .gqf-bill-modal .ndet { padding:13px!important; }
 .gqf-fields { grid-template-columns:minmax(0,1fr); gap:8px; }
 .gqf-field { grid-template-columns:75px minmax(0,1fr); font-size:12px; }
 .gqf-bill-modal .fbillc-foot { padding:10px 13px calc(10px + env(safe-area-inset-bottom,0px))!important; }
 .gqf-bill-modal .fbillc-foot .btn { min-height:42px; }
}
/* PC counterpart: keep the existing footprint, layout and financial color semantics. */
@media(min-width:769px) {
 #dt-finance.gqf .gqf-nav { background:#fff; border-color:#e7e9ef; border-radius:12px; box-shadow:0 1px 3px #0000000a; }
 #dt-finance.gqf .gqf-tab { display:flex; align-items:center; justify-content:center; gap:4px; color:#596579; background:transparent; border-color:transparent; border-radius:8px; box-shadow:none; transition:background .15s,color .15s; }
 #dt-finance.gqf .gqf-tab-emoji { display:none; }
 #dt-finance.gqf .gqf-tab-name { white-space:nowrap; }
 #dt-finance.gqf .gqf-tab-mobile-icon { display:block; width:14px; height:14px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; color:#8692a5; }
 #dt-finance.gqf .gqf-tab:hover { background:#f6f9fd; }
 #dt-finance.gqf .gqf-tab[aria-selected="true"] { color:#376bce; background:#eaf2ff; border-color:transparent; box-shadow:none; }
 #dt-finance.gqf .gqf-tab[aria-selected="true"] .gqf-tab-mobile-icon { color:#638bd1; }
 #dt-finance.gqf .gqf-tab:active { color:#2c60be; background:#dfeaff; border-color:transparent; box-shadow:none; transform:none; }
 #dt-finance.gqf .gqdash>.gq-filter,#dt-finance.gqf .gqdash>.gq-profit,#dt-finance.gqf .gqdash>.gq-card { border:1px solid #e7e9ef; border-radius:12px!important; box-shadow:0 1px 3px #0000000a; }
 #dt-finance.gqf .gqf-report-card,#dt-finance.gqf .gqf-record { border-color:#e7e9ef!important; border-radius:12px!important; box-shadow:0 1px 3px #0000000a!important; }
 #dt-finance.gqf .gqf-filters { background:#fff; border-color:#e7e9ef; border-radius:12px; box-shadow:0 1px 3px #0000000a; }
}
@media(min-width:769px) and (prefers-reduced-motion:reduce) { #dt-finance.gqf .gqf-tab { transition:none; } }
