*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f4f7fb;color:#172033;padding-bottom:18px}header{position:sticky;top:0;z-index:8;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid #dbe4f0}.brand{font-weight:950;font-size:21px;color:#123c69;letter-spacing:-.04em}.top{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.top a,.quickbar button,.actions button,button{border:0;border-radius:999px;background:#123c69;color:white;padding:8px 11px;text-decoration:none;font-weight:900;font-size:13px;box-shadow:0 6px 16px rgba(18,60,105,.14)}.top a:nth-last-child(-n+3){background:#eef5fb;color:#123c69;box-shadow:none}.quickbar button,button[type=submit],form button{background:#0d7c66;color:white}.danger{background:#b42335!important;color:white!important}main{max-width:1280px;margin:auto;padding:10px}.hero{border:0;border-radius:22px;padding:16px;background:linear-gradient(135deg,#123c69,#0d7c66);color:white;box-shadow:0 18px 40px rgba(18,60,105,.23)}.hero.compact h1{font-size:clamp(25px,4vw,46px);margin:3px 0;line-height:1}.hero p{max-width:860px;color:#e6f2f6;margin:5px 0}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:11px;color:#dffdf5;font-weight:950}.stats{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.stats span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 9px;font-weight:900;color:white}.quickbar{display:grid;grid-template-columns:repeat(6,minmax(max-content,1fr));gap:7px;overflow:auto;padding:9px 0;background:#f4f7fb}.quickbar button{padding:9px 12px;white-space:nowrap}.typeTiles{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:0 0 10px}.typeTile{border-radius:18px;padding:10px 8px;text-align:left;min-height:74px;display:flex;flex-direction:column;justify-content:space-between;color:white;box-shadow:0 12px 28px rgba(23,32,51,.12)}.typeTile b{font-size:26px;line-height:1}.typeTile span{font-size:12px;text-transform:uppercase;letter-spacing:.05em}.columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.panel{--accent:#123c69;--soft:#eaf2fb;background:white;border:1px solid #dbe4f0;border-top:5px solid var(--accent);border-radius:18px;padding:8px;min-height:0;box-shadow:0 8px 22px rgba(23,32,51,.07)}.panelHead{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px}.panel h2{font-size:13px;margin:0;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.panelHead button{width:30px;height:30px;padding:0;background:var(--accent)}.tileList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.item{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;background:var(--soft);border:1px solid color-mix(in srgb,var(--accent),white 70%);border-radius:13px;padding:8px;min-height:62px;margin:0}.item-main{min-width:0}.item b{display:block;font-size:13px;line-height:1.12;overflow-wrap:anywhere}.item small,.mediaCard small{display:block;color:#526276;font-size:11px;margin-top:3px;line-height:1.15}.actions{display:flex;gap:4px;flex-shrink:0}.actions button{width:26px;height:26px;padding:0;font-size:14px;background:white;color:var(--accent);box-shadow:none;border:1px solid rgba(18,60,105,.14)}.emptyTile{display:flex;align-items:center;gap:8px;background:var(--soft);border:1px dashed color-mix(in srgb,var(--accent),white 55%);border-radius:13px;min-height:58px;padding:8px;color:var(--accent)}.emptyTile span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--accent);color:white;font-weight:950}.emptyTile b{font-size:12px}.panel-projects,.type-projects{--accent:#123c69;--soft:#eaf2fb}.panel-clients,.type-clients{--accent:#0d7c66;--soft:#e7f7f2}.panel-sites,.type-sites{--accent:#6d4aff;--soft:#f0edff}.panel-tasks,.type-tasks{--accent:#d97706;--soft:#fff4df}.panel-expenses,.type-expenses{--accent:#b42335;--soft:#fff0f2}.panel-offers,.type-offers{--accent:#7c3aed;--soft:#f3ecff}.panel-parts,.type-parts{--accent:#2563eb;--soft:#eef4ff}.panel-sellerPrices,.type-sellerPrices{--accent:#0891b2;--soft:#e8f8fb}.panel-inventory,.type-inventory{--accent:#15803d;--soft:#eaf8ef}.panel-media,.type-media{--accent:#c2410c;--soft:#fff1e8}.type-projects{background:linear-gradient(135deg,#123c69,#226ea8)}.type-clients{background:linear-gradient(135deg,#0d7c66,#12b28f)}.type-sites{background:linear-gradient(135deg,#5b34d6,#8b6cff)}.type-tasks{background:linear-gradient(135deg,#b45309,#f59e0b)}.type-expenses{background:linear-gradient(135deg,#991b1b,#ef4444)}.type-offers{background:linear-gradient(135deg,#6d28d9,#a855f7)}.type-parts{background:linear-gradient(135deg,#1d4ed8,#60a5fa)}.type-media{background:linear-gradient(135deg,#c2410c,#fb923c)}.gallery{margin-top:10px}.mediaGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.mediaCard{background:#fff;border:1px solid #dbe4f0;border-top:5px solid var(--accent);border-radius:15px;overflow:hidden;padding:7px}.mediaCard img,.mediaCard video{width:100%;aspect-ratio:1.12;object-fit:cover;border-radius:10px;background:#eef3f7}.mediaCard button{width:100%;margin-top:5px;padding:6px}label{display:grid;gap:5px;font-weight:850;color:#123c69;margin:7px 0}input,textarea,select{width:100%;border:1px solid #cbd7e5;border-radius:12px;padding:10px;background:#fbfdff;color:#172033;font:inherit}textarea{min-height:66px}.modal{display:none;position:fixed;inset:0;background:rgba(12,20,33,.58);z-index:20;align-items:flex-end}.modal.open{display:flex}.sheet{width:min(760px,100%);max-height:88vh;overflow:auto;margin:auto auto 0;background:white;border:1px solid #dbe4f0;border-radius:22px 22px 0 0;padding:13px;box-shadow:0 -20px 60px rgba(23,32,51,.25)}.x{float:right;background:#eef5fb!important;color:#123c69!important;box-shadow:none}.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.steps button{grid-column:1/-1}.features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.feature{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:9px}.feature b,.feature span{display:block}.feature span{font-size:12px;color:#e6f2f6;margin-top:4px}@media(max-width:1050px){.columns{grid-template-columns:repeat(2,minmax(0,1fr))}.typeTiles{grid-template-columns:repeat(4,1fr)}.mediaGrid{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){header{padding:8px 10px;align-items:center}.brand{font-size:18px}.top a{font-size:12px;padding:6px 8px}.hero{border-radius:16px;padding:12px}.hero.compact h1{font-size:25px}.hero p{font-size:15px;line-height:1.25}.stats span{font-size:13px;padding:5px 8px}.quickbar{grid-template-columns:repeat(6,max-content);gap:6px;padding:7px 0;position:static}.quickbar button{font-size:12px;padding:8px 10px}.typeTiles{grid-template-columns:repeat(4,1fr);gap:6px}.typeTile{border-radius:14px;min-height:58px;padding:8px 7px}.typeTile b{font-size:21px}.typeTile span{font-size:10px}.columns{grid-template-columns:1fr;gap:8px}.panel{border-radius:14px;padding:7px;border-top-width:4px}.panel h2{font-size:12px}.tileList{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.item{padding:7px;min-height:54px;border-radius:11px}.item b{font-size:12px}.item small{font-size:10px}.actions{flex-direction:column}.actions button{width:24px;height:22px}.emptyTile{min-height:48px;padding:7px}.emptyTile span{width:26px;height:26px}.mediaGrid{grid-template-columns:repeat(2,1fr)}main{padding:7px}.steps,.features{grid-template-columns:1fr}}.friendly{display:inline-block;margin:0 0 3px;padding:2px 5px;border-radius:7px;background:rgba(255,255,255,.72);color:var(--accent);font-size:9px;font-weight:950;letter-spacing:.06em}.itemTitle{display:block;color:inherit;text-decoration:none;font-weight:950;font-size:13px;line-height:1.12}.item.selected{outline:2px solid var(--accent);background:linear-gradient(180deg,var(--soft),#fff)}.contextBack{display:inline-flex;margin-top:8px;color:#123c69;background:white;border-radius:999px;padding:7px 10px;font-weight:950;text-decoration:none}.projectHero{background:linear-gradient(135deg,#0d7c66,#123c69)}.formContext{margin:7px 0;padding:8px 10px;border-radius:12px;background:#e7f7f2;color:#0d7c66;font-weight:950}

.panel-clientContacts,.type-clientContacts{--accent:#0369a1;--soft:#eaf6ff}.panel-reminders,.type-reminders{--accent:#ca8a04;--soft:#fff8db}.panel-phoneCalls,.type-phoneCalls{--accent:#047857;--soft:#e5faf1}.panel-geoLocations,.type-geoLocations{--accent:#7c2d12;--soft:#fff1e8}.panel-mileageTrips,.type-mileageTrips{--accent:#4338ca;--soft:#eeeeff}.panel-trades,.type-trades{--accent:#0f766e;--soft:#e6fffa}.type-reminders{background:linear-gradient(135deg,#ca8a04,#facc15)}.type-phoneCalls{background:linear-gradient(135deg,#047857,#34d399)}.type-mileageTrips{background:linear-gradient(135deg,#4338ca,#818cf8)}

.panel-documents,.type-documents{--accent:#334155;--soft:#f1f5f9}.type-documents{background:linear-gradient(135deg,#334155,#64748b)}

.journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:9px 0}.journey div{background:white;border:1px solid #dbe4f0;border-left:5px solid #0d7c66;border-radius:14px;padding:9px;box-shadow:0 8px 18px rgba(23,32,51,.06)}.journey b{display:block;color:#123c69;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.journey span{display:block;color:#526276;font-size:11px;line-height:1.25;margin-top:4px}@media(max-width:680px){.journey{grid-template-columns:repeat(2,1fr);gap:6px}.journey div{padding:7px;border-radius:12px}.journey b{font-size:10px}.journey span{font-size:10px}}
/* compact workspace: no giant repeated add bar; additions live on tiles/panels */
.switcher{display:flex;align-items:stretch;gap:7px;overflow:auto;margin:8px 0;padding:7px;background:#eaf1f8;border:1px solid #d7e3ef;border-radius:16px}.switcher>b{flex:0 0 auto;align-self:center;color:#123c69;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.switchTile{min-width:150px;max-width:220px;border-radius:13px;background:white!important;color:#172033!important;text-align:left;padding:7px 9px!important;box-shadow:none!important;border:1px solid #dbe4f0!important;text-decoration:none;display:flex;flex-direction:column;gap:5px}.switchTile.on{border-color:#0d7c66!important;box-shadow:inset 0 0 0 2px rgba(13,124,102,.16)!important}.switchTile.lead{border-left:5px solid #d97706!important}.switchTile.money{border-left:5px solid #2563eb!important}.switchTile span{font-size:11px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar{height:12px;border-radius:99px;background:rgba(15,23,42,.12);position:relative;overflow:hidden;margin-top:5px}.bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#16a34a,#22c55e)}.bar em{position:absolute;right:5px;top:-1px;font-size:9px;font-style:normal;font-weight:950;color:#10223a}.hero .bar{background:rgba(255,255,255,.18);height:16px;max-width:580px}.hero .bar em{color:white;top:1px}.typeTile{position:relative}.typeTile:after,.typeTile i{content:'+';position:absolute;right:8px;top:6px;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.9);color:#123c69;display:grid;place-items:center;font-style:normal;font-weight:950;font-size:15px}.panelHead .tinyAdd{padding:2px 8px!important;min-width:28px;height:28px;font-size:18px;box-shadow:none}.trace{display:block;color:#64748b;font-size:10px;margin-top:3px}.panel-invoices,.type-invoices{--accent:#2563eb;--soft:#eff6ff}.panel-payments,.type-payments{--accent:#16a34a;--soft:#ecfdf5}.type-invoices{background:linear-gradient(135deg,#2563eb,#60a5fa)}.type-payments{background:linear-gradient(135deg,#16a34a,#86efac)}.columns{align-items:start}.panel{min-height:auto}.item{padding:8px 9px}.quickbar{display:none!important}@media(max-width:680px){.switcher{flex-direction:column;max-height:185px;overflow:auto}.switchTile{min-width:100%;max-width:none}.typeTiles{grid-template-columns:repeat(3,minmax(0,1fr))}.typeTile{min-height:58px;padding:8px}.typeTile b{font-size:20px}.typeTile span{font-size:10px}.columns{grid-template-columns:1fr}.panelHead h2{font-size:12px}.item{font-size:12px}}
.panel-vehicles,.type-vehicles{--accent:#7c3aed;--soft:#f5f3ff}.type-vehicles{background:linear-gradient(135deg,#7c3aed,#a78bfa)}
.notice{background:rgba(255,255,255,.16);border-radius:12px;padding:8px 10px;font-weight:900}.account form{display:grid;gap:10px}.account label{font-weight:850;color:#123c69}.account input{width:100%;padding:11px;border-radius:12px;border:1px solid #dbe4f0;margin-top:4px}
.panel-offices,.type-offices{--accent:#0f766e;--soft:#ecfeff}.panel-storageLocations,.type-storageLocations{--accent:#92400e;--soft:#fffbeb}.panel-shoppingList,.type-shoppingList{--accent:#be123c;--soft:#fff1f2}.panel-advertising,.type-advertising{--accent:#7e22ce;--soft:#faf5ff}.type-offices{background:linear-gradient(135deg,#0f766e,#2dd4bf)}.type-shoppingList{background:linear-gradient(135deg,#be123c,#fb7185)}.type-advertising{background:linear-gradient(135deg,#7e22ce,#c084fc)}
.panel-shares,.type-shares{--accent:#0891b2;--soft:#ecfeff}.type-shares{background:linear-gradient(135deg,#0891b2,#67e8f9)}
/* UX cleanup: remove repeated summary tiles; keep actual working panels with small + actions */
.typeTiles{display:none!important}.brand{font-weight:750!important}.top a,.actions button,button{font-weight:650!important}.panelHead h2{font-weight:750!important;letter-spacing:.04em}.item b,.itemTitle,.friendly,.stats span{font-weight:700!important}.typeTile b{font-weight:750!important}.hero{background:linear-gradient(135deg,#0f355f,#0b6f5b)!important}.panel{background:#fff!important;color:#172033!important}.item{background:#fff!important;color:#172033!important}.emptyTile{background:#f8fafc!important;color:#334155!important}.switchTile{background:#fff!important;color:#172033!important}.bar em{color:#0f172a!important}.hero .bar em{color:#fff!important}small,.trace{color:#475569!important}.panelHead{color:#172033!important}.top a:nth-last-child(-n+3){background:#e8f1f8!important;color:#0f355f!important}.tinyAdd{background:#0d7c66!important;color:#fff!important}.actions button{background:#e8f1f8!important;color:#0f355f!important}.actions .danger{background:#b42335!important;color:#fff!important}

.thumb{width:52px;height:52px;object-fit:cover;border-radius:12px;border:1px solid #cbd5e1;background:#f8fafc;margin:2px 8px 4px 0;float:left}
/* tile-first mobile UI with recognizable module icons */
.actionRail.tileRail{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;margin:8px 0 10px}.moduleTile{min-height:78px;border-radius:16px!important;background:#fff!important;color:#172033!important;border:1px solid #dbe4f0!important;box-shadow:0 8px 20px rgba(15,23,42,.06)!important;padding:9px!important;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;text-align:left}.moduleTile span,.tileIcon,.panelIcon{width:32px;height:32px;border-radius:11px;background:#e8f1f8;color:#0f355f;display:inline-grid;place-items:center;font-size:18px;line-height:1}.moduleTile b{font-weight:650;font-size:12px}.moduleTile i{font-style:normal;background:#0d7c66;color:#fff;width:24px;height:24px;border-radius:50%;display:grid;place-items:center}.item{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:start;border-left:5px solid var(--accent,#0d7c66)!important;background:var(--soft,#fff)!important}.item-main{min-width:0}.panelHead h2{display:flex;align-items:center;gap:8px}.emptyTile span{background:#e8f1f8;color:#0f355f}.typeTiles{display:none!important}@media(max-width:680px){.actionRail.tileRail{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.moduleTile{min-height:68px;grid-template-columns:1fr auto;padding:8px!important}.moduleTile span{grid-column:1}.moduleTile b{grid-column:1/-1;font-size:11px}.moduleTile i{grid-row:1}.tileIcon,.panelIcon{width:28px;height:28px;font-size:16px}.item{grid-template-columns:auto minmax(0,1fr);}.item .actions{grid-column:1/-1;justify-content:flex-end}}
/* consolidated workspace: modules are the panels/cards themselves, no duplicate add-button rail */
.tileWorkspace{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:9px;align-items:start}.panel{border-left:0!important}.panelHead{background:var(--soft,#f8fafc);border-radius:14px;padding:7px 8px;margin:-3px -3px 8px}.tileList{display:grid;gap:7px}.itemTitle,.item b{font-weight:650!important}.friendly{font-weight:600!important}.actions button{font-weight:600!important}
/* professional ProAmigos polish learned from Auzas/Stella: calm surfaces, no repeated empty add tiles, softer typography */
:root{--pa-ink:#162033;--pa-navy:#123c69;--pa-teal:#0d7c66;--pa-bg:#f5f7fa;--pa-card:#fffdf9;--pa-line:#d9e2ec;--pa-muted:#5f6b7a;--pa-shadow:0 12px 28px rgba(18,60,105,.08);--choice-selected:#0d7c66;--choice-selected-soft:#e8f7f1;--choice-existing:#2563eb;--choice-existing-soft:#eff6ff;--choice-new:#c2410c;--choice-new-soft:#fff7ed}
body{background:linear-gradient(180deg,#f7f9fc 0,#eef3f8 260px,#f8fafc 100%)!important;color:var(--pa-ink)!important;font-weight:450!important}header{box-shadow:0 4px 16px rgba(18,60,105,.05)!important}.brand{font-weight:650!important;letter-spacing:-.03em!important}.top a{font-weight:600!important;border-radius:12px!important;box-shadow:none!important}.hero{padding:18px!important;border-radius:24px!important;box-shadow:var(--pa-shadow)!important}.hero.compact h1{font-weight:650!important;letter-spacing:-.03em!important;font-size:clamp(28px,5vw,44px)!important}.eyebrow{font-weight:650!important;letter-spacing:.14em!important}.stats span{font-weight:600!important}.contextBack{display:none!important}.tileWorkspace{grid-template-columns:repeat(auto-fill,minmax(285px,1fr))!important;gap:10px!important}.panel{border:1px solid var(--pa-line)!important;border-radius:18px!important;box-shadow:var(--pa-shadow)!important;background:var(--pa-card)!important;overflow:hidden}.panelHead{margin:0!important;padding:9px 10px!important;border-radius:0!important;border-bottom:1px solid rgba(22,32,51,.06)!important}.panelHead h2{font-size:13px!important;font-weight:650!important;letter-spacing:.08em!important}.tinyAdd{width:32px!important;height:32px!important;padding:0!important;border-radius:999px!important;background:var(--pa-teal)!important;color:#fff!important}.tileList{padding:10px!important}.emptyTile.quiet{min-height:34px!important;border:1px dashed #cbd5e1!important;border-radius:12px!important;background:#f8fafc!important;color:#64748b!important;padding:8px 10px!important;display:flex!important;align-items:center!important}.emptyTile.quiet b{font-size:12px!important;font-weight:550!important;color:#64748b!important}.emptyTile.quiet span{display:none!important}.item{border-radius:14px!important;box-shadow:none!important;border-top:1px solid rgba(22,32,51,.06)!important;border-right:1px solid rgba(22,32,51,.06)!important;border-bottom:1px solid rgba(22,32,51,.06)!important}.itemTitle,.item b{font-weight:600!important;color:#172033!important}.friendly,small,.trace{font-weight:500!important}.panelIcon,.tileIcon{background:#eef5fb!important;color:var(--pa-navy)!important}.switcher{box-shadow:none!important;background:#f1f5f9!important}.switcher:empty{display:none!important}@media(max-width:680px){main{padding:8px!important}.hero{padding:16px!important;border-radius:20px!important}.tileWorkspace{grid-template-columns:1fr!important;gap:8px!important}.panelHead{padding:8px 9px!important}.tileList{padding:8px!important}.top{gap:4px!important}.top a{padding:7px 9px!important;font-size:12px!important}}

.focusNote{display:inline-flex;margin:4px 0 8px!important;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff!important;font-weight:550!important}
.itemTitle{text-decoration:none!important}
.itemTitle:hover{text-decoration:underline!important}

.overviewTiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:8px 0 10px}.overviewTiles button{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;align-items:center;text-align:left;background:#fff!important;color:#172033!important;border:1px solid #d9e2ec!important;border-radius:16px!important;box-shadow:0 8px 20px rgba(18,60,105,.06)!important;padding:10px!important}.overviewTiles span{grid-row:1/3;width:34px;height:34px;border-radius:12px;background:#eef5fb;color:#123c69;display:grid;place-items:center}.overviewTiles b{font-weight:650;font-size:17px}.overviewTiles small{font-weight:500;color:#64748b}.panel-sites{--accent:#0ea5e9;--soft:#eff6ff}.panel-reminders{--accent:#ca8a04;--soft:#fff8db}.panel-phoneCalls{--accent:#047857;--soft:#e5faf1}@media(max-width:680px){.overviewTiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.overviewTiles button{padding:8px!important}.overviewTiles button:last-child{grid-column:1/-1}}
/* stable per-item color system + no duplicated empty child tiles */
.emptyTile.quiet{display:none!important}.panel{min-height:0!important}.tileWorkspace{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}.panelHead{min-height:54px!important}.panelHead h2{font-size:12px!important;line-height:1.15!important;color:#172033!important}.panelIcon{background:#fff!important;border:1px solid rgba(15,23,42,.10)!important}.panel-projects{--accent:#123c69;--soft:#eaf1f8}.panel-sites{--accent:#0ea5e9;--soft:#eaf6ff}.panel-tasks{--accent:#d97706;--soft:#fff7ed}.panel-reminders{--accent:#ca8a04;--soft:#fef9c3}.panel-phoneCalls{--accent:#047857;--soft:#dcfce7}.panel-offers{--accent:#7c3aed;--soft:#f3e8ff}.panel-documents{--accent:#334155;--soft:#f1f5f9}.panel-expenses{--accent:#b42335;--soft:#fff1f2}.panel-invoices{--accent:#2563eb;--soft:#eff6ff}.panel-payments{--accent:#16a34a;--soft:#ecfdf5}.panel-inventory{--accent:#15803d;--soft:#f0fdf4}.panel-mileageTrips{--accent:#4338ca;--soft:#eef2ff}.panel-vehicles{--accent:#7c3aed;--soft:#f5f3ff}.panel-offices{--accent:#0f766e;--soft:#ecfeff}.panel-storageLocations{--accent:#92400e;--soft:#fffbeb}.panel-shoppingList{--accent:#be123c;--soft:#fff1f2}.panel-advertising{--accent:#7e22ce;--soft:#faf5ff}.panel-shares{--accent:#0891b2;--soft:#ecfeff}.panel-media{--accent:#c2410c;--soft:#fff7ed}.panel{border-top:4px solid var(--accent)!important}.panelHead{background:var(--soft)!important}.item{background:#fff!important;color:#172033!important;border-left:4px solid var(--accent)!important}.item small,.trace,.friendly{color:#475569!important}.itemTitle,.item b{color:#172033!important}.overviewTiles button{background:#fff!important;color:#172033!important}.overviewTiles small{color:#475569!important}@media(max-width:680px){.tileWorkspace{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.panel{border-radius:14px!important}.panelHead{padding:7px!important;min-height:74px!important;align-items:start!important}.panelHead h2{flex-direction:column;align-items:flex-start!important;gap:5px!important;font-size:10px!important;letter-spacing:.04em!important}.panelIcon{width:30px!important;height:30px!important}.tinyAdd{width:28px!important;height:28px!important}.tileList{display:none!important}.overviewTiles{grid-template-columns:repeat(3,minmax(0,1fr))!important}.overviewTiles button:last-child{grid-column:auto!important}.hero .stats span{font-size:12px!important;padding:5px 7px!important}}
/* Each module tile has two explicit continuations: list/view and add-new. */
.panelActions{display:flex;align-items:center;gap:7px;margin-left:auto}.listBtn{width:32px!important;height:32px!important;padding:0!important;border-radius:999px!important;background:#fff!important;color:#123c69!important;border:1px solid rgba(15,23,42,.12)!important;box-shadow:none!important;font-weight:650!important}.listBtn:focus-visible,.tinyAdd:focus-visible{outline:2px solid #123c69;outline-offset:2px}.parentTools{display:flex;flex-wrap:wrap;gap:6px;margin:-4px 0 8px}.parentTools button{background:#eef5fb!important;color:#123c69!important;border:1px solid #d9e2ec!important;box-shadow:none!important;font-size:12px!important;padding:7px 9px!important}.panel.showList .tileList{display:grid!important}.panel.showList{grid-column:span 2}.panel.showList .panelHead{position:sticky;top:0;z-index:1}@media(max-width:680px){.panelHead{display:flex!important;justify-content:space-between!important;gap:6px!important}.panelActions{flex-direction:column;gap:6px}.listBtn,.tinyAdd{width:30px!important;height:30px!important}.panel.showList{grid-column:1/-1!important}.panel.showList .tileList{display:grid!important}.parentTools{display:grid;grid-template-columns:1fr;}.parentTools button{text-align:left!important}}
.panel.showList .listBtn{background:#123c69!important;color:#fff!important}.panel.showList .panelHead{box-shadow:0 8px 18px rgba(18,60,105,.08)}
.globalSearch{margin:8px 0 10px}.globalSearch input{width:100%;border:1px solid #d9e2ec;border-radius:16px;background:#fff;color:#172033;padding:12px 14px;font-size:16px;box-shadow:0 8px 20px rgba(18,60,105,.06)}#searchResults{display:grid;gap:6px;margin-top:6px}#searchResults a{display:flex;gap:8px;align-items:center;padding:8px 10px;border:1px solid #d9e2ec;border-radius:12px;background:#fff;color:#172033;text-decoration:none}#searchResults b{font-size:11px;text-transform:uppercase;color:#123c69}.masterBoard{border:1px solid #d9e2ec;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(18,60,105,.08);margin:8px 0 10px;overflow:hidden}.masterGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;padding:10px}.masterCard{display:grid;gap:5px;padding:10px;border:1px solid #d9e2ec;border-left:5px solid #123c69;border-radius:14px;background:#f8fafc;color:#172033;text-decoration:none}.masterCard b{font-weight:650}.masterCard small{color:#475569}.panel-stores{--accent:#a16207;--soft:#fefce8}.panel-storePrices{--accent:#2563eb;--soft:#eff6ff}.panel-workers{--accent:#0f766e;--soft:#ecfeff}.panel-workerEntries{--accent:#9333ea;--soft:#faf5ff}@media(max-width:680px){.masterGrid{grid-template-columns:1fr}.globalSearch input{padding:11px 12px}.masterBoard .panelHead{min-height:auto!important}.masterCard{padding:9px}}
/* Field-worker mobile mode: two tiles per row, list top-left, mic/add top-right, typing last. */
.micBtn{width:32px!important;height:32px!important;padding:0!important;border-radius:999px!important;background:#fff!important;color:#123c69!important;border:1px solid rgba(15,23,42,.12)!important;box-shadow:none!important}.panelHead{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:start!important;gap:8px!important}.panelActions{display:flex!important;gap:7px!important}.panelHead h2{min-width:0}.panelHead h2 .panelIcon{margin-bottom:4px}.panelHead>.listBtn{grid-column:1;grid-row:1}.panelHead>.panelActions{grid-column:3;grid-row:1}.panelHead>h2{grid-column:1/-1;grid-row:2}.panelHead{cursor:pointer}.panelHead button{cursor:pointer}@media(max-width:680px){.tileWorkspace{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.panelHead{min-height:112px!important;padding:8px!important}.panelHead h2{font-size:11px!important}.listBtn,.tinyAdd,.micBtn{width:31px!important;height:31px!important}.overviewTiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.panel.showList{grid-column:1/-1!important}.panel.showList .panelHead{min-height:74px!important}.panel.showList .tileList{display:grid!important}}
/* Other active projects: narrow horizontal action strip under the main project, not a tall board. */
.masterBoard{margin:6px 0 8px!important;border-radius:14px!important;box-shadow:none!important;background:transparent!important;border:0!important;overflow:visible!important}.masterBoard>.panelHead{display:none!important}.masterGrid{display:flex!important;gap:7px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:2px 1px 8px!important;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.masterCard{flex:0 0 210px!important;min-width:210px!important;max-width:210px!important;padding:8px 9px!important;border-radius:13px!important;background:#fff!important;box-shadow:0 6px 16px rgba(18,60,105,.06)!important;scroll-snap-align:start}.masterCard b{font-size:12px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.masterCard small{font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.masterCard .bar{height:9px!important;margin-top:2px!important}@media(max-width:680px){.masterGrid{padding:1px 0 7px!important}.masterCard{flex-basis:174px!important;min-width:174px!important;max-width:174px!important;padding:7px!important}.masterCard b{font-size:11px!important}.masterCard small{font-size:9.5px!important}}

/* Tiny readable tile counters reflect current header scope: Global or selected project. */
.panelHead h2{position:relative!important}.tileMiniCount{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:18px!important;height:18px!important;padding:0 5px!important;border-radius:999px!important;background:#0f766e!important;color:#fff!important;font:900 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.01em!important;box-shadow:0 1px 3px rgba(15,23,42,.18)!important}.panelHead h2 .tileMiniCount{margin-top:1px!important}
@media(max-width:680px){.tileMiniCount{min-width:16px!important;height:16px!important;font-size:9px!important;padding:0 4px!important}}

/* Tile text bottom-left, larger module icon/text; click tile for condensed list. */
.panelHead{position:relative!important;min-height:124px!important;display:flex!important;align-items:flex-end!important;justify-content:flex-start!important;padding:10px!important}.panelHead h2{margin-top:auto!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:7px!important;font-size:13px!important;letter-spacing:.09em!important}.panelIcon{width:38px!important;height:38px!important;font-size:21px!important}.panelActions{position:absolute!important;top:8px!important;right:8px!important;display:flex!important;gap:6px!important}.tinyAdd,.micBtn,.photoBtn{width:32px!important;height:32px!important;padding:0!important;border-radius:999px!important;box-shadow:none!important}.tinyAdd{background:#0d7c66!important;color:#fff!important}.photoBtn,.micBtn{background:#fff!important;color:#123c69!important;border:1px solid rgba(15,23,42,.12)!important}.listBtn{display:none!important}.condensedList{max-height:70vh;overflow:auto;display:grid;gap:6px}.condensedList .item{font-size:12px!important;padding:7px!important}.condensedList .tileIcon{width:24px!important;height:24px!important;font-size:14px!important}.condensedList .actions button{padding:5px 8px!important;font-size:11px!important}@media(max-width:680px){.panelHead{min-height:118px!important}.panelIcon{width:35px!important;height:35px!important}.panelHead h2{font-size:12.5px!important}.tileList{display:none!important}.panel.showList .tileList{display:grid!important}}
.panel-measurements{--accent:#0ea5e9;--soft:#e0f2fe}.panel-clientVisits{--accent:#ea580c;--soft:#fff7ed}
/* Tiles stay tiles: child lists only open inside the condensed modal after tapping the tile. */
.panel:not(.showList)>.tileList{display:none!important}.modal .condensedList{display:grid!important}.modal .condensedList .item{display:grid!important}.modal .condensedList .emptyTile.quiet{display:flex!important}

/* Auzas-like compact single-row workspace: one module card per row, scrollable drill-down lists, real detail/action rows. */
.tileWorkspace{grid-template-columns:1fr!important;gap:8px!important;align-items:stretch!important}
.tileWorkspace .panel{min-height:0!important;border-radius:12px!important;box-shadow:0 1px 4px rgba(18,60,105,.06)!important;border-top:0!important;border-left:4px solid var(--accent,#123c69)!important;background:#fff!important}
.tileWorkspace .panelHead{min-height:58px!important;padding:8px 10px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;cursor:pointer;background:#fff!important;border-bottom:1px solid #e6edf5!important}
.tileWorkspace .panelHead h2{flex-direction:row!important;align-items:center!important;gap:9px!important;font-size:13px!important;letter-spacing:0!important;text-transform:none!important;margin:0!important}
.tileWorkspace .panelIcon{width:30px!important;height:30px!important;font-size:16px!important;background:var(--soft,#eef5fb)!important;color:var(--accent,#123c69)!important}
.tileWorkspace .panelActions{position:static!important;margin-left:auto!important}
.tileWorkspace .tileList{display:none!important;padding:0!important}
.condensedList{max-height:min(72vh,720px);overflow:auto;display:grid!important;gap:5px;padding:2px 2px 14px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.condensedList .item{display:grid!important;grid-template-columns:26px minmax(0,1fr) auto!important;gap:7px!important;align-items:center!important;min-height:46px!important;padding:6px 7px!important;border-radius:9px!important;border-left:3px solid var(--accent,#123c69)!important;background:#fff!important}
.condensedList .item-main{display:grid!important;gap:1px!important;min-width:0!important}.condensedList .itemTitle,.condensedList small,.condensedList .friendly{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.condensedList .actions{display:flex!important;gap:4px!important}.condensedList .actions button{min-height:28px!important;padding:4px 7px!important;border-radius:7px!important;font-size:12px!important}.detailGrid{display:grid;grid-template-columns:1fr;gap:6px;max-height:46vh;overflow:auto;margin:10px 0;padding-right:2px}.detailGrid div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;padding:7px 8px;border:1px solid #e5edf5;border-radius:9px;background:#fff}.detailGrid b{color:#123c69;font-weight:650}.detailGrid span{min-width:0;overflow-wrap:anywhere;color:#172033}.detailActions{display:flex;gap:8px;flex-wrap:wrap;position:sticky;bottom:0;background:#fff;padding-top:8px}.buttonLink{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#eef5fb;color:#123c69;text-decoration:none;font-weight:650}.linkedProjects{display:grid;gap:5px;padding:9px;border-radius:10px;background:#f8fafc;border:1px solid #e5edf5}.linkedProjects a{color:#123c69;text-decoration:none;font-weight:650}.wizardForm{display:grid!important;gap:10px!important}.wizardStep{display:grid;gap:10px;padding:4px 0}.wizardStep[hidden]{display:none!important}.wizardNav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 8px;padding:7px 8px;border:1px solid #e5edf5;border-radius:999px;background:#f8fafc}.wizardNav button{box-shadow:none!important;background:#eef5fb!important;color:#123c69!important;padding:6px 10px!important}.wizardNav button:disabled{opacity:.35}.wizardNav span{font-size:12px;font-weight:650;color:#475569}.primaryFinish{background:#0d7c66!important;color:#fff!important}
@media(max-width:680px){.tileWorkspace{grid-template-columns:1fr!important}.tileWorkspace .panelHead{min-height:54px!important}.tileWorkspace .panelHead h2{font-size:12.5px!important}.condensedList{max-height:68vh}.detailGrid div{grid-template-columns:92px minmax(0,1fr)}}

/* Keep every visible workspace card in the same one-row rhythm, including summaries and media. */
.overviewTiles{grid-template-columns:1fr!important;gap:6px!important}.overviewTiles button{min-height:48px!important;border-radius:12px!important;grid-template-columns:34px 70px minmax(0,1fr)!important}.overviewTiles span{grid-row:auto!important}.overviewTiles small{align-self:center!important}.panel-media.gallery{min-height:0!important;border-radius:12px!important;background:#fff!important;border-left:4px solid #c2410c!important;padding:0!important;overflow:hidden}.panel-media.gallery .panelHead{min-height:58px!important;padding:8px 10px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;background:#fff7ed!important;border-bottom:1px solid #fed7aa!important}.panel-media.gallery .panelHead h2{font-size:13px!important;letter-spacing:0!important;text-transform:none!important;margin:0!important}.panel-media.gallery .mediaGrid{min-height:0!important;padding:8px!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important}.panel-media.gallery .emptyTile{min-height:34px!important;background:#fff!important;border:1px dashed #fed7aa!important}
@media(max-width:680px){.overviewTiles{grid-template-columns:1fr!important}.overviewTiles button{grid-template-columns:30px 58px minmax(0,1fr)!important}}

/* Fat-finger field mode: every module card is a compact row with separated 44px actions. */
.tileWorkspace .panelHead{min-height:56px!important;padding:7px 8px 7px 10px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;background:#fff!important}
.tileWorkspace .panelHead h2{grid-column:1!important;grid-row:1!important;min-width:0!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;margin:0!important;font-size:13px!important;line-height:1.15!important;letter-spacing:0!important;text-transform:none!important}
.tileWorkspace .panelHead h2 span:not(.panelIcon){white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.tileWorkspace .panelIcon{flex:0 0 34px!important;width:34px!important;height:34px!important;border-radius:11px!important;font-size:18px!important;background:var(--soft,#eef5fb)!important;color:var(--accent,#123c69)!important}
.tileWorkspace .panelActions{grid-column:2!important;grid-row:1!important;position:static!important;margin:0!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important}
.tileWorkspace .tinyAdd,.tileWorkspace .micBtn,.tileWorkspace .photoBtn{width:52px!important;height:44px!important;min-width:52px!important;min-height:44px!important;padding:0 7px!important;border-radius:14px!important;font-size:12px!important;font-weight:750!important;line-height:1!important;box-shadow:none!important;touch-action:manipulation!important}
.tileWorkspace .micBtn,.tileWorkspace .photoBtn{background:#f8fafc!important;color:#123c69!important;border:1px solid #d8e2ed!important}
.tileWorkspace .tinyAdd{background:#0d7c66!important;color:#fff!important;border:1px solid #0d7c66!important}
.tileWorkspace .panel{border-radius:13px!important;box-shadow:0 3px 10px rgba(18,60,105,.05)!important}
@media(max-width:680px){.tileWorkspace{gap:7px!important}.tileWorkspace .panelHead{min-height:58px!important}.tileWorkspace .panelHead h2{font-size:14px!important}.tileWorkspace .panelIcon{width:36px!important;height:36px!important}.tileWorkspace .panelActions{gap:7px!important}.tileWorkspace .tinyAdd,.tileWorkspace .micBtn,.tileWorkspace .photoBtn{width:52px!important;height:44px!important;min-width:52px!important;min-height:44px!important}.overviewTiles button{min-height:44px!important}}

/* Dialogs are real centered workspaces: page behind never scrolls, list body owns scroll. */
body.modal-open{overflow:hidden!important;position:fixed!important;width:100%!important;touch-action:none!important}.modal{align-items:center!important;justify-content:center!important;padding:12px!important;overscroll-behavior:contain!important;touch-action:none!important}.modal.open{display:flex!important}.sheet{position:relative!important;width:min(720px,calc(100vw - 24px))!important;max-height:min(82vh,760px)!important;margin:0!important;border-radius:22px!important;padding:12px!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;overflow:hidden!important;overscroll-behavior:contain!important;touch-action:auto!important}.x{position:absolute!important;right:12px!important;top:12px!important;float:none!important;width:42px!important;height:42px!important;padding:0!important;border-radius:999px!important;z-index:2}.modalTitle,.sheet h2{margin:4px 48px 10px 4px!important;font-size:22px!important;line-height:1.15!important}.sheet .formContext{margin:0 0 8px!important;padding:7px 9px!important;font-size:13px!important}.condensedList{max-height:none!important;min-height:0!important;overflow:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;padding:1px 2px 8px!important;touch-action:pan-y!important}.condensedList .item{grid-template-columns:28px minmax(0,1fr) auto!important;grid-auto-rows:auto!important;min-height:42px!important;padding:5px 6px!important;gap:6px!important;align-items:center!important}.condensedList .tileIcon{width:24px!important;height:24px!important;font-size:14px!important;border-radius:8px!important}.condensedList .item-main{gap:0!important}.condensedList .friendly{font-size:9.5px!important;line-height:1.05!important}.condensedList .itemTitle{font-size:12.5px!important;line-height:1.12!important}.condensedList small,.condensedList .trace{font-size:10.5px!important;line-height:1.1!important}.condensedList .trace{display:none!important}.condensedList .bar{height:8px!important;margin-top:2px!important}.condensedList .bar em{top:-3px!important;font-size:9px!important}.condensedList .actions{grid-column:3!important;grid-row:1!important;align-self:center!important;display:flex!important;flex-direction:row!important;gap:3px!important;justify-content:flex-end!important}.condensedList .actions button{width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;border-radius:8px!important;font-size:12px!important}.detailGrid{max-height:none!important;min-height:0!important;overscroll-behavior:contain!important}.detailActions{position:sticky!important;bottom:0!important}.bar span{background:linear-gradient(90deg,#16a34a,#22c55e)}.bar.on-target span{background:linear-gradient(90deg,#16a34a,#22c55e)!important}.bar.behind span{background:linear-gradient(90deg,#eab308,#facc15)!important}.bar.overdue span{background:linear-gradient(90deg,#dc2626,#f87171)!important}
@media(max-width:680px){.modal{padding:10px!important;align-items:center!important}.sheet{width:calc(100vw - 20px)!important;max-height:80vh!important;border-radius:20px!important}.modalTitle,.sheet h2{font-size:20px!important}.condensedList .item{min-height:40px!important;grid-template-columns:26px minmax(0,1fr) auto!important}.condensedList .actions button{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important}.condensedList .itemTitle{font-size:12px!important}}
/* Mobile/iOS list scroll fix: only the list body scrolls, never the hidden page or clipped sheet. */
body.modal-open{overflow:hidden!important;position:static!important;width:100%!important;touch-action:auto!important}.modal{overflow:hidden!important;touch-action:pan-y!important}.sheet{display:flex!important;flex-direction:column!important;overflow:hidden!important;min-height:0!important}.sheet #modalBody{display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important;touch-action:pan-y!important}.sheet .modalTitle,.sheet h2,.sheet .modalTools{flex:0 0 auto!important}.sheet .condensedList{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;overscroll-behavior:contain!important;display:grid!important;align-content:start!important}.sheet .detailGrid{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;overscroll-behavior:contain!important}.condensedList .item{min-height:34px!important;padding:4px 5px!important;gap:5px!important}.condensedList .idRef{font-size:9.5px!important;padding:1px 5px!important}.condensedList .entityTitle{font-size:11.5px!important;line-height:1.12!important}.condensedList small,.condensedList .trace{font-size:9.5px!important;line-height:1.05!important}.condensedList .tileIcon{width:22px!important;height:22px!important;font-size:13px!important}.condensedList .actions button{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important}

/* Active board also follows one-card-per-row scan pattern. */
.masterGrid{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;overflow:visible!important;padding:2px 0 8px!important}.masterCard{width:100%!important;max-width:100%!important;min-width:0!important;flex:auto!important;display:grid!important;grid-template-columns:minmax(0,220px) minmax(120px,1fr) minmax(0,1.5fr) minmax(0,140px)!important;align-items:center!important;gap:8px!important}.masterCard b,.masterCard small{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.masterCard .bar{margin:0!important}
@media(max-width:680px){.masterCard{grid-template-columns:1fr!important}.masterCard .bar{width:100%!important}}

/* Two-column movable module tiles; actions moved into the opened modal. */
.tileWorkspace{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.tileWorkspace .panel{cursor:pointer;touch-action:manipulation}.tileWorkspace .panelHead{min-height:52px!important;grid-template-columns:1fr!important;padding:8px 10px!important}.tileWorkspace .panelActions{display:none!important}.modalTools{display:flex!important;gap:8px!important;margin:-4px 48px 10px 4px!important;padding-bottom:8px!important;border-bottom:1px solid #e6edf5!important}.modalTools .micBtn,.modalTools .photoBtn,.modalTools .tinyAdd{width:52px!important;height:42px!important;min-width:52px!important;min-height:42px!important;padding:0 8px!important;border-radius:14px!important;font-weight:750!important;box-shadow:none!important}.arrangeMode{outline:0!important;border:0!important}.arrangeMode .panel{cursor:grab!important}.arrangeMode .panel.dragging{opacity:.55;transform:scale(.98)}
@media(max-width:680px){.tileWorkspace{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tileWorkspace .panelHead{min-height:50px!important}.tileWorkspace .panelHead h2{font-size:12px!important}.tileWorkspace .panelIcon{width:30px!important;height:30px!important;font-size:16px!important}}

/* ProAmigos header logo from repository asset. */
.brand{display:inline-flex!important;align-items:center!important;flex:0 0 auto!important;text-decoration:none!important;min-width:132px!important;max-width:min(250px,42vw)!important;height:54px!important;padding:0!important;overflow:visible!important}.brand img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:left center!important}.brand:hover{filter:saturate(1.05)}
@media(max-width:680px){header{padding:6px 8px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:start!important;column-gap:6px!important}.brand{height:44px!important;min-width:98px!important;max-width:34vw!important;grid-row:1/3!important}.top{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;justify-content:end!important;gap:4px!important;width:100%!important;min-width:0!important}.top a{min-width:0!important;max-width:100%!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;padding:7px 6px!important;font-size:11.5px!important}.top a:nth-last-child(-n+3){grid-row:2!important}.hero.compact h1{font-size:clamp(24px,8.6vw,38px)!important;line-height:1.05!important}.heroTitle .entityTitle,.switchTitle .entityTitle,.masterTitle .entityTitle{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}}

/* Mobile-first forms: large thumb-friendly fields and no repeated project selectors after context is chosen. */
.sheet form{display:grid!important;gap:14px!important;font-size:17px!important;line-height:1.25!important}.sheet form label{display:grid!important;gap:8px!important;font-size:16px!important;font-weight:850!important;color:#123c69!important}.sheet input,.sheet select,.sheet textarea{width:100%!important;min-height:56px!important;padding:13px 15px!important;border-radius:18px!important;border:1.5px solid #cbd5e1!important;background:#fff!important;color:#162033!important;font-size:18px!important;font-weight:700!important;box-shadow:inset 0 1px 0 rgba(15,23,42,.03)!important}.sheet textarea{min-height:112px!important;resize:vertical!important}.sheet form>button,.primaryFinish{justify-self:end!important;min-width:150px!important;min-height:56px!important;border-radius:999px!important;font-size:18px!important;font-weight:950!important;padding:14px 20px!important}.wizardNav{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:10px!important;padding:8px!important;margin:4px 0 10px!important;border-radius:999px!important;background:#f8fafc!important;border:1px solid #e2e8f0!important}.wizardNav button{min-height:50px!important;border-radius:999px!important;padding:10px 16px!important;font-size:16px!important}.wizardNav [data-wizard-next],.sheet form[data-project-choice]>button{justify-self:end!important}.wizardNav [data-wizard-prev]{justify-self:start!important}.wizardNav span{font-size:15px!important;font-weight:900!important;color:#334155!important;white-space:nowrap!important}.lockedProjectContext{display:grid!important;gap:4px!important;margin:0 0 2px!important;padding:12px 14px!important;border-radius:18px!important;background:linear-gradient(90deg,var(--choice-selected-soft),#fff)!important;border:1px solid color-mix(in srgb,var(--choice-selected) 32%,#d9e2ec)!important;border-left:7px solid var(--choice-selected)!important;color:#123c69!important}.lockedProjectContext b{font-size:12px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--choice-selected)!important}.lockedProjectContext span{font-size:17px!important;font-weight:900!important;color:#162033!important}.redundantProjectChoice,[hidden]{display:none!important}@media(max-width:680px){.modal{padding:8px!important}.sheet{width:calc(100vw - 16px)!important;max-height:88vh!important;padding:14px 16px 16px!important;border-radius:24px!important}.modalTitle,.sheet h2{font-size:26px!important;line-height:1.05!important;margin:8px 58px 18px 0!important}.sheet form{gap:16px!important}.sheet form label{font-size:17px!important}.sheet input,.sheet select,.sheet textarea{min-height:62px!important;font-size:19px!important;padding:15px 16px!important;border-radius:20px!important}.sheet textarea{min-height:128px!important}.sheet form>button,.primaryFinish{min-height:60px!important;font-size:19px!important}.wizardStep{display:grid!important;gap:16px!important}.wizardStep[hidden]{display:none!important}.choiceTiles .choiceTile{min-height:76px!important;padding:15px!important}.choiceTiles .choiceTile b{font-size:18px!important}.choiceTiles .choiceTile span{font-size:15px!important}}
.datePickField small{display:block!important;color:#64748b!important;font-size:13px!important;font-weight:700!important}.datePickField input[type="date"]{appearance:auto!important;-webkit-appearance:auto!important;background:#fff!important}.durationField input{max-width:160px!important}.durationField{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:18px!important;padding:10px 12px!important}.masterCard{min-height:54px!important;padding:7px 9px!important;gap:5px!important}.masterCard .masterTitle .idRef{font-size:10px!important;padding:2px 6px!important}.masterCard .masterTitle .entityTitle{font-size:13px!important;line-height:1.12!important}.masterCard small{display:none!important}.masterCard .bar{height:8px!important;margin-top:1px!important}
/* Direct per-entity attachments in detail modals. */
.modalPart{min-height:0!important;display:flex!important;flex-direction:column!important;gap:8px!important;margin:0 0 10px!important;padding:10px!important;border:1px solid #e2e8f0!important;border-radius:18px!important;background:#fff!important}.modalPartCreate{flex:0 0 auto!important;border-left:6px solid var(--choice-selected)!important}.modalPartExisting{flex:1 1 auto!important;overflow:hidden!important;border-left:6px solid #123c69!important;background:#f8fbfd!important}.modalPart h3{margin:0!important;font-size:16px!important;line-height:1.15!important;font-weight:900!important;color:#123c69!important}.choiceTiles{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:4px 2px 10px!important}.choiceTiles.projectChoiceCards{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.choiceTiles .choiceTile{--choice:#123c69;--choiceSoft:#eef5fb;display:grid!important;gap:5px!important;text-align:left!important;border-radius:16px!important;background:linear-gradient(90deg,var(--choiceSoft),#fff 45%)!important;color:#172033!important;border:1px solid color-mix(in srgb,var(--choice) 28%,#d9e2ec)!important;border-left:7px solid var(--choice)!important;box-shadow:0 6px 14px rgba(15,23,42,.07)!important;min-height:76px!important;padding:10px!important;align-content:center!important}.choiceTiles .choice-selected{--choice:var(--choice-selected);--choiceSoft:var(--choice-selected-soft)}.choiceTiles .choice-existing{--choice:var(--choice-existing);--choiceSoft:var(--choice-existing-soft)}.choiceTiles .choice-new{--choice:var(--choice-new);--choiceSoft:var(--choice-new-soft)}.choiceTiles .choiceTile b{font-size:13px!important;line-height:1.15!important;color:var(--choice)!important}.choiceTiles .choiceTile span{font-size:11px!important;line-height:1.2!important;color:#475569!important;font-weight:550!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.choiceTiles .choiceTile:disabled{opacity:.45!important}.projectChoiceList{min-height:0!important;display:flex!important;flex-direction:column!important;gap:8px!important;margin-top:2px!important}.projectChoiceHead{display:grid!important;gap:2px!important;padding:8px 10px!important;border-radius:14px!important;background:#f8fafc!important;border:1px solid #e2e8f0!important}.projectChoiceHead b{font-size:13px!important;color:#123c69!important}.projectChoiceHead span{font-size:12px!important;color:#64748b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.choiceItemList{max-height:min(42vh,360px)!important;overflow:auto!important;padding-right:2px!important}.condensedList.choiceItemList .choiceItem{cursor:pointer!important;grid-template-columns:minmax(0,1fr) auto!important;min-height:34px!important;padding:5px 8px!important;gap:6px!important;align-items:center!important}.condensedList.choiceItemList .choiceItem .itemTitle{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;font-size:11px!important;line-height:1.12!important}.choiceItem small{white-space:nowrap!important;font-size:9px!important;line-height:1!important;color:#64748b!important}.choiceItem:focus{outline:3px solid rgba(14,165,233,.28)!important}
@media(max-width:680px){.choiceTiles.projectChoiceCards{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.choiceTiles .choiceTile{min-height:70px!important;padding:8px 7px!important;border-left-width:5px!important;border-radius:14px!important}.choiceTiles .choiceTile b{font-size:11px!important}.choiceTiles .choiceTile span{font-size:9.5px!important;-webkit-line-clamp:3}.choiceItemList{max-height:34vh!important}}
.attachmentBox{border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:10px;margin:10px 0;background:#f8fafc}.attachmentHead{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.attachmentList{display:grid;gap:6px;max-height:190px;overflow:auto;overscroll-behavior:contain}.attachmentList>div{display:grid;gap:3px;padding:7px 8px;border-radius:10px;background:white;border:1px solid rgba(15,23,42,.08)}.attachmentList span{font-size:12px;color:#475569;word-break:break-word}

/* Separate human-readable IDs from entity names for scanability: ID first, subject/title on its own line everywhere. */
.refTitle{display:grid;grid-template-columns:minmax(0,1fr)!important;align-items:start;gap:3px;min-width:0}.idRef{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:850!important;letter-spacing:.08em;color:#0f766e;background:#e8f7f1;border:1px solid rgba(15,118,110,.18);border-radius:999px;padding:2px 6px;white-space:nowrap;font-size:.78em;line-height:1.25;justify-self:start}.entityTitle{display:block;min-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#172033;font-weight:650!important;line-height:1.18}.heroTitle{gap:5px}.heroTitle .idRef{font-size:18px;color:#ccfbf1;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);padding:3px 8px}.heroTitle .entityTitle{white-space:normal;color:#fff;font-size:clamp(26px,7vw,42px);line-height:1.05;font-weight:760!important}.switchTitle,.masterTitle{width:100%}.switchTitle .idRef,.masterTitle .idRef{font-size:11px}.itemTitle .idRef{color:var(--accent,#0f766e);background:var(--soft,#e8f7f1)}.condensedList .refTitle{grid-template-columns:minmax(0,1fr)!important;gap:3px}.condensedList .idRef{font-size:10px;padding:1px 5px}.condensedList .entityTitle{font-size:13px}.masterCard .refTitle,.switchTile .refTitle{margin-bottom:2px}@media(max-width:680px){.heroTitle .idRef{font-size:17px}.heroTitle .entityTitle{font-size:34px}.masterCard .entityTitle,.switchTile .entityTitle{font-size:13px}}

/* Condensed top project card: vertical space is precious. Keep the card, remove unnecessary tags. */
.hero.compact{position:sticky!important;top:72px!important;z-index:7!important;padding:7px 10px!important;border-radius:14px!important;margin:5px 0!important;min-height:0!important}.hero.compact .eyebrow,.hero.compact .stats,.hero.compact .focusNote,.hero.compact .bar,.hero.compact .contextBack{display:none!important}.hero.compact h1{margin:0!important;font-size:clamp(17px,4.8vw,23px)!important;line-height:1.05!important}.heroTopLine{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}.quickNoteBtn{flex:0 0 auto!important;min-height:34px!important;padding:6px 10px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.35)!important;background:rgba(255,255,255,.18)!important;color:#fff!important;font-size:12px!important;font-weight:850!important;box-shadow:none!important;white-space:nowrap!important}.hero.compact .heroTitle{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important}.hero.compact .heroTitle .idRef{flex:0 0 auto!important;font-size:10px!important;padding:1px 5px!important;letter-spacing:.04em!important}.hero.compact .heroTitle .entityTitle{font-size:clamp(17px,4.8vw,23px)!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.overviewTiles{display:none!important}.switcher{margin:5px 0!important;padding:5px!important;gap:5px!important}.switcher>b{display:none!important}.switchTile{min-width:128px!important;max-width:180px!important;padding:5px 7px!important}.switchTile .idRef{font-size:9px!important;padding:1px 5px!important}.switchTile .entityTitle{font-size:11.5px!important}.switchTile .bar{height:6px!important;margin-top:3px!important}@media(max-width:680px){.hero.compact{top:56px!important}}

/* Account mobile UX: no scary red sign-out, no squeezed action rows, destructive controls stay tucked into account safety. */
.accountProfile .panelHead,.adminFeatures .panelHead{min-height:0!important}.accountActions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:8px!important}.accountActions .saveAction,.accountActions .logoutLink{width:100%!important;min-height:54px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;text-decoration:none!important;font-size:18px!important;font-weight:850!important;box-shadow:0 8px 18px rgba(18,60,105,.08)!important}.accountActions .saveAction{background:#0d7c66!important;color:#fff!important}.accountActions .logoutLink{background:#eef5fb!important;color:#123c69!important;border:1px solid #d9e2ec!important}.adminFeatures{border-left:0!important;background:linear-gradient(180deg,#fff,#f8fbfd)!important}.adminFeatures details{display:block!important}.adminFeatures summary{cursor:pointer!important;list-style:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border-radius:0!important;padding:4px 0 10px!important;background:transparent!important;color:#123c69!important;font-size:16px!important;font-weight:850!important;border-bottom:1px solid #e6edf3!important}.adminFeatures summary span{display:grid!important;gap:2px!important}.adminFeatures summary b{font-size:16px!important;line-height:1.2!important}.adminFeatures summary small{font-size:13px!important;line-height:1.25!important;color:#64748b!important;font-weight:650!important}.adminFeatures summary::-webkit-details-marker{display:none}.adminFeatures summary::after{content:'Show';font-size:12px;line-height:1;border-radius:999px;padding:7px 10px;background:#eef5fb;color:#123c69;font-weight:850;letter-spacing:.02em;white-space:nowrap}.adminFeatures details[open] summary::after{content:'Hide'}.adminDanger{margin-top:14px!important;border:1px solid #fee2e2!important;background:#fff7f7!important;border-radius:18px!important;padding:14px!important}.adminDanger h3{margin:0 0 8px!important;color:#7f1d1d!important;letter-spacing:.08em;text-transform:uppercase;font-size:13px!important}.adminDanger p{font-size:15px!important;line-height:1.35!important;color:#172033!important}.softNotice{background:#eef5fb!important;color:#123c69!important}.dangerForm{display:grid!important;gap:10px!important}.dangerForm input{min-height:56px!important}.dangerBtn{background:#b42335!important;color:#fff!important;width:100%!important;min-height:54px!important;border-radius:999px!important}.secondaryAction{background:#eef5fb!important;color:#123c69!important;border:1px solid #d9e2ec!important;width:100%!important;min-height:52px!important}
@media(max-width:680px){.accountActions{grid-template-columns:1fr!important}.adminFeatures summary{font-size:16px!important}.account form{gap:14px!important}.account input{min-height:56px!important;font-size:18px!important}}

/* Logged-in/out state in the main header. */
.brand{display:grid!important;grid-template-columns:auto!important;gap:0!important;align-content:center!important;justify-items:center!important;text-decoration:none!important;line-height:1!important}.brand img{display:block!important;width:100%!important;max-width:180px!important}.brandWelcome{display:block!important;width:100%!important;max-width:180px!important;min-height:20px!important;margin:-2px auto 0!important;color:#64748b!important;font-weight:650!important;letter-spacing:.01em!important;white-space:normal!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;text-align:center!important;border:0!important;background:transparent!important;box-shadow:none!important}.brandWelcome.welcomeShort{font-size:11px!important;line-height:10px!important}.brandWelcome.welcomeMedium{font-size:10px!important;line-height:10px!important}.brandWelcome.welcomeLong{font-size:8.8px!important;line-height:9.5px!important}.authModal{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:18px}.authBackdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(6px);box-shadow:none!important;border-radius:0!important}.modalCard{position:relative;z-index:1;width:min(430px,calc(100vw - 30px))!important;max-height:min(680px,calc(100dvh - 36px));overflow:auto;margin:0!important;border-radius:22px!important;box-shadow:0 24px 80px rgba(15,23,42,.28)!important}.modalClose{position:absolute;top:10px;right:10px;width:34px;height:34px;display:grid;place-items:center;text-decoration:none;background:#eef5fb!important;color:#123c69!important;border-radius:999px!important;box-shadow:none!important;font-size:22px!important;line-height:1!important;z-index:2}.brandWelcome.isEmpty{visibility:hidden!important;font-size:10px!important;line-height:10px!important}.top .langNav{background:#eef5fb!important;color:#123c69!important;box-shadow:none!important}.top .logoutNav{background:#eef5fb!important;color:#123c69!important;border:1px solid #d9e2ec!important;box-shadow:none!important}.top .adminNav{background:#0d7c66!important;color:#fff!important}.top .loginNav{background:#0d7c66!important;color:#fff!important}@media(max-width:680px){.top .langNav{grid-row:auto!important}.brand img,.brandWelcome{max-width:168px!important}.brandWelcome.welcomeShort{font-size:10.5px!important}.brandWelcome.welcomeMedium{font-size:9.5px!important}.brandWelcome.welcomeLong{font-size:8.3px!important;line-height:9px!important}}

/* Modal existing-item rows: keep ID and title on separate tiny scan lines. */
.condensedList.choiceItemList .choiceRefTitle{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important;align-items:start!important;min-width:0!important;white-space:normal!important}
.condensedList.choiceItemList .choiceRefTitle .idRef{justify-self:start!important;font-size:9.5px!important;line-height:1.05!important;padding:1px 5px!important;color:#0f766e!important;background:#e8f7f1!important;border-color:rgba(15,118,110,.18)!important;font-weight:850!important}
.condensedList.choiceItemList .choiceRefTitle .entityTitle{display:block!important;font-size:11px!important;line-height:1.12!important;color:#172033!important;font-weight:650!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Global modal overflow guard: tall content scrolls inside the sheet instead of being clipped. */
.sheet #modalBody{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;padding-right:1px!important}
.sheet form,.sheet .wizardForm{min-height:0!important;max-width:100%!important}
.modalPartExisting .choiceItemList{max-height:min(32vh,280px)!important;overflow-y:auto!important}
@media(max-width:680px){.sheet{max-height:88dvh!important}.modalPartExisting .choiceItemList{max-height:min(30vh,240px)!important}}

/* Compact dropdown-choice modals: selecting an option is the action; no wasted Continue/Next button. */
#modalBody[data-wizard="projectChoice"] .modalTitle{font-size:clamp(22px,6.8vw,30px)!important;line-height:1.05!important;margin-bottom:10px!important}
#modalBody[data-wizard="projectChoice"] .modalPart{gap:6px!important;padding:9px!important;margin-bottom:8px!important;border-radius:16px!important}
#modalBody[data-wizard="projectChoice"] .modalPart h3{font-size:15px!important;line-height:1.1!important}
.sheet form[data-project-choice]{gap:6px!important}
.sheet form[data-project-choice] label{gap:5px!important;font-size:12px!important;line-height:1.1!important}
.sheet form[data-project-choice] select{min-height:48px!important;padding:9px 13px!important;border-radius:17px!important;font-size:16px!important;line-height:1.12!important;font-weight:850!important}
.sheet form[data-project-choice]>button{display:none!important}
.compactSelectPart{padding-bottom:8px!important}
.choiceTiles .choiceTile{min-height:62px!important;padding:8px!important;gap:3px!important}
.choiceTiles .choiceTile b{font-size:12px!important;line-height:1.08!important}.choiceTiles .choiceTile span{font-size:10px!important;line-height:1.12!important;-webkit-line-clamp:2!important}
@media(max-width:680px){#modalBody[data-wizard="projectChoice"] .modalTitle{font-size:25px!important}#modalBody[data-wizard="projectChoice"] .modalPart h3{font-size:14px!important}.sheet form[data-project-choice] select{min-height:46px!important;font-size:15px!important}.choiceTiles.projectChoiceCards{gap:5px!important}.choiceTiles .choiceTile{min-height:58px!important;padding:7px 6px!important}.choiceTiles .choiceTile b{font-size:10.5px!important}.choiceTiles .choiceTile span{font-size:9px!important}}

/* Two-row create choice: one long "new in selected project" action above two square alternatives. */
.compactChoiceCards.projectChoiceCards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;padding-bottom:4px!important}
.compactChoiceCards .choiceWide{grid-column:1/-1!important;min-height:48px!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;padding:7px 10px!important}
.compactChoiceCards .choiceWide b{font-size:11px!important;line-height:1.05!important}.compactChoiceCards .choiceWide span{font-size:9.5px!important;line-height:1.1!important;-webkit-line-clamp:1!important}
.compactChoiceCards .choice-existing,.compactChoiceCards .choice-new{min-height:58px!important}
@media(max-width:680px){.compactChoiceCards .choiceWide{min-height:44px!important}.compactChoiceCards .choiceWide b{font-size:10px!important}.compactChoiceCards .choiceWide span{font-size:8.8px!important}.compactChoiceCards .choice-existing,.compactChoiceCards .choice-new{min-height:54px!important}}

/* Generated estimate builder */
.builderBlock{border:1px solid #dbe4f0;border-left:5px solid #0d7c66;border-radius:16px;padding:8px;margin:8px 0;background:#fbfdff}
.builderBlock h3{font-size:13px;margin:0 0 6px;color:#123c69}.builderBlock small{display:block;font-size:10px;color:#64748b;font-weight:800}
.builderGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.builderGrid label,.builderBlock label{margin:0}
.estimateDetail{border:1px solid #dbe4f0;border-left:6px solid #0d7c66;border-radius:18px;padding:10px;margin:8px 0;background:#f8fffc}
.estimateDetail h3{margin:0 0 8px;font-size:15px}.estimateLines div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;border-bottom:1px solid #dbe4f0;padding:6px 0;font-size:12px}.estimateLines span{min-width:0;overflow:hidden;text-overflow:ellipsis}.estimateLines b{font-size:11px;color:#64748b}.estimateLines strong{font-size:12px;color:#0d7c66}.estimateTotal{display:grid;grid-template-columns:1fr auto;gap:8px;padding-top:8px}.estimateTotal strong{font-size:18px;color:#0d7c66}
@media(max-width:680px){.builderGrid{grid-template-columns:1fr}.estimateLines div{grid-template-columns:1fr auto}.estimateLines b{display:none}}

.microEstimate{border:1px solid #cdeee0;background:linear-gradient(180deg,#fbfffd,#f4fbf8);border-radius:18px;padding:10px;margin:8px 0 12px}.liveEstimateTop{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-bottom:6px}.liveEstimateTop h3{margin:0;font-size:13px;line-height:1;color:#0d7c66}.liveEstimateTop span{font-size:9px;font-weight:850;color:#64748b;text-align:right}.crumbFilters{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:6px}.crumbFilters label,.entityPick,.tinyInputs label{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:#123c69;font-weight:950}.crumbFilters select,.crumbFilters input,.entityPick select,.tinyInputs input{min-height:30px;border-radius:10px;border:1px solid #cbd5e1;padding:5px 7px;font-size:11px;font-weight:800;background:#fff;color:#172033}.entityPick{display:block;margin-top:6px}.entityPick select{width:100%;height:128px}.tinyInputs{display:grid;grid-template-columns:1.4fr .7fr .8fr .8fr;gap:6px;margin-top:6px}.liveEstimateActions{display:grid;grid-template-columns:1.4fr .8fr;gap:6px;margin-top:8px}.liveEstimateActions button{min-height:34px;border-radius:999px;font-size:11px}.liveEstimateActions button[type=button]{background:#fff7ed;color:#9a3412;border-color:#fed7aa}
/* Estimate starter is intentionally tiny: project/currency/status/amount are known or meaningless until lines exist. */
.sheet form.estimateStarter{gap:8px!important;font-size:13px!important;line-height:1.15!important}
.sheet form.estimateStarter label{font-size:12px!important;gap:5px!important;margin:0!important}
.sheet form.estimateStarter input{min-height:44px!important;border-radius:14px!important;padding:9px 12px!important;font-size:15px!important}
.estimateStarterHint{margin:-2px 0 4px!important;padding:7px 9px!important;border-radius:10px!important;background:#f8fafc!important;color:#64748b!important;font-size:11px!important;line-height:1.18!important;font-weight:700!important}
.sheet form.estimateStarter button{min-height:44px!important;min-width:0!important;padding:10px 15px!important;font-size:14px!important;justify-self:end!important}
@media(max-width:680px){.sheet form.estimateStarter{gap:7px!important}.sheet form.estimateStarter input{min-height:42px!important;font-size:15px!important}.estimateStarterHint{font-size:10.5px!important}.sheet form.estimateStarter button{min-height:42px!important;font-size:13px!important}}

/* Professional compact live-estimate document: uniform controls, no oversized mobile fields, no overlap. */
#modalBody[data-wizard="detailView"]{gap:8px!important}
#modalBody[data-wizard="detailView"]>.formContext:first-of-type{display:none!important}
#modalBody[data-wizard="detailView"]>.attachmentBox{margin:8px 0!important;padding:8px!important;border-radius:12px!important;box-shadow:none!important}
#modalBody[data-wizard="detailView"]>.detailActions{position:static!important;padding:6px 0 0!important;margin:0!important;gap:6px!important;border-top:1px solid #edf2f7!important}
#modalBody[data-wizard="detailView"]>.detailActions button,#modalBody[data-wizard="detailView"]>.detailActions .buttonLink{min-height:34px!important;height:34px!important;padding:0 12px!important;border-radius:12px!important;font-size:12px!important;box-shadow:none!important}
.estimateDetail{display:grid!important;gap:6px!important;margin:4px 0 8px!important;padding:9px!important;border-radius:14px!important;border-left-width:4px!important;background:#fff!important}
.estimateDetail h3{font-size:13px!important;line-height:1.05!important;margin:0!important;color:#172033!important;font-weight:850!important}
.estimateLines{display:grid!important;gap:3px!important}.estimateLines:empty{display:none!important}
.estimateLines div{min-height:28px!important;padding:4px 0!important;grid-template-columns:minmax(0,1fr) 72px 82px!important;font-size:11px!important;gap:6px!important}
.estimateTotal{grid-template-columns:1fr 90px!important;gap:4px 8px!important;padding-top:3px!important;font-size:13px!important}.estimateTotal b,.estimateTotal strong{font-size:13px!important;line-height:1.1!important}.estimateTotal strong{font-size:16px!important}
#modalBody form.microEstimate{display:grid!important;gap:7px!important;margin:0 0 8px!important;padding:9px!important;border-radius:14px!important;overflow:visible!important;background:#fbfffd!important}
#modalBody form.microEstimate .liveEstimateTop{display:grid!important;grid-template-columns:80px minmax(0,1fr)!important;align-items:center!important;margin:0!important;gap:6px!important}
#modalBody form.microEstimate .liveEstimateTop h3{font-size:13px!important;line-height:1!important;margin:0!important;color:#0d7c66!important}
#modalBody form.microEstimate .liveEstimateTop span{font-size:9px!important;line-height:1.1!important;text-align:left!important;color:#64748b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#modalBody form.microEstimate .crumbFilters{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:6px!important;align-items:end!important}
#modalBody form.microEstimate label{display:grid!important;gap:3px!important;margin:0!important;font-size:9px!important;line-height:1!important;font-weight:850!important;letter-spacing:.04em!important;color:#123c69!important;text-transform:uppercase!important}
#modalBody form.microEstimate select,#modalBody form.microEstimate input{width:100%!important;min-height:34px!important;height:34px!important;padding:6px 8px!important;border-radius:10px!important;border:1px solid #d5dde8!important;background:#fff!important;color:#172033!important;font-size:13px!important;line-height:1.1!important;font-weight:700!important;box-shadow:none!important}
#modalBody form.microEstimate .entityPick{margin:0!important}
#modalBody form.microEstimate .entityPick select{height:72px!important;min-height:72px!important;padding:5px 7px!important;font-size:12px!important}
#modalBody form.microEstimate .tinyInputs{display:grid!important;grid-template-columns:minmax(0,1.45fr) .55fr .75fr .75fr!important;gap:6px!important;margin:0!important}
#modalBody form.microEstimate .liveEstimateActions{display:grid!important;grid-template-columns:1fr 132px!important;gap:7px!important;margin:0!important}
#modalBody form.microEstimate .liveEstimateActions button{min-height:36px!important;height:36px!important;padding:0 10px!important;border-radius:12px!important;font-size:12px!important;font-weight:800!important;box-shadow:none!important}
@media(max-width:680px){
  .sheet{width:calc(100vw - 14px)!important;max-height:88dvh!important;padding:10px!important;border-radius:18px!important}
  .modalTitle,.sheet h2{font-size:24px!important;line-height:1.08!important;margin:2px 44px 8px 0!important}
  .estimateDetail{padding:8px!important;margin-bottom:7px!important}.estimateTotal{grid-template-columns:1fr 88px!important}.estimateTotal strong{font-size:15px!important}
  #modalBody form.microEstimate{padding:8px!important;gap:6px!important}
  #modalBody form.microEstimate .crumbFilters{grid-template-columns:1fr 1fr 1fr!important;gap:5px!important}
  #modalBody form.microEstimate .liveEstimateTop{grid-template-columns:78px minmax(0,1fr)!important}
  #modalBody form.microEstimate .liveEstimateTop span{font-size:8.5px!important}
  #modalBody form.microEstimate label{font-size:8.5px!important;letter-spacing:.03em!important}
  #modalBody form.microEstimate select,#modalBody form.microEstimate input{height:32px!important;min-height:32px!important;padding:5px 7px!important;border-radius:10px!important;font-size:12px!important}
  #modalBody form.microEstimate .entityPick select{height:58px!important;min-height:58px!important}
  #modalBody form.microEstimate .tinyInputs{grid-template-columns:minmax(0,1.25fr) .55fr .65fr .65fr!important;gap:5px!important}
  #modalBody form.microEstimate .liveEstimateActions{grid-template-columns:1fr 112px!important;gap:6px!important}
  #modalBody form.microEstimate .liveEstimateActions button{height:34px!important;min-height:34px!important;font-size:11px!important;padding:0 8px!important}
  #modalBody[data-wizard="detailView"]>.attachmentBox{font-size:12px!important}.attachmentHead{font-size:12px!important}.attachmentList{max-height:54px!important}.attachmentBox .detailActions button{min-height:30px!important;height:30px!important;padding:0 9px!important;font-size:11px!important}
}
/* Contain the live-estimate add form so later sections cannot overlap the controls. */
#modalBody form.microEstimate{min-height:255px!important;align-content:start!important;position:relative!important}
@media(max-width:680px){#modalBody form.microEstimate{min-height:240px!important}}

/* Simplified estimate item entry: only free text/price, search, optional category picker. */
#modalBody form.microEstimate{min-height:0!important;gap:6px!important;padding:8px!important}
#modalBody form.microEstimate .liveEstimateTop{grid-template-columns:112px minmax(0,1fr)!important}
#modalBody form.microEstimate .quickPriceRow{display:grid!important;grid-template-columns:minmax(0,1fr) 112px!important;gap:6px!important}
#modalBody form.microEstimate .estimateSearchRow{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
#modalBody form.microEstimate .estimateAdvanced{border:1px solid #e2e8f0!important;border-radius:10px!important;background:#fff!important;padding:5px 7px!important;margin:0!important}
#modalBody form.microEstimate .estimateAdvanced summary{cursor:pointer;font-size:10px!important;font-weight:900!important;color:#0d7c66!important;list-style:none!important}
#modalBody form.microEstimate .estimateAdvanced summary::-webkit-details-marker{display:none!important}
#modalBody form.microEstimate .estimateAdvanced[open] summary{margin-bottom:5px!important}
#modalBody form.microEstimate .crumbFilters{grid-template-columns:1fr 1fr!important;gap:5px!important}
#modalBody form.microEstimate .entityPick select{height:62px!important;min-height:62px!important}
#modalBody form.microEstimate .liveEstimateActions{grid-template-columns:1fr 120px!important}
#modalBody form.microEstimate .tinyInputs{display:none!important}
@media(max-width:680px){#modalBody form.microEstimate{min-height:0!important}#modalBody form.microEstimate .quickPriceRow{grid-template-columns:minmax(0,1fr) 96px!important}#modalBody form.microEstimate .liveEstimateTop{grid-template-columns:104px minmax(0,1fr)!important}#modalBody form.microEstimate .entityPick select{height:54px!important;min-height:54px!important}#modalBody form.microEstimate .liveEstimateActions{grid-template-columns:1fr 104px!important}}

/* Estimate add form must reserve space for search/select/actions; attachments below must never overlap. */
#modalBody form.microEstimate{min-height:286px!important;align-content:start!important}
@media(max-width:680px){#modalBody form.microEstimate{min-height:270px!important}}

/* Stable no-zoom estimate controls: iOS keeps viewport scale when focused. */
#modalBody form.microEstimate input,#modalBody form.microEstimate select,#modalBody form.microEstimate textarea{font-size:16px!important;line-height:20px!important;transform:none!important;touch-action:manipulation!important}
#modalBody form.microEstimate input:focus,#modalBody form.microEstimate select:focus,#modalBody form.microEstimate textarea:focus{font-size:16px!important;outline:2px solid rgba(13,124,102,.22)!important;outline-offset:1px!important}
#modalBody form.microEstimate{min-height:286px!important;contain:layout paint!important;overflow:visible!important}
#modalBody form.microEstimate .liveEstimateActions{margin-top:1px!important}
@media(max-width:680px){#modalBody form.microEstimate{min-height:274px!important}#modalBody form.microEstimate input,#modalBody form.microEstimate select,#modalBody form.microEstimate textarea{font-size:16px!important}}

/* Realtime estimate search results: clear item/value rows instead of blank native select. */
#modalBody form.microEstimate .estimateRealtimeResults{display:grid!important;gap:4px!important;max-height:130px!important;overflow:auto!important;margin:0!important}
#modalBody form.microEstimate .estimateResult{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"name price" "meta price"!important;gap:1px 8px!important;align-items:center!important;min-height:38px!important;height:auto!important;padding:5px 8px!important;border:1px solid #d5dde8!important;border-radius:10px!important;background:#fff!important;color:#172033!important;text-align:left!important;box-shadow:none!important}
#modalBody form.microEstimate .estimateResult b{grid-area:name!important;font-size:12px!important;line-height:1.12!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#modalBody form.microEstimate .estimateResult span{grid-area:meta!important;font-size:10px!important;line-height:1.12!important;color:#64748b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#modalBody form.microEstimate .estimateResult strong{grid-area:price!important;font-size:12px!important;color:#0d7c66!important;white-space:nowrap!important}
#modalBody form.microEstimate .estimateRealtimeResults em{font-size:11px!important;color:#64748b!important;padding:5px 8px!important}
#modalBody form.microEstimate .entityPick{display:none!important}
#modalBody form.microEstimate{min-height:334px!important}
@media(max-width:680px){#modalBody form.microEstimate .estimateRealtimeResults{max-height:118px!important}#modalBody form.microEstimate{min-height:318px!important}}

/* Mobile estimate cleanup: removable rows, compact attachments, wider spacing. */
#modalBody .estimateLines div{grid-template-columns:26px minmax(0,1fr) 64px 82px!important;gap:5px!important;align-items:center!important}
#modalBody .estimateRemove{width:24px!important;height:24px!important;min-height:24px!important;padding:0!important;border-radius:999px!important;background:#fff1f2!important;color:#be123c!important;border:1px solid #fecdd3!important;font-size:17px!important;line-height:20px!important;font-weight:950!important;box-shadow:none!important}
#modalBody .compactAttachments{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"head actions" "list list"!important;align-items:center!important;gap:5px 8px!important;margin:6px 0!important;padding:7px 8px!important;border-radius:12px!important}
#modalBody .compactAttachments .attachmentHead{grid-area:head!important;display:grid!important;gap:1px!important;align-items:center!important;justify-content:start!important;font-size:12px!important;line-height:1.1!important}
#modalBody .compactAttachments .iconAttachmentActions{grid-area:actions!important;display:flex!important;gap:5px!important;margin:0!important;padding:0!important;border:0!important}
#modalBody .compactAttachments .iconAttachmentActions button{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;padding:0!important;border-radius:999px!important;font-size:16px!important;line-height:1!important;background:#eef5fb!important;color:#123c69!important;border:1px solid #d9e2ec!important;box-shadow:none!important}
#modalBody .compactAttachments .attachmentList{grid-area:list!important;max-height:48px!important;font-size:11px!important}
#modalBody form.microEstimate{min-height:0!important}
#modalBody form.microEstimate .estimateRealtimeResults{max-height:104px!important}
#modalBody form.microEstimate .estimateAdvanced{margin-top:2px!important}
#modalBody form.microEstimate .crumbFilters{gap:10px!important}
#modalBody form.microEstimate .liveEstimateActions{gap:10px!important;margin-top:2px!important}
@media(max-width:680px){
  .sheet{width:calc(100vw - 8px)!important;max-height:92dvh!important;padding:8px!important;border-radius:18px!important}
  .modalTitle,.sheet h2{font-size:22px!important;line-height:1.08!important;margin-right:42px!important}
  #modalBody form.microEstimate .quickPriceRow{grid-template-columns:1fr 104px!important;gap:10px!important}
  #modalBody form.microEstimate .liveEstimateTop{grid-template-columns:96px minmax(0,1fr)!important;gap:8px!important}
  #modalBody form.microEstimate .estimateRealtimeResults{max-height:94px!important}
  #modalBody form.microEstimate .estimateResult{min-height:34px!important;padding:4px 7px!important}
  #modalBody form.microEstimate .estimateResult b,#modalBody form.microEstimate .estimateResult strong{font-size:11.5px!important}
  #modalBody form.microEstimate .estimateResult span{font-size:9.5px!important}
  #modalBody .estimateLines div{grid-template-columns:24px minmax(0,1fr) 76px!important}
  #modalBody .estimateLines b{display:none!important}
  #modalBody .estimateRemove{width:22px!important;height:22px!important;min-height:22px!important;font-size:16px!important}
  #modalBody[data-wizard="detailView"]>.detailActions{display:grid!important;grid-template-columns:auto auto minmax(0,1fr)!important}
  #modalBody[data-wizard="detailView"]>.detailActions button,#modalBody[data-wizard="detailView"]>.detailActions .buttonLink{min-height:36px!important;height:36px!important;padding:0 11px!important;font-size:12px!important}
}

/* Keep estimate add form mobile-readable as a normal block, not a collapsed flex child. */
#modalBody form.microEstimate{flex:0 0 auto!important;min-height:222px!important;contain:none!important;overflow:visible!important}
#modalBody form.microEstimate:has(.estimateRealtimeResults:not(:empty)){min-height:318px!important}
@media(max-width:680px){#modalBody form.microEstimate{min-height:222px!important}#modalBody form.microEstimate:has(.estimateRealtimeResults:not(:empty)){min-height:306px!important}}

/* Checklist quick row actions */
.choiceItem .rowActions{display:flex!important;gap:4px!important;align-items:center!important;justify-content:flex-end!important}
.choiceItem .rowActions button{min-height:28px!important;height:28px!important;padding:0 8px!important;border-radius:8px!important;font-size:11px!important}
.choiceItem .rowActions .danger{background:#fff1f2!important;color:#be123c!important;border-color:#fecdd3!important}
.shareIconBtn{width:28px!important;min-width:28px!important;height:28px!important;padding:0!important;border-radius:999px!important;background:#eff6ff!important;color:#123c69!important;border:1px solid #bfdbfe!important;font-size:14px!important;font-weight:900!important;display:inline-grid!important;place-items:center!important}.shareRecipientPicker .choiceItemList{height:316px!important;min-height:316px!important;max-height:316px!important;overflow-y:auto!important}.recipientGroup{display:grid!important;gap:4px!important}.recipientGroup .scopeGroupHead{position:sticky!important;top:0!important;z-index:1!important;background:#eef6fb!important}
@media(max-width:680px){.choiceItem .rowActions button{width:auto!important;min-width:28px!important;padding:0 6px!important;font-size:10px!important}.choiceItem .rowActions{gap:3px!important}}

/* Compact mobile chat composer */
.chatCompose{display:flex;flex-direction:column;gap:10px}
.chatCompose label{margin:0}
.chatRecipient select,.chatAttach select{min-height:52px;font-size:17px;font-weight:900;border-radius:18px;border:1.5px solid #b7c8d8;background:#fff;padding:0 14px;color:#172033}
.chatMessage textarea{min-height:120px;border-radius:20px;font-size:17px;line-height:1.35;padding:14px}
.chatAttach{border:1px solid #dbe4f0;border-left:5px solid #0d7c66;background:#f3fbf8;border-radius:18px;padding:8px}
.chatAttach label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#0d7c66}
.chatAttach .parentTools,.chatAttach .formContext{display:none!important}
.chatSend{align-self:flex-end;min-height:56px;border-radius:999px;padding:0 28px;font-size:18px}
@media(max-width:640px){#modalBody h2{font-size:24px;margin-bottom:10px}.chatCompose{gap:12px}.chatMessage textarea{min-height:132px}.chatSend{width:100%;align-self:stretch}.chatAttach{padding:7px}.chatAttach select{min-height:48px}}

/* Real checklist workspace: big touch targets and explicit Open affordance. */
.realChecklist{border:1px solid #cfe7df!important;border-left:7px solid #0d7c66!important;border-radius:20px!important;background:#f5fffb!important;padding:12px!important;margin:10px 0!important}
.checklistTop{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;color:#123c69!important;font-weight:950!important;font-size:15px!important}.checklistTop span{color:#0d7c66!important;font-size:12px!important;background:#e6fffa!important;border-radius:999px!important;padding:4px 8px!important}.checklistProgress{height:8px!important;border-radius:999px!important;background:#dbeafe!important;overflow:hidden!important;margin:8px 0 10px!important}.checklistProgress i{display:block!important;height:100%!important;background:#0d7c66!important;border-radius:999px!important}.checklistMiniProgress{grid-column:1/-1;display:grid!important;grid-template-columns:auto auto;gap:3px 8px;align-items:center;color:#0d7c66!important;font-size:10px!important;font-weight:900!important}.checklistMiniProgress i{grid-column:1/-1;height:6px;border-radius:999px;background:#dbeafe;overflow:hidden}.checklistMiniProgress em{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0d7c66,#16a34a)}.checklistMiniProgress b{justify-self:end;color:#123c69}.checklistLines{display:grid!important;gap:8px!important}.checklistLine{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;min-height:54px!important;padding:10px 12px!important;border:1.5px solid #dbe4f0!important;border-radius:16px!important;background:#fff!important;color:#172033!important;font-size:16px!important;font-weight:850!important;cursor:pointer!important}.checklistLine input{width:26px!important;height:26px!important;accent-color:#0d7c66!important}.checklistLine.isDone{background:#e6fffa!important;border-color:#0d7c66!important}.checklistLine.isDone span{text-decoration:line-through!important;color:#64748b!important}.openChecklistBtn{background:#0d7c66!important;color:#fff!important;border-color:#0d7c66!important;font-weight:950!important}.checklistRowActions{display:grid!important;grid-template-columns:1fr 1fr 1fr!important}.choiceItem .checklistRowActions button{min-width:44px!important}.threeChecklistChoices{grid-template-columns:repeat(3,minmax(0,1fr))!important}.inlineCheck{display:flex!important;grid-template-columns:none!important;align-items:center!important;gap:10px!important}.inlineCheck input{width:24px!important;min-height:24px!important}.formHint{display:block;color:#64748b!important;font-weight:750!important}
@media(max-width:680px){.realChecklist{padding:10px!important}.checklistLine{min-height:58px!important;font-size:17px!important;border-radius:18px!important}.checklistLine input{width:30px!important;height:30px!important}.choiceItem .checklistRowActions{grid-template-columns:1fr!important;gap:3px!important}.choiceItem .checklistRowActions button{height:26px!important;min-height:26px!important;font-size:10px!important;padding:0 7px!important}}

/* Global condensed typed lists: group by entity type, sort labels in code, color each type. */
.typedItem,.condensedList .item{border-left-color:var(--type-color,var(--accent,#123c69))!important}
.typedItem:before,.condensedList .item:before{background:var(--type-color,var(--accent,#123c69))!important;opacity:.16!important}
select optgroup{font-weight:950;color:#123c69;background:#f8fafc}
select option{font-size:14px;line-height:1.2;padding:3px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.condensedList{gap:3px!important}.condensedList .item{min-height:34px!important;padding:4px 6px!important;gap:5px!important;border-radius:8px!important}.condensedList .item small{font-size:9.5px!important;line-height:1.05!important}.condensedList.choiceItemList .choiceRefTitle .entityTitle{font-size:10.5px!important}.condensedList.choiceItemList .choiceRefTitle .idRef{font-size:8.5px!important}
@media(max-width:680px){select{font-size:15px!important}.condensedList{gap:2px!important}.condensedList .item{min-height:31px!important;padding:3px 5px!important}.condensedList .actions button,.choiceItem .rowActions button{height:24px!important;min-height:24px!important;font-size:9px!important}.choiceItem .rowActions{gap:2px!important}}

/* Compact chat threads: contact first, message preview second, seen/unseen like messenger apps. */
.chatThreadRow{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}.chatThreadRow .chatPreview{grid-column:1/-1!important;font-size:10.5px!important;line-height:1.1!important;color:#64748b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.chatThreadRow .idRef{background:color-mix(in srgb,var(--type-color,#0d7c66) 14%,white)!important;color:var(--type-color,#0d7c66)!important}.chatThread{border:1px solid #dbe4f0!important;border-left:6px solid var(--type-color,#0d7c66)!important;border-radius:18px!important;background:#f8fbfd!important;padding:10px!important}.chatThreadHead{display:flex!important;justify-content:space-between!important;gap:8px!important;align-items:center!important;margin-bottom:8px!important}.chatThreadHead b{font-size:16px!important;color:#172033!important}.chatThreadHead span{font-size:11px!important;font-weight:950!important;color:var(--type-color,#0d7c66)!important;background:#fff!important;border-radius:999px!important;padding:3px 8px!important}.chatMessages{display:grid!important;gap:6px!important}.chatBubble{border-radius:14px!important;padding:7px 9px!important;border:1px solid #e2e8f0!important;background:#fff!important}.chatBubble.unseen{border-color:#0d7c66!important;background:#e6fffa!important}.chatBubble small{display:block!important;font-size:9.5px!important;color:#64748b!important;font-weight:850!important;margin-bottom:2px!important}.chatBubble p{margin:0!important;font-size:13px!important;line-height:1.22!important;color:#172033!important;font-weight:750!important}
@media(max-width:680px){.chatThreadRow{min-height:38px!important}.chatThreadRow .chatPreview{font-size:10px!important}.chatBubble{padding:7px 8px!important}.chatBubble p{font-size:13px!important}}


/* Confluence-style note document view: hide raw properties, keep adding details, private by default. */
.noteDoc{display:grid!important;gap:12px!important;background:#fff!important}.noteDocHead{display:flex!important;justify-content:space-between!important;gap:10px!important;align-items:flex-start!important;border-bottom:1px solid #e2e8f0!important;padding-bottom:10px!important}.noteDocHead small{display:inline-block!important;font:900 10px/1.1 ui-monospace,monospace!important;color:#0d7c66!important;background:#e6fffa!important;border-radius:999px!important;padding:4px 8px!important;margin-bottom:5px!important}.noteDocHead h2{margin:0!important;font-size:24px!important;line-height:1.08!important;color:#172033!important}.notePrivacy{display:grid!important;gap:2px!important;min-width:118px!important;border-radius:16px!important;border:1px solid #dbe4f0!important;background:#f8fafc!important;color:#123c69!important;padding:8px 10px!important;text-align:left!important}.notePrivacy b{font-size:13px!important}.notePrivacy span{font-size:9.5px!important;line-height:1.1!important;color:#64748b!important}.notePrivacy.isPrivate{border-color:#fbbf24!important;background:#fffbeb!important}.notePrivacy.isPublic{border-color:#0d7c66!important;background:#e6fffa!important}.privateBadge{color:#b45309!important}.sharedBadge{color:#0d7c66!important}.noteCanvas{display:grid!important;gap:10px!important;background:#f8fbfd!important;border:1px solid #dbe4f0!important;border-radius:18px!important;padding:12px!important}.noteBlock{background:#fff!important;border-left:5px solid #0d7c66!important;border-radius:14px!important;padding:10px 12px!important;box-shadow:0 6px 18px rgba(15,23,42,.05)!important}.noteBlock small{display:block!important;color:#64748b!important;font-size:10px!important;font-weight:950!important;margin-bottom:4px!important;text-transform:uppercase!important;letter-spacing:.04em!important}.noteBlock p{margin:0!important;color:#172033!important;font-size:15px!important;line-height:1.35!important;font-weight:650!important}.noteAppend{display:grid!important;gap:8px!important;background:#f8fafc!important;border:1px solid #dbe4f0!important;border-radius:18px!important;padding:10px!important}.noteAppend textarea{min-height:96px!important;font-size:15px!important;line-height:1.35!important}.noteAppend button{justify-self:end!important;min-height:38px!important;padding:8px 16px!important}.noteShareHint{font-size:12px!important;line-height:1.25!important;color:#64748b!important;font-weight:800!important;background:#f8fafc!important;border-radius:12px!important;padding:8px 10px!important}.shareNote{background:#fff;border-left:5px solid #0d7c66;border-radius:14px;padding:12px;margin-bottom:10px}.shareNote h3{margin:0 0 6px;color:#172033}.shareNote p{margin:0;white-space:pre-wrap;color:#334155}
@media(max-width:680px){.noteDocHead{display:grid!important}.noteDocHead h2{font-size:22px!important}.notePrivacy{width:100%!important;min-width:0!important}.noteCanvas{padding:9px!important}.noteBlock{padding:9px 10px!important}.noteBlock p{font-size:14px!important}.noteAppend textarea{min-height:110px!important}}


/* Note attachments stay inside the open note and render as expandable thumbnails. */
.noteAttachments{background:#f8fafc!important;border:1px solid #dbe4f0!important;border-radius:18px!important;padding:10px!important}.noteAttachHead{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:8px!important}.noteAttachHead b{color:#123c69!important;font-size:14px!important}.noteAttachHead span{font-size:11px!important;color:#64748b!important;font-weight:900!important}.noteThumbs{display:flex!important;gap:8px!important;flex-wrap:wrap!important}.noteThumb{width:86px!important;min-height:76px!important;border:1px solid #dbe4f0!important;border-radius:13px!important;background:#fff!important;color:#123c69!important;text-decoration:none!important;padding:5px!important;display:grid!important;gap:3px!important;align-content:start!important;box-shadow:0 4px 12px rgba(15,23,42,.05)!important}.noteThumb img{width:100%!important;height:58px!important;object-fit:cover!important;border-radius:9px!important;background:#e2e8f0!important}.noteThumb span{font-size:9.5px!important;line-height:1.05!important;font-weight:850!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.noteInlineMedia{margin-top:8px!important}.noteInlineMedia button{min-height:34px!important;border-radius:999px!important;background:#174e80!important;color:#fff!important;padding:7px 12px!important}.noteDoc .iconAttachmentActions{margin-top:0!important}.noteDoc .attachmentBox{display:none!important}
@media(max-width:680px){.noteThumb{width:78px!important}.noteThumb img{height:54px!important}.noteInlineMedia button{width:100%!important}}


/* Note modal owns scrolling; latest detail stays near top under the main note. */
#modalBody[data-wizard="noteDetail"]{max-height:86vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;scroll-behavior:smooth!important}.noteDoc{padding-bottom:12px!important}.noteBlock small{white-space:normal!important}.noteAppend{position:relative!important}.noteThumbs small{font-size:11px!important;color:#64748b!important;font-weight:850!important;padding:4px!important}
@media(max-width:680px){#modalBody[data-wizard="noteDetail"]{max-height:82vh!important;padding-bottom:18px!important}.noteDoc{gap:10px!important}}


/* Automatic GPS mileage checklist */
.geoTrackerCard{border:1px solid #bfdbfe;background:#eff6ff;border-radius:18px;padding:14px;margin:10px 0;display:grid;gap:10px}
.geoTrackerCard>b,.geoTrackerCard div>b{display:block;color:#123c69;font-weight:950;margin-bottom:4px}.geoTrackerCard span{color:#475569;font-weight:750}.geoCheckRows{display:grid;gap:6px}.geoCheckRows label{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #dbe4f0;border-radius:12px;padding:8px 10px;font-weight:850;color:#172033}.geoCheckRows input{width:20px;height:20px;accent-color:#0d7c66}.geoStats{display:flex;gap:8px}.geoStats span{flex:1;background:#fff;border:1px solid #dbe4f0;border-radius:14px;padding:8px;text-align:center}.geoStats b{font-size:20px;color:#0d7c66}.geoActions{display:flex;gap:8px;flex-wrap:wrap}.geoActions button{flex:1;min-width:150px;border:0;border-radius:999px;padding:12px 14px;background:#0d7c66;color:#fff;font-weight:950}.geoActions button[disabled]{background:#e2e8f0;color:#64748b}


/* Four-way create choice: global + selected + existing + new */
.projectChoiceCards.compactChoiceCards:has(.choice-global){display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.projectChoiceCards.compactChoiceCards:has(.choice-global) .choiceTile{min-height:74px!important}.choice-global{border-left-color:#64748b!important;background:linear-gradient(135deg,#fff,#f8fafc)!important}.choice-global b{color:#334155!important}
@media(max-width:520px){.projectChoiceCards.compactChoiceCards:has(.choice-global){grid-template-columns:1fr 1fr!important}.projectChoiceCards.compactChoiceCards:has(.choice-global) .choiceTile{padding:8px!important;min-height:68px!important}.projectChoiceCards.compactChoiceCards:has(.choice-global) .choiceTile span{font-size:11px!important;line-height:1.15!important}}


/* Fast trip controls: full-width driving command row, original green/red action colors. */
@keyframes paResumeBlink{0%,100%{filter:saturate(1);box-shadow:0 10px 22px rgba(202,138,4,.20)}50%{filter:saturate(1.25) brightness(1.06);box-shadow:0 0 0 4px rgba(250,204,21,.18),0 12px 28px rgba(202,138,4,.34)}}@keyframes paDriveGlow{0%,100%{box-shadow:0 12px 26px rgba(18,60,105,.10),inset 0 1px 0 rgba(255,255,255,.75)}50%{box-shadow:0 0 0 3px rgba(13,124,102,.10),0 16px 30px rgba(13,124,102,.15),inset 0 1px 0 rgba(255,255,255,.85)}}@keyframes paDriveDot{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.18);opacity:1}}
.quickTripBar{position:relative!important;top:auto!important;z-index:5!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;gap:8px 10px!important;width:100%!important;max-width:none!important;margin:8px 0!important;padding:10px!important;background:linear-gradient(135deg,#eaf7ff 0%,#f7fbff 55%,#eef8f5 100%)!important;border:1px solid #c7dff2!important;border-radius:22px!important;box-shadow:0 12px 26px rgba(18,60,105,.10),inset 0 1px 0 rgba(255,255,255,.75)!important;backdrop-filter:blur(10px)!important}.tripClue{min-width:0!important;height:auto!important;border-radius:18px!important;display:grid!important;gap:2px!important;align-items:center!important;justify-content:start!important;background:linear-gradient(135deg,#dff3ff,#ecfff7)!important;color:#123c69!important;font-weight:850!important;font-size:14px!important;padding:9px 12px!important;border:1px solid rgba(18,60,105,.08)!important}.tripClue b{font-size:16px!important;line-height:1!important}.tripClue span{display:block!important;font-size:11px!important;color:#526276!important;font-weight:750!important}.tripButtons{display:flex!important;gap:8px!important;align-items:center!important;justify-content:flex-end!important}.quickTripBar button{min-width:104px!important;height:54px!important;min-height:54px!important;padding:0 14px!important;border:0!important;border-radius:18px!important;color:#fff!important;font-weight:900!important;font-size:15px!important;line-height:1!important;text-align:center!important;box-shadow:0 10px 22px rgba(13,124,102,.22)!important}.quickTripBar .tripStartBtn{background:linear-gradient(135deg,#0d7c66,#12a37d)!important}.quickTripBar.is-driving{animation:paDriveGlow 2.8s ease-in-out infinite!important}.quickTripBar.is-driving .tripClue b::after{content:' •';display:inline-block;color:#10b981;animation:paDriveDot 1.7s ease-in-out infinite}.quickTripBar .tripStartBtn[data-state="paused"]{background:linear-gradient(135deg,#facc15,#f59e0b)!important;color:#3b2600!important;animation:paResumeBlink 1.4s ease-in-out infinite!important}.quickTripBar .tripStopBtn{background:linear-gradient(135deg,#be123c,#e11d48)!important;box-shadow:0 10px 22px rgba(190,18,60,.20)!important}.quickTripBar .tripLogBtn{min-width:68px!important;background:linear-gradient(135deg,#123c69,#2563eb)!important;box-shadow:0 10px 22px rgba(37,99,235,.18)!important}.quickTripBar button[disabled]{background:linear-gradient(135deg,#d7dee8,#cbd5e1)!important;color:#64748b!important;opacity:1!important;box-shadow:none!important}.quickTripBar small{grid-column:1/3!important;color:#334155!important;font-size:12px!important;font-weight:850!important;line-height:1.1!important;text-align:center!important;white-space:nowrap!important;background:rgba(255,255,255,.58)!important;border-radius:999px!important;padding:5px 8px!important}@media(max-width:680px){.quickTripBar{grid-template-columns:minmax(0,1fr) auto!important;padding:8px!important;gap:7px!important;border-radius:19px!important}.tripClue{padding:8px 9px!important}.tripClue b{font-size:15px!important}.tripClue span{font-size:10px!important}.tripButtons{gap:5px!important}.quickTripBar button{min-width:64px!important;height:48px!important;min-height:48px!important;padding:0 9px!important;border-radius:16px!important;font-size:13px!important}.quickTripBar small{font-size:11px!important;padding:4px 7px!important}.switcher{padding-right:5px!important;min-height:0!important}}

/* Driving log: compact, scrollable, grouped by day with visible km/time/EUR totals. */
.mileageHistory{display:grid!important;grid-template-rows:auto auto minmax(260px,1fr)!important;gap:5px!important;height:min(68vh,640px)!important;min-height:0!important;overflow:hidden!important}.mileageHistory .projectChoiceHead{display:none!important}.historyFilters{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:4px!important;margin:0!important}.historyFilters button{min-height:29px!important;padding:4px 6px!important;border-radius:999px!important;font-size:11.5px!important;background:#123c69!important;color:#fff!important;box-shadow:none!important}.historyFilters select{grid-column:span 2!important;min-height:34px!important;padding:5px 8px!important;border-radius:12px!important;border:1px solid #cbd5e1!important;background:#fff!important;color:#172033!important;font-size:12.5px!important;font-weight:850!important}.historyFilters label{display:grid!important;grid-column:span 2!important;gap:1px!important;margin:0!important;color:#123c69!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.03em!important}.historyFilters input{min-height:32px!important;border-radius:12px!important;border:1px solid #cbd5e1!important;padding:4px 8px!important;font-size:12.5px!important;font-weight:850!important}.historyTotals{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:4px!important;position:sticky!important;top:0!important;z-index:3!important;background:#f8fafc!important;border:1px solid #dbe4f0!important;border-radius:999px!important;padding:5px 7px!important;margin:0!important;color:#123c69!important;font-weight:950!important;font-size:12px!important;min-height:32px!important}.historyTotals b,.dayTripCount{background:#123c69!important;color:#fff!important;border-radius:999px!important;padding:2px 7px!important;font-size:11px!important;line-height:1.2!important}.historyTotals span,.tripDateGroupHeader span{display:inline-flex!important;align-items:center!important;border-radius:999px!important;padding:2px 6px!important;min-height:20px!important;font-size:11.5px!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important}.dayMetricKm{background:#e0f2fe!important;color:#075985!important}.dayMetricTime{background:#ecfdf5!important;color:#047857!important}.dayMetricCost{background:#fff7ed!important;color:#c2410c!important}.tripHistoryRows{min-height:0!important;max-height:none!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;padding:0 2px 8px 0!important;display:block!important}.tripHistoryRow[hidden]{display:none!important}.tripHistoryRow{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;gap:2px 6px!important;min-height:44px!important;margin:0 0 3px!important;padding:6px 7px!important;border-radius:13px!important}.tripHistoryRow .choiceRefTitle{grid-column:1!important;grid-row:1/3!important;min-width:0!important;gap:3px!important;align-self:center!important}.tripHistoryRow .choiceRefTitle .idRef{font-size:10.5px!important;padding:2px 5px!important;max-width:82px!important}.tripHistoryRow .choiceRefTitle .entityTitle{font-size:12.5px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:145px!important}.tripHistoryRow .tripRowDate{grid-column:2!important;grid-row:1!important;color:#64748b!important;font-size:10px!important;font-weight:900!important;line-height:1!important;justify-self:end!important;align-self:end!important}.tripHistoryRow .tripRowMetrics{grid-column:2!important;grid-row:2!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:3px!important;white-space:nowrap!important}.tripHistoryRow .tripRowMetrics b{display:inline-flex!important;align-items:center!important;min-height:23px!important;padding:3px 6px!important;border-radius:999px!important;font-size:13px!important;line-height:1!important;font-weight:950!important;letter-spacing:-.015em!important}.tripHistoryRow .tripRowMetrics .tripMetricKm{background:#e0f2fe!important;color:#075985!important}.tripHistoryRow .tripRowMetrics .tripMetricTime{background:#ecfdf5!important;color:#047857!important}.tripHistoryRow .tripRowMetrics .tripMetricCost{background:#fff7ed!important;color:#c2410c!important}.tripDateGroupHeader{position:sticky!important;top:0!important;z-index:2!important;display:grid!important;grid-template-columns:minmax(74px,1fr) auto auto auto auto!important;align-items:center!important;gap:4px!important;margin:6px 0 3px!important;padding:5px 6px!important;border:1px solid #cfe0ee!important;border-radius:12px!important;background:linear-gradient(135deg,#eef6fb,#f8fafc)!important;color:#123c69!important;box-shadow:0 3px 10px rgba(18,60,105,.06)!important}.tripDateGroupHeader b{font-size:11.5px!important;font-weight:950!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.tripDateGroupHeader span{font-size:11px!important}@media(max-width:680px){.mileageHistory{height:72vh!important;grid-template-rows:auto auto minmax(190px,1fr)!important}.historyFilters{grid-template-columns:repeat(4,minmax(0,1fr))!important}.historyFilters select{grid-column:span 2!important}.historyFilters label{grid-column:span 2!important}.tripHistoryRow{min-height:42px!important;padding:5px 6px!important;gap:1px 5px!important}.tripHistoryRow .choiceRefTitle .entityTitle{max-width:118px!important;font-size:12px!important}.tripHistoryRow .choiceRefTitle .idRef{max-width:72px!important}.tripHistoryRow .tripRowMetrics{gap:2px!important}.tripHistoryRow .tripRowMetrics b{font-size:12.5px!important;padding:3px 5px!important}.tripDateGroupHeader{grid-template-columns:minmax(60px,1fr) auto auto auto auto!important;gap:3px!important;padding:4px 5px!important}.tripDateGroupHeader b{font-size:11px!important}.tripDateGroupHeader span,.historyTotals span{font-size:10.5px!important;padding:2px 5px!important}}

/* Keep driving row height stable when Resume/paused state appears. */
.quickTripBar{min-height:114px!important;max-height:114px!important;overflow:hidden!important}.tripClue{min-height:64px!important;max-height:64px!important;overflow:hidden!important}.tripClue span{max-width:142px!important;display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.tripButtons{min-height:54px!important}.quickTripBar small{height:26px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;text-overflow:ellipsis!important}.noProjectTripActions [data-no-project-trip="yes"]{background:#0d7c66!important;color:#fff!important;border-color:#0d7c66!important}.noProjectTripActions [data-no-project-trip="no"]{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important}@media(max-width:680px){.quickTripBar{min-height:105px!important;max-height:105px!important}.tripClue{min-height:58px!important;max-height:58px!important}.tripClue span{max-width:118px!important}.tripButtons{min-height:48px!important}.quickTripBar small{height:24px!important}}

/* Mileage trip detail: professional grouped summary, no raw camelCase property dump. */
.tripDetailDoc{display:grid!important;gap:10px!important;margin:4px 0 10px!important}.tripDocHead{display:flex!important;align-items:center!important;gap:8px!important}.tripDocHead h3{margin:0!important;font-size:18px!important;color:#172033!important;line-height:1.15!important}.tripSection{background:#f8fafc!important;border:1px solid #dbe4f0!important;border-radius:18px!important;padding:10px!important;display:grid!important;gap:8px!important}.tripSection h4{margin:0!important;color:#123c69!important;font-size:13px!important;text-transform:uppercase!important;letter-spacing:.04em!important}.tripMetrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.tripMetric{min-width:0!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:14px!important;padding:8px!important}.tripMetric small{display:block!important;color:#64748b!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.03em!important}.tripMetric b{display:block!important;color:#172033!important;font-size:14px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.gpsPoints{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}.gpsPoint{display:grid!important;gap:2px!important;text-decoration:none!important;background:linear-gradient(135deg,#eaf7ff,#fff)!important;border:1px solid #bfdbfe!important;border-radius:16px!important;padding:10px!important;color:#123c69!important}.gpsPoint span{font-size:12px!important;font-weight:900!important}.gpsPoint b{font-size:16px!important;color:#172033!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.gpsPoint small{font-size:11px!important;color:#2563eb!important;font-weight:900!important}.gpsPoint.disabled{opacity:.6;pointer-events:none}.tripMetrics.compact .tripMetric b{font-size:13px!important}@media(max-width:680px){#modalBody[data-wizard="detailView"] .tripDetailDoc~.detailGrid{display:none!important}.tripDetailDoc{gap:8px!important}.tripSection{padding:9px!important;border-radius:15px!important}.tripMetrics{grid-template-columns:1fr 1fr!important;gap:6px!important}.tripMetric{padding:7px!important;border-radius:12px!important}.tripMetric b{font-size:13px!important}.gpsPoint{padding:9px!important;border-radius:14px!important}.gpsPoint b{font-size:14px!important}.tripDocHead h3{font-size:16px!important}}
.tripRouteTrace{display:grid!important;gap:6px!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:16px!important;padding:8px!important}.tripRouteTrace>div:first-child{display:flex!important;justify-content:space-between!important;gap:8px!important;align-items:center!important}.tripRouteTrace b{color:#123c69!important;font-size:12px!important}.tripRouteTrace span{color:#64748b!important;font-size:11px!important;font-weight:900!important}.tripRouteTrace a{min-height:34px!important;border-radius:999px!important;background:#123c69!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;font-size:13px!important;font-weight:900!important}.tripEmbeddedRoute{width:100%!important;height:min(46vh,430px)!important;min-height:330px!important;border:1px solid #cbd5e1!important;border-radius:14px!important;background:#eef4f8!important;display:block!important}.tripRouteSvg{width:100%!important;height:92px!important;border-radius:13px!important;background:linear-gradient(135deg,#eff6ff,#f8fafc)!important;overflow:hidden!important}.tripRouteSvg .routeShadow{fill:none;stroke:#bfdbfe;stroke-width:8;stroke-linecap:round;stroke-linejoin:round}.tripRouteSvg .routeLine{fill:none;stroke:#0d7c66;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.tripRouteSvg .routeStart{fill:#10b981;stroke:#fff;stroke-width:2}.tripRouteSvg .routeEnd{fill:#e11d48;stroke:#fff;stroke-width:2}

/* Detail/note modals: controls must not steal vertical space from actual content. */
#modalBody[data-wizard="detailView"],#modalBody[data-wizard="noteDetail"]{gap:6px!important}
#modalBody[data-wizard="detailView"]>.attachmentBox,#modalBody[data-wizard="noteDetail"] .noteAttachments{padding:7px!important;border-radius:13px!important;margin:4px 0!important}
#modalBody[data-wizard="detailView"] .attachmentHead,#modalBody[data-wizard="noteDetail"] .noteAttachHead{margin-bottom:4px!important;min-height:0!important}
#modalBody[data-wizard="detailView"] .attachmentHead b,#modalBody[data-wizard="noteDetail"] .noteAttachHead b{font-size:12px!important;line-height:1.1!important}
#modalBody[data-wizard="detailView"] .attachmentHead span,#modalBody[data-wizard="noteDetail"] .noteAttachHead span{font-size:10px!important;line-height:1!important}
#modalBody[data-wizard="detailView"] .iconAttachmentActions,#modalBody[data-wizard="noteDetail"] .noteAttachActions{gap:4px!important;display:flex!important;align-items:center!important}
#modalBody[data-wizard="detailView"] .iconAttachmentActions button,#modalBody[data-wizard="noteDetail"] .noteAttachActions button{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border-radius:999px!important;font-size:15px!important;box-shadow:none!important}
#modalBody[data-wizard="detailView"]>.detailActions{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:6px!important;padding-top:5px!important;margin-top:2px!important}
#modalBody[data-wizard="detailView"]>.detailActions button,#modalBody[data-wizard="detailView"]>.detailActions .buttonLink{min-height:32px!important;height:32px!important;padding:0 9px!important;border-radius:11px!important;font-size:12px!important}
#modalBody[data-wizard="noteDetail"] .noteDocHead{padding-bottom:6px!important}.noteBlock{padding:8px!important;border-radius:13px!important}.noteBody{font-size:15px!important;line-height:20px!important}.noteAppend textarea{min-height:78px!important}.noteAppend button{min-height:38px!important;height:38px!important;border-radius:13px!important;font-size:13px!important}
@media(max-width:680px){.sheet h2,#modalBody .modalTitle{font-size:18px!important;line-height:1.1!important;margin-bottom:4px!important}#modalBody[data-wizard="detailView"]>.attachmentBox{order:5}#modalBody[data-wizard="detailView"]>.detailActions{order:9}.tripDetailDoc{order:1}.tripSection{padding:8px!important}.tripMetrics{gap:5px!important}.tripMetric{min-height:48px!important;padding:6px!important}.gpsPoint{padding:8px!important}.tripRouteSvg{height:70px!important}.tripRouteTrace a{min-height:30px!important;font-size:12px!important}}

/* Trip detail density pass: show map trace without scrolling past oversized cards. */
.tripDetailDoc{gap:7px!important}.tripDocHead{gap:6px!important}.tripDocHead h3{font-size:16px!important;line-height:1.05!important}.tripSection{gap:6px!important;padding:8px!important;border-radius:15px!important}.tripSection h4{font-size:12px!important}.tripMetrics{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}.tripMetric{min-height:42px!important;padding:6px!important;border-radius:11px!important}.tripMetric small{font-size:9px!important}.tripMetric b{font-size:12.5px!important;line-height:1.05!important}.gpsPoints{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}.gpsPoint{padding:7px!important;border-radius:12px!important}.gpsPoint span{font-size:11px!important}.gpsPoint b{font-size:13px!important}.gpsPoint small{font-size:10px!important}.tripRouteTrace{padding:6px!important;border-radius:12px!important;gap:4px!important}.tripRouteSvg{height:62px!important}.tripRouteTrace a{min-height:28px!important;font-size:12px!important}.tripRouteTrace b{font-size:11px!important}.tripRouteTrace span{font-size:10px!important}@media(max-width:680px){.tripMetrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gpsPoints{grid-template-columns:1fr!important}.tripRouteSvg{height:58px!important}.tripMetric{min-height:40px!important}.tripMetric b{font-size:12px!important}}

/* Master note: content-first compact document, no giant privacy/actions consuming the screen. */
#modalBody[data-wizard="noteDetail"]{padding-top:8px!important;gap:5px!important;max-height:88dvh!important}.compactNoteDoc{gap:6px!important;background:#fff!important;padding-bottom:6px!important}.compactNoteDoc .noteDocHead{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;padding:0 4px 5px!important;border-bottom:1px solid #edf2f7!important}.compactNoteDoc .noteDocHead h2{font-size:18px!important;line-height:1.05!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:calc(100vw - 118px)!important}.compactNoteDoc .noteDocHead small{font-size:9px!important;padding:3px 7px!important;margin:0 0 2px!important}.compactNoteDoc .notePrivacy{width:auto!important;min-width:0!important;min-height:28px!important;height:28px!important;border-radius:999px!important;padding:0 9px!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:none!important}.compactNoteDoc .notePrivacy b{font-size:11px!important;line-height:1!important}.compactNoteDoc .notePrivacy span{display:none!important}.compactNoteDoc .noteCanvas{padding:6px!important;border-radius:13px!important;gap:6px!important;margin:0!important;background:#f8fafc!important}.compactNoteDoc .noteBlock{padding:7px 9px!important;border-radius:12px!important;min-height:0!important}.compactNoteDoc .noteBlock small{font-size:10px!important;letter-spacing:.08em!important}.compactNoteDoc .noteBlock p{font-size:15px!important;line-height:19px!important;margin:3px 0 0!important}.compactNoteAppend{position:sticky!important;bottom:0!important;z-index:4!important;background:rgba(255,255,255,.96)!important;border:1px solid #dbe4f0!important;border-radius:14px!important;padding:7px!important;margin:2px 0!important;box-shadow:0 -8px 24px rgba(15,23,42,.08)!important}.compactNoteAppend label{font-size:13px!important;margin:0!important}.compactNoteAppend textarea{min-height:58px!important;max-height:86px!important;border-radius:12px!important;font-size:15px!important;padding:9px!important}.noteQuickActions{display:flex!important;gap:5px!important;align-items:center!important;margin-top:5px!important}.noteQuickActions button{height:34px!important;min-height:34px!important;border-radius:999px!important;padding:0 12px!important;font-size:13px!important;box-shadow:none!important}.noteQuickActions button:not([type="submit"]){width:34px!important;min-width:34px!important;padding:0!important;background:#123c69!important;color:#fff!important}.compactNoteDoc .noteAttachments{padding:6px!important;border-radius:12px!important;margin:0!important;order:8}.compactNoteDoc .noteAttachHead{margin-bottom:4px!important}.compactNoteDoc .noteThumb{width:58px!important;padding:4px!important;border-radius:10px!important}.compactNoteDoc .noteThumb img{height:38px!important;border-radius:8px!important}.compactNoteDoc .noteThumb small{font-size:9px!important;padding:2px!important}@media(max-width:680px){#modalBody[data-wizard="noteDetail"]{max-height:84dvh!important}.compactNoteDoc .noteCanvas{max-height:45vh!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important}.compactNoteDoc .noteDocHead h2{font-size:17px!important}.compactNoteAppend textarea{min-height:52px!important}.noteQuickActions button{height:32px!important;min-height:32px!important}.noteQuickActions button:not([type="submit"]){width:32px!important;min-width:32px!important}}
.compactNoteDoc .noteInlineMedia{display:flex!important;gap:5px!important;margin-top:5px!important}.compactNoteDoc .noteInlineMedia button{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;border-radius:999px!important;font-size:14px!important;background:#eef5fb!important;color:#123c69!important;box-shadow:none!important}.compactNoteDoc .noteInlineMedia button:hover{background:#dff3ff!important}@media(max-width:680px){.compactNoteDoc .noteAttachments{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:4px!important;align-items:center!important}.compactNoteDoc .noteThumbs{grid-column:1/3!important}.compactNoteDoc .noteInlineMedia{margin:0!important}.compactNoteDoc .noteInlineMedia button{width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important}.compactNoteDoc .noteAppend{padding:6px!important}.compactNoteDoc .noteCanvas{max-height:50vh!important}}
.compactNoteDoc .noteDocHead{padding-right:44px!important}
@media(max-width:680px){.compactNoteDoc .noteDocHead{padding-right:38px!important}}

/* Project switcher: header tap opens latest-first list; attention stays collapsed by default. */
.projectTitleBtn{appearance:none!important;border:0!important;background:transparent!important;padding:0!important;margin:0!important;text-align:left!important;min-width:0!important;cursor:pointer!important;display:flex!important;align-items:center!important;gap:4px!important}.projectTitleBtn h1{margin:0!important}.projectTitleBtn:after{content:'⌄';display:inline-flex!important;color:#dbeafe!important;font-weight:900!important}.needsCollapsed{padding:0!important;margin:6px 0!important;border-radius:16px!important;overflow:hidden!important}.needsCollapsed summary{list-style:none!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;padding:8px 10px!important;background:#fff!important;border:1px solid #dbe4f0!important;border-radius:16px!important;color:#123c69!important}.needsCollapsed summary::-webkit-details-marker{display:none!important}.needsCollapsed summary span{min-width:30px;height:24px;border-radius:999px;background:#123c69;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:12px}.needsCollapsed .needsList{display:grid!important;gap:6px!important;padding:7px!important;background:#f8fafc!important;border:1px solid #dbe4f0!important;border-top:0!important;border-radius:0 0 16px 16px!important;max-height:34vh!important;overflow:auto!important}.projectQuickPicker .choiceItemList{max-height:58vh!important;overflow:auto!important}.projectQuickPicker .choiceItem{grid-template-columns:54px minmax(0,1fr) 24px!important;text-decoration:none!important;color:#172033!important}.projectQuickPicker .choiceItem.on{background:#e6fffa!important;border-left-color:#0d7c66!important}.projectQuickPicker .choiceItem>span:first-child{font:900 10px/1 ui-monospace,monospace;color:#0d7c66;background:#e6fffa;border-radius:999px;padding:5px;text-align:center}.projectQuickPicker .choiceItem i{font-style:normal;font-size:18px;font-weight:900;color:#64748b}@media(max-width:680px){.needsCollapsed summary{min-height:38px!important;padding:7px 9px!important}.needsCollapsed .needsList{max-height:28vh!important}.projectQuickPicker .choiceItemList{max-height:52vh!important}.projectTitleBtn:after{font-size:12px!important}}

/* Admin defaults and document-style notes. */
.adminDefaults{border:1px solid #dbe4f0;border-radius:18px;padding:12px;display:grid;gap:10px;background:#f8fafc}.adminDefaults legend{font-weight:900;color:#123c69;padding:0 6px}.compactNoteDoc .noteCanvas{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 8px 24px rgba(15,23,42,.06)!important;padding:14px 16px!important;display:block!important}.compactNoteDoc .noteBlock{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:8px 0!important;border-left:0!important;border-bottom:1px solid #eef2f7!important}.compactNoteDoc .noteBlock:last-child{border-bottom:0!important}.compactNoteDoc .noteBlock small{color:#64748b!important}.compactNoteDoc .noteBlock p{font-size:16px!important;line-height:22px!important}.noteQuickActions{justify-content:flex-end!important}.noteQuickActions button[type="submit"]{margin-left:auto!important;height:42px!important;min-height:42px!important;min-width:96px!important;background:#0d7c66!important;color:#fff!important;font-size:15px!important;font-weight:950!important;box-shadow:0 8px 18px rgba(13,124,102,.24)!important}.compactNoteAppend{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important}.compactNoteAppend label{grid-column:1/2!important}.compactNoteAppend .noteQuickActions{grid-column:2/3!important;margin-left:8px!important;flex-wrap:nowrap!important}.compactNoteAppend textarea{min-width:0!important}@media(max-width:680px){.compactNoteAppend{grid-template-columns:minmax(0,1fr) auto!important}.noteQuickActions button[type="submit"]{min-width:82px!important;height:40px!important;min-height:40px!important}.compactNoteAppend .noteQuickActions{align-self:end!important}}

/* Project picker alignment + real internal scrolling. */
#modalBody[data-wizard="projectQuickPicker"]{overflow:hidden!important;min-height:0!important;max-height:calc(100dvh - 110px)!important;display:flex!important;flex-direction:column!important}
#modalBody[data-wizard="projectQuickPicker"]>h2{flex:0 0 auto!important;margin:0 42px 8px 0!important;line-height:1.05!important}
#modalBody[data-wizard="projectQuickPicker"] .projectQuickPicker{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
.projectQuickPicker .projectChoiceHead{flex:0 0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;padding:9px 12px!important;margin:0 0 6px!important;border:1px solid #dbe4f0!important;border-radius:14px!important;background:#fff!important;color:#123c69!important}
.projectQuickPicker .projectChoiceHead b{font-size:15px!important;line-height:1.1!important}.projectQuickPicker .projectChoiceHead span{justify-self:end!important;min-width:26px!important;text-align:center!important;font-weight:900!important;color:#64748b!important}
.projectQuickPicker .choiceItemList{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;padding:0 2px 10px!important;gap:5px!important;scrollbar-width:thin!important}
.projectQuickPicker .choiceItem.projectPickerRow{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;grid-template-areas:"ref text" "select select"!important;align-items:center!important;column-gap:8px!important;row-gap:7px!important;min-height:84px!important;padding:9px!important;border-radius:12px!important;border-left:4px solid #123c69!important;background:#fff!important;text-decoration:none!important;overflow:hidden!important}.projectQuickPicker .globalProjectRow{position:sticky!important;top:0!important;z-index:6!important;margin-bottom:6px!important;background:#f8fafc!important;border-left-color:#334155!important;box-shadow:0 8px 14px rgba(15,23,42,.10)!important}.projectQuickPicker .globalProjectRow.on{background:#e2e8f0!important;border-left-color:#334155!important}.projectQuickPicker .selectProjectInline{grid-area:select!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:40px!important;border-radius:12px!important;background:#0d7c66!important;color:#fff!important;padding:9px 12px!important;font-size:13px!important;font-weight:900!important;white-space:nowrap!important}.projectMonthGroup{display:grid!important;gap:5px!important}.projectMonthGroup .scopeGroupHead{position:sticky!important;top:0!important;z-index:2!important;background:#eef6fb!important}
.projectQuickPicker .choiceItem.projectPickerRow.on{background:#dcfbf5!important;border-left-color:#0d7c66!important}
.projectQuickPicker .projectRefBadge{grid-area:ref!important;align-self:center!important;justify-self:center!important;width:64px!important;max-width:64px!important;min-width:64px!important;height:24px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 7px!important;border-radius:999px!important;background:#e6fffa!important;color:#0d7c66!important;font:900 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.02em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.projectQuickPicker .projectPickText{grid-area:text!important;min-width:0!important;display:grid!important;gap:2px!important;align-content:center!important;text-align:left!important}.projectQuickPicker .projectPickText .itemTitle{font-size:14px!important;line-height:1.15!important;font-weight:900!important;color:#172033!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.projectQuickPicker .projectPickText small{font-size:12px!important;line-height:1.1!important;color:#64748b!important;font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.projectQuickPicker .projectPickArrow{display:none!important}
@media(max-width:680px){#modalBody[data-wizard="projectQuickPicker"]{max-height:calc(100dvh - 92px)!important}.projectQuickPicker .choiceItem.projectPickerRow{grid-template-columns:76px minmax(0,1fr)!important;min-height:86px!important;padding:8px!important;column-gap:8px!important;row-gap:7px!important}.projectQuickPicker .selectProjectInline{min-height:40px!important;font-size:13px!important}.projectQuickPicker .projectRefBadge{width:62px!important;min-width:62px!important;max-width:62px!important;height:23px!important;font-size:10.5px!important}.projectQuickPicker .projectPickText .itemTitle{font-size:13px!important}.projectQuickPicker .projectPickText small{font-size:11px!important}}

/* Search is a compact header action; other-project board is removed from vertical workspace. */
.searchToggle{appearance:none;border:1px solid #dbe4f0;background:#fff;color:#123c69;border-radius:12px;min-height:38px;min-width:44px;padding:0 10px;font-size:17px;font-weight:900;box-shadow:0 4px 12px rgba(18,60,105,.05)}
.top .searchToggle{order:3}.globalSearch{margin:6px 0 8px!important;overflow:hidden!important;transition:max-height .18s ease,opacity .15s ease,margin .15s ease!important;max-height:190px!important;opacity:1!important}.globalSearch.collapsed{max-height:0!important;opacity:0!important;margin:0!important;pointer-events:none!important}.globalSearch input{min-height:42px!important;border-radius:14px!important;padding:10px 13px!important;font-size:15px!important}.masterBoard{display:none!important}.masterGrid{display:none!important}
@media(max-width:680px){.top{grid-template-columns:repeat(4,minmax(0,1fr))!important}.top .searchToggle{min-width:0!important;width:100%!important;height:40px!important;min-height:40px!important;border-radius:14px!important}.globalSearch{margin:5px 0 7px!important}.globalSearch input{min-height:40px!important;font-size:15px!important}}

/* Logo welcome text: sit lower under logo without making header taller. */
.brandWelcome{margin-top:2px!important;transform:translateY(3px)!important}
@media(max-width:680px){.brandWelcome{margin-top:1px!important;transform:translateY(4px)!important}}

/* Mobile nav order: Admin/Login, Logout, Search on first row; language buttons below. */
.top .loginNav,.top .adminNav{order:1!important}.top .logoutNav{order:2!important}.top .searchToggle{order:3!important}.top .langNav{order:4!important}
@media(max-width:680px){.top{grid-template-columns:repeat(3,minmax(0,1fr))!important}.top .searchToggle{display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}.top a,.top button{min-width:0!important;max-width:100%!important}}

/* Draw search icon with CSS, not emoji, so it never appears as a broken square. */
.searchToggle{position:relative!important;font-size:0!important;line-height:1!important;color:#123c69!important}.searchToggle::before{content:''!important;display:block!important;width:14px!important;height:14px!important;border:2px solid currentColor!important;border-radius:999px!important;margin:auto!important}.searchToggle::after{content:''!important;position:absolute!important;width:8px!important;height:2px!important;background:currentColor!important;border-radius:999px!important;left:calc(50% + 4px)!important;top:calc(50% + 6px)!important;transform:rotate(45deg)!important;transform-origin:left center!important}
@media(max-width:680px){header{align-items:start!important}.top{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row!important}.top .loginNav,.top .adminNav{grid-column:1!important}.top .logoutNav{grid-column:2!important}.top .searchToggle{grid-column:3!important}.top .langNav{grid-column:auto!important}.brandWelcome{padding-top:2px!important}}
.accountLogoPreview{display:block;width:86px;height:86px;object-fit:contain;border:1px solid #dbe4f0;border-radius:16px;background:#fff;margin-top:8px;padding:6px}

/* Master note compact composer: one inline add row, no duplicate lower upload buttons. */
#modalBody[data-wizard="noteDetail"] .compactNoteAppend{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:8px!important;padding:9px!important;border:1px solid #e2e8f0!important;border-radius:14px!important;background:#fff!important;margin:0!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend label{gap:4px!important;font-size:13px!important;line-height:1.1!important;color:#123c69!important;margin:0!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend textarea{min-height:46px!important;height:46px!important;max-height:84px!important;padding:8px 10px!important;border-radius:12px!important;font-size:14px!important;line-height:18px!important;resize:vertical!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important;white-space:nowrap!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border-radius:999px!important;font-size:14px!important;box-shadow:none!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button[type="submit"]{width:78px!important;min-width:78px!important;border-radius:18px!important;font-size:14px!important;font-weight:900!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAttachments{padding:7px 9px!important;border-radius:13px!important;margin:0!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAttachments .noteThumbs{min-height:0!important;gap:5px!important}.compactNoteAttachments .noteInlineMedia{display:none!important}
@media(max-width:680px){#modalBody[data-wizard="noteDetail"] .compactNoteAppend{grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important;padding:8px!important}#modalBody[data-wizard="noteDetail"] .compactNoteAppend textarea{min-height:42px!important;height:42px!important}#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions{gap:5px!important}#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button{width:31px!important;min-width:31px!important;height:31px!important;min-height:31px!important}#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button[type="submit"]{width:70px!important;min-width:70px!important}}

/* Only Needs attention project cards expand full-width; main module tiles stay two-column. */
@media(max-width:680px){
  .needsCollapsed .needsList{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;max-height:34vh!important;overflow:auto!important}
  .needsCollapsed .masterCard{width:100%!important;max-width:100%!important;min-width:0!important;grid-template-columns:1fr!important;padding:8px 10px!important}
  .needsCollapsed .masterCard .bar{width:100%!important}
}

/* Screenshot fix: compact active GPS command row; keep it tight under project header. */
.quickTripBar{margin:4px 0 6px!important;padding:7px!important;border-radius:16px!important;gap:5px 7px!important;min-height:82px!important;max-height:82px!important}
.tripClue{min-height:42px!important;max-height:42px!important;padding:6px 9px!important;border-radius:14px!important;gap:0!important}
.tripClue b{font-size:14px!important}.tripClue span{font-size:10px!important;line-height:1.05!important;max-width:126px!important}
.tripButtons{min-height:42px!important;gap:6px!important}.quickTripBar button{min-width:84px!important;height:42px!important;min-height:42px!important;padding:0 10px!important;border-radius:14px!important;font-size:13px!important}
.quickTripBar small{grid-column:1/-1!important;height:18px!important;font-size:12px!important;margin-top:-2px!important}
@media(max-width:680px){.hero.compact{margin-bottom:4px!important}.quickTripBar{margin-top:4px!important;min-height:82px!important;max-height:82px!important}.tripButtons{gap:5px!important}.quickTripBar button{min-width:78px!important}.tripLogBtn{min-width:72px!important}.tripClue span{max-width:110px!important}}

/* Fix create/attach chooser modal: compact mobile action sheet, not oversized nested cards. */
#modalBody[data-wizard="projectAsk"]{gap:7px!important;overflow-y:auto!important}
#modalBody[data-wizard="projectAsk"] .modalTitle{font-size:22px!important;line-height:1.05!important;margin:0 44px 6px 0!important;letter-spacing:-.03em!important}
#modalBody[data-wizard="projectAsk"] .modalPart{padding:8px!important;margin:0 0 7px!important;border-radius:16px!important;gap:6px!important}
#modalBody[data-wizard="projectAsk"] .modalPart h3{font-size:15px!important;line-height:1.05!important;margin:0!important}
#modalBody[data-wizard="projectAsk"] .compactChoiceCards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
#modalBody[data-wizard="projectAsk"] .choiceTile{min-width:0!important;min-height:54px!important;height:54px!important;padding:7px 8px!important;border-radius:13px!important;display:grid!important;align-content:center!important;gap:2px!important;text-align:left!important;box-shadow:none!important;overflow:hidden!important}
#modalBody[data-wizard="projectAsk"] .choiceTile b{font-size:11px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#modalBody[data-wizard="projectAsk"] .choiceTile span{font-size:9px!important;line-height:1.08!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
#modalBody[data-wizard="projectAsk"] .choiceWide{grid-column:1/-1!important;height:46px!important;min-height:46px!important;grid-template-columns:minmax(0,1fr)!important;border-left-color:#0d7c66!important;background:#f1fff8!important}
#modalBody[data-wizard="projectAsk"] .choiceWide b{font-size:12px!important}
/* Existing list should show eight compact rows, not only a tiny preview. */
#modalBody[data-wizard="projectAsk"] [hidden],#modalBody[data-wizard="shareRecipients"] [hidden],.searchableScopeList [hidden]{display:none!important}
.projectQuickPicker [hidden],.projectChoiceList [hidden],.choiceItem[hidden]{display:none!important}
#modalBody[data-wizard="projectAsk"] .modalPartExisting{flex:0 0 auto!important;min-height:392px!important;max-height:none!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
#modalBody[data-wizard="projectAsk"] .projectChoiceHead{padding:6px 8px!important;border-radius:13px!important;margin:0 0 5px!important;gap:4px!important}
#modalBody[data-wizard="projectAsk"] .projectChoiceHead b{font-size:12px!important;line-height:1.05!important}
#modalBody[data-wizard="projectAsk"] .projectChoiceHead span{font-size:11px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#modalBody[data-wizard="projectAsk"] .choiceItemList{height:316px!important;min-height:316px!important;max-height:316px!important;gap:4px!important;padding:0!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin!important}
#modalBody[data-wizard="projectAsk"] .choiceItemList .item,#modalBody[data-wizard="projectAsk"] .emptyTile{min-height:36px!important;padding:5px 7px!important;border-radius:11px!important;font-size:11px!important}
#modalBody[data-wizard="projectAsk"] .modalPartExisting .choiceItem{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"title status" "title actions"!important;align-items:start!important;column-gap:7px!important;row-gap:2px!important;min-height:36px!important;padding:5px 7px!important}
#modalBody[data-wizard="projectAsk"] .modalPartExisting .choiceRefTitle{grid-area:title!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;min-width:0!important;padding-top:0!important;line-height:1!important}
#modalBody[data-wizard="projectAsk"] .modalPartExisting .choiceRefTitle .idRef{display:inline-flex!important;align-items:center!important;min-height:13px!important;line-height:1!important;margin:0!important;flex:0 0 auto!important;font-size:8.5px!important;padding:1px 4px!important}
#modalBody[data-wizard="projectAsk"] .modalPartExisting .choiceRefTitle .entityTitle{display:block!important;clear:both!important;font-size:11px!important;line-height:1.08!important;font-weight:800!important;color:#172033!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
#modalBody[data-wizard="projectAsk"] .modalPartExisting .choiceItem>small{grid-area:status!important;justify-self:end!important;align-self:start!important;margin-top:1px!important;font-size:9px!important}
#modalBody[data-wizard="projectAsk"] .modalPartExisting .choiceItem .rowActions{grid-area:actions!important;justify-self:end!important;align-self:end!important;display:flex!important;flex-direction:row!important;gap:5px!important}
@media(max-width:680px){
  .sheet:has(#modalBody[data-wizard="projectAsk"]){max-height:92dvh!important;padding:10px!important;border-radius:18px!important}
  #modalBody[data-wizard="projectAsk"] .modalTitle{font-size:22px!important;margin-bottom:5px!important}
  #modalBody[data-wizard="projectAsk"] .modalPartCreate{border-left-width:5px!important}
  #modalBody[data-wizard="projectAsk"] .modalPartExisting{min-height:372px!important;max-height:none!important}
}

/* List modals: tabs plus collapsed magnifying-glass search. */
.listChoiceHead{display:grid!important;grid-template-columns:minmax(0,1fr) auto 34px!important;align-items:center!important}.listSearchToggle{position:relative!important;appearance:none!important;border:1px solid #dbe4f0!important;background:#fff!important;color:#123c69!important;border-radius:11px!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:0!important;box-shadow:none!important}.listSearchToggle:before{content:''!important;position:absolute!important;width:12px!important;height:12px!important;border:2px solid currentColor!important;border-radius:999px!important;left:7px!important;top:6px!important}.listSearchToggle:after{content:''!important;position:absolute!important;width:8px!important;height:2px!important;background:currentColor!important;border-radius:999px!important;left:18px!important;top:20px!important;transform:rotate(45deg)!important}.listSearchRow{margin:0 0 6px!important}.listSearchRow[hidden]{display:none!important}.listSearchRow input{width:100%!important;min-height:38px!important;height:38px!important;border-radius:13px!important;font-size:16px!important;padding:8px 11px!important}.listTabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin:0 0 6px!important}.scopeTab{min-width:0!important;min-height:43px!important;height:43px!important;padding:5px 7px!important;border-radius:13px!important;border:1px solid #dbe4f0!important;background:#fff!important;color:#123c69!important;text-align:left!important;box-shadow:none!important;display:grid!important;align-content:center!important;gap:1px!important}.scopeTab.on{border-color:#0d7c66!important;background:#eafbf6!important;color:#064e3b!important}.scopeTab:disabled{opacity:.55!important}.scopeTab b{font-size:12px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.scopeTab span{font-size:10px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#53657a!important}.searchableScopeList .scopeListGroup{margin:0!important}.searchableScopeList .scopeGroupHead{margin:0 0 5px!important;padding:6px 8px!important;border-radius:12px!important}.searchableScopeList .dynamicListEmpty{min-height:36px!important}

/* Checklist detail document: checklist first, no generic task field grid. */
#modalBody[data-wizard="checklistDetail"]{gap:7px!important;overflow-y:auto!important;padding-top:6px!important}
#modalBody[data-wizard="checklistDetail"] .checklistTitle{font-size:22px!important;line-height:1.08!important;margin:0 44px 6px 0!important;color:#172033!important;letter-spacing:-.03em!important}
#modalBody[data-wizard="checklistDetail"] .realChecklist{margin:0!important;padding:10px!important;border-radius:18px!important;background:linear-gradient(180deg,#f8fffc,#ffffff)!important;border:1px solid #cfe7df!important;border-left:6px solid #0d7c66!important;box-shadow:none!important}
#modalBody[data-wizard="checklistDetail"] .checklistTop{font-size:13px!important;line-height:1!important;margin:0!important}
#modalBody[data-wizard="checklistDetail"] .checklistTop b{font-size:14px!important}
#modalBody[data-wizard="checklistDetail"] .checklistTop span{font-size:11px!important;padding:3px 7px!important}
#modalBody[data-wizard="checklistDetail"] .checklistProgress{height:6px!important;margin:7px 0 8px!important;background:#e2e8f0!important}
#modalBody[data-wizard="checklistDetail"] .checklistLines{gap:6px!important}
#modalBody[data-wizard="checklistDetail"] .checklistLine{min-height:46px!important;grid-template-columns:30px minmax(0,1fr)!important;gap:8px!important;padding:7px 9px!important;border-radius:13px!important;background:#fff!important;border:1px solid #dbe4f0!important;font-size:14px!important;line-height:1.15!important;font-weight:800!important}
#modalBody[data-wizard="checklistDetail"] .checklistLine input{width:24px!important;height:24px!important;min-height:24px!important;margin:0!important}
#modalBody[data-wizard="checklistDetail"] .checklistLine span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
#modalBody[data-wizard="checklistDetail"] .checklistLine.isDone{background:#ecfdf5!important;border-color:#10b981!important}
#modalBody[data-wizard="checklistDetail"] .checklistAttachments{margin:0!important;padding:7px 8px!important;border-radius:13px!important}
#modalBody[data-wizard="checklistDetail"] .checklistDocActions{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:6px!important;margin:0!important;padding:0!important}
#modalBody[data-wizard="checklistDetail"] .checklistDocActions button{height:34px!important;min-height:34px!important;border-radius:12px!important;font-size:12px!important;padding:0 8px!important;box-shadow:none!important}
@media(max-width:680px){
  .sheet:has(#modalBody[data-wizard="checklistDetail"]){max-height:82dvh!important;padding:10px!important;border-radius:18px!important}
  #modalBody[data-wizard="checklistDetail"] .checklistTitle{font-size:21px!important;margin-bottom:5px!important}
  #modalBody[data-wizard="checklistDetail"] .realChecklist{padding:9px!important}
  #modalBody[data-wizard="checklistDetail"] .checklistLine{min-height:44px!important;font-size:14px!important;border-radius:12px!important}
  #modalBody[data-wizard="checklistDetail"] .checklistLine input{width:23px!important;height:23px!important}
}

/* Mileage history date groups */
.tripDateGroupHeader{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 4px;padding:7px 9px;border:1px solid #dbe4f0;border-radius:12px;background:#eef6fb;color:#123c69;font-size:12px;font-weight:900}
.tripDateGroupHeader span{color:#53657a;font-size:11px;font-weight:800;white-space:nowrap}
.tripHistoryRows .tripHistoryRow{margin-bottom:5px}

/* Master note full-width add text composer */
#modalBody[data-wizard="noteDetail"] .compactNoteAppend{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(96px,128px)!important;grid-template-areas:"field send" "media media"!important;align-items:stretch!important;width:100%!important;gap:7px!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend label{grid-area:field!important;width:100%!important;min-width:0!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend textarea{width:100%!important;min-width:0!important;height:58px!important;min-height:58px!important;max-height:58px!important;display:block!important;line-height:1.22!important;font-weight:400!important;margin:0!important;box-sizing:border-box!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions{display:contents!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button[type="submit"]{grid-area:send!important;align-self:stretch!important;justify-self:stretch!important;width:100%!important;min-width:96px!important;height:58px!important;min-height:58px!important;max-height:58px!important;margin:0!important;border-radius:14px!important;font-size:15px!important;display:flex!important;align-items:center!important;justify-content:center!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button:not([type="submit"]){grid-area:media!important;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;margin-right:5px!important}
@media(max-width:680px){#modalBody[data-wizard="noteDetail"] .compactNoteAppend{grid-template-columns:minmax(0,1fr) 112px!important;gap:6px!important}#modalBody[data-wizard="noteDetail"] .compactNoteAppend textarea{height:58px!important;min-height:58px!important;max-height:58px!important}#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button[type="submit"]{min-width:112px!important;height:58px!important;min-height:58px!important;max-height:58px!important}}

/* Short trip custom yes/no dialog */
.shortTripOverlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.42);backdrop-filter:blur(2px)}
.shortTripDialog{width:min(420px,calc(100vw - 36px));border-radius:22px;background:#fff;color:#172033;box-shadow:0 24px 80px rgba(15,23,42,.28);padding:18px;border:1px solid #dbe4f0;display:grid;gap:12px}
.shortTripDialog h3{margin:0;font-size:20px;line-height:1.1;color:#123c69;font-weight:950}.shortTripDialog p{margin:0;font-size:16px;line-height:1.35;color:#172033;font-weight:750}
.shortTripActions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:4px}.shortTripActions button{min-height:48px;border-radius:16px;border:1px solid #cbd5e1;background:#f8fafc;color:#123c69;font-size:16px;font-weight:950}.shortTripActions [data-short-trip="yes"]{background:#0d7c66;border-color:#0d7c66;color:#fff}.shortTripActions [data-short-trip="no"]{background:#fff1f2;border-color:#fecdd3;color:#9f1239}
@media(max-width:680px){.shortTripDialog{padding:16px;border-radius:20px}.shortTripActions button{min-height:50px;font-size:17px}}

/* Global iOS no-zoom form-field guard */
html{-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
input,select,textarea,button{touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(13,124,102,.18)!important}
input,select,textarea,
.sheet input,.sheet select,.sheet textarea,
.modal input,.modal select,.modal textarea,
#modalBody input,#modalBody select,#modalBody textarea,
#modalBody form.microEstimate input,#modalBody form.microEstimate select,#modalBody form.microEstimate textarea,
#modalBody[data-wizard="noteDetail"] .compactNoteAppend textarea,
.account input,.globalSearch input{font-size:16px!important;line-height:20px!important;transform:none!important;zoom:1!important;max-width:100%!important}
input:focus,select:focus,textarea:focus,
.sheet input:focus,.sheet select:focus,.sheet textarea:focus,
.modal input:focus,.modal select:focus,.modal textarea:focus,
#modalBody input:focus,#modalBody select:focus,#modalBody textarea:focus{font-size:16px!important;line-height:20px!important;transform:none!important;zoom:1!important;outline:2px solid rgba(14,165,233,.42)!important;outline-offset:1px!important}
@media(max-width:680px){input,select,textarea,.sheet input,.sheet select,.sheet textarea,.modal input,.modal select,.modal textarea,#modalBody input,#modalBody select,#modalBody textarea{font-size:16px!important;line-height:20px!important}}

/* Page overflow guard only — do not override top header/nav layout. */
html,body{max-width:100%!important;overflow-x:hidden!important}
.heroTopLine,.projectHero,.hero.compact,.noteDocHead{max-width:100%!important;min-width:0!important;overflow:hidden!important}
.noteDocHead{grid-template-columns:minmax(0,1fr) auto!important}.noteDocHead h2{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.notePrivacy{max-width:96px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;justify-self:end!important}
@media(max-width:680px){.notePrivacy{max-width:84px!important}}

/* Long project title mobile clamp */
.hero.compact.projectHero{overflow:hidden!important;padding-right:8px!important}
.hero.compact.projectHero .heroTopLine{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:6px!important;overflow:hidden!important;max-width:100%!important}
.hero.compact.projectHero .projectTitleBtn{display:flex!important;align-items:center!important;gap:4px!important;min-width:0!important;max-width:100%!important;width:100%!important;overflow:hidden!important}
.hero.compact.projectHero .projectTitleBtn h1{display:block!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:clamp(15px,4.2vw,22px)!important;line-height:1.05!important}
.hero.compact.projectHero .projectTitleBtn:after{flex:0 0 auto!important;margin-left:2px!important}
.hero.compact.projectHero .quickNoteBtn{grid-column:2!important;justify-self:end!important;min-width:0!important;flex:0 0 auto!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;z-index:1!important}
@media(max-width:680px){.hero.compact.projectHero .heroTopLine{grid-template-columns:minmax(0,1fr) 38px!important;gap:5px!important}.hero.compact.projectHero .projectTitleBtn h1{font-size:clamp(14px,4.1vw,18px)!important;letter-spacing:-.02em!important}.hero.compact.projectHero .quickNoteBtn{width:38px!important;min-width:38px!important;max-width:38px!important;height:34px!important;min-height:34px!important;padding:0!important;border-radius:999px!important;font-size:0!important;display:grid!important;place-items:center!important}.hero.compact.projectHero .quickNoteBtn::before{content:'🗒';font-size:17px!important;line-height:1!important}.hero.compact.projectHero .quickNoteBtn *{display:none!important}}

/* Note composer inline attachment thumbnails */
#modalBody[data-wizard="noteDetail"] .noteAttachments,#modalBody[data-wizard="noteDetail"] .compactNoteAttachments{display:none!important}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend{grid-template-areas:"media media" "field send" "tools tools"!important;align-items:end!important;overflow:hidden!important}
#modalBody[data-wizard="noteDetail"] .noteComposerMedia{grid-area:media!important;display:grid!important;gap:5px!important;width:100%!important;min-width:0!important;margin:0 0 2px!important;padding:6px!important;border:1px solid #dbe4f0!important;border-radius:12px!important;background:linear-gradient(180deg,#f8fafc,#fff)!important;overflow:hidden!important}
#modalBody[data-wizard="noteDetail"] .noteComposerMediaHead{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;color:#123c69!important;font-size:12px!important;line-height:1!important;font-weight:900!important}
#modalBody[data-wizard="noteDetail"] .noteComposerMediaHead span{color:#64748b!important;font-size:11px!important;background:#eef5fb!important;border-radius:999px!important;padding:2px 7px!important}
#modalBody[data-wizard="noteDetail"] .noteComposerThumbs{display:flex!important;gap:7px!important;overflow-x:auto!important;overflow-y:hidden!important;max-width:100%!important;padding-bottom:2px!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:thin!important}
#modalBody[data-wizard="noteDetail"] .noteComposerThumb{flex:0 0 72px!important;width:72px!important;min-width:72px!important;text-decoration:none!important;color:#123c69!important;display:grid!important;gap:3px!important;align-content:start!important;border:1px solid #dbe4f0!important;border-radius:11px!important;background:#fff!important;padding:4px!important;overflow:hidden!important}
#modalBody[data-wizard="noteDetail"] .noteComposerThumb img{display:block!important;width:100%!important;height:54px!important;object-fit:cover!important;border-radius:8px!important;background:#e5e7eb!important;border:1px solid #e2e8f0!important}
#modalBody[data-wizard="noteDetail"] .noteComposerThumb i{display:grid!important;place-items:center!important;width:100%!important;height:54px!important;border-radius:8px!important;background:#eef5fb!important;font-style:normal!important;font-size:24px!important}
#modalBody[data-wizard="noteDetail"] .noteComposerThumb span{display:block!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:10px!important;line-height:1.05!important;font-weight:850!important}
@media(max-width:680px){#modalBody[data-wizard="noteDetail"] .compactNoteAppend{grid-template-columns:minmax(0,1fr) 112px!important;grid-template-areas:"media media" "field send" "tools tools"!important}#modalBody[data-wizard="noteDetail"] .noteComposerThumb{flex-basis:66px!important;width:66px!important;min-width:66px!important}#modalBody[data-wizard="noteDetail"] .noteComposerThumb img,#modalBody[data-wizard="noteDetail"] .noteComposerThumb i{height:48px!important}}

/* Logo company/name adaptive sizing */
.brandWelcome{font-size:12px!important;line-height:13px!important;max-width:214px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:center!important}
.brandWelcome.welcomeShort{font-size:13px!important;line-height:14px!important;font-weight:750!important;color:#123c69!important}
.brandWelcome.welcomeMedium{font-size:11px!important;line-height:12px!important;font-weight:720!important;color:#334155!important;letter-spacing:-.01em!important}
.brandWelcome.welcomeLong{font-size:9.5px!important;line-height:10.5px!important;font-weight:700!important;color:#475569!important;letter-spacing:-.025em!important}
.brandWelcome.isEmpty{visibility:hidden!important}
@media(max-width:680px){.brandWelcome{max-width:108px!important}.brandWelcome.welcomeShort{font-size:12px!important;line-height:13px!important}.brandWelcome.welcomeMedium{font-size:10px!important;line-height:11px!important}.brandWelcome.welcomeLong{font-size:8.5px!important;line-height:9.5px!important}}

/* Sticky active project controls above Needs attention */
header{position:sticky!important;top:0!important;z-index:40!important}
.hero.compact.projectHero{position:sticky!important;top:66px!important;z-index:35!important;margin-bottom:8px!important}
.quickTripBar{position:sticky!important;top:128px!important;z-index:34!important;margin-top:6px!important;margin-bottom:8px!important}
.needsCollapsed{position:relative!important;z-index:1!important}
@media(max-width:680px){.hero.compact.projectHero{top:58px!important}.quickTripBar{top:118px!important}}

/* Global tile modal 2x2 context buttons */
#modalBody[data-wizard="projectAsk"] .fourContextChoices,
.projectChoiceCards.compactChoiceCards.fourContextChoices{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;gap:7px!important}
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile,
.projectChoiceCards.compactChoiceCards.fourContextChoices .choiceTile{grid-column:auto!important;width:100%!important;min-width:0!important;min-height:64px!important;height:64px!important;padding:8px!important;border-radius:14px!important;display:grid!important;align-content:center!important;gap:3px!important;overflow:hidden!important;text-align:left!important}
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choice-global{order:1!important}
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choice-selected{order:2!important}
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choice-existing{order:3!important}
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choice-new{order:4!important}
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile b{font-size:11.5px!important;line-height:1.08!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile span{font-size:9.5px!important;line-height:1.1!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
@media(max-width:680px){#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile{height:60px!important;min-height:60px!important;padding:7px!important}#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile b{font-size:10.5px!important}#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile span{font-size:9px!important}}

/* Equal-size 2x2 context buttons */
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile,
#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceWide,
.projectChoiceCards.compactChoiceCards.fourContextChoices .choiceTile,
.projectChoiceCards.compactChoiceCards.fourContextChoices .choiceWide{grid-column:auto!important;width:100%!important;min-width:0!important;max-width:none!important;height:68px!important;min-height:68px!important;max-height:68px!important;padding:8px!important;box-sizing:border-box!important}
@media(max-width:680px){#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceTile,#modalBody[data-wizard="projectAsk"] .fourContextChoices .choiceWide,.projectChoiceCards.compactChoiceCards.fourContextChoices .choiceTile,.projectChoiceCards.compactChoiceCards.fourContextChoices .choiceWide{height:62px!important;min-height:62px!important;max-height:62px!important}}

/* Master note softer document typography */
#modalBody[data-wizard="noteDetail"] .noteCanvas,
.noteDoc .noteCanvas{background:#fff!important;border-color:#e8eef5!important;border-radius:14px!important;padding:6px 10px!important}
#modalBody[data-wizard="noteDetail"] .noteBlock,
.noteDoc .noteBlock{background:transparent!important;border:0!important;border-left:0!important;border-bottom:1px solid #edf2f7!important;border-radius:0!important;margin:0!important;padding:7px 0 8px!important;box-shadow:none!important}
#modalBody[data-wizard="noteDetail"] .noteBlock:last-child,
.noteDoc .noteBlock:last-child{border-bottom:0!important}
#modalBody[data-wizard="noteDetail"] .noteBlock small,
.noteDoc .noteBlock small{display:block!important;margin:0 0 3px!important;color:#64748b!important;font-size:8.5px!important;line-height:10px!important;font-weight:600!important;letter-spacing:.06em!important;text-transform:uppercase!important}
#modalBody[data-wizard="noteDetail"] .noteBlock p,
.noteDoc .noteBlock p{margin:0!important;color:#172033!important;font-size:16px!important;line-height:1.32!important;font-weight:400!important;letter-spacing:0!important}
#modalBody[data-wizard="noteDetail"] .noteDocHead h2,
.noteDoc .noteDocHead h2{font-weight:650!important}
#modalBody[data-wizard="noteDetail"] .noteComposerMediaHead b,
.noteDoc .noteComposerMediaHead b{font-weight:650!important}

/* Final sticky stack above Needs attention */
header{position:sticky!important;top:0!important;z-index:30!important}
main.app{overflow:visible!important}
main.app>.hero.compact{position:sticky!important;top:78px!important;z-index:29!important;margin-top:6px!important;margin-bottom:6px!important;scroll-margin-top:84px!important}
main.app>.quickTripBar.tripCommandRow{position:sticky!important;top:140px!important;z-index:28!important;margin-top:5px!important;margin-bottom:8px!important;scroll-margin-top:146px!important}
main.app>.needsCollapsed{position:relative!important;z-index:1!important}
@media(max-width:680px){
  header{top:0!important;z-index:30!important}
  main.app>.hero.compact{top:86px!important;z-index:29!important;margin-top:7px!important;scroll-margin-top:92px!important}
  main.app>.quickTripBar.tripCommandRow{top:150px!important;z-index:28!important;scroll-margin-top:156px!important}
}

/* Final page scroll context for sticky controls */
html{overflow-x:hidden!important;overflow-y:auto!important}
body{overflow-x:clip!important;overflow-y:visible!important}
body.modal-open{overflow:hidden!important}

/* Final modal top layer over sticky controls */
.modal,.modal.open{position:fixed!important;inset:0!important;z-index:10000!important}
.modal .sheet,#modalBody,#closeModal{pointer-events:auto!important}
body.modal-open header,body.modal-open main.app{pointer-events:none!important}
body.modal-open .modal,body.modal-open .modal *{pointer-events:auto!important}
.shortTripOverlay{z-index:11000!important}

/* Easy task completion toggle */
.taskCompleteToggle{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;margin:6px 0 8px!important;padding:10px!important;border:1.5px solid #bfdbfe!important;border-left:6px solid #2563eb!important;border-radius:16px!important;background:#eff6ff!important;color:#172033!important;cursor:pointer!important;touch-action:manipulation!important}
.taskCompleteToggle input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.taskCompleteBox{width:34px!important;height:34px!important;border-radius:10px!important;border:2px solid #2563eb!important;background:#fff!important;color:transparent!important;display:grid!important;place-items:center!important;font-size:22px!important;font-weight:950!important;line-height:1!important}
.taskCompleteToggle b{display:block!important;font-size:16px!important;line-height:1.05!important;color:#123c69!important;font-weight:850!important}
.taskCompleteToggle small{display:block!important;margin-top:2px!important;font-size:11px!important;line-height:1.15!important;color:#53657a!important;font-weight:650!important}
.taskCompleteToggle.isDone{background:#ecfdf5!important;border-color:#86efac!important;border-left-color:#0d7c66!important}
.taskCompleteToggle.isDone .taskCompleteBox{background:#0d7c66!important;border-color:#0d7c66!important;color:#fff!important}
.taskCompleteToggle.isDone b{color:#0d7c66!important}
@media(max-width:680px){.taskCompleteToggle{grid-template-columns:38px minmax(0,1fr)!important;gap:9px!important;margin:5px 0 7px!important;padding:9px!important;border-radius:15px!important}.taskCompleteBox{width:38px!important;height:38px!important;border-radius:12px!important}.taskCompleteToggle b{font-size:16px!important}.taskCompleteToggle small{font-size:10.5px!important}}

/* Quick expense simple-first form */
.quickExpenseForm{gap:9px!important}
.quickExpense{display:grid!important;gap:7px!important;margin:0!important;padding:9px!important;border:1px solid #dbe4f0!important;border-left:6px solid #0d7c66!important;border-radius:16px!important;background:#f8fffc!important}
.quickExpense small{display:block!important;color:#0d7c66!important;font-size:11px!important;line-height:1.15!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.expenseTypeChips,.expenseValueChips{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
.expenseTypeChips button,.expenseValueChips button{min-height:38px!important;height:38px!important;padding:0 8px!important;border-radius:12px!important;border:1px solid #cbd5e1!important;background:#fff!important;color:#123c69!important;font-size:12px!important;font-weight:800!important;box-shadow:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.expenseValueChips{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.expenseValueChips button{font-size:13px!important;color:#0d7c66!important}
.expenseTypeChips button.on,.expenseValueChips button.on{background:#0d7c66!important;color:#fff!important;border-color:#0d7c66!important}
.quickExpenseForm .expenseLater textarea{min-height:58px!important}
@media(max-width:680px){.quickExpenseForm{gap:8px!important}.quickExpense{padding:8px!important;border-radius:15px!important}.expenseTypeChips{grid-template-columns:repeat(2,minmax(0,1fr))!important}.expenseValueChips{grid-template-columns:repeat(5,minmax(0,1fr))!important}.expenseTypeChips button,.expenseValueChips button{height:36px!important;min-height:36px!important;font-size:11.5px!important;padding:0 5px!important}.expenseValueChips button{font-size:12px!important}.quickExpenseForm label{gap:5px!important}.quickExpenseForm input{min-height:44px!important}.quickExpenseForm .expenseLater textarea{min-height:52px!important}}

/* Global simple-first create forms */
.simpleFirstHint{margin:0!important;padding:7px 9px!important;border-radius:12px!important;background:#eef6ff!important;color:#123c69!important;font-size:11px!important;line-height:1.18!important;font-weight:750!important}
.simpleLater{border:1px solid #dbe4f0!important;border-radius:14px!important;background:#f8fafc!important;padding:0!important;margin:0!important;overflow:hidden!important}
.simpleLater summary{min-height:42px!important;display:flex!important;align-items:center!important;padding:0 12px!important;cursor:pointer!important;color:#123c69!important;font-size:13px!important;font-weight:850!important;list-style:none!important}
.simpleLater summary::-webkit-details-marker{display:none!important}
.simpleLater summary:after{content:'+';margin-left:auto;font-size:18px;color:#0d7c66;font-weight:950}.simpleLater[open] summary:after{content:'−'}
.simpleLaterBody{display:grid!important;gap:8px!important;padding:0 9px 9px!important}
.simpleLaterBody label{font-size:12px!important;gap:5px!important;margin:0!important}.simpleLaterBody input,.simpleLaterBody select,.simpleLaterBody textarea{min-height:42px!important;border-radius:13px!important;font-size:16px!important;padding:8px 10px!important}.simpleLaterBody textarea{min-height:58px!important}
@media(max-width:680px){.simpleFirstHint{font-size:10.5px!important;padding:6px 8px!important}.simpleLater summary{min-height:38px!important;font-size:12px!important}.simpleLaterBody{gap:6px!important;padding:0 8px 8px!important}}

/* Modal close buttons always stay in the actual upper-right corner, not inside content rows. */
.sheet>.x,.modalCard>.modalClose{position:absolute!important;top:10px!important;right:10px!important;float:none!important;margin:0!important;width:36px!important;height:36px!important;display:grid!important;place-items:center!important;border-radius:999px!important;background:#eef5fb!important;color:#123c69!important;box-shadow:none!important;z-index:9!important;line-height:1!important}
.sheet #modalBody>h2:first-child,.sheet #modalBody>.modalTitle{padding-right:46px!important;margin-top:0!important;min-height:36px!important;display:flex!important;align-items:center!important}

/* High-contrast project ID pill without size change */
.hero.compact.projectHero .idRef,
.projectHero .heroTitle .idRef,
.projectQuickPicker .projectRefBadge,
.condensedList.choiceItemList .choiceRefTitle .idRef{color:#ffffff!important;background:#064e3b!important;border-color:rgba(255,255,255,.72)!important;text-shadow:0 1px 1px rgba(0,0,0,.38)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 1px 2px rgba(0,0,0,.16)!important}

/* Final master-note readable composer and project picker scroll guard */
#modalBody[data-wizard="noteDetail"] .compactNoteAppend{
  align-items:stretch!important;
}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend label{
  font-weight:600!important;
}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend textarea{
  height:104px!important;
  min-height:104px!important;
  max-height:180px!important;
  font-size:16px!important;
  line-height:22px!important;
  font-weight:400!important;
  padding:10px 12px!important;
  resize:vertical!important;
}
#modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button[type="submit"]{
  min-height:104px!important;
  height:104px!important;
  font-weight:700!important;
}
#modalBody[data-wizard="noteDetail"] .noteBlock p,
#modalBody[data-wizard="noteDetail"] .noteBody,
#modalBody[data-wizard="noteDetail"] .noteCanvas p{
  font-weight:400!important;
}
#modalBody[data-wizard="projectQuickPicker"]{
  min-height:0!important;
  overflow:hidden!important;
}
#modalBody[data-wizard="projectQuickPicker"] .projectQuickPicker{
  min-height:0!important;
  overflow:hidden!important;
}
#modalBody[data-wizard="projectQuickPicker"] .choiceItemList{
  flex:1 1 auto!important;
  min-height:96px!important;
  max-height:calc(100dvh - 210px)!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
}
@media(max-width:680px){
  #modalBody[data-wizard="noteDetail"] .compactNoteAppend{grid-template-columns:minmax(0,1fr) 104px!important;gap:7px!important}
  #modalBody[data-wizard="noteDetail"] .compactNoteAppend textarea{height:112px!important;min-height:112px!important;max-height:190px!important}
  #modalBody[data-wizard="noteDetail"] .compactNoteAppend .noteQuickActions button[type="submit"]{height:112px!important;min-height:112px!important;min-width:104px!important;font-size:15px!important}
  #modalBody[data-wizard="projectQuickPicker"] .choiceItemList{max-height:calc(100dvh - 190px)!important}
}



/* Final scoped tile-count placement: fixed high-contrast corner badges, not inline beside labels. */
.tileWorkspace .panelHead{position:relative!important;padding-right:38px!important;overflow:hidden!important}
.tileWorkspace .panelHead h2{padding-right:0!important;max-width:calc(100% - 28px)!important}
.tileWorkspace .panelHead h2 .tileMiniCount,.tileWorkspace .tileMiniCount{position:absolute!important;top:7px!important;right:7px!important;margin:0!important;min-width:22px!important;height:22px!important;padding:0 6px!important;border-radius:999px!important;background:#062a4f!important;color:#fff!important;border:2px solid #fff!important;font:950 10.5px/18px ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:-.02em!important;box-shadow:0 3px 8px rgba(2,8,23,.32)!important;z-index:2!important;transform:none!important}
@media(max-width:680px){.tileWorkspace .panelHead{padding-right:35px!important}.tileWorkspace .panelHead h2{max-width:calc(100% - 24px)!important}.tileWorkspace .panelHead h2 .tileMiniCount,.tileWorkspace .tileMiniCount{top:6px!important;right:6px!important;min-width:21px!important;height:21px!important;font-size:10px!important;line-height:17px!important;padding:0 5px!important}}


/* Keep count pill anchored to card corner, never to the text width. */
.tileWorkspace .panelHead h2{position:static!important}
.tileWorkspace .panelHead .tileMiniCount{position:absolute!important;top:7px!important;right:7px!important}
@media(max-width:680px){.tileWorkspace .panelHead .tileMiniCount{top:6px!important;right:6px!important}}


/* Header scope title must leave room for the Notes action and ellipsize hostile long project names. */
.heroTopLine{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important}
.projectTitleBtn{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-align:left!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important}
.projectTitleBtn h1{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:clamp(15px,4.3vw,22px)!important;line-height:1.05!important}
.hero.compact .heroTitle{min-width:0!important;max-width:100%!important;display:flex!important;flex-wrap:nowrap!important;overflow:hidden!important}
.hero.compact .heroTitle .entityTitle{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:clamp(15px,4.3vw,22px)!important}
.hero.compact .globalHeroTitle .entityTitle{font-size:clamp(14px,4.1vw,21px)!important}
@media(max-width:680px){.quickNoteBtn{max-width:86px!important;overflow:hidden!important;text-overflow:ellipsis!important}.projectTitleBtn h1,.hero.compact .heroTitle .entityTitle{font-size:clamp(14px,4vw,20px)!important}}


/* Final mobile project header: Notes is icon-only, title owns remaining space and shrinks for hostile names. */
.hero.compact .heroTopLine{display:grid!important;grid-template-columns:minmax(0,1fr) 40px!important;align-items:center!important;gap:6px!important;overflow:hidden!important;max-width:100%!important}
.hero.compact .projectTitleBtn{min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;display:flex!important;align-items:center!important;gap:4px!important}
.hero.compact .projectTitleBtn h1{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;line-height:1.05!important;letter-spacing:-.015em!important}
.hero.compact .heroTitle,.hero.compact .heroTitle .entityTitle{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.hero.compact.titleFitSmall .projectTitleBtn h1,.hero.compact.titleFitSmall .heroTitle .entityTitle{font-size:clamp(13px,3.65vw,18px)!important;letter-spacing:-.035em!important}
.hero.compact.titleFitTiny .projectTitleBtn h1,.hero.compact.titleFitTiny .heroTitle .entityTitle{font-size:clamp(12px,3.25vw,16px)!important;letter-spacing:-.045em!important}
.hero.compact .quickNoteBtn{grid-column:2!important;justify-self:end!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:36px!important;min-height:36px!important;padding:0!important;border-radius:999px!important;font-size:0!important;line-height:0!important;display:grid!important;place-items:center!important;overflow:hidden!important;text-indent:-999px!important;white-space:nowrap!important}
.hero.compact .quickNoteBtn::before{content:'🗒';font-size:18px!important;line-height:1!important;text-indent:0!important}
@media(max-width:680px){.hero.compact .heroTopLine{grid-template-columns:minmax(0,1fr) 38px!important;gap:5px!important}.hero.compact .quickNoteBtn{width:38px!important;min-width:38px!important;max-width:38px!important;height:34px!important;min-height:34px!important}.hero.compact .quickNoteBtn::before{font-size:17px!important}.hero.compact .projectTitleBtn h1,.hero.compact .heroTitle .entityTitle{font-size:clamp(13.5px,3.9vw,18px)!important}.hero.compact.titleFitSmall .projectTitleBtn h1,.hero.compact.titleFitSmall .heroTitle .entityTitle{font-size:clamp(12.5px,3.45vw,16px)!important}.hero.compact.titleFitTiny .projectTitleBtn h1,.hero.compact.titleFitTiny .heroTitle .entityTitle{font-size:clamp(11.5px,3.1vw,14.5px)!important}}


/* Final counter correction: outside title flow, tight top-right, white thin circle, black regular text. */
.tileWorkspace .panelHead{position:relative!important;padding-right:30px!important;overflow:hidden!important}
.tileWorkspace .panelHead h2{position:static!important;min-width:0!important;max-width:calc(100% - 22px)!important;padding-right:0!important;overflow:hidden!important}
.tileWorkspace .panelHead h2 span:not(.panelIcon){min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;padding-right:0!important}
.tileWorkspace .panelHead>.tileMiniCount,.tileWorkspace .tileMiniCount{position:absolute!important;top:3px!important;right:3px!important;margin:0!important;width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important;padding:0!important;border-radius:999px!important;background:#fff!important;color:#111827!important;border:1px solid rgba(17,24,39,.55)!important;box-shadow:none!important;font:500 9px/16px ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:-.04em!important;text-align:center!important;z-index:3!important;transform:none!important}
@media(max-width:680px){.tileWorkspace .panelHead{padding-right:28px!important}.tileWorkspace .panelHead h2{max-width:calc(100% - 20px)!important}.tileWorkspace .panelHead>.tileMiniCount,.tileWorkspace .tileMiniCount{top:2px!important;right:2px!important;width:17px!important;min-width:17px!important;max-width:17px!important;height:17px!important;min-height:17px!important;max-height:17px!important;font-size:8.5px!important;line-height:15px!important}}


/* User-corrected counter placement: badge sits on the outside corner, not inside the name area. */
.tileWorkspace .panel{overflow:visible!important}
.tileWorkspace .panelHead{overflow:visible!important;padding-right:10px!important}
.tileWorkspace .panelHead h2{max-width:100%!important;padding-right:0!important;overflow:hidden!important}
.tileWorkspace .panelHead>.tileMiniCount,.tileWorkspace .tileMiniCount{top:-6px!important;right:-6px!important;width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important;background:#fff!important;color:#111!important;border:1px solid rgba(17,24,39,.72)!important;box-shadow:none!important;font:400 9px/16px ui-monospace,SFMono-Regular,Menlo,monospace!important}
@media(max-width:680px){.tileWorkspace .panelHead{padding-right:8px!important}.tileWorkspace .panelHead>.tileMiniCount,.tileWorkspace .tileMiniCount{top:-5px!important;right:-5px!important;width:17px!important;min-width:17px!important;max-width:17px!important;height:17px!important;min-height:17px!important;max-height:17px!important;font-size:8.5px!important;line-height:15px!important}}

/* Final tile geometry QA: counters sit evenly inside the top-right card corner, never clipped; labels align to icon bottom. */
.tileWorkspace{gap:7px!important}
.globalScope .hero.compact{position:sticky!important;top:66px!important;z-index:35!important;background:linear-gradient(135deg,#334155,#0f766e)!important;border:2px solid #99f6e4!important;box-shadow:0 0 0 3px rgba(20,184,166,.16),0 14px 30px rgba(15,118,110,.18)!important}.globalScope .hero.compact .eyebrow:after{content:' · GLOBAL ENABLED';font-weight:950;color:#ccfbf1}.globalScope .heroTitle .idRef,.globalProjectRow .projectRefBadge{background:#334155!important;color:#fff!important;border-color:#99f6e4!important}.tileWorkspace .panelHead h2 span:not(.panelIcon){white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.08!important;word-break:normal!important;overflow-wrap:break-word!important}
.tileWorkspace .panel{overflow:visible!important}
.tileWorkspace .panelHead{min-height:48px!important;padding:7px 28px 7px 10px!important;overflow:visible!important;display:grid!important;align-items:center!important}
.tileWorkspace .panelHead h2{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:end!important;gap:9px!important;max-width:100%!important;min-width:0!important;margin:0!important;line-height:1.05!important;overflow:visible!important}
.tileWorkspace .panelIcon{width:34px!important;height:34px!important;min-width:34px!important;align-self:center!important}
.tileWorkspace .panelHead h2 span:not(.panelIcon){align-self:end!important;line-height:1.05!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;padding-bottom:2px!important}
.tileWorkspace .panelHead>.tileMiniCount,.tileWorkspace .tileMiniCount{top:4px!important;right:8px!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;background:transparent!important;color:#111!important;border:0!important;border-radius:0!important;box-shadow:none!important;font:400 10.4px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:-.04em!important;text-align:right!important;z-index:3!important}
@media(max-width:680px){.tileWorkspace{gap:7px!important}.tileWorkspace .panelHead{min-height:46px!important;padding:6px 29px 6px 10px!important}.tileWorkspace .panelHead h2{grid-template-columns:32px minmax(0,1fr)!important;gap:8px!important;font-size:13px!important}.tileWorkspace .panelIcon{width:32px!important;height:32px!important;min-width:32px!important}.tileWorkspace .panelHead h2 span:not(.panelIcon){padding-bottom:1px!important}.tileWorkspace .panelHead>.tileMiniCount,.tileWorkspace .tileMiniCount{top:4px!important;right:7px!important;font-size:9.8px!important;line-height:1!important}}
.tileWorkspace .panelHead h2 span:not(.panelIcon){white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.08!important;word-break:normal!important;overflow-wrap:break-word!important}
/* Fit-first tile labels: shrink long labels before clipping, keep words intact, align icon/text vertically. */
.tileWorkspace .panelHead h2{align-items:center!important;grid-template-columns:42px minmax(0,1fr)!important;min-width:0!important}.tileWorkspace .panelIcon{justify-self:center!important;align-self:center!important}.tileWorkspace .panelLabel{align-self:center!important;max-width:100%!important;min-width:0!important;line-height:1.06!important;letter-spacing:-.025em!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;text-wrap:balance!important}.tileWorkspace .panelLabel.tileLabelOneWord{white-space:nowrap!important;display:block!important;overflow:hidden!important;text-overflow:clip!important}.tileWorkspace .panelLabel.tileLabelWords{white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.tileWorkspace .panelLabel.tileLabelMd{font-size:clamp(11.8px,3.15vw,13.2px)!important}.tileWorkspace .panelLabel.tileLabelSm{font-size:clamp(11px,2.85vw,12.2px)!important}.tileWorkspace .panelLabel.tileLabelXs{font-size:clamp(10.2px,2.55vw,11.4px)!important}
/* Specificity guard: one-word module names shrink instead of splitting into broken fragments. */
.tileWorkspace .panelHead h2 .panelLabel.tileLabelOneWord{white-space:nowrap!important;display:block!important;overflow:visible!important;text-overflow:clip!important;word-break:normal!important;overflow-wrap:normal!important;line-height:1.02!important}.tileWorkspace .panelHead h2 .panelLabel.tileLabelWords{white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;word-break:normal!important;overflow-wrap:normal!important;line-height:1.05!important}
/* Project picker rows select directly; no oversized in-row select CTA. */
.projectQuickPicker .choiceItem.projectPickerRow{grid-template-columns:78px minmax(0,1fr)!important;grid-template-areas:"ref text"!important;min-height:58px!important;padding:7px 8px!important;row-gap:0!important}.projectQuickPicker .selectProjectInline{display:none!important}@media(max-width:680px){.projectQuickPicker .choiceItem.projectPickerRow{grid-template-columns:76px minmax(0,1fr)!important;min-height:56px!important;padding:7px 8px!important;row-gap:0!important}}
/* Condensed searchable lists: search opens in the header row, not as a separate vertical band. */
.searchableScopeList{position:relative!important}.searchableScopeList .listChoiceHead,.projectQuickPicker .projectChoiceHead{min-height:38px!important;padding:4px 44px 4px 6px!important;margin-bottom:4px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:6px!important}.searchableScopeList .listSearchToggle{position:absolute!important;top:4px!important;right:6px!important;width:34px!important;height:32px!important;min-height:32px!important}.searchableScopeList .listSearchRow:not([hidden]){display:block!important;position:absolute!important;z-index:5!important;top:4px!important;left:6px!important;right:46px!important;margin:0!important;padding:0!important}.searchableScopeList .listSearchRow input{height:32px!important;min-height:32px!important;padding:6px 10px!important;border-radius:10px!important;font-size:14px!important}.searchableScopeList .choiceItemList{gap:3px!important;padding-top:0!important}.searchableScopeList .choiceItem{min-height:42px!important;padding:5px 7px!important;border-radius:9px!important}.projectQuickPicker .choiceItem.projectPickerRow{min-height:50px!important;padding:6px 8px!important}.projectQuickPicker .projectMonthGroup{margin-top:2px!important}.projectQuickPicker .scopeGroupHead{min-height:26px!important;padding:3px 5px!important;margin:2px 0!important}
/* Global mode is distinct but not green; selected rows are neutral/slate, not green CTAs. */
.globalScope .hero.compact{background:linear-gradient(135deg,#1f2937,#334155)!important;border-color:#cbd5e1!important;box-shadow:0 0 0 3px rgba(100,116,139,.14),0 12px 26px rgba(15,23,42,.14)!important}.globalScope .hero.compact .eyebrow:after{color:#e2e8f0!important}.globalScope .heroTitle .idRef,.globalProjectRow .projectRefBadge{background:#475569!important;color:#fff!important;border-color:#cbd5e1!important}.projectQuickPicker .choiceItem.projectPickerRow.on{background:#f1f5f9!important;border-left-color:#475569!important;box-shadow:inset 0 0 0 1px #cbd5e1!important}.projectQuickPicker .choiceItem.projectPickerRow.on .projectRefBadge{background:#475569!important;color:#fff!important;border-color:#cbd5e1!important}
/* Per-project color identity: picker rows get deterministic subtle shades; selected project carries that color into header/background. */
.projectQuickPicker .choiceItem.projectPickerRow:not(.globalProjectRow){background:var(--project-row-bg,#fff)!important;border-left-color:var(--project-row-border,#123c69)!important}.projectQuickPicker .choiceItem.projectPickerRow:not(.globalProjectRow) .projectRefBadge{background:color-mix(in srgb,var(--project-row-badge,#123c69) 12%,#fff)!important;color:var(--project-row-badge,#123c69)!important;border-color:color-mix(in srgb,var(--project-row-badge,#123c69) 30%,#fff)!important}.projectQuickPicker .choiceItem.projectPickerRow.on:not(.globalProjectRow){background:color-mix(in srgb,var(--project-row-bg,#fff) 72%,#eef2ff)!important;border-left-color:var(--project-row-badge,#475569)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--project-row-badge,#475569) 24%,#fff)!important}.projectScope{background:linear-gradient(180deg,var(--project-soft,#fff) 0,#fff 260px)!important;border-radius:22px!important;padding-top:8px!important}.projectScope .hero.compact{background:linear-gradient(135deg,var(--project-dark,#123c69),color-mix(in srgb,var(--project-dark,#123c69) 72%,#111827))!important;border-color:var(--project-line,#cbd5e1)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--project-line,#cbd5e1) 55%,transparent),0 14px 30px color-mix(in srgb,var(--project-dark,#123c69) 16%,transparent)!important}.projectScope .heroTitle .idRef{background:color-mix(in srgb,var(--project-dark,#123c69) 78%,#fff)!important;color:#fff!important;border-color:var(--project-line,#cbd5e1)!important}
@supports selector(body:has(.projectScope)){body:has(.projectScope){background:linear-gradient(180deg,var(--project-soft,#f8fafc) 0,#fff 340px,#f8fafc 100%)!important}}
/* Final no-overlap row guards: ref, title, metadata, and actions stay in their lanes. */
.choiceItem{min-width:0!important;overflow:hidden!important}.choiceItem .choiceRefTitle,.choiceItem .refTitle{display:flex!important;align-items:center!important;gap:6px!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}.choiceItem .idRef,.projectRefBadge{flex:0 0 auto!important;max-width:78px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.choiceItem .entityTitle,.projectPickText .itemTitle{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.choiceItem small,.projectPickText small{min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.choiceItem .rowActions{min-width:0!important;max-width:100%!important;display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:4px!important}.choiceItem .rowActions button{min-height:26px!important;padding:4px 7px!important;font-size:11.5px!important}.projectQuickPicker .projectPickerRow{align-items:center!important}.projectQuickPicker .projectPickText{align-self:center!important;justify-content:center!important;overflow:hidden!important}
/* In Global workspace there is no project-specific scope; hide disabled project tab and let Global fill the row. */
.groupedScopeList .listTabs .scopeTab[disabled],.chatThreadList .listTabs .scopeTab[disabled]{display:none!important}.groupedScopeList .listTabs:has(.scopeTab[disabled]),.chatThreadList .listTabs:has(.scopeTab[disabled]){grid-template-columns:1fr!important;display:grid!important}.groupedScopeList .listTabs:has(.scopeTab[disabled]) .scopeTab,.chatThreadList .listTabs:has(.scopeTab[disabled]) .scopeTab{width:100%!important;justify-content:center!important}
/* Project picker readability: references stay visible but not bold; names align to the right edge, not vertically/mid-card centered. */
.projectQuickPicker .projectRefBadge{font-weight:500!important;color:#0f172a!important;background:#f8fafc!important;border:1px solid #cbd5e1!important;text-shadow:none!important;box-shadow:none!important;letter-spacing:0!important}.projectQuickPicker .projectPickText{align-content:start!important;justify-items:end!important;text-align:right!important;align-self:start!important;padding-top:1px!important}.projectQuickPicker .projectPickText .itemTitle{font-weight:650!important;text-align:right!important}.projectQuickPicker .projectPickText small{text-align:right!important}.projectQuickPicker .choiceItem.projectPickerRow{align-items:start!important}
/* Final alignment pass: tile counts and month group counts sit in right lanes; green Add/submit and audio note controls align with inputs. */
.tileWorkspace .panelHead>.tileMiniCount,.tileWorkspace .tileMiniCount{top:5px!important;right:7px!important;min-width:18px!important;text-align:right!important;line-height:1!important;font-weight:450!important;font-variant-numeric:tabular-nums!important;z-index:3!important}.projectMonthHead,.scopeGroupHead{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;column-gap:10px!important}.projectMonthHead span,.scopeGroupHead span{justify-self:end!important;text-align:right!important;min-width:34px!important;white-space:nowrap!important;font-variant-numeric:tabular-nums!important}.sheet>.x,#closeModal.x{display:grid!important;position:absolute!important;top:8px!important;right:8px!important;z-index:999!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;place-items:center!important;border-radius:999px!important;background:#fff!important;color:#0f172a!important;border:1px solid rgba(15,23,42,.18)!important;box-shadow:0 8px 22px rgba(15,23,42,.22)!important;font:900 22px/1 system-ui,sans-serif!important}.sheet #modalBody{padding-top:2px!important}.sheet form[data-kind] button:not([type="button"]),.sheet form[data-wizard] button:not([type="button"]),.sheet form[data-checklist] button:not([type="button"]),.sheet form[data-media] button:not([type="button"]){display:inline-grid!important;place-items:center!important;align-self:stretch!important;min-height:42px!important;line-height:1!important;margin:0!important}.sheet form label input,.sheet form label textarea,.sheet form label select{box-sizing:border-box!important}.inlineNoteCreate{gap:6px!important;padding:8px 10px!important;margin:0 0 8px!important}.inlineNoteCreate h3{font-size:14px!important;margin:0!important;color:#123c69!important}.inlineNoteCreate>h2,.inlineNoteCreate form>h2{display:none!important}.inlineNoteCreate form{gap:8px!important}.inlineNoteCreate textarea{min-height:58px!important}.noteVoiceActions{display:grid!important;grid-template-columns:42px 42px minmax(0,1fr)!important;align-items:center!important;gap:7px!important}.voice-file-picker,.voice-record-button{height:40px!important;min-height:40px!important;border-radius:999px!important;display:inline-grid!important;place-items:center!important}.voice-preview{display:flex!important;align-items:center!important;gap:8px!important;margin:6px 0!important;padding:6px 8px!important;border:1px solid #dbe4f0!important;border-radius:14px!important;background:#f8fafc!important}.voice-preview audio{width:min(180px,45vw)!important;height:30px!important}.voice-preview button{min-height:28px!important;padding:4px 8px!important;border-radius:999px!important;font-size:11px!important}.voice-record-button.recording{background:#be123c!important;border-color:#be123c!important;color:#fff!important;box-shadow:0 0 0 4px rgba(190,18,60,.14)!important}

/* Driving log visibility override: field-use summary values must be readable at a glance. */
#modalBody[data-wizard="tripLog"] .historyTotals{min-height:42px!important;padding:7px 9px!important;gap:6px!important;justify-content:flex-end!important}
#modalBody[data-wizard="tripLog"] .historyTotals b,#modalBody[data-wizard="tripLog"] .dayTripCount{font-size:15px!important;padding:4px 10px!important;min-height:26px!important}
#modalBody[data-wizard="tripLog"] .historyTotals span,#modalBody[data-wizard="tripLog"] .tripDateGroupHeader span{font-size:15px!important;min-height:28px!important;padding:4px 8px!important;font-weight:1000!important;letter-spacing:-.02em!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader{min-height:38px!important;padding:6px 8px!important;gap:5px!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader b{font-size:14px!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow{min-height:50px!important;padding:7px 8px!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics b{font-size:16px!important;min-height:30px!important;padding:5px 8px!important;font-weight:1000!important;letter-spacing:-.03em!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowDate{font-size:12px!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .choiceRefTitle .entityTitle{font-size:14px!important;font-weight:900!important}
@media(max-width:680px){#modalBody[data-wizard="tripLog"] .historyTotals span,#modalBody[data-wizard="tripLog"] .tripDateGroupHeader span{font-size:14px!important;padding:4px 6px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics b{font-size:15.5px!important;padding:5px 7px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow{min-height:50px!important}.mileageHistory{height:74vh!important}}

/* Trip detail route must be a usable full map, not a tiny route-page preview. */
#modalBody[data-wizard="detailView"] .tripRouteTrace{padding:7px!important;gap:6px!important}
#modalBody[data-wizard="detailView"] .tripEmbeddedRoute{height:min(52vh,520px)!important;min-height:390px!important;max-height:560px!important}
@media(max-width:680px){#modalBody[data-wizard="detailView"] .tripEmbeddedRoute{height:52vh!important;min-height:420px!important}#modalBody[data-wizard="detailView"] .tripRouteTrace a{min-height:38px!important;font-size:14px!important}}

/* Driving log row alignment: values must line up in fixed columns. */
#modalBody[data-wizard="tripLog"] .tripHistoryRow{grid-template-columns:minmax(0,1fr) minmax(246px,262px)!important;column-gap:8px!important;align-items:center!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics{display:grid!important;grid-template-columns:78px 70px 100px!important;gap:4px!important;justify-content:end!important;align-items:center!important;width:248px!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics b{justify-content:center!important;text-align:center!important;font-variant-numeric:tabular-nums!important;white-space:nowrap!important;overflow:hidden!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowDate{width:248px!important;text-align:right!important;font-variant-numeric:tabular-nums!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader{grid-template-columns:minmax(0,1fr) 34px 78px 70px 100px!important}
#modalBody[data-wizard="tripLog"] .historyTotals{display:grid!important;grid-template-columns:minmax(0,1fr) 34px 78px 70px 100px!important;justify-items:stretch!important}
#modalBody[data-wizard="tripLog"] .historyTotals:before{content:'Total';justify-self:start;align-self:center;color:#123c69;font-size:13px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}
#modalBody[data-wizard="tripLog"] .historyTotals b,#modalBody[data-wizard="tripLog"] .historyTotals span,#modalBody[data-wizard="tripLog"] .tripDateGroupHeader span{justify-content:center!important;text-align:center!important;font-variant-numeric:tabular-nums!important}
@media(max-width:680px){#modalBody[data-wizard="tripLog"] .tripHistoryRow{grid-template-columns:minmax(0,1fr) minmax(214px,226px)!important;column-gap:5px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics{grid-template-columns:70px 58px 86px!important;width:214px!important;gap:2px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowDate{width:214px!important}#modalBody[data-wizard="tripLog"] .tripDateGroupHeader{grid-template-columns:minmax(0,1fr) 28px 70px 58px 86px!important}#modalBody[data-wizard="tripLog"] .historyTotals{grid-template-columns:minmax(0,1fr) 28px 70px 58px 86px!important}#modalBody[data-wizard="tripLog"] .historyTotals:before{font-size:11px!important}}

/* Route-first trip detail: full route must be visible before coordinate cards. */
#modalBody[data-wizard="detailView"] .tripRouteSection{gap:7px!important}
#modalBody[data-wizard="detailView"] .tripRouteSection .gpsPoints{order:2!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
#modalBody[data-wizard="detailView"] .tripRouteSection .tripRouteTrace{order:1!important}
@media(max-width:680px){#modalBody[data-wizard="detailView"] .tripRouteSection .gpsPoints{grid-template-columns:1fr 1fr!important;gap:4px!important}#modalBody[data-wizard="detailView"] .tripRouteSection .gpsPoint{padding:5px 6px!important;min-height:46px!important}#modalBody[data-wizard="detailView"] .tripRouteSection .gpsPoint b{font-size:11px!important}#modalBody[data-wizard="detailView"] .tripRouteSection .gpsPoint small{font-size:9px!important}#modalBody[data-wizard="detailView"] .tripRouteSection .tripEmbeddedRoute{height:50vh!important;min-height:390px!important}}

/* Screenshot QA: Driving history rows must not show generic Item, clipped dates, or hidden rows. */
#modalBody[data-wizard="tripLog"] .tripHistoryRow[hidden],
#modalBody[data-wizard="tripLog"] .tripHistoryRows .choiceItem[hidden],
#modalBody[data-wizard="tripLog"] .dynamicEmpty[hidden]{display:none!important}
#modalBody[data-wizard="tripLog"] .historyTotals{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;min-height:46px!important;border-radius:28px!important;overflow:hidden!important}
#modalBody[data-wizard="tripLog"] .historyTotals:before{content:'TOTAL';flex:0 0 auto!important;color:#123c69!important;font-size:13px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.04em!important}
#modalBody[data-wizard="tripLog"] .historyTotals .historyEmpty{display:block!important;width:auto!important;max-width:100%!important;padding:0!important;background:transparent!important;color:#123c69!important;font-size:15px!important;font-weight:900!important;line-height:1.15!important;white-space:normal!important;text-align:left!important}
#modalBody[data-wizard="tripLog"] .historyTotals b,
#modalBody[data-wizard="tripLog"] .historyTotals span:not(.historyEmpty){display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;min-width:0!important;flex:0 0 auto!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRows>.emptyTile.dynamicEmpty{display:block!important;margin:6px 0!important;padding:10px 12px!important;font-size:16px!important;color:#64748b!important;border:1px dashed #cbd5e1!important;border-radius:12px!important;background:#f8fafc!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;grid-template-areas:"title date" "metrics metrics"!important;align-items:start!important;gap:3px 8px!important;min-height:64px!important;padding:8px 10px!important;overflow:hidden!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .choiceRefTitle{grid-area:title!important;min-width:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;overflow:hidden!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .choiceRefTitle .entityTitle:empty{display:none!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .choiceRefTitle .entityTitle{font-size:12px!important;line-height:1.05!important;font-weight:650!important;color:#334155!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowDate{grid-area:date!important;width:auto!important;max-width:112px!important;justify-self:end!important;align-self:start!important;text-align:right!important;font-size:12px!important;line-height:1.05!important;font-weight:900!important;color:#64748b!important;white-space:nowrap!important;overflow:visible!important;position:relative!important;z-index:2!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics{grid-area:metrics!important;display:grid!important;grid-template-columns:minmax(80px,1fr) minmax(58px,.65fr) minmax(96px,1fr)!important;gap:5px!important;width:100%!important;justify-content:stretch!important;align-items:center!important;min-width:0!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics b{min-width:0!important;width:100%!important;font-size:16px!important;min-height:30px!important;padding:5px 5px!important;line-height:1!important;white-space:nowrap!important;overflow:visible!important;text-align:center!important;justify-content:center!important}
@media(max-width:680px){#modalBody[data-wizard="tripLog"] .mileageHistory{height:74vh!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow{grid-template-columns:minmax(0,1fr) auto!important;min-height:64px!important;padding:8px 9px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics{grid-template-columns:minmax(82px,1fr) minmax(58px,.65fr) minmax(96px,1fr)!important;width:100%!important;gap:4px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics b{font-size:16px!important;padding:5px 4px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowDate{font-size:11.5px!important;max-width:104px!important}}

/* Screenshot QA pass 2: phone-width driving history controls and date headers. */
#modalBody[data-wizard="tripLog"] .historyFilters select,
#modalBody[data-wizard="tripLog"] .historyFilters input{font-size:18px!important;line-height:1.1!important;min-height:42px!important;padding:6px 34px 6px 9px!important;letter-spacing:-.02em!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
#modalBody[data-wizard="tripLog"] .historyFilters label{font-size:12px!important;line-height:1.05!important;min-width:0!important;overflow:hidden!important}
#modalBody[data-wizard="tripLog"] .historyFilters{overflow:hidden!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader{display:grid!important;grid-template-columns:34px minmax(82px,1fr) minmax(70px,.8fr) minmax(96px,1fr)!important;grid-template-areas:"date date date date" "count km time cost"!important;align-items:center!important;gap:5px!important;overflow:hidden!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader b{grid-area:date!important;min-width:0!important;max-width:none!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;font-size:14px!important;line-height:1.05!important;text-align:left!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader .dayTripCount{grid-area:count!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader .dayMetricKm{grid-area:km!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader .dayMetricTime{grid-area:time!important}
#modalBody[data-wizard="tripLog"] .tripDateGroupHeader .dayMetricCost{grid-area:cost!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .idRef{max-width:132px!important;font-size:10.5px!important;letter-spacing:.02em!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripMetricTime{font-size:15.5px!important;letter-spacing:-.04em!important}
@media(max-width:420px){#modalBody[data-wizard="tripLog"] .historyFilters{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}#modalBody[data-wizard="tripLog"] .historyFilters select{font-size:17px!important;padding-right:26px!important}#modalBody[data-wizard="tripLog"] .historyFilters input{font-size:17px!important;padding-left:8px!important;padding-right:25px!important}#modalBody[data-wizard="tripLog"] .tripDateGroupHeader{grid-template-columns:32px minmax(86px,1fr) minmax(72px,.82fr) minmax(98px,1fr)!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .idRef{max-width:142px!important}#modalBody[data-wizard="tripLog"] .tripHistoryRow .tripRowMetrics{grid-template-columns:minmax(82px,1fr) minmax(72px,.82fr) minmax(98px,1fr)!important}}

/* User preference: project names and project rows are left-aligned, never centered. */
.hero.compact .projectTitleBtn,
.hero.compact .projectTitleBtn h1,
.hero.compact .heroTitle,
.hero.compact h1,
.projectQuickPicker .projectPickerRow,
.projectQuickPicker .projectPickText,
.projectQuickPicker .projectPickText .itemTitle,
.projectChoiceList .projectPickerRow,
.projectChoiceList .projectPickText,
.projectChoiceList .projectPickText .itemTitle{text-align:left!important;justify-content:flex-start!important;justify-items:start!important;align-items:center!important}
.hero.compact .projectTitleBtn{width:100%!important;min-width:0!important}
.hero.compact .projectTitleBtn h1{display:block!important;min-width:0!important;max-width:100%!important}

/* Form geometry guard: inputs/text fields and buttons align on the same rhythm. */
.sheet form label,
.sheet form .datePickField,
.sheet form .durationField{min-width:0!important;align-self:stretch!important;margin:0!important}
.sheet form input,
.sheet form select,
.sheet form textarea,
.sheet form button,
.sheet form .button,
.sheet form [role="button"]{box-sizing:border-box!important;width:100%!important;max-width:100%!important;border-radius:16px!important;line-height:1.15!important;vertical-align:middle!important}
.sheet form input:not([type="hidden"]),
.sheet form select,
.sheet form button{min-height:48px!important;height:48px!important;display:flex!important;align-items:center!important}
.sheet form textarea{display:block!important;min-height:84px!important;line-height:1.25!important}
.sheet form button{justify-content:center!important;text-align:center!important;padding:0 14px!important;margin:0!important;align-self:stretch!important}
.sheet form .formActions,
.sheet form .noteVoiceActions,
.sheet form .rowActions{align-items:stretch!important;gap:8px!important}
.sheet form .formActions>*{height:48px!important;min-height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important}
@media(max-width:680px){.sheet form{gap:10px!important}.sheet form input:not([type="hidden"]),.sheet form select,.sheet form button{min-height:46px!important;height:46px!important}.sheet form label{gap:5px!important}.sheet form .formActions{display:grid!important;grid-template-columns:1fr!important}}

/* Auzas-inspired voice note composer: compact mic strip + explicit unsent preview bubble. */
.voiceComposer{display:grid!important;gap:6px!important;margin:4px 0 0!important;padding:8px!important;border:1px solid #dbe4f0!important;border-radius:18px!important;background:#f8fafc!important;min-width:0!important;overflow:hidden!important}
.voiceHoldHint{font-size:12px!important;line-height:1.15!important;color:#64748b!important;font-weight:800!important;text-align:left!important;padding:0 2px!important}
.noteVoiceActions{display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;gap:8px!important;align-items:stretch!important;margin:0!important;min-width:0!important}
.voice-file-picker.composerIcon,.voice-record-button.composerMic{height:46px!important;min-height:46px!important;border-radius:999px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0 12px!important;font-weight:950!important;box-shadow:none!important;border:1px solid #cbd5e1!important}
.voice-file-picker.composerIcon{background:#fff!important;color:#123c69!important;font-size:22px!important;overflow:hidden!important;cursor:pointer!important}
.voice-file-picker.composerIcon input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.voice-record-button.composerMic{background:#123c69!important;color:#fff!important;font-size:18px!important;letter-spacing:.01em!important}
.voice-record-button.composerMic.recording{background:#be123c!important;color:#fff!important;box-shadow:0 0 0 4px rgba(190,18,60,.14)!important;animation:paDriveGlow 1s ease-in-out infinite!important}
.voicePreviewBubble{display:grid!important;gap:6px!important;border-radius:18px!important;border:1px solid #d8c7ff!important;background:#f5f0ff!important;padding:8px 10px!important;color:#3b2b70!important;min-width:0!important;overflow:hidden!important}
.voicePreviewBubble[hidden]{display:none!important}
.voicePreviewLabel{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-weight:950!important;color:#6d4aff!important;text-align:left!important}
.voicePreviewPlayer{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important;min-width:0!important}
.voicePreviewPlayer audio{width:100%!important;height:34px!important;min-width:0!important}
.voicePreviewPlayer b{font-size:13px!important;white-space:nowrap!important;color:#123c69!important}
.voicePreviewBubble small{font-size:12px!important;color:#64748b!important;font-weight:750!important;text-align:left!important}
@media(max-width:680px){.voiceComposer{padding:7px!important;border-radius:16px!important}.noteVoiceActions{grid-template-columns:44px minmax(0,1fr)!important}.voice-file-picker.composerIcon,.voice-record-button.composerMic{height:44px!important;min-height:44px!important}.voiceHoldHint{font-size:11.5px!important}}

/* FINAL QA: master-note Add composer — aligned field/action row, no raw file inputs. */
#modalBody[data-wizard="noteDetail"] .noteComposerClean{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 112px!important;
  grid-template-areas:"media media" "field send" "tools tools"!important;
  align-items:stretch!important;
  gap:8px!important;
  padding:10px!important;
  border:1px solid #e2e8f0!important;
  border-radius:18px!important;
  background:#fff!important;
  overflow:hidden!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean>input[type="file"]{
  position:absolute!important;
  left:-9999px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteComposerMedia{grid-area:media!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteComposerField{
  grid-area:field!important;
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  align-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  gap:6px!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:800!important;
  color:#123c69!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean textarea{
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:118px!important;
  min-height:118px!important;
  max-height:118px!important;
  margin:0!important;
  padding:16px 18px!important;
  border-radius:16px!important;
  border:1.5px solid #cbd5e1!important;
  font-size:18px!important;
  line-height:1.28!important;
  font-weight:400!important;
  resize:none!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteAddButton{
  grid-area:send!important;
  align-self:end!important;
  justify-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  height:118px!important;
  min-height:118px!important;
  max-height:118px!important;
  margin:0!important;
  padding:0 12px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:900!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteToolRow{
  grid-area:tools!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
  align-items:stretch!important;
  margin:0!important;
  min-width:0!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteToolRow button{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0 8px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:850!important;
  box-shadow:none!important;
  background:#fff!important;
  color:#123c69!important;
  border:1.5px solid #cbd5e1!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteQuickActions{display:none!important}
@media(max-width:680px){
  #modalBody[data-wizard="noteDetail"] .noteComposerClean{grid-template-columns:minmax(0,1fr) 112px!important;gap:8px!important;padding:10px!important}
  #modalBody[data-wizard="noteDetail"] .noteComposerClean textarea,
  #modalBody[data-wizard="noteDetail"] .noteComposerClean .noteAddButton{height:124px!important;min-height:124px!important;max-height:124px!important}
  #modalBody[data-wizard="noteDetail"] .noteComposerClean textarea{font-size:18px!important;padding:16px 18px!important}
}
@media(max-width:380px){
  #modalBody[data-wizard="noteDetail"] .noteComposerClean{grid-template-columns:minmax(0,1fr) 96px!important}
  #modalBody[data-wizard="noteDetail"] .noteComposerClean textarea,
  #modalBody[data-wizard="noteDetail"] .noteComposerClean .noteAddButton{height:116px!important;min-height:116px!important;max-height:116px!important}
}

/* FINAL QA: sticky header/project stack uses real header height, never a hardcoded cut point. */
html{scroll-padding-top:calc(var(--pa-header-h,72px) + 10px)!important}
body>header{
  position:sticky!important;
  top:0!important;
  z-index:80!important;
  transform:translateZ(0)!important;
  will-change:transform!important;
  overflow:visible!important;
}
.hero.compact{
  position:sticky!important;
  top:calc(var(--pa-header-h,72px) + 4px)!important;
  z-index:70!important;
  transform:translateZ(0)!important;
  overflow:hidden!important;
}
body.modal-open>header,body.modal-open .hero.compact,body.modal-open .quickTripBar{pointer-events:none!important}
body.modal-open .modal{z-index:1000!important}
@media(max-width:680px){
  .hero.compact{top:calc(var(--pa-header-h,118px) + 4px)!important}
}

/* FINAL QA: higher-specificity sticky offsets so project card cannot slide under header. */
body>main.app>.hero.compact{
  position:sticky!important;
  top:calc(var(--pa-header-h,96px) + 8px)!important;
  z-index:70!important;
  scroll-margin-top:calc(var(--pa-header-h,96px) + 14px)!important;
}
body>main.app>.quickTripBar.tripCommandRow{
  position:sticky!important;
  top:calc(var(--pa-header-h,96px) + 66px)!important;
  z-index:69!important;
  scroll-margin-top:calc(var(--pa-header-h,96px) + 72px)!important;
}
@media(max-width:680px){
  body>main.app>.hero.compact{top:calc(var(--pa-header-h,118px) + 8px)!important}
  body>main.app>.quickTripBar.tripCommandRow{top:calc(var(--pa-header-h,118px) + 66px)!important}
}

/* FINAL QA: note attachment type labels fit inside thumbnail cards. */
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteComposerThumb i{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  border-radius:10px!important;
  background:#eef5fb!important;
  color:#123c69!important;
  font-style:normal!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:clip!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteComposerThumb.type-video i{background:#eef2ff!important;color:#4338ca!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteComposerThumb.type-audio i{background:#ecfdf5!important;color:#047857!important}

/* FINAL QA: note media upload has visible progress/errors and real audio recorder state. */
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteUploadStatus{
  grid-column:1/-1!important;
  min-height:30px!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  background:#eef5fb!important;
  color:#123c69!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:850!important;
  text-align:left!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteUploadStatus[hidden]{display:none!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteUploadStatus[data-kind="busy"]{background:#fff7ed!important;color:#9a3412!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteUploadStatus[data-kind="ok"]{background:#ecfdf5!important;color:#047857!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteUploadStatus[data-kind="error"]{background:#fff1f2!important;color:#be123c!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean [data-note-record].recording{background:#fff1f2!important;color:#be123c!important;border-color:#fecdd3!important;box-shadow:0 0 0 3px rgba(190,18,60,.10)!important}

/* FINAL QA: master-note composer text alignment — compact, top-aligned field copy and centered tool labels. */
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteComposerField{
  align-content:start!important;
  color:#123c69!important;
  font-size:17px!important;
  line-height:1.12!important;
  letter-spacing:-.02em!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean textarea{
  padding:18px 18px 12px!important;
  line-height:1.22!important;
  font-size:18px!important;
  font-weight:400!important;
  text-align:left!important;
  vertical-align:top!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean textarea::placeholder{
  color:#8f98a7!important;
  opacity:1!important;
  font-weight:400!important;
  line-height:1.22!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteAddButton{
  align-items:center!important;
  justify-content:center!important;
  padding-top:0!important;
  padding-bottom:0!important;
  line-height:1!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteToolRow button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  letter-spacing:-.01em!important;
}

/* FINAL QA: reduce bulky master-note composer; keep exact alignment without oversized Add card. */
#modalBody[data-wizard="noteDetail"] .noteComposerClean{
  grid-template-columns:minmax(0,1fr) 96px!important;
  gap:7px!important;
  padding:9px!important;
  border-radius:18px!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteComposerField{
  font-size:15px!important;
  line-height:1.1!important;
  gap:5px!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean textarea,
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteAddButton{
  height:96px!important;
  min-height:96px!important;
  max-height:96px!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean textarea{
  padding:13px 14px!important;
  font-size:16px!important;
  line-height:1.22!important;
  border-radius:16px!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean textarea::placeholder{font-size:16px!important;line-height:1.22!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteAddButton{
  border-radius:16px!important;
  font-size:18px!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteToolRow{gap:6px!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean .noteToolRow button{
  height:36px!important;
  min-height:36px!important;
  max-height:36px!important;
  font-size:11.5px!important;
  padding:0 6px!important;
}
@media(max-width:380px){
  #modalBody[data-wizard="noteDetail"] .noteComposerClean{grid-template-columns:minmax(0,1fr) 88px!important}
  #modalBody[data-wizard="noteDetail"] .noteComposerClean textarea,
  #modalBody[data-wizard="noteDetail"] .noteComposerClean .noteAddButton{height:88px!important;min-height:88px!important;max-height:88px!important}
  #modalBody[data-wizard="noteDetail"] .noteComposerClean textarea{font-size:16px!important;padding:11px 12px!important}
}

/* FINAL QA: Driving Log date filters are compact and aligned, not oversized full-width fields. */
#modalBody[data-wizard="tripLog"] .historyFilters{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
  align-items:end!important;
}
#modalBody[data-wizard="tripLog"] .historyFilters button,
#modalBody[data-wizard="tripLog"] .historyFilters select,
#modalBody[data-wizard="tripLog"] .historyFilters label{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 8px!important;
  font-size:11px!important;
  line-height:1.05!important;
  text-align:center!important;
}
#modalBody[data-wizard="tripLog"] .historyFilters label{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:4px!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
#modalBody[data-wizard="tripLog"] .historyFilters input[type="date"]{
  width:100%!important;
  min-width:0!important;
  max-width:112px!important;
  height:30px!important;
  min-height:30px!important;
  padding:0 2px!important;
  font-size:11px!important;
  text-align:center!important;
}
@media(max-width:420px){
  #modalBody[data-wizard="tripLog"] .historyFilters{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #modalBody[data-wizard="tripLog"] .historyFilters label{grid-template-columns:34px minmax(0,1fr)!important;text-align:left!important}
  #modalBody[data-wizard="tripLog"] .historyFilters input[type="date"]{max-width:none!important}
}

/* FINAL QA: last-word Driving Log date alignment overrides after all older mobile rules. */
#modalBody[data-wizard="tripLog"] .historyFilters label{
  grid-column:auto!important;
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  align-items:center!important;
  text-align:left!important;
}
#modalBody[data-wizard="tripLog"] .historyFilters input[type="date"]{
  width:100%!important;
  max-width:118px!important;
  min-width:0!important;
  justify-self:end!important;
  padding:0 2px!important;
  font-size:11px!important;
}
@media(max-width:420px){
  #modalBody[data-wizard="tripLog"] .historyFilters label{grid-column:auto!important;grid-template-columns:30px minmax(0,1fr)!important}
  #modalBody[data-wizard="tripLog"] .historyFilters input[type="date"]{max-width:118px!important;width:100%!important}
}

/* FINAL QA: note media is part of the Confluence/Telegram-like story canvas, not a separate attachments section. */
#modalBody[data-wizard="noteDetail"] .noteComposerMedia,
#modalBody[data-wizard="noteDetail"] .noteComposerMediaHead,
#modalBody[data-wizard="noteDetail"] .noteComposerThumbs,
#modalBody[data-wizard="noteDetail"] .noteComposerThumb,
#modalBody[data-wizard="noteDetail"] .noteAttachments,
#modalBody[data-wizard="noteDetail"] .compactNoteAttachments{display:none!important}
#modalBody[data-wizard="noteDetail"] .noteStoryCanvas{
  display:grid!important;
  gap:8px!important;
  background:#fff!important;
  border:1px solid #e8eef5!important;
  border-radius:16px!important;
  padding:8px 10px!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryCanvas .noteBlock{
  border:0!important;
  border-bottom:1px solid #edf2f7!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:7px 0 9px!important;
  margin:0!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryItem{
  display:block!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid #edf2f7!important;
  border-radius:0!important;
  padding:8px 0 10px!important;
  background:transparent!important;
  color:#172033!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryItem:last-child,
#modalBody[data-wizard="noteDetail"] .noteStoryCanvas .noteBlock:last-child{border-bottom:0!important}
#modalBody[data-wizard="noteDetail"] .noteStoryImage img,
#modalBody[data-wizard="noteDetail"] .noteStoryVideo video{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:contain!important;
  border-radius:16px!important;
  background:#e5e7eb!important;
  border:1px solid #dbe4f0!important;
  box-shadow:0 6px 18px rgba(15,23,42,.08)!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryVideo video{min-height:210px!important;max-height:min(70dvh,520px)!important;aspect-ratio:16/9!important;background:#0f172a!important}
#modalBody[data-wizard="noteDetail"] .noteStoryItem figcaption,
#modalBody[data-wizard="noteDetail"] .noteStoryAudio small,
#modalBody[data-wizard="noteDetail"] .noteStoryFile span{
  display:block!important;
  margin-top:5px!important;
  color:#64748b!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  font-weight:650!important;
  word-break:break-word!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryAudio{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  padding:9px!important;
  border:1px solid #dbe4f0!important;
  border-radius:16px!important;
  background:#f8fafc!important;
}
#modalBody[data-wizard="noteDetail"] .noteAudioBadge{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  border-radius:16px!important;
  background:#ecfdf5!important;
  color:#047857!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryAudio audio{width:100%!important;max-width:100%!important;height:36px!important}
#modalBody[data-wizard="noteDetail"] .noteStoryFile{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  padding:9px!important;
  border:1px solid #dbe4f0!important;
  border-radius:16px!important;
  background:#f8fafc!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryFile b{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  border-radius:16px!important;
  background:#eef2ff!important;
  color:#4338ca!important;
  font-size:12px!important;
  font-weight:950!important;
}
@media(max-width:680px){
  #modalBody[data-wizard="noteDetail"] .noteStoryCanvas{padding:7px 9px!important;gap:7px!important}
  #modalBody[data-wizard="noteDetail"] .noteStoryImage img,
  #modalBody[data-wizard="noteDetail"] .noteStoryVideo video{min-height:170px!important;max-height:300px!important;border-radius:15px!important}
  #modalBody[data-wizard="noteDetail"] .noteStoryAudio,#modalBody[data-wizard="noteDetail"] .noteStoryFile{grid-template-columns:48px minmax(0,1fr)!important;padding:8px!important;border-radius:15px!important}
  #modalBody[data-wizard="noteDetail"] .noteAudioBadge,#modalBody[data-wizard="noteDetail"] .noteStoryFile b{width:48px!important;height:48px!important;border-radius:14px!important}
}

/* FINAL QA: note header title and timestamp are separate lines, never mashed together. */
#modalBody[data-wizard="noteDetail"] .noteDocHead .noteMetaPill{display:inline-flex!important;width:max-content!important;margin-bottom:4px!important}
#modalBody[data-wizard="noteDetail"] .noteDocHead h2{display:block!important;margin:0!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
#modalBody[data-wizard="noteDetail"] .noteDocHead .noteHeaderTime{display:block!important;margin-top:4px!important;color:#64748b!important;background:transparent!important;border-radius:0!important;padding:0!important;font:650 11px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.02em!important;white-space:nowrap!important}

/* FINAL QA: note media must never be cropped; long notes need a full-page reader and upload progress. */
#modalBody[data-wizard="noteDetail"] .noteDoc{display:flex!important;flex-direction:column!important;min-height:0!important;overflow:visible!important}
#modalBody[data-wizard="noteDetail"] .noteDocHead{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:start!important}
#modalBody[data-wizard="noteDetail"] .noteHeadActions{display:grid!important;gap:6px!important;justify-items:end!important;align-items:start!important}
#modalBody[data-wizard="noteDetail"] .noteReadOnlyLink{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;padding:0 12px!important;border-radius:999px!important;border:1px solid #bfdbfe!important;background:#eff6ff!important;color:#123c69!important;text-decoration:none!important;font-size:12px!important;font-weight:900!important;white-space:nowrap!important}
#modalBody[data-wizard="noteDetail"] .noteStoryCanvas{overflow:visible!important;align-content:start!important}
#modalBody[data-wizard="noteDetail"] .noteStoryItem{overflow:visible!important;scroll-margin-top:18px!important}
#modalBody[data-wizard="noteDetail"] .noteStoryImage a{display:block!important;width:100%!important;line-height:0!important;background:#f8fafc!important;border-radius:16px!important;border:1px solid #dbe4f0!important;overflow:hidden!important}
#modalBody[data-wizard="noteDetail"] .noteStoryImage img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;object-fit:contain!important;object-position:center!important;border:0!important;border-radius:0!important;background:#f8fafc!important;box-shadow:none!important}
#modalBody[data-wizard="noteDetail"] .noteStoryVideo video{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:210px!important;max-height:min(70dvh,520px)!important;aspect-ratio:16/9!important;object-fit:contain!important;object-position:center!important;border-radius:16px!important;background:#0f172a!important;border:1px solid #dbe4f0!important;box-shadow:0 6px 18px rgba(15,23,42,.08)!important}
#modalBody[data-wizard="noteDetail"] .noteStoryAudio{position:relative!important;z-index:1!important;margin-bottom:6px!important;overflow:visible!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean{position:relative!important;z-index:2!important;margin-top:10px!important;flex:0 0 auto!important;background:#fff!important}
#modalBody[data-wizard="noteDetail"] .noteComposerClean.isUploading{outline:2px solid rgba(13,124,102,.18)!important;box-shadow:0 0 0 5px rgba(13,124,102,.06),0 14px 34px rgba(15,23,42,.14)!important}
#modalBody[data-wizard="noteDetail"] .noteUploadStatus{display:grid!important;grid-column:1/-1!important;gap:5px!important;min-height:32px!important;padding:8px 10px 8px 34px!important;border-radius:14px!important;background:#eefdf6!important;color:#065f46!important;font-size:12px!important;font-weight:850!important;position:relative!important;overflow:hidden!important}
#modalBody[data-wizard="noteDetail"] .noteUploadStatus[hidden]{display:none!important}
#modalBody[data-wizard="noteDetail"] .noteUploadStatus[data-kind="busy"]::before{content:"";position:absolute;left:10px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:999px;border:3px solid rgba(13,124,102,.25);border-top-color:#0d7c66;animation:paSpin .8s linear infinite}
#modalBody[data-wizard="noteDetail"] .noteUploadStatus[data-kind="busy"]::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:42%;border-radius:999px;background:linear-gradient(90deg,#0d7c66,#38bdf8);animation:paUploadBar 1.2s ease-in-out infinite}
#modalBody[data-wizard="noteDetail"] .noteComposerClean.isUploading button[aria-busy="true"]{opacity:.72!important;filter:saturate(.8)!important}
@keyframes paSpin{to{transform:rotate(360deg)}}
@keyframes paUploadBar{0%{transform:translateX(-110%)}55%{transform:translateX(110%)}100%{transform:translateX(240%)}}
@media(max-width:680px){#modalBody[data-wizard="noteDetail"] .noteStoryVideo video{min-height:190px!important;max-height:62dvh!important;border-radius:15px!important}#modalBody[data-wizard="noteDetail"] .noteDocHead{grid-template-columns:minmax(0,1fr) 118px!important}#modalBody[data-wizard="noteDetail"] .noteReadOnlyLink{min-height:32px!important;font-size:11px!important;padding:0 10px!important}}

body.noteReadPage{background:#f5f8fb!important;color:#172033!important;padding:0!important;overflow:auto!important;min-height:100dvh!important}
.notePageTop{position:sticky!important;top:0!important;z-index:10!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;padding:10px 14px!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid #dbe4f0!important}
.notePageTop a{color:#0d7c66!important;text-decoration:none!important;font-weight:900!important}.notePageTop strong{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.notePageTop span{font-size:12px!important;color:#64748b!important;font-weight:800!important}
.noteDateRail{position:sticky!important;top:53px!important;z-index:9!important;display:grid!important;gap:7px!important;padding:9px 14px!important;background:rgba(245,248,251,.94)!important;backdrop-filter:blur(10px)!important;border-bottom:1px solid #e2e8f0!important}
.noteDateRail label{display:grid!important;grid-template-columns:auto minmax(140px,210px)!important;gap:8px!important;align-items:center!important;font-size:12px!important;color:#123c69!important;font-weight:900!important}.noteDateRail input{min-height:36px!important;border-radius:12px!important;border:1px solid #cbd5e1!important;padding:6px 10px!important;font-size:16px!important;background:#fff!important}.noteDateRail div{display:flex!important;gap:6px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;padding-bottom:1px!important}.noteDateRail button{flex:0 0 auto!important;border:1px solid #bfdbfe!important;background:#fff!important;color:#123c69!important;border-radius:999px!important;min-height:32px!important;padding:0 10px!important;font-weight:900!important;font-size:12px!important}
.notePage{max-width:920px!important;margin:0 auto!important;padding:14px 14px 42px!important}.notePageDoc{display:grid!important;gap:12px!important}.notePageHero,.notePageItem{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:22px!important;padding:14px!important;box-shadow:0 10px 30px rgba(15,23,42,.06)!important;scroll-margin-top:118px!important}.notePageHero small,.notePageText small,.notePageItem figcaption,.notePageAudio small,.notePageFile span{display:block!important;color:#64748b!important;font-size:12px!important;font-weight:800!important;line-height:1.2!important}.notePageHero h1{margin:4px 0!important;font-size:clamp(28px,7vw,48px)!important;letter-spacing:-.04em!important;color:#172033!important}.notePageHero p{margin:0!important;color:#64748b!important;font-weight:800!important}.notePageText p{margin:6px 0 0!important;font-size:clamp(18px,4.8vw,24px)!important;line-height:1.35!important}.notePageImage,.notePageVideo{padding:10px!important}.notePageImage a{display:block!important;background:#f8fafc!important;border-radius:18px!important;overflow:hidden!important}.notePageImage img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}.notePageVideo video{display:block!important;width:100%!important;height:auto!important;max-height:80dvh!important;aspect-ratio:16/9!important;object-fit:contain!important;background:#0f172a!important;border-radius:18px!important}.notePageAudio,.notePageFile{display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;text-decoration:none!important;color:#172033!important}.notePageAudio b,.notePageFile b{display:grid!important;place-items:center!important;width:64px!important;height:64px!important;border-radius:18px!important;background:#ecfdf5!important;color:#047857!important;font-size:12px!important;font-weight:950!important}.notePageAudio audio{width:100%!important}@media(max-width:680px){.notePage{padding:10px 10px 32px!important}.notePageHero,.notePageItem{border-radius:18px!important;padding:11px!important}.noteDateRail{top:50px!important;padding:8px 10px!important}.noteDateRail label{grid-template-columns:1fr!important}.notePageAudio,.notePageFile{grid-template-columns:54px minmax(0,1fr)!important}.notePageAudio b,.notePageFile b{width:54px!important;height:54px!important;border-radius:15px!important}}

/* FINAL QA: note modal story must reserve real height so composer never overlays image/video/audio. */
#modalBody[data-wizard="noteDetail"] .compactNoteDoc,
#modalBody[data-wizard="noteDetail"] .noteDoc{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  contain:none!important;
}
#modalBody[data-wizard="noteDetail"] .compactNoteDoc .noteStoryCanvas,
#modalBody[data-wizard="noteDetail"] .noteStoryCanvas,
#modalBody[data-wizard="noteDetail"] .noteCanvas{
  display:grid!important;
  grid-auto-rows:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  contain:none!important;
  margin-bottom:10px!important;
}
#modalBody[data-wizard="noteDetail"] .noteStoryImage,
#modalBody[data-wizard="noteDetail"] .noteStoryVideo,
#modalBody[data-wizard="noteDetail"] .noteStoryAudio,
#modalBody[data-wizard="noteDetail"] .noteStoryFile{
  position:relative!important;
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  contain:none!important;
  clear:both!important;
}
#modalBody[data-wizard="noteDetail"] .noteComposerClean{
  clear:both!important;
  display:grid!important;
  position:relative!important;
  transform:none!important;
}

/* FINAL QA: legal/contact footer, Auzas-style compact bottom links. */
.legalFooter{max-width:1280px;margin:18px auto 0;padding:14px 16px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;color:#526276;font-size:12px;line-height:1.25;border-top:1px solid #dbe4f0}
.legalFooter b{display:block;color:#123c69;font-size:14px}.legalFooter span{display:block}.legalFooter nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.legalFooter a{color:#123c69;text-decoration:none;font-weight:800;background:#fff;border:1px solid #dbe4f0;border-radius:999px;padding:7px 10px}.legalFooter a[href^="mailto"],.legalFooter a[href^="tel"]{color:#0d7c66;border-color:#bfe8d8;background:#f3fffa}.legalPage{max-width:920px!important}.legalCard{display:grid!important;gap:10px!important;padding:18px!important;line-height:1.48!important}.legalCard h2,.legalCard h3{margin:0!important;color:#123c69!important}.legalCard p,.legalCard ul{margin:0!important}.legalCard a,.contactEmail{color:#0d7c66!important;font-weight:900!important}.legalCard ul{padding-left:20px!important}
@media(max-width:680px){.legalFooter{grid-template-columns:1fr;margin-top:12px;padding:12px 10px 22px}.legalFooter nav{justify-content:flex-start;gap:6px}.legalFooter a{font-size:11px;padding:6px 8px}.legalCard{padding:14px!important}}
