.remember{display:flex;align-items:center;gap:9px;margin-top:16px;font-size:13px;font-weight:500;color:var(--ink)}
.remember input{width:18px;min-height:18px;accent-color:var(--green);margin:0}
.remember small{margin-left:auto;color:#8a968f;font-size:11px;font-weight:400}

/* Refreshed building identity for login pages, including workers using the older template. */
body:has(.card){background-color:#0d3435;background-image:linear-gradient(90deg,rgba(7,41,42,.94) 0%,rgba(8,49,49,.78) 39%,rgba(245,246,241,.18) 72%,rgba(245,246,241,.42) 100%),url('/static/images/building-hero.png');background-position:center;background-size:cover;background-attachment:fixed;color:#f8fbf6}
body:has(.card) .brand{color:#f8fbf6}body:has(.card) .brand-sub{color:#c7d9d0}body:has(.card) .phase{border-color:rgba(255,255,255,.3);color:#e7f1ea}body:has(.card) .intro h1{color:#fff;text-shadow:0 3px 24px rgba(0,0,0,.25)}body:has(.card) .intro p{color:#d9e8df}body:has(.card) footer{color:#d0ded7;border-top-color:rgba(255,255,255,.28)}body:has(.card) .brand-icon{background-image:url('/static/icons/icon-192.png');background-size:cover;background-position:center;text-indent:-9999px;overflow:hidden}body:has(.card) .card{color:var(--ink)}body:has(.card) .card .muted{color:var(--muted)}
@media(max-width:760px){body:has(.card){background-image:linear-gradient(180deg,rgba(7,41,42,.88) 0%,rgba(7,41,42,.68) 34%,rgba(245,246,241,.96) 68%),url('/static/images/building-hero.png');background-position:58% center;background-attachment:scroll}body:has(.card) .card{box-shadow:0 18px 60px rgba(4,34,33,.3)}}

/* Glass panels keep the building visible behind the form. */
body:has(.card) .card{background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(184,224,214,.06));border-color:rgba(255,255,255,.42);box-shadow:0 22px 70px rgba(3,31,31,.28),inset 0 1px rgba(255,255,255,.30)}
body:has(.card) .card input{background:rgba(255,255,255,.62);border-color:rgba(24,61,56,.34);color:#183d38;box-shadow:inset 0 1px 2px rgba(9,49,45,.10)}
body:has(.card) .card input:focus{background:rgba(255,255,255,.48);border-color:#8fc3ae}
body:has(.card) .card .muted{display:inline-block;background:rgba(255,255,255,.78);border-radius:6px;padding:3px 8px;color:#022f27 !important;font-weight:750;text-shadow:0 1px rgba(255,255,255,.70)}
body:has(.card) .card>.eyebrow{display:inline-block;background:rgba(255,255,255,.62);border-radius:5px;padding:1px 6px;color:#022f27;font-weight:800}
body:has(.card) .card label,body:has(.card) .card .label-row span{color:#022f27;font-weight:750;text-shadow:0 1px rgba(255,255,255,.60)}
body:has(.card) .card .help,body:has(.card) .card .install p{color:#022f27;font-weight:600;text-shadow:0 1px rgba(255,255,255,.60)}

/* Carry the same exterior identity into the post-login workspace. */
body:has(.dashboard){background-color:#0d3435;background-image:linear-gradient(90deg,rgba(7,41,42,.90),rgba(8,49,49,.62)),url('/static/images/building-hero.png');background-position:center;background-size:cover;background-attachment:fixed;color:#f8fbf6}
body:has(.dashboard) .brand{color:#f8fbf6}body:has(.dashboard) .brand-sub{color:#c7d9d0}body:has(.dashboard) .phase{border-color:rgba(255,255,255,.3);color:#e7f1ea}body:has(.dashboard) footer{color:#d0ded7;border-top-color:rgba(255,255,255,.28)}body:has(.dashboard) .brand-icon{background-image:url('/static/icons/icon-192.png');background-size:cover;background-position:center;text-indent:-9999px;overflow:hidden}
body:has(.dashboard) .dashboard h1{color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.3)}body:has(.dashboard) .dashboard .eyebrow{color:#c6ddd1}body:has(.dashboard) .welcome,body:has(.dashboard) .placeholder{background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(184,224,214,.06));border-color:rgba(255,255,255,.42);color:var(--ink);box-shadow:0 20px 60px rgba(4,34,33,.24),inset 0 1px rgba(255,255,255,.30)}body:has(.dashboard) .welcome p,body:has(.dashboard) .placeholder p{color:var(--muted)}body:has(.dashboard) .secondary{background:rgba(255,255,255,.46);border-color:rgba(255,255,255,.58)}
body:has(.dashboard) .placeholder>span{display:block;width:52px;height:52px;margin:0 auto 12px;background:url('/static/icons/icon-192.png') center/cover;border-radius:15px;font-size:0}
@media(max-width:760px){body:has(.dashboard){background-image:linear-gradient(180deg,rgba(7,41,42,.86),rgba(245,246,241,.92) 78%),url('/static/images/building-hero.png');background-position:58% center;background-attachment:scroll}body:has(.dashboard) .dashboard h1{color:#fff}}

/* Keep the architectural backdrop fixed while the page content scrolls. */
html{background:#0d3435}
body:has(.card),body:has(.dashboard){background-attachment:fixed !important;background-repeat:no-repeat;background-position:center center}
body:has(.report-shell){background-color:#0d3435;background-image:linear-gradient(90deg,rgba(7,41,42,.90),rgba(8,49,49,.64)),url('/static/images/building-hero.png');background-size:cover;background-position:center center;background-attachment:fixed !important;background-repeat:no-repeat;color:#f8fbf6}
body:has(.report-shell) .brand{color:#f8fbf6}body:has(.report-shell) .brand-sub{color:#c7d9d0}body:has(.report-shell) .phase{border-color:rgba(255,255,255,.3);color:#e7f1ea}body:has(.report-shell) footer{color:#d0ded7;border-top-color:rgba(255,255,255,.28)}body:has(.report-shell) .brand-icon{background-image:url('/static/icons/icon-192.png');background-size:cover;background-position:center;text-indent:-9999px;overflow:hidden}

.quick-nav{margin-top:26px;background:#103d37;border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:10px;display:flex;box-shadow:0 16px 45px rgba(3,31,31,.24)}
.quick-nav-item{display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;width:100%;padding:13px 15px;color:#f3fbf6;text-decoration:none;border-radius:12px}.quick-nav-item:hover{background:rgba(255,255,255,.10)}.quick-nav-item svg{grid-row:1 / span 2;width:34px;height:34px;fill:none;stroke:#b9e3c9;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.quick-nav-item span{font-weight:750;letter-spacing:1px}.quick-nav-item small{color:#b6d2c7;font-size:11px}
.report-shell{grid-column:1/-1;width:100%}.back-link{color:#d4ebe0;text-decoration:none;font-size:13px}.report-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:20px 0}.report-heading h1{color:#fff;margin:8px 0 3px;font-size:34px}.report-heading p{color:#c7ddd3;margin:0}.report-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.report-summary article{padding:20px;border:1px solid rgba(255,255,255,.35);border-radius:16px;background:rgba(255,255,255,.16);color:#fff}.report-summary span,.report-summary small{display:block;color:#d0e5dc;font-size:12px}.report-summary strong{display:block;margin:5px 0;font-size:27px;color:#fff}.report-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.report-card{padding:20px;border:1px solid rgba(255,255,255,.38);border-radius:16px;background:rgba(255,255,255,.12);color:#06352d}.report-card h2{margin:0 0 10px;color:#fff;font-size:20px}.report-row,.report-total{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.22);font-size:13px}.report-row span{color:#07372f}.report-row b{white-space:nowrap;color:#022f27}.report-total{border-bottom:0;border-top:2px solid rgba(255,255,255,.45);margin-top:6px;padding-top:12px;font-weight:800}.report-total b{color:#06352d}.report-card.balances{background:rgba(16,61,55,.55)}
@media(max-width:760px){.report-heading{display:block}.report-heading .secondary{margin-top:14px}.report-heading h1{font-size:27px}.report-summary{grid-template-columns:1fr}.report-grid{grid-template-columns:1fr}.quick-nav{margin-bottom:20px}}
@media print{body:has(.report-page){background:#fff;color:#111}.report-page .brand,.report-page footer,.back-link,.report-heading .secondary{display:none}.report-shell{margin:0}.report-heading h1,.report-card h2{color:#111}.report-summary,.report-card{background:#fff;border:1px solid #bbb;color:#111}.report-summary span,.report-summary small,.report-summary strong,.report-row span,.report-row b,.report-total,.report-total b{color:#111}}

body:has(.report-shell) .report-card{background:rgba(7,41,42,.58);color:#f3fbf6}
body:has(.report-shell) .report-row span{color:#e0f0e8}body:has(.report-shell) .report-row b{color:#fff}body:has(.report-shell) .report-total b{color:#d4f0df}body:has(.report-shell) .report-card.balances{background:rgba(16,61,55,.68)}
.print-report{display:none}
.print-page{background:#fff;color:#111;overflow-x:auto}.print-page main{width:1120px;max-width:none;margin:20px auto;padding:0 18px}.print-page .print-report-visible{display:block;color:#111}.print-actions{display:flex;gap:12px;margin-bottom:18px}.print-actions button,.print-actions a{border:1px solid #9aafa7;border-radius:8px;background:#edf6f0;color:#183d38;padding:10px 14px;text-decoration:none;font:inherit}.print-actions .ibon-link{background:#d7efdf;border-color:#79ad91;font-weight:700}.print-report-visible h1{text-align:center;font-size:24px;margin:10px 0 14px}.print-report-visible .print-labels{display:flex;justify-content:space-between;font-size:16px;margin:0 8% -1px}.print-report-visible table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.print-report-visible th,.print-report-visible td{border:1px solid #111;padding:7px 8px;min-height:28px;vertical-align:middle}.print-report-visible th:nth-child(1){width:18%}.print-report-visible th:nth-child(2){width:9%}.print-report-visible th:nth-child(3){width:31%}.print-report-visible th:nth-child(4){width:10%}.print-report-visible th:nth-child(5){width:22%}.print-report-visible th:nth-child(6){width:10%}.print-report-visible td:nth-child(even){text-align:right}.print-report-visible .print-total{text-align:center!important;font-size:16px;font-weight:700}.print-report-visible .signatures{display:flex;justify-content:space-between;border:1px solid #111;border-top:0;padding:35px 12% 60px;font-size:18px}
.entry-editor{margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.35);border-radius:16px;background:rgba(7,41,42,.55);color:#fff}.entry-editor summary{cursor:pointer;font-weight:700;margin-bottom:10px}.entry-editor form{display:grid;grid-template-columns:150px 1fr 100px 140px 70px;gap:8px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.18);align-items:center}.entry-editor input,.entry-editor select{min-height:36px;border-radius:7px;border:1px solid rgba(255,255,255,.42);padding:6px 8px;background:rgba(255,255,255,.85);color:#183d38;font:inherit}.entry-editor button{border:0;border-radius:7px;background:#bfe5cd;color:#123f35;padding:7px 8px}
@media print{ @page{size:A4 landscape;margin:10mm}body:has(.report-page){background:#fff;color:#111}body:has(.report-page)>*{display:none}.report-page main{display:block;margin:0;padding:0;max-width:none}.report-page .print-report{display:block;color:#111}.print-report h1{text-align:center;font-size:22px;margin:0 0 12px}.print-labels{display:flex;justify-content:space-between;font-size:15px;margin:0 70px -1px}.print-report table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.print-report th,.print-report td{border:1px solid #111;padding:5px 6px;height:22px;vertical-align:middle}.print-report th:nth-child(1){width:18%}.print-report th:nth-child(2){width:9%}.print-report th:nth-child(3){width:31%}.print-report th:nth-child(4){width:10%}.print-report th:nth-child(5){width:22%}.print-report th:nth-child(6){width:10%}.print-report td:nth-child(even){text-align:right}.print-total{text-align:center!important;font-size:14px;font-weight:700;height:30px!important}.signatures{display:flex;justify-content:space-between;border:1px solid #111;border-top:0;padding:28px 10% 45px;font-size:16px}.report-page .brand,.report-page footer,.back-link,.report-heading,.report-switcher,.report-summary,.report-grid,.editor-panel,.balance-editor{display:none}}
.report-switcher{display:flex;gap:8px;margin:10px 0 18px;flex-wrap:wrap}.report-switcher a{color:#d5ebe1;border:1px solid rgba(255,255,255,.3);border-radius:20px;padding:5px 12px;text-decoration:none;font-size:12px}.report-switcher a.active{background:#c9ead5;color:#123f35;border-color:#c9ead5}.method{color:#add1bf;font-size:10px;margin-left:4px}.report-row form{margin:0}.delete-entry{border:0;background:transparent;color:#a7d2be;font-size:18px;line-height:1;padding:0;opacity:.65}.delete-entry:hover{color:#fff;opacity:1}.editor-panel,.balance-editor{margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.35);border-radius:16px;background:rgba(7,41,42,.55);color:#fff}.editor-panel h2{margin:0 0 12px;font-size:18px}.entry-form{display:grid;grid-template-columns:110px 130px 1fr 110px 150px auto;gap:8px}.entry-form input,.entry-form select,.balance-form input{min-height:42px;border-radius:8px;border:1px solid rgba(255,255,255,.42);padding:8px 10px;background:rgba(255,255,255,.85);color:#183d38;font:inherit}.entry-form .primary,.balance-form .primary{min-height:42px;margin:0;font-size:13px}.balance-editor summary{cursor:pointer;font-weight:700}.balance-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:15px}.balance-form label{color:#e0f0e8}.balance-form input{display:block;width:100%;margin-top:4px}
.report-heading .print-link{display:inline-flex;align-items:center;justify-content:center;align-self:center;white-space:nowrap;min-width:150px;text-decoration:none}
@media(max-width:760px){.entry-form{grid-template-columns:1fr 1fr}.entry-form input[name="description"],.entry-form .primary{grid-column:1/-1}.balance-form{grid-template-columns:1fr 1fr}.report-heading .print-link{display:flex;width:100%;margin-top:14px}}
@media print{ @page{size:A4 landscape;margin:10mm}.print-actions{display:none}.print-page main{margin:0;padding:0;max-width:none}.print-report-visible h1{font-size:22px}.print-report-visible table{font-size:11px}.print-report-visible th,.print-report-visible td{padding:5px 6px}.print-report-visible .signatures{padding-top:28px;padding-bottom:45px}}
