/* WiFidel 0.7.6 · Two explicit palettes. No filters or color inversion. */
.theme-toggle{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:9px;width:42px;min-width:42px;height:42px;min-height:42px}
.theme-toggle .theme-sun{display:none}
:root[data-theme=dark] .theme-toggle .theme-moon{display:none}
:root[data-theme=dark] .theme-toggle .theme-sun{display:block}
.access-card{position:relative}
#access>.theme-toggle{position:absolute;right:22px;top:22px;width:42px;min-height:42px;height:42px}
:root.theme-changing body,
:root.theme-changing #wf-demo,
:root.theme-changing #wf-demo>header,
:root.theme-changing .local-tools,
:root.theme-changing .box,
:root.theme-changing .person,
:root.theme-changing dialog,
:root.theme-changing .workspace-tabs,
:root.theme-changing .access-card,
:root.theme-changing input,
:root.theme-changing select,
:root.theme-changing textarea,
:root.theme-changing button,
:root.theme-changing summary{transition:background-color .18s ease,color .18s ease,border-color .18s ease}
:root[data-theme=dark]{color-scheme:dark;--ink:#f0f1f2;--muted:#b1b5bb;--green:#71df93;--green-dark:#a2efbb;--pale:#25272b;--line:#383b41;--surface:#202226;--bg:#17181b;--shadow:0 12px 36px #0004;--button-shadow:0 2px 3px #0002,0 4px 12px #0002;--night-raised:#282b30;--night-field:#1a1c20;--night-hover:#34373d;--night-action:#26733f;--night-good:#b3edbf;--night-warn:#f2ca8b;--night-error:#ffb6a7;color:var(--ink);background:var(--bg)}
:root[data-theme=dark] body{background:var(--bg);color:var(--ink)}
:root[data-theme=dark] #wf-demo,
:root[data-theme=dark] .access-card,
:root[data-theme=dark] dialog,
:root[data-theme=dark] .clients-pane>.box,
:root[data-theme=dark] .composer{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow)}
:root[data-theme=dark] #wf-demo>header,
:root[data-theme=dark] #wf-demo .local-tools{background:var(--surface);border-color:var(--line)}
:root[data-theme=dark] #wf-demo>header:before{background:linear-gradient(#92d5a0,#326c43)}
:root[data-theme=dark] .management strong,
:root[data-theme=dark] .mobile-brand-caption strong{color:var(--ink)}
:root[data-theme=dark] .management>span:not(.workspace-label),
:root[data-theme=dark] .mobile-brand-caption span,
:root[data-theme=dark] #local-status,
:root[data-theme=dark] #sync-status,
:root[data-theme=dark] .footer,
:root[data-theme=dark] .client-heading span,
:root[data-theme=dark] .service-condition{color:var(--muted)}
:root[data-theme=dark] #sync-status.sync-warning{color:var(--night-warn)}
:root[data-theme=dark] #sync-status:before{background:#7fcf70;box-shadow:0 0 0 4px #7fcf701c}
:root[data-theme=dark] #sync-status.sync-warning:before{background:#e7b765;box-shadow:0 0 0 4px #e7b7651c}
:root[data-theme=dark] button{background:var(--night-raised);border-color:var(--line);color:var(--ink);box-shadow:var(--button-shadow)}
:root[data-theme=dark] #remote-bar button,
:root[data-theme=dark] .month-nav button,
:root[data-theme=dark] .filters button,
:root[data-theme=dark] .client-service-actions button,
:root[data-theme=dark] .bulk-service-actions>button,
:root[data-theme=dark] .backup-menu>summary,
:root[data-theme=dark] .payment-filter-menu>summary,
:root[data-theme=dark] .mobile-install,
:root[data-theme=dark] .settings-tabs button,
:root[data-theme=dark] .router-pending,
:root[data-theme=dark] .connection-check,
:root[data-theme=dark] .connection-configure{background:var(--night-raised);color:var(--ink);border-color:var(--line)}
:root[data-theme=dark] #connection.connection-button{background:var(--night-raised);color:var(--green);border-color:var(--line)}
:root[data-theme=dark] #remote-logout,
:root[data-theme=dark] #wf-delete,
:root[data-theme=dark] #remote-download{color:var(--night-error)}
:root[data-theme=dark] #wf-add,
:root[data-theme=dark] #wf-send,
:root[data-theme=dark] #login-submit,
:root[data-theme=dark] button.primary,
:root[data-theme=dark] button.active,
:root[data-theme=dark] button.main,
:root[data-theme=dark] .filters button.active,
:root[data-theme=dark] .settings-tabs button[aria-pressed=true],
:root[data-theme=dark] .client-service-actions .recorded-activo{background:var(--night-action);border-color:#4c9660;color:#f3fff5;box-shadow:0 3px 10px #0003}
:root[data-theme=dark] button.danger{background:#843e38;border-color:#ba6c61;color:#fff3ef}
:root[data-theme=dark] .client-service-actions .recorded-cortado{background:#483420;border-color:#856038;color:#ffd7a2}
:root[data-theme=dark] button:disabled,
:root[data-theme=dark] #wf-send:disabled,
:root[data-theme=dark] .client-service-actions button:disabled{background:#292c31;border-color:#3c4046;color:#a0a5ac;box-shadow:none;opacity:1}
:root[data-theme=dark] .month-nav #month-label{background:transparent;color:var(--green);border-color:transparent;box-shadow:none}
:root[data-theme=dark] .person{background:var(--surface);border-color:var(--line);box-shadow:0 2px 7px #0001}
:root[data-theme=dark] .person:has(>input:checked){background:#243c2d;border-color:#629c6e}
:root[data-theme=dark] .person .name{background:transparent;color:var(--ink);border:0;box-shadow:none}
:root[data-theme=dark] .person .name:hover{color:var(--green);background:transparent;box-shadow:none}
:root[data-theme=dark] .avatar{background:#2a4332;color:#c1e8bb}
:root[data-theme=dark] .status{background:#31343a;color:#c5cbd1}
:root[data-theme=dark] .status.Pago{background:#25452f;color:#b7ebad}
:root[data-theme=dark] .status.Pendiente{background:#48302b;color:#ffc2ae}
:root[data-theme=dark] .status.Incompleto{background:#473d24;color:#f5d391}
:root[data-theme=dark] .status.Suspendido{background:#383047;color:#d9c7ef}
:root[data-theme=dark] .client-service-actions .client-special,
:root[data-theme=dark] .client-service-actions .client-note,
:root[data-theme=dark] .client-service-actions .verify-service{background:var(--night-raised);border-color:var(--line);color:#bdd9b5}
:root[data-theme=dark] .client-service-actions .client-special.is-special,
:root[data-theme=dark] .client-service-actions .client-note.has-note{background:#443b24;color:#f5d48b;border-color:#806d3a;box-shadow:var(--button-shadow)}
:root[data-theme=dark] .client-special.is-special svg{fill:#eac16e;stroke:#f5d48b}
:root[data-theme=dark] .client-service-meta .advance-payment{background:transparent;color:#c0d6b4;border:0;box-shadow:none}
:root[data-theme=dark] .client-service-meta .advance-payment.has-advance{color:#b2edb4}
:root[data-theme=dark] input,
:root[data-theme=dark] select,
:root[data-theme=dark] textarea,
:root[data-theme=dark] .search-client,
:root[data-theme=dark] #wf-text{background:var(--night-field);color:var(--ink);border-color:#474c53}
:root[data-theme=dark] input::placeholder,
:root[data-theme=dark] textarea::placeholder{color:#aeb4bb;opacity:1}
:root[data-theme=dark] input:focus,
:root[data-theme=dark] select:focus,
:root[data-theme=dark] textarea:focus{border-color:#86c792;box-shadow:0 0 0 3px #86c79224}
:root[data-theme=dark] input:disabled,
:root[data-theme=dark] select:disabled{background:#292c31;color:#aeb4bb}
:root[data-theme=dark] #wf-text:disabled{background:var(--night-field);color:#d2d8d4;-webkit-text-fill-color:#d2d8d4}
:root[data-theme=dark] input[type=checkbox]{accent-color:#83ce91;box-shadow:none}
:root[data-theme=dark] input[type=checkbox][role=switch]{background:#526459}
:root[data-theme=dark] input[type=checkbox][role=switch]:checked{background:#37814d}
:root[data-theme=dark] input[type=checkbox][role=switch]:before{background:#f0f8ee}
:root[data-theme=dark] .field,
:root[data-theme=dark] .auto-template,
:root[data-theme=dark] .template-details summary{color:#c7dfbd}
:root[data-theme=dark] .field:has(>select):after{border-color:#a6bd9e}
:root[data-theme=dark] :focus-visible{outline-color:#a5dcb0}
:root[data-theme=dark] .preview,
:root[data-theme=dark] .calendar-info,
:root[data-theme=dark] #yc-mapping-panel,
:root[data-theme=dark] .template-details,
:root[data-theme=dark] .connection-note,
:root[data-theme=dark] .agreement-help,
:root[data-theme=dark] .policy-grid article,
:root[data-theme=dark] .install-status{background:#2a2d32;color:#c5ccd0;border-color:var(--line)}
:root[data-theme=dark] .preview:empty:before{color:var(--muted)}
:root[data-theme=dark] .service-popover,
:root[data-theme=dark] .payment-filter-popover,
:root[data-theme=dark] .backup-options,
:root[data-theme=dark] .auto-card,
:root[data-theme=dark] .connection-card{background:var(--night-raised);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow)}
:root[data-theme=dark] .payment-filter-menu>summary.has-filter,:root[data-theme=dark] .payment-filter-menu[open]>summary{background:var(--night-action);color:#f3fff5;border-color:#4c9660}
:root[data-theme=dark] .dialog-head,
:root[data-theme=dark] .dialog-footer,
:root[data-theme=dark] .settings-tabs,
:root[data-theme=dark] .edit>.row{background:var(--surface);border-color:var(--line)}
:root[data-theme=dark] dialog::backdrop{background:#07080ab8}
:root[data-theme=dark] .rule-badge,
:root[data-theme=dark] .yc-result-state{background:#2b3d31;color:#c2d3c6}
:root[data-theme=dark] .rule-badge.on{background:#294b33;color:#b5e7b4}
:root[data-theme=dark] .auto-feedback{background:#233e30;color:#c6e5cc}
:root[data-theme=dark] .auto-feedback[role=alert],
:root[data-theme=dark] .confirm,
:root[data-theme=dark] .restore-panel,
:root[data-theme=dark] .batch-client.incident,
:root[data-theme=dark] .yc-result-state.failed,
:root[data-theme=dark] .yc-result-state.uncertain{background:#442e28;color:var(--night-error);border-color:#805044}
:root[data-theme=dark] .confirm p,
:root[data-theme=dark] #yc-confirm-error,
:root[data-theme=dark] .connection-detail{color:var(--night-error)}
:root[data-theme=dark] #service-warning,
:root[data-theme=dark] .batch-client.caution,
:root[data-theme=dark] #mobile-network-banner{background:#3e3523;color:var(--night-warn);border-color:#816e42}
:root[data-theme=dark] .client-notice,
:root[data-theme=dark] #router-feedback{color:var(--night-warn)}
:root[data-theme=dark] .schedule-table th,
:root[data-theme=dark] .schedule-table td:before{background:#2a2d32;color:var(--muted)}
:root[data-theme=dark] .schedule-table td.ready{color:var(--green)}
:root[data-theme=dark] .connection-symbol,
:root[data-theme=dark] .connection-card[data-status=online] .connection-symbol{background:#294632;color:#b1e4bb}
:root[data-theme=dark] .connection-state,
:root[data-theme=dark] .connection-state-text{color:var(--ink)}
:root[data-theme=dark] .connection-card[data-status=online] .connection-state-text{color:#abe4b4}
:root[data-theme=dark] .connection-card[data-status=error] .connection-state-text{color:var(--night-error)}
:root[data-theme=dark] .connection-dot.online,:root[data-theme=dark] .connection-card[data-status=online] .connection-dot{background:#75ce82}
:root[data-theme=dark] .connection-summary-dot{border-color:var(--surface)}
:root[data-theme=dark] .help-trigger{background:var(--night-raised)!important;color:#b9dfad!important;border-color:#637f5c}
:root[data-theme=dark] .help-tooltip{background:#353a3e;color:#f0f6eb;box-shadow:0 6px 24px #0005}
:root[data-theme=dark] #ui-toast{background:#31563e;color:#f0f8ed}
:root[data-theme=dark] #ui-toast.error{background:#743b34;color:#fff4ef}
:root[data-theme=dark] #thermometer{background:#31343a;border-color:var(--line)}
:root[data-theme=dark] #wf-list{scrollbar-color:#5a6360 #1b1d21}
:root[data-theme=dark] .pwa-install-dialog ol{color:var(--muted)}
:root[data-theme=dark] #remote-bar .theme-toggle,:root[data-theme=dark] #access>.theme-toggle{color:#efd192;background:var(--night-raised);border-color:var(--line)}
:root[data-theme=dark] #wf-delete,:root[data-theme=dark] #mobile-network-banner button{background:var(--night-raised);border-color:var(--line)}
:root[data-theme=dark] .connections-intro{color:var(--muted)}
:root[data-theme=dark] #service-payment-feedback.payment-error{color:var(--night-error)}
:root[data-theme=dark] .composer>hr{border-top-color:var(--line)!important}
@media(hover:hover){
 :root[data-theme=dark] button:hover{background:var(--night-hover);border-color:#6d9271;color:var(--ink)}
 :root[data-theme=dark] button.primary:hover,
 :root[data-theme=dark] button.active:hover,
 :root[data-theme=dark] button.main:hover,
 :root[data-theme=dark] #wf-add:hover,
 :root[data-theme=dark] #login-submit:hover,
 :root[data-theme=dark] #wf-send:not(:disabled):hover,
 :root[data-theme=dark] .filters button.active:hover,
 :root[data-theme=dark] .settings-tabs button[aria-pressed=true]:hover,
 :root[data-theme=dark] .client-service-actions .recorded-activo:hover{background:#337c4b;color:#fff}
 :root[data-theme=dark] .person .name:hover{background:transparent;color:var(--green);box-shadow:none}
 :root[data-theme=dark] .client-service-meta .advance-payment:hover{background:transparent;color:var(--green)}
}
@media(max-width:760px){
 :root[data-theme=dark] #wf-demo{background:transparent;border:0;box-shadow:none}
 :root[data-theme=dark] #remote-bar{background:var(--surface);border-color:var(--line)}
 :root[data-theme=dark] .workspace-tabs{background:#202226f5;border-color:var(--line);box-shadow:0 -5px 25px #0002}
 :root[data-theme=dark] .workspace-tabs>button{background:transparent;color:#b8c2b9;box-shadow:none}
 :root[data-theme=dark] .workspace-tabs>button[aria-pressed=true]{background:#2b4532;color:#c2edb8}
 :root[data-theme=dark] .workspace-tabs .mobile-badge{background:#ad592b;color:#fff8ef;border-color:var(--surface)}
 :root[data-theme=dark] #payment-filter-toggle{background:transparent;border:0;color:var(--green);box-shadow:none}
 :root[data-theme=dark] #payment-filter-toggle.has-filter svg,:root[data-theme=dark] .payment-filter-menu[open]>#payment-filter-toggle svg{fill:#356442}
 :root[data-theme=dark] #payment-filter-toggle:active,:root[data-theme=dark] #payment-filter-toggle.is-touch-pressed{background:#2c4935}
 :root[data-theme=dark] .person .name:active,:root[data-theme=dark] .person .name.is-touch-pressed{background:#2b4532;color:#b8edc5}
 :root[data-theme=dark] .workspace-tabs #notices-open.unread{animation-name:night-notice-glow}
 @keyframes night-notice-glow{50%{background:#2b4532}}
}
@media(prefers-reduced-motion:reduce){:root.theme-changing *{transition:none!important}}

/* 0.7.6 · Graphite chrome with distinct green accents. */
:root[data-theme=dark] #remote-bar.app-topbar{background:var(--surface);border-color:var(--line)}
:root[data-theme=dark] #app-tools>button,:root[data-theme=dark] #app-tools .backup-menu>summary{background:var(--night-raised);color:var(--green);border-color:var(--line)}
:root[data-theme=dark] #app-tools #theme-toggle{color:#f3d794}
:root[data-theme=dark] #app-tools #remote-logout{color:#b8bbc1}
:root[data-theme=dark] .brand-copy strong{color:var(--green)}
:root[data-theme=dark] #server-alert{background:#3a3024;border-color:#846b3c;color:var(--night-warn)}
:root[data-theme=dark] #server-alert #remote-download{color:var(--night-warn)}
:root[data-theme=dark] .month-nav #month-prev,:root[data-theme=dark] .month-nav #month-next{background:var(--surface);color:var(--green);border-color:var(--line);box-shadow:none}
:root[data-theme=dark] .month-nav #month-prev:hover,:root[data-theme=dark] .month-nav #month-next:hover,:root[data-theme=dark] .month-nav #month-prev:focus:not(:focus-visible),:root[data-theme=dark] .month-nav #month-next:focus:not(:focus-visible){background:var(--surface);color:var(--green);border-color:var(--line);box-shadow:none}
:root[data-theme=dark] .month-nav #month-prev:active,:root[data-theme=dark] .month-nav #month-next:active,:root[data-theme=dark] .month-nav #month-prev.is-touch-pressed,:root[data-theme=dark] .month-nav #month-next.is-touch-pressed{background:#254532}
:root[data-theme=dark] .client-service-main .verify-service{background:transparent;color:var(--green);border-color:var(--line);box-shadow:none}
:root[data-theme=dark] .client-service-main .verify-service:hover{background:var(--night-hover);color:var(--green)}
:root[data-theme=dark] .connection-dot.online,:root[data-theme=dark] .connection-card[data-status=online] .connection-dot{background:#6ae58a;box-shadow:0 0 0 4px #6ae58a20}
