:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,sans-serif;color:#173247;background:#f3f6f9;font-synthesis:none;font-size:16px;--line:#e1e8ee;--muted:#728494;--navy:#102f43;--red:#b52832;--radius:22px}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button,a,label.upload-button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,label.upload-button:focus-within{outline:3px solid #dfa74e;outline-offset:3px}[hidden]{display:none!important}button{transition:background .16s,box-shadow .16s,transform .16s}button:active:not(:disabled){transform:translateY(1px)}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{letter-spacing:-.025em}button.primary,.primary{border:0;background:var(--red);color:white;border-radius:13px;min-height:46px;padding:11px 23px;font-weight:600;box-shadow:0 4px 10px #a1263010}.control,.actions button:not(.primary){border:1px solid #d9e3eb;background:white;color:#40596d;border-radius:12px;min-height:44px;padding:10px 15px;font-size:13px;font-weight:500}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.text-button{border:0;background:transparent;padding:10px 2px;color:#6a7f8f;font-size:12px;min-height:44px;text-decoration:underline;text-underline-offset:4px}.hint{font-size:12px;line-height:1.8;color:var(--muted);margin:5px 0 16px}.eyebrow,.login-kicker{display:block;font-size:11px;font-weight:600;color:#718595;letter-spacing:.025em;margin:0 0 10px}.status:empty{display:none}.status{margin:0;padding:12px;text-align:center;font-size:13px}.field{display:flex;flex-direction:column;gap:8px;color:#536b7e;font-size:12px;font-weight:500;min-width:0;margin:0 0 17px}.field input,.field select,.field textarea{border:1px solid #dce5ed;background:#fbfcfd;color:#173247;border-radius:12px;width:100%;min-width:0;min-height:46px;padding:11px 13px;font-size:14px;font-weight:400;transition:border-color .16s,background .16s}.field input:focus,.field select:focus,.field textarea:focus{background:white;border-color:#859eb0}.field textarea{resize:vertical}.field small{font-size:11px;font-weight:400;color:var(--muted)}.field input[type=file]{font-size:12px;padding:8px}.field input[type=color]{padding:5px}.field input::file-selector-button{border:0;border-radius:7px;background:#e8eef3;color:#31556e;padding:7px;margin-inline-end:8px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.check{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:400;margin:12px 0;line-height:1.6}.check input{accent-color:#214d67;width:18px;height:18px}.panel{padding:23px;border:1px solid var(--line);border-radius:20px;background:white;margin-bottom:16px;box-shadow:0 4px 18px #23384d03}.panel h2{font-size:16px;font-weight:650;margin:0 0 13px}.panel summary{display:flex;align-items:center;list-style:none;font-size:14px;font-weight:600;min-height:32px;cursor:pointer}.panel summary::-webkit-details-marker{display:none}.panel summary:after{content:'+';margin-inline-start:auto;font-size:21px;font-weight:300;color:#8b9ba7}.panel[open]>summary:after{content:'−'}.panel[open]>summary{margin-bottom:20px}.section-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.section-heading h2{margin-bottom:4px}.section-tag{font-size:10px;color:#7991a2;padding:6px 10px;border-radius:20px;background:#f1f5f8;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--accent,#bd3c45);color:white;font-size:20px;font-weight:650;flex-shrink:0}.brand-mark img{width:100%;height:100%;object-fit:contain}.login{max-width:420px;margin:80px auto;padding:34px;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:0 15px 60px #15334d08}.login h2{margin:5px 0 10px;font-size:26px;font-weight:650}.login .hint{margin-bottom:26px}.login .actions button{width:100%}.login>a{display:block;text-align:center;font-size:12px;margin-top:22px;color:#718799}.admin-status{font-size:12px;line-height:1.7;white-space:pre-line;margin:0;color:#607b8e;overflow-wrap:anywhere}
/* Employee workspace */
.portal{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg,#f3f6f9);color:var(--ink,#173247);font-family:var(--font),system-ui,sans-serif;font-size:var(--size,16px);background-size:cover;background-position:center}.portal-head{background:var(--header,#102f43);color:white;padding:22px max(24px,calc((100% - 1080px)/2));display:flex;justify-content:space-between;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand img{display:block;width:54px;height:54px;object-fit:contain;background:#ffffffed;border-radius:14px;padding:4px;flex-shrink:0}.brand strong{display:block;font-size:1.22em;line-height:1.5;font-weight:650}.brand small{display:block;color:#ffffffb8;font-size:.69em;margin-top:3px;line-height:1.6}.date{font-size:11px;opacity:.68;white-space:nowrap}.portal-main{width:100%;max-width:1130px;margin:0 auto;padding:36px 24px 60px;flex:1}.welcome-block{margin:30px 0 28px}.welcome-block .eyebrow{color:#708796;font-size:.7em}.portal-main h1{font-size:1.8em;line-height:1.5;font-weight:650;margin:0 0 10px}.portal-note{font-size:.83em;line-height:1.8;color:#7a8994;margin:0}.entry-grid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:18px;padding:22px;border-radius:30px;background:#ffffffa6;border:1px solid #ffffffd9;box-shadow:0 8px 40px #213b5205}.entry-card{display:flex;flex-direction:column;min-width:0;min-height:205px;text-align:right;border:1px solid #ffffff15;border-radius:var(--radius,22px);padding:23px;background:var(--button-color);color:var(--button-ink,#fff);box-shadow:0 6px 15px #18344707;position:relative}.entry-card:hover{box-shadow:0 10px 25px #18344715;transform:translateY(-2px)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:10px}.entry-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#ffffff16;border:1px solid currentColor;color:inherit}.entry-icon svg{width:26px;height:26px}.entry-icon img{display:block;width:100%;height:100%;object-fit:contain;border-radius:10px}.arrow{font-size:20px;opacity:.7;font-weight:300}.entry-card>strong{font-size:1.12em;font-weight:600;line-height:1.7;overflow-wrap:anywhere}.entry-card>small{font-size:.72em;font-weight:400;opacity:.85;line-height:1.8;margin-top:4px}.card-bottom{font-size:.63em;font-weight:400;opacity:.7;margin-top:17px}.portal-footer{display:flex;justify-content:space-between;gap:15px;max-width:1082px;width:calc(100% - 48px);margin:0 auto;padding:20px 0;border-top:1px solid #dfe7ec;font-size:11px;color:#7c8e9a}.session-bar{display:flex;align-items:center;gap:9px;margin-bottom:12px}.session-bar>span{display:flex;align-items:center;gap:9px;margin-inline-end:auto;font-size:12px;color:#78909f}.session-bar>span:before{content:'';width:7px;height:7px;border-radius:50%;background:#4f997d}.session-bar button{font-size:11px!important;min-height:36px!important;padding:7px 12px!important;border-radius:30px!important;background:#ffffff70!important}.entry-form{max-width:850px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:0 8px 32px #18364e04;margin:22px 0 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px}.span-2{grid-column:1/-1}.entry-form .field{font-size:.76em}.entry-form input,.entry-form select,.entry-form textarea{font-size:.9em;min-height:49px}.entry-form .actions{padding-top:17px;margin-top:5px;border-top:1px solid #edf1f4}.portal button.primary{background:var(--accent);border-color:var(--accent)}.entry-message{font-size:.8em;color:#718898;line-height:1.9;white-space:pre-line;overflow-wrap:anywhere}.entry-message:empty{display:none}.portal-main>.control{border:0;background:transparent;padding:8px 0;font-size:12px;min-height:40px;color:#718897;margin-bottom:18px}.portal-main>.panel{font-size:.8em;line-height:1.8;overflow-wrap:anywhere}.portal-main>.panel strong{font-weight:600}.portal-main>.panel small{font-size:10px;color:#8696a2}.workspace-nav{display:none}
/* Design studio */
.admin-page{background:#f4f7fa;color:#1c384d}.admin-head{background:var(--admin-header,#102f43);color:#fff;padding:17px max(24px,calc((100% - 1280px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px}.admin-brand{display:flex;align-items:center;gap:12px}.admin-brand h1{font-size:19px;font-weight:650;margin:0 0 3px}.admin-brand small{font-size:11px;opacity:.65}.header-link{border:1px solid #ffffff55;border-radius:30px;padding:10px 16px;font-size:12px;color:#fff;white-space:nowrap}.header-link span{margin-inline-start:8px}.admin-wrap{max-width:1330px;margin:auto;padding:32px 24px 115px;display:grid;grid-template-columns:minmax(320px,430px) minmax(0,1fr);gap:0 32px}.admin-intro{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.admin-intro h2{font-size:27px;font-weight:650;margin:0 0 7px}.admin-intro p{font-size:12px;color:#7b8e9d;margin:0;line-height:1.8}.admin-intro .eyebrow{font-size:10px}.editor-tabs{grid-column:1/-1;display:flex;gap:6px;padding:5px;background:#e8eef3;border-radius:15px;max-width:640px;margin-bottom:26px}.editor-tabs button{border:0;border-radius:11px;background:transparent;font-size:12px;color:#6b8192;padding:11px 20px;min-height:43px;white-space:nowrap}.editor-tabs button[aria-selected=true]{background:#fff;color:#173e56;box-shadow:0 2px 7px #29445b09;font-weight:600}.editor{min-width:0}.pane-heading{margin:0 0 22px}.pane-heading h2{font-size:20px;font-weight:600;margin:0 0 6px}.logo-upload-row{display:flex;align-items:center;gap:20px;margin-top:15px}.logo-preview{width:86px;height:86px;background:#f0f4f7;color:#8195a5;border:1px dashed #c7d4df;border-radius:22px;display:grid;place-items:center;flex-shrink:0;font-size:28px}.logo-preview img{display:block;width:100%;height:100%;padding:7px;object-fit:contain;border-radius:20px}.upload-actions{display:flex;align-items:start;flex-direction:column;gap:3px}.upload-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border:1px solid #ccdae4;background:#f8fafc;color:#2f536b;border-radius:11px;font-size:12px;cursor:pointer}.upload-actions .hint{font-size:10px;margin:3px 0}.upload-actions .text-button{font-size:11px;min-height:28px;padding:3px}.color-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.color-field{display:flex;align-items:center;justify-content:space-between;gap:7px;border:1px solid #e5ebf0;border-radius:12px;padding:9px 12px;font-size:11px;color:#61798d;min-width:0}.color-field input{border:0;background:transparent;cursor:pointer;width:33px;height:33px;padding:0;flex-shrink:0}.color-field input::-webkit-color-swatch-wrapper{padding:2px}.color-field input::-webkit-color-swatch{border:0;border-radius:9px}.background-upload{margin-top:22px}.preview-column{min-width:0;align-self:start;position:sticky;top:22px}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 17px}.preview-toolbar .eyebrow{margin:0 0 5px;font-size:10px}.preview-toolbar h2{font-size:16px;font-weight:600;margin:0}.segmented{display:flex;padding:4px;background:#e8eef3;border-radius:12px;gap:3px}.segmented button{border:0;border-radius:9px;font-size:11px;padding:8px 14px;min-height:35px;background:transparent;color:#7b8e9d}.segmented button[aria-pressed=true]{background:white;color:#294b63;box-shadow:0 2px 4px #132f4310}.preview-frame{background:#e8eef3;padding:12px;border:1px solid #dfe7ed;border-radius:24px}.preview-frame iframe{display:block;width:100%;height:660px;border:0;border-radius:15px;background:#fff}.preview-frame.mobile iframe{max-width:390px;margin:auto}.preview-caption{font-size:11px;text-align:center;margin-top:12px}.save-dock{position:fixed;bottom:0;left:0;right:0;background:#ffffffef;backdrop-filter:blur(14px);border-top:1px solid #e1e8ee;z-index:15;padding:14px max(24px,calc((100% - 1280px)/2));padding-bottom:max(14px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:22px}.save-dock strong{font-size:12px;font-weight:600;display:block;margin-bottom:3px}.save-dock .admin-status{font-size:11px;max-width:700px}.save-dock .primary{white-space:nowrap;background:#173f58;font-size:13px;min-width:165px}.button-editor{border:1px solid var(--line);background:white;border-radius:20px;padding:21px;margin-bottom:15px}.button-editor>summary{cursor:pointer;list-style:none;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:space-between;min-height:34px}.button-editor>summary:after{content:'+';font-size:21px;color:#8a9aa6;font-weight:300}.button-editor>summary::-webkit-details-marker{display:none}.button-editor[open]>summary{margin-bottom:22px}.button-editor[open]>summary:after{content:'−'}.button-editor .actions{margin-top:17px}.button-editor .actions button{font-size:11px;min-height:38px}.button-editor select{max-width:100%}.button-logo-sample{display:block;width:65px;height:65px;object-fit:contain;border:1px solid #e1e8ee;border-radius:13px;padding:5px;margin:12px 0}.button-editor>.panel{box-shadow:none;border-radius:13px;padding:16px;margin-top:15px;background:#f9fbfc}.connection-status{background:#f1f6f9;border-radius:12px;padding:14px;font-size:12px;line-height:1.8;color:#55768a;margin:16px 0}.staff-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf1f4;font-size:12px;line-height:1.8}.staff-row button{font-size:11px;min-height:36px}.staff-add{margin-top:20px}.staff-add summary{font-size:13px;cursor:pointer;color:#345e78;margin-bottom:16px}.staff-add form{padding-top:10px}.preview-mode-label{font-size:12px;background:#fff7e7;color:#8a6b32;border-radius:12px;padding:12px;line-height:1.8}#preview-close{display:none}#preview-toggle{font-size:12px}.field-order{margin-bottom:5px}
@media(max-width:1000px){.admin-wrap{grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:0 20px;padding:26px 20px 120px}.preview-frame iframe{height:640px}.editor-tabs{max-width:none}.preview-frame{padding:8px}.admin-head{padding:16px 20px}}
@media(max-width:760px){.admin-head{padding:15px 18px}.admin-brand h1{font-size:16px}.admin-brand small{font-size:10px}.admin-brand .brand-mark{width:38px;height:38px;font-size:17px;border-radius:11px}.header-link{padding:9px 12px;font-size:11px}.admin-wrap{display:block;padding:25px 16px 115px}.admin-intro{margin-bottom:21px;align-items:start}.admin-intro h2{font-size:23px}.admin-intro p{max-width:240px;font-size:11px}.admin-intro .eyebrow{font-size:10px}.admin-intro #preview-toggle{font-size:11px;min-height:38px;padding:8px 11px}.editor-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;border-radius:13px;padding:4px;position:sticky;top:8px;z-index:5;margin-bottom:20px;box-shadow:0 3px 10px #263e5005}.editor-tabs button{padding:9px 3px;font-size:10px;min-height:42px;white-space:normal;line-height:1.4}.panel,.button-editor{padding:20px;border-radius:18px;margin-bottom:13px}.panel summary{font-size:13px}.panel h2{font-size:15px}.field input,.field select,.field textarea{font-size:16px;min-height:48px}.field{font-size:12px}.preview-column{display:none;position:static}.admin-wrap.preview-open>.editor,.admin-wrap.preview-open>.editor-tabs{display:none}.admin-wrap.preview-open>.preview-column{display:block}.admin-wrap.preview-open #preview-toggle{display:none}#preview-close{display:block;font-size:11px;white-space:nowrap}.preview-toolbar{flex-wrap:wrap}.preview-toolbar h2{font-size:14px}.preview-toolbar .segmented{margin-inline-start:auto}.preview-frame{padding:7px;border-radius:19px}.preview-frame iframe{height:calc(100dvh - 300px);min-height:450px}.save-dock{padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));gap:15px}.save-dock>div{min-width:0}.save-dock strong{display:none}.save-dock .admin-status{font-size:10px;line-height:1.6;max-height:49px;overflow:auto}.save-dock .primary{min-width:126px;padding:11px 15px;font-size:12px;min-height:44px}.pane-heading h2{font-size:18px}.color-field{font-size:11px;padding:8px}.logo-preview{width:74px;height:74px;border-radius:18px}.logo-upload-row{gap:15px}.upload-button{font-size:12px}.hint{font-size:11px}.pair{gap:0 12px}.portal-head{padding:19px 20px}.date{display:none}.portal-main{padding:20px 18px 38px}.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px;gap:12px;border-radius:25px}.entry-card{padding:19px;min-height:184px}.entry-card:last-child:nth-child(odd){grid-column:1/-1;min-height:145px}.entry-card:last-child:nth-child(odd) .card-top{margin-bottom:10px}.welcome-block{margin:25px 0}.portal-main h1{font-size:1.55em}.entry-form{padding:23px}.session-bar{margin-bottom:5px}.portal-footer{font-size:10px}.login{margin:48px auto;width:calc(100% - 34px);max-width:420px;padding:28px}}
@media(max-width:470px){.portal-head{padding:18px}.brand{gap:11px}.brand strong{font-size:1.1em}.brand small{font-size:.65em}.brand img{width:47px;height:47px}.brand-mark{width:42px;height:42px;font-size:18px}.portal-main{padding:18px 14px 30px}.welcome-block{margin:23px 4px}.portal-main h1{font-size:1.42em;font-weight:600}.portal-note{font-size:.74em}.entry-grid{gap:11px;padding:11px}.entry-card{padding:16px;min-height:177px;border-radius:min(var(--radius),22px)}.entry-icon{width:41px;height:41px;border-radius:12px}.entry-icon svg{width:23px;height:23px}.card-top{margin-bottom:18px}.entry-card>strong{font-size:.9em;line-height:1.8}.entry-card>small{font-size:.65em;line-height:1.7}.card-bottom{font-size:.6em;margin-top:13px}.arrow{font-size:17px}.session-bar{margin:0 4px}.session-bar button{font-size:10px!important;padding:6px 10px!important}.session-bar>span{font-size:11px}.entry-form{padding:20px;border-radius:20px;margin-top:20px}.form-grid{grid-template-columns:1fr;gap:2px}.span-2{grid-column:auto}.entry-form .field{font-size:12px;margin-bottom:16px}.entry-form input,.entry-form select,.entry-form textarea{font-size:16px;min-height:49px}.entry-form .actions{padding-top:18px}.entry-form .actions .primary{width:100%;min-height:49px;font-size:14px;border-radius:13px}.entry-message{font-size:12px}.portal-footer{width:calc(100% - 36px);font-size:9px;line-height:1.8;padding:18px 0}.portal-main>.control{margin-bottom:15px}.brand strong{max-width:230px}.button-editor .actions{gap:6px}.button-editor .actions button{font-size:10px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){button,.field input,.field select,.field textarea{transition:none}.entry-card:hover{transform:none}}
/* Atyab Farooj's supplied artwork stays intact; this viewport displays the complete named logo on the right of its supplied sheet. */
.brand-image{position:relative;display:block;width:62px;height:54px;overflow:hidden;background:#fff;border-radius:12px;flex-shrink:0}.brand-image>img{display:block;position:static;width:100%;height:100%;max-width:none;object-fit:contain;padding:4px;margin:0;background:none;border-radius:0}.brand-image.brand-sheet{width:76px;height:60px}.brand-image.brand-sheet>img{position:absolute;width:246%;height:155%;max-width:none;left:-126%;top:-44%;object-fit:fill;padding:0;border-radius:0}.logo-preview .brand-image{width:100%;height:100%;border-radius:20px}.admin-brand .brand-mark{width:65px;height:52px;background:transparent}.admin-brand .brand-image{width:65px;height:52px}.admin-page{background:#fcf7f3;--line:#ece3dc;--red:#cf1c28}.admin-page .save-dock .primary{background:#a71420}.admin-page .editor-tabs,.admin-page .segmented{background:#f0e6df}.admin-page .preview-frame{background:#f2eae4;border-color:#e9ded5}.admin-page .editor-tabs button[aria-selected=true]{color:#9b1720}.admin-page .logo-preview{background:#fffaf5;border-color:#e3d4c8}.admin-page .connection-status{background:#faf4ee;color:#7a6050}.admin-page .section-tag{background:#faf3ee;color:#9b7f6a}.admin-page .save-dock{border-color:#ebdfd6}.brand small{color:#ffffffbf}.session-bar button{border-color:#e9dfd7!important}.portal-footer{border-color:#e9dfd7}.entry-grid{border-color:#ffffffa6}.entry-form{border-color:#eee3db}
@media(max-width:470px){.brand-image.brand-sheet{width:68px;height:54px}.brand strong{font-size:1.06em}.admin-brand .brand-mark,.admin-brand .brand-image{width:54px;height:44px}.logo-preview .brand-image{width:100%;height:100%}.admin-brand{gap:9px}}

/* Let the banner show through around uploaded logos. */
.brand-image{background:transparent}.brand-image>img{padding:0;background:transparent}

/* Logo size participates in layout, without zooming text or controls. */
.brand-image.sized-logo{width:calc(62px * var(--logo-scale));height:calc(54px * var(--logo-scale))}
.brand-image.brand-sheet.sized-logo{width:calc(76px * var(--logo-scale));height:calc(60px * var(--logo-scale))}
.admin-brand .brand-mark:has(.sized-logo){width:auto;height:auto}
.portal-head,.admin-head{flex-wrap:wrap}.brand,.admin-brand{max-width:100%}.brand>div,.admin-brand>div{min-width:0;overflow-wrap:anywhere}
.logo-size-control{margin-top:20px}.logo-size-control>span{display:flex;justify-content:space-between;align-items:center}.logo-size-control output{font-variant-numeric:tabular-nums;color:#9b1720;direction:ltr}.field input[type=range]{padding:0;accent-color:#a71420;direction:ltr;background:transparent;border:0;min-height:44px}
@media(max-width:470px){.brand-image.brand-sheet.sized-logo{width:calc(68px * var(--logo-scale));height:calc(54px * var(--logo-scale))}}

.login-page{min-height:100dvh;padding:48px 17px;display:flex;align-items:flex-start;justify-content:center;background-color:var(--login-background);background-size:cover;background-position:center;color:var(--login-text);font-family:var(--login-font),sans-serif;font-size:var(--login-size)}
.login-page .employee-login{width:100%;max-width:var(--login-width);margin:0;padding:32px;min-width:0;background:var(--login-card);border-color:var(--login-border);border-radius:var(--login-radius);color:var(--login-text);text-align:var(--login-align)}
.employee-login h2{font-size:1.6em;color:var(--login-text)}.employee-login>.brand-image{margin-bottom:14px}.login-page[data-align="center"] .brand-image{margin-inline:auto}
.employee-login .hint,.employee-login>a,.employee-login .admin-status{color:var(--login-muted);font-size:.78em}.employee-login .field{color:var(--login-text);font-size:.8em;text-align:right}.employee-login .field input{background:var(--login-input);border-color:var(--login-border);color:var(--login-text);font-size:max(16px,1em)}.employee-login button.primary{background:var(--login-button);color:var(--login-buttonText);font-size:1em}
@media(max-width:470px){.login-page{padding:28px 17px}.login-page .employee-login{padding:24px}}

.staff-account{border:1px solid var(--line);border-radius:15px;padding:16px;margin-bottom:12px;background:#fff}.staff-account>summary{cursor:pointer;font-size:14px;line-height:1.8;overflow-wrap:anywhere}.staff-account[open]>summary{margin-bottom:22px}.staff-account>.field{margin-top:18px}.staff-account h3{font-size:14px;margin-top:24px}.staff-account-actions{margin-top:25px;padding-top:15px;border-top:1px solid var(--line)}.staff-account button.danger{color:#a71420;border-color:#edc7cb}.staff-account button{max-width:100%}

/* Persistent, compact navigation; inherits the saved portal palette. */
.quick-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:8px;padding:10px max(16px,calc((100% - 1080px)/2));background:var(--bg,#fff);border-bottom:1px solid #d9e3eb;box-shadow:0 3px 12px #17324708;flex-wrap:wrap}
.quick-nav .control{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-height:44px;font-size:13px;padding:9px 14px}
.quick-nav [aria-current=page]{border-color:var(--accent);box-shadow:inset 0 -3px var(--accent);font-weight:650}
.quick-user{margin-inline-end:auto;font-size:12px;overflow-wrap:anywhere;max-width:35%}
.history-toolbar{margin:16px 0 22px}.history-toolbar .danger-action{color:#a21d2b;border-color:#ebcbd0;margin-inline-start:auto}
.history-empty{padding:28px 16px;border:1px dashed #d9e3eb;border-radius:16px;text-align:center}
@media(max-width:600px){.quick-nav{gap:6px;padding:8px 12px}.quick-user{width:100%;max-width:none;font-size:11px}.quick-nav .control{flex:1;padding:8px 9px;font-size:12px}.history-toolbar .control{flex:1}.history-toolbar .danger-action{flex-basis:100%;margin-inline-start:0}.admin-intro{flex-wrap:wrap}.admin-intro>.actions{gap:6px}.admin-intro>.actions .control{padding:9px 11px}}

.session-locked #portal,.session-locked #app,.session-locked .admin-head,.session-locked #status{display:none!important}.session-lock{position:fixed;inset:0;z-index:9999;background:#fff9f4;color:#382923;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;text-align:center}.session-lock h1{font-size:24px}.session-lock p{max-width:480px;line-height:1.8}.admin-head>.actions{flex-wrap:wrap}.admin-head #header-logout{color:#a21d2b}body:has(#app[hidden]) #header-logout{display:none}

.date-trigger{cursor:pointer;direction:ltr;text-align:right}.date-calendar{box-sizing:border-box;width:min(400px,calc(100% - 24px));max-height:85dvh;overflow:auto;border:1px solid #e1e5e8;border-radius:20px;padding:18px;background:#fff;color:#382923;box-shadow:0 20px 70px #18324530}.date-calendar::backdrop{background:#15283866}.date-calendar-head{display:flex;gap:6px;align-items:center;margin-bottom:16px}.date-calendar-head select{min-width:0;flex:1;font:inherit;font-size:16px;padding:8px 3px;background:#fff;border:1px solid #e1e5e8;border-radius:8px}.date-calendar-head button{flex:0 0 38px;height:42px;border:1px solid #e1e5e8;border-radius:8px;background:#fafafa}.date-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:14px;text-align:center}.date-calendar-grid small{padding:5px;color:#7c858b}.date-calendar-grid button{min-height:42px;padding:0;border:1px solid #edf0f2;background:#fafbfc;border-radius:9px;color:#382923;font:inherit;font-size:15px}.date-calendar-grid button[aria-pressed=true]{background:#fff0da;border-color:#d69b48;font-weight:bold}.date-calendar-grid button:disabled,.date-calendar-head button:disabled{opacity:.3}.date-calendar>.control{width:100%}.session-locked .date-calendar{display:none}
