:root{--paper:#f4f1ea;--ink:#161616;--muted:#74716a;--line:#e2ded5;--accent:#ffc800;--white:#fff}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 Inter,Arial,sans-serif}
a{color:inherit}
button,input{font:inherit}
.designer-login{width:min(100% - 36px,480px);margin:10vh auto;padding:48px;background:var(--white);border:1px solid var(--line)}
.designer-wordmark{display:inline-flex;align-items:center;gap:12px;font-size:24px;font-weight:800;letter-spacing:-1.5px;text-decoration:none}
.designer-wordmark span{padding-left:12px;border-left:1px solid var(--line);font-size:10px;letter-spacing:1.4px}
.designer-eyebrow{margin:34px 0 8px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.designer-login h1,.designer-intro h1{margin:0;font-size:clamp(34px,5vw,54px);line-height:1.04;letter-spacing:-2px}
.designer-login>p:not(.designer-eyebrow){color:var(--muted)}
.designer-login-form,.designer-password-form{display:grid;gap:18px;margin-top:30px}
.designer-login-form label,.designer-password-form label,.designer-upload-card form>label{display:grid;gap:7px;font-size:13px;font-weight:700}
.designer-login-form input,.designer-password-form input,.designer-upload-card input[name=project_name]{width:100%;padding:13px 14px;border:1px solid var(--line);background:#fff}
.designer-login-form button,.designer-upload-button,.designer-password-form button{min-height:48px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-weight:700;cursor:pointer}
.designer-back-link{display:inline-block;margin-top:24px;color:var(--muted);font-size:13px}
.designer-portal{min-height:100vh}
.designer-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px max(24px,calc((100vw - 1160px)/2));border-bottom:1px solid var(--line);background:rgba(255,255,255,.72)}
.designer-account{display:flex;align-items:center;gap:18px;font-size:13px}
.designer-account form{margin:0}
.designer-account button{padding:8px 12px;border:1px solid var(--line);background:transparent;cursor:pointer}
.designer-main{width:min(100% - 40px,960px);margin:52px auto 90px}
.designer-intro{max-width:640px;margin-bottom:32px}
.designer-intro .designer-eyebrow{margin-top:0}
.designer-intro>p:last-child{max-width:590px;color:var(--muted)}
.designer-card{margin-top:20px;padding:28px;background:#fff;border:1px solid var(--line)}
.designer-card-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.designer-card-heading .designer-eyebrow{margin:0 0 5px}
.designer-card-heading h2{margin:0;font-size:23px;letter-spacing:-.5px}
.designer-drive-state{padding:6px 10px;font-size:11px;font-weight:700}
.designer-drive-state.is-connected{background:#edf5e9;color:#2e653c}
.designer-drive-state.is-disconnected{background:#fff2df;color:#8a5012}
.designer-help,.designer-empty{color:var(--muted);font-size:13px}
.designer-upload-card form{display:grid;gap:18px}
.designer-upload-card label span,.designer-upload-card small,.designer-password-form small{color:var(--muted);font-size:12px;font-weight:400}
.designer-file-picker{position:relative;display:flex!important;min-height:100px;align-items:center;justify-content:center;padding:20px;border:1px dashed #aaa59a;background:#fbfaf7;text-align:center;cursor:pointer}
.designer-file-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.designer-file-picker>span{pointer-events:none}
.designer-upload-queue{display:grid;gap:7px;font-size:13px}
.designer-upload-queue:empty{display:none}
.designer-queue-file{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;background:#f7f6f2}
.designer-queue-file small{flex:none;color:var(--muted)}
.designer-upload-progress>div{display:flex;justify-content:space-between;margin-bottom:6px;font-size:12px}
.designer-upload-progress progress{width:100%;height:10px;accent-color:var(--accent)}
.designer-upload-button{justify-self:start;padding:0 22px}
.designer-upload-button:disabled{opacity:.5;cursor:not-allowed}
.designer-upload-status{min-height:20px;margin:0;color:var(--muted);font-size:13px}
.designer-upload-status.is-error{color:#a32c23}
.designer-upload-status.is-success{color:#2e653c}
.designer-table-wrap{overflow-x:auto}
.designer-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}
.designer-table th,.designer-table td{padding:13px 10px;border-bottom:1px solid var(--line)}
.designer-table th{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.7px}
.designer-table td:first-child{font-weight:700;overflow-wrap:anywhere}
.designer-table td a{white-space:nowrap;color:#675000}
.designer-password-card details>summary{font-weight:700;cursor:pointer}
.designer-password-form{max-width:440px}
.designer-message{margin:18px 0;padding:12px 14px;font-size:13px}
.designer-message-error{background:#fff0ee;color:#922e27}
.designer-message-success{background:#edf5e9;color:#2e653c}
.workforce-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:20px}
.workforce-grid .designer-card{margin-top:0}
.workforce-profile-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 22px;margin:0}
.workforce-profile-list>div{min-width:0}
.workforce-profile-list dt{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.7px}
.workforce-profile-list dd{margin:2px 0 0;overflow-wrap:anywhere;font-size:13px;font-weight:700}
.workforce-profile>.designer-help{margin-bottom:0}
.workforce-action-form{margin-top:20px}
.workforce-attendance-state{font-size:14px}
.workforce-balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.workforce-balance-grid>div{display:grid;gap:4px;padding:16px;background:#f7f6f2}
.workforce-balance-grid span,.workforce-balance-grid small{color:var(--muted);font-size:12px}
.workforce-balance-grid strong{font-size:18px}
.workforce-rules{border-left:4px solid #b58b16}
.workforce-rules ul{display:grid;gap:12px;margin:0;padding-left:21px}
.workforce-rules li{padding-left:3px;color:#4f514b;font-size:13px;line-height:1.65}
.workforce-rules li::marker{color:#9a7900}
.workforce-rules strong{color:var(--ink)}
.workforce-leave-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.workforce-leave-form label{display:grid;gap:6px;font-size:13px;font-weight:700}
.workforce-leave-form input,.workforce-leave-form select,.workforce-leave-form textarea{width:100%;padding:11px 12px;border:1px solid var(--line);background:#fff}
.workforce-leave-form .workforce-reason{grid-column:1/-1}
.workforce-leave-form>button{grid-column:1/-1}
.workforce-leave-status{display:inline-block;padding:4px 8px;background:#f1f0ed;font-size:11px;font-weight:700}
.workforce-leave-status.status-approved{background:#edf5e9;color:#2e653c}
.workforce-leave-status.status-rejected{background:#fff0ee;color:#922e27}
.workforce-leave-status.status-pending{background:#fff2df;color:#8a5012}
.workforce-table-reason{display:block;max-width:230px;margin-top:3px;color:var(--muted);white-space:normal}
.workforce-document-list{display:grid}
.workforce-document-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 4px;border-top:1px solid var(--line)}
.workforce-document-list article>div{display:grid;gap:3px;min-width:0}
.workforce-document-list article span,.workforce-document-list article small{color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.workforce-document-list article>a{flex:none;padding:8px 12px;background:#f4f1ea;font-size:12px;font-weight:700}
@media(max-width:640px){.designer-login{margin:5vh auto;padding:30px 24px}.designer-header{align-items:flex-start;padding:16px 20px}.designer-account{align-items:flex-end;flex-direction:column;gap:8px}.designer-main{width:calc(100% - 28px);margin:32px auto 60px}.designer-card{padding:20px 16px}.designer-card-heading{align-items:flex-start;flex-direction:column}.designer-table{min-width:620px}.designer-table th,.designer-table td{padding:11px 8px}}
.workforce-salary-private>details>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}
.workforce-salary-private>details>summary::-webkit-details-marker{display:none}
.workforce-salary-private>details>summary::after{content:"+";display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:20px}
.workforce-salary-private>details[open]>summary::after{content:"−"}
.workforce-salary-private>details>summary span{display:grid;gap:3px}
.workforce-salary-private>details>summary strong{font-size:18px}
.workforce-salary-private>details>summary small{color:var(--muted);font-size:12px;font-weight:400}
.workforce-salary-content{padding-top:18px}
.workforce-salary-content h3{margin:20px 0 8px;font-size:17px}
.workforce-salary-content .workforce-payroll-summary{margin:18px 0}
.workforce-salary-content .workforce-payroll-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.workforce-salary-content .workforce-payroll-summary article{display:grid;gap:4px;padding:14px;background:#f7f6f2}
.workforce-salary-content .workforce-payroll-summary span{color:var(--muted);font-size:12px}
.workforce-salary-content .workforce-payroll-summary strong{font-size:19px}
.workforce-salary-content .designer-table{margin-top:12px}
.workforce-salary-content .designer-upload-button{display:inline-flex;align-items:center;min-height:38px;text-decoration:none}
@media(max-width:640px){.workforce-salary-content .workforce-payroll-summary{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.workforce-grid{grid-template-columns:minmax(0,1fr)}.workforce-balance-grid{grid-template-columns:1fr}.workforce-leave-form{grid-template-columns:1fr}.workforce-leave-form .workforce-reason,.workforce-leave-form>button{grid-column:auto}.workforce-profile-list{gap:12px}.workforce-document-list article{align-items:flex-start}}
@media(max-width:560px){.designer-table.workforce-leave-table{min-width:0;table-layout:fixed;font-size:11px}.workforce-leave-table th,.workforce-leave-table td{padding:8px 4px;overflow-wrap:anywhere}.workforce-leave-table th:nth-child(1){width:27%}.workforce-leave-table th:nth-child(2){width:35%}.workforce-leave-table th:nth-child(3){width:13%}.workforce-leave-table th:nth-child(4){width:25%}.workforce-leave-table th:nth-child(5),.workforce-leave-table td:nth-child(5){display:none}.workforce-table-reason{font-size:10px}}

.designer-main{width:min(100% - 40px,1080px);margin-top:38px}
.designer-intro{max-width:none;margin-bottom:28px;padding:clamp(28px,5vw,52px);border-radius:16px;background:radial-gradient(ellipse at 90% 0%,rgba(255,200,0,.18),transparent 36%),#172522;color:#fff}
.designer-intro .designer-eyebrow{color:#f6ca21}
.designer-intro h1{max-width:780px;font-size:clamp(36px,6vw,64px);letter-spacing:-2.7px}
.designer-intro>p:last-of-type{max-width:670px;margin:18px 0 0;color:#d7dfdc;font-size:16px}
.designer-intro-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.designer-intro-actions a,.designer-archive-empty>a{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 16px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:750;text-decoration:none}
.designer-action-primary{background:var(--accent);color:#171717}
.designer-action-secondary{border-color:rgba(255,255,255,.42)!important;color:#fff}
.designer-card{border-radius:10px;box-shadow:0 8px 28px rgba(28,25,20,.035)}
.designer-card-heading h2{font-size:25px}
.designer-upload-card{border-top:4px solid var(--accent)}
.designer-drive-state{border-radius:999px;white-space:nowrap}
.designer-drive-notice{margin:0;padding:12px 14px;border-left:3px solid #b67515;background:#fff5e3;color:#704710;font-size:13px}
.designer-upload-card form>label{gap:9px}
.designer-file-picker{min-height:132px!important;flex-direction:column;gap:6px;border-radius:8px!important}
.designer-file-picker:hover{border-color:#726522;background:#fffdf3}
.designer-file-picker>span{display:grid;gap:4px}
.designer-file-picker>span strong{font-size:14px}
.designer-file-picker>span small{font-size:12px}
.designer-upload-button{border-radius:6px}
.designer-backup-card{scroll-margin-top:20px}
.designer-upload-card{scroll-margin-top:20px}
.designer-archive-count{padding:6px 10px;border-radius:999px;background:#f4f1ea;color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}
.designer-backup-list{border-top:1px solid var(--line)}
.designer-backup-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 4px;border-bottom:1px solid var(--line)}
.designer-file-type{display:grid;width:48px;height:48px;place-items:center;border:1px solid #e7dfcb;border-radius:8px;background:#fbf8ef;color:#665313;font-size:10px;font-weight:800;letter-spacing:.3px;overflow-wrap:anywhere}
.designer-backup-details{display:grid;min-width:0;gap:5px}
.designer-backup-details strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.designer-backup-details>span{color:var(--muted);font-size:12px}
.designer-backup-download{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;padding:0 13px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:12px;font-weight:750;text-decoration:none;white-space:nowrap}
.designer-backup-download:hover{border-color:var(--ink);background:#f7f6f2}
.designer-backup-download span{font-size:17px}
.designer-archive-empty{display:flex;align-items:center;gap:16px;padding:20px;background:#f8f7f3}
.designer-archive-empty>span{display:grid;width:42px;height:42px;flex:none;place-items:center;border-radius:50%;background:#f8edbd;font-size:23px}
.designer-archive-empty>div{flex:1}
.designer-archive-empty strong{font-size:14px}
.designer-archive-empty p,.designer-archive-note{margin:4px 0 0;color:var(--muted);font-size:12px}
.designer-archive-empty>a{min-height:38px;background:#181818;color:#fff;white-space:nowrap}
.designer-archive-note{margin-top:12px}
.designer-login{border-radius:12px;box-shadow:0 16px 50px rgba(28,25,20,.07)}
.designer-login h1{letter-spacing:-2.4px}
.designer-login-form button{border-radius:6px}
@media(max-width:640px){.designer-main{width:calc(100% - 28px);margin-top:22px}.designer-intro{padding:28px 22px;border-radius:12px}.designer-intro h1{letter-spacing:-1.8px}.designer-intro>p:last-of-type{font-size:14px}.designer-card-heading{gap:10px}.designer-card-heading h2{font-size:22px}.designer-backup-item{grid-template-columns:42px minmax(0,1fr) auto;gap:10px;padding:13px 0}.designer-file-type{width:40px;height:40px;font-size:9px}.designer-backup-download{min-height:38px;padding:0 9px;font-size:11px}.designer-backup-details strong{font-size:12px}.designer-backup-details>span{font-size:10px}.designer-archive-empty{align-items:flex-start;flex-wrap:wrap;padding:15px}.designer-archive-empty>div{min-width:calc(100% - 60px)}.designer-archive-empty>a{margin-left:58px}}
@media(max-width:380px){.designer-backup-item{grid-template-columns:36px minmax(0,1fr) auto;gap:8px}.designer-file-type{width:34px;height:36px;font-size:8px}.designer-backup-download{gap:4px;padding:0 7px;font-size:10px}}
.workforce-share-card{border-top:4px solid #243b33}
.workforce-share-form{display:grid;gap:14px;padding:18px;background:#f8f7f3;border:1px solid var(--line);border-radius:8px}
.workforce-share-form>label:not(.designer-file-picker){display:grid;gap:6px;font-size:13px;font-weight:700}
.workforce-share-form select{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink)}
.workforce-share-picker{min-height:108px!important;margin:0;border-radius:6px!important;background:#fff}
.workforce-share-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.workforce-share-columns>div{min-width:0}
.workforce-share-columns h3{margin:0 0 12px;font-size:16px;letter-spacing:-.2px}
.workforce-share-columns .designer-backup-item{grid-template-columns:42px minmax(0,1fr) auto;gap:11px;padding:13px 2px}
.workforce-share-columns .designer-file-type{width:38px;height:40px}
.workforce-share-columns .designer-backup-details strong{font-size:12px}
.workforce-share-columns .designer-backup-details>span{font-size:10px}
.workforce-share-status{display:block;color:#6c5b1c;font-size:10px;font-weight:700}
.designer-sent-share{display:grid;gap:5px;padding:13px 2px;border-bottom:1px solid var(--line)}
@media(max-width:760px){.workforce-share-columns{grid-template-columns:minmax(0,1fr);gap:22px}}
@media(max-width:420px){.workforce-share-columns .designer-backup-item{grid-template-columns:34px minmax(0,1fr) auto;gap:8px}.workforce-share-columns .designer-file-type{width:32px;height:36px;font-size:8px}.workforce-share-columns .designer-backup-download{padding:0 7px;font-size:10px}}

.workforce-grid{grid-template-columns:minmax(0,1.55fr) minmax(260px,.8fr);align-items:stretch}
.workforce-profile-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.workforce-profile-list>div{padding:11px 13px;border:1px solid #ece8df;border-radius:7px;background:#fbfaf7}
.workforce-profile-list dt{font-size:10px;font-weight:700;letter-spacing:.8px}
.workforce-profile-list dd{margin:3px 0 0;font-size:13px;line-height:1.4}
.workforce-attendance{display:flex;flex-direction:column;background:linear-gradient(145deg,#fff 40%,#faf8f0)}
.workforce-attendance .workforce-action-form{margin-top:auto;padding-top:20px}
@media(max-width:700px){.workforce-grid{grid-template-columns:minmax(0,1fr)}.workforce-profile-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.workforce-profile-list{grid-template-columns:minmax(0,1fr)}}

.workforce-location-notice{margin:12px 0 0;padding:10px 12px;border-left:3px solid #b58b16;background:#fbf7e9;color:#65521a;font-size:12px;line-height:1.5}
.workforce-location-status{margin:10px 0 0;color:var(--muted);font-size:12px}
.workforce-location-status.is-error{color:#922e27}
.workforce-login-history-list{display:grid;gap:9px;margin-top:14px}
.workforce-login-history-list article{display:grid;gap:4px;padding:11px 13px;border:1px solid #ece8df;border-radius:8px;background:#fbfaf7;font-size:12px}
.workforce-login-history-list article span{color:var(--muted)}
.workforce-login-history-list article a{width:max-content;max-width:100%;color:#5144a5;font-weight:700}
.designer-login-form [data-login-location-status]{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.workforce-calendar-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}
.workforce-calendar-navigation a,.workforce-calendar-current,.workforce-calendar-disabled{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:12px;font-weight:700;text-decoration:none}
.workforce-calendar-navigation a:hover{border-color:var(--ink)}
.workforce-calendar-current{background:#f7f6f2}
.workforce-calendar-disabled{color:#aaa69d}
.workforce-attendance-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.workforce-calendar-weekday{padding:7px 8px;color:var(--muted);font-size:11px;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.5px}
.workforce-calendar-day{display:flex;min-width:0;min-height:112px;flex-direction:column;align-items:flex-start;gap:5px;padding:10px;border:1px solid var(--line);border-radius:7px;background:#fff}
.workforce-calendar-day.is-outside-month{border-color:transparent;background:transparent}
.workforce-calendar-day.is-future{background:#f8f7f4;color:#a7a399}
.workforce-calendar-day.is-closed{background:#f2f0eb;color:#aaa69d}
.workforce-calendar-day.is-today{border-color:#c8a600;box-shadow:inset 0 0 0 1px #c8a600}
.workforce-calendar-date{font-size:14px;font-weight:750}
.workforce-calendar-day.has-attendance{border-color:#cadfc9;background:#f4faf1}
.workforce-calendar-mark{display:inline-flex;align-items:center;gap:5px;padding:3px 6px;border-radius:999px;background:#e5f2e2;color:#2e653c;font-size:10px;font-weight:750}
.workforce-calendar-mark::before{width:6px;height:6px;border-radius:50%;background:#44834e;content:""}
.workforce-calendar-day.is-short-hours .workforce-calendar-mark{background:#fff0ee;color:#922e27}
.workforce-calendar-day.is-short-hours .workforce-calendar-mark::before{background:#b34237}
.workforce-calendar-time{color:#55584f;font-size:10px;line-height:1.35}
.workforce-calendar-closed-label{max-width:100%;overflow-wrap:anywhere;font-size:9px;text-transform:uppercase;letter-spacing:.3px}
.workforce-calendar-legend{display:flex;align-items:center;gap:7px;margin:14px 0 0;color:var(--muted);font-size:11px}
.workforce-calendar-legend>span{width:8px;height:8px;border-radius:50%;background:#44834e}
.workforce-calendar-mobile-records{display:none}
@media(max-width:640px){
  .workforce-calendar-navigation{gap:6px}
  .workforce-calendar-navigation a,.workforce-calendar-current,.workforce-calendar-disabled{min-height:36px;padding:0 8px;font-size:11px}
  .workforce-attendance-calendar{gap:3px}
  .workforce-calendar-weekday{padding:5px 0;font-size:9px;letter-spacing:0}
  .workforce-calendar-day{min-height:56px;align-items:center;gap:4px;padding:5px 2px;border-radius:5px}
  .workforce-calendar-date{font-size:12px}
  .workforce-calendar-mark{width:7px;height:7px;padding:0;font-size:0}
  .workforce-calendar-mark::before{width:7px;height:7px}
  .workforce-calendar-time{display:none}
  .workforce-calendar-mobile-records{display:grid;gap:0;margin-top:14px;border-top:1px solid var(--line)}
  .workforce-calendar-mobile-records p{display:grid;grid-template-columns:1fr 1fr;gap:6px 8px;margin:0;padding:10px 2px;border-bottom:1px solid var(--line);font-size:11px}
  .workforce-calendar-mobile-records p strong{font-size:11px}
  .workforce-calendar-mobile-records p span{color:var(--muted)}
  .workforce-calendar-legend{font-size:10px}
}
@media(max-width:380px){
  .workforce-calendar-navigation a span{display:none}
  .workforce-calendar-mobile-records p{grid-template-columns:1fr 1fr;gap:5px}
  .workforce-calendar-mobile-records p span:last-child{grid-column:1/-1}
}

.designer-header {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: 76px;
  padding-block: 14px;
  border-bottom-color: rgb(255 255 255 / 55%);
  background: rgb(255 255 255 / 84%);
  box-shadow: 0 8px 30px rgb(29 35 56 / 5%);
  backdrop-filter: blur(18px);
}

.designer-app-shell {
  display: grid;
  width: min(100% - 48px, 1480px);
  grid-template-columns: 232px minmax(0, 1fr);
  align-items: start;
  gap: clamp(20px, 3vw, 42px);
  margin: 0 auto;
}

.designer-sidebar {
  position: sticky;
  top: 96px;
  display: flex;
  min-height: calc(100vh - 110px);
  flex-direction: column;
  margin: 20px 0;
  padding: 18px 12px;
  border: 1px solid rgb(255 255 255 / 70%);
  border-radius: 20px;
  background: linear-gradient(155deg, #fff 0%, #faf7ff 57%, #f2fbf8 100%);
  box-shadow: 0 18px 50px rgb(39 43 70 / 7%);
}

.designer-sidebar-label {
  margin: 2px 10px 12px;
  color: #79748b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.designer-sidebar nav {
  display: grid;
  gap: 5px;
}

.designer-sidebar nav a {
  display: flex;
  min-height: 44px;
  align-items: center;
  gap: 11px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 12px;
  color: #5e5b6e;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  transition: background .18s, color .18s, transform .18s, border-color .18s;
}

.designer-sidebar nav a > span {
  display: grid;
  width: 29px;
  height: 29px;
  flex: 0 0 29px;
  place-items: center;
  border-radius: 9px;
  background: #f0edff;
  color: #715bd0;
  font-size: 15px;
}

.designer-sidebar nav a:nth-child(3n + 2) > span {
  background: #e7f8f2;
  color: #25866a;
}

.designer-sidebar nav a:nth-child(3n) > span {
  background: #fff1e7;
  color: #bd6941;
}

.designer-sidebar nav a:hover {
  transform: translateX(2px);
  background: #f5f2ff;
  color: #372b72;
}

.designer-sidebar nav a[aria-current="location"] {
  border-color: #e1d9ff;
  background: linear-gradient(100deg, #eee9ff, #f7f4ff);
  color: #4f3caf;
}

.designer-sidebar-note {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: auto 2px 0;
  padding: 13px 10px 2px;
  border-top: 1px solid #ebe8f1;
  color: #6e6882;
}

.designer-sidebar-note > span {
  color: #e99b44;
}

.designer-sidebar-note p {
  margin: 0;
  font-size: 11px;
  line-height: 1.5;
}

.designer-main {
  width: 100%;
  max-width: 1080px;
  margin: 24px auto 80px;
}

.designer-main > .designer-intro {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  background:
    radial-gradient(circle at 86% 12%, rgb(255 206 91 / 28%), transparent 27%),
    radial-gradient(circle at 95% 95%, rgb(129 115 255 / 32%), transparent 37%),
    linear-gradient(125deg, #20243e, #202c39 58%, #29463f);
  box-shadow: 0 20px 50px rgb(38 42 70 / 14%);
}

.designer-main > .designer-intro::after {
  position: absolute;
  top: 26px;
  right: 30px;
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 26%);
  border-radius: 18px;
  background: rgb(255 255 255 / 9%);
  color: #ffe07d;
  content: "✳";
  font-size: 27px;
  transform: rotate(12deg);
}

.designer-card {
  scroll-margin-top: 100px;
  border-color: #eae8f0;
  border-radius: 18px;
  box-shadow: 0 9px 30px rgb(33 40 62 / 4%);
}

.workforce-attendance {
  border-top: 4px solid #62cba7;
}

.workforce-profile {
  border-top: 4px solid #a89af4;
}

.workforce-attendance-report {
  border-top: 4px solid #f4bd57;
}

.workforce-rules {
  border-top: 4px solid #7cbbe9;
}

.designer-card-heading h2 {
  color: #292a3a;
}

.workforce-balance-grid > div {
  border: 1px solid #e9e5f4;
  border-radius: 14px;
  background: linear-gradient(145deg, #fbfaff, #f4f1ff);
}

.designer-sidebar a:focus-visible,
.designer-intro-actions a:focus-visible {
  outline: 3px solid #7c69e8;
  outline-offset: 3px;
}

@media(max-width:760px) {
  .designer-header {
    min-height: 64px;
    align-items: center;
    padding: 12px 16px;
  }

  .designer-app-shell {
    display: block;
    width: 100%;
  }

  .designer-sidebar {
    top: 64px;
    z-index: 25;
    min-height: 0;
    margin: 0;
    padding: 8px 12px;
    border-width: 0 0 1px;
    border-radius: 0;
    background: rgb(255 255 255 / 94%);
    box-shadow: 0 8px 24px rgb(29 35 56 / 7%);
    backdrop-filter: blur(16px);
  }

  .designer-main > .designer-card {
    scroll-margin-top: 128px;
  }

  .designer-sidebar-label,
  .designer-sidebar-note {
    display: none;
  }

  .designer-sidebar nav {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
  }

  .designer-sidebar nav::-webkit-scrollbar {
    display: none;
  }

  .designer-sidebar nav a {
    min-height: 40px;
    flex: 0 0 auto;
    gap: 7px;
    padding: 5px 9px;
    border-radius: 11px;
    font-size: 11px;
    white-space: nowrap;
  }

  .designer-sidebar nav a > span {
    width: 26px;
    height: 26px;
    flex-basis: 26px;
    font-size: 13px;
  }

  .designer-main {
    width: calc(100% - 28px);
    margin: 18px auto 70px;
  }
}

@media(max-width:640px) {
  .designer-main > .designer-intro {
    border-radius: 17px;
  }

  .designer-main > .designer-intro::after {
    top: 16px;
    right: 17px;
    width: 40px;
    height: 40px;
    border-radius: 14px;
    font-size: 21px;
  }
}
