:root{--navy:#101b33;--navy2:#182945;--cyan:#36d8e9;--cyan-dark:#087f91;--ink:#172033;--muted:#667085;--line:#dce3ea;--surface:#f3f6f8;--danger:#c93448;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#172033;background:#f3f6f8}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,1.02fr) minmax(450px,.98fr)}.brand-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,8vw,112px);color:#fff;background:radial-gradient(circle at 72% 28%,rgba(54,216,233,.18),transparent 30%),linear-gradient(145deg,#0d172c,#132b49)}.brand-mark{width:54px;height:54px;display:grid;place-items:center;margin-bottom:54px;border:1px solid #ffffff38;border-radius:16px;color:var(--cyan);font-size:28px;font-weight:900}.eyebrow,.section-label{margin:0 0 14px;color:var(--cyan);font-size:11px;font-weight:850;letter-spacing:.18em}.eyebrow.dark,.section-label{color:var(--cyan-dark)}.brand-panel h1{margin:0;font-size:clamp(44px,5vw,76px);line-height:.98;letter-spacing:-.055em}.brand-panel h1 span{color:var(--cyan);font-weight:400}.intro{max-width:500px;margin:28px 0 0;color:#b8c5d8;font-size:18px;line-height:1.65}.availability{display:flex;align-items:center;gap:11px;margin-top:62px;color:#d6dfec;font-size:14px}.availability i{width:9px;height:9px;border-radius:50%;background:#48e8a2;box-shadow:0 0 0 6px #48e8a21f}.access-panel{display:grid;place-items:center;padding:48px;background:linear-gradient(145deg,#f8fafb,#edf2f5)}.login-card{width:min(100%,450px)}.login-card h2,.dialog-card h2{margin:0 0 10px;color:var(--navy);font-size:44px;letter-spacing:-.045em}.muted{color:var(--muted);line-height:1.55}.login-card form{display:grid;margin-top:38px}.login-card label,.dialog-card label{margin:0 0 8px;color:#344054;font-size:13px;font-weight:750}.login-card input,.dialog-card select,.dialog-card textarea{width:100%;border:1px solid var(--line);border-radius:10px;outline:0;background:#fff;color:var(--ink)}.login-card input{height:54px;margin-bottom:22px;padding:0 15px}.login-card input:focus,.dialog-card select:focus,.dialog-card textarea:focus{border-color:var(--cyan-dark);box-shadow:0 0 0 4px #36d8e921}.password-wrap{position:relative}.password-wrap input{padding-right:70px}.password-wrap button{position:absolute;right:10px;top:10px;border:0;padding:8px;color:var(--cyan-dark);background:transparent;font-weight:750}.form-message{min-height:20px;margin:0 0 10px;color:var(--danger);font-size:13px}.primary-button,.secondary-button,.danger-button{min-height:50px;border:0;border-radius:10px;padding:0 19px;font-weight:800}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:24px;color:#07131e;background:var(--cyan);box-shadow:0 10px 25px #0d82942b}.primary-button:disabled{opacity:.48;cursor:not-allowed}.secondary-button{color:var(--navy);background:#eef2f5}.danger-button{color:#fff;background:var(--danger)}
.dashboard{min-height:100vh;background:#f3f6f8}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,64px);color:#fff;background:var(--navy);box-shadow:0 4px 20px #101b3321}.wordmark{display:grid;grid-template-columns:38px auto;grid-template-rows:auto auto;column-gap:11px;color:#fff;text-decoration:none}.wordmark>span{grid-row:1/3;width:38px;height:38px;display:grid;place-items:center;border:1px solid #ffffff33;border-radius:10px;color:var(--cyan);font-size:21px;font-weight:900}.wordmark strong{align-self:end;line-height:1}.wordmark small{color:#9eadc2;font-size:10px}.account{display:flex;align-items:center;gap:11px}.account-copy{display:flex;flex-direction:column;text-align:right}.account-copy strong{font-size:13px}.account-copy span{color:#94a6bd;font-size:11px}.avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:#062329;background:var(--cyan);font-size:12px;font-weight:900}.icon-button{width:36px;height:36px;border:1px solid #ffffff1c;border-radius:8px;color:#c3cfdd;background:#ffffff0a}.page-content{width:min(1600px,100%);margin:auto;padding:40px clamp(16px,4vw,64px) 64px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:27px}.page-header h2{margin:0;color:var(--navy);font-size:clamp(30px,4vw,48px);letter-spacing:-.045em}.page-header p:last-child{margin:8px 0 0;color:var(--muted)}.compact{min-height:48px;white-space:nowrap}.compact span{min-width:24px;height:24px;display:grid;place-items:center;border-radius:12px;background:#ffffff80}.notice{margin:0 0 18px;padding:13px 16px;border-radius:10px;font-size:14px}.notice.success{color:#086244;background:#dff8ed}.notice.warning{color:#7a5200;background:#fff2c9}.legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:14px;color:#526175;font-size:11px}.legend span{display:flex;align-items:center;gap:6px}.legend i,.selectable-dot{width:9px;height:9px;border-radius:50%;background:var(--person)}.schedule-card{overflow:hidden;border:1px solid #dbe2e8;border-radius:14px;background:#fff;box-shadow:0 12px 38px #1720330c}.schedule-scroll{overflow:auto}.schedule-grid{display:grid;grid-template-columns:68px repeat(7,minmax(145px,1fr));min-width:1083px}.grid-head{position:sticky;top:0;z-index:3;padding:15px 10px;border-right:1px solid #2c3b54;color:#fff;background:var(--navy);font-size:12px;font-weight:800;text-align:center}.time-head{left:0;z-index:4}.time-cell{position:sticky;left:0;z-index:2;display:grid;place-items:center;min-height:44px;border-right:1px solid #dbe2e8;border-bottom:1px solid #e8edf1;color:#59677a;background:#f8fafb;font-size:11px;font-variant-numeric:tabular-nums}.shift-cell{position:relative;min-height:44px;overflow:hidden;border:0;border-right:1px solid #fff;border-bottom:1px solid #fff;padding:7px 10px;text-align:left;color:#172033;background:color-mix(in srgb,var(--person) 72%,white);font-size:11px;font-weight:700}.shift-cell::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--person)}.shift-cell:disabled{cursor:default}.shift-cell small{display:block;margin-top:2px;font-size:8px;font-weight:650;opacity:.65}.shift-cell.editable:hover{filter:brightness(.96);box-shadow:inset 0 0 0 2px var(--cyan-dark)}.shift-cell.selected{z-index:1;box-shadow:inset 0 0 0 3px var(--navy)}.shift-cell.selected::after{content:"✓";position:absolute;right:6px;top:5px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--navy);font-size:10px}.special-row{grid-column:2/9;display:grid;place-items:center;min-height:44px;border-bottom:1px solid #d0c400;color:#182033;background:#ffef00;font-size:12px;font-weight:900;letter-spacing:.25em}.schedule-card>footer{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;color:#718096;background:#f8fafb;font-size:10px}.schedule-card>footer span:first-child{display:flex;align-items:center;gap:7px}.selectable-dot{background:var(--cyan-dark)}.requests-section{margin-top:38px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:13px}.section-heading h3{margin:0;color:var(--navy);font-size:24px}.text-button{border:0;padding:7px 10px;color:var(--cyan-dark);background:transparent;font-weight:800}.requests-list{display:grid;gap:9px}.request-item{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:16px;padding:15px 17px;border:1px solid var(--line);border-radius:11px;background:#fff}.request-item p{margin:3px 0;color:#475467;font-size:12px}.request-item small{color:#8490a0}.request-status{padding:6px;border-radius:20px;text-align:center;font-size:10px;font-weight:850}.request-status.pending{color:#7a5200;background:#fff0bd}.request-status.approved{color:#086244;background:#dff8ed}.request-status.rejected{color:#9d2435;background:#ffe1e6}.empty-state{padding:28px;border:1px dashed #cbd4dd;border-radius:11px;color:#7a8796;text-align:center;background:#ffffff80}
dialog{width:min(94vw,560px);padding:0;border:0;border-radius:16px;box-shadow:0 30px 90px #101b3359}dialog::backdrop{background:#08101fc2;backdrop-filter:blur(3px)}.dialog-card{position:relative;padding:34px}.dialog-card h2{font-size:34px}.dialog-close{position:absolute;right:17px;top:15px;border:0;color:#667085;background:transparent;font-size:27px}.dialog-card select{height:50px;margin:8px 0 20px;padding:0 12px}.dialog-card textarea{margin:8px 0 4px;padding:12px;resize:vertical}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.dialog-actions .primary-button{display:block}.dialog-card #decision-detail{padding:14px;border-radius:10px;background:#f4f7f9;line-height:1.5}.dialog-card #decision-detail p{margin:7px 0}
@media(max-width:840px){.login-shell{grid-template-columns:1fr}.brand-panel{min-height:340px;padding:38px 28px}.brand-mark{margin-bottom:26px}.brand-panel h1{font-size:46px}.intro{display:none}.availability{margin-top:25px}.access-panel{padding:50px 24px}.page-header{align-items:stretch;flex-direction:column}.compact{align-self:flex-start}.schedule-card>footer{flex-direction:column}.account-copy{display:none}}@media(max-width:520px){.topbar{height:66px}.wordmark small{display:none}.page-content{padding-top:28px}.request-item{grid-template-columns:1fr auto}.request-status{grid-column:1/3;justify-self:start}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}.login-card h2{font-size:38px}}

/* Pantalla de acceso original */
.brand-panel{position:relative;isolation:isolate;overflow:hidden}.brand-panel::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;background-image:linear-gradient(#ffffff0f 1px,transparent 1px),linear-gradient(90deg,#ffffff0f 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(120deg,transparent 12%,#000 70%)}.brand-mark span{color:var(--cyan);font-size:28px;font-weight:800;font-style:italic}.brand-copy{position:relative;z-index:1;max-width:640px}.orbit{position:absolute;z-index:-1;border:1px solid #36d8e92e;border-radius:50%}.orbit-one{width:500px;height:500px;right:-300px;bottom:-110px}.orbit-two{width:300px;height:300px;right:-160px;bottom:-10px}.access-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;min-height:100vh}.login-card header{margin-bottom:42px}.login-card header>p:last-child{margin:0;color:var(--muted);line-height:1.6}.login-card form{margin-top:0}.field-wrap{position:relative;margin-bottom:24px}.field-wrap input{margin:0;padding:0 54px 0 45px}.field-icon{position:absolute;left:17px;top:50%;translate:0 -50%;z-index:1;color:#8290a3;font-size:8px}.field-icon.key{font-size:9px;rotate:45deg}.password-wrap button{top:50%;translate:0 -50%}.help-text{margin:28px 0 0;color:#7b8798;font-size:13px;text-align:center}.login-footer{color:#98a2b3;font-size:12px;text-align:center}
@media(max-width:840px){.access-panel{min-height:62vh;padding:54px 24px 28px}.brand-panel{min-height:38vh;justify-content:flex-end}.brand-mark{width:46px;height:46px;margin-bottom:34px}.availability{margin-top:28px}}@media(max-width:420px){.brand-panel{min-height:360px}.brand-mark{margin-bottom:24px}.access-panel{justify-content:flex-start}.login-card header{margin-bottom:32px}}
.cell-select{position:absolute;left:4px;right:4px;bottom:4px;width:calc(100% - 8px);height:27px;border:1px solid #ffffffaa;border-radius:6px;padding:0 4px;color:#172033;background:#fff;font-size:9px;font-weight:700;z-index:3}.shift-cell:has(.cell-select){min-height:72px}.shift-cell.selected small{padding-right:20px}
.logout-button{display:flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid #ffffff29;border-radius:8px;color:#e7edf5;background:#ffffff0a;font-size:12px;font-weight:750;white-space:nowrap}.logout-button:hover{background:#ffffff17}
@media(max-width:520px){.logout-button{padding:0 9px;font-size:11px}}
.admin-menu{position:relative;margin-left:auto;margin-right:18px}.menu-toggle{display:flex;align-items:center;gap:8px;min-height:38px;border:1px solid #ffffff29;border-radius:8px;padding:0 14px;color:#fff;background:#ffffff0a;font-weight:750}.menu-panel{position:absolute;top:46px;right:0;z-index:20;width:230px;padding:7px;border:1px solid #dce3ea;border-radius:11px;background:#fff;box-shadow:0 18px 45px #101b3333}.menu-panel button{width:100%;border:0;border-radius:7px;padding:11px 12px;color:var(--ink);background:transparent;text-align:left;font-size:13px;font-weight:700}.menu-panel button:hover,.menu-panel button.active{color:var(--cyan-dark);background:#edf9fb}.app-view{min-width:0}.filter-card{display:grid;grid-template-columns:minmax(180px,260px) minmax(220px,1fr) auto;align-items:end;gap:16px;margin-bottom:22px;padding:19px;border:1px solid var(--line);border-radius:13px;background:#fff}.filter-card label,.form-grid label{display:grid;gap:7px;color:#344054;font-size:12px;font-weight:750}.filter-card input,.filter-card select,.dialog-card input{width:100%;height:48px;border:1px solid var(--line);border-radius:9px;padding:0 12px;color:var(--ink);background:#fff}.filter-card .primary-button{min-width:120px}.data-card{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 10px 30px #1720330a}.table-scroll{overflow:auto}.data-card table{width:100%;border-collapse:collapse;min-width:680px}.data-card th,.data-card td{padding:13px 16px;border-bottom:1px solid #e9edf1;text-align:left;font-size:12px}.data-card th{color:#526175;background:#f7f9fa;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.data-card tbody tr:last-child td{border-bottom:0}.data-card .row-actions{display:flex;gap:7px}.data-card .row-actions button{border:0;border-radius:7px;padding:7px 9px;color:var(--cyan-dark);background:#eaf7f9;font-size:11px;font-weight:750}.data-card .row-actions .delete-user{color:#a52638;background:#ffe9ed}.role-badge{display:inline-block;border-radius:20px;padding:5px 9px;color:#344054;background:#edf1f5;font-size:10px;font-weight:800}.role-badge.admin{color:#075969;background:#dff8fb}.role-badge.supervisor{color:#664d03;background:#fff2c9}.result-summary{min-height:24px;margin:0 0 10px;color:#667085;font-size:12px}.empty-row{text-align:center!important;color:#8490a0;padding:28px!important}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:16px}.dialog-card>label{display:block}.dialog-card #managed-password{margin:8px 0 4px}.hours-extra{color:#087f91;font-weight:850}
@media(max-width:760px){.filter-card{grid-template-columns:1fr}.filter-card .primary-button{width:100%}.form-grid{grid-template-columns:1fr}.admin-menu{margin-right:8px}.menu-toggle{padding:0 10px}.logout-button{font-size:0;gap:0}.logout-button span{font-size:14px}.account{gap:7px}.avatar{display:none}}
.direct-nav{display:flex;align-self:stretch;margin-left:auto}.direct-nav button{position:relative;border:0;padding:0 13px;color:#b8c5d8;background:transparent;font-size:12px;font-weight:750;white-space:nowrap}.direct-nav button:hover,.direct-nav button.active{color:#fff}.direct-nav button.active::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--cyan)}.direct-nav+.account{margin-left:16px}
@media(max-width:1100px){.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding-top:10px}.direct-nav{order:3;width:100%;height:46px;margin:6px 0 0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.direct-nav button{min-height:43px;padding:0 14px}.direct-nav+.account{margin-left:auto}.page-content{padding-top:32px}}
@media(max-width:520px){.topbar{padding-inline:14px}.direct-nav{margin-top:8px}.direct-nav button{font-size:11px}.logout-button{font-size:0;gap:0}.logout-button span{font-size:14px}}
.direct-nav{align-items:center;gap:6px;padding:8px 0}.direct-nav button{display:flex;align-items:center;gap:7px;align-self:center;min-height:42px;border:1px solid transparent;border-radius:10px;padding:0 12px;color:#aebdd0;background:transparent;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.direct-nav button:hover{color:#fff;border-color:#ffffff1f;background:#ffffff0c;transform:translateY(-1px)}.direct-nav button.active{color:#fff;border-color:#36d8e95c;background:linear-gradient(180deg,#36d8e929,#36d8e914);box-shadow:inset 0 0 0 1px #36d8e90f,0 6px 18px #0208172e}.direct-nav button.active::after{content:none}.nav-icon{width:24px;height:24px;display:grid;place-items:center;border:1px solid #ffffff17;border-radius:7px;color:#8fa4bc;background:#ffffff08;font-size:15px;line-height:1}.direct-nav button:hover .nav-icon,.direct-nav button.active .nav-icon{color:var(--cyan);border-color:#36d8e940;background:#36d8e914}
@media(max-width:1100px){.direct-nav{height:56px;padding:6px 0}.direct-nav button{min-height:42px}.direct-nav button:first-child{margin-left:2px}.direct-nav button:last-child{margin-right:2px}}
@media(max-width:520px){.direct-nav{gap:5px;height:54px}.direct-nav button{min-height:40px;padding:0 10px;border-color:#ffffff12;background:#ffffff05}.nav-icon{width:22px;height:22px;font-size:13px}}
@media(max-width:1100px){.direct-nav{scrollbar-width:none;scroll-snap-type:x proximity}.direct-nav::-webkit-scrollbar{display:none}.direct-nav button{scroll-snap-align:start}}
.brand-mark{width:80px;height:80px;border:0;border-radius:0;background:transparent}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.wordmark{grid-template-columns:42px auto}.wordmark>span{width:42px;height:42px;overflow:visible;border:0;border-radius:0;background:transparent}.wordmark>span img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:840px){.brand-mark{width:68px;height:68px}}
.warning-text{padding:10px 12px;border-radius:8px;color:#7a5200;background:#fff2c9;line-height:1.45}
.week-range{margin:7px 0 0!important;color:#087f91!important;font-size:14px;font-weight:800}.trace-filters{grid-template-columns:minmax(155px,220px) minmax(155px,220px) minmax(210px,1fr) auto}.trace-table{min-width:1120px!important}.trace-status{display:inline-block;border-radius:20px;padding:5px 9px;background:#edf1f5;font-size:10px;font-weight:850}.trace-status.pending{color:#7a5200;background:#fff0bd}.trace-status.approved,.trace-status.applied{color:#086244;background:#dff8ed}.trace-status.rejected{color:#9d2435;background:#ffe1e6}.scope-help{margin:-10px 0 8px;font-size:12px}@media(max-width:900px){.trace-filters{grid-template-columns:1fr 1fr}.trace-filters .primary-button{grid-column:1/3}}@media(max-width:560px){.trace-filters{grid-template-columns:1fr}.trace-filters .primary-button{grid-column:auto}}

.turns-nav{position:relative;display:flex;align-items:center;align-self:stretch}.turns-nav>#turns-menu-button{height:100%}.nav-caret{margin-left:-2px;color:#8195ad;font-size:13px;transition:transform .18s ease}.turns-nav>#turns-menu-button[aria-expanded="true"] .nav-caret{transform:rotate(180deg)}.turns-menu{position:absolute;top:calc(100% + 7px);left:0;z-index:40;width:225px;padding:7px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 20px 55px #07101f40}.direct-nav .turns-menu button{width:100%;min-height:40px;border:0;border-radius:8px;padding:0 12px;color:#344054;background:transparent;text-align:left;transform:none;box-shadow:none}.direct-nav .turns-menu button:hover,.direct-nav .turns-menu button.active{color:#087f91;border:0;background:#eaf7f9;transform:none;box-shadow:none}.direct-nav .turns-menu button.active::after{content:none}
.week-navigator{display:flex;align-items:center;gap:10px;margin-top:8px}.week-navigator .week-range{margin:0!important}.week-navigator button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #cfd9e2;border-radius:9px;color:#087f91;background:#fff;font-size:18px;font-weight:850;box-shadow:0 4px 12px #1720330a;transition:border-color .18s ease,background .18s ease,transform .18s ease}.week-navigator button:hover{border-color:#79bfca;background:#eaf8fa;transform:translateY(-1px)}.week-navigator button:disabled{opacity:.45;cursor:wait}
.holiday-controls{display:grid;grid-template-columns:minmax(190px,280px) minmax(260px,1fr);gap:16px;margin-bottom:18px;padding:19px;border:1px solid var(--line);border-radius:13px;background:#fff}.holiday-controls label{display:grid;gap:7px;color:#344054;font-size:12px;font-weight:750}.holiday-controls input{width:100%;height:48px;border:1px solid var(--line);border-radius:9px;padding:0 12px;color:var(--ink);background:#fff}.holiday-card{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 10px 30px #1720330a}.calendar-weekdays,.holiday-calendar{display:grid;grid-template-columns:repeat(7,minmax(76px,1fr))}.calendar-weekdays{border-bottom:1px solid var(--line);background:#f7f9fa}.calendar-weekdays span{padding:13px 8px;color:#526175;font-size:10px;font-weight:850;text-align:center;text-transform:uppercase;letter-spacing:.05em}.holiday-calendar{padding:10px;gap:7px}.calendar-empty,.calendar-day{min-height:82px}.calendar-day{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;border:1px solid #e0e6eb;border-radius:10px;padding:10px;color:#344054;background:#fff;text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.calendar-day:hover{border-color:#cb6b78;background:#fff7f8;transform:translateY(-1px)}.calendar-day>span{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#f2f5f7;font-size:13px;font-weight:850}.calendar-day small{max-width:100%;overflow:hidden;font-size:9px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.calendar-day.selected{border-color:#a72539;color:#fff;background:linear-gradient(145deg,#d8495c,#b82d42);box-shadow:0 8px 20px #c9344827}.calendar-day.selected>span{color:#a72539;background:#fff}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--cyan-dark)}.calendar-day.today.selected{box-shadow:inset 0 0 0 2px #fff,0 8px 20px #c9344827}.holiday-legend{display:flex;flex-wrap:wrap;gap:18px;padding:13px 16px;border-top:1px solid var(--line);color:#667085;background:#f8fafb;font-size:11px}.holiday-legend span{display:flex;align-items:center;gap:7px}.holiday-saved-dot,.holiday-today-dot{width:10px;height:10px;border-radius:3px;background:var(--danger)}.holiday-today-dot{border:2px solid var(--cyan-dark);background:#fff}.holiday-summary{margin-top:17px;padding:15px 17px;border:1px solid #dce7ea;border-radius:11px;color:#475467;background:#f8fbfc;font-size:13px;line-height:1.55}.holiday-user-estimate{margin-top:7px;color:#667085;font-size:11px}.holiday-accept{min-width:150px}.holiday-summary+.form-message{margin-top:10px}
@media(max-width:1100px){.turns-menu{position:fixed;top:128px;left:50%;width:min(92vw,330px);transform:translateX(-50%)}.direct-nav .turns-menu button{min-height:44px}.calendar-weekdays,.holiday-calendar{min-width:650px}.holiday-card{overflow-x:auto}}
@media(max-width:650px){.week-navigator{align-items:center}.week-navigator .week-range{max-width:235px;font-size:12px}.holiday-controls{grid-template-columns:1fr}.calendar-empty,.calendar-day{min-height:70px}.calendar-weekdays,.holiday-calendar{min-width:600px}}
