
.pa-webster-page{background:#f6f8fb;min-height:100vh;padding:34px 18px 70px;color:#16323a}
.pa-webster-shell{max-width:1380px;margin:0 auto}
.pa-webster-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:20px}
.pa-webster-eyebrow,.pa-calendar-overline{margin:0 0 6px;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:800;color:#5f7e86}
.pa-webster-hero h1{font-size:clamp(32px,4vw,52px);line-height:1.05;margin:0 0 10px;color:#123f4a}
.pa-webster-subtitle{max-width:760px;margin:0;color:#587078;font-size:17px;line-height:1.6}
.pa-webster-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.pa-btn{appearance:none;border:0;border-radius:12px;padding:12px 16px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.pa-btn:hover{transform:translateY(-1px)}
.pa-btn-primary{background:#0f6677;color:white;box-shadow:0 7px 18px rgba(15,102,119,.18)}
.pa-btn-secondary{background:white;color:#184d58;border:1px solid #d6e1e5}
.pa-webster-alert{background:#fff8dc;border:1px solid #ead99c;border-radius:14px;padding:14px 16px;margin-bottom:18px;color:#665514}
.pa-webster-control-card,.pa-webster-calendar-card,.pa-side-card,.pa-webster-data-card,.pa-kpi{background:white;border:1px solid #e2e9ec;box-shadow:0 8px 26px rgba(29,62,71,.05)}
.pa-webster-control-card{border-radius:18px;padding:16px;margin-bottom:16px}
.pa-webster-controls{display:grid;grid-template-columns:1.1fr 1.5fr 1.1fr auto;gap:14px;align-items:end}
.pa-field label{display:block;font-size:12px;font-weight:800;color:#60747a;margin-bottom:7px}
.pa-field input,.pa-field select{width:100%;height:46px;border:1px solid #d6e1e5;border-radius:11px;padding:0 12px;background:#fff;color:#16323a;font:inherit}
.pa-field input:focus,.pa-field select:focus{outline:3px solid rgba(15,102,119,.12);border-color:#6ba9b5}
.pa-webster-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}
.pa-kpi{border-radius:16px;padding:18px}
.pa-kpi-label{display:block;color:#6a7f85;font-size:12px;font-weight:800;margin-bottom:8px}
.pa-kpi strong{font-size:28px;color:#123f4a}
.pa-webster-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:16px;align-items:start}
.pa-webster-calendar-card{border-radius:20px;padding:20px}
.pa-calendar-toolbar,.pa-data-card-heading,.pa-side-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}
.pa-calendar-toolbar h2,.pa-webster-data-card h2,.pa-side-card h3{margin:0;color:#123f4a}
.pa-calendar-nav{display:flex;gap:8px}
.pa-icon-btn{width:42px;height:42px;border-radius:11px;border:1px solid #d9e4e7;background:white;font-size:28px;line-height:1;color:#184d58;cursor:pointer}
.pa-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:18px}
.pa-calendar-weekdays span{text-align:center;padding:7px 3px;font-size:12px;font-weight:800;color:#75888e}
.pa-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.pa-day{position:relative;min-height:112px;border:1px solid #e3eaed;border-radius:13px;background:#fff;padding:9px;cursor:pointer;text-align:left;color:#173f49;overflow:hidden}
.pa-day:hover{border-color:#93bcc5;box-shadow:0 4px 12px rgba(20,73,85,.06)}
.pa-day.is-outside{background:#f9fbfc;color:#9ba9ad}
.pa-day.is-selected{outline:3px solid rgba(15,102,119,.16);border-color:#0f6677}
.pa-day.is-today .pa-day-number{background:#123f4a;color:#fff}
.pa-day-number{display:inline-flex;width:28px;height:28px;border-radius:9px;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.pa-day-count{display:inline-flex;margin-top:9px;border-radius:999px;padding:5px 8px;background:#e8f4f6;color:#0f6677;font-size:11px;font-weight:800}
.pa-day-names{margin-top:7px;display:grid;gap:4px}
.pa-day-name{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#587078}
.pa-calendar-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;color:#687d83;font-size:12px}
.pa-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}
.pa-dot-pack{background:#58a3b1}.pa-dot-selected{background:#0f6677}.pa-dot-today{background:#123f4a}
.pa-webster-side{display:grid;gap:16px}
.pa-side-card{border-radius:18px;padding:18px}
.pa-selected-list,.pa-upcoming-list{display:grid;gap:10px;margin-top:14px}
.pa-item{border:1px solid #e0e8eb;border-radius:12px;padding:12px}
.pa-item strong{display:block;color:#123f4a;margin-bottom:4px}
.pa-item small{color:#70848a}
.pa-empty-state{padding:16px;border:1px dashed #d6e0e4;border-radius:12px;color:#7c8d92;text-align:center}
.pa-webster-data-card{margin-top:16px;border-radius:20px;padding:20px}
.pa-data-card-heading p{margin:.35rem 0 0;color:#70848a}
.pa-table-wrap{overflow:auto;margin-top:16px}
.pa-webster-table{width:100%;border-collapse:collapse;min-width:760px}
.pa-webster-table th,.pa-webster-table td{padding:13px 12px;border-bottom:1px solid #e7edef;text-align:left;vertical-align:middle}
.pa-webster-table th{font-size:12px;color:#677c82;background:#f8fafb}
.pa-webster-table td{font-size:14px}
.pa-webster-table input,.pa-webster-table select{width:100%;border:1px solid #d9e3e6;border-radius:9px;padding:8px 9px;font:inherit}
.pa-remove-row{border:0;background:#fff1f1;color:#9d2d2d;border-radius:9px;padding:8px 10px;cursor:pointer;font-weight:800}
.pa-empty-row td{text-align:center;color:#84959a;padding:24px}
@media(max-width:980px){
  .pa-webster-controls{grid-template-columns:1fr 1fr}
  .pa-webster-kpis{grid-template-columns:1fr 1fr}
  .pa-webster-layout{grid-template-columns:1fr}
}
@media(max-width:680px){
  .pa-webster-page{padding:22px 10px 52px}
  .pa-webster-hero{flex-direction:column}
  .pa-webster-hero-actions{justify-content:flex-start}
  .pa-webster-controls{grid-template-columns:1fr}
  .pa-webster-kpis{grid-template-columns:1fr 1fr}
  .pa-day{min-height:78px;padding:6px}
  .pa-day-names{display:none}
  .pa-calendar-weekdays span{font-size:10px}
}
@media print{
  .pa-webster-hero-actions,.pa-webster-control-card,.pa-webster-data-card,.pa-webster-alert,.pa-calendar-nav{display:none!important}
  .pa-webster-page{background:white;padding:0}
  .pa-webster-calendar-card,.pa-side-card,.pa-kpi{box-shadow:none}
}
