.card,.v23-surface{background:var(--v23-surface);border:1px solid var(--v23-line);border-radius:8px;box-shadow:none;padding:var(--v23-card-padding)}
.card:hover{border-color:var(--v23-line-strong)}
.ctitle,.slabel{color:var(--v23-muted);letter-spacing:.045em}
.ctitle{font-size:var(--font-size-card-title);line-height:1.25}
.slabel{font-size:var(--font-size-label);line-height:1.35}
.btn{min-height:calc(38px * var(--density-scale));border-color:var(--v23-line-strong);border-radius:7px;background:var(--v23-surface);color:var(--v23-ink);font-size:var(--font-size-control);font-weight:650;line-height:1.25;white-space:normal}
.btn:hover{background:var(--v23-surface-subtle);border-color:var(--v23-brand)}
.btn.pri{background:var(--v23-brand);border-color:var(--v23-brand);color:#fff}
.btn.pri:hover{background:var(--v23-brand-strong);border-color:var(--v23-brand-strong)}
.btn.sm{min-height:calc(32px * var(--density-scale));font-size:var(--font-size-meta)}
.btn.ghost{background:transparent;color:var(--v23-brand)}
.btn.danger{color:var(--v23-danger);border-color:color-mix(in srgb,var(--v23-danger) 44%,var(--v23-line))}
input[type=text],input[type=number],input[type=date],input[type=time],select,textarea{min-height:var(--v23-control-height);background:var(--v23-surface);border-color:var(--v23-line-strong);border-radius:7px;color:var(--v23-ink);font-size:var(--font-size-control);line-height:1.35}
input[type=date],input[type=time]{color-scheme:dark}
input[type=date],input[type=time]{-webkit-appearance:auto;appearance:auto;padding-right:2.35rem;background-repeat:no-repeat;background-position:right .82rem center;background-size:18px 18px}
input[type=date]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23f8fafc' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E")}
input[type=time]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23f8fafc' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
[data-theme="light"] input[type=date],
[data-theme="pink"] input[type=date],
[data-theme="light-cherry"] input[type=date],
[data-theme="light"] input[type=time],
[data-theme="pink"] input[type=time],
[data-theme="light-cherry"] input[type=time]{color-scheme:light}
[data-theme="light"] input[type=date],
[data-theme="pink"] input[type=date],
[data-theme="light-cherry"] input[type=date]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E")}
[data-theme="light"] input[type=time],
[data-theme="pink"] input[type=time],
[data-theme="light-cherry"] input[type=time]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.001;width:1.55rem;height:1.55rem;margin-left:.25rem;padding:.18rem;border-radius:5px;background:transparent;filter:none}
[data-theme="light"] input[type=date]::-webkit-calendar-picker-indicator,
[data-theme="pink"] input[type=date]::-webkit-calendar-picker-indicator,
[data-theme="light-cherry"] input[type=date]::-webkit-calendar-picker-indicator,
[data-theme="light"] input[type=time]::-webkit-calendar-picker-indicator,
[data-theme="pink"] input[type=time]::-webkit-calendar-picker-indicator,
[data-theme="light-cherry"] input[type=time]::-webkit-calendar-picker-indicator{background:transparent;filter:none}
input:focus,select:focus,textarea:focus,button:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--v23-brand) 28%,transparent);outline-offset:2px;border-color:var(--v23-brand)}
.field label{color:var(--v23-muted);font-size:var(--font-size-label);font-weight:650}
.helper-text,.metadata,.form-hint,.caption,.ps-hint,.met-l,.met-s,.brand-sub{font-size:var(--font-size-metadata);line-height:1.5}
.met{background:var(--v23-surface);border-color:var(--v23-line);border-radius:8px;padding:.8rem .85rem}
.met-v{color:var(--v23-ink);font-variant-numeric:tabular-nums}
.met-l{color:var(--v23-muted);font-weight:600}
.met.hi{background:var(--v23-brand);border-color:var(--v23-brand)}
.alert{border-radius:7px}
.alert.blue{background:var(--v23-info-soft);border-color:color-mix(in srgb,var(--v23-info) 42%,var(--v23-line));color:var(--v23-info)}
.alert.green{background:var(--v23-positive-soft);color:var(--v23-positive)}
.alert.amber{background:var(--v23-warning-soft);color:var(--v23-warning)}
.alert.red{background:var(--v23-danger-soft);color:var(--v23-danger)}
.tag{border-radius:999px;padding:2px 7px;letter-spacing:0}
.ps-mode-row{display:inline-flex;width:auto;max-width:100%;padding:3px;border:1px solid var(--v23-line);border-radius:8px;background:var(--v23-surface-subtle);gap:2px}
.ps-mode{min-height:34px;border:0;border-radius:6px;background:transparent;padding:.45rem .75rem;color:var(--v23-muted)}
.ps-mode.on{background:var(--v23-surface);box-shadow:0 1px 4px var(--color-shadow);color:var(--v23-brand)}
.drawer{border-left:1px solid var(--v23-line);box-shadow:-16px 0 48px var(--color-shadow)}
.drawer-hdr{background:var(--v23-surface);border-color:var(--v23-line)}
.empty{color:var(--v23-muted)}
.v23-readonly-field{min-height:42px;padding:.65rem .7rem;border:1px solid var(--v23-line);border-radius:7px;background:var(--v23-surface-subtle);color:var(--v23-muted);font-size:var(--font-size-metadata);line-height:1.5}
.v23-advanced-options{margin:.15rem 0 .7rem;border-top:1px solid var(--v23-line);border-bottom:1px solid var(--v23-line)}
.v23-advanced-options>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:var(--v23-brand);font-size:var(--font-size-meta);font-weight:700;list-style:none}
.v23-advanced-options>summary::-webkit-details-marker{display:none}
.v23-advanced-options>summary::after{content:'+';font-size:1.1rem;font-weight:500;color:var(--v23-muted)}
.v23-advanced-options[open]>summary::after{content:'−'}
.v23-advanced-options-body{padding:.1rem 0 .45rem}
.v23-required-leave-table{display:grid;gap:.42rem;margin-top:.55rem}
.v23-required-leave-head,.v23-required-leave-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(110px,1fr) minmax(110px,.9fr);gap:.45rem;align-items:end}
.v23-required-leave-head{color:var(--v23-muted);font-size:var(--font-size-label);font-weight:750}
.v23-required-leave-type{min-height:var(--v23-control-height);display:flex;align-items:center;padding:.58rem .65rem;border:1px solid var(--v23-line);border-radius:7px;background:var(--v23-surface-subtle);color:var(--v23-ink);font-size:var(--font-size-control);font-weight:650;line-height:1.25}
.v23-required-leave-row .field label{display:none}
@media (max-width:640px){
  .v23-required-leave-head{display:none}
  .v23-required-leave-row{grid-template-columns:1fr}
  .v23-required-leave-row .field label{display:block}
}

.v23-more-menu{display:none}
.v23-icon-button{display:grid;width:36px;height:36px;place-items:center;border:0;background:transparent;color:var(--v23-ink);font-size:1.5rem;cursor:pointer}
.v23-toast-region{position:fixed;right:1rem;bottom:1rem;z-index:1300;display:grid;width:min(390px,calc(100vw - 2rem));gap:.5rem;pointer-events:none}
.v23-toast{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem .8rem;border:1px solid var(--v23-line-strong);border-left:4px solid var(--v23-brand);border-radius:8px;background:var(--v23-surface);box-shadow:var(--v23-shadow);color:var(--v23-ink);font-size:var(--font-size-metadata);line-height:1.5;pointer-events:auto}
.v23-toast button{display:grid;width:28px;height:28px;flex:none;place-items:center;border:0;background:transparent;color:var(--v23-muted);font-size:1.15rem;cursor:pointer}
