:root{
  --ink:#162033;--muted:#6b7486;--line:#e5e9f0;--surface:#fff;--bg:#f3f5f8;--gold:#b9975e;--nav:#111722;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{background:linear-gradient(180deg,#111722,#171d29);color:#fff;padding:26px 18px;position:sticky;top:0;height:100vh}.logo{font-size:22px;font-weight:800;letter-spacing:-.03em}.logo span{color:#c9a565}.version{font-size:11px;color:#8791a3;margin-top:3px}.nav{margin-top:28px;display:grid;gap:6px}.nav a{padding:11px 12px;border-radius:12px;color:#bac3d1;font-size:14px}.nav a:hover,.nav a.active{background:#ffffff10;color:#fff}.main{padding:32px;min-width:0}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:26px}.topbar h1{margin:0;font-size:28px;letter-spacing:-.035em}.subtitle{margin:7px 0 0;color:var(--muted);font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:700;font-size:13px}.btn-primary{background:#17223b;color:#fff}.btn-soft{background:#fff;border-color:var(--line);color:#243047}.grid{display:grid;gap:18px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 30px rgba(18,30,55,.04)}.metric{font-size:30px;font-weight:800;margin-top:14px;letter-spacing:-.04em}.metric-label{font-size:13px;color:var(--muted)}.section-title{display:flex;align-items:center;justify-content:space-between;margin:28px 0 12px}.section-title h2{font-size:17px;margin:0}.brand-row,.type-row,.booking-row{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.brand-row:last-child,.type-row:last-child,.booking-row:last-child{border-bottom:0}.pill{display:inline-flex;align-items:center;border-radius:999px;background:#f2f4f7;padding:6px 9px;font-size:11px;color:#596273}.status-ok{background:#edf8f1;color:#26784a}.swatch{width:38px;height:38px;border-radius:12px;border:1px solid #00000012}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:800;color:#596273}.field input,.field textarea,.field select{width:100%;border:1px solid #dfe4ec;background:#fff;border-radius:12px;padding:11px 12px;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:#9aa9bf;box-shadow:0 0 0 3px #17223b0b}.field textarea{min-height:92px;resize:vertical}.split-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);gap:22px;align-items:start}.preview-wrap{position:sticky;top:26px}.preview-label{font-size:12px;font-weight:800;color:#6b7486;margin-bottom:9px}.preview-frame{border-radius:24px;border:1px solid #dfe4ec;overflow:hidden;box-shadow:0 18px 60px rgba(24,34,56,.12);background:#fff}.preview-frame iframe{display:block;width:100%;height:690px;border:0}.flash{padding:12px 14px;border-radius:12px;margin:0 0 18px;background:#edf8f1;color:#26784a;border:1px solid #d6eee0}.table-head{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#8a93a3;font-weight:800}.empty{padding:28px;text-align:center;color:#7c8696}.mini-note{font-size:12px;color:#7b8494;line-height:1.55}.inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* Public booking */
.booking-page{min-height:100vh;background:var(--brand-bg);color:var(--brand-text);padding:34px 16px 60px}.booking-shell{max-width:1040px;margin:0 auto}.brandbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:42px}.wordmark{font-weight:850;font-size:22px;letter-spacing:-.03em;color:var(--brand-wordmark)}.brand-badge{font-size:11px;border:1px solid color-mix(in srgb,var(--brand-text) 18%,transparent);padding:7px 10px;border-radius:999px;opacity:.75}.hero{max-width:760px;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:850;color:var(--brand-accent);margin-bottom:10px}.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:-.055em;margin:0;color:var(--brand-heading)}.hero p{font-size:17px;line-height:1.65;color:var(--brand-muted);margin:16px 0 0}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.public-card{background:var(--brand-surface);border-radius:var(--brand-radius);padding:22px;border:1px solid color-mix(in srgb,var(--brand-text) 10%,transparent);box-shadow:0 18px 70px rgba(19,27,42,.08)}.public-card h2{font-size:16px;margin:0 0 16px}.type-option{display:block;padding:16px;border-radius:calc(var(--brand-radius) - 6px);border:1px solid color-mix(in srgb,var(--brand-text) 13%,transparent);margin-bottom:10px;transition:.2s;background:color-mix(in srgb,var(--brand-surface) 96%,var(--brand-primary) 4%)}.type-option:hover,.type-option.selected{border-color:var(--brand-accent);transform:translateY(-1px)}.type-title{font-weight:850}.type-meta{font-size:12px;opacity:.6;margin-top:5px}.type-desc{font-size:13px;line-height:1.5;opacity:.72;margin-top:8px}.date-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.date-chip{border:1px solid color-mix(in srgb,var(--brand-text) 14%,transparent);background:transparent;color:inherit;border-radius:12px;padding:10px 6px;text-align:center;cursor:pointer}.date-chip strong{display:block;font-size:13px}.date-chip span{font-size:11px;opacity:.6}.date-chip.active{border-color:var(--brand-accent);box-shadow:inset 0 0 0 1px var(--brand-accent)}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.slot{border:1px solid color-mix(in srgb,var(--brand-text) 14%,transparent);background:transparent;color:inherit;border-radius:11px;padding:10px;cursor:pointer;font-weight:750}.slot:hover,.slot.active{background:var(--brand-primary);color:var(--brand-button-text);border-color:var(--brand-primary)}.booking-form{display:grid;gap:12px}.booking-form input,.booking-form select{width:100%;border:1px solid color-mix(in srgb,var(--brand-text) 15%,transparent);background:transparent;color:inherit;border-radius:12px;padding:12px}.booking-form option{color:#111}.cta{width:100%;border:0;border-radius:12px;padding:13px 16px;background:var(--brand-primary);color:var(--brand-button-text);font-weight:850;cursor:pointer}.cta:disabled{opacity:.45;cursor:not-allowed}.summary{font-size:13px;line-height:1.65;background:color-mix(in srgb,var(--brand-accent) 9%,transparent);border-radius:14px;padding:14px;margin-bottom:14px}.success-card{max-width:680px;margin:90px auto 0;text-align:center}.success-icon{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--brand-accent) 18%,transparent);font-size:28px}.legal-footer{margin-top:38px;font-size:11px;opacity:.55;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

@media(max-width:980px){.shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.nav{grid-template-columns:repeat(4,1fr);margin-top:18px}.main{padding:22px}.grid-4{grid-template-columns:repeat(2,1fr)}.split-editor{grid-template-columns:1fr}.preview-wrap{position:relative;top:auto}.booking-layout{grid-template-columns:1fr}}
@media(max-width:640px){.main{padding:16px}.grid-4,.grid-2,.form-grid{grid-template-columns:1fr}.brand-row,.type-row,.booking-row{grid-template-columns:1fr}.nav{grid-template-columns:1fr 1fr}.booking-page{padding:22px 12px 40px}.brandbar{margin-bottom:30px}.date-strip{grid-template-columns:repeat(3,1fr)}.date-chip:nth-child(n+4){display:none}.slots{grid-template-columns:1fr 1fr}.public-card{padding:17px}.hero h1{font-size:38px}}


/* v0.1.1 Theme editor */
.editor-section{margin-bottom:16px}.editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.editor-heading h2{font-size:17px;margin:3px 0 0}.section-kicker{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:850;color:#9a8057}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.edit-badge{display:inline-flex;align-items:center;border:1px solid #e3e7ee;background:#f7f8fa;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;color:#7a8494;white-space:nowrap}.edit-badge.emphasis{color:#725c35;border-color:#eadfc9;background:#fbf8f2}.color-control{display:grid;grid-template-columns:48px 1fr;gap:9px;align-items:center}.color-control input[type=color],.compact-color{appearance:none;-webkit-appearance:none;width:48px;height:42px;padding:3px;border:1px solid #dfe4ec;border-radius:11px;background:#fff;cursor:pointer}.color-control input[type=color]::-webkit-color-swatch-wrapper,.compact-color::-webkit-color-swatch-wrapper{padding:0}.color-control input[type=color]::-webkit-color-swatch,.compact-color::-webkit-color-swatch{border:0;border-radius:7px}.savebar{position:sticky;bottom:14px;z-index:5;display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px 14px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 40px rgba(18,30,55,.10);backdrop-filter:blur(12px)}.preview-label{display:flex;align-items:center;justify-content:space-between}.live-indicator{font-size:9px;color:#2f8c58;letter-spacing:.08em}.type-row-pro{grid-template-columns:1.3fr .8fr 1.35fr auto}.type-style-form{width:100%}.compact-input{min-width:0;flex:1;border:1px solid #dfe4ec;border-radius:10px;padding:9px 10px}.compact-btn{padding:9px 10px}.check-row{display:flex!important;grid-template-columns:auto 1fr;align-items:center;justify-content:flex-start;gap:9px!important;font-weight:650!important}.check-row input{width:auto!important}

/* v0.1.1 Calendar */
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;padding:14px 16px}.calendar-nav,.calendar-filters{display:flex;align-items:center;gap:8px}.calendar-nav h2{min-width:190px;margin:0 4px;font-size:18px}.calendar-filters select{border:1px solid var(--line);border-radius:11px;background:#fff;padding:9px 11px;color:#344056}.event-create{margin-bottom:16px}.calendar-shell{padding:0;overflow:hidden}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#f8f9fb;border-bottom:1px solid var(--line)}.calendar-weekdays div{padding:11px 12px;font-size:10px;font-weight:850;color:#8a93a3;text-transform:uppercase;letter-spacing:.08em}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:158px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px;background:#fff;min-width:0}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#fafbfc;color:#aab1bd}.calendar-day.today{box-shadow:inset 0 0 0 2px #17223b}.day-number{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:12px;font-weight:850}.day-number span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px}.calendar-day.today .day-number span{background:#17223b;color:#fff}.day-number em{font-style:normal;font-size:9px;color:#6e7787}.day-events{display:grid;gap:5px}.cal-event{display:grid;grid-template-columns:36px 1fr;gap:7px;align-items:start;min-width:0;border-left:3px solid var(--event-color);background:color-mix(in srgb,var(--event-color) 9%,#fff);border-radius:8px;padding:7px 7px 7px 8px}.cal-event-time{font-size:9px;font-weight:850;color:#737d8d;padding-top:1px}.cal-event-main{min-width:0}.cal-event-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;color:#263248}.cal-event-main>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px;color:#798293;margin-top:2px}.tag-line{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.tag-line small{display:inline-flex;border-radius:999px;padding:2px 5px;background:#ffffffc7;border:1px solid #0000000b;font-size:8px;color:#70798a}.more-events{font-size:9px;color:#737d8d;padding:3px 5px}.calendar-bottom-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:16px;margin-top:16px}.agenda-row{display:grid;grid-template-columns:10px 1fr;gap:10px;align-items:start;padding:12px 0;border-bottom:1px solid var(--line)}.agenda-row:last-child{border-bottom:0}.agenda-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-top:5px;flex:0 0 auto}.legend-stack{display:grid;gap:12px;margin-top:18px}.legend-stack>div{display:flex;align-items:center;gap:9px;font-size:12px;color:#596273}.legend-stack .agenda-dot{margin-top:0}

@media(max-width:1180px){.calendar-day{min-height:135px}.cal-event{grid-template-columns:1fr}.cal-event-time{display:none}.tag-line{display:none}.calendar-bottom-grid{grid-template-columns:1fr}.type-row-pro{grid-template-columns:1fr 1fr}.calendar-toolbar{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.calendar-shell{overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:860px}.calendar-filters{width:100%;flex-wrap:wrap}.calendar-filters select{flex:1}.savebar{position:relative;bottom:auto}.type-row-pro{grid-template-columns:1fr}}

/* v0.1.2 Calendar Workspace */
.calendar-topbar{margin-bottom:18px}.title-with-badge{display:flex;align-items:center;gap:10px}.workspace-badge{display:inline-flex;align-items:center;border-radius:999px;background:#f4efe7;color:#8a6d3b;border:1px solid #eadfcd;padding:4px 8px;font-size:9px;font-weight:850;letter-spacing:.06em}.calendar-commandbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:10px;padding:13px 15px}.calendar-commandbar .calendar-nav{display:flex;align-items:center;gap:8px}.calendar-commandbar .calendar-nav h2{margin:0 0 0 6px;font-size:18px;letter-spacing:-.02em;min-width:220px}.icon-btn{width:38px;padding:9px}.view-switch{display:inline-flex;align-items:center;padding:3px;border-radius:12px;background:#f0f3f7;border:1px solid #e1e6ed}.view-switch a{padding:8px 12px;border-radius:9px;font-size:12px;font-weight:800;color:#6c7687}.view-switch a.active{background:#fff;color:#17223b;box-shadow:0 1px 5px rgba(20,32,50,.09)}
.calendar-filterbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px;padding:13px 15px}.calendar-filters-pro{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.calendar-filters-pro label{display:grid;gap:5px}.calendar-filters-pro label>span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#8992a2}.calendar-filters-pro select{min-width:150px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px 10px;color:#344056}.clear-filter{font-size:11px;font-weight:750;color:#6b7486;padding:9px 4px}.drag-hint{display:flex;align-items:center;gap:7px;font-size:11px;color:#7b8494;white-space:nowrap}.drag-hint span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#f2f4f7;color:#536176;font-weight:900}
.calendar-month-shell .calendar-day{transition:background .15s,box-shadow .15s}.calendar-dropzone.drag-over{background:#eef3fb!important;box-shadow:inset 0 0 0 2px #5c7fb6}.calendar-dropzone.saving{opacity:.55}.cal-event{cursor:pointer;transition:transform .12s,box-shadow .12s,opacity .12s}.cal-event:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(24,37,59,.08)}.cal-event.dragging{opacity:.42;transform:scale(.98)}.agenda-clickable{cursor:pointer;border-radius:10px;padding-left:8px;padding-right:8px}.agenda-clickable:hover{background:#f8f9fb}

.time-calendar{padding:0;overflow:hidden}.time-calendar-head{display:grid;grid-template-columns:72px repeat(var(--day-count),minmax(120px,1fr));border-bottom:1px solid var(--line);background:#fafbfc}.time-gutter-head{display:flex;align-items:end;justify-content:center;padding:13px 6px;font-size:8px;color:#9aa2af;border-right:1px solid var(--line)}.time-day-head{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;padding:11px 8px;border-right:1px solid var(--line);min-height:52px}.time-day-head:last-child{border-right:0}.time-day-head span{font-size:9px;text-transform:uppercase;color:#8a93a3;font-weight:850}.time-day-head strong{font-size:13px}.time-day-head em{font-style:normal;font-size:8px;background:#17223b;color:#fff;padding:3px 6px;border-radius:999px}.time-day-head.today{background:#f5f7fb}.time-calendar-body{display:grid;grid-template-columns:72px 1fr;height:var(--time-grid-height);overflow-y:auto;position:relative}.time-axis{position:relative;height:var(--time-grid-height);border-right:1px solid var(--line);background:#fafbfc}.time-label{position:absolute;left:0;right:0;transform:translateY(-6px);text-align:center;font-size:9px;color:#8c95a3}.time-days{display:grid;grid-template-columns:repeat(var(--day-count),minmax(120px,1fr));height:var(--time-grid-height)}.time-day-column{position:relative;height:var(--time-grid-height);border-right:1px solid var(--line);background:#fff;min-width:0}.time-day-column:last-child{border-right:0}.time-day-column.today{background:#fcfdff}.time-slots{position:absolute;inset:0;display:grid;grid-template-rows:repeat(26,var(--slot-height))}.time-slot{border-bottom:1px solid #edf0f4;transition:background .1s}.time-slot:nth-child(odd){border-bottom-style:dashed}.time-slot:hover{background:#f7f9fc}.time-events{position:absolute;inset:0;pointer-events:none}.time-event-position{position:absolute;left:5px;right:5px;z-index:2;min-height:24px;pointer-events:auto}.cal-event-timeblock{height:100%;display:block;padding:7px 8px;border-left:4px solid var(--event-color);overflow:hidden}.cal-event-timeblock .cal-event-main strong{font-size:10px}.cal-event-timeblock .cal-event-main>span{font-size:8px}.cal-event-timeblock .tag-line{margin-top:4px}.day-mode .time-day-head{justify-content:flex-start;padding-left:18px}.day-mode .time-event-position{left:10px;right:10px}.day-mode .cal-event-timeblock .cal-event-main strong{font-size:12px}.day-mode .cal-event-timeblock .cal-event-main>span{font-size:10px}

.calendar-logic-list{display:grid;gap:10px;margin-bottom:16px}.calendar-logic-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:9px}.calendar-logic-list>div:last-child{border-bottom:0}.calendar-logic-list strong{font-size:12px}.calendar-logic-list span{font-size:11px;color:#7b8494;text-align:right}

.drawer-backdrop{position:fixed;inset:0;background:rgba(12,19,30,.24);backdrop-filter:blur(2px);z-index:80;opacity:0;transition:opacity .18s}.drawer-backdrop.visible{opacity:1}.event-drawer{position:fixed;right:0;top:0;bottom:0;width:min(460px,94vw);z-index:90;background:#fff;border-left:1px solid #dde3eb;box-shadow:-20px 0 60px rgba(18,30,55,.15);transform:translateX(102%);transition:transform .22s ease;padding:24px;overflow-y:auto}.event-drawer.open{transform:translateX(0)}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.drawer-head h2{margin:4px 0 0;font-size:22px;letter-spacing:-.03em}.drawer-close{border:0;background:#f1f3f6;width:34px;height:34px;border-radius:10px;font-size:22px;color:#5f6a7a;cursor:pointer}.drawer-meta{font-size:11px;color:#7b8494;line-height:1.5;padding:12px 0 16px}.drawer-grid{gap:12px}.contact-card{display:grid;gap:5px;border:1px solid #e4e8ee;background:#f8f9fb;border-radius:14px;padding:14px;margin-bottom:14px}.contact-card strong{font-size:14px}.contact-card a,.contact-card span{font-size:11px;color:#667184}.drawer-actions{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.btn-danger{background:#fff5f5;border-color:#f0d7d7;color:#9c4343}.event-drawer textarea{min-height:88px}

@media(max-width:1180px){.calendar-filterbar{align-items:flex-start;flex-direction:column}.drag-hint{align-self:flex-end}.time-calendar-head{grid-template-columns:64px repeat(var(--day-count),minmax(110px,1fr))}.time-calendar-body{grid-template-columns:64px 1fr}}
@media(max-width:900px){.calendar-commandbar{align-items:flex-start;flex-direction:column}.view-switch{align-self:stretch}.view-switch a{flex:1;text-align:center}.time-calendar{overflow-x:auto}.time-calendar-head,.time-calendar-body{min-width:920px}.day-mode .time-calendar-head,.day-mode .time-calendar-body{min-width:640px}.calendar-filterbar{overflow-x:auto}.calendar-filters-pro{min-width:max-content}.drag-hint{display:none}}
@media(max-width:640px){.calendar-commandbar .calendar-nav{flex-wrap:wrap}.calendar-commandbar .calendar-nav h2{width:100%;min-width:0;margin:4px 0 0}.event-drawer{padding:18px}.drawer-grid{grid-template-columns:1fr}.drawer-actions{align-items:stretch;flex-direction:column}.drawer-actions .btn{width:100%}}

/* =========================================================
   JORIDEM OS MODULE DESIGN SYSTEM · v0.1.3
   Admin-only shell. Public booking themes stay brand-specific.
   ========================================================= */
.admin-ui{
  --os-ink:#152033;
  --os-muted:#697386;
  --os-soft:#8b94a4;
  --os-line:#e4e8ef;
  --os-line-strong:#d7dce5;
  --os-bg:#f4f6f9;
  --os-surface:#ffffff;
  --os-surface-2:#f8f9fb;
  --os-nav:#0e131d;
  --os-nav-2:#141b27;
  --os-gold:#c39a5a;
  --os-gold-soft:#f5eee2;
  --os-primary:#17233b;
  --os-primary-hover:#21304f;
  --os-success:#20845a;
  --os-danger:#a04d4d;
  --os-shadow:0 14px 45px rgba(21,32,51,.055);
  --os-shadow-lg:0 24px 70px rgba(15,23,39,.10);
  background:var(--os-bg);
  color:var(--os-ink);
  min-height:100vh;
}
.admin-ui *{box-sizing:border-box}
.admin-ui .os-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}
.admin-ui .os-sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--os-nav) 0%,#111824 58%,#0c111a 100%);color:#fff;padding:22px 16px 16px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.045);z-index:30}
.admin-ui .os-brand-lockup{padding:2px 7px 20px;border-bottom:1px solid rgba(255,255,255,.075)}
.admin-ui .os-brand-row{display:flex;align-items:center;gap:8px}
.admin-ui .os-wordmark{font-size:23px;font-weight:850;letter-spacing:-.055em;line-height:1;color:#f7f9fc}
.admin-ui .os-chip{display:inline-flex;align-items:center;height:20px;padding:0 7px;border:1px solid rgba(195,154,90,.46);border-radius:999px;color:#d2ad72;font-size:9px;font-weight:850;letter-spacing:.1em}
.admin-ui .os-brand-sub{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#778296;margin-top:6px;font-weight:750}
.admin-ui .module-identity{display:flex;align-items:center;gap:11px;padding:18px 8px 14px;margin-bottom:5px}
.admin-ui .module-identity strong{display:block;font-size:13px;letter-spacing:-.01em}
.admin-ui .module-identity small{display:block;font-size:9px;color:#7e899b;margin-top:3px}
.admin-ui .module-mark{width:36px;height:36px;border-radius:12px;background:linear-gradient(145deg,#1c2638,#111826);border:1px solid rgba(255,255,255,.08);position:relative;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.admin-ui .module-mark span{position:absolute;width:4px;height:4px;background:#c6a164;border-radius:50%;box-shadow:0 0 10px rgba(198,161,100,.25)}
.admin-ui .module-mark span:nth-child(1){left:16px;top:16px;width:5px;height:5px}
.admin-ui .module-mark span:nth-child(2){left:8px;top:8px}.admin-ui .module-mark span:nth-child(3){right:8px;top:8px}.admin-ui .module-mark span:nth-child(4){left:8px;bottom:8px}.admin-ui .module-mark span:nth-child(5){right:8px;bottom:8px}
.admin-ui .os-nav{display:grid;gap:3px;margin-top:2px}
.admin-ui .os-nav-label{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#596476;font-weight:850;padding:16px 10px 7px}
.admin-ui .os-nav a,.admin-ui .os-external-link{display:flex;align-items:center;gap:10px;min-height:40px;padding:9px 10px;border-radius:10px;color:#9da8b9;font-size:12px;font-weight:650;transition:.16s ease}
.admin-ui .os-nav a:hover,.admin-ui .os-external-link:hover{background:rgba(255,255,255,.045);color:#eef2f7}
.admin-ui .os-nav a.active{background:linear-gradient(90deg,rgba(195,154,90,.13),rgba(255,255,255,.045));color:#fff;box-shadow:inset 2px 0 0 var(--os-gold)}
.admin-ui .nav-icon{width:17px;height:17px;display:grid;place-items:center;flex:0 0 17px;color:currentColor}
.admin-ui .nav-icon svg,.admin-ui .os-icon-button svg,.admin-ui .status-icon svg,.admin-ui .quick-actions svg,.admin-ui .empty-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.admin-ui .os-sidebar-spacer{flex:1}
.admin-ui .os-external-link{margin-top:14px;border:1px solid rgba(255,255,255,.065)}
.admin-ui .os-runtime-card{margin-top:10px;padding:12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.055);position:relative}
.admin-ui .runtime-top{display:flex;align-items:center;gap:7px}.admin-ui .runtime-top strong{font-size:10px}.admin-ui .runtime-dot{width:6px;height:6px;border-radius:50%;background:#45ba82;box-shadow:0 0 0 3px rgba(69,186,130,.10)}
.admin-ui .os-runtime-card small{display:block;font-size:8px;color:#6f7a8d;margin-top:5px}.admin-ui .runtime-version{position:absolute;right:11px;top:11px;font-size:8px;color:#758094}
.admin-ui .os-main{min-width:0}
.admin-ui .os-contextbar{height:56px;position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 28px;background:rgba(244,246,249,.88);border-bottom:1px solid rgba(217,222,230,.9);backdrop-filter:blur(16px)}
.admin-ui .os-breadcrumb{display:flex;align-items:center;gap:8px;font-size:10px;color:#8b94a4}.admin-ui .os-breadcrumb i{font-style:normal;color:#c2c7d0}.admin-ui .os-breadcrumb strong{color:#4d586a;font-weight:750}
.admin-ui .os-context-actions{display:flex;align-items:center;gap:10px}.admin-ui .os-state{display:inline-flex;align-items:center;gap:7px;border:1px solid #dfe5e4;background:rgba(255,255,255,.75);border-radius:999px;padding:6px 9px;font-size:9px;color:#5e6978;font-weight:700}.admin-ui .os-state i{width:6px;height:6px;border-radius:50%;background:#3da775}
.admin-ui .os-icon-button{display:grid;place-items:center;width:31px;height:31px;border:1px solid #dfe3e9;background:rgba(255,255,255,.8);border-radius:9px;color:#667184;cursor:default}.admin-ui .os-icon-button svg{width:14px;height:14px}
.admin-ui .main-content{padding:27px 28px 44px;max-width:1680px;margin:0 auto}

.admin-ui .page-heading,.admin-ui .topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 0 22px}
.admin-ui .page-heading h1,.admin-ui .topbar h1{font-size:28px;line-height:1.08;letter-spacing:-.045em;margin:4px 0 0;font-weight:790;color:#132039}
.admin-ui .page-heading p,.admin-ui .subtitle{margin:8px 0 0;color:var(--os-muted);font-size:12px;line-height:1.55}
.admin-ui .page-eyebrow{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:8px;font-weight:850;color:#9d7a45}
.admin-ui .page-actions{display:flex;align-items:center;gap:9px}
.admin-ui .btn{border-radius:9px;padding:9px 12px;font-size:10px;font-weight:780;letter-spacing:.005em;min-height:34px;box-shadow:none;transition:.15s ease}
.admin-ui .btn-primary{background:var(--os-primary);color:#fff;border-color:var(--os-primary)}
.admin-ui .btn-primary:hover{background:var(--os-primary-hover)}
.admin-ui .btn-soft{background:#fff;border-color:var(--os-line);color:#405067}
.admin-ui .btn-soft:hover{border-color:#cfd6e1;background:#fbfcfd}
.admin-ui .btn-danger{background:#fff7f7;border-color:#edd7d7;color:#954646}

.admin-ui .module-status-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;padding:13px 15px;background:linear-gradient(90deg,#fff,#fbfcfe);border:1px solid var(--os-line);border-radius:14px;box-shadow:0 8px 25px rgba(20,31,50,.025)}
.admin-ui .status-intro{display:flex;align-items:center;gap:10px}.admin-ui .status-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#f1f4f8;color:#44546d}.admin-ui .status-icon svg{width:15px;height:15px}.admin-ui .status-intro strong{display:block;font-size:10px}.admin-ui .status-intro small{display:block;font-size:9px;color:#8992a0;margin-top:2px}.admin-ui .status-facts{display:flex;align-items:center;gap:15px;color:#7c8697;font-size:9px}.admin-ui .status-facts span{display:flex;align-items:center;gap:6px}.admin-ui .status-facts .good{width:6px;height:6px;border-radius:50%;background:#36a16f}

.admin-ui .metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.admin-ui .metric-card{min-height:112px;padding:17px 18px;border:1px solid var(--os-line);border-radius:15px;background:var(--os-surface);box-shadow:0 8px 28px rgba(18,30,55,.03);position:relative;overflow:hidden}
.admin-ui .metric-card::after{content:"";position:absolute;inset:auto -35px -55px auto;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(195,154,90,.07),transparent 68%)}
.admin-ui .metric-card.emphasis{border-color:#e2d3b9;background:linear-gradient(145deg,#fff,#fdfaf5)}
.admin-ui .metric-label{font-size:9px;color:#7c8798;font-weight:720}.admin-ui .metric-value{font-size:30px;line-height:1;font-weight:790;letter-spacing:-.055em;margin-top:12px;color:#17243a}.admin-ui .metric-foot{font-size:8px;color:#a0a8b4;margin-top:8px}

.admin-ui .dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);gap:14px;margin-bottom:14px}
.admin-ui .panel,.admin-ui .card{background:var(--os-surface);border:1px solid var(--os-line);border-radius:15px;box-shadow:var(--os-shadow);padding:18px}
.admin-ui .panel-head,.admin-ui .editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.admin-ui .panel-head h2,.admin-ui .editor-heading h2{font-size:13px;letter-spacing:-.018em;margin:3px 0 0;color:#1a273b}.admin-ui .panel-kicker,.admin-ui .section-kicker{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.14em;font-weight:850;color:#a17d46}.admin-ui .panel-head>a{font-size:9px;color:#6d7787;font-weight:700}.admin-ui .panel-meta{font-size:9px;color:#9099a7}
.admin-ui .os-list{display:grid}.admin-ui .os-list-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:13px;padding:12px 2px;border-top:1px solid #eef1f5}.admin-ui .os-list-row:first-child{border-top:0}.admin-ui .list-main strong{display:block;font-size:10px;color:#223047}.admin-ui .list-main small{display:block;font-size:8px;color:#98a0ad;margin-top:3px}.admin-ui .brand-avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--brand-a),var(--brand-b));position:relative;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}.admin-ui .brand-avatar span{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;opacity:.86;left:13px;top:13px;box-shadow:-7px -7px 0 -2px rgba(255,255,255,.7),7px -7px 0 -2px rgba(255,255,255,.7),-7px 7px 0 -2px rgba(255,255,255,.7),7px 7px 0 -2px rgba(255,255,255,.7)}
.admin-ui .theme-palette{display:flex;align-items:center}.admin-ui .theme-palette span{width:16px;height:16px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px rgba(26,39,59,.06);margin-left:-4px}.admin-ui .theme-palette span:first-child{margin-left:0}
.admin-ui .state-pill{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:780;text-transform:capitalize}.admin-ui .state-active{background:#edf7f1;color:#2f7f58}.admin-ui .state-muted{background:#f3f4f6;color:#7b8492}.admin-ui .row-action{font-size:9px;color:#45556c;font-weight:720;padding:6px 8px;border:1px solid #e2e6ec;border-radius:8px;background:#fff}
.admin-ui .quick-actions{display:grid;gap:7px}.admin-ui .quick-actions>a{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid #eaedf2;border-radius:11px;background:#fbfcfd;transition:.14s}.admin-ui .quick-actions>a:hover{background:#fff;border-color:#d9dee7;transform:translateY(-1px)}.admin-ui .quick-actions>a>span{width:30px;height:30px;padding:8px;border-radius:9px;background:#f0f3f7;color:#4f5d72}.admin-ui .quick-actions strong{display:block;font-size:9px}.admin-ui .quick-actions small{display:block;font-size:8px;color:#979fac;margin-top:2px}.admin-ui .quick-actions b{font-size:11px;color:#9aa2ae}
.admin-ui .bookings-panel{margin-bottom:0}.admin-ui .booking-modern{grid-template-columns:auto minmax(0,1fr) 140px auto auto}.admin-ui .date-tile{width:38px;height:38px;border-radius:9px;background:#f4f6f9;display:grid;place-items:center;align-content:center}.admin-ui .date-tile strong{font-size:12px;line-height:1}.admin-ui .date-tile span{font-size:6px;color:#8d96a4;margin-top:3px;letter-spacing:.08em}.admin-ui .booking-time strong{display:block;font-size:9px}.admin-ui .booking-time small{display:block;font-size:8px;color:#929baa;margin-top:2px}.admin-ui .brand-chip{font-size:8px;padding:5px 7px;border-radius:7px;background:#f5f6f8;color:#727d8e}.admin-ui .empty-state{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#828c9c}.admin-ui .empty-state strong{font-size:10px;color:#566277;margin-top:8px}.admin-ui .empty-state span{font-size:8px;margin-top:4px}.admin-ui .empty-icon{width:30px;height:30px;padding:8px;border-radius:9px;background:#f1f3f6}.admin-ui .empty-icon svg{width:14px;height:14px}

/* Existing admin pages mapped into the OS system */
.admin-ui .grid{gap:12px}.admin-ui .section-title{margin:20px 0 9px}.admin-ui .section-title h2{font-size:12px}.admin-ui .pill{font-size:8px;padding:5px 8px}.admin-ui .mini-note{font-size:9px;line-height:1.5;color:#8690a0}.admin-ui .table-head{font-size:8px;letter-spacing:.09em;color:#9ba3af}.admin-ui .brand-row,.admin-ui .type-row,.admin-ui .booking-row{padding:12px 0;gap:12px}.admin-ui .swatch{width:30px;height:30px;border-radius:9px}
.admin-ui .field{gap:5px}.admin-ui .field label{font-size:9px;color:#606c7e}.admin-ui .field input,.admin-ui .field textarea,.admin-ui .field select,.admin-ui .compact-input{border-color:#dfe4eb;background:#fff;border-radius:9px;padding:9px 10px;font-size:10px;color:#26344a}.admin-ui .field input:focus,.admin-ui .field textarea:focus,.admin-ui .field select:focus,.admin-ui .compact-input:focus{border-color:#9eabbc;box-shadow:0 0 0 3px rgba(23,35,59,.055)}.admin-ui .field textarea{min-height:82px}.admin-ui .form-grid{gap:12px}.admin-ui .split-editor{grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:16px}.admin-ui .editor-section{margin-bottom:12px}.admin-ui .edit-badge{font-size:7px;padding:4px 6px;border-radius:999px}.admin-ui .color-control{grid-template-columns:40px 1fr;gap:7px}.admin-ui .color-control input[type=color],.admin-ui .compact-color{width:40px;height:36px;border-radius:9px}.admin-ui .savebar{bottom:12px;border-radius:12px;padding:10px 12px}.admin-ui .preview-frame{border-radius:16px;box-shadow:0 16px 45px rgba(18,30,55,.10)}.admin-ui .preview-frame iframe{height:690px}.admin-ui .preview-label{font-size:9px}.admin-ui .live-indicator{font-size:7px}
.admin-ui .flash{margin:0 0 14px;border-radius:10px;font-size:9px;padding:10px 12px;background:#eef8f2;color:#26784a;border-color:#d7ecdf}.admin-ui .flash-error{background:#fff5f5;color:#984646;border-color:#eed7d7}

/* Calendar workspace refinement */
.admin-ui .calendar-topbar{margin-bottom:14px}.admin-ui .title-with-badge{display:flex;align-items:center;gap:9px}.admin-ui .workspace-badge{font-size:7px;padding:4px 7px;border-radius:999px;background:#f1f3f6;color:#7b8594;border:1px solid #e1e5ea}.admin-ui .calendar-commandbar,.admin-ui .calendar-filterbar{box-shadow:none;margin-bottom:10px}.admin-ui .calendar-commandbar{padding:12px 14px}.admin-ui .calendar-nav{gap:6px}.admin-ui .calendar-nav h2{font-size:13px;letter-spacing:-.02em}.admin-ui .view-switch{padding:3px;background:#f1f3f6;border-radius:9px}.admin-ui .view-switch a{font-size:8px;padding:6px 10px;border-radius:7px}.admin-ui .view-switch a.active{background:#fff;color:#1d2a40;box-shadow:0 2px 8px rgba(22,32,51,.08)}.admin-ui .calendar-filterbar{padding:10px 12px;background:#fbfcfd}.admin-ui .calendar-filters-pro label span{font-size:7px;letter-spacing:.06em}.admin-ui .calendar-filters-pro select{height:32px;border-radius:8px;font-size:9px}.admin-ui .clear-filter,.admin-ui .drag-hint{font-size:8px}.admin-ui .event-create{margin-bottom:10px}.admin-ui .calendar-shell,.admin-ui .time-calendar{padding:0;border-radius:14px;box-shadow:var(--os-shadow);overflow:hidden}.admin-ui .calendar-weekdays{background:#f8f9fb;color:#8e97a5;font-size:7px;letter-spacing:.08em;font-weight:850;text-transform:uppercase}.admin-ui .calendar-day{background:#fff;min-height:118px}.admin-ui .calendar-day.outside{background:#fafbfc}.admin-ui .calendar-day.today{background:#fffdfa}.admin-ui .day-number span{font-size:9px}.admin-ui .day-number em{font-size:6px;background:#17233b;color:#fff;border-radius:999px}.admin-ui .cal-event{border-radius:7px;padding:5px 6px;background:color-mix(in srgb,var(--event-color) 8%,#fff);border:1px solid color-mix(in srgb,var(--event-color) 20%,#e8ebf0);border-left:3px solid var(--event-color)}.admin-ui .cal-event-time{font-size:7px}.admin-ui .cal-event-main strong{font-size:8px}.admin-ui .cal-event-main>span{font-size:7px;color:#7f8997}.admin-ui .tag-line small{font-size:6px;border-radius:999px;padding:2px 5px;background:rgba(25,35,52,.055)}.admin-ui .more-events{font-size:7px}.admin-ui .time-calendar-head{background:#f8f9fb}.admin-ui .time-day-head{min-height:48px}.admin-ui .time-day-head span{font-size:7px}.admin-ui .time-day-head strong{font-size:9px}.admin-ui .time-label{font-size:7px}.admin-ui .time-slot{border-color:#f0f2f5}.admin-ui .cal-event-timeblock{padding:6px 7px}.admin-ui .calendar-bottom-grid{gap:12px;margin-top:12px}.admin-ui .agenda-row{padding-top:9px;padding-bottom:9px}.admin-ui .agenda-row strong{font-size:9px}.admin-ui .agenda-dot{width:7px;height:7px}.admin-ui .calendar-logic-list strong{font-size:9px}.admin-ui .calendar-logic-list span{font-size:8px}
.admin-ui .event-drawer{width:min(430px,94vw);padding:20px;border-left-color:#dfe4eb;box-shadow:-28px 0 75px rgba(18,30,55,.13)}.admin-ui .drawer-head h2{font-size:18px}.admin-ui .drawer-close{width:30px;height:30px;font-size:18px;border-radius:8px}.admin-ui .drawer-meta{font-size:9px}.admin-ui .contact-card{border-radius:11px;padding:12px}.admin-ui .contact-card strong{font-size:10px}.admin-ui .contact-card a,.admin-ui .contact-card span{font-size:8px}

@media(max-width:1180px){
  .admin-ui .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-ui .dashboard-grid{grid-template-columns:1fr}
  .admin-ui .status-facts{display:none}
}
@media(max-width:980px){
  .admin-ui .os-shell{grid-template-columns:1fr}
  .admin-ui .os-sidebar{position:relative;height:auto;padding:14px 14px 10px;display:block}
  .admin-ui .os-brand-lockup{display:inline-block;border:0;padding:2px 5px 12px}.admin-ui .module-identity{display:none}.admin-ui .os-nav{display:flex;overflow-x:auto;gap:5px;border-top:1px solid rgba(255,255,255,.07);padding-top:10px}.admin-ui .os-nav-label,.admin-ui .os-sidebar-spacer,.admin-ui .os-runtime-card{display:none}.admin-ui .os-nav a{white-space:nowrap}.admin-ui .os-external-link{display:none}
  .admin-ui .os-contextbar{top:0;height:48px;padding:0 18px}.admin-ui .main-content{padding:20px 18px 36px}
  .admin-ui .split-editor{grid-template-columns:1fr}.admin-ui .preview-wrap{position:relative;top:auto}
}
@media(max-width:680px){
  .admin-ui .main-content{padding:16px 12px 30px}.admin-ui .os-contextbar{padding:0 12px}.admin-ui .os-breadcrumb span:first-child,.admin-ui .os-breadcrumb i:first-of-type{display:none}
  .admin-ui .page-heading,.admin-ui .topbar{flex-direction:column}.admin-ui .page-actions{width:100%}.admin-ui .page-actions .btn{flex:1}.admin-ui .page-heading h1,.admin-ui .topbar h1{font-size:24px}
  .admin-ui .metric-grid{grid-template-columns:1fr 1fr;gap:8px}.admin-ui .metric-card{min-height:100px;padding:14px}.admin-ui .metric-value{font-size:25px}
  .admin-ui .module-status-strip{align-items:flex-start}.admin-ui .os-list-row{grid-template-columns:auto minmax(0,1fr) auto}.admin-ui .theme-palette,.admin-ui .row-action{display:none}.admin-ui .booking-modern{grid-template-columns:auto minmax(0,1fr) auto}.admin-ui .booking-time,.admin-ui .brand-chip{display:none}
  .admin-ui .panel,.admin-ui .card{padding:14px;border-radius:13px}.admin-ui .form-grid{grid-template-columns:1fr}.admin-ui .field.full{grid-column:auto}.admin-ui .calendar-bottom-grid{grid-template-columns:1fr}
}

/* =========================================================
   JORIDEM Scheduling · Calendar Workspace v0.1.4
   Information hierarchy, visible tags, work hours & resize.
   ========================================================= */
.admin-ui .cal-event{position:relative;min-width:0;overflow:hidden}
.admin-ui .event-topline{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:11px;margin-bottom:2px}
.admin-ui .event-signals{display:flex;align-items:center;justify-content:flex-end;gap:3px;min-width:0}
.admin-ui .event-brand{display:inline-flex;align-items:center;max-width:92px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px 4px;border-radius:999px;background:rgba(21,32,51,.055);color:#697386;font-size:6px;font-weight:800;letter-spacing:.01em}
.admin-ui .event-status{display:inline-grid;place-items:center;width:12px;height:12px;border-radius:50%;font-size:7px;font-weight:900;line-height:1;background:#edf1f5;color:#546176;flex:0 0 auto}
.admin-ui .event-status-confirmed{background:#e9f6ef;color:#277958}
.admin-ui .event-status-blocked{background:#f4eee5;color:#936d31;border-radius:4px}
.admin-ui .event-status-reminder{background:#eef1fa;color:#5f68a3}
.admin-ui .event-conflict{display:inline-grid;place-items:center;width:12px;height:12px;border-radius:50%;background:#fff0e7;color:#a75b31;font-size:7px;font-weight:950;border:1px solid #f0d8c7}
.admin-ui .cal-event.has-conflict{box-shadow:inset 0 0 0 1px rgba(172,91,45,.18)}
.admin-ui .event-time-range{font-size:6px;color:#788394;font-weight:750;white-space:nowrap}
.admin-ui .cal-event-main{min-width:0}
.admin-ui .cal-event-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-ui .cal-event-main>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-ui .tag-line{display:flex;align-items:center;gap:3px;min-width:0;overflow:hidden;flex-wrap:nowrap}
.admin-ui .tag-line small{display:inline-flex;align-items:center;max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;border:1px solid rgba(21,32,51,.05)}
.admin-ui .tag-line .tag-more{font-weight:850;flex:0 0 auto;background:#eef1f5;color:#536176}
.admin-ui .calendar-month-shell .cal-event{padding:4px 5px 5px}
.admin-ui .calendar-month-shell .event-topline{margin-bottom:1px}
.admin-ui .calendar-month-shell .cal-event-main>span{display:none}
.admin-ui .calendar-month-shell .cal-event-main strong{font-size:8px;line-height:1.15;margin-bottom:3px}
.admin-ui .calendar-month-shell .tag-line small{font-size:5.5px;padding:1px 4px}
.admin-ui .calendar-month-shell .event-brand{max-width:54px}
.admin-ui .calendar-day{min-height:132px}
.admin-ui .cal-event-timeblock{padding:4px 6px 7px;overflow:hidden}
.admin-ui .cal-event-timeblock .event-topline{margin-bottom:2px}
.admin-ui .cal-event-timeblock .cal-event-main strong{font-size:8.5px;line-height:1.1;margin-bottom:2px}
.admin-ui .cal-event-timeblock .cal-event-main>span{font-size:6.5px;line-height:1.05;margin-bottom:2px}
.admin-ui .cal-event-timeblock .tag-line small{font-size:5.6px;padding:1px 4px}
.admin-ui .day-mode .cal-event-timeblock{padding:7px 9px 9px}
.admin-ui .day-mode .cal-event-timeblock .event-time-range{font-size:7.5px}
.admin-ui .day-mode .cal-event-timeblock .cal-event-main strong{font-size:11px;margin-bottom:3px}
.admin-ui .day-mode .cal-event-timeblock .cal-event-main>span{font-size:8px;margin-bottom:5px}
.admin-ui .day-mode .cal-event-timeblock .tag-line{gap:4px}
.admin-ui .day-mode .cal-event-timeblock .tag-line small{font-size:6.5px;padding:2px 5px;max-width:130px}
.admin-ui .day-mode .event-brand{font-size:6.5px;max-width:130px}

.admin-ui .time-slot.outside-work-hours{background:#f7f8fa}
.admin-ui .time-slot.outside-work-hours:nth-child(odd){background:#f8f9fb}
.admin-ui .time-day-column.today .time-slot:not(.outside-work-hours){background:rgba(195,154,90,.018)}
.admin-ui .current-time-line{position:absolute;left:0;right:0;height:1px;background:#b88749;z-index:5;pointer-events:none;box-shadow:0 0 0 1px rgba(184,135,73,.03)}
.admin-ui .current-time-line:before{content:"";position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:#b88749}
.admin-ui .current-time-line span{position:absolute;left:5px;top:-9px;padding:1px 4px;border-radius:5px;background:#fff7eb;color:#8d672f;font-size:6px;font-weight:850;border:1px solid #ead9bd}

.admin-ui .event-resize-handle{position:absolute;left:0;right:0;bottom:0;height:7px;padding:0;border:0;background:transparent;cursor:ns-resize;z-index:6;touch-action:none;opacity:.15;transition:opacity .15s}
.admin-ui .event-resize-handle span{position:absolute;left:50%;bottom:2px;width:20px;height:2px;border-radius:999px;background:#66758a;transform:translateX(-50%)}
.admin-ui .cal-event-timeblock:hover .event-resize-handle,.admin-ui .time-event-position.resizing .event-resize-handle{opacity:.72}
.admin-ui .time-event-position.resizing{z-index:10;filter:drop-shadow(0 10px 18px rgba(20,31,50,.12))}
.admin-ui .time-event-position.saving{opacity:.62}

.admin-ui .calendar-intelligence{min-width:0}
.admin-ui .intelligence-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:10px}
.admin-ui .intelligence-stats>div{padding:10px;border:1px solid #e8ebf0;border-radius:10px;background:#fafbfc}
.admin-ui .intelligence-stats strong{display:block;font-size:16px;letter-spacing:-.04em;color:#1b2840}
.admin-ui .intelligence-stats span{display:block;margin-top:2px;font-size:7px;color:#818b9b}
.admin-ui .intelligence-stats .warn{background:#fff9f5;border-color:#f0dfd3}
.admin-ui .intelligence-stats .warn strong{color:#a35e36}
.admin-ui .next-event-card{display:grid;gap:3px;padding:11px 12px;border-radius:11px;background:#17233b;color:#fff;margin-bottom:9px}
.admin-ui .next-event-card span{font-size:6px;text-transform:uppercase;letter-spacing:.11em;color:#b8c1cf;font-weight:850}
.admin-ui .next-event-card strong{font-size:10px;letter-spacing:-.01em}
.admin-ui .next-event-card small{font-size:7px;color:#aeb9c8}
.admin-ui .next-event-card.empty-next{background:#f6f8fa;color:#27344b;border:1px solid #e7ebf0}
.admin-ui .next-event-card.empty-next span,.admin-ui .next-event-card.empty-next small{color:#7f8998}
.admin-ui .intelligence-note{padding:9px 10px;border-radius:9px;background:#f4f8f6;color:#557064;font-size:7px;line-height:1.45;border:1px solid #e4eee9;margin-bottom:9px}
.admin-ui .intelligence-note.warn{background:#fff8f3;color:#8f6244;border-color:#f0dfd4}
.admin-ui .work-hours-note{display:flex;align-items:center;gap:8px;padding-top:9px;border-top:1px solid #edf0f3}
.admin-ui .work-hours-swatch{width:22px;height:18px;border-radius:6px;background:linear-gradient(90deg,#f7f8fa 0 35%,#fff 35% 65%,#f7f8fa 65%);border:1px solid #e8ebef;flex:0 0 auto}
.admin-ui .work-hours-note strong{display:block;font-size:8px;color:#3f4d62}
.admin-ui .work-hours-note small{display:block;font-size:6.5px;color:#8992a0;margin-top:2px;line-height:1.35}

@media(max-width:720px){
  .admin-ui .intelligence-stats{grid-template-columns:1fr}
  .admin-ui .event-brand{display:none}
}
.admin-ui .cal-event{display:block}
@media(max-width:1180px){.admin-ui .tag-line{display:flex}.admin-ui .cal-event-time{display:block}}

/* =========================================================
   JORIDEM Scheduling · v0.1.7
   Adaptive event cards + branded booking confirmation.
   ========================================================= */

/* Public booking confirmation / management */
.success-card-pro,.manage-card{max-width:720px;margin:64px auto 0;text-align:left}
.success-card-pro .success-icon{margin:0 0 18px}
.success-card-pro h1,.manage-card h1{margin:8px 0 10px;font-size:clamp(30px,4vw,44px);line-height:1.08;letter-spacing:-.045em;color:var(--brand-heading)}
.success-intro{margin:0 0 24px;color:var(--brand-muted);font-size:15px;line-height:1.65}
.confirmation-summary{display:grid;grid-template-columns:1fr 1fr;border:1px solid color-mix(in srgb,var(--brand-text) 10%,transparent);border-radius:calc(var(--brand-radius) - 6px);overflow:hidden;background:color-mix(in srgb,var(--brand-surface) 96%,var(--brand-primary) 4%)}
.confirmation-summary>div{display:grid;gap:5px;padding:15px 17px;border-bottom:1px solid color-mix(in srgb,var(--brand-text) 8%,transparent)}
.confirmation-summary>div:nth-child(odd){border-right:1px solid color-mix(in srgb,var(--brand-text) 8%,transparent)}
.confirmation-summary>div:nth-last-child(-n+2){border-bottom:0}
.confirmation-summary span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--brand-muted);font-weight:800}
.confirmation-summary strong{font-size:13px;line-height:1.35;color:var(--brand-text)}
.confirmation-actions,.manage-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}
.cta-inline{display:inline-flex;width:auto;align-items:center;justify-content:center;text-decoration:none}
.public-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:11px 15px;border-radius:12px;border:1px solid color-mix(in srgb,var(--brand-text) 14%,transparent);color:var(--brand-text);text-decoration:none;font-weight:800;background:transparent}
.public-secondary:hover{border-color:var(--brand-accent)}
.delivery-note{margin-top:18px;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--brand-accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--brand-accent) 22%,transparent);font-size:12px;line-height:1.5;color:var(--brand-muted)}
.delivery-warning{background:#fff7f2;border-color:#f0d8c7;color:#8e5b39}
.success-backlink{display:inline-block;margin-top:20px;color:var(--brand-muted);font-size:12px;text-decoration:none}
.success-backlink:hover{color:var(--brand-text)}
.cancel-form{margin-top:26px;padding-top:20px;border-top:1px solid color-mix(in srgb,var(--brand-text) 9%,transparent)}
.public-danger{border:0;background:transparent;color:#a44e45;font-weight:800;padding:6px 0;cursor:pointer}
.public-danger:hover{text-decoration:underline}
.reschedule-customer{display:grid;gap:3px;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--brand-accent) 7%,transparent);border:1px solid color-mix(in srgb,var(--brand-text) 10%,transparent)}
.reschedule-customer span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--brand-muted);font-weight:800}.reschedule-customer strong{font-size:13px}.reschedule-customer small{font-size:11px;color:var(--brand-muted)}
.static-option{cursor:default}.static-option:hover{transform:none}
.date-strip-seven{grid-template-columns:repeat(7,1fr)}
.public-empty-note{margin-top:14px}

/* Calendar event hierarchy v0.1.6: time + duration left, compact brand badge right, context tags below. */
.admin-ui .cal-event{background:color-mix(in srgb,var(--event-color) 6%,#fff);border:1px solid color-mix(in srgb,var(--event-color) 17%,#e7ebf0);border-left:3px solid var(--event-color);box-shadow:none}
.admin-ui .cal-event:hover{box-shadow:0 6px 16px rgba(22,34,54,.07);transform:translateY(-1px)}
.admin-ui .event-meta-line{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:4px;min-width:0}
.admin-ui .event-meta-text{display:flex;align-items:center;min-width:0;color:#758094;white-space:nowrap;overflow:hidden}
.admin-ui .event-time-range{font-size:6.3px;line-height:1;font-weight:800;color:#68758a;flex:0 0 auto;letter-spacing:-.01em}
.admin-ui .event-corner{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.admin-ui .event-signals{display:flex;align-items:center;gap:3px;flex:0 0 auto}
.admin-ui .event-status{width:11px;height:11px;font-size:6px}
.admin-ui .event-brand-badge{width:18px;height:18px;display:inline-grid;place-items:center;border-radius:6px;background:#17233b;color:#fff;font-size:6px;line-height:1;font-weight:900;letter-spacing:.04em;box-shadow:0 1px 2px rgba(18,31,51,.12);border:1px solid rgba(255,255,255,.16)}
.admin-ui .cal-event-main{min-width:0}
.admin-ui .cal-event-main strong{display:block;font-weight:850;color:#1e2b43;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-ui .event-subtitle{display:block;color:#7a8494;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-ui .tag-line{margin-top:4px;gap:3px;display:flex;align-items:center;min-width:0;overflow:hidden;white-space:nowrap}
.admin-ui .tag-line small{display:inline-flex;align-items:center;max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgba(255,255,255,.76);border-color:rgba(25,39,61,.07);color:#6a7485;font-weight:700}
.admin-ui .tag-line .tag-more{flex:0 0 auto;max-width:none}

/* Month: one context tag, compact badge. */
.admin-ui .calendar-month-shell .cal-event{padding:5px 6px 5px 7px}
.admin-ui .calendar-month-shell .event-meta-line{margin-bottom:3px}
.admin-ui .calendar-month-shell .event-time-range{font-size:5.8px}
.admin-ui .calendar-month-shell .event-brand-badge{width:15px;height:15px;border-radius:5px;font-size:5.1px}
.admin-ui .calendar-month-shell .cal-event-main strong{font-size:8px;line-height:1.15;margin-bottom:3px}
.admin-ui .calendar-month-shell .event-subtitle{display:none}
.admin-ui .calendar-month-shell .tag-line small{font-size:5.3px;padding:1px 4px}

/* Week / day: information density follows event duration. */
.admin-ui .cal-event-timeblock{padding:5px 7px 8px}
.admin-ui .cal-event-timeblock .cal-event-main strong{font-size:8.8px;line-height:1.08;margin:0}
.admin-ui .cal-event-timeblock .event-subtitle{font-size:6.3px;line-height:1.05;margin-top:2px}
.admin-ui .cal-event-timeblock .tag-line small{font-size:5.5px;padding:1px 4px}

.admin-ui .cal-event-timeblock.event-density-short{padding-top:4px}
.admin-ui .cal-event-timeblock.event-density-short .event-meta-line{margin-bottom:2px}
.admin-ui .cal-event-timeblock.event-density-short .event-brand-badge{width:14px;height:14px;font-size:4.9px;border-radius:5px}
.admin-ui .cal-event-timeblock.event-density-short .event-subtitle{display:none}
.admin-ui .cal-event-timeblock.event-density-short .tag-line{display:none}

.admin-ui .cal-event-timeblock.event-density-compact .event-subtitle{display:none}
.admin-ui .cal-event-timeblock.event-density-compact .tag-line{margin-top:3px}

.admin-ui .day-mode .cal-event-timeblock{padding:8px 10px 10px}
.admin-ui .day-mode .event-time-range{font-size:7px}
.admin-ui .day-mode .event-brand-badge{width:20px;height:20px;border-radius:7px;font-size:6.5px}
.admin-ui .day-mode .cal-event-timeblock .cal-event-main strong{font-size:11px;margin-top:1px}
.admin-ui .day-mode .cal-event-timeblock .event-subtitle{font-size:8px;margin-top:3px}
.admin-ui .day-mode .cal-event-timeblock .tag-line small{font-size:6.4px;padding:2px 5px;max-width:150px}
.admin-ui .day-mode .cal-event-timeblock.event-density-compact .event-subtitle{display:none}

/* Confirmed is the default and stays visually silent. Exceptional states remain visible. */
.admin-ui .event-status-confirmed{display:none}

@media(max-width:640px){
  .confirmation-summary{grid-template-columns:1fr}.confirmation-summary>div,.confirmation-summary>div:nth-child(odd){border-right:0;border-bottom:1px solid color-mix(in srgb,var(--brand-text) 8%,transparent)}.confirmation-summary>div:last-child{border-bottom:0}
  .date-strip-seven{grid-template-columns:repeat(3,1fr)}.date-strip-seven .date-chip:nth-child(n+4){display:none}
  .success-card-pro,.manage-card{margin-top:30px}
}

.admin-ui .notification-row{grid-template-columns:auto minmax(0,1fr) 110px auto 82px}
.admin-ui .message-type-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#f3f5f8;color:#4d5b71;border:1px solid #e6eaf0}
.admin-ui .message-type-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}
.admin-ui .row-action.muted{color:#a5adb8;pointer-events:none}
@media(max-width:760px){.admin-ui .notification-row{grid-template-columns:auto minmax(0,1fr) auto}.admin-ui .notification-row .booking-time,.admin-ui .notification-row .row-action{display:none}}
.admin-ui .contact-delivery{display:inline-flex!important;width:max-content;margin-top:5px;padding:3px 7px;border-radius:999px;background:#f2f5f8;color:#657286;font-size:6.5px!important;font-weight:800}
.admin-ui .contact-delivery[data-state="sent"]{background:#eaf6ef;color:#317459}.admin-ui .contact-delivery[data-state="failed"]{background:#fff0e8;color:#9b5a38}.admin-ui .contact-delivery[data-state="outbox"]{background:#f4f0e7;color:#826b42}

/* v0.1.7 · Availability Engine / Personal Time */
.admin-ui .availability-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:14px;align-items:start}
.admin-ui .availability-main,.admin-ui .availability-side,.admin-ui .availability-upcoming{min-width:0}
.admin-ui .compact-select{height:34px;min-width:170px;border:1px solid var(--os-line,#e5e9ef);border-radius:9px;background:#fff;padding:0 10px;font-size:9px;color:#28354b}
.admin-ui .availability-week{display:grid;gap:7px;margin-top:12px}
.admin-ui .availability-day{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;border:1px solid #e9edf2;border-radius:11px;background:#fff;padding:10px 12px}
.admin-ui .availability-day.is-closed{background:#fafbfc}
.admin-ui .availability-day-name{display:grid;gap:2px}.admin-ui .availability-day-name strong{font-size:10px;color:#223049}.admin-ui .availability-day-name span{font-size:7px;color:#8a94a3;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.admin-ui .availability-ranges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.admin-ui .availability-range{display:grid;grid-template-columns:1fr auto 1fr;gap:6px;align-items:center}.admin-ui .availability-range span{font-size:7px;color:#8a94a3}.admin-ui .availability-range input{height:32px;border:1px solid #e1e6ed;border-radius:8px;padding:0 8px;font-size:9px;background:#fff;color:#26344a}
.admin-ui .availability-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #edf0f4}
.admin-ui .input-suffix{display:grid;grid-template-columns:1fr auto;border:1px solid #e1e6ed;border-radius:9px;overflow:hidden;background:#fff}.admin-ui .input-suffix input{border:0!important;border-radius:0!important}.admin-ui .input-suffix span{display:flex;align-items:center;padding:0 10px;font-size:7px;color:#7e8898;background:#f7f8fa;border-left:1px solid #e7ebf0}
.admin-ui .availability-save{margin-top:14px}.admin-ui .availability-save>div{display:grid;gap:2px}.admin-ui .availability-save strong{font-size:9px}.admin-ui .availability-save span{font-size:7px;color:#7e8897}
.admin-ui .availability-copy{line-height:1.55;margin:4px 0 12px}.admin-ui .timeoff-form{display:grid;gap:9px}.admin-ui .two-col{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-ui .availability-checkbox{font-size:8px;color:#596578}.admin-ui .btn-full{width:100%}
.admin-ui .availability-upcoming{margin-top:14px}.admin-ui .timeoff-list{display:grid}.admin-ui .timeoff-row{display:grid;grid-template-columns:8px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f3}.admin-ui .timeoff-row:last-child{border-bottom:0}.admin-ui .timeoff-color{width:8px;height:28px;border-radius:999px}.admin-ui .timeoff-info{display:grid;gap:3px;min-width:0}.admin-ui .timeoff-info strong{font-size:9px;color:#243249;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-ui .timeoff-info>span{font-size:7px;color:#7f8998}.admin-ui .privacy-chip{display:inline-flex;margin-left:6px;padding:2px 5px;border-radius:999px;background:#f0edf9;color:#65568f;font-size:6px;vertical-align:middle}.admin-ui .btn-small{padding:6px 9px;font-size:7px}
.admin-ui .all-day-calendar-row{display:grid;grid-template-columns:72px 1fr;border-bottom:1px solid #e8ecf1;background:#fbfcfd}.admin-ui .all-day-gutter{padding:8px 8px;font-size:6px;text-transform:uppercase;letter-spacing:.08em;color:#8b95a4;font-weight:850;border-right:1px solid #e8ecf1}.admin-ui .all-day-columns{display:grid;grid-template-columns:repeat(var(--day-count),minmax(0,1fr))}.admin-ui .all-day-column{min-height:38px;padding:4px;border-right:1px solid #edf0f4}.admin-ui .all-day-column:last-child{border-right:0}.admin-ui .all-day-column .cal-event{padding:4px 5px}.admin-ui .all-day-column .event-subtitle,.admin-ui .all-day-column .tag-line{display:none}.admin-ui .all-day-column .event-time-range{font-size:0}.admin-ui .all-day-column .event-time-range::after{content:'Ganztägig';font-size:5.8px}
.admin-ui .event-status-private{background:#f0edf9!important;color:#65568f!important}

@media(max-width:1050px){.admin-ui .availability-grid{grid-template-columns:1fr}.admin-ui .availability-ranges{grid-template-columns:1fr}.admin-ui .availability-rules{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:720px){.admin-ui .availability-day{grid-template-columns:1fr}.admin-ui .availability-rules,.admin-ui .two-col{grid-template-columns:1fr}.admin-ui .all-day-calendar-row{min-width:920px}}

/* v0.1.8 · Availability UX Redesign */
.admin-ui .availability-topbar{align-items:center;margin-bottom:16px}
.admin-ui .availability-top-actions{display:flex;align-items:flex-end;gap:10px}
.admin-ui .advisor-picker{display:grid;gap:5px;min-width:210px}
.admin-ui .advisor-picker label{font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:820;color:#8a94a3}
.admin-ui .advisor-picker select{height:36px;border:1px solid #dfe4eb;border-radius:9px;background:#fff;padding:0 11px;font-size:10px;color:#26344a}
.admin-ui .availability-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.admin-ui .availability-summary-card{min-height:92px;padding:14px 15px;background:#fff;border:1px solid var(--os-line);border-radius:14px;box-shadow:var(--os-shadow);display:grid;align-content:center;gap:4px}
.admin-ui .availability-summary-card.emphasis{background:linear-gradient(145deg,#fff,#fdfaf5);border-color:#e5d8c1}
.admin-ui .summary-label{font-size:7px;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:#949dab}
.admin-ui .availability-summary-card strong{font-size:19px;letter-spacing:-.035em;color:#1d2b41;line-height:1.15}
.admin-ui .availability-summary-card small{font-size:8px;color:#8993a2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.admin-ui .availability-config-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.58fr);gap:14px;align-items:start}
.admin-ui .availability-schedule-card,.admin-ui .availability-rules-card,.admin-ui .availability-block-card,.admin-ui .availability-upcoming-v2{min-width:0}
.admin-ui .availability-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}
.admin-ui .availability-section-head.compact{margin-bottom:11px}
.admin-ui .availability-section-head h2{font-size:14px;letter-spacing:-.025em;margin:3px 0 0;color:#1c293e}
.admin-ui .availability-section-head p{font-size:9px;line-height:1.5;color:#8b95a4;margin:5px 0 0;max-width:620px}
.admin-ui .profile-state{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid #dce9e2;border-radius:999px;background:#f6fbf8;color:#4d745f;font-size:7px;font-weight:760;white-space:nowrap}
.admin-ui .profile-state span{width:6px;height:6px;border-radius:50%;background:#43ab78}

.admin-ui .availability-presets{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px;background:#f7f8fa;border:1px solid #ebeff3;border-radius:10px;margin-bottom:10px}
.admin-ui .availability-presets>span{font-size:7px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#929ba9;margin:0 3px}
.admin-ui .availability-presets button{border:1px solid #dfe4eb;background:#fff;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:720;color:#536176;cursor:pointer;transition:.14s ease}
.admin-ui .availability-presets button:hover{border-color:#cbd3de;background:#fffdf9;color:#2c3b52;transform:translateY(-1px)}

.admin-ui .availability-week-v2{display:grid;gap:6px}
.admin-ui .availability-day-v2{display:grid;grid-template-columns:155px minmax(0,1fr);gap:12px;align-items:center;min-height:54px;padding:8px 10px;border:1px solid #e7ebf0;border-radius:11px;background:#fff;transition:.15s ease}
.admin-ui .availability-day-v2.is-closed{background:#fafbfc;border-color:#eef1f4}
.admin-ui .availability-day-v2.is-open:hover{border-color:#d9dfe7;box-shadow:0 5px 18px rgba(25,37,57,.035)}
.admin-ui .day-toggle-zone{display:flex;align-items:center;gap:10px;min-width:0}
.admin-ui .day-copy{display:grid;gap:2px}
.admin-ui .day-copy strong{font-size:10px;color:#243149}
.admin-ui .day-copy span{font-size:7px;text-transform:uppercase;letter-spacing:.075em;font-weight:820;color:#9aa3b0}
.admin-ui .availability-day-v2.is-open .day-copy span{color:#4f8367}
.admin-ui .day-switch{position:relative;width:30px;height:18px;flex:0 0 auto}
.admin-ui .day-switch input{position:absolute;opacity:0;pointer-events:none}
.admin-ui .switch-ui{position:absolute;inset:0;border-radius:999px;background:#dfe4ea;transition:.18s ease;box-shadow:inset 0 0 0 1px rgba(42,56,77,.04)}
.admin-ui .switch-ui::after{content:"";position:absolute;width:12px;height:12px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(30,42,60,.18);transition:.18s ease}
.admin-ui .day-switch input:checked + .switch-ui{background:#20304a}
.admin-ui .day-switch input:checked + .switch-ui::after{transform:translateX(12px)}
.admin-ui .day-ranges{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}
.admin-ui .availability-day-v2.is-closed .day-ranges{opacity:.48}
.admin-ui .day-range-chip{display:flex;align-items:center;gap:5px;padding:4px 5px 4px 7px;background:#f8f9fb;border:1px solid #e5e9ee;border-radius:8px}
.admin-ui .day-range-chip input{width:70px;border:0!important;background:transparent!important;padding:0!important;height:24px!important;font-size:9px!important;color:#26354a!important;box-shadow:none!important}
.admin-ui .day-range-chip>span{font-size:8px;color:#a1a9b5}
.admin-ui .range-remove{width:20px;height:20px;border:0;border-radius:6px;background:transparent;color:#a4acb7;cursor:pointer;font-size:15px;line-height:18px;padding:0}
.admin-ui .range-remove:hover{background:#eef1f4;color:#657184}
.admin-ui .add-range{border:0;background:transparent;color:#607089;font-size:8px;font-weight:760;padding:6px 5px;cursor:pointer;white-space:nowrap}
.admin-ui .add-range:hover{color:#273951}

.admin-ui .availability-rules-card{position:sticky;top:70px}
.admin-ui .rule-control-list{display:grid;gap:7px}
.admin-ui .rule-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid #e8ecf1;border-radius:10px;background:#fbfcfd}
.admin-ui .rule-control>span{display:grid;gap:2px}
.admin-ui .rule-control strong{font-size:9px;color:#27354a}
.admin-ui .rule-control small{font-size:7px;color:#929ba9;line-height:1.45}
.admin-ui .rule-input{display:grid;grid-template-columns:50px auto;align-items:center;border:1px solid #dfe4eb;border-radius:8px;overflow:hidden;background:#fff;height:32px}
.admin-ui .rule-input input{width:50px!important;border:0!important;border-radius:0!important;padding:0 7px!important;text-align:right;font-size:9px!important;box-shadow:none!important}
.admin-ui .rule-input b{height:100%;display:flex;align-items:center;padding:0 7px;border-left:1px solid #e9edf1;background:#f7f8fa;color:#7d8796;font-size:7px;font-weight:760}
.admin-ui .rule-control select{height:32px;min-width:86px;border:1px solid #dfe4eb;border-radius:8px;background:#fff;padding:0 8px;font-size:9px;color:#2e3c52}
.admin-ui .rule-info-box{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start;margin-top:10px;padding:10px;border-radius:10px;background:#f8f5ee;border:1px solid #eee4d1}
.admin-ui .rule-info-dot{width:7px;height:7px;border-radius:50%;background:#ba9459;margin-top:3px}
.admin-ui .rule-info-box div{display:grid;gap:2px}.admin-ui .rule-info-box strong{font-size:8px;color:#63543d}.admin-ui .rule-info-box small{font-size:7px;color:#8b7d68;line-height:1.5}
.admin-ui .availability-save-v2{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 14px;padding:10px 12px;border:1px solid #e0e5eb;border-radius:11px;background:rgba(255,255,255,.96);box-shadow:0 9px 24px rgba(20,31,50,.045)}
.admin-ui .availability-save-v2>div{display:grid;gap:2px}.admin-ui .availability-save-v2 strong{font-size:9px;color:#2b394f}.admin-ui .availability-save-v2 span{font-size:7px;color:#8b95a3}

.admin-ui .availability-block-card{margin-top:0}
.admin-ui .blocker-layout{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.45fr);gap:14px;align-items:start}
.admin-ui .blocker-types{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.admin-ui .blocker-type{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;text-align:left;border:1px solid #e5e9ef;border-radius:10px;background:#fbfcfd;padding:9px;cursor:pointer;color:#334159;transition:.14s ease}
.admin-ui .blocker-type:hover{background:#fff;border-color:#d7dde6;transform:translateY(-1px)}
.admin-ui .blocker-type.active{border-color:#cdb58d;background:#fffaf3;box-shadow:inset 2px 0 0 #b9955a}
.admin-ui .blocker-type-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#eff2f6;color:#667388;font-size:8px;font-weight:850;letter-spacing:-.02em}
.admin-ui .blocker-type.active .blocker-type-icon{background:#f0e5d3;color:#7d623b}
.admin-ui .blocker-type>span:last-child{display:grid;gap:2px;min-width:0}.admin-ui .blocker-type strong{font-size:9px;color:#26344a}.admin-ui .blocker-type small{font-size:7px;color:#959eab;line-height:1.35}
.admin-ui .quick-block-form{border:1px solid #e4e8ed;border-radius:12px;background:#fff;padding:12px}
.admin-ui .quick-block-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid #edf0f3}
.admin-ui .quick-block-heading>div{display:grid;gap:2px}.admin-ui .quick-block-heading>div span{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:#929ba9;font-weight:820}.admin-ui .quick-block-heading strong{font-size:11px;color:#233149}
.admin-ui .privacy-toggle,.admin-ui .all-day-toggle{display:inline-flex;align-items:center;gap:7px;font-size:8px;font-weight:710;color:#59667a;cursor:pointer;white-space:nowrap}
.admin-ui .privacy-toggle input,.admin-ui .all-day-toggle input{position:absolute;opacity:0;pointer-events:none}
.admin-ui .privacy-toggle>span,.admin-ui .all-day-toggle>span{width:28px;height:17px;border-radius:999px;background:#dfe4ea;position:relative;transition:.18s}
.admin-ui .privacy-toggle>span::after,.admin-ui .all-day-toggle>span::after{content:"";position:absolute;width:11px;height:11px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(30,42,60,.18);transition:.18s}
.admin-ui .privacy-toggle input:checked + span,.admin-ui .all-day-toggle input:checked + span{background:#20304a}
.admin-ui .privacy-toggle input:checked + span::after,.admin-ui .all-day-toggle input:checked + span::after{transform:translateX(11px)}
.admin-ui .quick-block-fields{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(4,minmax(105px,.55fr));gap:8px;align-items:end}
.admin-ui .quick-block-fields .field{gap:4px}.admin-ui .quick-block-fields .field label{font-size:8px}.admin-ui .quick-block-fields .field label span{font-weight:500;color:#a0a8b3}
.admin-ui .quick-block-fields .field input{height:34px;padding:7px 9px;font-size:9px}
.admin-ui .quick-block-fields .field-note{grid-column:1/-1}
.admin-ui .quick-block-fields .field-note input{height:34px}
.admin-ui .quick-block-fields .all-day-toggle{align-self:center;justify-self:start;margin-top:16px}
.admin-ui .quick-block-fields [hidden]{display:none!important}
.admin-ui .quick-block-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid #edf0f3}
.admin-ui .quick-block-footer>span{font-size:7px;color:#8b95a3}

.admin-ui .availability-upcoming-v2{margin-top:14px}
.admin-ui .count-pill{display:inline-flex;align-items:center;padding:5px 7px;border-radius:999px;background:#f3f5f8;color:#768193;font-size:7px;font-weight:760;white-space:nowrap}
.admin-ui .availability-empty-v2{min-height:105px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#8b95a4}
.admin-ui .availability-empty-v2>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#edf7f1;color:#397a59;font-size:11px;margin-bottom:7px}.admin-ui .availability-empty-v2 strong{font-size:9px;color:#5d687a}.admin-ui .availability-empty-v2 small{font-size:7px;margin-top:3px}
.admin-ui .timeoff-list-v2{display:grid}
.admin-ui .timeoff-row-v2{display:grid;grid-template-columns:6px 170px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:48px;padding:8px 2px;border-top:1px solid #eef1f4}
.admin-ui .timeoff-row-v2:first-child{border-top:0}
.admin-ui .timeoff-row-v2 .timeoff-color{width:6px;height:28px;border-radius:999px}
.admin-ui .timeoff-date{display:grid;gap:2px}.admin-ui .timeoff-date strong{font-size:8px;color:#405067}.admin-ui .timeoff-date span{font-size:7px;color:#98a1ae}
.admin-ui .timeoff-title{display:flex;align-items:center;gap:6px;min-width:0}.admin-ui .timeoff-title strong{font-size:9px;color:#26344a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:1180px){
  .admin-ui .availability-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-ui .availability-config-grid{grid-template-columns:1fr}.admin-ui .availability-rules-card{position:relative;top:auto}
  .admin-ui .rule-control-list{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-ui .rule-control{grid-template-columns:1fr;align-items:start}.admin-ui .rule-input,.admin-ui .rule-control select{justify-self:start}
  .admin-ui .blocker-layout{grid-template-columns:1fr}.admin-ui .blocker-types{grid-template-columns:repeat(3,1fr)}
  .admin-ui .quick-block-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-ui .quick-block-fields .field-title{grid-column:span 2}.admin-ui .quick-block-fields .field-note{grid-column:1/-1}
}
@media(max-width:820px){
  .admin-ui .availability-topbar{align-items:flex-start}.admin-ui .availability-top-actions{width:100%;align-items:stretch;flex-wrap:wrap}.admin-ui .advisor-picker{flex:1;min-width:180px}
  .admin-ui .availability-day-v2{grid-template-columns:130px minmax(0,1fr)}
  .admin-ui .blocker-types{grid-template-columns:1fr 1fr}
  .admin-ui .quick-block-fields{grid-template-columns:1fr 1fr}.admin-ui .quick-block-fields .field-title{grid-column:1/-1}
  .admin-ui .timeoff-row-v2{grid-template-columns:6px 1fr auto}.admin-ui .timeoff-date{grid-column:2}.admin-ui .timeoff-title{grid-column:2;grid-row:2}.admin-ui .timeoff-row-v2 form{grid-column:3;grid-row:1/3}
}
@media(max-width:620px){
  .admin-ui .availability-summary{grid-template-columns:1fr 1fr}.admin-ui .availability-summary-card{min-height:82px}
  .admin-ui .availability-day-v2{grid-template-columns:1fr;align-items:start}.admin-ui .day-ranges{padding-left:40px}.admin-ui .day-range-chip{width:max-content}
  .admin-ui .availability-presets{align-items:stretch}.admin-ui .availability-presets>span{width:100%}.admin-ui .availability-presets button{flex:1}
  .admin-ui .rule-control-list{grid-template-columns:1fr}.admin-ui .blocker-types{grid-template-columns:1fr}
  .admin-ui .quick-block-heading,.admin-ui .quick-block-footer,.admin-ui .availability-save-v2{align-items:flex-start;flex-direction:column}
  .admin-ui .quick-block-fields{grid-template-columns:1fr}.admin-ui .quick-block-fields .field-title,.admin-ui .quick-block-fields .field-note{grid-column:auto}
  .admin-ui .quick-block-footer .btn,.admin-ui .availability-save-v2 .btn{width:100%}
}

/* =========================================================
   JORIDEM Scheduling · v0.1.9
   Availability Premium Workspace
   ========================================================= */
.admin-ui .av9-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:16px}
.admin-ui .av9-heading-copy h1{margin:0;font-size:30px;letter-spacing:-.04em;line-height:1.05;color:#17233b}
.admin-ui .av9-heading-copy .subtitle{font-size:13px;margin-top:8px}
.admin-ui .av9-head-actions{display:flex;align-items:flex-end;gap:10px}
.admin-ui .av9-advisor-picker{display:grid;gap:6px;min-width:210px}
.admin-ui .av9-advisor-picker label{font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:#8c96a5}
.admin-ui .av9-advisor-picker select{height:42px;border:1px solid #dde3ea;border-radius:11px;background:#fff;padding:0 12px;font-size:12px;font-weight:650;color:#253249;box-shadow:0 5px 18px rgba(21,32,51,.025)}
.admin-ui .av9-primary-action{height:42px;padding-inline:16px;border-radius:11px;font-size:12px;box-shadow:0 8px 22px rgba(23,35,59,.14)}
.admin-ui .av9-btn-plus{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:5px;background:rgba(255,255,255,.12);font-size:14px}

.admin-ui .av9-live-strip{display:flex;align-items:center;gap:11px;padding:12px 14px;margin-bottom:14px;border:1px solid #dceae2;border-radius:13px;background:linear-gradient(90deg,#f8fcfa,#fff);box-shadow:0 7px 24px rgba(34,101,73,.025)}
.admin-ui .av9-live-dot{width:9px;height:9px;border-radius:50%;background:#2f9b69;box-shadow:0 0 0 5px rgba(47,155,105,.08);flex:0 0 auto}
.admin-ui .av9-live-strip>div{display:flex;align-items:baseline;gap:8px;min-width:0}
.admin-ui .av9-live-strip strong{font-size:11px;color:#315f4c}
.admin-ui .av9-live-strip span{font-size:10px;color:#72857b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.admin-ui .av9-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.admin-ui .av9-metric-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-height:102px;padding:16px;background:#fff;border:1px solid #e3e7ed;border-radius:15px;box-shadow:0 11px 35px rgba(21,32,51,.035)}
.admin-ui .av9-metric-card.av9-metric-accent{background:linear-gradient(145deg,#fff,#fdfaf5);border-color:#eadfcd}
.admin-ui .av9-metric-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#f3f5f8;color:#4b5970}
.admin-ui .av9-metric-accent .av9-metric-icon{background:#f4eadb;color:#91703e}
.admin-ui .av9-metric-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.admin-ui .av9-metric-card>div{display:grid;gap:3px;min-width:0}
.admin-ui .av9-metric-card>div>span{font-size:9px;text-transform:uppercase;letter-spacing:.085em;font-weight:850;color:#929baa}
.admin-ui .av9-metric-card strong{font-size:18px;letter-spacing:-.025em;color:#1f2d43;line-height:1.15}
.admin-ui .av9-metric-card small{font-size:10px;color:#8a94a2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.admin-ui .av9-workspace-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.62fr);gap:14px;align-items:start}
.admin-ui .av9-schedule-card,.admin-ui .av9-rules-card,.admin-ui .av9-block-card,.admin-ui .av9-upcoming-card{padding:20px;border-radius:16px}
.admin-ui .av9-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}
.admin-ui .av9-section-head-small{margin-bottom:13px}
.admin-ui .av9-section-head h2{margin:4px 0 0;font-size:18px;letter-spacing:-.025em;color:#1b2940}
.admin-ui .av9-section-head p{margin:6px 0 0;max-width:650px;font-size:11px;line-height:1.55;color:#7d8796}
.admin-ui .av9-section-head .section-kicker{font-size:8px;letter-spacing:.12em;color:#a17e48;font-weight:900;text-transform:uppercase}
.admin-ui .av9-state-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;border:1px solid #d9e8df;background:#f5faf7;color:#4c765f;font-size:9px;font-weight:800;white-space:nowrap}
.admin-ui .av9-state-pill i{width:7px;height:7px;border-radius:50%;background:#39a46e}

.admin-ui .av9-presets{display:grid;grid-template-columns:155px minmax(0,1fr);gap:12px;align-items:center;padding:11px 12px;margin-bottom:12px;border:1px solid #e8ecf1;border-radius:12px;background:#f8f9fb}
.admin-ui .av9-presets-label{display:grid;gap:2px}
.admin-ui .av9-presets-label strong{font-size:10px;color:#425068}
.admin-ui .av9-presets-label span{font-size:8px;color:#969fac}
.admin-ui .av9-preset-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.admin-ui .av9-preset-actions button{min-height:32px;padding:6px 10px;border:1px solid #dce2e9;border-radius:9px;background:#fff;color:#48566d;font-size:9px;font-weight:760;cursor:pointer;transition:.15s ease;box-shadow:0 2px 8px rgba(21,32,51,.02)}
.admin-ui .av9-preset-actions button:hover{border-color:#c8d0da;color:#233149;transform:translateY(-1px);box-shadow:0 5px 14px rgba(21,32,51,.05)}
.admin-ui .av9-preset-actions button.is-muted{color:#7f8998;background:#fbfcfd}

.admin-ui .av9-week-list{display:grid;gap:7px}
.admin-ui .av9-day{display:grid;grid-template-columns:170px minmax(0,1fr);gap:14px;align-items:center;min-height:62px;padding:9px 11px;border:1px solid #e6eaf0;border-radius:12px;background:#fff;transition:.16s ease}
.admin-ui .av9-day.is-open:hover{border-color:#d6dde6;box-shadow:0 8px 22px rgba(21,32,51,.035)}
.admin-ui .av9-day.is-closed{background:#fafbfc;border-color:#edf0f3}
.admin-ui .av9-day-identity{display:flex;align-items:center;gap:10px;min-width:0}
.admin-ui .av9-switch{position:relative;width:36px;height:21px;flex:0 0 auto;cursor:pointer}
.admin-ui .av9-switch input{position:absolute;opacity:0;pointer-events:none}
.admin-ui .av9-switch>span{position:absolute;inset:0;border-radius:999px;background:#dce2e8;transition:.18s ease}
.admin-ui .av9-switch>span::after{content:"";position:absolute;left:3px;top:3px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(23,35,59,.18);transition:.18s ease}
.admin-ui .av9-switch input:checked + span{background:#20304a}
.admin-ui .av9-switch input:checked + span::after{transform:translateX(15px)}
.admin-ui .av9-day-name{display:grid;gap:2px}
.admin-ui .av9-day-name strong{font-size:12px;color:#233149}
.admin-ui .av9-day-name span{font-size:8px;text-transform:uppercase;letter-spacing:.075em;font-weight:850;color:#9aa3b0}
.admin-ui .av9-day.is-open .av9-day-name span{color:#4e8668}
.admin-ui .av9-day-times{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0}
.admin-ui .av9-closed-note{display:none;align-items:center;gap:8px;color:#9aa3b0;font-size:10px}
.admin-ui .av9-closed-note>span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#f0f2f5;color:#a8b0bc}
.admin-ui .av9-day.is-closed .av9-closed-note{display:flex}
.admin-ui .av9-day.is-closed .av9-time-range,.admin-ui .av9-day.is-closed .av9-add-range{display:none!important}
.admin-ui .av9-time-range{display:flex;align-items:center;gap:5px;min-height:36px;padding:4px 5px 4px 7px;border:1px solid #e1e6ec;border-radius:10px;background:#f8fafb;transition:.14s ease}
.admin-ui .av9-time-range:focus-within{background:#fff;border-color:#bfc9d5;box-shadow:0 0 0 3px rgba(23,35,59,.04)}
.admin-ui .av9-clock{width:19px;height:19px;display:grid;place-items:center;color:#8c96a5}
.admin-ui .av9-clock svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.admin-ui .av9-time-range input{width:74px!important;height:28px!important;padding:0!important;border:0!important;background:transparent!important;font-size:10px!important;font-weight:700;color:#2d3a50!important;box-shadow:none!important;outline:none!important}
.admin-ui .av9-time-dash{font-size:10px;color:#a2aab5}
.admin-ui .av9-remove-range{width:24px;height:24px;border:0;border-radius:7px;background:transparent;color:#a2abb7;font-size:16px;line-height:1;cursor:pointer;padding:0}
.admin-ui .av9-remove-range:hover{background:#edf0f3;color:#5e6c80}
.admin-ui .av9-add-range{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:5px 7px;border:0;background:transparent;color:#607089;font-size:9px;font-weight:780;cursor:pointer}
.admin-ui .av9-add-range span{display:grid;place-items:center;width:18px;height:18px;border-radius:6px;background:#eef1f5;color:#536176;font-size:12px}
.admin-ui .av9-add-range:hover{color:#26364f}

.admin-ui .av9-rules-card{position:sticky;top:64px}
.admin-ui .av9-rule-list{display:grid;gap:8px}
.admin-ui .av9-rule-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid #e7ebf0;border-radius:11px;background:#fbfcfd}
.admin-ui .av9-rule-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#f0f3f6;color:#627088}
.admin-ui .av9-rule-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.admin-ui .av9-rule-copy{display:grid;gap:3px;min-width:0}
.admin-ui .av9-rule-copy strong{font-size:10px;color:#27364d}
.admin-ui .av9-rule-copy small{font-size:8px;line-height:1.45;color:#929baa}
.admin-ui .av9-number-control{display:grid;grid-template-columns:48px auto;height:34px;overflow:hidden;border:1px solid #dbe1e8;border-radius:9px;background:#fff}
.admin-ui .av9-number-control input{width:48px!important;border:0!important;padding:0 6px!important;text-align:right;font-size:10px!important;font-weight:750;box-shadow:none!important}
.admin-ui .av9-number-control b{display:flex;align-items:center;padding:0 7px;border-left:1px solid #e8ecf0;background:#f7f8fa;color:#808a98;font-size:8px}
.admin-ui .av9-rule-row select{height:34px;min-width:94px;border:1px solid #dbe1e8;border-radius:9px;background:#fff;padding:0 9px;font-size:10px;font-weight:700;color:#334157}
.admin-ui .av9-rule-preview{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:start;margin-top:11px;padding:11px;border:1px solid #ebe1d2;border-radius:11px;background:linear-gradient(135deg,#fdfaf5,#fff)}
.admin-ui .av9-rule-preview-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#efe4d4;color:#86663a;font-size:11px;font-weight:900}
.admin-ui .av9-rule-preview div{display:grid;gap:3px}.admin-ui .av9-rule-preview strong{font-size:9px;color:#66543a}.admin-ui .av9-rule-preview small{font-size:8px;line-height:1.5;color:#8c806e}

.admin-ui .av9-savebar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 14px;padding:11px 13px;border:1px solid #e1e6eb;border-radius:12px;background:rgba(255,255,255,.97);box-shadow:0 8px 26px rgba(21,32,51,.035)}
.admin-ui .av9-savebar>div{display:flex;align-items:center;gap:9px}.admin-ui .av9-save-dot{width:8px;height:8px;border-radius:50%;background:#c39a5a;box-shadow:0 0 0 4px rgba(195,154,90,.08)}
.admin-ui .av9-savebar p{display:grid;gap:2px;margin:0}.admin-ui .av9-savebar strong{font-size:10px;color:#334158}.admin-ui .av9-savebar small{font-size:8px;color:#8d96a4}

.admin-ui .av9-block-card{scroll-margin-top:64px;margin-top:0}
.admin-ui .av9-privacy-note{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #e4e8ee;border-radius:999px;background:#fafbfc;color:#778294;font-size:8px;font-weight:700;white-space:nowrap}
.admin-ui .av9-privacy-note svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7}
.admin-ui .av9-block-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.3fr);gap:14px;align-items:start}
.admin-ui .av9-block-types{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.admin-ui .av9-block-type{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) 22px;gap:10px;align-items:center;min-height:66px;padding:10px;border:1px solid #e4e9ef;border-radius:12px;background:#fbfcfd;text-align:left;color:#344158;cursor:pointer;transition:.15s ease}
.admin-ui .av9-block-type:hover{background:#fff;border-color:#d3dae3;transform:translateY(-1px);box-shadow:0 7px 20px rgba(21,32,51,.035)}
.admin-ui .av9-block-type.active{background:linear-gradient(135deg,#fffaf3,#fff);border-color:#d8bf97;box-shadow:inset 3px 0 0 #bd9252,0 8px 24px rgba(120,89,45,.05)}
.admin-ui .av9-block-symbol{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#eff2f6;color:#657287;font-size:10px;font-weight:900;letter-spacing:-.02em}
.admin-ui .av9-block-type.active .av9-block-symbol{background:#eee0cc;color:#7b5b30}
.admin-ui .av9-block-copy{display:grid;gap:3px;min-width:0}.admin-ui .av9-block-copy strong{font-size:10px;color:#27354a}.admin-ui .av9-block-copy small{font-size:8px;line-height:1.4;color:#929baa}
.admin-ui .av9-block-check{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#eef1f4;color:transparent;font-size:9px;font-weight:900}
.admin-ui .av9-block-type.active .av9-block-check{background:#e8f3ec;color:#367554}

.admin-ui .av9-quick-form{border:1px solid #e2e7ed;border-radius:14px;background:#fff;padding:14px;box-shadow:0 8px 24px rgba(21,32,51,.025)}
.admin-ui .av9-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:11px;margin-bottom:12px;border-bottom:1px solid #edf0f3}
.admin-ui .av9-form-head>div{display:grid;gap:2px}.admin-ui .av9-form-head>div span{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#929baa;font-weight:850}.admin-ui .av9-form-head strong{font-size:13px;color:#243249}
.admin-ui .av9-privacy-toggle,.admin-ui .av9-all-day-toggle{display:inline-flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap;color:#59667a}
.admin-ui .av9-privacy-toggle input,.admin-ui .av9-all-day-toggle input{position:absolute;opacity:0;pointer-events:none}
.admin-ui .av9-privacy-toggle>span,.admin-ui .av9-all-day-toggle>span{position:relative;width:32px;height:19px;border-radius:999px;background:#dfe4ea;transition:.18s}
.admin-ui .av9-privacy-toggle>span::after,.admin-ui .av9-all-day-toggle>span::after{content:"";position:absolute;left:3px;top:3px;width:13px;height:13px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(30,42,60,.18);transition:.18s}
.admin-ui .av9-privacy-toggle input:checked + span,.admin-ui .av9-all-day-toggle input:checked + span{background:#20304a}
.admin-ui .av9-privacy-toggle input:checked + span::after,.admin-ui .av9-all-day-toggle input:checked + span::after{transform:translateX(13px)}
.admin-ui .av9-privacy-toggle b,.admin-ui .av9-all-day-toggle b{font-size:9px;font-weight:750}
.admin-ui .av9-form-grid{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(3,minmax(115px,.6fr));gap:9px;align-items:end}
.admin-ui .av9-field{display:grid;gap:5px}.admin-ui .av9-field>span{font-size:9px;font-weight:800;color:#58667a}.admin-ui .av9-field em{font-style:normal;font-weight:550;color:#a1a9b5}
.admin-ui .av9-field input{height:38px;width:100%;border:1px solid #dfe4eb;border-radius:10px;background:#fff;padding:0 10px;font-size:10px;color:#2d3a50;outline:none;transition:.14s}
.admin-ui .av9-field input:focus{border-color:#b9c4d0;box-shadow:0 0 0 3px rgba(23,35,59,.04)}
.admin-ui .av9-field-title{grid-column:span 2}
.admin-ui .av9-field-note{grid-column:1/-1}
.admin-ui .av9-all-day-wrap{height:38px;display:flex;align-items:center;padding:0 2px}
.admin-ui .av9-form-grid [hidden]{display:none!important}
.admin-ui .av9-form-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid #edf0f3}
.admin-ui .av9-form-info{display:flex;align-items:center;gap:7px;color:#87919f}.admin-ui .av9-form-info>span{width:20px;height:20px;border-radius:7px;background:#f0f2f5;display:grid;place-items:center;font-size:9px;font-weight:900}.admin-ui .av9-form-info small{font-size:8px}

.admin-ui .av9-upcoming-card{margin-top:14px}
.admin-ui .av9-count{padding:6px 9px;border-radius:999px;background:#f1f3f6;color:#727e90;font-size:8px;font-weight:800}
.admin-ui .av9-empty{min-height:108px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px dashed #dfe5eb;border-radius:12px;background:#fbfcfd}
.admin-ui .av9-empty-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#eaf5ef;color:#357857;font-size:12px;font-weight:900}
.admin-ui .av9-empty>div{display:grid;gap:3px}.admin-ui .av9-empty strong{font-size:10px;color:#425067}.admin-ui .av9-empty small{font-size:8px;color:#919aa8}
.admin-ui .av9-timeoff-list{display:grid}
.admin-ui .av9-timeoff-row{display:grid;grid-template-columns:6px 190px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:58px;padding:10px 2px;border-top:1px solid #edf0f3}
.admin-ui .av9-timeoff-row:first-child{border-top:0}
.admin-ui .av9-timeoff-accent{width:6px;height:32px;border-radius:999px;background:var(--timeoff-color)}
.admin-ui .av9-timeoff-date{display:grid;gap:3px}.admin-ui .av9-timeoff-date strong{font-size:9px;color:#3e4d63}.admin-ui .av9-timeoff-date span{font-size:8px;color:#949daa}
.admin-ui .av9-timeoff-main{display:grid;gap:5px;min-width:0}.admin-ui .av9-timeoff-main>strong{font-size:10px;color:#28364c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-ui .av9-timeoff-main>div{display:flex;gap:5px;flex-wrap:wrap}
.admin-ui .av9-private-chip,.admin-ui .av9-blocked-chip{display:inline-flex;padding:3px 6px;border-radius:999px;font-size:7px;font-weight:760}.admin-ui .av9-private-chip{background:#f0edf8;color:#695a8d}.admin-ui .av9-blocked-chip{background:#f2f4f7;color:#6a7586}
.admin-ui .av9-row-action{height:30px;padding:0 10px;border:1px solid #e1e5ea;border-radius:8px;background:#fff;color:#778293;font-size:8px;font-weight:760;cursor:pointer}.admin-ui .av9-row-action:hover{border-color:#d2d8df;color:#4b596e;background:#fafbfc}

@media(max-width:1280px){
  .admin-ui .av9-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-ui .av9-workspace-grid{grid-template-columns:1fr}.admin-ui .av9-rules-card{position:relative;top:auto}
  .admin-ui .av9-rule-list{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-ui .av9-rule-row{grid-template-columns:32px minmax(0,1fr);align-items:start}.admin-ui .av9-rule-row>.av9-number-control,.admin-ui .av9-rule-row>select{grid-column:2;justify-self:start}
  .admin-ui .av9-block-layout{grid-template-columns:1fr}.admin-ui .av9-block-types{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .admin-ui .av9-page-head{flex-direction:column}.admin-ui .av9-head-actions{width:100%;flex-wrap:wrap}.admin-ui .av9-advisor-picker{flex:1}
  .admin-ui .av9-live-strip>div{display:grid;gap:2px}.admin-ui .av9-live-strip span{white-space:normal}
  .admin-ui .av9-presets{grid-template-columns:1fr}.admin-ui .av9-preset-actions{justify-content:flex-start}
  .admin-ui .av9-day{grid-template-columns:145px minmax(0,1fr)}
  .admin-ui .av9-rule-list{grid-template-columns:1fr}
  .admin-ui .av9-block-types{grid-template-columns:1fr 1fr}
  .admin-ui .av9-form-grid{grid-template-columns:1fr 1fr}.admin-ui .av9-field-title,.admin-ui .av9-field-note{grid-column:1/-1}
  .admin-ui .av9-timeoff-row{grid-template-columns:6px 1fr auto}.admin-ui .av9-timeoff-date{grid-column:2}.admin-ui .av9-timeoff-main{grid-column:2;grid-row:2}.admin-ui .av9-timeoff-row form{grid-column:3;grid-row:1/3}
}
@media(max-width:640px){
  .admin-ui .av9-heading-copy h1{font-size:25px}
  .admin-ui .av9-metrics{grid-template-columns:1fr 1fr}.admin-ui .av9-metric-card{grid-template-columns:34px minmax(0,1fr);padding:12px;min-height:86px}.admin-ui .av9-metric-icon{width:34px;height:34px}.admin-ui .av9-metric-card strong{font-size:15px}
  .admin-ui .av9-day{grid-template-columns:1fr;align-items:start}.admin-ui .av9-day-times{padding-left:46px}.admin-ui .av9-time-range{width:max-content}
  .admin-ui .av9-block-types{grid-template-columns:1fr}
  .admin-ui .av9-form-grid{grid-template-columns:1fr}.admin-ui .av9-field-title,.admin-ui .av9-field-note{grid-column:auto}
  .admin-ui .av9-form-head,.admin-ui .av9-form-footer,.admin-ui .av9-savebar{align-items:flex-start;flex-direction:column}
  .admin-ui .av9-form-footer .btn,.admin-ui .av9-savebar .btn{width:100%}
  .admin-ui .av9-privacy-note{display:none}
  .admin-ui .av9-empty{grid-template-columns:36px 1fr}.admin-ui .av9-empty .btn{grid-column:1/-1}
}
.admin-ui .av9-block-symbol svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}

/* =========================================================
   JORIDEM Scheduling · v0.2.0
   Event Workspace: recurring time, all-day & structured context
   ========================================================= */
.admin-ui .event-create-pro{padding:18px 18px 16px;background:linear-gradient(180deg,#fff,#fbfcfd);border-color:#e3e7ec;box-shadow:0 14px 40px rgba(21,32,51,.045)}
.admin-ui .event-create-pro .editor-heading{margin-bottom:15px}
.admin-ui .event-create-pro .editor-heading h2{font-size:17px;letter-spacing:-.025em}
.admin-ui .quick-event-grid{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(160px,.8fr) repeat(4,minmax(125px,.62fr));gap:9px;align-items:end}
.admin-ui .quick-event-grid .quick-title{grid-column:span 1}
.admin-ui .event-options-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding:10px 12px;border:1px solid #e8ebef;border-radius:12px;background:#f8fafb}
.admin-ui .smart-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:#4e5c70;white-space:nowrap}
.admin-ui .smart-toggle input{position:absolute;opacity:0;pointer-events:none}
.admin-ui .smart-toggle>span{position:relative;width:34px;height:20px;border-radius:999px;background:#dfe4ea;transition:.18s}
.admin-ui .smart-toggle>span::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(30,42,60,.18);transition:.18s}
.admin-ui .smart-toggle input:checked+span{background:#20304a}.admin-ui .smart-toggle input:checked+span::after{transform:translateX(14px)}
.admin-ui .smart-toggle b{font-size:9px;font-weight:780}
.admin-ui .repeat-inline,.admin-ui .repeat-until{display:flex;align-items:center;gap:7px}
.admin-ui .repeat-inline label,.admin-ui .repeat-until label,.admin-ui .repeat-until span{font-size:8px;font-weight:750;color:#7f8998}
.admin-ui .repeat-inline select,.admin-ui .repeat-until select,.admin-ui .repeat-until input{height:32px;border:1px solid #dbe1e8;border-radius:9px;background:#fff;padding:0 9px;font-size:9px;color:#334157;outline:none}
.admin-ui .repeat-until input[type=number]{width:56px}.admin-ui .repeat-until input[type=date]{width:132px}
.admin-ui .event-options-row [hidden]{display:none!important}
.admin-ui .event-details{margin-top:11px;border:1px solid #e8ebef;border-radius:12px;background:#fff;overflow:hidden}
.admin-ui .event-details summary{display:flex;align-items:center;gap:8px;padding:11px 12px;cursor:pointer;list-style:none;font-size:9px;font-weight:820;color:#35445b}.admin-ui .event-details summary::-webkit-details-marker{display:none}
.admin-ui .event-details summary:before{content:"+";display:grid;place-items:center;width:20px;height:20px;border-radius:7px;background:#eef1f4;color:#617087;font-size:12px}
.admin-ui .event-details[open] summary:before{content:"–"}.admin-ui .event-details summary span{font-weight:550;color:#949daa}
.admin-ui .event-details-grid{padding:13px;border-top:1px solid #edf0f3}
.admin-ui .event-checks{display:flex;gap:16px;flex-wrap:wrap}
.admin-ui .event-create-actions{display:flex;align-items:center;gap:12px;margin-top:12px}
.admin-ui .event-create-actions .mini-note{max-width:560px}
.admin-ui .event-status-recurring{background:#eef0f8;color:#656c99}
.admin-ui .cal-event.is-recurring{border-style:solid}
.admin-ui .series-note{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;margin:0 0 12px;padding:9px 10px;border:1px solid #e5e7f1;border-radius:10px;background:#f7f7fb;color:#62698b}
.admin-ui .series-note>span{width:30px;height:30px;border-radius:9px;background:#eceef8;display:grid;place-items:center;font-size:15px;font-weight:850}.admin-ui .series-note div{display:grid;gap:2px}.admin-ui .series-note strong{font-size:9px;color:#4f577b}.admin-ui .series-note small{font-size:7.5px;color:#8a90a9}
.admin-ui .drawer-toggle{margin-top:2px}
.admin-ui .drawer-check-stack{display:flex;gap:14px;flex-wrap:wrap}
.admin-ui .av9-field select{height:38px;width:100%;border:1px solid #dfe4eb;border-radius:10px;background:#fff;padding:0 10px;font-size:10px;color:#2d3a50;outline:none;transition:.14s}.admin-ui .av9-field select:focus{border-color:#b9c4d0;box-shadow:0 0 0 3px rgba(23,35,59,.04)}
.admin-ui .av9-repeat-chip{display:inline-flex;padding:3px 6px;border-radius:999px;font-size:7px;font-weight:760;background:#eef0f8;color:#686f98}
@media(max-width:1500px){.admin-ui .quick-event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-ui .quick-event-grid .quick-title{grid-column:span 2}}
@media(max-width:900px){.admin-ui .quick-event-grid{grid-template-columns:1fr 1fr}.admin-ui .quick-event-grid .quick-title{grid-column:1/-1}.admin-ui .event-options-row{align-items:flex-start;flex-direction:column}.admin-ui .repeat-until{flex-wrap:wrap}.admin-ui .event-create-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.admin-ui .quick-event-grid{grid-template-columns:1fr}.admin-ui .quick-event-grid .quick-title{grid-column:auto}.admin-ui .event-create-actions .btn{width:100%}}

/* =========================================================
   JORIDEM Scheduling · v0.2.1
   Resources, Participants & Connector Foundation
   ========================================================= */
.admin-ui .participant-editor{display:grid;gap:8px;padding:10px;border:1px solid #e4e8ee;border-radius:12px;background:#fafbfc}
.admin-ui .participant-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(180px,1.35fr) 120px 120px 30px;gap:7px;align-items:center}
.admin-ui .participant-row input,.admin-ui .participant-row select{height:34px;border:1px solid #dfe4ea;border-radius:9px;background:#fff;padding:0 9px;font-size:9px;color:#334157;min-width:0}
.admin-ui .participant-remove{width:30px;height:30px;border:0;border-radius:8px;background:#f2f4f7;color:#768195;cursor:pointer;font-size:14px}.admin-ui .participant-remove:hover{background:#faeeee;color:#a34f4f}
.admin-ui .participant-add{justify-self:start;border:1px dashed #cfd6df;border-radius:9px;background:#fff;color:#516076;padding:7px 10px;font-size:8px;font-weight:800;cursor:pointer}.admin-ui .participant-add:hover{border-color:#b7c0cc;background:#f8fafb}
.admin-ui .resource-checks{display:flex;gap:7px;flex-wrap:wrap}.admin-ui .resource-checks label{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #e0e5eb;border-radius:999px;background:#fff;font-size:8px;font-weight:700;color:#546277;cursor:pointer}.admin-ui .resource-checks input{accent-color:#17233b}.admin-ui .resource-checks label>span{width:7px;height:7px;border-radius:50%;background:var(--resource-color)}

.admin-ui .resource-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.admin-ui .resource-metrics>.card{padding:16px;display:grid;gap:4px}.admin-ui .resource-metrics span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#929baa}.admin-ui .resource-metrics strong{font-size:23px;color:#1c2a41}.admin-ui .resource-metrics small{font-size:9px;color:#8e98a6}
.admin-ui .resource-create-card{margin-bottom:14px;padding:18px}.admin-ui .resource-create-grid{display:grid;grid-template-columns:140px minmax(220px,1.4fr) minmax(220px,1fr) 110px 90px auto;gap:10px;align-items:end}.admin-ui .resource-create-action{padding-bottom:1px}
.admin-ui .resource-list-card{padding:18px}.admin-ui .resource-list{display:grid}.admin-ui .resource-row{display:grid;grid-template-columns:minmax(260px,1.1fr) minmax(420px,1.8fr) 90px auto;gap:12px;align-items:center;padding:12px 2px;border-top:1px solid #edf0f3}.admin-ui .resource-row:first-child{border-top:0}.admin-ui .resource-row.is-inactive{opacity:.56}
.admin-ui .resource-identity{display:flex;align-items:center;gap:10px;min-width:0}.admin-ui .resource-avatar-lg,.admin-ui .resource-avatar{display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--resource-color) 13%, white);color:var(--resource-color);font-weight:900;border:1px solid color-mix(in srgb,var(--resource-color) 22%, white)}.admin-ui .resource-avatar-lg{width:38px;height:38px;font-size:10px}.admin-ui .resource-avatar{width:31px;height:31px;font-size:8px;flex:0 0 auto}.admin-ui .resource-identity>div{display:grid;gap:3px;min-width:0}.admin-ui .resource-identity strong{font-size:10px;color:#29374c}.admin-ui .resource-identity span{font-size:8px;color:#8d97a5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-ui .resource-edit-fields{display:grid;grid-template-columns:1.1fr 1.2fr 70px 52px;gap:7px}.admin-ui .resource-edit-fields input{height:34px;border:1px solid #e0e5eb;border-radius:9px;background:#fff;padding:0 8px;font-size:9px;min-width:0}.admin-ui .resource-edit-fields input[type=color]{padding:3px}
.admin-ui .resource-active{display:flex;align-items:center;gap:7px;cursor:pointer}.admin-ui .resource-active input{display:none}.admin-ui .resource-active span{width:31px;height:18px;border-radius:999px;background:#dfe4ea;position:relative}.admin-ui .resource-active span:after{content:"";position:absolute;left:3px;top:3px;width:12px;height:12px;border-radius:50%;background:#fff;transition:.15s}.admin-ui .resource-active input:checked+span{background:#2f8e64}.admin-ui .resource-active input:checked+span:after{transform:translateX(13px)}.admin-ui .resource-active b{font-size:8px;color:#697587}

.admin-ui .resource-calendar{overflow:auto;--resource-count:1}.admin-ui .resource-calendar-head{display:grid;grid-template-columns:64px repeat(var(--resource-count),minmax(220px,1fr));position:sticky;top:0;z-index:8;background:#fff;border-bottom:1px solid #e5e9ee;min-width:max-content}.admin-ui .resource-head{min-width:220px;display:flex;align-items:center;gap:9px;padding:10px 11px;border-left:1px solid #eef1f4}.admin-ui .resource-head>div{display:grid;gap:2px}.admin-ui .resource-head strong{font-size:9px;color:#29374c}.admin-ui .resource-head small{font-size:7px;color:#939ca9}.admin-ui .resource-calendar-body{display:grid;grid-template-columns:64px minmax(max-content,1fr);min-height:var(--time-grid-height)}.admin-ui .resource-columns{display:grid;grid-template-columns:repeat(var(--resource-count),minmax(220px,1fr));min-width:max-content}.admin-ui .resource-column{min-width:220px;position:relative;height:var(--time-grid-height);border-left:1px solid #eef1f4}.admin-ui .resource-column .time-slots,.admin-ui .resource-column .time-events{position:absolute;inset:0}.admin-ui .resource-column .time-slot{height:var(--slot-height)}

.admin-ui .sync-architecture{padding:20px;margin-bottom:14px;display:grid;grid-template-columns:minmax(300px,1fr) auto;gap:20px;align-items:center}.admin-ui .sync-architecture h2{margin:4px 0 6px;font-size:18px}.admin-ui .sync-architecture p{font-size:10px;color:#7d8796;max-width:700px}.admin-ui .sync-flow{display:flex;align-items:center;gap:8px;padding:10px;border-radius:12px;background:#f7f8fa;border:1px solid #e5e9ee}.admin-ui .sync-flow span{padding:8px 10px;background:#fff;border:1px solid #e1e6ec;border-radius:9px;font-size:8px;font-weight:800;color:#445269;white-space:nowrap}.admin-ui .sync-flow b{color:#b28b50}
.admin-ui .provider-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-ui .provider-card{padding:18px;display:flex;flex-direction:column;gap:9px;min-height:250px}.admin-ui .provider-top{display:flex;justify-content:space-between;align-items:center}.admin-ui .provider-mark{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:#17233b;color:#fff;font-weight:900}.admin-ui .provider-google{background:#fff;color:#345;border:1px solid #dfe4ea}.admin-ui .provider-caldav{background:#64748b}.admin-ui .provider-ics{background:#b9955a}.admin-ui .provider-state{padding:4px 7px;border-radius:999px;font-size:7px;font-weight:800}.admin-ui .state-prepared{background:#edf7f2;color:#39795a}.admin-ui .state-foundation{background:#f5efe5;color:#8a6a39}.admin-ui .state-planned{background:#f0f2f5;color:#778292}.admin-ui .provider-card h2{font-size:13px;margin:3px 0 0}.admin-ui .provider-card p{font-size:8px;color:#8a94a2}.admin-ui .capability-list{display:flex;gap:5px;flex-wrap:wrap;flex:1;align-content:flex-start}.admin-ui .capability-list span{padding:4px 6px;border-radius:999px;background:#f4f6f8;color:#697689;font-size:7px}.admin-ui .provider-card .btn{align-self:flex-start}
.admin-ui .sync-policy-card{padding:18px;margin-top:14px}.admin-ui .sync-policy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-ui .sync-policy-grid>div{padding:12px;border:1px solid #e7ebef;border-radius:11px;background:#fafbfc;display:grid;gap:4px}.admin-ui .sync-policy-grid strong{font-size:9px;color:#35445b}.admin-ui .sync-policy-grid span{font-size:8px;line-height:1.5;color:#8993a1}
@media(max-width:1250px){.admin-ui .resource-create-grid{grid-template-columns:repeat(3,1fr)}.admin-ui .resource-row{grid-template-columns:1fr}.admin-ui .resource-edit-fields{grid-template-columns:repeat(4,1fr)}.admin-ui .provider-grid{grid-template-columns:1fr 1fr}.admin-ui .sync-architecture{grid-template-columns:1fr}.admin-ui .sync-policy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.admin-ui .participant-row{grid-template-columns:1fr 1fr}.admin-ui .participant-row .participant-remove{grid-column:2;justify-self:end}.admin-ui .resource-metrics{grid-template-columns:1fr}.admin-ui .resource-create-grid,.admin-ui .resource-edit-fields{grid-template-columns:1fr}.admin-ui .provider-grid,.admin-ui .sync-policy-grid{grid-template-columns:1fr}.admin-ui .sync-flow{flex-direction:column;align-items:stretch;text-align:center}}

/* =========================================================
   JORIDEM Scheduling · v0.2.2
   Virtual Rooms & Meeting Channels
   ========================================================= */
.admin-ui .resource-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-ui .resource-create-grid{grid-template-columns:130px minmax(180px,1.25fr) minmax(180px,1fr) 82px 72px 90px minmax(190px,1fr) minmax(150px,1fr) auto;gap:9px}
.admin-ui .resource-edit-fields{grid-template-columns:minmax(150px,1.1fr) minmax(160px,1.2fr) 62px 48px 64px 90px minmax(120px,1fr);gap:6px}
.admin-ui .resource-edit-fields select{height:34px;border:1px solid #e0e5eb;border-radius:9px;background:#fff;padding:0 7px;font-size:8px;color:#435066;min-width:0}
.admin-ui .resource-row{grid-template-columns:minmax(250px,1fr) minmax(620px,2.5fr) auto auto auto}
.admin-ui .type-row-meeting{grid-template-columns:minmax(250px,1.3fr) minmax(180px,.8fr) minmax(220px,1fr) minmax(210px,1fr) 90px}
.admin-ui .type-config-form{display:contents}
.admin-ui .type-meeting-config{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;align-items:center}
.admin-ui .type-meeting-config select{height:34px;border:1px solid #dfe4ea;border-radius:9px;background:#fff;padding:0 7px;font-size:8px;color:#415067;min-width:0}

.admin-ui .event-status-meeting{min-width:21px;padding:0 4px;border-radius:7px;background:#f4ecdf;color:#8a6835;font-size:6px;font-weight:900;letter-spacing:.02em}
.admin-ui .drawer-meeting-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:12px;border:1px solid #e7dac6;border-radius:13px;background:linear-gradient(135deg,#fffaf3,#fff)}
.admin-ui .drawer-meeting-card[hidden]{display:none!important}
.admin-ui .drawer-meeting-card>div{display:grid;gap:2px}.admin-ui .drawer-meeting-card span{font-size:7px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#a17e48}.admin-ui .drawer-meeting-card strong{font-size:10px;color:#4f412f}.admin-ui .drawer-meeting-card small{font-size:8px;color:#8f806a}

.admin-ui .meeting-page-head{margin-bottom:14px}
.admin-ui .meeting-metrics{margin-bottom:14px}
.admin-ui .meeting-create-card{padding:18px;margin-bottom:14px}
.admin-ui .meeting-workspace-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:14px;margin-bottom:14px}
.admin-ui .meeting-workspace-grid>.card,.admin-ui .meeting-session-card{padding:18px}
.admin-ui .meeting-room-list{display:grid}
.admin-ui .meeting-room-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 2px;border-top:1px solid #edf0f3}.admin-ui .meeting-room-row:first-child{border-top:0}.admin-ui .meeting-room-row.is-inactive{opacity:.55}
.admin-ui .meeting-room-main{display:grid;gap:3px;min-width:0}.admin-ui .meeting-room-main strong{font-size:10px;color:#29374c}.admin-ui .meeting-room-main span{font-size:8px;color:#7d8795}.admin-ui .meeting-room-main small{font-size:7px;color:#9ca4af}
.admin-ui .meeting-provider-list{display:grid;gap:8px}.admin-ui .meeting-provider-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid #e8ebef;border-radius:11px;background:#fafbfc}.admin-ui .meeting-provider-list>div>div{display:grid;gap:3px}.admin-ui .meeting-provider-list strong{font-size:9px;color:#334158}.admin-ui .meeting-provider-list small{font-size:7px;line-height:1.45;color:#8b95a3}
.admin-ui .state-bridge{background:#f5efe5;color:#876735}.admin-ui .state-available{background:#edf7f2;color:#39795a}
.admin-ui .meeting-session-list{display:grid}.admin-ui .meeting-session-row{display:grid;grid-template-columns:minmax(260px,1.25fr) 110px minmax(120px,.8fr) minmax(170px,1fr) minmax(170px,1fr) auto;gap:8px;align-items:center;padding:11px 0;border-top:1px solid #edf0f3}.admin-ui .meeting-session-row:first-child{border-top:0}
.admin-ui .meeting-session-row input,.admin-ui .meeting-session-row select{height:34px;border:1px solid #e0e5eb;border-radius:9px;background:#fff;padding:0 8px;font-size:8px;color:#405067;min-width:0}.admin-ui .meeting-session-identity{display:flex;align-items:center;gap:9px;min-width:0}.admin-ui .meeting-session-dot{width:9px;height:9px;border-radius:50%;background:#b9955a;box-shadow:0 0 0 4px rgba(185,149,90,.08);flex:0 0 auto}.admin-ui .meeting-session-identity>div{display:grid;gap:2px;min-width:0}.admin-ui .meeting-session-identity strong{font-size:9px;color:#2d3a50}.admin-ui .meeting-session-identity span{font-size:8px;color:#7e8998}.admin-ui .meeting-session-identity small{font-size:6.5px;color:#a0a8b3}.admin-ui .meeting-session-actions{display:flex;gap:6px}

.meeting-access-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0;padding:16px;border:1px solid color-mix(in srgb,var(--brand-accent) 38%, transparent);border-radius:calc(var(--brand-radius) * .7);background:color-mix(in srgb,var(--brand-accent) 8%, var(--brand-surface))}.meeting-access-card>div{display:grid;gap:4px}.meeting-access-card span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--brand-accent);font-weight:800}.meeting-access-card strong{color:var(--brand-heading);font-size:16px}.meeting-access-card small{color:var(--brand-muted);font-size:12px}
.meeting-bridge-shell{max-width:860px}.meeting-bridge-card{text-align:center;padding:42px}.meeting-room-mark{width:62px;height:62px;margin:0 auto 18px;border-radius:18px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand-accent) 14%, var(--brand-surface));border:1px solid color-mix(in srgb,var(--brand-accent) 40%, transparent);color:var(--brand-accent);font-size:18px;font-weight:900;letter-spacing:.04em}.meeting-bridge-card .confirmation-summary{text-align:left}.meeting-bridge-state{margin:24px 0 4px;padding:18px;border-radius:14px;background:color-mix(in srgb,var(--brand-accent) 7%, var(--brand-surface));border:1px solid color-mix(in srgb,var(--brand-accent) 25%, transparent);text-align:left}.meeting-bridge-state strong{color:var(--brand-heading)}.meeting-bridge-state p{margin:7px 0 0;color:var(--brand-muted);line-height:1.6}.meeting-security-note{margin-top:22px;font-size:11px;color:var(--brand-muted)}

@media(max-width:1450px){.admin-ui .resource-create-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-ui .resource-row{grid-template-columns:1fr}.admin-ui .resource-edit-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-ui .meeting-session-row{grid-template-columns:1fr 120px 1fr 1fr}.admin-ui .meeting-session-actions{grid-column:4}.admin-ui .type-row-meeting{grid-template-columns:1.2fr .8fr 1fr 1fr 90px}}
@media(max-width:1000px){.admin-ui .meeting-workspace-grid{grid-template-columns:1fr}.admin-ui .resource-metrics{grid-template-columns:1fr 1fr}.admin-ui .type-row-meeting{grid-template-columns:1fr}.admin-ui .type-row-meeting.table-head{display:none}.admin-ui .type-config-form{display:contents}.admin-ui .meeting-session-row{grid-template-columns:1fr 1fr}.admin-ui .meeting-session-actions{grid-column:auto}}
@media(max-width:650px){.admin-ui .resource-metrics,.admin-ui .resource-create-grid,.admin-ui .resource-edit-fields,.admin-ui .meeting-session-row{grid-template-columns:1fr}.admin-ui .meeting-session-actions{grid-column:auto}.meeting-access-card{align-items:flex-start;flex-direction:column}.meeting-bridge-card{padding:28px 18px}}
.admin-ui .type-mode-cell{display:grid;gap:6px}.admin-ui .type-mode-cell>strong{font-size:9px;color:#2f3e55}.admin-ui .type-mode-input{width:100%;height:34px;border:1px solid #dfe4ea;border-radius:9px;background:#fff;padding:0 8px;font-size:8px;color:#415067}

/* =========================================================
   JORIDEM Scheduling · v0.2.3
   Secure Access & Authentication
   ========================================================= */
.auth-ui{margin:0;min-height:100vh;background:#f4f5f7;color:#17233b;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.auth-ui *{box-sizing:border-box}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,42%) minmax(0,58%)}.auth-brand-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:100vh;padding:42px 50px;background:radial-gradient(circle at 75% 14%,rgba(185,149,90,.18),transparent 26%),linear-gradient(145deg,#0c0f15 0%,#121925 56%,#182337 100%);color:#fff}.auth-brand-panel:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.04);border-radius:50%;right:-250px;bottom:-250px;box-shadow:0 0 0 80px rgba(255,255,255,.012),0 0 0 160px rgba(255,255,255,.009)}.auth-lockup{display:flex;align-items:center;gap:9px;position:relative;z-index:1}.auth-wordmark{font-size:26px;font-weight:680;letter-spacing:-.055em}.auth-os-chip{padding:4px 7px;border:1px solid rgba(210,178,123,.42);border-radius:7px;color:#d3b77f;font-size:8px;font-weight:900;letter-spacing:.08em}.auth-module-line{display:flex;align-items:center;gap:10px;margin-top:17px;position:relative;z-index:1}.auth-module-dot{width:8px;height:8px;border-radius:50%;background:#c7a66d;box-shadow:0 0 0 5px rgba(199,166,109,.09)}.auth-module-line>div{display:grid;gap:1px}.auth-module-line strong{font-size:10px}.auth-module-line small{font-size:7px;color:#8f9aab}.auth-brand-copy{max-width:590px;margin:auto 0 42px;position:relative;z-index:1}.auth-brand-copy>span{display:inline-flex;margin-bottom:16px;color:#c7aa78;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.auth-brand-copy h1{margin:0;max-width:560px;font-size:44px;line-height:1.02;letter-spacing:-.055em;font-weight:640}.auth-brand-copy p{max-width:510px;margin:20px 0 0;color:#aeb7c5;font-size:13px;line-height:1.75}.auth-security-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;position:relative;z-index:1}.auth-security-facts>div{display:flex;gap:9px;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.025);backdrop-filter:blur(8px)}.auth-security-facts i{font-style:normal;color:#c3a46f;font-size:7px;font-weight:900}.auth-security-facts span{display:grid;gap:4px}.auth-security-facts strong{font-size:8px}.auth-security-facts small{color:#8994a5;font-size:6.8px;line-height:1.45}.auth-brand-footer{margin-top:22px;position:relative;z-index:1;color:#667184;font-size:7px;letter-spacing:.06em}.auth-main{display:grid;place-items:center;padding:50px;background:linear-gradient(180deg,#f8f9fa,#f2f4f6)}.auth-card{width:min(480px,100%);padding:34px;border:1px solid #e1e5e9;border-radius:20px;background:#fff;box-shadow:0 22px 70px rgba(25,37,55,.08)}.auth-card-setup{width:min(610px,100%)}.auth-card-heading{display:grid;gap:6px;margin-bottom:24px}.auth-step{color:#a17e46;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.auth-card-heading h2{margin:0;font-size:24px;letter-spacing:-.04em}.auth-card-heading p{margin:0;color:#8791a0;font-size:10px;line-height:1.5}.auth-form{display:grid;gap:14px}.auth-field{display:grid;gap:6px}.auth-field>span{font-size:8px;font-weight:780;color:#4b596e}.auth-field input{width:100%;height:44px;border:1px solid #dfe4ea;border-radius:11px;background:#fbfcfd;padding:0 12px;outline:none;font-size:11px;color:#243147;transition:.15s}.auth-field input:focus{border-color:#aeb9c8;background:#fff;box-shadow:0 0 0 4px rgba(23,35,59,.04)}.auth-field small{font-size:7px;color:#9aa3b0}.auth-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-password-hint{display:grid;gap:3px;padding:11px 12px;border:1px solid #eee7da;border-radius:11px;background:#fdfaf5}.auth-password-hint strong{font-size:8px;color:#7d6035}.auth-password-hint span{font-size:7px;line-height:1.5;color:#9b8668}.auth-submit{height:45px;border:0;border-radius:11px;background:#17233b;color:#fff;font-size:9px;font-weight:850;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;transition:.16s}.auth-submit:hover{transform:translateY(-1px);background:#1d2c49;box-shadow:0 8px 20px rgba(23,35,59,.15)}.auth-submit span{color:#cfb079;font-size:13px}.auth-alert{margin-bottom:16px;padding:11px 12px;border-radius:10px;font-size:8px;line-height:1.5}.auth-alert-error{border:1px solid #efd7d7;background:#fff6f6;color:#a44b4b}.auth-alert-success{border:1px solid #d8eadf;background:#f4fbf7;color:#43775a}.auth-note{display:flex;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #eef1f4;color:#8b94a1}.auth-note>span{font-size:12px}.auth-note p{margin:0;font-size:7px;line-height:1.55}.auth-note code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#5d6979}.auth-remember{display:flex;align-items:center;gap:9px;cursor:pointer}.auth-remember input{position:absolute;opacity:0}.auth-remember>span{position:relative;width:34px;height:20px;border-radius:999px;background:#dfe4ea;transition:.15s}.auth-remember>span:after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.16);transition:.15s}.auth-remember input:checked+span{background:#20304a}.auth-remember input:checked+span:after{transform:translateX(14px)}.auth-remember>div{display:grid;gap:2px}.auth-remember strong{font-size:8px;color:#4d5a6d}.auth-remember small{font-size:6.8px;color:#9ca4af}.auth-login-meta{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;color:#9aa3af;font-size:6.7px}.auth-login-meta i{width:3px;height:3px;border-radius:50%;background:#c6ccd3}

.admin-ui .os-user-menu{display:flex;align-items:center;gap:7px;margin-left:4px;padding-left:10px;border-left:1px solid #e5e9ee}.admin-ui .os-user-chip{display:flex;align-items:center;gap:7px;text-decoration:none;padding:4px 7px 4px 4px;border:1px solid #e5e9ee;border-radius:10px;background:#fff;transition:.15s}.admin-ui .os-user-chip:hover{border-color:#cdd4dc;background:#fafbfc}.admin-ui .os-user-avatar{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#17233b;color:#c9aa74;font-size:8px;font-weight:900}.admin-ui .os-user-chip>span:last-child{display:grid;gap:0}.admin-ui .os-user-chip strong{font-size:7.5px;color:#344157}.admin-ui .os-user-chip small{font-size:6.2px;color:#9aa3af}.admin-ui .os-logout-button{width:32px;height:32px;border-radius:9px;border:1px solid #e5e9ee;background:#fff;display:grid;place-items:center;color:#7d8795}.admin-ui .os-logout-button:hover{background:#fff6f6;color:#9b5050;border-color:#eddada}.admin-ui .os-logout-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.admin-ui .security-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.admin-ui .security-metrics>.card{padding:16px;display:grid;gap:4px}.admin-ui .security-metrics span{font-size:7px;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:#98a1ad}.admin-ui .security-metrics strong{font-size:15px;color:#243147}.admin-ui .security-metrics small{font-size:7px;color:#9ba4af}.admin-ui .security-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.admin-ui .security-account-card,.admin-ui .security-password-card{padding:18px}.admin-ui .security-role-badge{padding:5px 8px;border-radius:999px;background:#f4efe7;color:#8b6a38;font-size:7px;font-weight:850}.admin-ui .security-profile{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf0f3}.admin-ui .security-avatar{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#17233b;color:#c8a66a;font-size:12px;font-weight:900}.admin-ui .security-profile>div:last-child{display:grid;gap:2px}.admin-ui .security-profile strong{font-size:10px;color:#2c394e}.admin-ui .security-profile span{font-size:8px;color:#707c8d}.admin-ui .security-profile small{font-size:7px;color:#9ba4af}.admin-ui .security-fact-list{display:grid;margin-top:8px}.admin-ui .security-fact-list>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #f0f2f4}.admin-ui .security-fact-list>div:first-child{border-top:0}.admin-ui .security-fact-list span{font-size:8px;color:#8a94a1}.admin-ui .security-fact-list strong{font-size:8px;color:#4a586c}.admin-ui .security-password-form{display:grid;gap:10px}.admin-ui .security-password-form label{display:grid;gap:5px}.admin-ui .security-password-form label span{font-size:7px;font-weight:800;color:#5f6c7f}.admin-ui .security-password-form input{height:38px;border:1px solid #dfe4ea;border-radius:10px;padding:0 10px;font-size:9px;outline:none}.admin-ui .security-password-form input:focus{border-color:#b7c1ce;box-shadow:0 0 0 3px rgba(23,35,59,.04)}.admin-ui .security-password-form>small{font-size:7px;color:#939ca8;line-height:1.45}.admin-ui .security-password-form .btn{justify-self:start;margin-top:4px}.admin-ui .security-audit-card{padding:18px}.admin-ui .security-audit-list{display:grid}.admin-ui .security-audit-list>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #edf0f3}.admin-ui .security-audit-list>div:first-child{border-top:0}.admin-ui .security-audit-dot{width:7px;height:7px;border-radius:50%;background:#62a17e;box-shadow:0 0 0 4px rgba(98,161,126,.09)}.admin-ui .security-audit-list>div>div{display:grid;gap:2px}.admin-ui .security-audit-list strong{font-size:8px;color:#39475b}.admin-ui .security-audit-list small{font-size:6.5px;color:#9ba4af}.admin-ui .security-audit-list code{font-size:6.5px;color:#a2aab4;background:#f5f7f8;border-radius:6px;padding:4px 6px}
@media(max-width:1100px){.auth-shell{grid-template-columns:1fr}.auth-brand-panel{min-height:auto;padding:30px}.auth-brand-copy{margin:70px 0 30px}.auth-security-facts{display:none}.auth-main{padding:30px}.admin-ui .security-metrics{grid-template-columns:1fr 1fr}.admin-ui .security-grid{grid-template-columns:1fr}}@media(max-width:620px){.auth-main{padding:18px}.auth-card{padding:24px 20px}.auth-two-col{grid-template-columns:1fr}.auth-brand-copy h1{font-size:34px}.admin-ui .security-metrics{grid-template-columns:1fr}.admin-ui .os-user-chip>span:last-child{display:none}}

/* V0.2.4 — Operator & Multi-Tenant */
.context-switchers{display:flex;align-items:center;gap:8px;padding-right:4px}.context-form{display:flex;align-items:center;gap:7px;height:38px;padding:0 8px 0 11px;border:1px solid #e5e8ee;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(20,27,45,.03)}.context-form .context-label{font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:#8b93a2;font-weight:700}.context-form select{border:0;background:transparent;font:inherit;font-size:12px;font-weight:650;color:#263044;outline:none;min-width:120px;max-width:180px;padding:0 22px 0 0}.brand-context-form select{min-width:110px}.operator-page-head{margin-bottom:22px}.operator-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.operator-metric{padding:18px 18px 16px;border-radius:18px;min-height:112px;display:flex;flex-direction:column}.operator-metric>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8b93a2;font-weight:750}.operator-metric>strong{font-size:30px;line-height:1.1;color:#192238;margin:12px 0 5px}.operator-metric>small{color:#7a8392}.operator-metric.emphasis{background:linear-gradient(145deg,#171a20,#242831);border-color:#262b35}.operator-metric.emphasis>span,.operator-metric.emphasis>small{color:#aeb4c0}.operator-metric.emphasis>strong{color:#d3b177}.operator-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.72fr);gap:18px;align-items:start}.operator-hierarchy-panel,.operator-control-panel{border-radius:22px}.tenant-stack{display:flex;flex-direction:column;gap:13px}.tenant-card{border:1px solid #e7eaf0;border-radius:18px;background:#fbfcfe;overflow:hidden}.tenant-card-head{display:flex;align-items:center;gap:12px;padding:16px 18px;background:linear-gradient(180deg,#fff,#fbfcfd)}.tenant-monogram{width:40px;height:40px;border-radius:13px;background:#1b2029;color:#d1ae73;display:grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:.05em}.tenant-title{min-width:0;display:flex;flex-direction:column;flex:1}.tenant-title strong{font-size:14px;color:#202a3d}.tenant-title small{font-size:11px;color:#8b93a2;margin-top:2px}.tenant-entity-list{padding:0 18px}.tenant-entity-row{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #eceff3}.tenant-entity-row>div:first-child{display:grid;grid-template-columns:8px auto;column-gap:9px;align-items:center;min-width:180px}.tenant-entity-row strong{font-size:13px;color:#283246}.tenant-entity-row small{grid-column:2;font-size:10.5px;color:#9098a7;margin-top:2px}.entity-dot{width:7px;height:7px;border-radius:50%;background:#b9955a}.operator-brand-chips{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.operator-brand-chips a{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #e4e7ed;border-radius:10px;background:#fff;color:#4d5768;font-size:11px;text-decoration:none}.operator-brand-chips a b{display:grid;place-items:center;min-width:24px;height:20px;border-radius:7px;background:#20242c;color:#d5b47b;font-size:9px;letter-spacing:.05em}.operator-empty-row{padding:14px 0;border-top:1px solid #eceff3;color:#949cab;font-size:12px}.tenant-actions{display:flex;align-items:center;justify-content:space-between;padding:12px 18px 14px;border-top:1px solid #e9ecf1;background:#fff}.btn-sm{min-height:34px!important;padding:7px 11px!important;font-size:11px!important}.text-action{border:0;background:transparent;color:#7c8491;font-size:11px;cursor:pointer}.text-action:hover{color:#1d2637}.operator-control-panel{position:sticky;top:84px}.operator-tool{width:100%;display:grid;grid-template-columns:36px 1fr 18px;align-items:center;gap:11px;padding:13px 4px;border:0;border-bottom:1px solid #edf0f3;background:transparent;text-decoration:none;text-align:left;color:inherit;cursor:pointer}.operator-tool>span{width:34px;height:34px;border-radius:11px;background:#f2f4f7;display:grid;place-items:center}.operator-tool svg{width:17px;height:17px;fill:none;stroke:#606b7c;stroke-width:1.7}.operator-tool div{display:flex;flex-direction:column}.operator-tool strong{font-size:12px;color:#283246}.operator-tool small{font-size:10.5px;color:#9098a7;margin-top:2px}.operator-tool>b{color:#b9955a}.operator-principle{margin-top:18px;padding:15px;border-radius:15px;background:#171b22;color:#fff;display:flex;flex-direction:column;gap:5px}.operator-principle span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#caaa73;font-weight:800}.operator-principle strong{font-size:12px}.operator-principle small{font-size:10.5px;color:#aeb4c0;line-height:1.5}.operator-dialog{width:min(620px,calc(100vw - 30px));border:0;border-radius:22px;padding:0;box-shadow:0 24px 70px rgba(15,20,30,.24)}.operator-dialog::backdrop{background:rgba(16,20,28,.45);backdrop-filter:blur(3px)}.operator-dialog form{padding:22px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.dialog-head h2{margin:3px 0 0}.dialog-close{border:0;background:#f1f3f6;width:34px;height:34px;border-radius:11px;font-size:20px;color:#697283;cursor:pointer}.operator-form-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.operator-form-fields label{display:flex;flex-direction:column;gap:6px}.operator-form-fields label span{font-size:11px;font-weight:700;color:#667083}.operator-form-fields input,.operator-form-fields select{width:100%;min-height:42px;border:1px solid #dfe3e9;border-radius:12px;padding:9px 11px;background:#fff}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.user-admin-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.55fr);gap:18px;align-items:start}.user-list{display:flex;flex-direction:column;gap:7px}.user-row{display:grid;grid-template-columns:40px 1fr auto 8px;align-items:center;gap:10px;padding:10px;border:1px solid transparent;border-radius:14px;text-decoration:none;color:inherit}.user-row:hover,.user-row.selected{background:#f7f8fa;border-color:#e6e9ee}.user-avatar-lg{width:38px;height:38px;border-radius:12px;background:#20242c;color:#d5b47b;display:grid;place-items:center;font-size:13px;font-weight:800}.user-row>div{display:flex;flex-direction:column;min-width:0}.user-row strong{font-size:12px;color:#283246}.user-row small{font-size:10.5px;color:#9299a6;overflow:hidden;text-overflow:ellipsis}.role-pill{padding:5px 8px;border-radius:999px;background:#f0f2f5;color:#657083;font-size:9.5px;font-weight:750}.user-active-dot{width:7px;height:7px;border-radius:50%;background:#c9ced6}.user-active-dot.on{background:#4eae78}.access-form{display:flex;flex-direction:column;gap:18px}.access-form-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.access-form label{display:flex;flex-direction:column;gap:6px}.access-form label>span,.password-reset label>span{font-size:11px;font-weight:700;color:#687285}.access-form input,.access-form select,.password-reset input{min-height:42px;border:1px solid #dfe3e9;border-radius:12px;padding:9px 11px;background:#fff}.switch-label{justify-content:flex-end}.switch-label input{width:18px;min-height:18px}.scope-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.scope-sections fieldset{border:1px solid #e5e8ed;border-radius:14px;padding:12px}.scope-sections legend{padding:0 6px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#8a93a2}.scope-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;padding:7px 4px}.scope-check input{width:16px;min-height:16px}.scope-check span{font-size:11px!important;color:#4d5769!important;font-weight:600!important}.password-reset{margin-top:18px;padding:14px;border-radius:14px;background:#f8f9fb}.password-reset summary{cursor:pointer;font-size:11px;font-weight:750;color:#5d6676}.password-reset form{display:flex;align-items:end;gap:10px;margin-top:12px}.password-reset label{display:flex;flex-direction:column;gap:6px;flex:1}.owner-lock-card{min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.owner-lock-card>span{width:50px;height:50px;border-radius:16px;background:#1b2028;display:grid;place-items:center;margin-bottom:13px}.owner-lock-card svg{width:23px;height:23px;fill:none;stroke:#d1ae73;stroke-width:1.7}.owner-lock-card strong{font-size:15px}.owner-lock-card p{max-width:330px;color:#818a99;font-size:12px;line-height:1.6}.user-editor-panel{min-height:390px}@media(max-width:1180px){.operator-metric-grid{grid-template-columns:repeat(3,1fr)}.operator-layout{grid-template-columns:1fr}.operator-control-panel{position:static}.context-switchers{display:none}}@media(max-width:820px){.operator-metric-grid{grid-template-columns:repeat(2,1fr)}.tenant-entity-row{flex-direction:column}.operator-brand-chips{justify-content:flex-start}.user-admin-grid{grid-template-columns:1fr}.scope-sections,.access-form-top{grid-template-columns:1fr}.operator-form-fields{grid-template-columns:1fr}}

/* v0.2.5 Go-Live Foundation */
.admin-ui .system-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:14px;margin-bottom:14px}
.admin-ui .system-grid-lower{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.admin-ui .health-list{display:grid}.admin-ui .health-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 0;border-top:1px solid #eef1f5}.admin-ui .health-row:first-child{border-top:0}.admin-ui .health-row strong{display:block;font-size:10px;color:#263248}.admin-ui .health-row small{display:block;font-size:8px;color:#8f98a7;margin-top:3px}.admin-ui .health-dot{width:8px;height:8px;border-radius:50%;background:#d7a043;box-shadow:0 0 0 4px #d7a04314}.admin-ui .health-dot.ok{background:#3ca56d;box-shadow:0 0 0 4px #3ca56d14}
.admin-ui .system-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.admin-ui .system-facts>div{border:1px solid #eef1f5;border-radius:11px;padding:10px 11px;background:#fafbfc}.admin-ui .system-facts span{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:#9aa2ae;font-weight:780}.admin-ui .system-facts strong{display:block;font-size:9px;color:#263248;margin-top:5px;overflow-wrap:anywhere}.admin-ui .system-test-form{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;align-items:end}.admin-ui .system-test-form .field{gap:5px}.admin-ui .system-test-form .field label{font-size:8px}.admin-ui .system-test-form input,.admin-ui .system-test-form select{min-height:35px;padding:8px 10px;border-radius:9px}
.admin-ui .cron-command{margin-top:12px;border:1px solid #e7eaf0;background:#111827;color:#d9e2f0;border-radius:10px;padding:11px 12px;overflow:auto}.admin-ui .cron-command code{font-size:8px;white-space:nowrap;color:#d7b579}
.admin-ui .backup-list{display:grid}.admin-ui .backup-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #eef1f5}.admin-ui .backup-row:first-child{border-top:0}.admin-ui .backup-row strong{display:block;font-size:9px;color:#263248}.admin-ui .backup-row small{display:block;font-size:8px;color:#959eaa;margin-top:3px}.admin-ui .backup-row form{margin:0}.admin-ui .backup-row button{cursor:pointer}
.admin-ui .go-live-panel{margin-top:14px}.admin-ui .go-live-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.admin-ui .go-live-steps>div{border:1px solid #eceff3;border-radius:12px;padding:12px;background:linear-gradient(180deg,#fff,#fafbfc)}.admin-ui .go-live-steps b{display:block;color:#b38b51;font-size:8px;letter-spacing:.08em}.admin-ui .go-live-steps strong{display:block;font-size:10px;color:#223047;margin-top:8px}.admin-ui .go-live-steps span{display:block;font-size:8px;line-height:1.5;color:#8c95a3;margin-top:5px}
@media(max-width:1100px){.admin-ui .system-grid,.admin-ui .system-grid-lower{grid-template-columns:1fr}.admin-ui .go-live-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-ui .system-test-form{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.admin-ui .system-facts,.admin-ui .system-test-form,.admin-ui .go-live-steps{grid-template-columns:1fr}.admin-ui .backup-row{align-items:flex-start;flex-direction:column}}

/* v0.2.6 UI Polish & Button System */
.admin-ui .os-button,
.admin-ui .row-action,
.admin-ui .btn{
  -webkit-appearance:none;appearance:none;
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:36px;padding:0 13px;border-radius:10px;border:1px solid #dde3ea;
  background:#fff;color:#34445b;font-size:9px;font-weight:800;letter-spacing:.005em;
  line-height:1;cursor:pointer;white-space:nowrap;text-decoration:none;
  box-shadow:0 1px 2px rgba(18,30,55,.025);
  transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease,color .14s ease;
}
.admin-ui .os-button:hover,
.admin-ui .row-action:hover,
.admin-ui .btn:hover{
  transform:translateY(-1px);border-color:#cbd3de;background:#fbfcfd;
  box-shadow:0 7px 18px rgba(18,30,55,.07);
}
.admin-ui .os-button:active,
.admin-ui .row-action:active,
.admin-ui .btn:active{transform:translateY(0);box-shadow:0 2px 6px rgba(18,30,55,.05)}
.admin-ui .os-button:focus-visible,
.admin-ui .row-action:focus-visible,
.admin-ui .btn:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(39,58,91,.10),0 7px 18px rgba(18,30,55,.06)}
.admin-ui .os-button:disabled,
.admin-ui .row-action:disabled,
.admin-ui .btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.admin-ui .os-button svg,
.admin-ui .row-action svg,
.admin-ui .btn svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 13px}
.admin-ui .os-button.primary,
.admin-ui .btn-primary{
  border-color:#17233b;background:linear-gradient(180deg,#1b2946,#142037);color:#fff;
  box-shadow:0 7px 16px rgba(20,32,55,.13),inset 0 1px 0 rgba(255,255,255,.08);
}
.admin-ui .os-button.primary:hover,
.admin-ui .btn-primary:hover{border-color:#1a2a48;background:linear-gradient(180deg,#223454,#172540);box-shadow:0 10px 24px rgba(20,32,55,.18),inset 0 1px 0 rgba(255,255,255,.09)}
.admin-ui .os-button.secondary,
.admin-ui .btn-soft{background:linear-gradient(180deg,#fff,#fafbfc);color:#405067;border-color:#dfe4ea}
.admin-ui .os-button.ghost{background:transparent;border-color:transparent;box-shadow:none;color:#667286}
.admin-ui .os-button.ghost:hover{background:#f2f5f8;border-color:#eef1f4;box-shadow:none;color:#25344b}
.admin-ui .os-button.danger,
.admin-ui .row-action.danger,
.admin-ui .btn-danger{background:#fffafa;border-color:#eddede;color:#9a5252}
.admin-ui .os-button.danger:hover,
.admin-ui .row-action.danger:hover,
.admin-ui .btn-danger:hover{background:#fff4f4;border-color:#e7caca;color:#843f3f}
.admin-ui .os-button.compact,
.admin-ui .row-action{min-height:30px;padding:0 9px;border-radius:8px;font-size:8px;font-weight:780}
.admin-ui .os-button.icon-only{width:34px;padding:0}
.admin-ui .button-group{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}
.admin-ui .button-label{display:inline-flex;align-items:center;gap:7px}
.admin-ui .button-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:6px;background:rgba(255,255,255,.12);font-size:7px;color:inherit}

/* system workspace refinement */
.admin-ui .system-grid .panel{border-radius:18px;padding:20px;box-shadow:0 12px 34px rgba(18,30,55,.04)}
.admin-ui .system-grid .panel-head{margin-bottom:17px;align-items:center}
.admin-ui .system-facts>div{min-height:56px;padding:11px 12px;background:linear-gradient(180deg,#fbfcfd,#f7f9fb);border-color:#e9edf2}
.admin-ui .system-test-form{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:10px;align-items:end}
.admin-ui .system-test-form .os-button{min-height:35px}
.admin-ui .cron-command{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:9px 10px 9px 13px;border-radius:12px;background:linear-gradient(135deg,#101722,#151f2e);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.admin-ui .cron-command code{flex:1;min-width:0;overflow:auto}
.admin-ui .cron-copy{flex:0 0 auto;min-height:28px!important;border-color:rgba(255,255,255,.10)!important;background:rgba(255,255,255,.06)!important;color:#dfe6ef!important;box-shadow:none!important}
.admin-ui .cron-copy:hover{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.16)!important;transform:none!important}
.admin-ui .backup-row{padding:12px 0}.admin-ui .backup-row .button-group{justify-content:flex-end}
.admin-ui .go-live-steps>div{transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}
.admin-ui .go-live-steps>div:hover{transform:translateY(-1px);border-color:#e1e5eb;box-shadow:0 8px 20px rgba(18,30,55,.045)}
.admin-ui .system-actions-note{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #eff2f5}
.admin-ui .system-actions-note .mini-note{margin:0}

@media(max-width:700px){
  .admin-ui .system-test-form{grid-template-columns:1fr}
  .admin-ui .system-test-form .os-button{width:100%}
  .admin-ui .button-group{width:100%}
  .admin-ui .backup-row .button-group{justify-content:flex-start}
}

/* v0.2.7 Calendar Sync Workspace */
.integrations-topbar{align-items:flex-start}.sync-head-status{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:750;color:#4b5565;background:#fff;border:1px solid #e2e7ee;padding:9px 12px;border-radius:12px;box-shadow:0 8px 20px rgba(16,30,54,.04)}.status-dot{width:7px;height:7px;border-radius:99px;background:#d3a044}.status-dot.ok{background:#2faa70}.status-dot.warn{background:#d3a044}
.sync-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px}.sync-kpi{padding:17px 18px}.sync-kpi>span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#7a8494;font-weight:800}.sync-kpi strong{display:block;font-size:22px;line-height:1.15;color:#122039;margin:8px 0 4px}.sync-kpi small{display:block;color:#808a98;font-size:11px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.sync-uri-state{font-size:17px!important}
.sync-principle-card{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 24px;margin-bottom:16px}.sync-principle-card h2{margin:5px 0 6px}.sync-principle-card p{max-width:720px;color:#697486;margin:0}.sync-flow.premium{display:flex;align-items:center;gap:10px;flex:0 0 auto}.sync-flow.premium span{border:1px solid #e2e7ee;background:#f8fafc;border-radius:13px;padding:11px 14px;text-align:center;font-weight:750;color:#26364f;min-width:140px}.sync-flow.premium span.core{background:#111c31;color:#fff;border-color:#111c31}.sync-flow.premium small{display:block;margin-top:3px;font-weight:600;opacity:.65}.sync-flow.premium b{color:#b48c50;font-size:18px}
.provider-connect-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}.provider-connect-card{padding:22px}.provider-connect-card h2{margin:16px 0 5px}.provider-connect-card>p{margin:0 0 14px;color:#768194}.provider-state.state-connected{background:#edf9f3;color:#1f7f55}.connect-form{display:flex;align-items:end;gap:10px;margin-top:18px}.connect-form label{flex:1;font-size:11px;font-weight:750;color:#5d687a}.connect-form select{margin-top:6px}.provider-env-hint{display:flex;flex-direction:column;gap:7px;background:#f7f8fb;border:1px solid #e6e9ef;border-radius:12px;padding:12px 13px;margin:16px 0 12px}.provider-env-hint strong{font-size:11px}.provider-env-hint code{font-size:10px;color:#677185;overflow-wrap:anywhere}
.sync-section-heading{margin:8px 0 10px}.connection-list{display:grid;gap:14px}.connection-card{padding:0;overflow:hidden}.connection-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #edf0f4}.connection-provider{display:flex;align-items:center;gap:11px}.connection-provider strong{display:block;color:#13223c}.connection-provider small{display:block;color:#7a8597;margin-top:2px}.connection-status{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#f4f6f8;color:#667284;font-size:10px;font-weight:800}.connection-status i{width:6px;height:6px;border-radius:50%;background:#a6afbb}.connection-status.status-connected{background:#eef9f4;color:#22764f}.connection-status.status-connected i{background:#2baa70}.connection-status.status-error{background:#fff2f2;color:#a33f48}.connection-status.status-error i{background:#ca535c}
.connection-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-bottom:1px solid #edf0f4}.connection-facts>div{padding:14px 18px;border-right:1px solid #edf0f4}.connection-facts>div:last-child{border-right:0}.connection-facts span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800;color:#8992a0}.connection-facts strong{display:block;margin-top:5px;font-size:12px;color:#26364e;line-height:1.35}
.connection-settings{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,1.3fr) minmax(250px,1.2fr) auto;align-items:end;gap:12px;padding:16px 20px}.connection-settings>label:not(.sync-toggle){font-size:10px;font-weight:800;color:#606b7d;text-transform:uppercase;letter-spacing:.05em}.connection-settings select{margin-top:6px}.sync-toggle{display:grid;grid-template-columns:34px 1fr;column-gap:9px;align-items:center;position:relative;padding:6px 0}.sync-toggle input{position:absolute;opacity:0}.sync-toggle>span{grid-row:1/3;width:34px;height:20px;border-radius:99px;background:#dce1e7;position:relative;transition:.18s}.sync-toggle>span:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;top:3px;left:3px;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.18s}.sync-toggle input:checked+span{background:#18243b}.sync-toggle input:checked+span:after{transform:translateX(14px)}.sync-toggle b{font-size:11px;color:#273650}.sync-toggle small{font-size:9px;color:#8a93a2}.connection-actions{display:flex;align-items:center;gap:8px;padding:0 20px 18px}.connection-actions form{margin:0}.sync-last-message{margin:0 20px 18px;padding:10px 12px;border-radius:10px;background:#f5f8fb;color:#607087;font-size:10px}.sync-last-message.error{background:#fff2f2;color:#9c4850}.sync-last-message small{display:block;margin-top:4px;opacity:.7}.connection-error{margin:16px 20px;padding:13px 14px;border:1px solid #f0d8d8;background:#fff9f9;border-radius:12px}.connection-error strong,.connection-error span{display:block}.connection-error span{font-size:10px;color:#7e6770;margin-top:4px}
.empty-sync-state{text-align:center;padding:42px 20px;margin-bottom:18px}.empty-sync-icon{width:44px;height:44px;border-radius:14px;background:#f1f4f8;color:#a67e44;display:grid;place-items:center;margin:0 auto 12px;font-size:20px}.empty-sync-state h2{margin:0 0 6px}.empty-sync-state p{margin:0;color:#768194}.sync-ops-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:20px}.sync-ops-card p{margin:5px 0 0;color:#748093}.code-action{display:flex;align-items:center;gap:8px;background:#0e1728;border-radius:12px;padding:9px 10px 9px 14px;max-width:52%;overflow:hidden}.code-action code{color:#d7b36f;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.code-action .btn{border-color:rgba(255,255,255,.15);color:#fff;background:rgba(255,255,255,.06)}
.oauth-setup-card{margin-top:16px;padding:20px}.oauth-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.oauth-setup-grid>div{border:1px solid #e7eaf0;background:#fafbfc;border-radius:12px;padding:13px}.oauth-setup-grid strong{display:block;font-size:11px;color:#29384f;margin-bottom:4px}.oauth-setup-grid span,.oauth-setup-grid code{font-size:10px;color:#6f7a8d;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:1100px){.sync-kpi-grid{grid-template-columns:repeat(2,1fr)}.provider-connect-grid{grid-template-columns:1fr}.sync-principle-card{align-items:flex-start;flex-direction:column}.connection-facts{grid-template-columns:repeat(2,1fr)}.connection-settings{grid-template-columns:1fr 1fr}.sync-ops-card{align-items:flex-start;flex-direction:column}.code-action{max-width:100%;width:100%}}
@media(max-width:720px){.sync-kpi-grid{grid-template-columns:1fr}.connection-facts,.connection-settings,.oauth-setup-grid{grid-template-columns:1fr}.connect-form{align-items:stretch;flex-direction:column}.connection-actions{align-items:stretch;flex-direction:column}.connection-actions form,.connection-actions button{width:100%}.sync-flow.premium{width:100%;overflow:auto}.sync-head-status{display:none}}

/* =========================================================
   JORIDEM Scheduling · v0.2.8
   Calendar UX Finalization
   ========================================================= */
.admin-ui .btn-secondary{background:linear-gradient(180deg,#fff,#fafbfc);color:#405067;border-color:#dfe4ea}
.admin-ui .btn-secondary:hover{background:#fff;border-color:#cfd7e1;color:#26364e}
.admin-ui .btn-ghost{background:transparent;color:#667286;border-color:transparent;box-shadow:none}
.admin-ui .btn-ghost:hover{background:#f2f5f8;border-color:#edf1f4;color:#25344b;box-shadow:none}
.admin-ui .btn-compact{min-height:30px;padding:0 10px;border-radius:8px;font-size:8px}
.admin-ui .has-active-filter{border-color:#d2b782!important;background:#fffaf0!important;color:#6d5630!important}

.admin-ui .calendar-top-actions{display:flex;align-items:center;gap:8px}.admin-ui .quick-create-wrap{position:relative}.admin-ui .quick-create-main b{font-size:11px;opacity:.7;margin-left:2px}.admin-ui .quick-create-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:270px;padding:7px;background:#fff;border:1px solid #e2e7ed;border-radius:14px;box-shadow:0 18px 50px rgba(15,27,49,.14)}.admin-ui .quick-create-menu button{width:100%;display:grid;grid-template-columns:10px 1fr;column-gap:10px;text-align:left;border:0;background:transparent;padding:10px 10px;border-radius:10px;cursor:pointer;color:#25344b}.admin-ui .quick-create-menu button:hover{background:#f6f8fa}.admin-ui .quick-create-menu .quick-dot{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:#3d6ed7;margin-top:4px}.admin-ui .quick-create-menu .quick-dot.private{background:#7a6bb1}.admin-ui .quick-create-menu .quick-dot.blocker{background:#a76b51}.admin-ui .quick-create-menu .quick-dot.vacation{background:#4f8c6a}.admin-ui .quick-create-menu strong{font-size:9px}.admin-ui .quick-create-menu small{font-size:7.5px;color:#8b95a3;margin-top:2px}

.admin-ui .calendar-commandbar-final{margin-bottom:8px}.admin-ui .calendar-utilitybar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;margin-bottom:8px}.admin-ui .calendar-search-form{display:flex;align-items:center;gap:6px;flex:1;max-width:680px;position:relative}.admin-ui .calendar-search-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);font-size:13px;color:#9aa3b0;pointer-events:none}.admin-ui .calendar-search-form input[type=search]{width:100%;height:34px;border:1px solid #dfe4ea;border-radius:9px;background:#fff;padding:0 10px 0 31px;color:#2c3b51;font-size:9px;outline:none}.admin-ui .calendar-search-form input[type=search]:focus{border-color:#c7d0dc;box-shadow:0 0 0 3px rgba(23,35,59,.045)}.admin-ui .calendar-utility-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.admin-ui .calendar-filterbar{margin-bottom:8px;animation:calendarPanelIn .14s ease}.admin-ui .calendar-filterbar[hidden]{display:none!important}@keyframes calendarPanelIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}

.admin-ui .calendar-month-shell{overflow:hidden}.admin-ui .calendar-month-shell .calendar-day{min-height:102px;padding:7px 7px 6px;position:relative;cursor:pointer;transition:background .12s ease,box-shadow .12s ease}.admin-ui .calendar-month-shell .calendar-day:hover{background:#fbfcfe}.admin-ui .calendar-month-shell .calendar-day.weekend{background:#fcfcfd}.admin-ui .calendar-month-shell .calendar-day.weekend.outside{background:#fafbfc}.admin-ui .calendar-month-shell .calendar-day.today{background:#fffdf8;box-shadow:inset 0 0 0 1.5px #1b2942}.admin-ui .calendar-month-shell .calendar-day.today:hover{background:#fffaf0}.admin-ui .calendar-month-shell .day-number{display:flex;align-items:center;min-height:22px}.admin-ui .calendar-month-shell .day-number span{font-size:8.5px}.admin-ui .calendar-month-shell .day-number em{font-size:5.5px;padding:3px 5px}.admin-ui .day-quick-add{margin-left:auto;width:22px;height:22px;border:1px solid transparent;border-radius:7px;background:transparent;color:#7d8795;display:grid;place-items:center;font-size:13px;line-height:1;opacity:0;cursor:pointer;transition:.12s}.admin-ui .calendar-day:hover .day-quick-add,.admin-ui .calendar-day:focus-within .day-quick-add{opacity:1}.admin-ui .day-quick-add:hover{background:#fff;border-color:#dde3e9;color:#17243c;box-shadow:0 4px 12px rgba(18,30,55,.07)}.admin-ui .calendar-month-shell .day-events{display:grid;gap:4px}.admin-ui .calendar-month-shell .cal-event{margin:0}.admin-ui .calendar-month-shell .more-events{appearance:none;border:0;background:transparent;text-align:left;width:100%;padding:2px 4px;color:#60718a;font-size:6.6px;font-weight:820;cursor:pointer;border-radius:6px}.admin-ui .calendar-month-shell .more-events:hover{background:#f1f4f7;color:#24334a}

.admin-ui .time-day-head[data-calendar-day]{cursor:pointer;transition:background .12s}.admin-ui .time-day-head[data-calendar-day]:hover{background:#f4f7fa}.admin-ui .time-day-head.today{box-shadow:inset 0 -2px 0 #b98b48}

.admin-ui .calendar-context-expander{margin-top:10px;border:1px solid #e4e8ed;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 6px 20px rgba(18,30,55,.025)}.admin-ui .calendar-context-expander>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 13px;color:#435268}.admin-ui .calendar-context-expander>summary::-webkit-details-marker{display:none}.admin-ui .calendar-context-expander>summary>div{display:flex;align-items:center;gap:9px}.admin-ui .calendar-context-expander>summary strong{font-size:9px;color:#27364d}.admin-ui .calendar-context-expander>summary>span{font-size:7.5px;color:#8993a1}.admin-ui .calendar-context-expander>summary:after{content:'+';font-size:13px;color:#8993a1;margin-left:2px}.admin-ui .calendar-context-expander[open]>summary:after{content:'–'}.admin-ui .calendar-context-content{border-top:1px solid #edf0f3;padding:12px}.admin-ui .calendar-context-content .calendar-bottom-grid{margin-top:0}

.admin-ui .day-drawer-backdrop{position:fixed;inset:0;background:rgba(16,24,38,.18);z-index:88;opacity:0;transition:.18s}.admin-ui .day-drawer-backdrop.visible{opacity:1}.admin-ui .day-drawer{position:fixed;right:0;top:0;bottom:0;width:min(420px,94vw);background:#fff;z-index:89;box-shadow:-20px 0 60px rgba(17,29,49,.16);padding:22px;transform:translateX(103%);transition:.2s ease;overflow:auto}.admin-ui .day-drawer.open{transform:translateX(0)}.admin-ui .day-drawer-summary{display:flex;align-items:baseline;gap:7px;padding:11px 12px;margin:14px 0 8px;border-radius:11px;background:#f7f9fb;border:1px solid #ebeff3}.admin-ui .day-drawer-summary strong{font-size:18px;color:#17263e}.admin-ui .day-drawer-summary span{font-size:8px;color:#87919f}.admin-ui .day-drawer-events{display:grid;gap:8px}.admin-ui .day-agenda-event{position:relative;width:100%;display:grid;grid-template-columns:1fr auto;gap:3px 10px;text-align:left;border:1px solid #e6eaf0;border-left:3px solid var(--event-color);border-radius:11px;background:#fff;padding:10px 11px;cursor:pointer;transition:.12s}.admin-ui .day-agenda-event:hover{border-color:#d8dfe7;box-shadow:0 7px 20px rgba(18,30,55,.055);transform:translateY(-1px)}.admin-ui .day-agenda-event .day-event-time{font-size:7.5px;font-weight:800;color:#68758a;letter-spacing:.01em}.admin-ui .day-event-brand{grid-column:2;grid-row:1;width:22px;height:20px;border-radius:7px;background:#17233b;color:#fff;display:grid;place-items:center;font-size:6px;font-weight:900}.admin-ui .day-agenda-event strong{grid-column:1/-1;font-size:10px;color:#24334b}.admin-ui .day-agenda-event>span:not(.day-event-time):not(.day-event-brand){grid-column:1/-1;font-size:7.5px;color:#8a94a2}.admin-ui .day-agenda-event .tag-line{grid-column:1/-1;margin-top:3px}.admin-ui .day-agenda-event .tag-line small{font-size:6.4px}.admin-ui .day-drawer-empty{padding:32px 12px;text-align:center;border:1px dashed #dce2e9;border-radius:12px;color:#8b95a3;display:grid;gap:4px}.admin-ui .day-drawer-empty strong{font-size:10px;color:#4a586d}.admin-ui .day-drawer-empty span{font-size:8px}.admin-ui .day-drawer-actions{display:flex;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #edf0f3}.admin-ui .day-drawer-actions .btn{flex:1}

@media(max-width:1000px){.admin-ui .calendar-utilitybar{align-items:stretch;flex-direction:column}.admin-ui .calendar-search-form{max-width:none}.admin-ui .calendar-utility-actions{justify-content:flex-end}.admin-ui .calendar-month-shell .calendar-day{min-height:96px}}
@media(max-width:700px){.admin-ui .calendar-utility-actions{justify-content:flex-start}.admin-ui .calendar-search-form .btn{display:none}.admin-ui .calendar-month-shell{overflow:auto}.admin-ui .calendar-month-shell .calendar-weekdays,.admin-ui .calendar-month-shell .calendar-grid{min-width:820px}.admin-ui .day-quick-add{opacity:1}.admin-ui .day-drawer-actions{flex-direction:column}}

/* =========================================================
   JORIDEM Scheduling · v0.2.9
   Premium Visual Refinement · Calendar Workspace
   Calm enterprise geometry, editorial hierarchy, restrained today state.
   ========================================================= */
.admin-ui .calendar-topbar{margin-bottom:16px}
.admin-ui .calendar-topbar .workspace-badge{padding:0;border:0;background:transparent;color:#9aa3b0;border-radius:0;font-size:7px;font-weight:760;letter-spacing:.035em}
.admin-ui .calendar-commandbar-final,.admin-ui .calendar-utilitybar,.admin-ui .calendar-filterbar{border-radius:10px;border-color:#e2e6eb;background:#fff;box-shadow:0 4px 18px rgba(18,30,55,.022)}
.admin-ui .calendar-commandbar-final{padding:11px 13px}
.admin-ui .calendar-commandbar-final .calendar-nav{gap:5px}
.admin-ui .calendar-commandbar-final .calendar-nav h2{font-size:13px;font-weight:780;color:#18263c;letter-spacing:-.018em;margin-left:9px}
.admin-ui .calendar-commandbar-final .calendar-nav .btn{min-height:30px;height:30px;border-radius:6px;padding:6px 10px;background:#fff;border-color:#e0e5eb;color:#526075;font-size:8px;box-shadow:none}
.admin-ui .calendar-commandbar-final .calendar-nav .btn:hover{background:#f8f9fb;border-color:#cfd6df;color:#1d2b42}
.admin-ui .calendar-commandbar-final .calendar-nav .icon-btn{width:30px;padding:0;font-size:12px}

.admin-ui .view-switch{gap:18px;padding:0;border:0;border-radius:0;background:transparent}
.admin-ui .view-switch a{position:relative;padding:8px 1px 9px;border-radius:0;background:transparent!important;box-shadow:none!important;color:#7c8796;font-size:8px;font-weight:760}
.admin-ui .view-switch a:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:transparent;transition:.14s ease}
.admin-ui .view-switch a:hover{color:#334258}
.admin-ui .view-switch a.active{color:#18263c;font-weight:820}
.admin-ui .view-switch a.active:after{background:#aa8750}

.admin-ui .calendar-utilitybar{padding:8px 10px}
.admin-ui .calendar-search-form input[type=search]{height:32px;border-radius:6px;border-color:#e0e5eb;background:#fbfcfd;font-size:8.5px;color:#26354b}
.admin-ui .calendar-search-form input[type=search]:focus{background:#fff;border-color:#aeb9c7;box-shadow:0 0 0 2px rgba(23,35,59,.035)}
.admin-ui .calendar-search-icon{color:#a1a9b4;font-size:12px}
.admin-ui .calendar-utilitybar .btn{border-radius:6px;min-height:30px;height:30px;font-size:8px;padding:6px 10px}
.admin-ui .calendar-utilitybar .btn-ghost{color:#6c7889}
.admin-ui .calendar-utilitybar .btn-ghost:hover{background:#f7f8fa;color:#26364d}

.admin-ui .calendar-shell,.admin-ui .time-calendar{border-radius:10px;border-color:#e0e5ea;box-shadow:0 7px 24px rgba(18,30,55,.025)}
.admin-ui .calendar-weekdays{background:#f8f9fa;border-bottom-color:#e5e9ee}
.admin-ui .calendar-weekdays div{padding:10px 11px;font-size:7px;font-weight:800;letter-spacing:.11em;color:#7e8998}
.admin-ui .calendar-grid{background:#e8ebef;gap:1px}
.admin-ui .calendar-month-shell .calendar-day{min-height:102px;padding:7px 7px 6px;border:0;background:#fff;box-shadow:none;position:relative}
.admin-ui .calendar-month-shell .calendar-day:hover{background:#fcfcfd}
.admin-ui .calendar-month-shell .calendar-day.weekend{background:#fbfbfc}
.admin-ui .calendar-month-shell .calendar-day.outside{background:#f8f9fa;color:#aeb5bf}
.admin-ui .calendar-month-shell .calendar-day.today{background:linear-gradient(180deg,#fffdf8 0,#fff 34%);box-shadow:inset 0 2px 0 #b9975e}
.admin-ui .calendar-month-shell .calendar-day.today:hover{background:linear-gradient(180deg,#fffaf1 0,#fff 36%)}
.admin-ui .calendar-month-shell .calendar-day.today .day-number span{background:transparent;color:#8e6d39;font-weight:900}
.admin-ui .calendar-month-shell .day-number{margin-bottom:7px;min-height:20px}
.admin-ui .calendar-month-shell .day-number span{display:block;width:auto;height:auto;border-radius:0;padding:0;font-size:8.5px;font-weight:790;color:#27364d}
.admin-ui .calendar-month-shell .day-number em{display:none!important}
.admin-ui .calendar-month-shell .calendar-day.outside .day-number span{color:#aab1bb}

.admin-ui .day-quick-add{width:19px;height:19px;border:0;border-radius:4px;background:transparent;color:#9aa3af;font-size:12px;opacity:0}
.admin-ui .calendar-day:hover .day-quick-add,.admin-ui .calendar-day:focus-within .day-quick-add{opacity:.72}
.admin-ui .day-quick-add:hover{opacity:1;background:#f1f3f5;border:0;color:#26364d;box-shadow:none}

/* Event cards: restrained enterprise treatment. */
.admin-ui .cal-event{border-radius:5px;border:1px solid #e1e6ec;border-left:2px solid var(--event-color);background:linear-gradient(90deg,color-mix(in srgb,var(--event-color) 5%,#fff) 0,#fff 46%);box-shadow:none;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease,transform .12s ease}
.admin-ui .cal-event:hover{transform:none;border-color:#d3dae3;box-shadow:0 4px 12px rgba(20,31,50,.05);background:#fff}
.admin-ui .calendar-month-shell .cal-event{padding:5px 6px 5px 7px}
.admin-ui .event-meta-line{margin-bottom:3px}
.admin-ui .event-time-range{font-size:5.9px;font-weight:780;color:#697589;letter-spacing:.005em}
.admin-ui .event-brand-badge{width:16px;height:16px;border-radius:4px;background:#fff;color:#314158;border:1px solid #ccd4de;box-shadow:none;font-size:5.3px;font-weight:850;letter-spacing:.035em}
.admin-ui .cal-event-main strong{font-weight:800;color:#17263e;letter-spacing:-.008em}
.admin-ui .calendar-month-shell .cal-event-main strong{font-size:8px;line-height:1.2;margin-bottom:3px}
.admin-ui .event-subtitle{color:#7d8796}
.admin-ui .event-status,.admin-ui .event-conflict{border-radius:4px;box-shadow:none}

/* Tags become contextual typography instead of decorative pills. */
.admin-ui .tag-line{gap:0;margin-top:3px;white-space:nowrap}
.admin-ui .tag-line small{max-width:110px;padding:0;border:0!important;border-radius:0!important;background:transparent!important;color:#758092;font-size:5.5px;font-weight:660;line-height:1.2}
.admin-ui .tag-line small+small:before{content:"·";display:inline-block;margin:0 4px;color:#b0b7c1}
.admin-ui .tag-line .tag-more{color:#526176;font-weight:800}
.admin-ui .calendar-month-shell .tag-line small{font-size:5.3px;padding:0}
.admin-ui .more-events{padding:3px 2px;border-radius:0;color:#68768a;font-size:6.4px;font-weight:760}
.admin-ui .more-events:hover{background:transparent;color:#1f3048;text-decoration:underline;text-underline-offset:2px}

/* Week/day today state follows the same restrained language. */
.admin-ui .time-calendar-head{background:#f8f9fa}
.admin-ui .time-day-head{min-height:48px;background:#f8f9fa;border-right-color:#e6e9ee}
.admin-ui .time-day-head span{font-size:6.5px;letter-spacing:.09em;color:#8993a1}
.admin-ui .time-day-head strong{font-size:9px;color:#28374d;font-weight:790}
.admin-ui .time-day-head em{display:none!important}
.admin-ui .time-day-head.today{background:#fffdf9;box-shadow:inset 0 -2px 0 #b9975e}
.admin-ui .time-day-head.today strong{color:#896a3a}
.admin-ui .time-day-column.today{background:#fffefb}
.admin-ui .time-day-column.today .time-slot:not(.outside-work-hours){background:rgba(185,151,94,.012)}
.admin-ui .time-slot:hover{background:#fafbfc}
.admin-ui .current-time-line{background:#aa8750}
.admin-ui .current-time-line:before{background:#aa8750}
.admin-ui .current-time-line span{border-radius:3px;background:#fff;color:#7f6337;border-color:#e5d9c5}

/* Context area and filters stay visually secondary. */
.admin-ui .calendar-context-expander{border-radius:9px;box-shadow:none;border-color:#e3e7ec}
.admin-ui .calendar-context-expander>summary{padding:9px 12px}
.admin-ui .calendar-context-expander>summary .section-kicker{color:#a1814f}
.admin-ui .calendar-context-expander>summary:after{font-weight:400;color:#7d8795}
.admin-ui .calendar-filterbar{background:#fafbfc}
.admin-ui .calendar-filters-pro select{border-radius:6px;background:#fff;border-color:#e0e5eb}
.admin-ui .drag-hint span{border-radius:4px;background:#f0f2f5}

/* Event drawer adopts the same sharper visual vocabulary. */
.admin-ui .event-drawer{border-left-color:#dde2e8;box-shadow:-22px 0 55px rgba(18,30,55,.10)}
.admin-ui .drawer-close{border-radius:6px}
.admin-ui .contact-card{border-radius:7px}

@media(max-width:700px){
  .admin-ui .view-switch{gap:12px}
  .admin-ui .calendar-commandbar-final .calendar-nav h2{margin-left:4px}
}

/* V0.3.0 · Multi-Step Booking Experience */
.booking-shell-wizard{max-width:1120px}
.booking-page-wizard .booking-hero{max-width:760px;margin-bottom:30px}
.booking-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 18px;border:1px solid color-mix(in srgb,var(--brand-text) 11%,transparent);background:color-mix(in srgb,var(--brand-surface) 97%,transparent);border-radius:16px;overflow:hidden}
.booking-progress-item{position:relative;display:flex;align-items:center;gap:10px;padding:13px 16px;color:var(--brand-muted);border-right:1px solid color-mix(in srgb,var(--brand-text) 9%,transparent);transition:.18s ease}
.booking-progress-item:last-child{border-right:0}.booking-progress-item.active{color:var(--brand-heading);background:color-mix(in srgb,var(--brand-accent) 7%,var(--brand-surface))}.booking-progress-item.complete{color:var(--brand-text)}
.booking-progress-number{font-size:10px;letter-spacing:.12em;font-weight:850;color:var(--brand-accent)}.booking-progress-label{font-size:12px;font-weight:760;white-space:nowrap}
.booking-wizard-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.booking-stage-card,.booking-selection-summary{background:var(--brand-surface);border:1px solid color-mix(in srgb,var(--brand-text) 10%,transparent);box-shadow:0 18px 60px rgba(19,27,42,.07)}
.booking-stage-card{border-radius:18px;min-height:470px;padding:30px}.booking-selection-summary{border-radius:16px;padding:20px;position:sticky;top:20px}
.booking-step-head{margin-bottom:24px;max-width:680px}.booking-step-kicker{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:var(--brand-accent);margin-bottom:8px}.booking-step-head h2{margin:0;color:var(--brand-heading);font-size:clamp(24px,3vw,34px);line-height:1.12;letter-spacing:-.035em}.booking-step-head p{margin:10px 0 0;color:var(--brand-muted);font-size:14px;line-height:1.65}
.wizard-type-list{display:grid;gap:10px}.wizard-type-option{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;color:inherit;cursor:pointer;background:transparent;margin:0;padding:18px 19px;border-radius:14px;transform:none}.wizard-type-option:hover{transform:none;border-color:color-mix(in srgb,var(--brand-accent) 70%,transparent);background:color-mix(in srgb,var(--brand-accent) 4%,var(--brand-surface))}.wizard-type-option.selected{transform:none;border-color:var(--brand-accent);background:color-mix(in srgb,var(--brand-accent) 6%,var(--brand-surface));box-shadow:inset 3px 0 0 var(--brand-accent)}.type-copy{display:flex;flex-direction:column;align-items:flex-start}.type-select-mark{font-size:19px;color:var(--brand-muted);transition:.18s}.wizard-type-option.selected .type-select-mark{color:var(--brand-accent);transform:translateX(2px)}
.wizard-date-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:24px}.wizard-date{appearance:none;border:1px solid color-mix(in srgb,var(--brand-text) 13%,transparent);background:transparent;color:inherit;border-radius:12px;padding:12px 6px;cursor:pointer;text-align:center;transition:.16s}.wizard-date:hover{border-color:color-mix(in srgb,var(--brand-accent) 65%,transparent)}.wizard-date.active{border-color:var(--brand-accent);background:color-mix(in srgb,var(--brand-accent) 7%,var(--brand-surface));box-shadow:inset 0 0 0 1px var(--brand-accent)}.wizard-date strong{display:block;font-size:12px}.wizard-date span{display:block;font-size:10px;color:var(--brand-muted);margin-top:3px}.wizard-slot-head{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--brand-muted);font-size:11px;font-weight:760;margin-bottom:8px}.wizard-slots{margin-top:0;grid-template-columns:repeat(4,1fr)}
.wizard-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wizard-field{display:grid;gap:7px}.wizard-field:last-child{grid-column:1/-1}.wizard-field>span,.wizard-field-label{font-size:12px;font-weight:760;color:var(--brand-text)}.wizard-field small{font-weight:500;color:var(--brand-muted)}.wizard-field input{width:100%;box-sizing:border-box;border:1px solid color-mix(in srgb,var(--brand-text) 14%,transparent);background:transparent;color:inherit;border-radius:11px;padding:13px 14px;outline:none}.wizard-field input:focus{border-color:var(--brand-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-accent) 11%,transparent)}.wizard-mode-block{margin-top:22px}.wizard-mode-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.wizard-mode{appearance:none;border:1px solid color-mix(in srgb,var(--brand-text) 13%,transparent);background:transparent;color:inherit;border-radius:10px;padding:10px 13px;font-size:12px;font-weight:730;cursor:pointer}.wizard-mode:hover,.wizard-mode.active{border-color:var(--brand-accent);background:color-mix(in srgb,var(--brand-accent) 7%,var(--brand-surface))}.reschedule-customer{margin-bottom:20px}
.booking-step-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:30px;padding-top:20px;border-top:1px solid color-mix(in srgb,var(--brand-text) 9%,transparent)}.wizard-next,.wizard-back{appearance:none;border:0;background:transparent;color:inherit;cursor:pointer;font-weight:800;padding:11px 3px}.wizard-next{margin-left:auto;color:var(--brand-heading)}.wizard-back{color:var(--brand-muted)}.wizard-next:hover,.wizard-back:hover{color:var(--brand-accent)}.wizard-submit{width:auto;min-width:240px;margin-left:auto;border-radius:10px}.wizard-error{margin-top:14px;padding:11px 13px;border-radius:10px;background:rgba(163,52,52,.08);border:1px solid rgba(163,52,52,.18);color:#A33434;font-size:12px;font-weight:700}
.selection-summary-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:var(--brand-accent);margin-bottom:8px}.selection-summary-row{padding:13px 0;border-bottom:1px solid color-mix(in srgb,var(--brand-text) 8%,transparent)}.selection-summary-row span{display:block;color:var(--brand-muted);font-size:10px;margin-bottom:4px}.selection-summary-row strong{display:block;font-size:12px;line-height:1.45;color:var(--brand-heading);font-weight:790}.selection-summary-foot{font-size:10px;line-height:1.55;color:var(--brand-muted);margin-top:14px}.wizard-review{border-top:1px solid color-mix(in srgb,var(--brand-text) 9%,transparent)}.wizard-review-row{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid color-mix(in srgb,var(--brand-text) 9%,transparent)}.wizard-review-row span{font-size:11px;color:var(--brand-muted)}.wizard-review-row strong{font-size:13px;color:var(--brand-heading);font-weight:790}.wizard-consent-note{font-size:10px;line-height:1.6;color:var(--brand-muted);margin-top:18px;max-width:620px}
.booking-page-wizard .legal-footer{margin-top:28px}

@media(max-width:900px){.booking-wizard-grid{grid-template-columns:1fr}.booking-selection-summary{position:relative;top:auto;order:-1;display:grid;grid-template-columns:repeat(3,1fr);gap:0}.selection-summary-label,.selection-summary-foot{grid-column:1/-1}.selection-summary-row{padding:10px 12px 10px 0}.wizard-date-strip{grid-template-columns:repeat(4,1fr)}.wizard-date:nth-child(n+5){display:none}}
@media(max-width:640px){.booking-progress{grid-template-columns:repeat(4,1fr);border-radius:12px}.booking-progress-item{padding:10px 7px;justify-content:center}.booking-progress-number{display:none}.booking-progress-label{font-size:10px;overflow:hidden;text-overflow:ellipsis}.booking-stage-card{padding:20px 17px;min-height:0;border-radius:14px}.booking-selection-summary{display:none}.booking-step-head h2{font-size:27px}.wizard-date-strip{grid-template-columns:repeat(3,1fr)}.wizard-date:nth-child(n+4){display:none}.wizard-slots{grid-template-columns:repeat(2,1fr)}.wizard-fields{grid-template-columns:1fr}.wizard-field:last-child{grid-column:auto}.wizard-review-row{grid-template-columns:1fr;gap:4px}.booking-step-actions{margin-top:24px}.wizard-submit{width:100%;min-width:0}.booking-step-actions:has(.wizard-submit:not([hidden])) .wizard-back{display:none}.booking-page-wizard .brandbar{margin-bottom:26px}}


/* =========================================================
   JORIDEM Scheduling · v0.3.1
   Participant Drawer Layout Fix
   ========================================================= */
.admin-ui .event-drawer .participant-editor{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
  padding:9px;
  border-radius:11px;
  background:#fafbfc;
}
.admin-ui .event-drawer .participant-row{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) 30px;
  grid-template-areas:
    "participant-name participant-email participant-remove"
    "participant-role participant-status participant-remove";
  gap:7px 8px;
  align-items:center;
  padding:9px;
  border:1px solid #e6e9ee;
  border-radius:10px;
  background:#fff;
}
.admin-ui .event-drawer .participant-row > input:nth-child(1){grid-area:participant-name}
.admin-ui .event-drawer .participant-row > input:nth-child(2){grid-area:participant-email}
.admin-ui .event-drawer .participant-row > select:nth-child(3){grid-area:participant-role}
.admin-ui .event-drawer .participant-row > select:nth-child(4){grid-area:participant-status}
.admin-ui .event-drawer .participant-row > .participant-remove{
  grid-area:participant-remove;
  align-self:stretch;
  justify-self:end;
  width:30px;
  min-height:34px;
  height:auto;
}
.admin-ui .event-drawer .participant-row input,
.admin-ui .event-drawer .participant-row select{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.admin-ui .event-drawer .participant-add{margin-top:1px}

@media(max-width:520px){
  .admin-ui .event-drawer .participant-row{
    grid-template-columns:minmax(0,1fr) 30px;
    grid-template-areas:
      "participant-name participant-remove"
      "participant-email participant-remove"
      "participant-role participant-remove"
      "participant-status participant-remove";
  }
}
