/* Local appearance preference. Light mode keeps the published visual unchanged.
   Material colors, bitmap content, canvas pixels and business state are never filtered. */
.preferences-panel .preference-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
.preference-control{display:flex;flex-direction:column;gap:8px;min-width:0;max-width:100%;font-size:13px;line-height:1.5}
.preference-control select{display:block;width:100%;min-width:0;max-width:100%;min-height:44px;white-space:normal}
.preferences-panel .field-hint{line-height:1.7;overflow-wrap:anywhere}
.login-card .login-preferences{display:flex!important;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;height:auto;min-height:44px;margin:0 0 16px}
.login-preferences .preference-control{flex-direction:row;align-items:center;gap:7px;font-size:12px}
.login-preferences .preference-control select{width:auto;max-width:150px;min-height:36px}
.login-preferences #language{max-width:150px;min-height:36px}
@media(max-width:600px){.preferences-panel .preference-fields{grid-template-columns:1fr;gap:16px}.login-card .login-preferences{gap:8px}.login-preferences .preference-control select{max-width:130px}}

/* Three layers: primitive graphite colors, semantic surfaces, component tokens. */
html[data-appearance='dark']{
  color-scheme:dark;
  --appearance-graphite-950:#14151a;
  --appearance-graphite-900:#1c1e25;
  --appearance-graphite-850:#242731;
  --appearance-graphite-800:#2e3240;
  --appearance-gray-100:#f3f2f8;
  --appearance-gray-300:#bec2d0;
  --appearance-gray-500:#949aaa;
  --appearance-violet-200:#ccb7ff;
  --appearance-violet-700:#7154d9;
  --appearance-bg:var(--appearance-graphite-950);
  --appearance-surface:var(--appearance-graphite-900);
  --appearance-raised:var(--appearance-graphite-850);
  --appearance-field:var(--appearance-graphite-850);
  --appearance-line:#3b3f4d;
  --appearance-ink:var(--appearance-gray-100);
  --appearance-muted:var(--appearance-gray-300);
  --appearance-accent:var(--appearance-violet-200);
  --appearance-selected:#352b4e;
  --appearance-shadow:0 8px 24px #0003;
  --appearance-success-bg:#213a30;
  --appearance-success-ink:#a9dfbd;
  --appearance-warning-bg:#423320;
  --appearance-warning-ink:#f1ca86;
  --appearance-danger-bg:#422730;
  --appearance-danger-ink:#ffb4bb;
  --appearance-info-bg:#29344b;
  --appearance-info-ink:#b9cdf5;
  --bg:var(--appearance-bg);
  --page:var(--appearance-bg);
  --surface:var(--appearance-surface);
  --subtle:var(--appearance-raised);
  --ink:var(--appearance-ink);
  --page-ink:var(--appearance-ink);
  --muted:var(--appearance-muted);
  --line:var(--appearance-line);
  --purple-soft:var(--appearance-selected);
  --accent-ink:#fff;
  --ds-page:var(--appearance-bg);
  --ds-panel:var(--appearance-surface);
  --ds-ink:var(--appearance-ink);
  --ds-muted:var(--appearance-muted);
  --ds-edge:var(--appearance-line);
  --ds-raised:inset 0 1px 0 #ffffff08,0 4px 14px #0002;
  --ds-inset:inset 0 1px 4px #0002;
  --emboss-page:var(--appearance-bg);
  --emboss-panel:var(--appearance-surface);
  --emboss-ink:var(--appearance-ink);
  --emboss-muted:var(--appearance-muted);
  --emboss-edge:var(--appearance-line);
  --emboss-raised:var(--ds-raised);
  --emboss-inset:var(--ds-inset);
  --emboss-float:var(--appearance-shadow);
  --cj-graphite:var(--appearance-ink);
  --cj-secondary:var(--appearance-muted);
  --cj-environment:var(--appearance-bg);
  --cj-content:var(--appearance-surface);
  --cj-focus:var(--appearance-raised);
  --cj-line:var(--appearance-line);
  --cj-line-dark:var(--appearance-line);
  --focus-canvas:var(--appearance-bg);
  --focus-glass:var(--appearance-surface);
  --focus-line:var(--appearance-line);
  background:var(--appearance-bg);
  color:var(--appearance-ink);
  scrollbar-color:#525868 var(--appearance-surface);
}
html[data-appearance='dark'] body{background:var(--appearance-bg);color:var(--appearance-ink)}
html[data-appearance='dark'] .shell{
  --bg:var(--appearance-bg)!important;
  --surface:var(--appearance-surface)!important;
  --ink:var(--appearance-ink)!important;
  --page-ink:var(--appearance-ink)!important;
  --accent-ink:#fff!important;
  --muted:var(--appearance-muted)!important;
  --line:var(--appearance-line)!important;
  --purple-soft:var(--appearance-selected)!important;
  --gw-ink:var(--appearance-ink);
  --gw-muted:var(--appearance-muted);
  --gw-line:var(--appearance-line);
  --os-violet:var(--appearance-accent);
  --os-amber:var(--appearance-warning-ink);
  --os-orange:var(--appearance-danger-ink);
  --os-stone:var(--appearance-muted);
  --focus-canvas:var(--appearance-bg);
  --focus-glass:var(--appearance-surface);
  --focus-line:var(--appearance-line);
  background:var(--appearance-bg)!important;
  color:var(--appearance-ink);
}
html[data-appearance='dark'] :is(.panel,.stat-card,.sidebar,.topbar,.map-bottom,.local-card,.editor-toolbar,.editor-inspector,.modal,.modal-heading,.modal-footer,.server-setup,.setup-guide,.account-panel,.license-history){
  background:var(--appearance-surface)!important;
  color:var(--appearance-ink)!important;
  border-color:var(--appearance-line)!important;
  box-shadow:none;
}
html[data-appearance='dark'] :is(.panel-heading,.floor-filters,.history-foot,.note-block,.note-footer,.package-row,.control-block,.seat-identity,.account-notice,.store-user,.tool-cluster,.settings-panel hr,.table-scroll td,.table-scroll th,.quick-seat-number-preview td,.quick-seat-number-preview th){border-color:var(--appearance-line)!important}
html[data-appearance='dark'] :is(.page-heading h1,.panel h2,.panel h3,.panel label,.stat-value,.shop-clock .clock-digits,.clock-digits,.detail-panel h3,.list-seat-number,.history-summary strong,.table-scroll strong,.license-readonly,.server-setup,.document-title #project-name){color:var(--appearance-ink)!important}
html[data-appearance='dark'] :is(.muted,.field-hint,.field,.hint,.eyebrow,.breadcrumb,.breadcrumb strong,.page-heading p,.page-footer,.stat-top,.stat-caption,.stat-value>span,.count-badge,.draft-badge,.editor-hint,.inspector-empty p,.tool-cluster>span,.operating-meta,.summary-item span,.shop-clock>span,.shop-clock small,.server-status,.history-foot,.table-sub,.ticket,.seat-identity p,.seat-identity h3 span,.note-block>div>span,.note-footer>span,.session-disclosure,.note-disclosure,.layout-summary>div span,.settings-notes,.package-row span,.local-title,.local-card p,.store-user span:not(.local-online),.brand small,.time-zone,.time-zone span,.account-heading p,.account-panel dt,.account-notice,.license-history time,.license-history small,.setup-brand span,.setup-steps li,.setup-guide li,.setup-next p,.setup-next>span){color:var(--appearance-muted)!important}
html[data-appearance='dark'] :is(.sidebar .nav-item,.nav-item .icon,.help-link,.icon-btn,.btn.ghost,.number-filter,.zone-tab,.view-switch button,.focus-view-switch button,.legend-filter){color:var(--appearance-muted)!important}
html[data-appearance='dark'] :is(.sidebar .nav-item.active,.sidebar .nav-item:hover,.zone-tab.active,.zone-tab.selected,.number-filter.active,.legend-filter[aria-pressed=true],.view-switch .selected,.focus-view-switch .selected,.duration.selected,.editor-toolbar .btn.selected,.os-editor-tools .btn.selected,.seat-list-item.chosen){
  background:var(--appearance-selected)!important;
  color:var(--appearance-accent)!important;
  border-color:#7b649f!important;
  box-shadow:none!important;
}
html[data-appearance='dark'] .sidebar .nav-item.active .icon{color:var(--appearance-accent)!important;background:transparent!important}
html[data-appearance='dark'] :is(.nav-item:hover,.icon-btn:hover,.btn.ghost:hover,.summary-item:hover,.summary-item.selected,.legend-filter:hover){background:var(--appearance-raised)!important}
html[data-appearance='dark'] :is(.count-badge,.draft-badge,.view-switch,.focus-view-switch,.avatar,.inspector-empty>span,.layout-summary>div,.setup-steps b,.setup-guide b,.storage-box,.search-box,.server-setup .legacy-options,.time-zone span){background:var(--appearance-raised)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] :is(.text-btn,.backup-link,.selection-progress,.avatar,.setup-guide li.current,.number-filter.active,.btn.soft){color:var(--appearance-accent)!important}
html[data-appearance='dark'] :is(.btn.outline,.btn.soft,.btn.small.outline,.duration,.sidebar-toggle,.license-readonly a,.license-readonly button){background:var(--appearance-raised)!important;border-color:var(--appearance-line)!important;color:var(--appearance-ink)!important;box-shadow:none}
html[data-appearance='dark'] :is(.btn.outline:hover,.duration:hover,.sidebar-toggle:hover){background:var(--appearance-selected)!important;border-color:#7b649f!important;color:var(--appearance-accent)!important}
html[data-appearance='dark'] :is(.btn.primary,.package-choice.package-selected){color:#fff!important;background:var(--purple,var(--appearance-violet-700))!important;box-shadow:none!important}
html[data-appearance='dark'] .shell .package-shortcuts .package-choice.package-selected{border-color:var(--appearance-accent)!important;box-shadow:inset 0 0 0 2px #ffffff35!important}
html[data-appearance='dark'] :is(.btn.danger-outline,.form-error){color:var(--appearance-danger-ink)!important;border-color:#99616a!important;background:transparent}
html[data-appearance='dark'] .btn.danger-outline:hover{background:var(--appearance-danger-bg)!important}
html[data-appearance='dark'] :is(button,a,input,select,textarea,summary,[role=button]):focus-visible{outline:3px solid var(--appearance-accent)!important;outline-offset:3px}
html[data-appearance='dark'] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea){
  color:var(--appearance-ink)!important;background:var(--appearance-field)!important;
  border-color:var(--appearance-line)!important;box-shadow:none;
}
html[data-appearance='dark'] :is(input,textarea)::placeholder{color:var(--appearance-gray-500)!important;opacity:1}
html[data-appearance='dark'] :is(input,select,textarea):focus{border-color:var(--appearance-accent)!important;box-shadow:0 0 0 3px #b8a0ee24!important}
html[data-appearance='dark'] input[type=checkbox]{accent-color:var(--appearance-violet-700)}
html[data-appearance='dark'] .search-box input{background:transparent!important;border:0!important;box-shadow:none!important}
html[data-appearance='dark'] .modal-overlay{background:#080a10b8!important}
html[data-appearance='dark'] .modal-body{background:var(--appearance-surface);color:var(--appearance-ink)}
html[data-appearance='dark'] :is(#toast,#notice){background:var(--appearance-raised)!important;color:var(--appearance-ink)!important;border:1px solid var(--appearance-line);box-shadow:var(--appearance-shadow)}
html[data-appearance='dark'] :is(.modal,.modal-body,.modal-footer,.preferences-panel,.preference-control){overflow-wrap:anywhere}

/* Operating details: keep each semantic state distinct and readable. */
html[data-appearance='dark'] :is(.timer-card,.control-block,.duration-options,.free-seat-options,.seat-list-item,.storage-box){background:var(--appearance-raised)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .timer-card strong{color:var(--appearance-ink)!important}
html[data-appearance='dark'] :is(.timer-card>span,.timer-card>div,.control-caption,.empty-state,.empty-state p,.empty-detail,.history-summary span){color:var(--appearance-muted)!important}
html[data-appearance='dark'] :is(.timer-card.overdue,.alert-strip,.seat-notice.expired,.acknowledge-btn){background:var(--appearance-danger-bg)!important;color:var(--appearance-danger-ink)!important;border-color:#99616a!important}
html[data-appearance='dark'] :is(.timer-card.overdue strong,.summary-due strong,.is-limited){color:var(--appearance-danger-ink)!important}
html[data-appearance='dark'] :is(.seat-notice.soon,.yellow,.status-badge.reserved,.big-seat.reserved){background:var(--appearance-warning-bg)!important;color:var(--appearance-warning-ink)!important;border-color:#9c7940!important}
html[data-appearance='dark'] .summary-soon strong{color:var(--appearance-warning-ink)!important}
html[data-appearance='dark'] :is(.seat-notice.cleaning,.green,.status-badge.free,.status-badge.active,.big-seat.active,.setup-guide li.complete b){background:var(--appearance-success-bg)!important;color:var(--appearance-success-ink)!important;border-color:#668d76!important}
html[data-appearance='dark'] :is(.seat-notice,.purple,.status-badge.needs-cleaning,.big-seat.needs-cleaning){background:var(--appearance-selected)!important;color:var(--appearance-accent)!important}
html[data-appearance='dark'] :is(.seat-notice.repair,.gray,.timer-card.stopped,.status-badge.repair,.status-badge.transferred,.big-seat.repair){background:var(--appearance-raised)!important;color:var(--appearance-muted)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .shell .detail-panel:has(.timer-card.overdue) :is(.status-badge,.big-seat){background:var(--appearance-danger-bg)!important;color:var(--appearance-danger-ink)!important;border-color:#99616a!important}
html[data-appearance='dark'] .shell .detail-panel:has(.timer-card.stopped) .status-badge{background:var(--appearance-raised)!important;color:var(--appearance-muted)!important}
html[data-appearance='dark'] :is(.summary-item[data-value=active] strong,.summary-item[data-value=paused] strong){color:var(--appearance-accent)!important}
html[data-appearance='dark'] :is(.history-panel th,.table-scroll th){background:var(--appearance-raised)!important;color:var(--appearance-muted)!important}
html[data-appearance='dark'] .event-pill{background:var(--appearance-raised)!important;color:var(--appearance-muted)!important}
html[data-appearance='dark'] .event-start{background:var(--appearance-selected)!important;color:var(--appearance-accent)!important}
html[data-appearance='dark'] .event-extend{background:var(--appearance-info-bg)!important;color:var(--appearance-info-ink)!important}
html[data-appearance='dark'] .event-transfer{background:var(--appearance-warning-bg)!important;color:var(--appearance-warning-ink)!important}

/* Map material is deliberately unchanged; only surrounding chrome is dark. */
html[data-appearance='dark'] :is(.map-scroll,.shell.view-editor .map-scroll.editing,.shell.view-desk .map-scroll){background:var(--appearance-bg)!important}
html[data-appearance='dark'] .shell .map-controls{background:var(--appearance-surface)!important;color:var(--appearance-muted)!important;border-color:var(--appearance-line)!important;box-shadow:none!important}
html[data-appearance='dark'] .shell .map-controls :is(button,.fit-btn,.mobile-map-more){background:var(--appearance-raised)!important;color:var(--appearance-muted)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .shell .map-controls :is(.fit-btn,[data-zoom-label]){color:var(--appearance-accent)!important}
html[data-appearance='dark'] .white-model-v2 .floor-map,
html[data-appearance='dark'].white-model-v2 .floor-map{background:#eceeef}
html[data-appearance='dark'] .shell.focus-operation :is(.floor-filters,.page-heading,.focus-view-switch){background:var(--appearance-surface)!important;color:var(--appearance-ink)!important}
html[data-appearance='dark'] .shell.focus-operation :is(.page-heading h1,.clock-digits){color:var(--appearance-ink)!important}
html[data-appearance='dark'] .shell.focus-operation :is(.operating-meta,.summary-item span,.shop-clock>span){color:var(--appearance-muted)!important}
html[data-appearance='dark'] .shell.focus-operation :is(.summary-item:hover,.summary-item.selected){background:var(--appearance-selected)!important;border-color:#7b649f!important}
html[data-appearance='dark'] .shell.focus-operation .heading-actions [data-action=toggle-focus]{background:var(--appearance-raised)!important;color:var(--appearance-ink)!important}
html[data-appearance='dark'] .shell.view-desk.detail-open:not(.selecting-package) .workspace-grid>.right-column{background:#080a1099}
html[data-appearance='dark'] .shell.view-desk #seat-detail::before{background:#606575}

/* Deposit records and dialogs; images keep their exact content colors. */
html[data-appearance='dark'] :is(.deposit-card,.deposit-stats>div,.deposit-search,.deposit-filters button,.deposit-empty,.deposit-photo-picker,.deposit-photo-panel,.deposit-photo-tile,.deposit-upload-row){background:var(--appearance-surface)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important;box-shadow:none}
html[data-appearance='dark'] .deposit-filters button.active{background:var(--appearance-selected)!important;color:var(--appearance-accent)!important;border-color:#7b649f!important}
html[data-appearance='dark'] :is(.deposit-search,.deposit-stats span,.deposit-card h2 small,.deposit-title,.deposit-card dt,.deposit-detail dt,.deposit-photo-heading span,.deposit-photo-empty,.deposit-photo-tile span,.deposit-upload-row span,.deposit-pickup-check p,.deposit-pickup-check dt,.deposit-pickup-photos span){color:var(--appearance-muted)!important}
html[data-appearance='dark'] :is(.deposit-card-hero,.deposit-note,.deposit-photo-large,.deposit-pickup-photos>div,.deposit-pickup-photos>p){background:var(--appearance-raised)!important;color:var(--appearance-muted)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .deposit-badge{background:var(--appearance-success-bg);color:var(--appearance-success-ink)}
html[data-appearance='dark'] .deposit-badge.picked_up{background:var(--appearance-selected);color:var(--appearance-accent)}
html[data-appearance='dark'] .deposit-badge.cancelled{background:var(--appearance-raised);color:var(--appearance-muted)}
html[data-appearance='dark'] .deposit-pickup-check dl>div{border-color:var(--appearance-line)}
html[data-appearance='dark'] :is(.account-status,.account-panel[data-license-tone=normal] .account-status){background:var(--appearance-success-bg);color:var(--appearance-success-ink)}
html[data-appearance='dark'] :is(.account-panel[data-license-tone=warning] .account-status,.account-panel[data-license-tone=urgent] .account-status){background:var(--appearance-warning-bg);color:var(--appearance-warning-ink);border-color:#9c7940}
html[data-appearance='dark'] .account-panel[data-license-tone=expired] .account-status{background:var(--appearance-danger-bg);color:var(--appearance-danger-ink)}
html[data-appearance='dark'] .account-panel[data-license-tone=inactive] .account-status{background:var(--appearance-raised);color:var(--appearance-muted)}

/* Embedded and standalone pattern studio: UI only, never palette swatches/pixels. */
html[data-appearance='dark'] #studio{color:var(--appearance-ink)}
html[data-appearance='dark'] #studio :is(.studio-top,.source-panel,.canvas-panel,.stock-panel,.canvas-heading,.studio-mode-switch,.tools,.view-options,.palette-drawer,.file-menu-items,.studio-mobile-nav){background:var(--appearance-surface)!important;border-color:var(--appearance-line)!important;box-shadow:none}
html[data-appearance='dark'] :is(.canvas-heading h2,.source-panel h2,.stock-panel h2,.document-title #project-name,.palette-heading,.summary,.summary strong){color:var(--appearance-ink)!important}
html[data-appearance='dark'] #studio :is(button:not(.primary),.files-menu>summary,label.file,.quiet,.board-zoom,.board-info label){background:var(--appearance-raised)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important;box-shadow:none}
html[data-appearance='dark'] #studio :is(.tools button.active,.tools button[aria-pressed=true],.swatch.selected){background:var(--appearance-selected)!important;color:var(--appearance-accent)!important;border-color:var(--appearance-accent)!important;box-shadow:none!important}
html[data-appearance='dark'] #studio :is(button.primary,.studio-mode-switch button[aria-pressed=true]){background:var(--accent,var(--appearance-violet-700))!important;color:#fff!important;border-color:var(--accent,var(--appearance-violet-700))!important;box-shadow:none}
html[data-appearance='dark'] #studio :is(.source-panel button[data-do=matting],.quick-settings-note,.workflow-status[data-state=busy],#matting-progress:not(:empty)){background:var(--appearance-selected)!important;color:var(--appearance-accent)!important;border-color:#7b649f!important}
html[data-appearance='dark'] #studio :is(.document-caption,.section-caption,.status,.hint,.field,.board-info,.view-options,.palette-heading #selected-color,.summary span,.summary small,.empty-materials,.quick-palette-note,.board-zoom){color:var(--appearance-muted)!important}
html[data-appearance='dark'] #studio .photo-upload strong{color:var(--appearance-accent)}
html[data-appearance='dark'] #studio .photo-upload::before{background:var(--appearance-selected)!important;color:var(--appearance-accent)!important;box-shadow:none!important}
html[data-appearance='dark'] #studio .board-wrap{background:var(--appearance-bg)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] #studio :is(.summary,.export-options,.color-optimization,.store-generation,.source-panel details,.palette-drawer,.materials td,.materials th){border-color:var(--appearance-line)!important}
html[data-appearance='dark'] #studio th{background:var(--appearance-surface)!important;color:var(--appearance-muted)!important}
html[data-appearance='dark'] #studio td.missing,
html[data-appearance='dark'] #studio .summary .shortage strong{color:var(--appearance-danger-ink)!important}
html[data-appearance='dark'] :is(.workflow-status,.pattern-recovery){background:var(--appearance-raised)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .workflow-status[data-state=done]{background:var(--appearance-success-bg)!important;color:var(--appearance-success-ink)!important}
html[data-appearance='dark'] .workflow-status[data-state=error]{background:var(--appearance-danger-bg)!important;color:var(--appearance-danger-ink)!important}
html[data-appearance='dark'] :is(#studio-confirm,dialog,.pattern-recovery pre){background:var(--appearance-surface)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important;box-shadow:var(--appearance-shadow)}
html[data-appearance='dark'] :is(#studio-confirm p,.pattern-recovery p){color:var(--appearance-muted)!important}
html[data-appearance='dark'] dialog::backdrop,html[data-appearance='dark'] #studio-confirm::backdrop{background:#080a10b8}
html[data-appearance='dark'] :is(.pane-close,.pattern-recovery-actions button){background:var(--appearance-raised)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important}

/* Sign-in card stays readable without touching the scene image or animation. */
html[data-appearance='dark'] .login-card{background:var(--appearance-surface)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important;box-shadow:var(--appearance-shadow)}
html[data-appearance='dark'] .login-card :is(.brand-type strong,.welcome h1,.welcome p){color:var(--appearance-ink)!important}
html[data-appearance='dark'] .login-card :is(.product-tag,#login-form>label,.remember,#forgot-password,.card-status,#connection-status,.card-bottom,.card-bottom button,.language-row select){color:var(--appearance-muted)!important}
html[data-appearance='dark'] .login-card :is(.input-wrap,.language-row select){background:var(--appearance-field)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .login-card .input-wrap input{background:transparent!important;color:var(--appearance-ink)!important}
html[data-appearance='dark'] .login-card :is(.input-wrap>svg,#toggle-password){color:var(--appearance-muted)!important;stroke:var(--appearance-muted)}
html[data-appearance='dark'] .login-card #message{color:var(--appearance-danger-ink)!important}
html[data-appearance='dark'] .login-card .login-submit{background:#f1669d;color:#45212c}
html[data-appearance='dark'] .login-card #toggle-password:focus-visible{outline-color:var(--appearance-accent)!important}
html[data-appearance='dark'] .login-card #toggle-password:hover{background:var(--appearance-selected)}
html[data-appearance='dark'] .login-card input:-webkit-autofill{-webkit-text-fill-color:var(--appearance-ink);box-shadow:0 0 0 100px var(--appearance-field) inset!important;caret-color:var(--appearance-ink)}
html[data-appearance='dark'] .login-card .password-eye{stroke:currentColor}
/* Secondary operating text and legacy dialogs with published hard-coded colors. */
html[data-appearance='dark'] :is(.ready-note,.custom-duration,.price-line,.session-info dt,.reminder-empty strong,.reminder-empty p,.reminder-row strong,.reminder-row small,.reminder-foot,.history-filters,.control-block>label>span,.help-steps p,.cleaning-card p,.confirm-description,.map-hint){color:var(--appearance-muted)!important}
html[data-appearance='dark'] :is(.price-line strong,.session-info dd,.storage-box strong,.history-panel td,.history-panel td strong,.modal-heading h2,.help-steps h3,.editor-tip strong){color:var(--appearance-ink)!important}
html[data-appearance='dark'] :is(.package-summary,.quick-seat,.reminder-heading h2>span,.reminder-check,.wall-preview,.editor-tip){background:var(--appearance-raised)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .quick-seat:hover{background:var(--appearance-selected)!important;color:var(--appearance-accent)!important;border-color:var(--appearance-accent)!important}
html[data-appearance='dark'] :is(.reservation-info,.reminder-seat){background:var(--appearance-warning-bg)!important;color:var(--appearance-warning-ink)!important;border-color:#9c7940!important}
html[data-appearance='dark'] :is(.cleaning-card,.reminder-seat.late,.error-banner,.red){background:var(--appearance-danger-bg)!important;color:var(--appearance-danger-ink)!important;border-color:#99616a!important}
html[data-appearance='dark'] :is(.note-block,.reminder-row,.reminder-foot,.help-steps>div,.renewal-block,.session-info,.package-summary){border-color:var(--appearance-line)!important}
html[data-appearance='dark'] .account-panel[data-license-tone=urgent]{border-color:#b99762!important}
html[data-appearance='dark'] .account-panel[data-license-tone=expired]{border-color:#bc808a!important}
html[data-appearance='dark'] #studio :is(.opt-counts,.export-options>summary,.source-panel details[open]>summary){color:var(--appearance-accent)!important}
html[data-appearance='dark'] #studio .opt-changes>div{border-color:var(--appearance-line)!important}
html[data-appearance='dark'] #studio .color-optimization{background:transparent!important}
html[data-appearance='dark'] #studio .tools-toggle::after{color:var(--appearance-muted)!important}

html[data-appearance='dark'] #access-logout{background:var(--appearance-raised)!important;color:var(--appearance-ink)!important;border-color:var(--appearance-line)!important}
html[data-appearance='dark'] #access-logout:hover{background:var(--appearance-selected)!important}

/* A text-only deposit has no photo column. Keep its content and hit targets
   spanning the actual card width in either language and appearance. */
.deposit-card>.deposit-card-copy:only-child{grid-column:1 / -1}
html[lang^='en'] .deposit-card-top{flex-wrap:wrap;align-items:flex-start}
html[lang^='en'] .deposit-card-top strong{min-width:0;max-width:100%;overflow-wrap:anywhere}
html[lang^='en'] .deposit-card-actions{flex-wrap:wrap;align-items:stretch}
html[lang^='en'] .deposit-card-actions>.btn{flex:1 1 110px;min-width:min(100%,100px);max-width:100%;min-height:44px;white-space:normal;overflow-wrap:anywhere;line-height:1.4;text-align:center}
html[lang^='en'] .deposit-detail-actions>.btn{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.4;text-align:center}
html[lang^='en'] .modal-footer{flex-wrap:wrap}
html[lang^='en'] .modal-footer>.btn{flex:0 1 auto;min-width:0;max-width:100%;min-height:44px;white-space:normal;overflow-wrap:anywhere;line-height:1.4;text-align:center}