@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.table{display:table}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#101214;--ink-soft:#2b2f33;--muted:#6a7178;--line:#e4e6e8;--line-strong:#cfd3d7;--paper:#fff;--surface:#fff;--soft:#f6f7f8;--soft-strong:#eceff1;--white:#fff;--shadow:0 1px 2px #1012140d}*{box-sizing:border-box}html,body{background:var(--paper);height:100%}body{color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;overflow-x:hidden}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.62}h1,h2,p{margin:0}.auth-split-screen{background:var(--white);grid-template-columns:minmax(0,6fr) minmax(380px,4fr);min-height:100vh;display:grid}.auth-visual{min-height:100vh;position:relative;overflow:hidden}.auth-visual img{object-fit:cover;object-position:41% center}.auth-panel{background:var(--white);border-left:1px solid var(--line);grid-template-rows:auto minmax(0,1fr);gap:20px;min-height:100vh;padding:clamp(22px,3.2vw,38px);display:grid}.auth-panel-top{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;display:flex}.auth-card{align-content:center;justify-self:stretch;gap:18px;width:100%;max-width:620px;display:grid}.auth-panel h1{letter-spacing:0;font-size:clamp(2rem,4vw,2.7rem);font-weight:500;line-height:1.04}.auth-helper{color:var(--muted);max-width:520px;margin-top:12px;font-size:.95rem;line-height:1.5}.auth-logo{object-fit:contain;object-position:left center;width:290px;max-width:min(290px,72%);height:36px;display:block}.auth-theme-toggle{background:var(--soft);border:1px solid var(--line);border-radius:999px;flex:none;align-items:center;gap:2px;padding:3px;display:inline-flex}.auth-theme-toggle button{color:var(--muted);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.auth-theme-toggle button.active{background:var(--white);color:var(--ink);box-shadow:0 1px 2px #1012141a}.auth-form{gap:12px;display:grid}.auth-form label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:.78rem;font-weight:760;display:grid}.auth-form input{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);text-transform:none;border-radius:7px;outline:0;width:100%;min-height:42px;padding:9px 10px;font-weight:500}.auth-form input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #10121414}.password-field{display:grid;position:relative}.password-field input{padding-right:44px}.password-field button{color:var(--muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:absolute;top:4px;right:4px}.password-field button:hover{background:var(--soft);color:var(--ink)}.auth-form .primary-action{width:100%;font-weight:780}.auth-switch{color:var(--muted);text-align:center;font-size:.9rem}.auth-switch button{color:var(--ink);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:760;text-decoration:underline}.auth-inline-action{color:var(--ink);text-underline-offset:3px;background:0 0;border:0;justify-self:center;padding:0;font-weight:760;text-decoration:underline}.auth-theme-dark{background:#0f1113}.auth-theme-dark .auth-panel{color:#f7f8f8;background:#0f1113;border-left-color:#272b30}.auth-theme-dark .auth-panel h1,.auth-theme-dark .auth-switch button,.auth-theme-dark .auth-inline-action{color:#f7f8f8}.auth-theme-dark .auth-theme-toggle{background:#181b1f;border-color:#30353a}.auth-theme-dark .auth-theme-toggle button.active{color:#0f1113;background:#f7f8f8}.auth-theme-dark .auth-form label,.auth-theme-dark .auth-switch,.auth-theme-dark .auth-helper{color:#aeb5bc}.auth-theme-dark .auth-form input{color:#f7f8f8;background:#171a1d;border-color:#343a40}.auth-theme-dark .auth-form input:focus{border-color:#f7f8f8;box-shadow:0 0 0 3px #f7f8f81a}.auth-theme-dark .password-field button:hover{color:#f7f8f8;background:#24282d}.auth-theme-dark .auth-form .primary-action{color:#0f1113;background:#f7f8f8;border-color:#f7f8f8}.auth-theme-dark .form-alert{color:#f7f8f8;background:#181b1f;border-color:#343a40}.dashboard-app{background:var(--white);grid-template-columns:248px minmax(0,1fr);height:100vh;min-height:100vh;display:grid;overflow:hidden}.dashboard-sidebar{background:var(--white);border-right:1px solid var(--line);color:var(--ink);flex-direction:column;gap:20px;height:100vh;min-height:100vh;padding:20px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-logo{object-fit:contain;object-position:left center;width:190px;max-width:190px;height:30px;display:block}.sidebar-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sidebar-close,.mobile-menu-button{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);border-radius:8px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:none}.mobile-nav-backdrop{display:none}.dashboard-nav{gap:5px;display:grid}.dashboard-nav button{color:var(--ink-soft);text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:9px;width:100%;min-height:36px;padding:7px 9px;font-size:.94rem;font-weight:760;display:flex}.dashboard-nav button svg{width:17px;height:17px}.dashboard-nav button.active,.dashboard-nav button:hover{background:var(--soft);color:var(--ink)}.nav-section-label{color:#7b89a4;letter-spacing:.07em;text-transform:uppercase;margin:10px 0 1px;font-size:.68rem;font-weight:800;display:block}.nav-group{gap:4px;display:grid}.dashboard-nav .nav-parent svg:last-child{margin-left:auto}.nav-children{gap:1px;padding:1px 0 3px 28px;display:grid}.nav-children button{color:var(--ink-soft);min-height:30px;padding:5px 8px;font-size:.9rem;font-weight:680}.dashboard-shell-nav{gap:10px;margin-top:10px;display:grid}.dashboard-shell-nav span,.dashboard-shell-account span:first-child,.dashboard-shell-account strong,.dashboard-shell-account small,.dashboard-shell-content{background:var(--soft);border-radius:7px}.dashboard-shell-nav span{height:34px}.sidebar-account{border-top:1px solid var(--line);gap:6px;margin-top:auto;padding:14px 4px 0;display:grid}.sidebar-account>div{align-items:center;gap:9px;min-width:0;display:flex}.sidebar-account span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:800}.sidebar-account strong{font-size:.95rem}.sidebar-account small{color:var(--muted);font-weight:800}.sidebar-avatar,.topbar-avatar,.staff-avatar,.avatar-preview{background:var(--ink);color:var(--white);flex:none;justify-content:center;align-items:center;font-weight:900;display:inline-flex;overflow:hidden}.dashboard-shell-account span:first-child{width:74px;height:10px}.dashboard-shell-account .sidebar-avatar{background:var(--soft-strong)}.dashboard-shell-account strong{width:112px;height:14px}.dashboard-shell-account small{width:68px;height:12px}.dashboard-shell-content{min-height:180px;margin:clamp(18px,2.4vw,28px)}.sidebar-avatar,.staff-avatar{border-radius:999px;width:34px;height:34px;font-size:.72rem}.sidebar-account .sidebar-avatar{color:var(--white);text-transform:none;font-size:.7rem}.topbar-avatar{border:1px solid #ffffff2e;border-radius:999px;width:28px;height:28px;font-size:.72rem}.sidebar-avatar img,.topbar-avatar img,.staff-avatar img,.avatar-preview img{object-fit:cover;width:100%;height:100%}.dashboard-main{background:var(--white);grid-template-rows:auto 1fr;min-width:0;height:100vh;display:grid;overflow-y:auto}.holiday-topbar{background:var(--white);border-bottom:1px solid var(--line);z-index:20;align-items:center;gap:18px;min-height:64px;padding:10px clamp(16px,2.4vw,28px);display:flex;position:sticky;top:0}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.topbar-search-wrap{flex:1;min-width:220px;max-width:780px;position:relative}.topbar-search{background:var(--white);border:1px solid var(--line-strong);color:var(--muted);border-radius:8px;flex:1;align-items:center;gap:9px;width:100%;min-width:220px;max-width:100%;padding:0 11px;display:flex}.topbar-search input{color:var(--ink);background:0 0;border:0;outline:0;flex:1;min-width:0;min-height:40px}.topbar-search input::placeholder{color:var(--muted)}.topbar-search input[type=search]::-webkit-search-cancel-button{display:none}.topbar-search input[type=search]::-webkit-search-decoration{display:none}.search-clear{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.search-clear:hover,.search-clear:focus-visible{background:var(--soft);border-color:var(--line);color:var(--ink);outline:0}.search-results{background:var(--white);border:1px solid var(--line-strong);z-index:60;border-radius:8px;gap:4px;max-height:min(420px,100vh - 100px);padding:7px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 46px #10121421}.search-result-item{color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;gap:2px;width:100%;min-height:54px;padding:9px 11px;display:grid}.search-result-item:hover,.search-result-item:focus-visible{background:var(--soft);border-color:var(--line);outline:0}.search-result-item strong{font-size:.94rem;line-height:1.2}.search-result-item span,.search-empty{color:var(--muted);font-size:.84rem}.search-empty{padding:12px}.bell-button,.user-menu-button{border:0;border-radius:999px;justify-content:center;align-items:center;min-height:38px;display:inline-flex}.bell-button{color:var(--ink-soft);background:0 0;width:38px;position:relative}.bell-button:hover{background:var(--soft)}.bell-button span{background:var(--ink);border:2px solid var(--white);color:var(--white);border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;font-size:.68rem;font-weight:900;display:inline-flex;position:absolute;top:-2px;right:-3px}.notification-menu{position:relative}.notification-dropdown{background:var(--white);border:1px solid var(--line);z-index:35;border-radius:8px;gap:8px;min-width:340px;max-width:min(360px,100vw - 28px);padding:10px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 16px 32px #1012141f}.notification-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:6px 7px 10px;display:flex}.notification-header>div{gap:1px;display:grid}.notification-header strong{font-size:.95rem}.notification-header span{color:var(--muted);font-size:.78rem;font-weight:800}.notification-list{gap:4px;max-height:390px;display:grid;overflow:auto}.notification-item{color:var(--ink);text-align:left;background:0 0;border:0;border-radius:7px;grid-template-columns:8px minmax(0,1fr);align-items:start;gap:9px;padding:10px 9px;display:grid}.notification-item:hover{background:var(--soft)}.notification-item>span{background:0 0;border-radius:999px;width:7px;height:7px;margin-top:6px}.notification-item.unread>span{background:var(--ink)}.notification-item>div{gap:3px;min-width:0;display:grid}.notification-item strong,.notification-item p{overflow-wrap:anywhere}.notification-item p{color:var(--muted);font-size:.84rem;line-height:1.35}.notification-item small,.notification-empty{color:var(--muted);font-size:.76rem;font-weight:800}.notification-empty{padding:12px 9px}.user-menu{position:relative}.user-menu-button{background:var(--ink);color:var(--white);gap:5px;padding:0 8px 0 5px}.user-dropdown{background:var(--white);border:1px solid var(--line);z-index:30;border-radius:8px;gap:4px;min-width:220px;padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 16px 32px #1012141f}.user-card{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-bottom:4px;padding:8px 9px 10px;display:flex}.user-card>div{gap:1px;min-width:0;display:grid}.user-card span{color:var(--muted);font-size:.82rem}.user-dropdown button{color:var(--ink);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;min-height:38px;padding:8px 9px;display:flex}.user-dropdown button:hover{background:var(--soft)}.holiday-shell{align-content:start;gap:20px;width:100%;max-width:none;margin:0;padding:24px clamp(22px,3vw,42px) 42px;display:grid}.workflow-header{justify-content:space-between;align-items:end;gap:16px;padding-bottom:2px;display:flex}.eyebrow{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:.74rem;font-weight:900;display:block}.workflow-header h1{color:var(--ink);letter-spacing:0;font-size:clamp(1.65rem,3.4vw,2.35rem);line-height:1.08}.header-stats{grid-template-columns:repeat(3,minmax(100px,1fr));gap:8px;min-width:min(100%,400px);display:grid}.holiday-kpi-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-pill{background:var(--white);border:1px solid var(--line);border-radius:8px;gap:2px;min-height:58px;padding:9px 11px;display:grid}.stat-pill span,.booking-summary span,.detail-list dt,.requests-heading span,.request-row span,.cover-row span,.field span,.status-note{color:var(--muted)}.stat-pill strong{font-size:1.25rem;line-height:1}.booking-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.32fr);align-items:start;gap:20px;display:grid}.staff-holiday-layout{grid-template-columns:minmax(0,1fr) minmax(340px,.36fr)}.request-cta-panel{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-height:156px;padding:clamp(18px,2vw,24px);display:flex}.request-cta-panel>div{gap:5px;min-width:0;max-width:620px;display:grid}.request-cta-panel h2{letter-spacing:0;font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.15}.request-cta-panel p{color:var(--muted);font-size:.95rem;line-height:1.55}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.home-panel,.placeholder-panel{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;gap:16px;padding:clamp(18px,2vw,24px);display:grid}.home-panel.wide{grid-column:1/-1}.compact-action{min-height:34px;padding:7px 11px}.home-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.home-metrics div{background:var(--soft);border:1px solid var(--line);border-radius:8px;gap:4px;min-height:78px;padding:11px;display:grid}.home-metrics dt{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.home-metrics dd{margin:0;font-size:1.35rem;font-weight:900;line-height:1}.project-shortcuts{gap:10px;display:grid}.project-shortcuts button{background:var(--white);border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;border-radius:8px;align-items:center;gap:3px;min-height:58px;padding:12px 14px;display:grid}.project-shortcuts button:hover{background:var(--soft);border-color:var(--line-strong)}.project-shortcuts span{color:var(--muted);font-size:.86rem;font-weight:700}.placeholder-list{gap:8px;display:grid}.placeholder-list span{border:1px solid var(--line);color:var(--ink-soft);border-radius:8px;min-height:40px;padding:9px 10px;font-weight:800}.announcements-panel{align-content:start}.home-announcements-panel{border-color:var(--line-strong);gap:18px}.home-announcements-panel .panel-heading h2{font-size:1.08rem}.announcement-list{gap:10px;display:grid}.featured-announcement-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.announcement-item{appearance:none;background:var(--white);border:1px solid var(--line);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:8px;gap:8px;width:100%;padding:14px;display:grid}.announcement-item:hover,.announcement-item:focus-visible{border-color:var(--ink);outline:none}.announcement-item.important{background:#fff8ee;border-color:#f0b766}.announcement-item.policy{background:#eef7ff;border-color:#91c7ef}.announcement-item>div{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.announcement-item strong{overflow-wrap:anywhere;min-width:0}.announcement-item>div span{border:1px solid var(--line);background:var(--soft);color:var(--ink-soft);text-transform:uppercase;border-radius:999px;flex:none;padding:5px 9px;font-size:.68rem;font-weight:900;line-height:1}.announcement-item.important>div span{color:#111;background:#f59e0b;border-color:#f59e0b}.announcement-item.policy>div span{color:#fff;background:#2563eb;border-color:#2563eb}.announcement-item p{color:var(--ink-soft);overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.announcement-item small{color:var(--muted);font-size:.78rem;font-weight:800}.announcement-attachment-chip{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;max-width:100%;font-size:.82rem;font-weight:800;display:inline-flex;overflow:hidden}.announcement-empty{background:var(--soft);border:1px solid var(--line);border-radius:8px;gap:3px;padding:16px;display:grid}.announcement-empty span{color:var(--muted)}.announcement-modal{max-width:min(780px,100vw - 28px)}.announcement-read-modal{max-width:min(720px,100vw - 28px)}.announcement-read-modal .panel-heading{align-items:flex-start}.announcement-read-modal .panel-heading h2{overflow-wrap:anywhere}.announcement-read-meta{border-bottom:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;padding-bottom:14px;font-size:.86rem;font-weight:800;display:flex}.announcement-priority-pill{border:1px solid var(--line);background:var(--soft);color:var(--ink-soft);text-transform:uppercase;border-radius:999px;flex:none;padding:6px 10px;font-size:.72rem;font-weight:900;line-height:1}.announcement-priority-pill.important{color:#111;background:#f59e0b;border-color:#f59e0b}.announcement-priority-pill.policy{color:#fff;background:#2563eb;border-color:#2563eb}.announcement-read-body{color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap;max-height:min(52vh,520px);font-size:1rem;line-height:1.65;overflow:auto}.announcement-attachment-link,.selected-attachment{border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;gap:10px;min-width:0;padding:11px 12px;text-decoration:none;display:flex}.announcement-attachment-link:hover{border-color:var(--ink)}.announcement-attachment-link>span,.selected-attachment>span{flex:1;gap:1px;min-width:0;display:grid}.announcement-attachment-link strong,.selected-attachment strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.announcement-attachment-link small,.selected-attachment small{color:var(--muted);font-size:.78rem;font-weight:800}.announcement-file-field{align-items:start}.document-upload{border:1px dashed var(--line-strong);color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:46px;padding:10px 12px;font-weight:850;display:inline-flex}.document-upload:hover{background:var(--soft);border-color:var(--ink)}.document-upload input{display:none}.upcoming-leave-list{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.upcoming-leave-row{border-top:1px solid var(--line);grid-template-columns:minmax(130px,.4fr) minmax(0,1fr) auto;align-items:center;gap:12px;min-height:50px;padding:11px 12px;display:grid}.upcoming-leave-row:first-child{border-top:0}.upcoming-leave-person{color:var(--ink);overflow-wrap:anywhere;min-width:0;font-weight:900}.upcoming-leave-dates{color:var(--ink);overflow-wrap:anywhere;min-width:0;font-weight:760}.upcoming-leave-list>p{color:var(--muted);padding:14px}.mini-table{border:1px solid var(--line);border-radius:8px;overflow:hidden}.mini-table div{border-top:1px solid var(--line);grid-template-columns:minmax(130px,.6fr) minmax(220px,1fr) minmax(86px,.25fr);align-items:center;gap:12px;min-height:48px;padding:10px 12px;display:grid}.mini-table div:first-child{border-top:0}.mini-table span,.mini-table em,.placeholder-panel p{color:var(--muted)}.mini-table em{background:var(--soft);border:1px solid var(--line);border-radius:999px;justify-self:start;padding:3px 9px;font-size:.72rem;font-style:normal;font-weight:900}.mini-table p{color:var(--muted);padding:14px}.placeholder-panel{text-align:center;place-items:center;min-height:280px}.placeholder-panel h2{margin-bottom:4px;font-size:1.25rem}.cloud-file-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);align-items:stretch;gap:20px;display:grid}.cloud-status-panel,.cloud-files-panel{gap:16px;padding:clamp(18px,2vw,24px);display:grid}.cloud-status-panel p{color:var(--muted);max-width:680px}.cloud-path{background:var(--soft);border:1px solid var(--line);border-radius:8px;gap:3px;padding:13px;display:grid}.cloud-path span,.cloud-access-list dt,.cloud-file-row small,.cloud-file-row>span{color:var(--muted)}.cloud-path span,.cloud-access-list dt{text-transform:uppercase;font-size:.75rem;font-weight:900}.cloud-access-list{gap:10px;margin:0;display:grid}.cloud-access-list div{border-top:1px solid var(--line);gap:2px;padding-top:10px;display:grid}.cloud-access-list div:first-child{border-top:0;padding-top:0}.cloud-access-list dd{margin:0;font-weight:850}.cloud-file-table{border:1px solid var(--line);border-radius:8px;overflow:hidden}.cloud-file-head,.cloud-file-row{grid-template-columns:minmax(240px,1.2fr) minmax(260px,1.1fr) minmax(130px,.55fr) minmax(110px,.45fr) minmax(84px,.3fr);gap:14px;display:grid}.cloud-file-head{background:var(--soft);color:var(--muted);text-transform:uppercase;padding:10px 14px;font-size:.75rem;font-weight:900}.cloud-file-row{border-top:1px solid var(--line);align-items:center;min-height:66px;padding:13px 14px}.cloud-file-row>div{align-items:center;gap:10px;min-width:0;display:flex}.cloud-file-row>div>span{gap:1px;min-width:0;display:grid}.cloud-file-row strong,.cloud-file-row span{overflow-wrap:anywhere;min-width:0}.settings-grid{grid-template-columns:minmax(360px,.45fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.settings-tabs{border-bottom:1px solid var(--line);align-items:center;gap:4px;min-width:0;display:flex}.settings-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;min-height:42px;padding:10px 12px;font-weight:900}.settings-tabs button.active,.settings-tabs button:hover{border-bottom-color:var(--ink);color:var(--ink)}.settings-panel{gap:16px;width:100%;padding:clamp(18px,2vw,24px);display:grid}.profile-settings-panel .primary-action,.staff-form-panel .primary-action{justify-self:start}.workflow-header .primary-action{flex:none}.workflow-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.profile-settings-grid{grid-template-columns:minmax(240px,.3fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}.avatar-editor{background:var(--soft);border:1px solid var(--line);border-radius:8px;align-items:center;gap:14px;min-width:0;padding:14px;display:flex}.compact-avatar-editor{background:var(--white)}.profile-settings-panel .avatar-editor{background:0 0;border:0;align-items:flex-start;padding:0}.avatar-preview{border-radius:8px;width:72px;height:72px;font-size:1.1rem}.avatar-preview.small{width:52px;height:52px}.avatar-editor>div:last-child{gap:5px;min-width:0;display:grid}.avatar-editor strong,.avatar-editor span{overflow-wrap:anywhere;min-width:0}.avatar-editor span{color:var(--muted);font-size:.88rem}.avatar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.avatar-upload{cursor:pointer;min-height:35px;padding:7px 10px;font-size:.86rem}.avatar-upload input{display:none}.text-action{color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;min-height:30px;padding:0;font-size:.86rem;font-weight:900;display:inline-flex}.text-action:hover{text-underline-offset:3px;text-decoration:underline}.danger-text-action{color:#8c1d18}.compact-action{min-height:35px;padding:7px 10px;font-size:.86rem}.three-column-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.two-column-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.field input:disabled{background:var(--soft);color:var(--muted);cursor:not-allowed}.success-note{background:var(--soft);border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:.9rem;font-weight:760}.staff-member-table{border:1px solid var(--line);border-radius:8px;overflow:auto hidden}.staff-list-panel,.teams-panel{grid-column:1/-1}.team-create-form{grid-template-columns:minmax(220px,.7fr) minmax(280px,1fr) auto;align-items:end;gap:12px;display:grid}.team-colour-field{gap:8px;min-width:0;display:grid}.team-colour-field>span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:900}.team-colour-options{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.team-colour-option{--team-bg:#eef6ea;--team-border:#b9dfa9;--team-ink:#2f6d1f;cursor:pointer;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:inline-flex}.team-colour-option input{opacity:0;position:absolute}.team-colour-option span{background:var(--team-bg);border:1px solid var(--team-border);color:#0000;border-radius:999px;width:18px;height:18px;font-size:0;display:block}.team-colour-option:has(input:checked){border-color:var(--team-ink)}.team-form-actions,.team-card-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.team-warning-note{color:#854d0e;background:#fff8e6;border:1px solid #f0c36d;border-radius:8px;margin:0;padding:10px 12px;font-size:.88rem;font-weight:760}.team-list{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.team-card{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr;align-items:stretch;gap:14px;min-width:0;min-height:112px;padding:18px;display:grid}.team-card-copy{gap:5px;min-width:0;display:grid}.team-card strong{overflow-wrap:anywhere;line-height:1.25}.team-card span:not(.team-pill),.muted-note{color:var(--muted);font-size:.9rem}.team-card>.team-card-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.team-card-actions .team-pill{text-overflow:ellipsis;white-space:nowrap;max-width:min(100%,240px);overflow:hidden}.team-card-buttons{flex:none;gap:8px;margin-left:auto;display:flex}.team-pill{--team-bg:#eef6ea;--team-border:#b9dfa9;--team-ink:#2f6d1f;background:var(--team-bg);border:1px solid var(--team-border);color:var(--team-ink);border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:25px;padding:4px 10px;font-size:.72rem;font-weight:900;display:inline-flex}.staff-team-list,.team-selector{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.team-choice{--team-bg:var(--soft);--team-border:var(--line);--team-ink:var(--ink);background:var(--soft);border:1px solid var(--line);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:6px;max-width:100%;min-height:32px;padding:6px 12px;font-size:.82rem;font-weight:850;display:inline-flex;position:relative}.team-choice:has(input:checked){background:var(--team-bg);border-color:var(--team-border);color:var(--team-ink)}.team-choice input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.team-choice span{overflow-wrap:anywhere;line-height:1.15}.team-choice svg{background:var(--team-ink);color:#fff;border-radius:999px;flex:none;width:18px;height:18px;padding:2px}.team-choice:focus-within{outline:0;box-shadow:0 0 0 3px #62bd3f2e}.team-colour-green{--team-bg:#eef6ea;--team-border:#9cd486;--team-ink:#2f6d1f}.team-colour-blue{--team-bg:#eaf2ff;--team-border:#9dc0f5;--team-ink:#1d4f91}.team-colour-orange{--team-bg:#fff2e2;--team-border:#f1b56f;--team-ink:#8a4b10}.team-colour-purple{--team-bg:#f4efff;--team-border:#c3a9f5;--team-ink:#5d3598}.team-colour-teal{--team-bg:#e6f7f4;--team-border:#86d4c8;--team-ink:#11665c}.team-colour-red{--team-bg:#fff0ee;--team-border:#efa6a0;--team-ink:#9b2d24}.team-colour-yellow{--team-bg:#fff8d8;--team-border:#e7c952;--team-ink:#74620d}.team-colour-pink{--team-bg:#fff0f6;--team-border:#efa3c3;--team-ink:#91345e}.team-colour-indigo{--team-bg:#eef0ff;--team-border:#aab4f4;--team-ink:#354495}.team-colour-cyan{--team-bg:#e8f8ff;--team-border:#8bd3ee;--team-ink:#0f6178}.team-colour-lime{--team-bg:#f2fadf;--team-border:#b9dc62;--team-ink:#4b6817}.team-colour-slate{--team-bg:#f1f3f5;--team-border:#c5ccd3;--team-ink:#3f4852}.staff-member-head,.staff-member-row{grid-template-columns:minmax(180px,1.1fr) minmax(180px,1fr) minmax(150px,.8fr) minmax(90px,.36fr) 78px;gap:14px;display:grid}.staff-member-table.bulk-mode .staff-member-head,.staff-member-table.bulk-mode .staff-member-row{grid-template-columns:36px minmax(180px,1.1fr) minmax(180px,1fr) minmax(150px,.8fr) minmax(90px,.36fr) 78px}.staff-member-head{background:var(--soft);color:var(--muted);text-transform:uppercase;padding:10px 14px;font-size:.75rem;font-weight:900}.staff-member-row{border-top:1px solid var(--line);align-items:center;min-height:62px;padding:12px 14px}.staff-row-person{align-items:center;gap:10px;min-width:0;display:flex}.staff-row-person>span:last-child{gap:2px;min-width:0;display:grid}.staff-member-row strong,.staff-member-row span{overflow-wrap:anywhere;min-width:0}.staff-row-person small,.staff-member-row>span{color:var(--muted)}.role-badge{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:25px;padding:3px 10px;font-size:.72rem;font-weight:900;display:inline-flex}.role-badge.role-admin{color:#fff;background:#101214;border-color:#101214}.role-badge.role-manager{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.role-badge.role-staff{color:#166534;background:#ecfdf3;border-color:#bbf7d0}.staff-row-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.staff-bulk-cell{justify-content:center;align-items:center;display:inline-flex}.staff-bulk-cell input,.staff-member-head input{accent-color:var(--ink);width:16px;height:16px}.bulk-staff-panel{background:var(--soft);border:1px solid var(--line);border-radius:8px;gap:14px;padding:14px;display:grid}.bulk-staff-summary{justify-content:space-between;align-items:center;gap:16px;display:flex}.bulk-staff-summary>div:first-child{gap:2px;display:grid}.bulk-staff-summary span{color:var(--muted);font-size:.9rem}.bulk-staff-actions,.staff-list-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.staff-bulk-link{min-height:35px;padding:0 2px}.staff-bulk-link:disabled{color:var(--muted);cursor:not-allowed;opacity:.55;text-decoration:none}.bulk-team-selector{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:10px}.staff-member-table .team-pill{text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;max-width:150px;line-height:1.25;display:inline-block;overflow:hidden}.icon-action{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.icon-action:hover{background:var(--soft)}.danger-action{color:#8c1d18}.danger-action:disabled{color:var(--muted);cursor:not-allowed;opacity:.45}.profile-settings-panel,.security-settings-panel,.connections-settings-panel,.credentials-settings-panel{max-width:none}.credential-toolbar{grid-template-columns:minmax(280px,.55fr) minmax(0,1fr);align-items:end;gap:16px;display:grid}.credential-list{gap:12px;display:grid}.credential-person-list{gap:10px;display:grid}.credential-person-card{background:var(--white);border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;grid-template-columns:34px minmax(180px,.7fr) minmax(160px,.5fr) minmax(260px,1fr) minmax(190px,.8fr) 18px;align-items:center;gap:14px;width:100%;min-height:78px;padding:14px;display:grid}.credential-person-card:hover{border-color:var(--line-strong);box-shadow:0 12px 30px #1012140f}.credential-person-card>div{gap:2px;min-width:0;display:grid}.credential-person-card strong,.credential-person-card span{min-width:0}.credential-person-card>div>span,.credential-person-next{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.credential-person-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.credential-person-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.credential-person-stats>span{background:var(--soft);border:1px solid var(--line);color:var(--muted);border-radius:8px;gap:2px;min-height:45px;padding:7px 9px;font-size:.72rem;font-weight:850;display:grid}.credential-person-stats strong{color:var(--ink);font-size:1rem}.credential-person-next{gap:2px;display:grid}.credential-person-next strong{color:var(--ink);text-transform:uppercase;font-size:.72rem}.credential-profile-card{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(220px,auto) auto;align-items:center;gap:16px;padding:16px;display:grid}.credential-profile-main{align-items:center;gap:14px;min-width:0;display:flex}.credential-profile-main>div{gap:3px;min-width:0;display:grid}.credential-profile-main strong{font-size:1.08rem}.credential-profile-main span:not(.avatar-preview){color:var(--muted)}.credential-profile-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.credential-card{border:1px solid var(--line);border-radius:8px;gap:14px;padding:16px;display:grid}.credential-main{align-items:center;gap:12px;min-width:0;display:flex}.credential-icon{background:var(--soft);border:1px solid var(--line);color:var(--ink);border-radius:8px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.credential-main>div{gap:4px;min-width:0;display:grid}.credential-main span,.credential-notes{color:var(--muted)}.credential-title-line{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.credential-title-line strong{overflow-wrap:anywhere;min-width:0}.credential-status{border:1px solid var(--line);text-transform:uppercase;border-radius:999px;justify-content:center;min-height:24px;padding:6px 10px;font-size:.7rem;font-weight:900;line-height:1;display:inline-flex}.credential-status.valid{color:#14532d;background:#eaf7ee;border-color:#99d4a8}.credential-status.review{color:#1d4f91;background:#eef4ff;border-color:#a9c4f5}.credential-status.warning{color:#854d0e;background:#fff8e6;border-color:#f0c36d}.credential-status.critical,.credential-status.expired{color:#8c1d18;background:#fff0f0;border-color:#f1a1a1}.credential-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.credential-meta span{background:var(--soft);border:1px solid var(--line);color:var(--muted);border-radius:8px;gap:3px;min-width:0;padding:11px 12px;display:grid}.credential-meta strong{color:var(--ink);text-transform:uppercase;font-size:.72rem}.credential-notes{margin:0;line-height:1.5}.credential-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.credential-no-document{color:var(--muted);align-items:center;gap:6px;margin-right:auto;font-size:.82rem;font-weight:800;display:inline-flex}.danger-outline-action{color:#8c1d18}.danger-primary-action{color:#fff;font:inherit;background:#b42318;border:1px solid #b42318;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:900;display:inline-flex}.danger-primary-action:hover{background:#8c1d18;border-color:#8c1d18}.danger-primary-action:disabled{cursor:wait;opacity:.68}.credential-modal{width:min(100%,900px);max-width:900px}.team-modal{width:min(100%,640px);max-width:640px}.confirmation-backdrop{z-index:120}.confirmation-modal{background:var(--white);border:1px solid var(--line-strong);border-radius:8px;gap:16px;width:100%;max-width:min(520px,100vw - 28px);padding:22px;display:grid;box-shadow:0 24px 70px #1012143d}.confirmation-icon{color:#8c1d18;background:#fff0f0;border:1px solid #f1a1a1;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.confirmation-content{gap:8px;display:grid}.confirmation-content h2{margin:0;font-size:1.2rem}.confirmation-content p{color:var(--muted);margin:0;line-height:1.55}.confirmation-detail{background:#fff8e6;border:1px solid #f0c36d;border-radius:8px;padding:10px 12px;font-size:.9rem;font-weight:800;color:#854d0e!important}.confirmation-field{color:var(--ink);letter-spacing:.04em;text-transform:uppercase;gap:7px;font-size:.78rem;font-weight:850;display:grid}.confirmation-field textarea{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);letter-spacing:0;resize:vertical;text-transform:none;border-radius:7px;outline:0;width:100%;min-height:102px;padding:10px 11px;font-size:.94rem;font-weight:500;line-height:1.45}.confirmation-field textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #10121414}.confirmation-error{background:#fff0f0;border:1px solid #f1a1a1;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:.9rem;font-weight:800;display:flex;color:#8c1d18!important}.confirmation-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.connection-list{grid-template-columns:1fr;gap:12px;display:grid}.connection-card{border:1px solid var(--line);border-radius:8px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:96px;padding:16px;display:grid}.connection-card.primary-connection{border-color:var(--line-strong)}.connection-icon{background:var(--white);border:1px solid var(--line);color:var(--ink);border-radius:8px;justify-content:center;align-items:center;width:56px;height:56px;display:inline-flex;overflow:hidden}.connection-icon img{object-fit:contain;width:auto;max-width:42px;height:auto;max-height:42px}.connection-card>div:nth-child(2){gap:4px;min-width:0;display:grid}.connection-card strong{font-size:.98rem}.connection-card span{color:var(--muted);line-height:1.45}.connection-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.connection-status{border:1px solid var(--line);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:25px;padding:4px 10px;font-size:.72rem;font-weight:900;display:inline-flex}.connection-status.connected{color:#14532d;background:#eaf7ee;border-color:#99d4a8}.connection-status.not-connected{color:#854d0e;background:#fff8e6;border-color:#f0c36d}.security-settings-grid{gap:12px;display:grid}.security-option{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:14px;display:flex}.security-option>div{align-items:center;gap:12px;min-width:0;display:flex}.security-option-icon{background:var(--soft);border:1px solid var(--line);color:var(--ink);border-radius:8px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.security-option h3{margin:0;font-size:.98rem}.security-option p{color:var(--muted);margin-top:2px;font-size:.9rem}.security-placeholder{border:1px solid var(--line-strong);color:var(--muted);text-transform:uppercase;border-radius:999px;flex:none;padding:4px 10px;font-size:.72rem;font-weight:900}.staff-edit-modal{width:min(100%,920px);max-width:920px}.staff-edit-modal-form{gap:18px}.staff-edit-tabs{border-bottom:1px solid var(--line);align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.staff-edit-tabs button{color:var(--muted);font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;min-height:40px;padding:9px 12px;font-weight:900}.staff-edit-tabs button.active,.staff-edit-tabs button:hover{border-bottom-color:var(--ink);color:var(--ink)}.staff-edit-section{gap:18px;display:grid}.staff-edit-team-selector{background:var(--soft);border:1px solid var(--line);border-radius:8px;align-items:flex-start;padding:10px}.staff-security-card{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.staff-security-card>div{align-items:center;gap:12px;min-width:0;display:flex}.staff-security-card h3,.staff-security-card p{margin:0}.staff-security-card p{color:var(--muted);font-size:.9rem}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:10px;padding-top:16px;display:flex}.coming-soon-panel{background:var(--soft);border:1px solid var(--line);border-radius:8px;place-content:center start;gap:4px;min-height:140px;padding:18px;display:grid}.coming-soon-panel span{color:var(--muted)}.booking-panel,.balance-panel,.team-panel,.requests-panel,.approval-panel,.admin-add-panel,.staff-overview-panel,.calendar-panel,.staff-calendar-panel,.cloud-status-panel,.cloud-files-panel,.settings-panel{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.booking-panel{gap:18px;padding:clamp(18px,2vw,24px);display:grid}.modal-backdrop{z-index:80;background:#10121475;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0;overflow:hidden}.holiday-modal{width:min(100%,780px);max-width:780px;max-height:min(92vh,820px);display:flex;overflow:hidden}.admin-holiday-modal{width:min(100%,860px);max-width:860px}.modal-form{max-height:inherit;overscroll-behavior:contain;scrollbar-width:none;border-color:#ffffff47;gap:16px;width:100%;min-width:0;padding:clamp(18px,2.4vw,26px);overflow:hidden auto;box-shadow:0 24px 70px #10121438}.modal-form::-webkit-scrollbar{display:none}.modal-close{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.modal-close:hover{background:var(--soft)}.panel-heading,.requests-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-panel .requests-heading,.staff-calendar-panel .requests-heading{flex-wrap:nowrap}.panel-heading>div,.requests-heading>div{align-items:center;gap:9px;min-width:0;display:flex}.panel-heading h2,.requests-heading h2{font-size:1rem;line-height:1.2}.panel-heading svg{color:var(--ink);flex:none}.panel-heading.compact{margin-bottom:12px}.status-note{text-align:right;font-size:.84rem}.form-alert{background:var(--soft);border:1px solid var(--line-strong);color:var(--ink);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0;display:grid}.field-grid>*{min-width:0}.field-grid.single{grid-template-columns:1fr}.field{gap:7px;min-width:0;display:grid}.field-wide{grid-column:1/-1}.field span{letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:850}.field input,.field select,.field textarea{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);font:inherit;border-radius:7px;outline:0;width:100%;min-height:43px;padding:10px 11px;font-size:.94rem}.field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);background-position:calc(100% - 19px),calc(100% - 13px);background-repeat:no-repeat;background-size:6px 6px;padding-right:42px}.field textarea{resize:vertical;min-height:104px;line-height:1.45}.field input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;padding-right:12px}.field input[type=date]::-webkit-calendar-picker-indicator{background-color:var(--soft);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:5px}.field input[type=date]::-webkit-calendar-picker-indicator:hover{border-color:var(--line-strong);background-color:#fff}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #10121414}.field small{color:var(--ink);font-weight:800}.segmented-control{background:var(--soft);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;width:100%;min-width:0;padding:3px;display:grid}.segmented-control button{color:var(--muted);overflow-wrap:anywhere;white-space:normal;background:0 0;border:0;border-radius:6px;min-width:0;min-height:37px;padding:7px 8px;font-size:.86rem;font-weight:850;line-height:1.2}.segmented-control button.active{background:var(--white);color:var(--ink);box-shadow:0 1px 2px #1012141a}.booking-summary{background:var(--soft);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:18px;min-width:0;padding:16px;display:grid}.booking-summary div{gap:3px;min-width:0;display:grid}.booking-summary strong{font-size:1.08rem}.booking-summary .primary-action{justify-self:end}.calculation-strip{flex-wrap:wrap;gap:7px;display:flex}.calculation-strip span{background:var(--white);border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:780}.primary-action,.secondary-action{white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:41px;padding:10px 14px;font-weight:900;display:inline-flex}.primary-action{background:var(--ink);border:1px solid var(--ink);color:var(--white)}.primary-action svg{color:currentColor}.primary-action:hover{background:#2a2e32}.primary-action:disabled,.primary-action:disabled:hover{background:var(--ink)}.secondary-action{background:var(--white);border:1px solid var(--line-strong);color:var(--ink)}.secondary-action:hover{background:var(--soft)}.admin-leave-stack{align-items:start;gap:22px;display:grid}.admin-kpi-row{grid-template-columns:repeat(4,minmax(0,1fr))}.approval-panel,.admin-add-panel,.staff-overview-panel,.calendar-panel,.staff-calendar-panel{gap:18px;padding:clamp(18px,2vw,24px);display:grid}.approval-list{border:1px solid var(--line);border-radius:8px;gap:10px;padding:10px;display:grid}.approval-row{background:var(--white);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:104px;padding:18px;display:grid}.approval-copy{gap:5px;min-width:0;display:grid}.approval-title-line{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.approval-row span,.approval-row small{color:var(--muted)}.approval-row .request-status{flex:none}.approval-dates{font-size:.95rem}.approval-row strong,.approval-row span,.approval-row small{overflow-wrap:anywhere}.approval-meta{flex-wrap:wrap;gap:6px;margin-top:3px;display:flex}.approval-meta em{background:var(--soft);border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:3px 7px;font-size:.72rem;font-style:normal;font-weight:780}.approval-actions{align-items:center;gap:8px;display:flex}.month-actions{flex:none;grid-template-columns:34px auto 34px;justify-content:end;place-self:center end;align-items:center;gap:6px;margin-left:auto;display:grid}.requests-heading>.month-actions{grid-template-columns:34px 34px;width:74px;min-width:74px}.approval-actions button{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);border-radius:7px;min-height:36px;padding:7px 12px;font-weight:900}.month-actions button{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);border-radius:7px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;min-height:34px;padding:0;display:inline-flex}.month-actions span{color:var(--ink-soft);white-space:nowrap;padding-inline:4px;font-size:.86rem;font-weight:850}.requests-heading>.month-actions span{display:none}.month-actions button:hover{background:var(--soft)}.approval-actions button:last-child{background:var(--ink);border-color:var(--ink);color:var(--white)}.empty-panel{background:var(--soft);border:1px solid var(--line);color:var(--muted);border-radius:8px;align-items:center;min-height:82px;padding:14px;display:flex}.staff-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.staff-summary-card{border:1px solid var(--line);border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid}.staff-summary-card>div{gap:2px;display:grid}.staff-summary-card span,.staff-summary-card dt{color:var(--muted)}.staff-summary-card strong,.staff-summary-card span{overflow-wrap:anywhere}.staff-summary-card dl{gap:8px;margin:0;display:grid}.staff-summary-card dl div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:8px;display:flex}.staff-summary-card dt{text-transform:uppercase;font-size:.78rem;font-weight:900}.staff-summary-card dd{margin:0;font-weight:900}.calendar-grid{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.calendar-weekday{background:var(--soft);border-left:1px solid var(--line);color:var(--muted);text-transform:uppercase;padding:9px;font-size:.74rem;font-weight:900}.calendar-weekday:first-child{border-left:0}.calendar-day{background:var(--white);border-left:1px solid var(--line);border-top:1px solid var(--line);gap:8px;min-height:132px;padding:11px;display:grid}.calendar-day:nth-child(7n+1){border-left:0}.calendar-day.empty{background:#fafafa}.calendar-day.today{box-shadow:inset 0 0 0 1px var(--ink)}.calendar-day-picker{color:var(--ink);font:inherit;background:0 0;border:0;border-radius:999px;justify-content:center;justify-self:start;align-items:center;width:28px;height:28px;padding:0;font-size:.85rem;font-weight:900;display:inline-flex}.calendar-day-picker:hover{background:var(--soft)}.calendar-day-picker:focus-visible{outline:0;box-shadow:0 0 0 3px #1012141a}.calendar-day-picker:disabled{color:var(--muted);cursor:not-allowed;opacity:.56}.calendar-events{align-content:start;gap:4px;display:grid}.calendar-events span,.calendar-events em,.calendar-event{background:var(--soft);border:1px solid var(--line);color:var(--ink);overflow-wrap:anywhere;text-align:left;border-radius:6px;padding:4px 6px;font-size:.72rem;font-style:normal;font-weight:800;display:block}.calendar-event{cursor:pointer;width:100%;font-family:inherit;line-height:1.25}.calendar-event:hover{border-color:var(--line-strong)}.staff-calendar-grid .calendar-day{min-height:112px}.home-month-calendar .calendar-day{min-height:132px}.admin-calendar-grid .calendar-day{min-height:146px}.calendar-events .event-approved,.calendar-events .event-auto-approved{color:#14532d;background:#eaf7ee;border-color:#99d4a8}.calendar-events .event-pending{color:#854d0e;background:#fff8e6;border-color:#f0c36d}.calendar-events .event-cancellation-requested{color:#273a8a;background:#eef2ff;border-color:#a7b7f2}.calendar-events .event-rejected,.calendar-events .event-cancelled{color:#5f6873;background:#f5f5f5;border-color:#d6d8dc}.calendar-legend{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.calendar-legend span{color:var(--muted);align-items:center;gap:7px;font-size:.8rem;font-weight:780;display:inline-flex}.calendar-legend i{background:var(--ink);border:1px solid var(--ink);border-radius:999px;width:9px;height:9px;display:block}.calendar-legend span:nth-child(2) i{background:var(--soft);border-color:var(--line-strong)}.calendar-legend span:nth-child(3) i{background:var(--white);border-color:var(--ink)}.side-stack{gap:20px;display:grid}.balance-panel,.team-panel,.requests-panel{padding:clamp(18px,2vw,24px)}.balance-number{align-items:baseline;gap:8px;display:flex}.balance-number strong{font-size:2rem;line-height:1}.balance-number span{color:var(--muted);font-weight:800}.progress-track{background:var(--soft-strong);border-radius:999px;height:9px;margin:15px 0 13px;overflow:hidden}.progress-track span{background:var(--ink);border-radius:inherit;height:100%;display:block}.detail-list{gap:9px;margin:0;display:grid}.detail-list div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:9px;display:flex}.detail-list dt{font-size:.84rem;font-weight:800}.detail-list dd{text-align:right;margin:0;font-weight:900}.cover-list{gap:10px;display:grid}.cover-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.cover-row div{gap:1px;min-width:0;display:grid}.cover-row strong,.cover-row span{overflow-wrap:anywhere}.cover-status,.request-status{background:var(--soft);border:1px solid var(--line-strong);color:var(--ink);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:3px 9px;font-size:.72rem;font-weight:900;display:inline-flex}.cover-status.available,.request-status.approved{color:#14532d;background:#eaf7ee;border-color:#99d4a8}.request-status.auto-approved{color:#065f46;background:#e7f7f0;border-color:#8bd6bb}.cover-status.on-site,.request-status.pending{color:#854d0e;background:#fff8e6;border-color:#f0c36d}.cover-status.booked,.request-status.rejected{color:#9f1239;background:#fff1f2;border-color:#f4a8b2}.request-status.cancelled{color:#5f6873;background:#f5f5f5;border-color:#d6d8dc}.request-status.cancellation-requested{color:#273a8a;background:#eef2ff;border-color:#a7b7f2}.requests-panel{gap:16px;display:grid}.requests-heading>div{gap:1px;display:grid}.requests-heading span{font-size:.84rem}.request-table{border:1px solid var(--line);border-radius:8px;width:100%;overflow:hidden;container-type:inline-size}.request-head,.request-row{grid-template-columns:minmax(260px,1.5fr) minmax(160px,.8fr) minmax(70px,.28fr) minmax(130px,.55fr) minmax(132px,.48fr) minmax(160px,.55fr);gap:12px;width:100%;display:grid}.request-table.admin .request-head,.request-table.admin .request-row{grid-template-columns:minmax(210px,1.2fr) minmax(130px,.68fr) minmax(130px,.68fr) minmax(62px,.3fr) minmax(110px,.54fr) minmax(132px,.44fr) minmax(170px,.6fr)}.request-head{background:var(--soft);color:var(--muted);text-transform:uppercase;padding:10px 12px;font-size:.75rem;font-weight:900}.request-head span:nth-last-child(2),.request-row>.request-status{justify-self:start}.request-head span:last-child{justify-self:end}.request-row{background:var(--white);border-top:1px solid var(--line);align-items:center;min-height:64px;padding:11px 12px}.request-row>div{gap:2px;min-width:0;display:grid}.request-row strong,.request-row span{overflow-wrap:anywhere;min-width:0}.request-row>span{color:var(--ink-soft)}.request-row>.request-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.request-actions button{background:var(--white);border:1px solid var(--line-strong);color:var(--ink);font:inherit;border-radius:7px;align-items:center;gap:5px;min-height:30px;padding:5px 9px;font-size:.78rem;font-weight:850;display:inline-flex}.request-actions button:hover{background:var(--soft)}.request-actions span{color:var(--muted);font-size:.78rem;font-weight:750}@container (max-width:1080px){.request-table{border:0;gap:10px;display:grid;overflow:visible}.request-table .request-head{display:none}.request-table .request-row,.request-table.admin .request-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:13px}.request-table .request-row>div:first-child,.request-table .request-row>.request-status,.request-table .request-row>.request-actions{grid-column:1/-1}.request-table .request-row>.request-actions{flex-wrap:wrap;justify-content:flex-start}}@media (max-width:1180px){.staff-member-table{border:0;gap:12px;display:grid;overflow:visible}.staff-member-head{display:none}.staff-member-row,.staff-member-table.bulk-mode .staff-member-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr;align-items:stretch;gap:11px;padding:14px;display:grid}.staff-member-row>[data-label]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.staff-member-row>[data-label]:before{color:var(--muted);content:attr(data-label);text-transform:uppercase;flex:0 0 70px;font-size:.72rem;font-weight:900}.staff-team-list{align-items:flex-start}.staff-member-table .team-pill{max-width:150px}.staff-row-actions,.staff-bulk-cell{justify-content:flex-start}}@media (max-width:980px){.auth-split-screen{grid-template-columns:1fr}.auth-visual{min-height:42vh}.auth-panel{border-left:0;border-top:1px solid var(--line);min-height:auto}.dashboard-app{grid-template-columns:1fr;height:auto;min-height:100vh;overflow:visible}.dashboard-sidebar{z-index:80;width:min(320px,100vw - 42px);max-width:calc(100vw - 42px);height:100dvh;min-height:100dvh;padding:18px 14px;transition:transform .18s;position:fixed;top:0;left:0;transform:translate(-105%);box-shadow:18px 0 42px #0f11132e}.dashboard-sidebar.open{transform:translate(0)}.mobile-nav-backdrop{z-index:70;background:#0f11136b;border:0;padding:0;display:block;position:fixed;inset:0}.sidebar-close,.mobile-menu-button{display:inline-flex}.dashboard-main{height:auto;min-height:0;overflow:visible}.sidebar-logo{width:190px;height:30px}.dashboard-nav{margin-left:0;display:grid}.holiday-topbar{gap:10px;top:0}.workflow-header{align-items:stretch;display:grid}.header-stats{min-width:0}.holiday-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-layout,.staff-holiday-layout{grid-template-columns:1fr}.request-cta-panel{align-items:flex-start;display:grid}.home-grid,.cloud-file-grid,.settings-grid{grid-template-columns:1fr}.credential-person-card{grid-template-columns:34px minmax(0,1fr)}.credential-person-tags,.credential-person-stats,.credential-person-next{grid-column:2}.credential-profile-card{grid-template-columns:1fr}.credential-profile-meta{justify-content:flex-start}.staff-summary-grid,.side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.dashboard-nav{margin-left:0}.dashboard-nav button{width:100%}.holiday-topbar{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:58px;padding-inline:12px;display:grid}.topbar-search,.topbar-search-wrap{grid-area:2/1/auto/-1;width:100%;min-width:0;max-width:none}.topbar-actions{grid-area:1/3;gap:6px;margin-left:0}.holiday-shell{gap:16px;padding:16px 12px 28px}.workflow-header h1{font-size:1.65rem}.header-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.holiday-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-pill{min-height:54px;padding:8px}.stat-pill strong{font-size:1.08rem}.field-grid,.profile-settings-grid,.home-metrics,.side-stack,.booking-summary{grid-template-columns:1fr}.home-calendar-panel .panel-heading{align-items:stretch}.home-calendar-panel .month-actions{justify-content:start;justify-self:start;margin-left:0}.upcoming-leave-row{grid-template-columns:1fr;align-items:stretch}.upcoming-leave-row .request-status{justify-self:start}.connection-card{grid-template-columns:52px minmax(0,1fr);align-items:start}.connection-icon{width:52px;height:52px}.connection-actions{grid-column:1/-1;justify-content:flex-start}.workflow-actions{justify-content:flex-start;width:100%}.credential-toolbar,.credential-meta{grid-template-columns:1fr}.credential-actions{justify-content:flex-start}.confirmation-actions{align-items:stretch;display:grid}.modal-backdrop{align-items:stretch;padding:10px}.holiday-modal{width:100%;max-height:calc(100vh - 20px)}.segmented-control{grid-template-columns:1fr}.booking-summary .primary-action{justify-self:stretch}.security-option{align-items:flex-start;display:grid}.booking-panel,.balance-panel,.team-panel,.requests-panel,.approval-panel,.admin-add-panel,.staff-overview-panel,.calendar-panel,.staff-calendar-panel,.settings-panel{padding:16px}.panel-heading{align-items:flex-start;display:grid}.status-note{text-align:left}.primary-action,.secondary-action{width:100%}.team-create-form{grid-template-columns:1fr;align-items:stretch}.team-list,.team-card{grid-template-columns:1fr}.team-card>.team-card-actions{justify-content:flex-start}.workflow-header .primary-action,.workflow-header .secondary-action,.modal-actions .primary-action,.modal-actions .secondary-action{width:auto}.modal-actions{flex-wrap:wrap;justify-content:flex-start}.requests-heading{align-items:stretch;display:grid}.calendar-panel .requests-heading,.staff-calendar-panel .requests-heading{align-items:center;display:flex}.calendar-panel .requests-heading>div:first-child,.staff-calendar-panel .requests-heading>div:first-child{min-width:0}.calendar-panel .requests-heading h2,.staff-calendar-panel .requests-heading h2{overflow-wrap:anywhere}.request-head{display:none}.request-row{grid-template-columns:1fr 1fr;gap:8px}.mini-table div{grid-template-columns:1fr;align-items:start}.cloud-file-table{border:0;gap:10px;display:grid;overflow:visible}.cloud-file-head{display:none}.cloud-file-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr;gap:8px;padding:13px}.cloud-file-row>div{align-items:flex-start}.bulk-staff-summary{align-items:stretch;display:grid}.bulk-staff-actions,.staff-row-actions{justify-content:flex-start}.request-table.admin .request-row{grid-template-columns:1fr 1fr}.request-row>div,.request-status,.request-row>.request-actions{grid-column:1/-1}.request-row>.request-actions{flex-wrap:wrap;justify-content:flex-start}.approval-row{grid-template-columns:1fr}.approval-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.approval-actions button{width:100%}.requests-heading>.month-actions{grid-template-columns:34px 34px;justify-content:end;gap:6px;width:74px;min-width:74px;margin-left:auto;display:grid}.requests-heading>.month-actions button{flex:0 0 34px;width:34px;height:34px;min-height:34px}.calendar-grid{overflow-x:auto}.calendar-weekday,.calendar-day{min-width:118px}}@media (max-width:440px){.header-stats,.staff-summary-grid,.request-row,.request-table.admin .request-row{grid-template-columns:1fr}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
