/* Hammelk White Minimal UI — intentionally neutral, bright and low-noise. */
:root{
  --h-ink:#1f2937;
  --h-muted:#6b7280;
  --h-soft:#f7f8fa;
  --h-soft-2:#f3f4f6;
  --h-line:#e5e7eb;
  --h-line-strong:#d8dde4;
  --h-primary:#0f766e;
  --h-primary-hover:#0b625b;
  --h-primary-soft:#edf7f6;
  --h-danger:#b42318;
  --h-danger-soft:#fff4f2;
  --h-warning:#9a6700;
  --h-warning-soft:#fff9e8;
  --h-shadow:0 4px 18px rgba(17,24,39,.035);
  --ds-primary:var(--h-primary);
  --ds-primary-hover:var(--h-primary-hover);
  --ds-primary-soft:var(--h-primary-soft);
  --ds-bg:#fff;
  --ds-surface:#fff;
  --ds-text:var(--h-ink);
  --ds-muted:var(--h-muted);
  --ds-border:var(--h-line);
  --ds-shadow:var(--h-shadow);
  --primary:var(--h-primary);
  --primary-2:var(--h-primary-hover);
  --bg:#fff;
  --surface:#fff;
  --surface-2:var(--h-soft);
  --text:var(--h-ink);
  --muted:var(--h-muted);
  --line:var(--h-line);
  --shadow:var(--h-shadow);
}
html,body{background:#fff!important;color:var(--h-ink)}
body{background-image:none!important}
.app-shell,.workspace,.page-content{background:#fff!important}
.page-content{padding-top:24px}

/* Sidebar */
.app-shell .sidebar{
  background:#fff!important;color:var(--h-ink)!important;
  border-left:1px solid var(--h-line)!important;box-shadow:none!important;
}
.app-shell .brand{border-bottom-color:var(--h-line)!important}
.app-shell .brand-copy strong,.app-shell .brand-copy span{color:var(--h-ink)!important}
.app-shell .brand-separator{color:#b8bec7!important}
.app-shell .sidebar-property.suite-overview{
  background:#fff!important;border:1px solid var(--h-line)!important;box-shadow:none!important;
}
.app-shell .sidebar-property small,.app-shell .account-copy small{color:var(--h-muted)!important}
.app-shell .property-year{background:var(--h-soft)!important;color:#4b5563!important;border:1px solid var(--h-line)!important}
.app-shell .suite-overview-item{background:#fff!important;border:1px solid var(--h-line)!important;color:#374151!important}
.app-shell .organized-menu .menu-section{
  background:transparent!important;border:1px solid transparent!important;color:#4b5563!important;box-shadow:none!important;
}
.app-shell .organized-menu .menu-section>.icon{color:#7b8491!important}
.app-shell .organized-menu .menu-section:hover{background:var(--h-soft)!important;border-color:var(--h-line)!important;color:var(--h-ink)!important}
.app-shell .organized-menu .menu-section.active{
  background:var(--h-soft-2)!important;border-color:var(--h-line)!important;color:var(--h-ink)!important;
  box-shadow:inset -3px 0 var(--h-primary)!important;
}
.app-shell .organized-menu .menu-section.active>.icon{color:var(--h-primary)!important}
.app-shell .menu-open-mark{color:#9aa2ad!important}
.app-shell .sidebar-footer{border-top-color:var(--h-line)!important;background:#fff!important}
.app-shell .sidebar-account{color:var(--h-ink)!important}
.app-shell .avatar{background:var(--h-soft-2)!important;color:#374151!important;border:1px solid var(--h-line)!important}
.app-shell .logout-link{color:#9b4b45!important}
.app-shell .logout-link:hover{background:var(--h-danger-soft)!important;color:var(--h-danger)!important}

/* Topbar */
.app-shell .topbar,.app-shell .topbar.topbar-premium{
  background:#fff!important;border:1px solid var(--h-line)!important;border-top:0!important;
  box-shadow:none!important;backdrop-filter:none!important;
}
.app-shell .topbar::before,.app-shell .topbar::after{display:none!important}
.app-shell .topbar-premium .topbar-brand-name{color:#7a5d2f!important}
.app-shell .topbar-premium .topbar-title b{color:var(--h-ink)!important}
.app-shell .topbar-meta small{color:var(--h-muted)!important}
.app-shell .topbar-suite-chip{background:#fff!important;border:1px solid var(--h-line)!important;color:#4b5563!important;box-shadow:none!important}
.app-shell .icon-button{background:#fff!important;border:1px solid var(--h-line)!important;color:#4b5563!important;box-shadow:none!important}
.app-shell .icon-button:hover{background:var(--h-soft)!important;color:var(--h-ink)!important}

/* Universal surfaces */
.app-shell .panel,.app-shell .card,.app-shell .ds-card,.app-shell .settings-section-card,
.app-shell .maintenance-card,.app-shell .section-hub-card,.app-shell .section-hub-hero,
.app-shell .simple-card,.app-shell .bank-card,.app-shell .calendar-control-card,
.app-shell .calendar-month-card,.app-shell .calendar-agenda-card,.app-shell .calendar-settings-hero{
  background:#fff!important;border:1px solid var(--h-line)!important;box-shadow:var(--h-shadow)!important;
}
.app-shell .eyebrow,.app-shell .panel-kicker{color:#7a5d2f!important}
.app-shell h1,.app-shell h2,.app-shell h3,.app-shell h4{color:var(--h-ink)!important}
.app-shell p,.app-shell small,.app-shell .helper-text{color:var(--h-muted)}
.app-shell hr{border-color:var(--h-line)!important}

/* Inputs */
.app-shell input,.app-shell select,.app-shell textarea{
  background:#fff!important;color:var(--h-ink)!important;border:1px solid var(--h-line-strong)!important;box-shadow:none!important;
}
.app-shell input::placeholder,.app-shell textarea::placeholder{color:#a0a7b1!important}
.app-shell input:focus,.app-shell select:focus,.app-shell textarea:focus{
  border-color:#8abdb8!important;box-shadow:0 0 0 3px rgba(15,118,110,.08)!important;outline:none!important;
}
.app-shell input[type=checkbox],.app-shell input[type=radio]{accent-color:var(--h-primary)}

/* Buttons */
.app-shell .button.primary,.app-shell button.primary,
.app-shell button:not(.secondary):not(.ghost-danger):not(.danger):not(.icon-button):not(.modal-close):not(.sidebar-install):not(.text-button):not(.group-toggle):not(.sidebar-close):not(.menu-button):not(.button-secondary):not(.button-danger){
  background:var(--h-primary)!important;color:#fff!important;border-color:var(--h-primary)!important;box-shadow:none!important;
}
.app-shell .button.primary:hover,.app-shell button.primary:hover,
.app-shell button:not(.secondary):not(.ghost-danger):not(.danger):not(.icon-button):not(.modal-close):not(.sidebar-install):not(.text-button):not(.group-toggle):not(.sidebar-close):not(.menu-button):not(.button-secondary):not(.button-danger):hover{
  background:var(--h-primary-hover)!important;box-shadow:none!important;
}
.app-shell .button.secondary,.app-shell button.secondary,.app-shell .button.soft{
  background:#fff!important;color:#374151!important;border:1px solid var(--h-line-strong)!important;box-shadow:none!important;
}
.app-shell .button.secondary:hover,.app-shell button.secondary:hover,.app-shell .button.soft:hover{background:var(--h-soft)!important}
.app-shell .button.danger,.app-shell button.danger{background:#fff!important;color:var(--h-danger)!important;border:1px solid #f1c8c4!important;box-shadow:none!important}
.app-shell .button.danger:hover,.app-shell button.danger:hover{background:var(--h-danger-soft)!important}

/* Section hub / dashboard / settings */
.app-shell .section-hub-hero{background:#fff!important}
.app-shell .section-hub-icon,.app-shell .section-hub-card-icon,.app-shell .settings-section-icon,.app-shell .bank-emblem{
  background:var(--h-soft)!important;color:#5f6874!important;border:1px solid var(--h-line)!important;
}
.app-shell .section-hub-card:hover{background:#fbfcfd!important;border-color:#d8dde4!important;transform:none!important;box-shadow:0 5px 16px rgba(17,24,39,.05)!important}
.app-shell .section-hub-arrow{color:#9aa2ad!important}
.app-shell .dashboard-commandbar,.app-shell .settings-hero{
  background:#fff!important;color:var(--h-ink)!important;border:1px solid var(--h-line)!important;box-shadow:var(--h-shadow)!important;
}
.app-shell .dashboard-commandbar::before,.app-shell .dashboard-commandbar::after,.app-shell .settings-hero::before,.app-shell .settings-hero::after{display:none!important}
.app-shell .dashboard-commandbar *,.app-shell .settings-hero *{text-shadow:none!important}
.app-shell .rate-summary,.app-shell .lottery-cycle,.app-shell .design-preview,.app-shell .danger-panel{background:var(--h-soft)!important;border-color:var(--h-line)!important}
.app-shell .settings-jump-nav{background:#fff!important;border:1px solid var(--h-line)!important;box-shadow:none!important}
.app-shell .settings-jump-nav a{color:#4b5563!important}
.app-shell .settings-jump-nav a:hover{background:var(--h-soft)!important;color:var(--h-ink)!important}

/* Tables */
.app-shell .table-wrap,.app-shell table{background:#fff!important}
.app-shell th{background:var(--h-soft)!important;color:#4b5563!important;border-color:var(--h-line)!important}
.app-shell td{background:#fff!important;color:#374151!important;border-color:var(--h-line)!important}
.app-shell tbody tr:hover td{background:#fbfcfd!important}

/* Calendar: white grid with subtle status cues only */
.app-shell .calendar-hero,.app-shell .calendar-hero-pro,.app-shell .calendar-command-center{background:#fff!important;border-color:var(--h-line)!important;box-shadow:var(--h-shadow)!important}
.app-shell .calendar-range-metrics>*,.app-shell .calendar-cache-status,.app-shell .calendar-today{background:var(--h-soft)!important;border-color:var(--h-line)!important;color:#4b5563!important}
.app-shell .calendar-view-tabs{background:var(--h-soft)!important;border:1px solid var(--h-line)!important}
.app-shell .calendar-view-tabs button{background:transparent!important;color:#6b7280!important;border:0!important}
.app-shell .calendar-view-tabs button.active{background:#fff!important;color:var(--h-ink)!important;box-shadow:0 1px 4px rgba(17,24,39,.06)!important}
.app-shell .calendar-grid{background:var(--h-line)!important;gap:1px!important;border:1px solid var(--h-line)!important}
.app-shell .calendar-day{background:#fff!important;border:0!important;box-shadow:none!important;color:var(--h-ink)!important}
.app-shell .calendar-day:hover{background:#fbfcfd!important}
.app-shell .calendar-day.today{box-shadow:inset 0 0 0 2px rgba(15,118,110,.38)!important;background:#fbfefe!important}
.app-shell .calendar-day.holiday,.app-shell .calendar-day.friday{background:#fffdfd!important}
.app-shell .calendar-week-head{background:var(--h-soft)!important;color:#6b7280!important;border-color:var(--h-line)!important}
.app-shell .day-item{background:var(--h-soft)!important;border-color:var(--h-line)!important;color:#4b5563!important}
.app-shell .day-item.period{background:#f7fafc!important;border-right:3px solid #8fb4cb!important}
.app-shell .day-item.event{background:#fbf8f2!important;border-right:3px solid #c6aa7a!important}
.app-shell .day-item.occasion{background:#fafafa!important}
.app-shell .holiday-mark{color:#b34a4a!important}
.app-shell .calendar-day-panel,.app-shell .calendar-period-modal{background:#fff!important;border-color:var(--h-line)!important;box-shadow:-12px 0 34px rgba(17,24,39,.08)!important}
.app-shell .calendar-overlay{background:rgba(17,24,39,.22)!important;backdrop-filter:blur(2px)!important}
.app-shell .panel-section,.app-shell .period-form-section{background:#fff!important;border-color:var(--h-line)!important}
.app-shell .suite-choice{background:#fff!important;border-color:var(--h-line)!important;color:#4b5563!important}
.app-shell .suite-choice:has(input:checked){background:var(--h-soft)!important;border-color:#aeb7c2!important;color:var(--h-ink)!important}

/* Bank / finance */
.app-shell .bank-overview>*,.app-shell .bank-balance-card,.app-shell .bank-opening-section,.app-shell .import-help-card,
.app-shell .ledger-current-balance,.app-shell .reconcile-book-preview{background:#fff!important;border-color:var(--h-line)!important;box-shadow:none!important}
.app-shell .bank-usage-options label{background:#fff!important;border-color:var(--h-line)!important;color:#4b5563!important}
.app-shell .bank-usage-options label:has(input:checked){background:var(--h-soft)!important;border-color:#b6c0ca!important;color:var(--h-ink)!important}
.app-shell .bank-usage-tag{background:var(--h-soft)!important;color:#4b5563!important}
.app-shell .bank-suggestions{border-color:var(--h-line)!important;box-shadow:0 10px 28px rgba(17,24,39,.08)!important}
.app-shell .bank-suggestions button:hover{background:var(--h-soft)!important}

/* Flash / loader */
.app-shell .flash{box-shadow:none!important;border:1px solid var(--h-line)!important}
.app-shell .flash.success{background:#f3fbf7!important;color:#246b4c!important;border-color:#d8eee1!important}
.app-shell .flash.danger{background:var(--h-danger-soft)!important;color:#9b2c25!important;border-color:#f1cfcb!important}
.app-shell .flash.warning{background:var(--h-warning-soft)!important;color:#7b5b10!important;border-color:#f1dfaa!important}
.global-wait-overlay{background:rgba(17,24,39,.24)!important;backdrop-filter:blur(2px)!important}
.global-wait-card{background:#fff!important;border:1px solid var(--h-line)!important;box-shadow:0 18px 45px rgba(17,24,39,.14)!important}
.global-wait-spinner{border-color:#e5e7eb!important;border-top-color:var(--h-primary)!important}

/* Mobile dock */
.app-shell .mobile-dock,.mobile-dock{background:#fff!important;border-top:1px solid var(--h-line)!important;box-shadow:0 -4px 16px rgba(17,24,39,.035)!important}
.mobile-dock a,.mobile-dock button{color:#6b7280!important}
.mobile-dock a.active{background:var(--h-soft)!important;color:var(--h-primary)!important}
.sidebar-backdrop{background:rgba(17,24,39,.26)!important}

/* Backup manager */
.backup-page{display:grid;gap:18px;max-width:1180px;margin:0 auto}
.plain-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px;border:1px solid var(--h-line);border-radius:18px;background:#fff}
.plain-page-head h1{margin:6px 0 8px}.plain-page-head p{margin:0;max-width:760px;line-height:1.9}
.security-badge{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid #c9dfdc;border-radius:999px;background:#f5fbfa;color:var(--h-primary);font-weight:800;direction:ltr}
.backup-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.summary-tile{display:grid;gap:8px;padding:18px;border:1px solid var(--h-line);border-radius:15px;background:#fff}.summary-tile span{color:var(--h-muted);font-size:.78rem}.summary-tile strong{font-size:1.05rem;color:var(--h-ink)}
.backup-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.simple-card{padding:22px;border-radius:18px}.simple-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.simple-card-head h2{margin:5px 0 0;font-size:1.05rem}
.form-stack{display:grid;gap:12px}.form-stack label{display:grid;gap:7px}.form-stack label>span{font-weight:800;font-size:.78rem;color:#4b5563}.two-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.inline-notice{padding:10px 12px;border:1px solid var(--h-line);border-radius:11px;background:var(--h-soft);color:#667085;font-size:.75rem;line-height:1.8}
.status-line{display:flex;gap:8px;align-items:center;padding:10px 12px;margin-bottom:14px;border-radius:11px;font-size:.76rem}.status-line span{width:8px;height:8px;border-radius:50%}.status-line.success{background:#f4fbf7;color:#346a50;border:1px solid #dceee3}.status-line.success span{background:#4e9a6f}.status-line.warning{background:#fff9e8;color:#795e1c;border:1px solid #f1dfaa}.status-line.warning span{background:#c99624}
.switch-row{display:flex!important;align-items:center;justify-content:space-between;gap:18px;padding:13px 14px;border:1px solid var(--h-line);border-radius:12px;background:#fff}.switch-row>span{display:grid;gap:3px}.switch-row input{width:20px;height:20px;min-height:20px}
.backup-list{display:grid;gap:10px}.backup-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--h-line);border-radius:13px;background:#fff}.backup-file-main{display:grid;gap:5px;min-width:0}.backup-file-main strong{overflow-wrap:anywhere}.backup-file-main small{color:var(--h-muted)}.backup-file-main code{font-size:.7rem;color:#818895;direction:ltr;text-align:right}.backup-row-actions{display:flex;align-items:center;gap:8px}.delete-backup-form{display:flex;align-items:center;gap:7px}.delete-backup-form input{width:130px;min-height:34px!important;padding:6px 9px!important}.button.small{min-height:34px!important;padding:6px 11px!important;font-size:.75rem!important}
.restore-warning{padding:13px 15px;margin-bottom:14px;border:1px solid #f0d2ce;border-radius:12px;background:#fff8f7}.restore-warning strong{color:#9b2c25}.restore-warning p{margin:5px 0 0;line-height:1.8}.cell-note{display:block;margin-top:4px}.backup-page code{font-family:Consolas,monospace}

@media(max-width:980px){.backup-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-actions-grid{grid-template-columns:1fr}}
@media(max-width:700px){.plain-page-head{padding:18px}.security-badge{display:none}.backup-summary-grid{grid-template-columns:1fr 1fr}.two-field-grid{grid-template-columns:1fr}.backup-row{align-items:stretch;flex-direction:column}.backup-row-actions,.delete-backup-form{width:100%}.delete-backup-form input{flex:1;width:auto}.backup-row-actions{flex-wrap:wrap}}
@media(max-width:460px){.backup-summary-grid{grid-template-columns:1fr}}

/* Login follows the same white minimal language. */
.auth-page.login-v4{background:#fff!important;color:var(--h-ink)!important}
.login-v4 .login-v4__story{background:#f7f8fa!important;color:var(--h-ink)!important;border-left:1px solid var(--h-line)!important}
.login-v4 .login-v4__story::before,.login-v4 .login-v4__story::after{display:none!important}
.login-v4 .login-v4__brand-mark{background:#fff!important;color:var(--h-primary)!important;border:1px solid var(--h-line)!important;box-shadow:none!important}
.login-v4 .login-v4__brand-copy strong,.login-v4 .login-v4__story-title{color:var(--h-ink)!important}
.login-v4 .login-v4__brand-copy small,.login-v4 .login-v4__story-lead,.login-v4 .login-v4__story-footer,.login-v4 .login-v4__scene-caption{color:var(--h-muted)!important}
.login-v4 .login-v4__kicker,.login-v4 .login-v4__story-title em{color:var(--h-primary)!important}
.login-v4 .login-v4__kicker-line{background:var(--h-primary)!important}
.login-v4 .login-v4__scene{background:#fff!important;border:1px solid var(--h-line)!important;box-shadow:none!important;backdrop-filter:none!important}
.login-v4 .login-v4__art-soft{stroke:#b9c1ca!important}.login-v4 .login-v4__art-gold{stroke:#6b8f89!important}.login-v4 .login-v4__art-dot{fill:#6b8f89!important}
.login-v4 .login-v4__story-footer{border-top-color:var(--h-line)!important}.login-v4 .login-v4__story-footer b{color:var(--h-primary)!important}
.login-v4 .login-v4__form-pane{background:#fff!important}
.login-v4 .login-v4__card{border:1px solid var(--h-line)!important;border-radius:22px!important;box-shadow:0 8px 28px rgba(17,24,39,.055)!important}
.login-v4 .login-v4__welcome{background:var(--h-soft)!important;color:#4b5563!important}.login-v4 .login-v4__welcome-dot{background:var(--h-primary)!important;box-shadow:none!important}
.login-v4 .login-v4__card-header h2{color:var(--h-ink)!important}.login-v4 .login-v4__card-header p{color:var(--h-muted)!important}
.login-v4 .login-v4__account-type legend,.login-v4 .login-v4__field>label{color:#4b5563!important}
.login-v4 .login-v4__segmented{background:var(--h-soft)!important;border-color:var(--h-line)!important}
.login-v4 .login-v4__segmented label>span{color:#6b7280!important}.login-v4 .login-v4__segmented input:checked+span{background:#fff!important;border-color:var(--h-line-strong)!important;color:var(--h-ink)!important;box-shadow:none!important}
.login-v4 .login-v4__field-control input:not([type=checkbox]){background:#fff!important;color:var(--h-ink)!important;border-color:var(--h-line-strong)!important}
.login-v4 .login-v4__field-control input:not([type=checkbox]):focus{border-color:#8abdb8!important;box-shadow:0 0 0 3px rgba(15,118,110,.08)!important}
.login-v4 .login-v4__field-icon{stroke:#8b949f!important}.login-v4 .login-v4__password-toggle:hover{background:var(--h-soft)!important;color:var(--h-primary)!important}
.login-v4 .login-v4__submit.button{background:var(--h-primary)!important;box-shadow:none!important}.login-v4 .login-v4__submit:hover{background:var(--h-primary-hover)!important;transform:none!important;box-shadow:none!important}
.login-v4 .login-v4__help{background:var(--h-soft)!important;color:#667085!important}.login-v4 .login-v4__help svg{color:#7b8491!important}.login-v4 .login-v4__copyright{color:#8a929d!important}
