/* Real working zones in complex spaces; screen presentation only.
   Tables, Gantt coordinates, writers and original control nodes are retained. */
@media screen {
/* Production plan: separate header/action card and the native calendar card. */
body.bm-app-mirror #page-fp { padding:0 28px 40px; }
body.bm-app-mirror #page-fp .fp-wrap { display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding:0;max-width:1440px;margin:0 auto; }
body.bm-app-mirror #page-fp .fp-head {
 display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin:0;
 padding:24px;border:1px solid #fff;border-radius:24px;background:rgba(255,255,255,.6);box-shadow:var(--bm-shadow);
}
body.bm-app-mirror #page-fp .fp-title { font-size:25px;letter-spacing:-.035em; }
body.bm-app-mirror #page-fp .fp-sub { margin-top:8px;font-size:13px;line-height:1.5; }
body.bm-app-mirror #page-fp .fp-head-acts { display:grid;grid-auto-flow:column;grid-auto-columns:minmax(88px,1fr);gap:10px; }
body.bm-app-mirror #page-fp .fp-head-acts .fp-btn { min-height:48px;padding:12px;border-radius:14px;font-size:12px; }
body.bm-app-mirror #page-fp .fp-tblwrap { border:1px solid #fff;border-radius:24px;background:rgba(255,255,255,.75);box-shadow:var(--bm-shadow);max-height:calc(100dvh - 200px);min-height:220px; }
body.bm-app-mirror #page-fp .fp-empty { padding:30px;border:1px solid #fff;border-radius:24px;background:rgba(255,255,255,.65); }
/* Finance registry: independent balance and control zones above the ledger.
   The ledger remains the original horizontal/vertical scroll container. */
body.bm-app-mirror #fiRoot:has(>.fi-table-wrap) {
 display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-content:start;align-items:start;
}
body.bm-app-mirror #fiRoot>.fi-bar { margin:0;padding:15px 20px;border:1px solid #fff;border-radius:22px;background:rgba(255,255,255,.62); }
body.bm-app-mirror #fiRoot:has(>.fi-table-wrap)>.fi-bar,
body.bm-app-mirror #fiRoot:has(>.fi-table-wrap)>.fi-notice,
body.bm-app-mirror #fiRoot:has(>.fi-table-wrap)>.fi-hint,
body.bm-app-mirror #fiRoot:has(>.fi-table-wrap)>.fi-table-wrap { grid-column:1 / -1;min-width:0; }
body.bm-app-mirror #fiRoot>.fi-bar .fi-title-row { flex-wrap:nowrap; }
body.bm-app-mirror #fiRoot>.fi-bar .fi-months { max-width:min(620px,48vw);padding:0;margin:0;border:0;background:transparent; }
body.bm-app-mirror #fiRoot>.fi-totals { grid-column:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0; }
body.bm-app-mirror #fiRoot>.fi-totals>div { padding:12px 16px;border-radius:18px;min-height:74px; }
body.bm-app-mirror #fiRoot>.fi-totals strong { margin-top:5px;font-size:clamp(17px,1.35vw,22px);overflow-wrap:anywhere; }
body.bm-app-mirror #fiRoot>.fi-filters { grid-column:1;display:grid;grid-template-columns:auto auto minmax(260px,1fr) minmax(160px,auto) minmax(150px,auto) auto;align-items:center;gap:8px;padding:10px 12px;border-radius:20px;min-width:0; }
body.bm-app-mirror #fiRoot>.fi-filters>#fiSearch { grid-column:auto;width:100%;min-width:0;min-height:40px; }
body.bm-app-mirror #fiRoot>.fi-filters>:is(button,select) { min-height:40px;min-width:0;width:auto; }
body.bm-app-mirror #fiRoot>.fi-filters>label { min-height:28px;white-space:nowrap; }
body.bm-app-mirror #fiRoot>.fi-hint { margin:0;padding:0 4px; }
body.bm-app-mirror #fiRoot>.fi-table-wrap { border-radius:24px;max-height:calc(100dvh - 300px);min-height:260px;width:100%; }
body.bm-app-mirror #fiRoot>.fi-section-grid { margin-top:22px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
body.bm-app-mirror #fiRoot>.fi-section-grid>.fi-section { min-height:200px;display:flex;flex-direction:column;justify-content:space-between;padding:26px;border-radius:24px;background:rgba(255,255,255,.78); }
body.bm-app-mirror #fiRoot>.fi-section-grid>.fi-section strong { font-size:20px;line-height:1.35;letter-spacing:-.02em; }
/* Electrical legacy console has a complete native card renderer alongside its
   table renderer. The mirror uses those same cards on a desktop too. */
body.bm-app-mirror[data-bm-mirror-document=electrical] #app { gap:20px;padding:20px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] #sidebar { height:auto;border:1px solid #fff;border-radius:24px;box-shadow:var(--bm-shadow); }
body.bm-app-mirror[data-bm-mirror-document=electrical] #main { gap:20px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] #topbar { height:auto;min-height:84px;padding:20px 24px;border:1px solid #fff;border-radius:24px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .tb-title { font-size:24px;letter-spacing:-.035em; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .tb-desc { margin-top:7px;font-size:12px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] #content { padding:0 8px 30px 0;min-height:0; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .filter-row { padding:16px;margin:0 0 20px;border:1px solid #fff;border-radius:20px;background:rgba(255,255,255,.6);gap:9px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .filter-row .chip { padding:11px 15px;font-size:12px;border-radius:12px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] :is(#proj-list,#stock-list)>.ptbl-wrap { display:none; }
body.bm-app-mirror[data-bm-mirror-document=electrical] :is(#proj-list,#stock-list)>.proj-cards,
body.bm-app-mirror[data-bm-mirror-document=electrical] #lib-list>div { display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;align-items:stretch; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .proj-card { display:flex;flex-direction:column;justify-content:space-between;min-height:200px;margin:0;padding:22px;border:1px solid #fff;border-radius:24px;background:rgba(255,255,255,.8);box-shadow:var(--bm-shadow); }
body.bm-app-mirror[data-bm-mirror-document=electrical] .proj-card:focus-visible { outline:3px solid #4577c2;outline-offset:3px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .pc-name { font-size:17px;line-height:1.4; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .pc-meta { margin-top:7px;font-size:12px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .pc-row { margin:14px 0; }
body.bm-app-mirror[data-bm-mirror-document=electrical] :is(.kcol,.kpi-card,.mini-card,.cl-card) { border:1px solid #fff;border-radius:22px;background:rgba(255,255,255,.76); }
body.bm-app-mirror[data-bm-mirror-document=electrical] .kcol-head { padding:16px;font-size:11px;white-space:normal; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .kcol-body { padding:12px;gap:10px; }
body.bm-app-mirror[data-bm-mirror-document=electrical] .tcard { padding:14px;border-radius:16px;min-height:68px; }
/* The trips mini-app already has native grouped trip, task, payment and hour
   cards. Let real trip groups form a desktop grid; preserve mobile disclosure. */
body.bm-app-mirror[data-bm-mirror-document=trips] .screen { max-width:1440px;margin:0 auto; }
body.bm-app-mirror[data-bm-mirror-document=trips] .dock { background:transparent!important;border:0!important; }
body.bm-app-mirror[data-bm-mirror-document=trips] #mnPlate stop[offset="0"] { stop-color:#fff; }
body.bm-app-mirror[data-bm-mirror-document=trips] #mnPlate stop[offset="1"] { stop-color:#e8eef8; }
body.bm-app-mirror[data-bm-mirror-document=trips] .tab { color:#4c6179; }
body.bm-app-mirror[data-bm-mirror-document=trips] #p-trips>.mgroup { display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px;align-items:start;margin-bottom:24px; }
body.bm-app-mirror[data-bm-mirror-document=trips] #p-trips>.mgroup>.mg-h { grid-column:1 / -1;margin:0; }
body.bm-app-mirror[data-bm-mirror-document=trips] #p-trips>.mgroup>.vcard { margin:0;min-width:0; }
@media(min-width:900px) {
 body.bm-app-mirror[data-bm-mirror-document=trips] .hdr { padding:24px 30px 18px; }
 body.bm-app-mirror[data-bm-mirror-document=trips] .body { padding:8px 30px 130px; }
 body.bm-app-mirror[data-bm-mirror-document=trips] .dock { max-width:700px;left:50%;right:auto;width:calc(100% - 60px);transform:translateX(-50%); }
}
@media(max-width:1100px) {
 body.bm-app-mirror #page-fp .fp-head { grid-template-columns:minmax(0,1fr);gap:18px; }
 body.bm-app-mirror #page-fp .fp-head-acts { grid-auto-flow:initial;grid-template-columns:repeat(4,minmax(0,1fr)); }
 body.bm-app-mirror #fiRoot>.fi-filters { grid-template-columns:auto auto minmax(220px,1fr) repeat(2,minmax(140px,auto)); }
 body.bm-app-mirror #fiRoot>.fi-filters>label { grid-column:1 / -1; }
}
@media(max-width:760px) {
 body.bm-app-mirror #page-fp { padding:0 12px 30px; }
 body.bm-app-mirror #page-fp .fp-head { padding:20px 16px; }
 body.bm-app-mirror #page-fp .fp-head-acts { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.bm-app-mirror #page-fp .fp-tblwrap { border-radius:20px;max-height:65dvh; }
 body.bm-app-mirror #fiRoot>.fi-bar { padding:14px 16px; }
 body.bm-app-mirror #fiRoot>.fi-bar .fi-title-row { flex-wrap:wrap; }
 body.bm-app-mirror #fiRoot>.fi-bar .fi-months { max-width:100%; }
 body.bm-app-mirror #fiRoot>.fi-totals { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.bm-app-mirror #fiRoot>.fi-totals>div { padding:12px; }
 body.bm-app-mirror #fiRoot>.fi-filters { grid-template-columns:repeat(2,minmax(0,1fr));padding:12px; }
 body.bm-app-mirror #fiRoot>.fi-filters>#fiSearch,body.bm-app-mirror #fiRoot>.fi-filters>label { grid-column:1 / -1; }
 body.bm-app-mirror #fiRoot>.fi-filters>:is(button,select) { width:100%; }
 body.bm-app-mirror #fiRoot>.fi-table-wrap { max-height:65dvh;min-height:220px; }
 body.bm-app-mirror #fiRoot>.fi-section-grid { grid-template-columns:minmax(0,1fr); }
 body.bm-app-mirror #fiRoot>.fi-section-grid>.fi-section { min-height:175px; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] #app { padding:12px;gap:0; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] #sidebar { height:calc(100dvh - 24px);top:12px;bottom:12px; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] #main { gap:16px; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] #topbar { padding:16px;min-height:90px;gap:10px;align-items:flex-start; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] .tb-title { font-size:20px; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] .tb-right { max-width:48%; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] #tb-btn { white-space:normal;min-height:42px;font-size:11px;padding:9px 11px; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] #content { padding-right:0; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] :is(#proj-list,#stock-list)>.proj-cards,
 body.bm-app-mirror[data-bm-mirror-document=electrical] #lib-list>div { grid-template-columns:minmax(0,1fr);gap:14px; }
 body.bm-app-mirror[data-bm-mirror-document=electrical] .proj-card { padding:20px; }
 body.bm-app-mirror[data-bm-mirror-document=trips] #p-trips>.mgroup { grid-template-columns:minmax(0,1fr);gap:12px; }
}
}
