@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.ttf) format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500.ttf) format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600.ttf) format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-700.ttf) format("truetype")}
/* Shared visual language with Bestell Workflow: 256px navy navigation, 56px topbar,
   Inter typography, restrained blue actions, 8px surfaces and compact controls. */
:root{--wf-primary:#1252a1;--wf-primary-text:#fff;--wf-sidebar:#082049;--wf-sidebar-text:#edf1f5;--wf-content:none}:root,html[data-theme="light"]{--primary:var(--wf-primary)!important;--primary-dark:color-mix(in srgb,var(--wf-primary),#000 12%)!important;--primary-light:color-mix(in srgb,var(--wf-primary),transparent 92%)!important;--white:#fff;--gray-50:#fff;--gray-100:#f4f5f6;--gray-200:#dce0e5;--gray-300:#c9cfd8;--gray-400:#939daa;--gray-500:#6c7789;--gray-600:#556176;--gray-700:#354156;--gray-800:#243146;--gray-900:#152033;--radius:6px;--radius-lg:8px;--shadow:0 1px 3px #1520330d;--shadow-md:0 4px 8px #15203312;--nav-dark:var(--wf-sidebar);color-scheme:light}
html[data-theme="dark"]{--primary:var(--wf-primary)!important;--primary-dark:color-mix(in srgb,var(--wf-primary),white 12%)!important;--primary-light:color-mix(in srgb,var(--wf-primary),transparent 82%)!important;--white:#172234;--gray-50:#0e1726;--gray-100:#1d2b40;--gray-200:#304058;--gray-300:#455571;--gray-400:#8997ad;--gray-500:#a2aec1;--gray-600:#b8c2d2;--gray-700:#d2dbe8;--gray-800:#e2e8f0;--gray-900:#f1f5f9;color-scheme:dark}
html{font-size:16px;scroll-padding-top:80px}body{font-family:'Inter',system-ui,-apple-system,sans-serif!important;font-size:14px;line-height:1.5;background:var(--gray-50)!important;color:var(--gray-900)}*,*::before,*::after{box-sizing:border-box}button,input,select,textarea{font-family:inherit}a,button,input,select,textarea,summary{touch-action:manipulation}button,a,input,select,textarea,summary{outline-offset:3px}*:focus-visible{outline:2px solid var(--primary)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.wf-skip{position:fixed;top:-100px;left:280px;z-index:1000;background:var(--white);padding:12px}.wf-skip:focus{top:8px}
body:has(.wf-sidebar),body.wf-shell{padding-left:256px;display:flex;flex-direction:column;min-height:100vh}.wf-sidebar{position:fixed;inset:0 auto 0 0;width:256px;background:var(--wf-sidebar);color:var(--wf-sidebar-text);border-right:1px solid color-mix(in srgb,var(--wf-sidebar-text),transparent 85%);display:flex;flex-direction:column;z-index:150}.wf-brand{display:flex;gap:12px;align-items:center;padding:20px 16px;color:inherit!important;border-bottom:1px solid color-mix(in srgb,var(--wf-sidebar-text),transparent 85%);min-height:88px}.wf-brand-logo{width:38px;height:38px;object-fit:contain;border-radius:0;background:transparent;padding:0}.wf-brand strong{font-size:14px;font-weight:600;line-height:1.35;display:block;overflow-wrap:anywhere}.wf-brand small{display:block;font-size:12px;color:inherit;opacity:.65;margin-top:4px}.wf-navigation{flex:1;overflow:auto;padding:12px 8px}.wf-nav-group{margin-bottom:22px}.wf-nav-label{font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;opacity:.5;padding:4px 12px;margin-bottom:4px}.wf-nav-link{display:flex;gap:10px;align-items:center;padding:9px 12px;border-radius:6px;font-size:14px;line-height:1.4;color:inherit!important;opacity:.82;margin:2px 0}.wf-nav-link:hover,.wf-nav-link.active{background:color-mix(in srgb,var(--wf-sidebar-text),transparent 92%);opacity:1}.wf-nav-link.active{font-weight:600}.wf-sidebar-footer{display:flex;gap:10px;align-items:center;padding:18px 20px;border-top:1px solid color-mix(in srgb,var(--wf-sidebar-text),transparent 85%);font-size:12px;opacity:.7}.wf-topbar{height:56px;min-height:56px;position:sticky;top:0;display:flex;align-items:center;gap:16px;padding:0 24px;border-bottom:1px solid var(--gray-200);background:var(--gray-50);z-index:100}.wf-page-context{flex:1;color:var(--gray-500);font-size:13px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wf-top-actions{display:flex;align-items:center;gap:12px}.wf-theme-control select{padding:5px 24px 5px 8px!important;font-size:12px!important;min-height:32px!important;width:auto!important}.wf-user-menu{position:relative}.wf-user-menu summary{list-style:none;display:flex;align-items:center;gap:8px;padding:5px 10px;border:1px solid var(--gray-200);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.wf-user-menu summary::-webkit-details-marker{display:none}.wf-avatar{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;font-size:12px;font-weight:700;background:var(--primary-light);color:var(--primary)}.wf-user-dropdown{position:absolute;right:0;top:calc(100% + 6px);width:220px;background:var(--white);border:1px solid var(--gray-200);box-shadow:var(--shadow-md);border-radius:6px;padding:6px;z-index:180}.wf-user-dropdown>strong,.wf-user-dropdown>small{display:block;padding:4px 10px;overflow-wrap:anywhere}.wf-user-dropdown>small{padding-bottom:10px;border-bottom:1px solid var(--gray-200);margin-bottom:4px}.wf-user-dropdown a,.wf-user-dropdown button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border:0;background:none;color:var(--gray-900);font-size:14px;text-align:left;cursor:pointer;border-radius:4px}.wf-user-dropdown button{color:#dc2626}.wf-user-dropdown a:hover,.wf-user-dropdown button:hover{background:var(--gray-100)}[data-wf-icon]{display:inline-flex;width:18px;height:18px;flex:none;vertical-align:middle}[data-wf-icon] svg{width:100%;height:100%}.wf-menu-toggle,.wf-mobile-close{display:none}.wf-backdrop{position:fixed;inset:0;background:#0008;z-index:140}
body:has(.wf-sidebar)>:is(main,.main-content,.admin-main,.page-wrapper,.queue-page,.tpl-layout,.container){width:100%!important;max-width:var(--wf-content)!important;min-width:0!important;padding:24px!important;margin:0 auto!important;flex:1}body:has(.wf-sidebar) .mail-page{width:100%;max-width:none;margin:0;padding:0}.backup-wrap,.confirm-wrap,.feed-test-wrap,.cleanup-grid{max-width:none!important}.page-header,.admin-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px!important;flex-wrap:wrap}.page-header h1,.page-header h2,.admin-page-title{font-size:24px!important;line-height:1.3;font-weight:700!important;letter-spacing:-.025em;margin:0}.page-subtitle,.admin-page-subtitle{font-size:14px!important;color:var(--gray-500)!important;margin-top:6px}.section-title,.form-section-title,.admin-section-heading{font-size:16px;font-weight:600;letter-spacing:0;text-transform:none}.footer{margin-top:auto!important;padding:12px 24px!important;border-top:1px solid var(--gray-200);background:var(--gray-50)!important;color:var(--gray-500)!important;font-size:12px!important;text-align:center;min-height:44px}.footer p{margin:0}
:is(.card,.bcard,.admin-tile,.stat-card,.form-card,.detail-card,.settings-card,.admin-form-card,.info-card,.section-card,.config-card,.panel){background:var(--white)!important;border:1px solid var(--gray-200)!important;border-radius:8px!important;box-shadow:var(--shadow)!important;color:var(--gray-900)}.admin-tile{padding:20px!important;transition:box-shadow .15s,border-color .15s!important;transform:none!important}.admin-tile:hover{box-shadow:var(--shadow-md)!important;border-color:var(--gray-300)!important}.admin-tile-icon{width:38px!important;height:38px!important;border-radius:8px;background:var(--primary-light);color:var(--primary);display:grid;place-items:center!important;font-size:18px!important;margin-bottom:14px}.admin-tile-title{font-size:15px!important;font-weight:600!important}.admin-tile-desc{font-size:13px!important;color:var(--gray-500)!important}.admin-tile-arrow{font-size:12px!important;font-weight:500!important;color:var(--primary)!important}.stat-value,.stat-number{font-size:26px!important;letter-spacing:-.03em}.stat-label{font-size:13px!important;color:var(--gray-500)!important}.event-card{background:var(--white);box-shadow:var(--shadow);border-radius:8px;transform:none!important}.event-card--today{background:var(--primary-light)}
:is(.btn,.btn-download,button.btn-primary,input[type=submit]){font-size:14px!important;font-weight:500!important;border-radius:6px!important;padding:8px 14px;line-height:1.35;min-height:36px;box-shadow:none!important;transform:none!important}.btn-primary,.btn-download{background:var(--primary)!important;border:1px solid var(--primary)!important;color:var(--wf-primary-text)!important}.btn-primary:hover,.btn-download:hover{filter:brightness(.94)}.btn-outline,.btn-secondary{background:var(--white)!important;border:1px solid var(--gray-200)!important;color:var(--gray-700)!important}.btn-outline:hover,.btn-secondary:hover{background:var(--gray-100)!important}.btn-danger{background:#dc2626!important;color:#fff!important}.btn-sm{font-size:12px!important;padding:5px 10px!important;min-height:30px!important}button:disabled{cursor:not-allowed!important;opacity:.55!important}.form-group label,label.form-label{font-size:14px!important;font-weight:500!important;color:var(--gray-800)}input:not([type=checkbox],[type=radio],[type=hidden],[type=color],[type=file]),select,textarea{border:1px solid var(--gray-200)!important;background:var(--white)!important;color:var(--gray-900)!important;border-radius:6px!important;font-size:14px!important;max-width:100%;padding:8px 12px;min-height:38px}textarea{line-height:1.55}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}input:focus,textarea:focus,select:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--primary-light)!important}.form-section{padding:22px!important}.form-hint,.form-text,.help-text{font-size:12px!important;color:var(--gray-500)!important}
.wf-table-scroll,.table-responsive,.table-wrap,.table-container{width:100%;max-width:100%;overflow-x:auto;border-radius:8px}table:not(.fc *){font-size:13px;width:100%;border-collapse:collapse}thead th:not(.fc *){background:var(--gray-100)!important;color:var(--gray-600)!important;font-size:12px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;padding:11px 14px!important;border-bottom:1px solid var(--gray-200)!important}tbody td:not(.fc *){padding:12px 14px!important;border-bottom:1px solid var(--gray-200)!important;color:var(--gray-800)}tbody tr:not(.fc *):hover{background:var(--gray-100)}.badge,.status-badge,.role-badge{font-size:11px;border-radius:999px;font-weight:500;line-height:1.5}.filter-bar,.filters-bar,.filter-form{background:var(--white)!important;border:1px solid var(--gray-200)!important;border-radius:8px!important;gap:12px;flex-wrap:wrap}.view-toggle{border:1px solid var(--gray-200);border-radius:6px!important;background:var(--gray-100)!important}.view-toggle button{font-size:13px!important;border-radius:4px!important;font-weight:500!important}.view-toggle button.active{background:var(--white)!important;color:var(--primary)!important;box-shadow:var(--shadow)}.fc{--fc-border-color:var(--gray-200);--fc-page-bg-color:var(--white);--fc-neutral-bg-color:var(--gray-100);--fc-today-bg-color:var(--primary-light);--fc-button-bg-color:var(--primary);--fc-button-border-color:var(--primary);--fc-button-hover-bg-color:var(--primary-dark);--fc-button-active-bg-color:var(--primary-dark);font-family:inherit}.fc .fc-toolbar-title{font-size:20px!important}.fc .fc-button{font-size:13px!important;border-radius:6px!important}.fc .fc-daygrid-day-number,.fc .fc-col-header-cell-cushion{color:var(--gray-700)}.fc .fc-scrollgrid{border-radius:8px}.calendar-nav{flex-wrap:wrap;gap:8px}.login-page{background:var(--gray-100)!important;min-height:100vh;display:flex;justify-content:center;align-items:center;padding:24px!important}.login-wrapper{width:100%;max-width:448px!important}.login-card{padding:32px!important;background:var(--white)!important;border:1px solid var(--gray-200);box-shadow:var(--shadow)!important;border-radius:8px!important}.login-logo{max-width:200px!important;max-height:72px;object-fit:contain}.login-header{margin-bottom:24px!important}.login-subtitle{color:var(--gray-500)!important;font-size:14px}.login-page .theme-btn{background:var(--white)!important;color:var(--gray-700)!important;border:1px solid var(--gray-200)}.wf-branding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.wf-branding-grid label{display:block;margin-bottom:6px}.wf-branding-grid input,.wf-branding-grid select{width:100%}.wf-branding-preview{display:flex;min-height:130px;border:1px solid var(--gray-200);border-radius:8px;overflow:hidden;margin:24px 0}.wf-branding-preview aside{width:180px;padding:20px;background:var(--wf-sidebar);color:var(--wf-sidebar-text)}.wf-branding-preview section{padding:20px;background:var(--white);flex:1}
html[data-theme="dark"] :is(.security-notice,.restore-notice,.alert-info,.notice-box){background:var(--gray-100)!important;color:var(--gray-800)!important;border-color:var(--gray-300)!important}html[data-theme="dark"] :is(.bcard-title,.card-title,.admin-tile-title,.info-card h2){color:var(--gray-900)!important}
@media(max-width:1023px){body:has(.wf-sidebar),body.wf-shell{padding-left:0}.wf-sidebar{transform:translateX(-100%);transition:transform .2s;visibility:hidden}.wf-menu-open .wf-sidebar{transform:translateX(0);visibility:visible}.wf-menu-open{overflow:hidden}.wf-menu-toggle,.wf-mobile-close{display:grid;place-items:center;border:0;border-radius:6px;background:none;color:inherit;cursor:pointer;min-width:40px;min-height:40px}.wf-mobile-close{position:absolute;right:4px;top:0;font-size:24px}.wf-topbar{padding:0 16px;gap:8px}.wf-skip{left:16px}.wf-brand{padding-top:30px}.wf-page-context{font-size:12px}}
@media(max-width:640px){body:has(.wf-sidebar)>:is(main,.main-content,.admin-main,.page-wrapper,.queue-page,.tpl-layout,.container){padding:16px!important}.wf-username{display:none}.wf-top-actions{gap:6px}.wf-theme-control select{max-width:80px}.page-header h1,.page-header h2,.admin-page-title{font-size:21px!important}.page-header-actions{flex-wrap:wrap}.wf-branding-grid{grid-template-columns:1fr}.wf-branding-preview aside{width:120px}.login-card{padding:24px!important}.fc .fc-toolbar{flex-wrap:wrap;gap:10px}.fc .fc-toolbar-title{font-size:18px!important}.admin-grid,.stats-grid{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important;animation:none!important}}
@media print{body:has(.wf-sidebar),body.wf-shell{padding-left:0}.wf-sidebar,.wf-topbar,.wf-skip,.wf-backdrop,.wf-mobile-close{display:none!important}body:has(.wf-sidebar)>main{padding:0!important;max-width:none!important}.wf-table-scroll{overflow:visible}}
.empty-icon [data-wf-icon]{width:40px;height:40px;color:var(--gray-400)}.form-section-icon{color:var(--primary)}.settings-tile,.tpl-card{background:var(--white)!important;border:1px solid var(--gray-200)!important;border-radius:8px!important;box-shadow:var(--shadow)!important}.settings-tile-icon{color:var(--primary)!important;background:var(--primary-light)!important}.tpl-layout{grid-template-columns:200px minmax(0,1fr)!important}.tpl-main{min-width:0;padding:20px!important}.tpl-sidebar{background:var(--gray-50)!important}.tpl-card{min-width:0;overflow-wrap:anywhere}.tpl-card textarea{width:100%!important}.wf-branding-preview p{margin:8px 0 14px}.wf-branding-grid input[type=file]{display:block;margin:12px 0;width:100%;font-size:12px}
@media(max-width:800px){.tpl-layout{grid-template-columns:minmax(0,1fr)!important}.tpl-sidebar{position:static!important;height:auto!important;border-right:0!important;border-bottom:1px solid var(--gray-200);display:flex;flex-wrap:wrap;padding:10px!important;gap:4px}.tpl-sidebar-label{width:100%}.tpl-nav-link{padding:6px 10px!important}.tpl-main{padding:16px 0!important}.tpl-card{padding:16px!important}}

.maintenance-card{background:var(--white)!important;border-radius:8px!important;box-shadow:var(--shadow)!important}.maintenance-page{min-height:auto!important;background:none!important;padding:0!important;width:100%;max-width:480px}
@media(max-width:640px){.filter-row{align-items:stretch!important}.filter-row .filter-field{width:100%;min-width:0!important;flex:1 1 100%!important}.filter-actions{flex-direction:row!important;flex-wrap:wrap}.filter-field>label[style*="visibility:hidden"]{display:none}.filter-panel{padding:16px!important}}

@media(max-width:640px){.fc .fc-daygrid-week-number{display:none}.fc .fc-daygrid-day-frame{min-height:68px}.fc .fc-daygrid-event{font-size:10px}}

/* Collapsible administration categories; panels never reopen implicitly. */
.wf-category-toggle{width:100%;border:0;background:transparent;text-align:left;font-family:inherit;cursor:pointer;color:inherit;}
.wf-category-toggle>span{flex:1;min-width:0;}
.wf-category-chevron{width:14px;flex:0 0 14px;transform:rotate(-90deg);}
.wf-category-toggle[aria-expanded="true"] .wf-category-chevron{transform:rotate(0);}
.wf-category-toggle[aria-expanded="true"],.wf-category-current{background:color-mix(in srgb,var(--wf-sidebar-text),transparent 92%);}
.wf-category-panel{margin:4px 0 8px 21px;padding-left:10px;border-left:1px solid color-mix(in srgb,var(--wf-sidebar-text),transparent 78%);}
.wf-category-function{font-size:13px;padding:8px 10px;overflow-wrap:anywhere;}

.wf-sidebar-footer{flex-direction:column;align-items:flex-start;gap:6px;flex-shrink:0;}
.wf-sidebar-location{display:flex;align-items:center;gap:10px;max-width:100%;}
.wf-copyright-logo{display:block;width:75%;max-height:40px;object-fit:contain;object-position:left center;background:transparent;}
.wf-copyright-text,.wf-sidebar-location span{max-width:100%;overflow-wrap:anywhere;}

/* iPhone focus zoom: keep editable controls at a readable size before focus.
   Preserve manual pinch zoom; do not restrict the viewport scale. */
@media (max-width:1023px), (pointer:coarse) {
  html body :is(input:not([type="checkbox"],[type="radio"],[type="hidden"],[type="button"],[type="submit"],[type="reset"],[type="color"],[type="range"],[type="file"]),select,textarea,[contenteditable="true"]) {
    font-size:16px!important;
  }
}
