/* Digiplan: shared visual identity for the existing application. */
:root{--brand:#2457e6;--brand-hover:#1d46b8;--brand-soft:#edf2ff;--green:var(--brand);--muted:#596579;--line:#dce2ec;--ink:#172033;--surface:#fff;--canvas:#f6f8fc;--available:#176b4a;--available-bg:#eaf7f0;--unavailable:#ae3434;--unavailable-bg:#fdeeee;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--canvas);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
body{background:var(--canvas)}button,input,select,textarea{border-radius:12px}button{min-height:44px;font-weight:600;transition:background .18s,border-color .18s,box-shadow .18s;color:var(--ink)}button:hover{background:#f0f4fc;border-color:#b8c5df}button.primary{background:var(--brand);border-color:var(--brand);box-shadow:0 2px 4px #2457e612}button.primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}button:disabled{cursor:not-allowed;box-shadow:none}input,select,textarea{border-color:#a5b1c4;min-height:48px;padding:12px 14px}input:hover,select:hover,textarea:hover{border-color:#7889a4}input:focus,select:focus,textarea:focus{border-color:var(--brand)}input[type=checkbox]{accent-color:var(--brand)}label{font-size:.9375rem;line-height:1.5}h1{font-weight:650;letter-spacing:-.035em;line-height:1.2;font-size:2.125rem}h2{font-size:1.375rem;letter-spacing:-.025em;font-weight:600;line-height:1.3}h3{font-size:1rem;line-height:1.4}small{font-size:.875rem;line-height:1.5}a{color:var(--brand);text-underline-offset:3px}:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.shell{grid-template-columns:264px minmax(0,1fr)}aside{padding:32px 22px;background:#fff;border-right:1px solid var(--line)}.brand{gap:12px;align-items:center}.brand .brand-name{font-size:1.35rem;letter-spacing:-.04em;font-weight:650;line-height:1.15}.brand small{color:var(--muted);font-size:.8125rem;margin-top:6px;letter-spacing:0}.logo{background:transparent!important;width:42px;height:42px;border-radius:0;flex-shrink:0}.logo img{display:block;width:42px;height:42px}.nav{gap:7px;margin-top:36px}.nav button{display:flex;align-items:center;padding:12px 14px;border-radius:12px;min-height:48px;gap:12px;font-size:.9375rem;color:var(--muted)}.nav .icon{display:inline-flex;align-items:center;margin:0;flex-shrink:0;width:20px;height:20px}.nav .icon svg{width:20px;height:20px}.nav button:hover{background:#f6f8fc;color:var(--ink)}.nav button.active{background:var(--brand-soft);color:var(--brand);font-weight:600;box-shadow:inset 3px 0 var(--brand)}.view-mode{background:var(--canvas);padding:14px;margin-top:28px;border-radius:14px}.view-mode-label{font-size:.875rem}.view-switch{min-height:28px;background:#9ba8bd}.view-switch:hover{background:#8292ad}.view-switch[aria-checked=true],.view-switch[aria-checked=true]:hover{background:var(--brand)}.account{padding-top:20px}.account .person-chip strong{font-size:.9375rem}.account button{background:var(--canvas);border-color:var(--line);font-size:.875rem}.account button:hover{background:var(--brand-soft)}main{padding:44px 48px;margin:0 auto}.topline{margin-bottom:32px;align-items:center}.topline .muted{max-width:680px}.eyebrow{font-size:.8125rem;letter-spacing:.09em;color:var(--brand);margin-bottom:10px}.notice{background:var(--brand-soft);border-color:#d5dffd;color:#334f87;border-radius:14px;font-size:.9375rem}.grid{gap:20px;margin-bottom:28px}.stat,.card{border:1px solid #e2e7f0;border-radius:20px;box-shadow:0 4px 24px #17203304;padding:26px}.stat .label{font-size:.9375rem;color:var(--muted)}.stat .number{font-size:2.5rem;letter-spacing:-.055em;line-height:1.2;margin:18px 0 10px;font-weight:650;font-variant-numeric:tabular-nums}.stat .number small{letter-spacing:0}.two{gap:24px;margin-bottom:28px}.row{padding:18px 0;border-color:#e8edf5}.row small{margin-top:5px}.empty{padding:44px 24px;font-size:1rem}.empty .empty-icon{color:#899ab9}.badge{font-size:.875rem;border-radius:8px;padding:5px 10px;background:var(--available-bg);color:var(--available);line-height:1.5}.badge.no{background:var(--unavailable-bg);color:var(--unavailable)}.badge.neutral{background:#edf0f6;color:#566378}.badge.pending{background:#fff5dd;color:#885500}.filters{padding:20px;background:#eef2f9;border:1px solid #e0e6f1;border-radius:16px;gap:18px;margin-bottom:28px}.field{margin-bottom:20px}.form{max-width:800px}.split{gap:20px}.weekdays label{background:white;border-radius:12px;min-height:44px}.weekdays label:has(input:checked){color:var(--brand);background:var(--brand-soft);border-color:#b4c7fc}.barcol{font-size:.875rem}.barcol strong{color:var(--brand)}.bar{background:var(--brand);opacity:.8;border-radius:8px 8px 0 0}.progress{height:8px;background:#edf1f8}.progress i{background:#6d91ee}th{font-size:.875rem;background:var(--canvas);padding:14px 16px;color:var(--muted)}td{font-size:.9375rem;padding:18px 16px;border-color:#e8edf5}tbody tr:hover{background:#fafbfe}.calendar{gap:12px}.day{padding:16px;border-radius:16px;border-color:var(--line);min-height:170px}.day.today{border:2px solid var(--brand);padding:15px;background:#f7f9ff}.day h3{font-size:.9375rem;flex-wrap:wrap;gap:4px}.day button{background:var(--available-bg);color:var(--available);font-size:.875rem;padding:10px;white-space:normal;overflow-wrap:anywhere}.day button:hover{background:#d8efdf}.day .unavailable{background:var(--unavailable-bg);color:var(--unavailable)}.day .unavailable:hover{background:#f8dddd}.avatar{background:var(--brand-soft);color:#3155a6}.photo-card{border-radius:16px}.period-choice,.notification-choice{background:var(--canvas);border-radius:14px}.password-toggle{min-height:40px;border-radius:8px}.password-toggle:hover{background:var(--brand-soft)}.clock{background:var(--canvas)}.clock button{min-height:40px}.clock button.selected{background:var(--brand)}.time-display,.clock-center{font-variant-numeric:tabular-nums}.error{background:var(--unavailable-bg);color:var(--unavailable);border-color:#e9b5b5;border-radius:12px}.photo-card #photo-error,button.danger{color:var(--unavailable)}button.danger:hover{background:var(--unavailable-bg);border-color:#e9b5b5}#toast{background:var(--ink);border-radius:14px;font-size:.9375rem;box-shadow:0 10px 32px #17203326}dialog{border-radius:24px;padding:28px;max-height:calc(100dvh - 40px);overflow:auto;background:white;box-shadow:0 24px 80px #17203326}dialog::backdrop{background:#17203355;backdrop-filter:blur(4px)}.loading{color:var(--muted)}
.auth-wrap{background:radial-gradient(ellipse at 50% 15%,#eaf0ff 0,transparent 60%),var(--canvas);padding:40px 24px}.auth-main{max-width:460px;padding:40px;border-color:#e2e7f0;border-radius:24px;box-shadow:0 16px 60px #17203308}.auth-identity{margin-bottom:32px}.auth-identity .digiplan-auth-logo{width:210px;margin:0 auto 24px}.auth-tenant{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:20px;border-top:1px solid var(--line);margin-top:20px}.auth-identity .auth-tenant img{width:80px;max-width:80px;margin:0;height:auto}.auth-store{margin:0;font-size:.875rem;font-weight:500;color:var(--muted)}.auth-identity>small{font-size:.875rem}.auth-form h1{font-size:1.75rem;letter-spacing:-.03em}.auth-form>p.muted{font-size:1rem;margin-bottom:26px}.auth-form .primary{min-height:48px;margin-top:8px}.auth-form #auth-switch{font-size:.875rem;min-height:44px;color:var(--brand)}.auth-form #auth-switch:hover{background:var(--brand-soft)}.department-grip{min-height:44px}.department-step{min-width:44px}.date-label .badge{margin-left:6px}
@media(min-width:1600px){main{padding:48px 56px}.shell{grid-template-columns:280px minmax(0,1fr)}}
@media(max-width:1100px){.shell{grid-template-columns:224px minmax(0,1fr)}aside{padding:26px 16px}main{padding:32px 24px}.calendar{gap:8px}.day{padding:10px}.day.today{padding:9px}.stat,.card{padding:22px}}
@media(max-width:700px){.shell{display:block}aside{height:auto;position:relative;padding:20px 18px;border-right:0;background:white}.brand .brand-name{font-size:1.25rem}.brand small{font-size:.8125rem}.nav{margin-top:20px;gap:6px;padding-bottom:6px;flex-direction:row}.nav button{padding:10px 14px;min-height:44px;flex-shrink:0;font-size:.875rem}.nav .icon{display:none}.nav button.active{box-shadow:inset 0 -3px var(--brand)}.account{padding-top:14px;margin-top:8px;gap:12px}.account button{min-height:44px}.view-mode{margin-top:20px;padding:12px}.view-mode+.nav{margin-top:18px}main{padding:28px 18px}.topline{align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:24px}h1{font-size:1.75rem}h2{font-size:1.25rem}.topline .primary{font-size:.875rem;min-height:44px}.grid{gap:12px}.stat,.card{padding:20px;border-radius:18px}.stat .number{font-size:2rem}.stat .label{font-size:.875rem}.filters{padding:16px;gap:14px}.split{gap:0}.calendar{display:block}.day{padding:16px;min-height:0}.day.today{padding:15px}.day button{font-size:.875rem}.auth-wrap{padding:28px 16px;min-height:100dvh}.auth-main{padding:32px 24px;border-radius:22px}.auth-identity{margin-bottom:28px}.auth-identity .digiplan-auth-logo{width:190px}.auth-form h1{font-size:1.625rem}.row{flex-wrap:wrap;gap:12px}.person-chip{max-width:100%}.person-chip>div{min-width:0;overflow-wrap:anywhere}.badge{white-space:normal}.table-wrap tbody tr{background:white;border-color:var(--line);border-radius:14px;padding:16px}.table-wrap td{padding:8px 0}.table-wrap td:before{font-size:.875rem}.bars{gap:8px}.barcol{font-size:.875rem}.date-label .badge{margin:5px 0 0}.account .person-chip{max-width:calc(100% - 88px)}dialog{padding:24px}.auth-store{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.theme-control{margin-top:20px}.theme-control label{font-size:.875rem;color:var(--muted);margin-bottom:6px}.theme-control select{min-height:44px;font-size:.875rem;background:var(--canvas)}.auth-main>.theme-control{border-top:1px solid var(--line);padding-top:20px}.auth-main>.theme-control label{text-align:center}.sync-strip{display:flex;gap:16px;align-items:center;justify-content:space-between;color:var(--muted);font-size:.875rem;margin-bottom:24px;min-height:30px}.sync-strip[data-state=offline],.sync-strip[data-state=error]{padding:12px 16px;background:#fff5dd;color:#885500;border:1px solid #e6ce9a;border-radius:12px}.sync-strip button{font-size:.875rem;min-height:44px}.period-card{display:flex;gap:24px;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:24px}.period-card h3{margin-top:10px}.period-card p{margin:8px 0 0;color:var(--muted)}.period-card button{flex-shrink:0}.request-item+.request-item{margin-top:24px;padding-top:12px;border-top:1px solid var(--line)}details summary{cursor:pointer;padding:12px 0;font-size:.9375rem}.missing-people{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}#deadline-error{color:var(--unavailable);margin-bottom:16px}.matrix-toolbar{margin-bottom:20px;align-items:flex-end}.matrix-toolbar>div{min-width:160px}.matrix-toolbar label{font-size:.875rem}.matrix-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--surface);max-height:70vh}.week-matrix{width:100%;min-width:1140px;border-collapse:separate;border-spacing:0}.week-matrix th{position:sticky;top:0;z-index:2;min-width:128px;border-bottom:1px solid var(--line);background:var(--canvas);text-align:center}.week-matrix th span{display:block;margin-top:4px;font-weight:400}.week-matrix th:first-child{left:0;z-index:3;text-align:left;min-width:220px;width:240px}.week-matrix tbody th{position:sticky;left:0;top:auto;z-index:1;background:var(--surface);text-align:left;font-weight:400;border-right:1px solid var(--line);padding:16px}.week-matrix tbody th strong{color:var(--ink);font-size:.9375rem}.week-matrix td{padding:8px;vertical-align:top;border-bottom:1px solid var(--line)}.week-matrix .current-day{background:var(--brand-soft)}.matrix-cell{display:block;width:100%;min-height:76px;padding:12px 10px;text-align:left;border:1px solid transparent;border-radius:12px}.matrix-cell strong{display:block;font-size:.875rem;font-weight:600}.matrix-cell span{display:block;font-size:.875rem;margin-top:6px;font-weight:400}.matrix-cell.available{background:var(--available-bg);color:var(--available)}.matrix-cell.unavailable{background:var(--unavailable-bg);color:var(--unavailable)}.matrix-cell.missing{background:var(--canvas);color:var(--muted);border-color:var(--line)}.matrix-cell.mixed{background:#fff5dd;color:#885500}.matrix-cell:hover{border-color:currentColor;box-shadow:0 2px 8px #17203312}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.week-matrix .person-chip>div{min-width:0}.week-matrix .person-chip strong{display:block;overflow-wrap:anywhere;line-height:1.45}.week-matrix .person-chip small{display:block;margin-top:5px;font-size:.875rem;line-height:1.45}.week-matrix .person-chip .avatar{display:inline-flex;align-items:center;justify-content:center;margin-top:0;font-weight:600;line-height:1}
/* Dark mode uses quiet navy surfaces, readable accents and restrained contrast. */
:root[data-theme=dark]{color-scheme:dark;--brand:#91b1ff;--brand-hover:#b1c7ff;--brand-soft:#223553;--green:var(--brand);--muted:#b3bfd1;--line:#34435a;--ink:#e7edf7;--surface:#192333;--canvas:#101823;--available:#8dd8b2;--available-bg:#1b3a30;--unavailable:#ffb1b1;--unavailable-bg:#43272e;background:var(--canvas);color:var(--ink)}
[data-theme=dark] body,[data-theme=dark] .shell{background:var(--canvas);color:var(--ink)}[data-theme=dark] aside,[data-theme=dark] .card,[data-theme=dark] .stat,[data-theme=dark] .day,[data-theme=dark] .photo-card,[data-theme=dark] dialog,[data-theme=dark] .auth-main{background:var(--surface);border-color:var(--line);box-shadow:0 8px 32px #00000012}[data-theme=dark] button,[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:#202d40;color:var(--ink);border-color:#667892}[data-theme=dark] button:hover{background:#2a3c56;border-color:#8ea2c0}[data-theme=dark] button.primary,[data-theme=dark] .clock button.selected{background:#91b1ff;color:#102039;border-color:#91b1ff;box-shadow:none}[data-theme=dark] button.primary:hover{background:#b1c7ff;border-color:#b1c7ff}[data-theme=dark] .nav button{background:transparent;color:var(--muted);border-color:transparent}[data-theme=dark] .nav button.active,[data-theme=dark] .nav button:hover{background:var(--brand-soft);color:var(--brand)}[data-theme=dark] .view-mode,[data-theme=dark] .period-choice,[data-theme=dark] .notification-choice,[data-theme=dark] .filters,[data-theme=dark] .account button,[data-theme=dark] .clock,[data-theme=dark] .theme-control select{background:#162131;border-color:var(--line)}[data-theme=dark] .notice{background:#223553;border-color:#3a5074;color:#c1d4ff}[data-theme=dark] .badge.neutral{background:#2a3546;color:#c1ccdc}[data-theme=dark] .badge.pending,[data-theme=dark] .matrix-cell.mixed,[data-theme=dark] .sync-strip[data-state=offline],[data-theme=dark] .sync-strip[data-state=error]{background:#42361d;color:#f4d493;border-color:#776039}[data-theme=dark] .row,[data-theme=dark] td{border-color:var(--line)}[data-theme=dark] th{background:#162131}[data-theme=dark] tbody tr:hover{background:#1d2a3e}[data-theme=dark] .day.today{background:#1b2a44;border-color:var(--brand)}[data-theme=dark] .day button,[data-theme=dark] .matrix-cell.available{background:var(--available-bg);color:var(--available)}[data-theme=dark] .day .unavailable,[data-theme=dark] .matrix-cell.unavailable,[data-theme=dark] .error{background:var(--unavailable-bg);color:var(--unavailable)}[data-theme=dark] .badge{background:var(--available-bg);color:var(--available)}[data-theme=dark] .badge.no{background:var(--unavailable-bg);color:var(--unavailable)}[data-theme=dark] .badge.neutral{background:#2a3546;color:#c1ccdc}[data-theme=dark] .badge.pending{background:#42361d;color:#f4d493}[data-theme=dark] .day button:hover{border-color:currentColor}[data-theme=dark] .progress{background:#2a3546}[data-theme=dark] .progress i,[data-theme=dark] .bar{background:#91b1ff}[data-theme=dark] .avatar{background:#223553;color:#c1d4ff}[data-theme=dark] .auth-wrap{background:radial-gradient(ellipse at 50% 15%,#1c2c48 0,transparent 65%),var(--canvas)}[data-theme=dark] .auth-store{color:var(--muted)}[data-theme=dark] .auth-identity small{color:var(--muted)}[data-theme=dark] .digiplan-auth-logo,[data-theme=dark] .logo img{filter:brightness(0) saturate(100%) invert(76%) sepia(19%) saturate(944%) hue-rotate(184deg) brightness(105%) contrast(100%)}[data-theme=dark] .auth-tenant img{background:#fff;border-radius:5px;padding:3px}[data-theme=dark] .password-toggle{background:transparent;color:var(--muted);border-color:transparent}[data-theme=dark] button.danger,[data-theme=dark] .photo-card #photo-error{color:var(--unavailable)}[data-theme=dark] button.danger:hover{background:var(--unavailable-bg)}[data-theme=dark] .weekdays label{background:#202d40}[data-theme=dark] .weekdays label:has(input:checked){background:var(--brand-soft);border-color:var(--brand)}[data-theme=dark] .week-matrix tbody th,[data-theme=dark] .period-card,[data-theme=dark] .matrix-wrap{background:var(--surface)}[data-theme=dark] .week-matrix .current-day{background:var(--brand-soft)}[data-theme=dark] .matrix-cell.missing{background:var(--canvas);color:var(--muted);border-color:var(--line)}[data-theme=dark] #toast{background:#e7edf7;color:#172033}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#aab8ce}
@media(max-width:700px){.period-card{align-items:flex-start;flex-direction:column;gap:16px;padding:20px}.period-card button{width:100%}.sync-strip{align-items:flex-start;flex-wrap:wrap}.matrix-toolbar{gap:12px}.matrix-toolbar>div{width:100%}.week-matrix,.week-matrix tbody,.week-matrix tr{display:table-row-group}.week-matrix{display:table;min-width:1080px}.week-matrix tr{display:table-row;border:0;margin:0;padding:0}.week-matrix thead{display:table-header-group}.week-matrix tbody{display:table-row-group}.week-matrix td{display:table-cell;padding:8px}.week-matrix td:before{content:none}.week-matrix th:first-child{min-width:180px;width:180px}.matrix-wrap{max-height:65vh}.account{flex-wrap:wrap}.account .theme-control{width:100%;order:2;margin-top:12px}.account .theme-control label{text-align:left}}

.filters .actions{grid-column:span 2}.filter-week-navigation{display:flex;flex-wrap:nowrap;gap:10px;align-items:center}.filter-week-navigation button{white-space:nowrap}@media(max-width:700px){.filters .actions{grid-column:1 / -1}.filter-week-navigation{gap:6px}}

.dashboard-summary{gap:16px}.dashboard-summary .stat{padding:18px;border-radius:16px}.dashboard-summary .label{font-size:.875rem;line-height:1.4;min-height:2.8em}.dashboard-summary .number{font-size:2rem;margin:10px 0 8px;line-height:1.15}.dashboard-summary .stat>small{display:block;font-size:.8125rem;line-height:1.5}.stat-value-action{display:flex;align-items:center;justify-content:space-between;gap:8px}.dashboard-summary .stat-value-action button{padding:8px;min-height:40px;font-size:.75rem;white-space:nowrap}.dashboard-summary .stat-value-action .number{flex-shrink:0}@media(max-width:700px){.dashboard-summary{gap:12px}.dashboard-summary .label{min-height:0}.dashboard-summary .stat{padding:16px}}

.compact-availability-filters{padding:14px;gap:12px;grid-template-columns:minmax(150px,1fr) minmax(220px,1.3fr) minmax(190px,1.2fr);border-radius:16px}.compact-availability-filters label{display:flex;align-items:center;gap:6px;font-size:.75rem;margin-bottom:5px;color:var(--muted)}.compact-availability-filters label span,.compact-refresh-icon{display:inline-flex;width:16px;height:16px}.compact-availability-filters svg{width:100%;height:100%}.compact-availability-filters input,.compact-availability-filters select{min-height:40px;height:40px;padding:8px 10px;font-size:.875rem}.compact-time-inputs{display:flex;align-items:center;gap:6px}.compact-time-inputs select{min-width:0;flex:1}.filters.compact-availability-filters .actions{grid-column:auto;flex-wrap:nowrap;align-self:end;gap:8px}.compact-availability-filters button{height:40px;min-height:40px;padding:8px 12px;font-size:.875rem}.compact-availability-filters #refresh{display:inline-flex;align-items:center;justify-content:center;width:40px;padding:10px}.compact-availability-filters .sr-only{position:absolute}@media(max-width:1000px){.compact-availability-filters{grid-template-columns:1fr 1fr}.compact-availability-filters .compact-time{min-width:0}}@media(max-width:500px){.compact-availability-filters{grid-template-columns:minmax(0,1fr);gap:10px}.filters.compact-availability-filters .actions{grid-column:auto}.compact-availability-filters .actions .primary{flex:1}}
.personal-calendar-toolbar{margin-bottom:16px}.personal-calendar-toolbar label{margin:0}.personal-calendar-toolbar select{width:auto}.personal-calendar-wrap{overflow-x:auto;padding-bottom:6px}.personal-calendar{display:grid;grid-template-columns:34px repeat(7,minmax(84px,1fr));gap:6px;min-width:680px}.calendar-weekday,.calendar-week-heading{text-align:center;color:var(--muted);font-size:.8125rem;padding:8px 0}.calendar-week-number{display:flex;justify-content:center;align-items:flex-start;padding-top:16px;font-size:.8125rem;color:var(--muted);font-variant-numeric:tabular-nums}.personal-day{border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff);min-width:0;position:relative}.personal-day.today{border:2px solid var(--brand)}.personal-day.outside-month{opacity:.55}.calendar-day-hit{display:flex;flex-direction:column;gap:7px;align-items:stretch;text-align:left;border:0;background:transparent!important;border-radius:11px;width:100%;height:100%;min-height:104px;padding:10px;color:var(--ink);font-weight:400}.calendar-day-hit:hover:not(:disabled){box-shadow:inset 0 0 0 2px var(--brand)}.calendar-day-hit:disabled{cursor:default;opacity:.65}.calendar-date{font-weight:650;font-size:.9375rem}.calendar-status{display:block;padding:5px 6px;border-radius:7px;background:var(--available-bg);color:var(--available);font-size:.75rem;line-height:1.4;overflow-wrap:anywhere}.calendar-status.unavailable{background:var(--unavailable-bg);color:var(--unavailable)}.calendar-missing{font-size:.75rem;color:var(--muted)}.personal-day.selected-day{border:2px solid var(--brand);background:var(--brand-soft)}.calendar-selected-mark{position:absolute;right:7px;top:7px;color:var(--brand);font-weight:700}.calendar-selection-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:14px;border-radius:12px;background:var(--brand-soft);margin:16px 0}.calendar-list{display:block;min-width:0}.calendar-list .personal-day{margin-bottom:8px}.calendar-list .calendar-day-hit{min-height:70px}.calendar-help{margin:0 0 14px}.personal-calendar-toolbar button{padding:10px 12px}@media(max-width:700px){.personal-calendar-toolbar{gap:6px}.personal-calendar-toolbar button{font-size:.8125rem}.calendar-selection-bar{position:sticky;top:0;z-index:2}.personal-calendar{grid-template-columns:28px repeat(7,minmax(74px,1fr));min-width:588px}.calendar-day-hit{min-height:92px;padding:8px}}

.manager-calendar-day{padding:10px;min-height:104px}.manager-calendar-day h3{margin:0 0 8px}.manager-calendar-day .calendar-status{width:100%;text-align:left;margin-bottom:6px;white-space:normal;min-height:36px;font-weight:500;border:0}.manager-calendar-day .calendar-status:hover{box-shadow:inset 0 0 0 1px currentColor}

.manager-calendar-day .calendar-person{font-size:.6875rem;line-height:1.35;min-height:28px;padding:5px 6px;font-weight:600}.manager-calendar-day .calendar-person.available{background:var(--available-bg);color:var(--available)}.calendar-dialog-close{float:right;display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px;padding:0;margin:-8px -8px 8px 12px;font-size:1.6rem;line-height:1}#modal:has(.calendar-dialog-close) h2{padding-right:36px}
