/* THRS V14.43 — Holidays approved navy/gold reference | isolated workspace */
html[data-theme="light"] .work-schedules-pro .ws-holidays-premium {
  --h43-bg:#fff;--h43-soft:#f6f9fd;--h43-ghost:#eef3fa;--h43-border:#d9e4f1;--h43-text:#0c2b48;
  --h43-muted:#627b97;--h43-gold:#e0a236;--h43-shadow:0 5px 16px rgba(12,42,72,.045),0 20px 36px rgba(12,42,72,.08);
}
html[data-theme="dark"] .work-schedules-pro .ws-holidays-premium {
  --h43-bg:#153550;--h43-soft:#1b3d58;--h43-ghost:#244a63;--h43-border:#3b5d79;--h43-text:#f2f7fd;
  --h43-muted:#bdd0e1;--h43-gold:#efbf6b;--h43-shadow:0 6px 18px rgba(0,9,27,.24),0 25px 42px rgba(0,9,27,.24);
}
html[data-theme] .work-schedules-pro .ws-holidays-premium{
  display:flex;flex-direction:column;gap:16px;min-width:0;width:100%;
  color:var(--h43-text);font-size:13px;font-feature-settings:"tnum" 1;
}
html[data-theme] .work-schedules-pro .ws-holidays-filterbar{
  display:grid;grid-template-columns:minmax(220px,1.65fr) minmax(118px,.69fr) minmax(155px,.9fr) auto;
  align-items:center;gap:0;
  min-height:79px;padding:11px 13px;border-radius:17px;
  background:linear-gradient(125deg,var(--h43-bg),var(--h43-soft));
  border:1px solid var(--h43-border);box-shadow:var(--h43-shadow);
}
html[data-theme] .work-schedules-pro .ws-holidays-filter{
  display:flex;align-items:center;gap:11px;min-width:0;padding:3px 13px;
  border-inline-end:1px solid var(--h43-border);
}
html[data-theme] .work-schedules-pro .ws-holidays-filter>span:last-child{
  display:flex;flex-direction:column;gap:5px;min-width:0;flex:1;
}
html[data-theme] .work-schedules-pro .ws-holidays-filter strong{
  font-size:11px;font-weight:850;line-height:1.25;color:var(--h43-text);
}
html[data-theme] .work-schedules-pro .ws-holidays-filter input,
html[data-theme] .work-schedules-pro .ws-holidays-filter select{
  min-width:0;width:100%;height:37px;border-radius:11px;
  border:1px solid color-mix(in srgb,var(--h43-border) 80%,#adc2d8);
  background:var(--h43-bg);color:var(--h43-text);
  padding:7px 10px;font-size:12px;font-weight:720;
  box-shadow:0 2px 7px rgba(16,45,74,.06);
}
html[data-theme] .work-schedules-pro .ws-holidays-filter :is(select,input):focus-visible,
html[data-theme] .work-schedules-pro .ws-holidays-premium button:focus-visible{
  outline:2px solid var(--h43-gold);outline-offset:2px;
}
html[data-theme] .work-schedules-pro .ws-holidays-filter input::placeholder{color:var(--h43-muted);}
html[data-theme] .work-schedules-pro .ws-holidays-filter-icon{
  flex:0 0 40px;width:40px;height:40px;
  border-radius:13px;display:grid;place-items:center;
  color:#d9941d;background:linear-gradient(145deg,#fffefc,#fff2df);
  box-shadow:0 4px 11px rgba(119,76,18,.1);
}
html[data-theme] .work-schedules-pro .ws-holidays-actions{display:flex;align-items:center;gap:9px;padding-inline-start:13px;}
html[data-theme] .work-schedules-pro .ws-holidays-actions button{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;
  border-radius:11px;padding:9px 15px;white-space:nowrap;
  font-family:inherit;font-size:12px;font-weight:850;cursor:pointer;
  transition:transform .16s,box-shadow .16s;
}
html[data-theme] .work-schedules-pro .ws-holidays-actions button:hover{transform:translateY(-1px);}
html[data-theme] .work-schedules-pro .ws-holiday-export{
  border:1px solid var(--h43-border);background:var(--h43-bg);color:var(--h43-text);
  box-shadow:0 3px 10px rgba(21,50,79,.08);
}
html[data-theme] .work-schedules-pro .ws-holiday-add{
  border:1px solid #da9d33;background:linear-gradient(145deg,#ffe3a7,#e7aa3d);
  color:#0a2f4d;box-shadow:0 6px 13px rgba(191,131,40,.21);
}
html[data-theme] .work-schedules-pro .ws-holidays-summary{
  position:relative;isolation:isolate;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1.1fr) minmax(440px,1.25fr);
  align-items:center;gap:18px;min-height:116px;padding:17px 21px;
  border-radius:19px;border:1px solid rgba(242,197,130,.53);
  color:#fff;
  background:radial-gradient(ellipse at 83% -70%,rgba(219,161,73,.18),transparent 56%),linear-gradient(115deg,#061c32,#103b56 48%,#061d34);
  box-shadow:0 11px 25px rgba(7,35,60,.20),inset 0 1px 0 rgba(255,255,255,.11);
}
html[data-theme] .work-schedules-pro .ws-holidays-summary::after{
  content:"";pointer-events:none;z-index:-1;position:absolute;
  inset-inline-end:0;bottom:-140px;width:560px;height:240px;
  border-radius:50%;opacity:.49;transform:rotate(-11deg);
  background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 12px,rgba(230,164,61,.29) 13px 14px,transparent 15px 22px);
}
html[data-theme] .work-schedules-pro .ws-holidays-summary-title{
  display:flex;align-items:center;gap:16px;min-width:0;
}
html[data-theme] .work-schedules-pro .ws-holidays-umbrella{
  display:grid;place-items:center;width:68px;height:68px;flex:0 0 68px;
  border-radius:50%;border:2px solid #e7aa3b;
  color:#ffd16f;background:linear-gradient(135deg,#103f5c,#07263f);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 4px 11px rgba(0,10,25,.29);
}
html[data-theme] .work-schedules-pro .ws-holidays-summary-title>span:last-child{display:flex;flex-direction:column;gap:7px;min-width:0;}
html[data-theme] .work-schedules-pro .ws-holidays-summary-title strong{
  font-size:24px;font-weight:940;line-height:1.22;letter-spacing:-.03em;
}
html[data-theme] .work-schedules-pro .ws-holidays-summary-title small{font-size:11.8px;font-weight:690;color:#e0ecf4;line-height:1.35;}
html[data-theme] .work-schedules-pro .ws-holidays-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;}
html[data-theme] .work-schedules-pro .ws-holidays-stat{
  min-width:0;min-height:80px;
  display:grid;grid-template-columns:27px minmax(0,1fr);grid-template-rows:37px auto;
  align-items:center;gap:0 5px;padding:12px 10px;
  background:linear-gradient(142deg,rgba(23,77,109,.71),rgba(10,43,72,.86));
  border:1px solid rgba(232,184,110,.54);border-radius:13px;
  box-shadow:0 4px 12px rgba(1,19,38,.21),inset 0 1px 0 rgba(255,255,255,.08);
}
html[data-theme] .work-schedules-pro .ws-holidays-stat svg{color:#ffc55b;width:20px;height:20px;}
html[data-theme] .work-schedules-pro .ws-holidays-stat strong{
  font-size:25px;font-weight:940;color:#fff;line-height:1;white-space:nowrap;
}
html[data-theme] .work-schedules-pro .ws-holidays-stat span{
  grid-column:1/-1;align-self:end;font-size:10.4px;font-weight:740;color:#edf4ff;
  line-height:1.3;overflow-wrap:anywhere;
}
html[data-theme] .work-schedules-pro .ws-holidays-table-outer{
  border-radius:18px;background:linear-gradient(145deg,var(--h43-bg),var(--h43-soft));
  border:1px solid var(--h43-border);box-shadow:var(--h43-shadow);
  padding:12px;min-width:0;
}
html[data-theme] .work-schedules-pro .ws-holidays-table-wrap{overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--h43-gold) transparent;}
html[data-theme] .work-schedules-pro .ws-holidays-table{
  width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;
  font-size:12px;color:var(--h43-text);min-width:720px;
}
html[data-theme] .work-schedules-pro .ws-holidays-table th{
  height:43px;padding:10px 11px;font-size:11.6px;font-weight:890;color:var(--h43-text);
  background:var(--h43-ghost);text-align:start;white-space:nowrap;
  border-bottom:1px solid var(--h43-border);
}
html[data-theme] .work-schedules-pro .ws-holidays-table th:first-child{border-radius:10px 0 0 0;}
html[data-theme] .work-schedules-pro .ws-holidays-table th:last-child{border-radius:0 10px 0 0;}
html[data-theme] .work-schedules-pro .ws-holidays-table :is(th,td):first-child{width:54px;text-align:center;}
html[data-theme] .work-schedules-pro .ws-holidays-table :is(th,td):nth-child(2){width:39%;}
html[data-theme] .work-schedules-pro .ws-holidays-table :is(th,td):nth-child(3){width:22%;}
html[data-theme] .work-schedules-pro .ws-holidays-table :is(th,td):nth-child(4){width:20%;}
html[data-theme] .work-schedules-pro .ws-holidays-table :is(th,td):nth-child(5){width:103px;text-align:center;}
html[data-theme] .work-schedules-pro .ws-holidays-table td{
  padding:6px 9px;min-width:0;height:54px;
  background:var(--h43-bg);border-bottom:1px solid var(--h43-border);
}
html[data-theme] .work-schedules-pro .ws-holidays-table tbody tr:hover td{
  background:color-mix(in srgb,var(--h43-gold) 3%,var(--h43-bg));
}
html[data-theme] .work-schedules-pro .ws-holiday-number{
  display:grid;place-items:center;width:33px;height:32px;margin:0 auto;
  border-radius:10px;background:linear-gradient(135deg,#fff6e5,#f6d8a6);
  border:1px solid #efddb9;box-shadow:0 3px 8px rgba(116,75,31,.11);
  color:#7e501b;font-size:11.8px;font-weight:930;
}
html[data-theme] .work-schedules-pro .ws-holiday-name-wrap{
  display:flex;align-items:center;gap:12px;min-width:0;
}
html[data-theme] .work-schedules-pro .ws-holiday-row-icon{
  width:40px;height:40px;flex:0 0 40px;
  border-radius:11px;display:grid;place-items:center;
  border:1px solid #eee1cd;background:linear-gradient(135deg,#fffdf8,#fff1dd);
  color:#db961b;box-shadow:0 3px 9px rgba(102,66,25,.09);
}
html[data-theme] .work-schedules-pro .ws-holiday-name-text{display:flex;flex-direction:column;min-width:0;gap:3px;}
html[data-theme] .work-schedules-pro .ws-holiday-name-text strong{
  font-size:12px;font-weight:910;color:var(--h43-text);line-height:1.35;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
html[data-theme] .work-schedules-pro .ws-holiday-name-text small{
  font-size:10.6px;color:var(--h43-muted);font-weight:660;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
html[data-theme] .work-schedules-pro .ws-holiday-date{
  display:inline-flex;max-width:100%;align-items:center;gap:6px;min-height:30px;
  padding:5px 9px;border-radius:999px;border:1px solid var(--h43-border);
  color:var(--h43-text);background:var(--h43-soft);
  box-shadow:0 2px 6px rgba(9,38,64,.07);font-size:11px;font-weight:900;white-space:nowrap;direction:ltr;
}
html[data-theme] .work-schedules-pro .ws-holiday-date svg{color:#dc9618;flex:0 0 15px;}
html[data-theme] .work-schedules-pro .ws-holiday-date small{font-size:9.5px;color:var(--h43-muted);}
html[data-theme] .work-schedules-pro .ws-holiday-type{
  display:inline-flex;gap:7px;align-items:center;max-width:100%;
  min-height:28px;padding:5px 10px;border:1px solid;border-radius:999px;
  box-shadow:0 2px 8px rgba(10,38,66,.07);
  white-space:nowrap;font-size:10.8px;font-weight:850;
}
html[data-theme] .work-schedules-pro .ws-holiday-type svg{flex:0 0 14px;}
html[data-theme] .work-schedules-pro .ws-holiday-type-public{background:#f0e8ff;color:#50358c;border-color:#dbc8fb;}
html[data-theme] .work-schedules-pro .ws-holiday-type-religious{background:#dff7e9;color:#176345;border-color:#9de9b6;}
html[data-theme] .work-schedules-pro .ws-holiday-type-company{background:#e4eefb;color:#215c83;border-color:#bbd9f0;}
html[data-theme="dark"] .work-schedules-pro .ws-holiday-type{background:var(--h43-ghost);border-color:var(--h43-border);color:var(--h43-text);}
html[data-theme] .work-schedules-pro .ws-holiday-row-actions{display:flex;align-items:center;justify-content:center;gap:8px;}
html[data-theme] .work-schedules-pro .ws-holiday-row-actions button{
  width:32px;height:32px;display:grid;place-items:center;cursor:pointer;
  border-radius:10px;background:var(--h43-soft);border:1px solid var(--h43-border);
  color:var(--h43-text);box-shadow:0 3px 8px rgba(9,38,65,.08);
}
html[data-theme] .work-schedules-pro .ws-holiday-row-actions button:hover{border-color:var(--h43-gold);background:var(--h43-bg);}
html[data-theme] .work-schedules-pro .ws-holiday-row-actions .ws-holiday-delete{color:#c53630;}
html[data-theme] .work-schedules-pro .ws-holidays-empty{padding:42px 18px;text-align:center;color:var(--h43-muted);font-weight:730;}
html[data-theme] .work-schedules-pro .ws-holidays-pagination{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;
  margin-top:12px;min-height:52px;padding:9px 15px;border-radius:12px;
  background:var(--h43-soft);border:1px solid var(--h43-border);
}
html[data-theme] .work-schedules-pro .ws-holidays-pagination>span{font-size:11.7px;font-weight:820;color:var(--h43-text);}
html[data-theme] .work-schedules-pro .ws-holidays-page-buttons{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
html[data-theme] .work-schedules-pro .ws-holidays-page-buttons button{
  min-width:33px;height:33px;padding:4px 7px;display:grid;place-items:center;cursor:pointer;
  border-radius:9px;background:var(--h43-bg);border:1px solid var(--h43-border);
  color:var(--h43-text);font-size:11px;font-weight:880;box-shadow:0 2px 8px rgba(11,41,69,.07);
}
html[data-theme] .work-schedules-pro .ws-holidays-page-buttons button.is-current{
  border:1px solid #f0ae34;background:linear-gradient(135deg,#163d5d,#071f36);color:#fff;
  box-shadow:0 4px 9px rgba(12,43,72,.17),0 0 0 2px rgba(230,169,67,.16);
}
html[data-theme] .work-schedules-pro .ws-holidays-page-buttons button:disabled{opacity:.44;cursor:default;}
.ws-holiday-form,.ws-holiday-confirm{display:flex;flex-direction:column;gap:14px;}
.ws-holiday-form>label{display:flex;flex-direction:column;gap:7px;color:var(--text-primary);font-size:12px;font-weight:790;}
.ws-holiday-form .ws-field{min-height:42px;border-radius:10px;width:100%;}
.ws-holiday-form textarea.ws-field{min-height:82px;resize:vertical;}
.ws-holiday-form .ws-holiday-active{flex-direction:row;align-items:center;gap:9px;}
.ws-holiday-form-hint{font-size:11px;color:var(--text-secondary);line-height:1.55;}
.ws-holiday-form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:11px;border-top:1px solid var(--border-color);}
.ws-holiday-form-actions button{min-height:38px;padding:8px 13px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);font-size:12px;font-weight:830;display:flex;align-items:center;gap:7px;cursor:pointer;}
.ws-holiday-form-actions button[type="submit"]{background:linear-gradient(135deg,#f7d994,#da9b35);color:#082943;border-color:#dba044;}
.ws-holiday-form-actions .ws-holiday-danger{color:#fff;background:#b6262f;border-color:#a21c25;}
.ws-holiday-form-actions button:disabled{opacity:.52;cursor:default;}
@media(max-width:1230px){
 html[data-theme] .work-schedules-pro .ws-holidays-filterbar{grid-template-columns:minmax(170px,1fr) minmax(112px,.65fr) minmax(135px,.72fr);gap:9px;}
 html[data-theme] .work-schedules-pro .ws-holidays-actions{grid-column:1/-1;justify-content:flex-end;padding:3px 9px 0;}
 html[data-theme] .work-schedules-pro .ws-holidays-summary{grid-template-columns:1fr;gap:15px;}
}
@media(max-width:800px){
 html[data-theme] .work-schedules-pro .ws-holidays-filterbar{grid-template-columns:minmax(0,1fr) minmax(125px,.6fr);gap:6px;}
 html[data-theme] .work-schedules-pro .ws-holidays-filter:nth-child(3){grid-column:1/-1;border-inline-end:0;}
 html[data-theme] .work-schedules-pro .ws-holidays-filter:nth-child(2){border-inline-end:0;}
 html[data-theme] .work-schedules-pro .ws-holidays-table{min-width:700px;}
}
@media(max-width:550px){
 html[data-theme] .work-schedules-pro .ws-holidays-filterbar{grid-template-columns:1fr;padding:10px;}
 html[data-theme] .work-schedules-pro .ws-holidays-filter{border-inline-end:0;padding:6px;}
 html[data-theme] .work-schedules-pro .ws-holidays-actions{grid-column:auto;justify-content:stretch;padding:4px 6px;}
 html[data-theme] .work-schedules-pro .ws-holidays-actions button{flex:1;padding:8px;}
 html[data-theme] .work-schedules-pro .ws-holidays-summary{padding:15px;}
 html[data-theme] .work-schedules-pro .ws-holidays-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
 html[data-theme] .work-schedules-pro .ws-holidays-summary-title strong{font-size:19px;}
 html[data-theme] .work-schedules-pro .ws-holidays-umbrella{width:50px;height:50px;flex-basis:50px;}
 html[data-theme] .work-schedules-pro .ws-holidays-table-outer{padding:7px;}
 html[data-theme] .work-schedules-pro .ws-holidays-pagination{padding:10px;}
}
@media(prefers-reduced-motion:reduce){
 html[data-theme] .work-schedules-pro .ws-holidays-premium *{transition:none!important;animation:none!important;}
}
