:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#203149;background:#f4f6f9;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.55}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{min-height:44px;min-width:44px;padding:10px 17px;border:1px solid #c7d1dc;border-radius:9px;background:#fff;color:#263e59;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.35}button:hover,.button:hover{background:#edf2f7;border-color:#8c9faf}button:disabled{opacity:.55;cursor:not-allowed}a{color:#225e9e;text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a45400;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.2;letter-spacing:-1.2px;margin-bottom:12px;font-weight:720}h2{font-size:1.2rem;letter-spacing:-.3px;margin-bottom:12px}h3{font-size:1rem;margin-bottom:6px}p{margin-bottom:14px}p:last-child{margin-bottom:0}.muted{color:#5d6d80}.small{font-size:.82rem}.block{display:block}.eyebrow{font-size:.7rem;letter-spacing:1.5px;font-weight:750;color:#64748b;margin-bottom:10px}.primary{background:#205b93;color:#fff;border-color:#205b93}.primary:hover{background:#184a79;color:#fff}.danger{color:#9c2525;border-color:#d9aaaa}.danger:hover{background:#fff0ef}.subtle{margin-top:12px}.error{color:#952424!important;background:#fff0ef!important;border-color:#deb6b6!important;overflow-wrap:anywhere}.button-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.account-form{display:grid;gap:16px;max-width:440px;margin-top:24px}.topbar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-status{flex-shrink:0;margin-left:12px}.app-shell{display:flex;min-height:100vh}.sidebar{width:236px;background:#172b43;color:#e6edf5;padding:35px 24px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;font-size:1.5rem;font-weight:800;letter-spacing:-.5px;color:#fff;text-decoration:none;min-height:44px}.brand-light{font-weight:400;margin-left:2px}.sidebar-label{font-size:.6rem;letter-spacing:1.6px;color:#a9b9cd;margin:22px 0 27px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav a{color:#c9d6e5;display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:8px;text-decoration:none;font-size:.94rem;min-height:48px}.sidebar nav a.active{color:#fff;background:#2e4561;font-weight:650}.sidebar nav a span{font-size:1.2rem;width:22px;text-align:center}.sidebar-note{margin-top:auto;padding:24px 7px 0;font-size:.85rem;color:#b8c8db}.sidebar-note strong{color:#e4edf7}.sidebar-note p{margin:7px 0 22px}.workspace{margin-left:236px;min-width:0;flex:1}.topbar{height:72px;display:flex;justify-content:space-between;align-items:center;padding:0 42px;background:#fff;border-bottom:1px solid #e1e7ef;font-size:.8rem;color:#64748b}.saved-status{color:#25634f;display:flex;align-items:center;gap:7px}.saved-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#3e9475}.saved-status.failed{color:#9c2525}.saved-status.failed:before{background:#9c2525}main{max-width:1370px;margin:0 auto;padding:38px 42px 16px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.page-heading p:last-child{margin:0}.card{background:#fff;border:1px solid #e0e6ed;border-radius:14px;padding:26px;margin-bottom:22px;box-shadow:0 3px 9px #172b4303}.today-card{display:flex;justify-content:space-between;align-items:center;gap:20px;border-left:4px solid #6b91b7}.today-card h2{margin:4px 0}.today-card p{font-size:.85rem;margin:0}.tool.office{color:#175990;background:#eaf3ff;border-color:#b1cbe9}.tool.remote{color:#17604b;background:#eaf5ef;border-color:#b2d7c2}.tool.selected{box-shadow:inset 0 0 0 2px currentColor}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.metric{min-width:0;padding:24px}.metric h2{font-size:1rem}.metric p{font-size:.85rem}.metric-value{font-size:3rem;font-weight:730;line-height:1.4;letter-spacing:-2px}.metric-value span{font-size:1.7rem;color:#8090a2;font-weight:450}.metric .status-title{font-size:1.55rem;line-height:1.25;margin-top:19px}.week-dots{display:flex;gap:9px;margin:16px 0}.week-dots span{display:grid;place-items:center;border:1px solid #d7e0eb;border-radius:50%;width:29px;height:29px;font-size:.7rem;color:#53667d;background:#f3f5f8}.week-dots .filled{background:#e2efff;color:#1d548c;border-color:#9dbee2}.status-shortfall,.status-conflict{border-top:3px solid #bb6354}.status-compliant,.status-on-track{border-top:3px solid #3d8a71}.status-planning,.status-initializing{border-top:3px solid #cba554}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}.section-heading h2{margin-bottom:0}.pill{font-size:.78rem;background:#f0f4f8;border:1px solid #dbe3ec;border-radius:7px;padding:5px 10px;display:inline-block;color:#455a72}.scenario-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:24px 0;color:#53667a;font-size:.88rem}.scenario-grid h3{color:#203149}.notice{padding:18px 20px;background:#f1f5fa;border:1px solid #d4dfeb;border-radius:10px;margin:20px 0;font-size:.9rem}.preview{border-color:#a9c7e4}.reminder{background:#fffaf0;border-color:#e7d9b8}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.85rem;text-align:left}th,td{padding:13px 12px;border-bottom:1px solid #e4eaf0}thead th{font-size:.74rem;font-weight:600;color:#5e7187;background:#f7f9fb}tbody th{font-weight:550}tr:last-child td,tr:last-child th{border-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;min-width:0}input,select,textarea{min-height:44px;border:1px solid #becbd9;border-radius:7px;padding:10px 11px;background:#fff;color:#203149;max-width:100%;min-width:0}textarea{width:100%;resize:vertical}.check{flex-direction:row;align-items:center;min-height:44px;gap:9px;font-weight:500}.check input{min-height:20px;width:20px;height:20px;accent-color:#205b93;flex-shrink:0}fieldset{border:1px solid #d6e0ea;border-radius:9px;margin:18px 0;padding:12px}legend{font-size:.9rem;font-weight:600}.calendar-tools{display:flex;align-items:center;flex-wrap:wrap;gap:18px;border-bottom:1px solid #e3e9ef;padding-bottom:20px}.tool-group{display:flex;gap:8px}.compact-label{flex-direction:row;align-items:center;gap:8px;font-size:.8rem}.month-heading{display:flex;align-items:center;justify-content:space-between;margin:23px 0 12px;gap:12px}.month-heading h2{font-size:1.45rem;margin:0}.month-heading .button-row{gap:6px}.month-heading button{padding:9px 12px}.calendar-help{font-size:.78rem;color:#586c80;margin:12px 0}.calendar-grid{touch-action:none;user-select:none;-webkit-user-select:none}.calendar-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-row [role=gridcell]{min-width:0}.weekdays{font-size:.72rem;font-weight:600;color:#65768a;text-align:center;padding:12px 0}.day{position:relative;width:100%;min-width:0;height:100px;border:1px solid #e0e6ee;border-radius:0;padding:9px;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:3px;background:#fff;font-weight:500}.day:hover{z-index:1;border-color:#69859f}.day.office{background:#e6f0fe;color:#174f86}.day.remote{background:#e5f3ea;color:#1f644e}.day.vacation{background:#f0eafb;color:#624284}.day.sick{background:#fff1df;color:#84500b}.day.holiday{background:#fbe9ed;color:#8b3953}.day.hint{background:#f2f8f4}.day.weekend{background:#e6e9ed;color:#566476}.day.planned{box-shadow:inset 0 0 0 2px #6c7e94;border-style:dashed}.day[aria-current=date] .day-number{background:#205b93;color:#fff;border-radius:4px;padding:0 5px}.day.range-preview{box-shadow:inset 0 0 0 3px #a45400;background:#fff0cc;z-index:2}.day.adjacent .day-number{color:#61758b}.day-number{font-size:.9rem}.day-type{font-size:.76rem;font-weight:600}.plan-badge{font-size:.6rem;text-transform:uppercase;letter-spacing:.6px;border:1px solid currentColor;border-radius:3px;padding:0 4px}.lock-mark{font-weight:850}.type-short{display:none}.calendar-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-top:17px}.calendar-footer button{font-size:.8rem}.legend{display:flex;gap:13px;flex-wrap:wrap;font-size:.72rem;color:#5f7185}.office-dot:before,.remote-dot:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;background:#276eae}.remote-dot:before{background:#318464}.range-controls{align-items:flex-end}.save-announcement{font-size:.85rem;color:#25634f;min-height:24px}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.file-button:focus-within{outline:3px solid #a45400;outline-offset:3px}dialog{border:1px solid #d1dce7;border-radius:16px;padding:28px;width:min(660px,calc(100% - 24px));max-height:85dvh;overflow:auto;color:#203149;box-shadow:0 20px 80px #0d203a40}dialog::backdrop{background:#11223685}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px}.dialog-heading h2{margin:0}.dialog-heading button{font-size:.8rem}.suggestion-list{display:flex;flex-wrap:wrap;gap:8px;max-height:32vh;overflow:auto;margin:18px 0}.policy-summary p{font-size:.88rem}footer{max-width:1370px;margin:auto;padding:0 42px 24px;color:#65758a;font-size:.75rem}footer p{margin:12px 0}.pwa-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pwa-status button{font-size:.75rem;padding:7px 12px}.pwa-status .notice{width:100%;margin:6px 0}.skip-link{position:fixed;top:-70px;left:20px;z-index:20;padding:12px;background:#fff}.skip-link:focus{top:10px}.fatal{max-width:700px;margin:80px auto}@media(min-width:1600px){main{padding-top:48px}.day{height:115px}}@media(max-width:1150px){.sidebar{width:200px;padding:28px 17px}.workspace{margin-left:200px}main{padding:28px 24px}.topbar{padding:0 24px}.metrics{gap:12px}.metric{padding:19px}.today-card{align-items:flex-start;flex-direction:column}footer{padding-left:24px;padding-right:24px}.metric .status-title{font-size:1.3rem}}@media(max-width:800px){html{scroll-padding-bottom:90px}.sidebar{position:fixed;inset:auto 0 0;width:auto;height:76px;z-index:10;padding:5px 10px max(5px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #d6e0eb}.sidebar .brand,.sidebar-label,.sidebar-note{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.sidebar nav a{font-size:.7rem;flex-direction:column;gap:1px;padding:4px;color:#617389;border-radius:8px}.sidebar nav a.active{color:#205b93;background:#edf3fa}.sidebar nav a span{font-size:1.25rem}.workspace{margin-left:0;padding-bottom:76px}.topbar{height:56px;padding:0 20px}main{padding:28px 20px 8px}.page-heading{align-items:flex-start;gap:15px}.page-heading>.button,.page-heading>button{font-size:.8rem}.metrics{grid-template-columns:1fr 1fr}.metrics .metric:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:0 20px}.metrics .metric:last-child .metric-value{grid-row:1/4;grid-column:2}.metrics .metric:last-child h2{margin-bottom:5px}.metrics .metric:last-child p{margin-bottom:5px}.metrics .metric:last-child a{font-size:.85rem}.card{padding:20px}.calendar-card{padding:18px 12px}.day{height:87px;padding:7px}.day-type{font-size:.65rem}.calendar-tools{gap:10px}.calendar-tools .check{font-size:.8rem}.scenario-grid{gap:18px}.topbar>span{font-size:.75rem}footer{padding:0 20px 20px}}@media(max-width:480px){.topbar{padding:0 12px;font-size:.7rem}main{padding:24px 12px 8px}h1{font-size:1.9rem}.page-heading{flex-direction:column;margin-bottom:22px}.page-heading>.button{align-self:flex-start}.card{padding:18px;margin-bottom:16px;border-radius:11px}.metrics{grid-template-columns:1fr;gap:0}.metrics .metric:last-child{display:block}.metric{padding:20px}.metric-value{font-size:2.6rem}.metric .status-title{font-size:1.4rem}.scenario-grid{grid-template-columns:1fr;gap:14px;margin:18px 0}.form-grid{grid-template-columns:1fr;gap:14px}.calendar-card{padding:0;overflow:visible}.calendar-tools,.month-heading,.calendar-help,.calendar-footer{margin-left:8px;margin-right:8px}.calendar-tools{padding:14px 0;gap:10px}.calendar-tools button{padding:10px 14px}.compact-label{width:100%}.compact-label select{flex:1}.month-heading{flex-wrap:wrap;margin-top:18px}.month-heading h2{font-size:1.15rem}.month-heading .button-row{gap:4px}.month-heading button{font-size:.72rem;padding:8px;min-width:44px}.calendar-help{font-size:.7rem}.weekdays{font-size:.65rem}.day{height:78px;padding:5px 3px;gap:3px}.day-number{font-size:.8rem}.day-type{font-size:.7rem}.type-full{display:none}.type-short{display:inline}.plan-badge{font-size:.52rem;padding:0 2px;letter-spacing:0}.calendar-footer{padding-top:12px}.calendar-footer button{width:100%;font-size:.75rem}.legend{font-size:.65rem;gap:9px}.range-controls>label{width:100%}.range-controls>button{width:100%}.notice{padding:15px;font-size:.85rem}.section-heading{gap:10px}.table-scroll{margin:0 -6px}th,td{padding:10px 8px;font-size:.76rem}dialog{padding:20px}.dialog-heading{align-items:flex-start}.dialog-heading h2{font-size:1.05rem}.pwa-status{font-size:.7rem}footer{padding:0 12px 18px}}@media(max-width:360px){main{padding-left:5px;padding-right:5px}.calendar-card{border-left:0;border-right:0}.page-heading,.topbar{padding-left:7px;padding-right:7px}.month-heading{gap:8px}.day{height:76px}.card:not(.calendar-card){padding:15px}.tool-group{gap:6px}.calendar-tools button{padding-left:13px;padding-right:13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
