
/* assets/login-button-contrast-20261020.css */
/* Preserve original login design; improve only submit button contrast. */
#loginView #loginForm>button[type=submit]{background:#226d4e!important;border:1px solid #3d8a65!important;color:#fff!important;min-height:52px;opacity:1!important;box-shadow:0 3px 10px #10291b20}
#loginView #loginForm>button[type=submit]:is(:hover,:focus-visible){background:#2c805c!important;border-color:#86c6a5!important}
#loginView #loginForm>button[type=submit] :is(span,b,svg){color:#fff!important;opacity:1!important}
#loginView #loginForm>button[type=submit]:disabled{opacity:.65!important;cursor:wait}

/* assets/login-reminders.css */
dialog.login-reminder-dialog{box-sizing:border-box;width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:0;border:1px solid #bed1c5;border-radius:16px;background:#fff;color:#193e2d;box-shadow:0 24px 80px #0005;font:14px/1.5 system-ui,sans-serif}dialog.login-reminder-dialog::backdrop{background:#071d14a8;backdrop-filter:blur(3px)}.reminder-dialog-head{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid #78978444}.reminder-dialog-head small{font-size:10px;letter-spacing:1.5px}.reminder-dialog-head h2{font-size:24px;margin:4px 0;color:inherit}.reminder-dialog-head h2 span{font-size:14px;opacity:.7}.reminder-dialog-head>button{background:transparent;border:0;color:inherit;font-size:24px;min-width:44px;min-height:44px}.reminder-dialog-items{overflow-y:auto;max-height:55dvh;padding:8px 16px}.reminder-dialog-items .pdc-notification-item{width:100%;box-sizing:border-box}.reminder-dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #78978444}.reminder-dialog-footer button{padding:11px 16px;min-height:44px;border:1px solid #7c9b89;border-radius:8px;background:transparent;color:inherit;font:600 13px system-ui;margin:0;cursor:pointer}.reminder-dialog-footer [data-dismiss-today]{background:#216347;color:#fff;border-color:#216347}html[data-ui-theme=dark] dialog.login-reminder-dialog{background:#1b3026!important;color:#e4f1e8!important;border-color:#4c6c58!important}html[data-ui-theme=dark] .reminder-dialog-items .pdc-notification-item{color:#e4f1e8;background:#1b3026}.login-reminder-dialog button:focus-visible{outline:3px solid #6bac89;outline-offset:2px}

.reminder-dialog-items .pdc-notification-item{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:7px 16px;text-align:left;padding:14px 10px!important;margin:0!important;border:0!important;border-bottom:1px solid #78978444!important;border-radius:0!important;background:transparent!important;color:inherit!important;font:inherit;cursor:pointer}.reminder-dialog-items .pdc-notification-item strong{font-size:14px}.reminder-dialog-items .pdc-notification-item .amount{font-weight:700}.reminder-dialog-items .pdc-notification-meta{color:inherit;opacity:.75;font-size:12px}.reminder-dialog-items .pdc-due-label{font-size:11px;font-style:normal;justify-self:end;background:#2f865b22;color:inherit;padding:3px 8px;border-radius:12px}.reminder-dialog-items .pdc-due-label.overdue{background:#c16b4528}.reminder-dialog-head>button{border-radius:7px;cursor:pointer}

/* assets/client-portal-dark-20261020.css */
/* Client portal dark theme; light-theme design is unchanged. */
html[data-ui-theme=dark] .client-portal{color:#e5f0e9}
html[data-ui-theme=dark] .client-portal :is(.client-portal-card,.client-summary-grid>article){background:#1b3026!important;border-color:#486552!important;color:#e5f0e9!important}
html[data-ui-theme=dark] .client-portal .client-portal-card>h3{background:#294b3a!important;color:#ecf6ef!important;border-color:#486552!important}
html[data-ui-theme=dark] .client-portal .client-summary-grid strong{color:#a9e0c0!important}
html[data-ui-theme=dark] .client-portal :is(.client-summary-grid>article>span,.client-summary-grid small,dt){color:#b1c8b9!important}
html[data-ui-theme=dark] .client-portal :is(dd,.client-portal-card h4){color:#e5f0e9!important}
html[data-ui-theme=dark] .client-portal .client-portal-card dl>div{border-color:#486552!important}
html[data-ui-theme=dark] .client-portal .client-portal-tabs{border-color:#486552!important}
html[data-ui-theme=dark] .client-portal .client-portal-tabs button{background:transparent!important;color:#bcd1c4!important}
html[data-ui-theme=dark] .client-portal .client-portal-tabs button.active{background:#2b5943!important;color:#fff!important}
html[data-ui-theme=dark] .client-portal .client-portal-tabs button:hover{background:#244332!important;color:#f0f7f2!important}
html[data-ui-theme=dark] .client-portal .portal-text-action{background:transparent!important;color:#9cd8b5!important}
html[data-ui-theme=dark] .client-portal .client-portal-card :is(input,select,textarea){background:#11271c!important;border-color:#597663!important;color:#e9f5ed!important}
html[data-ui-theme=dark] .client-portal .client-portal-hero{background:linear-gradient(110deg,#123e32,#195c48)!important;color:#fff!important}
html[data-ui-theme=dark] .client-portal .client-portal-hero :is(h2,p,small){color:#edf7f1!important}

/* assets/gbp-review-layout-20261020.css */
.gbp-review-summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;background:#eef5f0;border:1px solid #c9d9cf;border-radius:10px;margin-bottom:16px}.gbp-review-summary small{display:block;font-size:12px;color:#5e7568}.gbp-review-summary strong{display:block;font-size:24px;color:#194c35;font-variant-numeric:tabular-nums;white-space:nowrap}.gbp-review-description{margin:4px 0 16px;line-height:1.6;font-size:13px}.gbp-review-note{padding:12px 14px;border-left:3px solid #559377;background:#e9f2ec;border-radius:5px;font-size:13px;line-height:1.6;margin-bottom:18px;color:#375747}.gbp-review-fields{display:grid;gap:18px}.gbp-review-fields>label{margin:0}.gbp-review-fields .gbp-review-confirm{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:11px;padding:14px;border:1px solid #b7cdc0;border-radius:9px;line-height:1.6;font-size:13px;cursor:pointer}.gbp-review-confirm input[type=checkbox]{width:19px!important;height:19px!important;min-height:19px!important;flex:0 0 19px;margin:2px 0 0!important;accent-color:#28724e}.gbp-review-confirm span{display:block}html[data-ui-theme=dark] .gbp-review-summary{background:#213d2e;border-color:#4a6855}html[data-ui-theme=dark] .gbp-review-summary strong{color:#b8e7ca}html[data-ui-theme=dark] .gbp-review-summary small{color:#b5cbbd}html[data-ui-theme=dark] .gbp-review-note{background:#223a2b;color:#cce1d3}html[data-ui-theme=dark] .gbp-review-confirm{border-color:#52725c;background:#1b3026}@media(max-width:480px){.gbp-review-summary{align-items:flex-start;flex-direction:column}}

/* assets/drive-backup-20261020.css */
.drive-backup-panel{--drive-border:#d4dfda;--drive-muted:#53675e;--drive-input:#fff;--drive-text:#192c24;--drive-warn:#9b4c17}
html[data-ui-theme="dark"] .drive-backup-panel{--drive-border:#496455;--drive-muted:#b2c9bd;--drive-input:#15271e;--drive-text:#e5f1e9;--drive-warn:#ffcc91}
.drive-backup-panel .backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}
.drive-backup-panel .backup-card{padding:24px;border:1px solid var(--drive-border);border-radius:14px;min-width:0}
.drive-backup-panel .backup-card label{display:grid;gap:8px;margin:16px 0;font-size:14px;font-weight:600;color:var(--drive-text)}
.drive-backup-panel .backup-card input,.drive-backup-panel .backup-card select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--drive-border)!important;border-radius:8px;background:var(--drive-input)!important;color:var(--drive-text)!important;font:inherit}
.drive-backup-panel .backup-card [hidden]{display:none!important}
.drive-backup-panel .drive-eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--drive-muted)}
.drive-backup-panel h3{margin:16px 0 10px}.drive-backup-panel p{line-height:1.6}
.drive-backup-panel .muted,.drive-backup-panel small{color:var(--drive-muted)!important}
.drive-backup-panel .needs-attention,.drive-backup-panel .drive-backup-error{color:var(--drive-warn)!important}
.drive-backup-panel td small{display:block;max-width:480px;margin-top:6px;white-space:normal;line-height:1.5}
.drive-backup-panel .drive-account{font-weight:600;color:var(--drive-text)}
.drive-backup-panel .row-actions{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.drive-backup-panel .drive-setup{margin-top:24px;border-top:1px solid var(--drive-border);padding-top:16px}.drive-backup-panel summary{cursor:pointer;font-weight:600;color:var(--drive-text)}
.drive-backup-panel .drive-copy{display:flex;gap:8px}.drive-backup-panel .drive-copy input{flex:1}
.drive-backup-panel .btn.primary{background:#17694e!important;color:#fff!important;border:1px solid #2f8a69!important;min-height:42px}
@media(max-width:800px){.drive-backup-panel .backup-grid{grid-template-columns:1fr}.drive-backup-panel .backup-card{padding:18px}.drive-backup-panel .settings-panel-head{gap:12px;flex-wrap:wrap}}

.drive-backup-panel .backup-card>a,.drive-backup-panel .drive-setup a{color:#17694e;text-decoration:underline}html[data-ui-theme="dark"] .drive-backup-panel .drive-setup a{color:#a4e7cb}.drive-backup-panel form>small{display:block;margin-top:14px}.drive-backup-panel input[type="time"]{color-scheme:light}html[data-ui-theme="dark"] .drive-backup-panel input[type="time"]{color-scheme:dark}

/* Backup history actions: keep existing handlers, one consistent icon per button. */
.drive-backup-panel td:last-child{white-space:nowrap}
.drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("],[onclick^="removeSystemBackup("]){appearance:none!important;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-height:34px;margin:2px 0;padding:7px 11px!important;border:1px solid #d3dfd9!important;border-radius:8px!important;background:#f3f7f5!important;color:#2b5041!important;font:600 12px/1.2 'DM Sans',sans-serif!important;box-shadow:none!important;cursor:pointer;vertical-align:middle;transition:background .15s,border-color .15s}
.drive-backup-panel button[onclick^="removeSystemBackup("]{margin-left:6px;border-color:#eed2ce!important;background:#fff7f5!important;color:#ae4038!important}
.drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("],[onclick^="removeSystemBackup("]) :is(svg,.lo-icon){display:none!important}
.drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("],[onclick^="removeSystemBackup("])::before{content:"";display:block;width:15px;height:15px;flex:0 0 15px;background:currentColor}
.drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("]):hover{background:#e6f1eb!important;border-color:#a9c8b8!important}
.drive-backup-panel button[onclick^="removeSystemBackup("]:hover{background:#fce8e4!important;border-color:#d9a49d!important}
.drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("],[onclick^="removeSystemBackup("]):focus-visible{outline:2px solid #3c9974!important;outline-offset:3px}
html[data-ui-theme="dark"] .drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("]){background:#203d30!important;border-color:#456553!important;color:#d3e9dd!important}
html[data-ui-theme="dark"] .drive-backup-panel button[onclick^="removeSystemBackup("]{background:#342822!important;border-color:#785148!important;color:#f0afa5!important}
html[data-ui-theme="dark"] .drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("]):hover{background:#2b4c3c!important;border-color:#739480!important}
html[data-ui-theme="dark"] .drive-backup-panel button[onclick^="removeSystemBackup("]:hover{background:#49302b!important;border-color:#bd8074!important}

.drive-backup-panel button:is([onclick^="restoreSystemBackup("],[onclick^="restoreModularBackup("])::before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%2010a9%209%200%201%201%202%208M3%204v6h6%27%2F%3E%3Cpath%20d%3D%27M12%207v5l3%202%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%2010a9%209%200%201%201%202%208M3%204v6h6%27%2F%3E%3Cpath%20d%3D%27M12%207v5l3%202%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat}

.drive-backup-panel button[onclick^="removeSystemBackup("]::before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%206h18M9%206V3h6v3M5%206l1%2015h12l1-15M10%2010v7M14%2010v7%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%206h18M9%206V3h6v3M5%206l1%2015h12l1-15M10%2010v7M14%2010v7%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat}

.drive-backup-panel .company-backup-card{margin:18px 0;display:grid;grid-template-columns:1fr minmax(260px,420px);gap:24px;align-items:center}.drive-backup-panel .company-backup-card p{margin:8px 0}.drive-backup-panel .company-backup-label{display:inline-block;padding:7px 9px;font-size:12px;color:var(--drive-muted)}.drive-backup-panel button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:800px){.drive-backup-panel .company-backup-card{grid-template-columns:1fr;gap:8px}}

.drive-backup-panel .backup-restore-summary{padding:16px;margin:16px 0;border:1px solid var(--drive-border);border-radius:10px}.backup-restore-summary small{display:block;margin-top:6px}
