:root{
  --bg:#050816;--bg2:#0b1224;--panel:rgba(16,24,45,.74);--panel2:rgba(34,20,57,.72);
  --line:rgba(158,178,255,.18);--text:#fff;--muted:#aeb9d4;--cyan:#37c7ff;--violet:#8b5cf6;--pink:#ec4899;--green:#21d07a;--yellow:#ffd84d;--red:#ff3b66;
  --nav-dashboard:#38bdf8;--nav-pending:#f59e0b;--nav-calendar:#60a5fa;--nav-bookings:#8b5cf6;
  --nav-meetings:#d946ef;--nav-invites:#c084fc;--nav-rooms:#f43f5e;--nav-monitor:#facc15;
  --nav-users:#10b981;--nav-companies:#fb923c;--nav-resources:#14b8a6;--nav-designer:#a78bfa;
  --nav-permissions:#ef4444;--nav-logs:#84cc16;--nav-system:#94a3b8;--nav-lab:#e879f9;
  --nav-contacts:#22c55e;--nav-support:#06b6d4;--nav-profile:#f472b6;
  --radius:24px;--page-section-gap:24px;--glow:0 0 46px rgba(139,92,246,.25), inset 0 1px 0 rgba(255,255,255,.08)
}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;font-family:Inter,system-ui,Segoe UI,Arial,sans-serif;background:radial-gradient(circle at 15% 10%,rgba(139,92,246,.35),transparent 26%),radial-gradient(circle at 86% 10%,rgba(55,199,255,.22),transparent 30%),linear-gradient(135deg,#060915,#080a1a 55%,#180d2d);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}.app{display:grid;grid-template-columns:290px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,rgba(35,24,78,.78),rgba(6,9,24,.94));border-right:1px solid var(--line);padding:24px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow:hidden}.brand{display:flex;gap:14px;align-items:center;margin-bottom:34px}.logo{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,var(--cyan),var(--violet),var(--pink));box-shadow:0 0 28px rgba(139,92,246,.5)}.brand b{font-size:18px}.brand span{display:block;color:var(--muted);font-size:13px}.nav small{display:block;color:#7f8aaa;font-weight:800;margin:20px 14px 10px}.nav a{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:16px;color:#c9d2ed;margin:7px 0;font-weight:700}.nav a.active,.nav a:hover{background:linear-gradient(90deg,rgba(55,199,255,.28),rgba(139,92,246,.44));box-shadow:0 0 22px rgba(139,92,246,.25)}.nav{flex:1;overflow-y:auto;padding-right:6px}.rolebox{flex:0 0 auto;margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.06)}.main{padding:32px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.page-title h1{margin:0 0 6px;font-size:36px}.page-title p{margin:0;color:var(--muted)}.actions{display:flex;gap:12px;align-items:center}.btn{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;border-radius:16px;padding:12px 18px;font-weight:800;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--cyan),var(--violet));border:0}.btn.danger{background:rgba(255,59,102,.2);border-color:rgba(255,59,102,.35)}.btn.small{padding:8px 12px;font-size:13px}.card{background:linear-gradient(135deg,rgba(13,28,52,.76),rgba(40,20,59,.7));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--glow);padding:24px;margin-bottom:22px}.grid{display:grid;gap:18px}.grid.cols4{grid-template-columns:repeat(4,1fr)}.grid.cols3{grid-template-columns:repeat(3,1fr)}.metric{padding:22px;border-radius:22px;background:linear-gradient(135deg,rgba(55,199,255,.14),rgba(139,92,246,.17));border:1px solid var(--line)}.metric strong{display:block;font-size:34px;margin-top:10px}.muted{color:var(--muted)}.row{display:flex;gap:12px;align-items:center}.space{justify-content:space-between}.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--line);font-weight:800;font-size:13px}.pill.green{background:rgba(33,208,122,.16);border-color:rgba(33,208,122,.35)}.pill.red{background:rgba(255,59,102,.18);border-color:rgba(255,59,102,.35)}.pill.yellow{background:rgba(255,216,77,.15);border-color:rgba(255,216,77,.35)}input,select,textarea{width:100%;background:rgba(8,13,31,.72);border:1px solid rgba(255,255,255,.16);border-radius:16px;color:#fff;padding:14px 16px;font:inherit}label{display:block;color:var(--muted);font-size:13px;margin:12px 0 7px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:14px;border-bottom:1px solid var(--line)}
.main>section{margin-bottom:var(--page-section-gap)}
/* calendar */
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.weekday{color:#aeb9d4;font-weight:900;padding:8px}.day{min-height:120px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.045);padding:12px;cursor:pointer}.day:hover{border-color:rgba(55,199,255,.65);box-shadow:0 0 20px rgba(55,199,255,.16)}.event-pill{display:block;margin-top:8px;padding:8px 10px;border-radius:12px;background:linear-gradient(135deg,rgba(236,72,153,.35),rgba(139,92,246,.28));border:1px solid rgba(236,72,153,.32);font-size:12px;font-weight:900}.event-pill span{display:block;color:#d7dff8;font-size:11px;margin-top:3px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.62);display:none;align-items:center;justify-content:center;padding:28px;z-index:50}.modal.show{display:flex}.modal-panel{width:min(1180px,88vw);max-height:84vh;display:flex;flex-direction:column;padding:0;overflow:hidden}.modal-head{padding:22px 26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex:0 0 auto}.scroll-shell{padding:0 14px 16px 0;margin:18px 10px 6px 24px;overflow:auto;max-height:66vh;border-radius:18px;scrollbar-color:var(--violet) rgba(255,255,255,.06);scrollbar-width:thin}.scroll-shell::-webkit-scrollbar{width:10px;height:10px}.scroll-shell::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:999px}.scroll-shell::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:999px}.schedule-grid{display:grid;grid-template-columns:90px repeat(5,minmax(190px,1fr));min-width:1050px;border:1px solid var(--line);border-radius:18px;overflow:hidden}.schedule-grid>div{min-height:54px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px;background:rgba(255,255,255,.035)}.schedule-grid .head{position:sticky;top:0;background:#0b1226;z-index:2;font-weight:900}.schedule-grid .time{background:#101129;color:#cbd5ee;font-weight:900}.schedule-grid .free{background:linear-gradient(90deg,rgba(33,208,122,.08),rgba(55,199,255,.06))}.booking-block{background:linear-gradient(135deg,rgba(236,72,153,.35),rgba(139,92,246,.28));border:1px solid rgba(236,72,153,.6);border-radius:14px;padding:9px;font-weight:900;box-shadow:0 0 18px rgba(236,72,153,.12)}.booking-block small{display:block;font-weight:800;color:#fff;margin-top:3px}.monitor-stage{min-height:78vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 20% 10%,rgba(55,199,255,.25),transparent 30%),radial-gradient(circle at 90% 0,rgba(236,72,153,.25),transparent 35%),#070b18;border-radius:24px}.monitor-card{width:78%;min-height:500px;border-radius:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 70px rgba(236,72,153,.25);background:linear-gradient(135deg,#b01035,#541377)}.monitor-card.free{background:linear-gradient(135deg,#008853,#00bcd4)}.monitor-card.soon{background:linear-gradient(135deg,#a96a00,#f59e0b)}.monitor-card h1{font-size:56px;margin:0 0 18px}.monitor-card h2{font-size:52px;margin:0 0 28px}.monitor-card .count{font-size:34px;color:var(--yellow);font-weight:1000}.qr{position:absolute;right:42px;bottom:42px;width:130px;height:130px;border-radius:22px;background:repeating-linear-gradient(45deg,#fff 0 10px,#0a1020 10px 20px);display:flex;align-items:center;justify-content:center;color:#000;font-weight:1000}.company-logo{position:absolute;left:42px;top:42px;width:92px;height:92px;border-radius:24px;background:linear-gradient(135deg,var(--cyan),var(--violet),var(--pink));display:flex;align-items:center;justify-content:center;font-weight:1000}.designer{display:grid;grid-template-columns:1fr 1.1fr;gap:22px}.slider-row{margin:15px 0}.slider-row input{padding:0}.admin-only .user-link{display:none}.user-only .admin-link{display:none}@media(max-width:900px){.app{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.rolebox{position:static;margin-top:20px}.grid.cols4,.grid.cols3,.designer{grid-template-columns:1fr}.main{padding:18px}.calendar-grid{grid-template-columns:repeat(2,1fr)}.monitor-card{width:96%;min-height:460px}.monitor-card h1{font-size:38px}.monitor-card h2{font-size:36px}}

/* V12 fixes */
.login-hero{width:min(560px,94vw);padding:34px}.login-actions{display:grid;gap:10px;margin-top:18px}.login-actions .btn,.login-actions button{display:flex;align-items:center;justify-content:center;text-align:center}.role-select{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.role-choice{padding:13px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.06);cursor:pointer;text-align:center;font-weight:900}.role-choice.active{background:linear-gradient(135deg,rgba(55,199,255,.32),rgba(139,92,246,.42));box-shadow:0 0 22px rgba(139,92,246,.25)}
.day.today{border-color:rgba(55,199,255,.9);box-shadow:0 0 22px rgba(55,199,255,.25)}
.event-pill.room-diamante,.booking-event.room-diamante{--room:#2f9bff;background:linear-gradient(135deg,rgba(47,155,255,.45),rgba(139,92,246,.26));border-color:rgba(47,155,255,.75)}
.event-pill.room-rubino,.booking-event.room-rubino{--room:#ff3b66;background:linear-gradient(135deg,rgba(255,59,102,.45),rgba(236,72,153,.25));border-color:rgba(255,59,102,.75)}
.event-pill.room-zaffiro,.booking-event.room-zaffiro{--room:#37d6e8;background:linear-gradient(135deg,rgba(55,214,232,.42),rgba(37,99,235,.22));border-color:rgba(55,214,232,.75)}
.event-pill.room-executive,.booking-event.room-executive{--room:#35d073;background:linear-gradient(135deg,rgba(53,208,115,.42),rgba(20,83,45,.28));border-color:rgba(53,208,115,.75)}
.event-pill.room-training,.booking-event.room-training{--room:#f59e0b;background:linear-gradient(135deg,rgba(245,158,11,.48),rgba(120,53,15,.25));border-color:rgba(245,158,11,.78)}
.schedule-card{padding:0;overflow:hidden;background:linear-gradient(135deg,rgba(12,20,40,.86),rgba(33,18,54,.72));}
.schedule-wrap{padding:0 14px 16px 0;margin:18px 10px 6px 24px;overflow:auto;max-height:66vh;border-radius:18px;scrollbar-color:var(--violet) rgba(255,255,255,.06);scrollbar-width:thin;}
.schedule-wrap::-webkit-scrollbar{width:10px;height:10px}.schedule-wrap::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:999px}.schedule-wrap::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:999px}
.timeline-board{--timeline-room-width:360px;display:grid;grid-template-columns:90px repeat(5, var(--timeline-room-width));min-width:max-content;border:1px solid var(--line);border-radius:18px;overflow:hidden;position:relative;background:rgba(5,8,22,.62)}
.timeline-cell{border-right:1px solid rgba(158,178,255,.16);border-bottom:1px solid rgba(158,178,255,.14);min-height:46px;padding:10px;background:rgba(255,255,255,.025)}
.timeline-head{position:sticky;top:0;z-index:10;background:rgba(9,16,35,.96);font-weight:1000}.timeline-time{background:rgba(16,17,41,.9);color:#cbd5ee;font-weight:1000}.timeline-room{position:relative;padding:0;background:linear-gradient(90deg,rgba(33,208,122,.06),rgba(55,199,255,.035));}
.timeline-room .slot-label{position:absolute;left:10px;top:10px;color:rgba(220,230,255,.7);font-weight:800;pointer-events:none}.booking-event{position:absolute;left:10px;right:10px;border:1px solid rgba(255,255,255,.24);border-radius:15px;padding:10px 12px;font-weight:1000;box-shadow:0 0 22px rgba(0,0,0,.2);overflow:hidden;z-index:4}.booking-event small{display:block;margin-top:4px;color:#fff;font-weight:900}.legend-dot{width:13px;height:13px;border-radius:50%;display:inline-block;margin-right:6px}.calendar-controls{display:flex;gap:10px;align-items:center;flex-wrap:nowrap;min-width:0}.calendar-controls select{width:auto;min-width:170px}.transparency-note{font-size:12px;color:var(--muted);margin-top:6px}.monitor-card{transition:background 1.2s ease, box-shadow 1.2s ease, width .2s ease, min-height .2s ease}.monitor-card.busy{background:linear-gradient(135deg,#b01035,#541377);box-shadow:0 0 70px rgba(255,59,102,.38),0 0 180px rgba(236,72,153,.22)}.monitor-card.free{background:linear-gradient(135deg,#008853,#00bcd4);box-shadow:0 0 70px rgba(33,208,122,.38),0 0 180px rgba(55,199,255,.22)}.monitor-card.soon{background:linear-gradient(135deg,#9a6a00,#f59e0b);box-shadow:0 0 70px rgba(255,216,77,.38),0 0 180px rgba(245,158,11,.22)}.monitor-card.closing{background:linear-gradient(135deg,#d50000,#7c135f);box-shadow:0 0 90px rgba(255,59,102,.5),0 0 220px rgba(255,87,34,.28)}
@media(max-width:900px){.role-select{grid-template-columns:1fr}.schedule-wrap{margin:12px;max-height:70vh}.timeline-board{min-width:980px}}

/* V13 role, logout, calendar, designer fixes */
.login-screen{display:grid;place-items:center;min-height:100vh;padding:24px}.login-hero h1{font-size:42px;margin:18px 0 8px}.mini-link{display:inline-flex;margin:10px 0 8px;color:#dbe7ff;font-weight:900}.logout-btn{width:100%;margin-top:8px;border:1px solid rgba(255,255,255,.16);background:rgba(255,59,102,.18);color:#fff;border-radius:14px;padding:11px 14px;font-weight:1000;cursor:pointer}.logout-btn:hover{box-shadow:0 0 18px rgba(255,59,102,.25)}.sidebar{overflow:hidden}.nav{flex:1;overflow-y:auto;padding-right:8px}.nav::-webkit-scrollbar{width:8px}.nav::-webkit-scrollbar-track{background:rgba(255,255,255,.04);border-radius:99px}.nav::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:99px}.empty-day{display:block;margin-top:12px;color:rgba(215,223,248,.55);font-weight:800;font-size:12px}.cols2{grid-template-columns:repeat(2,1fr)}.permissions-grid input[type=checkbox]{width:auto;margin-right:10px}.permissions-grid label{font-size:15px;color:#fff;background:rgba(255,255,255,.045);padding:11px 12px;border-radius:14px;border:1px solid var(--line)}
.checkline{display:flex;align-items:center;gap:10px;color:#fff;font-size:15px;background:rgba(255,255,255,.045);padding:11px 12px;border-radius:14px;border:1px solid var(--line)}.checkline input[type=checkbox]{width:auto;margin:0}.company-check-list{display:grid;gap:9px;max-height:230px;overflow:auto;padding-right:6px}.company-check-list.is-disabled{opacity:.58}.company-check-list.is-disabled .company-check{cursor:not-allowed}.company-check span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.super-scope-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.super-scope-modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:28px;background:rgba(0,0,0,.62);backdrop-filter:blur(8px)}.super-scope-window{width:min(980px,92vw);max-height:min(760px,88vh);display:flex;flex-direction:column;border:1px solid rgba(75,196,255,.28);border-radius:22px;background:linear-gradient(135deg,rgba(8,16,36,.96),rgba(44,15,58,.96));box-shadow:0 30px 90px rgba(0,0,0,.48),0 0 44px rgba(139,92,246,.22);overflow:hidden}.super-scope-frame{margin:18px 22px;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(3,8,22,.56);min-height:280px;overflow:auto}.super-scope-frame .company-check-list{max-height:52vh;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.super-scope-footer{display:flex;gap:10px;justify-content:flex-end;align-items:center;padding:0 22px 22px;flex-wrap:wrap}
.timeline-room{overflow:visible}.booking-event{pointer-events:auto}.calendar-grid .event-pill{box-shadow:0 0 16px rgba(0,0,0,.18)}
@media(max-width:900px){.cols2{grid-template-columns:1fr}.calendar-controls select{width:100%}}

/* V13.1 fixes: scroll eventi giorno + sale dinamiche */
.day{display:flex;flex-direction:column;gap:8px;overflow:hidden;}
.day-top{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;}
.day-events{max-height:142px;overflow-y:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:var(--violet) rgba(255,255,255,.05);}
.day-events::-webkit-scrollbar{width:6px;}
.day-events::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:999px;}
.day-events::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--cyan),var(--violet));border-radius:999px;}
.day-events .event-pill:first-child{margin-top:0;}
.stack{display:grid;gap:16px;margin-bottom:18px;}
.room-card{animation:fadeUp .22s ease both;}
.room-resources{display:flex;gap:8px;flex-wrap:wrap;}
.resource-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:10px;}
.resource-choice{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:rgba(255,255,255,.045);border-radius:16px;padding:11px 12px;cursor:pointer;font-weight:900;color:#eef5ff;}
.resource-choice input{width:auto;margin:0;accent-color:var(--violet);}
.resource-choice:has(input:checked){border-color:rgba(55,199,255,.75);box-shadow:0 0 18px rgba(55,199,255,.16);background:linear-gradient(135deg,rgba(55,199,255,.18),rgba(139,92,246,.20));}
.resource-choice span{display:grid;gap:2px;line-height:1.1}
.resource-choice small{font-size:11px;color:#aeb9d5}
.resource-choice-disabled{opacity:.58}
.resource-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 220px;gap:12px;margin:16px 0}
.resource-chip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.resource-chip-card{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:8px 12px;text-align:left;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.055);color:#fff;padding:13px 14px;cursor:pointer;min-height:82px}
.resource-chip-card:hover{border-color:rgba(55,199,255,.65);box-shadow:0 0 24px rgba(55,199,255,.14)}
.resource-chip-card.is-inactive{opacity:1;border-color:rgba(255,59,102,.42);background:linear-gradient(135deg,rgba(255,59,102,.16),rgba(90,20,46,.22))}
.resource-chip-icon{display:grid;place-items:center;min-width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,rgba(55,199,255,.22),rgba(139,92,246,.22));border:1px solid rgba(55,199,255,.28);font-size:12px;font-weight:1000;color:#dff6ff}
.resource-chip-card b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.resource-chip-card small{display:block;color:#aeb9d5;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.resource-card-actions{grid-column:2;display:flex;align-items:center;gap:8px;min-width:0;justify-content:flex-start}
.resource-card-edit{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:1000;cursor:pointer}
.resource-card-edit:hover{border-color:rgba(55,199,255,.62);box-shadow:0 0 16px rgba(55,199,255,.14)}
.resource-card-state{border:1px solid rgba(33,208,122,.25);background:rgba(33,208,122,.16);color:#bbf7d0;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:1000;cursor:pointer}
.resource-card-state.is-inactive{border-color:rgba(255,59,102,.28);background:rgba(255,59,102,.15);color:#fecdd3}
.resource-card-state:disabled{opacity:.55;cursor:wait}
.resource-chip-card em{font-style:normal;font-size:12px;font-weight:1000;border-radius:999px;padding:7px 10px;background:rgba(33,208,122,.16);color:#bbf7d0}
.resource-chip-card.is-inactive em{background:rgba(255,59,102,.15);color:#fecdd3}
.resource-form-actions{margin-top:16px;align-items:center}
.resource-inline-icon,.resource-pill-icon,.resource-chip-img{width:34px;height:34px;border-radius:11px;display:inline-grid;place-items:center;object-fit:contain;background:rgba(55,199,255,.12);border:1px solid rgba(55,199,255,.22);color:#dff6ff;font-size:18px;font-weight:1000;line-height:1;flex:0 0 auto}
.resource-pill{display:inline-flex;align-items:center;gap:7px}
.resource-pill-icon{width:22px;height:22px;border-radius:8px;font-size:13px}
.resource-chip-img{width:32px;height:32px;border:0;background:transparent}
.resource-icon-editor{display:grid;grid-template-columns:1.1fr 1.3fr 220px;gap:16px;margin-top:16px;align-items:start}
.inline-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.modal-backdrop{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:28px;background:rgba(2,6,23,.70);backdrop-filter:blur(9px)}
.modal-backdrop[hidden]{display:none!important}
.modal-card{width:min(980px,94vw);max-height:88vh;overflow:auto}
.account-reject-modal{width:min(620px,94vw)}.account-reject-modal textarea{width:100%;margin-top:8px}
.resource-icon-modal{padding:24px}
.compact-toolbar{margin:14px 0}
.resource-icon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;max-height:56vh;overflow:auto;padding-right:6px;scrollbar-color:var(--violet) rgba(255,255,255,.06);scrollbar-width:thin}
.resource-icon-option{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:2px 10px;text-align:left;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.055);color:#fff;padding:10px;cursor:pointer}
.resource-icon-option:hover{border-color:rgba(55,199,255,.72);box-shadow:0 0 22px rgba(55,199,255,.14)}
.resource-icon-option span{grid-row:1/3;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(55,199,255,.18),rgba(139,92,246,.22));border:1px solid rgba(55,199,255,.24);font-size:23px;line-height:1;font-weight:1000;color:#e7fbff}
.resource-icon-option b,.resource-icon-option small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.resource-icon-option small{color:#aeb9d5}
.image-field-preview.resource-icon-preview{margin-top:10px}
.grid.cols5{grid-template-columns:repeat(5,1fr)}
@media(max-width:1200px){.grid.cols5{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.resource-icon-editor{grid-template-columns:1fr}.inline-control{grid-template-columns:1fr}.modal-backdrop{padding:14px}}
@media(max-width:720px){.grid.cols5,.resource-toolbar{grid-template-columns:1fr}}
@media(max-width:1400px){.resource-chip-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.resource-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.resource-chip-grid{grid-template-columns:1fr}}
.toast{position:fixed;right:24px;top:24px;background:linear-gradient(135deg,var(--cyan),var(--violet));border-radius:16px;padding:14px 18px;color:white;font-weight:1000;box-shadow:0 18px 55px rgba(139,92,246,.35);z-index:80;opacity:0;transform:translateY(-12px);pointer-events:none;transition:.25s ease;}
.toast.show{opacity:1;transform:translateY(0);}
.sep{border:0;border-top:1px solid var(--line);margin:22px 0;}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.resource-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.resource-grid{grid-template-columns:1fr}.day-events{max-height:120px}}


/* V14 design-freeze refinements */
.day{height:190px;overflow:hidden}.day-top{display:flex;justify-content:space-between;align-items:center}.day-events{max-height:138px;overflow-y:auto;padding-right:6px;margin-top:8px}.event-pill{line-height:1.15}.event-pill .event-time{display:block;color:#f2f6ff;font-size:11px;margin-top:4px;font-weight:1000;opacity:.95}.event-pill.invite-pending{background:linear-gradient(135deg,rgba(255,216,77,.42),rgba(245,158,11,.24));border-color:rgba(255,216,77,.65)}.event-pill.confirmed{background:linear-gradient(135deg,rgba(33,208,122,.42),rgba(55,199,255,.20));border-color:rgba(33,208,122,.65)}.event-pill.mine{background:linear-gradient(135deg,rgba(55,199,255,.40),rgba(139,92,246,.24));border-color:rgba(55,199,255,.65)}.user-calendar-grid .day{min-height:190px}.user-calendar-grid .event-pill{cursor:pointer}.invite-panel{width:min(760px,92vw)}
.calendar-fit-page .app{height:100vh;min-height:100vh;overflow:hidden}
.calendar-fit-page .main{height:100vh;display:flex;flex-direction:column;overflow:hidden}
.calendar-fit-page .topbar{flex:0 0 auto}
.calendar-fit-page #calendarDays,
.calendar-fit-page #userCalendarDays{flex:1 1 auto;min-height:0;grid-template-rows:auto repeat(var(--calendar-week-count,5),minmax(0,1fr))}
.calendar-fit-page #calendarDays.card,
.calendar-fit-page #userCalendarDays.card{display:grid}
.calendar-fit-page .main>section.card:has(#calendarDays),
.calendar-fit-page .main>section.card:has(#userCalendarDays){flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;margin-bottom:0}
.calendar-fit-page .app:has(.calendar-box-custom-height){height:auto;min-height:100vh;overflow:visible}
.calendar-fit-page .main:has(.calendar-box-custom-height){height:auto;min-height:100vh;overflow:visible}
.calendar-fit-page .main{overflow-x:auto}
.calendar-fit-page .main.calendar-wide-main{min-width:calc(var(--calendar-expanded-width, 100%) + 64px);background:radial-gradient(circle at 15% 10%,rgba(139,92,246,.22),transparent 26%),radial-gradient(circle at 86% 10%,rgba(55,199,255,.16),transparent 30%),linear-gradient(135deg,#060915,#080a1a 55%,#180d2d)}
.calendar-fit-page .main>section.card.calendar-box-custom-height{flex:0 0 auto;min-height:var(--calendar-box-min-height,0)}
.calendar-fit-page .main>section.card.calendar-box-custom-height:has(#calendarDays),
.calendar-fit-page .main>section.card.calendar-box-custom-height:has(#userCalendarDays){flex:0 0 auto;min-height:var(--calendar-box-min-height,0)}
.calendar-fit-page .main>section.card:has(#calendarDays)>.row,
.calendar-fit-page .main>section.card:has(#userCalendarDays)>.row{flex:0 0 auto;gap:14px;align-items:flex-start;margin-bottom:12px}
.calendar-fit-page .main>section.card:has(#calendarDays)>.row h2,
.calendar-fit-page .main>section.card:has(#userCalendarDays)>.row h2{flex:1 1 auto;min-width:220px;margin:0;font-size:24px;line-height:1.15}
.calendar-fit-page .app.superadmin-role{height:auto;min-height:100vh;overflow:visible}
.calendar-fit-page .calendar-controls{margin-left:auto}
.calendar-fit-page .calendar-controls select{min-width:150px}
.calendar-fit-page .calendar-controls input[type=date]{min-width:160px}
.calendar-fit-page .calendar-controls input[type=number]{min-width:120px}
.calendar-fit-page .calendar-controls .btn.small{min-width:36px;padding:9px 11px}
.calendar-resizable-card{position:relative}
.calendar-box-edit-toggle{display:inline-flex;align-items:center;gap:8px;min-height:42px;margin:0;padding:0 14px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.07);color:#fff;font-size:12px;font-weight:1000;white-space:nowrap;cursor:pointer}
.calendar-box-edit-toggle input{width:auto;min-width:0}
.calendar-box-edit-panel{position:absolute;right:18px;bottom:34px;display:none;grid-template-columns:repeat(3,minmax(130px,1fr)) auto;gap:10px;align-items:end;justify-content:end;width:min(720px,calc(100% - 36px));z-index:120;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:linear-gradient(135deg,rgba(12,18,42,.92),rgba(38,23,58,.90));box-shadow:0 18px 50px rgba(0,0,0,.34);backdrop-filter:blur(10px)}
.calendar-box-edit-panel label{margin:0;color:var(--muted);font-size:12px;font-weight:900}
.calendar-box-edit-panel label>span{display:flex;align-items:center;justify-content:space-between;gap:10px}
.calendar-box-edit-panel b{color:#eaf2ff;font-size:12px}
.calendar-box-edit-panel input{height:26px;padding:0}
.calendar-box-edit-panel input[type=number]{width:74px;height:34px;padding:0 10px;text-align:center}
.calendar-box-edit-panel .calendar-box-max-label{display:flex;align-items:end;gap:8px;white-space:nowrap}
.calendar-box-edit-panel .calendar-box-max-label>span{display:block;margin-bottom:8px}
.calendar-box-edit-panel .calendar-box-max-label:after{content:"%";margin:0 2px 8px -4px;color:var(--muted);font-weight:1000}
.calendar-resizable-card.calendar-box-editing .calendar-box-edit-panel{display:grid}
.calendar-box-resize{position:absolute;left:18px;right:18px;bottom:5px;height:18px;display:none;cursor:ns-resize;touch-action:none;z-index:3}
.calendar-box-resize:after{content:"";position:absolute;left:50%;bottom:5px;width:92px;height:4px;transform:translateX(-50%);border-radius:999px;background:linear-gradient(90deg,var(--cyan),var(--violet));box-shadow:0 0 18px rgba(55,199,255,.32)}
.calendar-box-resize-x{position:absolute;top:90px;right:5px;bottom:28px;width:18px;display:none;cursor:ew-resize;touch-action:none;z-index:3}
.calendar-box-resize-x:after{content:"";position:absolute;top:50%;right:5px;width:4px;height:92px;transform:translateY(-50%);border-radius:999px;background:linear-gradient(var(--cyan),var(--violet));box-shadow:0 0 18px rgba(55,199,255,.32)}
.calendar-resizable-card.calendar-box-editing{padding-bottom:28px;overflow:visible!important;z-index:20}
.calendar-resizable-card.calendar-box-editing .calendar-box-resize,
.calendar-resizable-card.calendar-box-editing .calendar-box-resize-x{display:block}
.calendar-resizable-card{--calendar-text-scale:1}
.calendar-resizable-card .weekday{font-size:calc(16px * var(--calendar-text-scale))}
.calendar-resizable-card .day{font-size:calc(16px * var(--calendar-text-scale))}
.calendar-resizable-card .event-pill{font-size:calc(12px * var(--calendar-text-scale))}
.calendar-resizable-card .event-pill .event-time{font-size:calc(11px * var(--calendar-text-scale))}
.calendar-resizable-card .empty-day{font-size:calc(12px * var(--calendar-text-scale))}
.calendar-grid.calendar-week-view{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:1fr;align-items:stretch;height:100%;min-height:0}
.calendar-fit-page #calendarDays.calendar-week-view,
.calendar-fit-page #userCalendarDays.calendar-week-view{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:minmax(0,1fr);align-items:stretch;gap:10px}
.calendar-grid.calendar-week-view .week-day{height:100%;min-height:0}
.calendar-grid.calendar-week-view .day-events{max-height:none;min-height:0;overflow:auto;padding-right:6px}
.calendar-grid.calendar-week-view .event-pill{margin-top:8px}
.calendar-grid.calendar-week-view .event-pill:first-child{margin-top:0}
.calendar-grid.calendar-day-view{display:block;min-height:0}
.calendar-inline-day{height:100%;min-height:620px;display:flex;flex-direction:column;gap:12px}
.calendar-resizable-card .calendar-inline-toolbar [data-timeline-controls]{display:none!important}
.calendar-inline-day .timeline-room-filters{flex:0 0 auto}
.calendar-inline-schedule{flex:1 1 auto;min-height:0;margin:0;padding:0 12px 18px 0;max-height:none;overflow:auto;display:flex;align-items:stretch;scrollbar-width:thin;scrollbar-color:var(--violet) rgba(255,255,255,.06)}
.calendar-inline-board{min-width:1050px;min-height:max(100%,var(--timeline-content-height,100%));flex:1 0 auto}
.calendar-fit-page #calendarDays.calendar-day-view,
.calendar-fit-page #userCalendarDays.calendar-day-view{display:block}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-day,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-day{height:100%;min-height:0}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-schedule,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-schedule{height:100%;min-height:0}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-board,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-board{height:auto;min-height:max(100%,var(--timeline-content-height,100%));align-content:start}
.calendar-fit-page .calendar-grid{height:100%;min-height:0}
.user-dashboard-page .main{padding-top:44px}
.user-dashboard-page .lux-header{margin-bottom:24px}
.user-dashboard-kpis{margin-bottom:24px}
.user-dashboard-kpis .kpi-card{display:block;min-height:148px}
.user-dashboard-kpis .kpi-card b{line-height:1}
.user-today-card{padding:24px}
.user-today-card h2{margin:0 0 6px}
.user-today-list{display:grid;gap:10px;margin-top:18px}
.user-today-row{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(120px,220px) auto;gap:16px;align-items:center;padding:14px 16px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:linear-gradient(90deg,rgba(55,199,255,.09),rgba(139,92,246,.08));transition:border-color .18s ease,transform .18s ease,background .18s ease}
.user-today-row:hover{border-color:rgba(55,199,255,.55);background:linear-gradient(90deg,rgba(55,199,255,.16),rgba(139,92,246,.14));transform:translateY(-1px)}
.user-today-time{display:grid;gap:2px;font-weight:1000}
.user-today-time small,.user-today-main small{display:block;color:var(--muted);font-weight:800}
.user-today-time small::before{content:"-> ";color:var(--muted)}
.user-today-main{min-width:0}
.user-today-main b,.user-today-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-today-room{font-weight:900;color:#eef5ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-event.booking-event-focus{outline:3px solid rgba(255,216,77,.95);box-shadow:0 0 0 5px rgba(255,216,77,.18),0 0 30px rgba(255,216,77,.35)}
@media(max-width:900px){.user-today-row{grid-template-columns:1fr}.user-today-row .pill{justify-self:start}.user-dashboard-kpis .kpi-card{min-height:130px}}
.calendar-fit-page .day{height:auto;min-height:0;display:flex;flex-direction:column}
.calendar-fit-page .day-events{flex:1 1 auto;max-height:none;min-height:0}
@media(max-width:900px){.calendar-fit-page .app,.calendar-fit-page .main{height:auto;min-height:100vh;overflow:visible}.calendar-fit-page .main>section.card:has(#calendarDays),.calendar-fit-page .main>section.card:has(#userCalendarDays){min-height:70vh}.calendar-fit-page #calendarDays,.calendar-fit-page #userCalendarDays{grid-template-rows:auto}.calendar-fit-page .day{min-height:190px}}
.schedule-wrap,.scroll-shell{padding-right:16px}.timeline-room{overflow:visible}.booking-event{pointer-events:auto}.slot-label{opacity:.72}.rolebox .mini-link{display:block}.normal-admin-role .nav small,.user-only .nav small{letter-spacing:.08em}.admin-only.normal-admin-role .nav a[href*="settings"],.admin-only.normal-admin-role .nav a[href*="system"],.admin-only.normal-admin-role .nav a[href*="permissions"],.admin-only.normal-admin-role .nav a[href*="companies"],.admin-only.normal-admin-role .nav a[href*="resources"]{display:none}.monitor-card{transition:background 1.2s ease,box-shadow 1.2s ease,width .25s ease,min-height .25s ease}.monitor-card.free{box-shadow:0 0 70px rgba(33,208,122,.44),0 0 190px rgba(55,199,255,.28)}.monitor-card.soon{box-shadow:0 0 70px rgba(255,216,77,.44),0 0 190px rgba(245,158,11,.30)}.monitor-card.busy{box-shadow:0 0 75px rgba(255,59,102,.44),0 0 200px rgba(236,72,153,.28)}.monitor-card.closing{box-shadow:0 0 92px rgba(255,59,102,.55),0 0 230px rgba(255,87,34,.36)}


/* V15 - Event detail luxury modal */
.event-detail-modal.show{display:grid;place-items:center;background:rgba(2,6,23,.68);backdrop-filter:blur(9px)}
.event-detail-card{--room-color:#37c7ff;width:min(1080px,92vw);max-height:90vh;overflow:hidden;border:1px solid rgba(124,142,255,.45);border-radius:28px;background:linear-gradient(135deg,rgba(6,19,42,.94),rgba(10,10,28,.96));box-shadow:0 0 0 1px rgba(255,255,255,.04),0 30px 120px rgba(0,0,0,.55),0 0 90px color-mix(in srgb,var(--room-color) 32%,transparent);position:relative;color:#fff}
.event-close{position:absolute;top:20px;right:calc(31% + 38px);z-index:8;border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:13px 22px;background:rgba(255,255,255,.10);color:#fff;font-weight:1000;cursor:pointer;box-shadow:0 0 22px rgba(139,92,246,.22)}
.event-close span{font-size:24px;margin-left:12px;vertical-align:-2px}.event-hero{display:grid;grid-template-columns:1.35fr .65fr;min-height:510px;border-bottom:1px solid rgba(255,255,255,.10)}
.event-main-info{padding:36px 42px 28px}.event-status-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid rgba(33,208,122,.35);background:rgba(33,208,122,.14);color:#bfffe2;font-weight:1000}.event-main-info h2{font-size:52px;line-height:1;margin:24px 0 24px;letter-spacing:-.04em;text-shadow:0 10px 38px rgba(0,0,0,.34)}
.room-focus-card{display:flex;gap:18px;align-items:center;width:min(390px,100%);padding:20px 24px;margin-bottom:24px;border:1px solid color-mix(in srgb,var(--room-color) 65%,rgba(255,255,255,.14));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--room-color) 16%,rgba(4,12,32,.82)),rgba(7,15,35,.65));box-shadow:0 0 28px color-mix(in srgb,var(--room-color) 22%,transparent)}
.room-focus-icon,.info-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,var(--room-color),#8b5cf6);font-size:26px;box-shadow:0 0 28px color-mix(in srgb,var(--room-color) 32%,transparent)}.room-focus-card small,.event-info-box small{display:block;color:#65d9ff;font-size:12px;font-weight:1000;letter-spacing:.08em;margin-bottom:5px}.room-focus-card b{font-size:30px;color:#fff;display:block;letter-spacing:-.03em}.event-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.event-info-box{display:flex;gap:18px;align-items:center;border:1px solid rgba(114,141,255,.25);border-radius:18px;background:rgba(255,255,255,.055);padding:18px 20px;min-height:104px}.event-info-box b{font-size:25px;line-height:1.18;display:block}.event-info-box b small{color:#d9e4ff;font-size:14px;font-weight:700;letter-spacing:0;margin-top:7px}.info-icon.purple{background:linear-gradient(135deg,#7c3aed,#a855f7)}.info-icon.muted-icon{background:linear-gradient(135deg,#334155,#64748b)}.organizer{width:100%}.organizer b{font-size:25px}
.event-brand-panel{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,rgba(47,155,255,.55),rgba(139,92,246,.78),rgba(236,72,153,.72));clip-path:polygon(30% 0,100% 0,100% 100%,0 100%);border-left:1px solid color-mix(in srgb,var(--room-color) 55%,rgba(255,255,255,.18));box-shadow:inset 0 0 120px rgba(0,0,0,.18)}.event-brand-panel .brand-mark{font-size:96px;font-weight:1000;line-height:1;text-shadow:0 15px 40px rgba(0,0,0,.28)}.event-brand-panel strong{font-size:30px;letter-spacing:.22em;margin-top:16px}.event-brand-panel span{font-size:20px;letter-spacing:.25em;margin-top:8px;color:#e9edff}
.event-participants-section{padding:26px 42px 22px;background:linear-gradient(180deg,rgba(2,8,23,.62),rgba(10,9,25,.80))}.participants-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}.participants-head h3{margin:0;font-size:22px}.participant-tools{display:flex;gap:12px}.participant-tools input,.participant-tools select{height:48px;border-radius:15px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;padding:0 16px;min-width:240px}.participant-legend{display:flex;gap:24px;flex-wrap:wrap;color:#cdd8f8;margin-bottom:16px}.participant-legend i{display:inline-block;width:13px;height:13px;border-radius:50%;margin-right:7px}.okdot{background:#22c55e}.waitdot{background:#f59e0b}.nodot{background:#ef4444}.sentdot{background:#3b82f6}.participants-scroll{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-height:292px;overflow-y:auto;padding-right:10px;scrollbar-width:thin;scrollbar-color:var(--violet) rgba(255,255,255,.06)}.participants-scroll::-webkit-scrollbar{width:8px}.participants-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:999px}.participants-scroll::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:999px}.participant-card{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:14px;padding:13px 16px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.045)}.participant-card .avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,rgba(55,199,255,.28),rgba(139,92,246,.32));border:1px solid rgba(255,255,255,.16)}.participant-card b{display:block;font-size:17px}.participant-card span{display:block;color:#c8d4f5;font-size:13px;margin-top:3px}.pstatus{font-style:normal;border-radius:999px;padding:8px 13px;font-weight:1000;font-size:13px}.pstatus.ok{background:rgba(34,197,94,.19);color:#b7ffd0}.pstatus.wait{background:rgba(245,158,11,.20);color:#ffd994}.pstatus.no{background:rgba(239,68,68,.20);color:#ffc0c0}.pstatus.sent{background:rgba(59,130,246,.20);color:#b9d6ff}.event-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;padding:24px 42px 28px;border-top:1px solid rgba(255,255,255,.10);background:rgba(2,6,23,.58)}
@media(max-width:900px){.event-detail-card{width:94vw;max-height:92vh;overflow-y:auto}.event-hero{grid-template-columns:1fr}.event-brand-panel{clip-path:none;min-height:220px}.event-info-grid,.participants-scroll,.event-actions{grid-template-columns:1fr}.participant-tools{flex-direction:column}.event-main-info h2{font-size:40px}}
@media(max-width:900px){.event-close{right:18px;top:18px}}

/* V16 luxury UI refresh */
:root{--company1:#2f9bff;--company2:#ec4899;--room-diamante:#2f9bff;--room-rubino:#ff3b66;--room-zaffiro:#37d6e8;--room-executive:#35d073;--room-training:#f59e0b}
.nav::-webkit-scrollbar,.participants-scroll::-webkit-scrollbar,.day-events::-webkit-scrollbar{width:7px}.nav::-webkit-scrollbar-thumb,.participants-scroll::-webkit-scrollbar-thumb,.day-events::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--cyan),var(--violet));border-radius:999px}.nav::-webkit-scrollbar-track{background:rgba(255,255,255,.04)}
.lux-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.lux-title{display:flex;gap:16px;align-items:center}.lux-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;font-size:28px;background:linear-gradient(135deg,rgba(55,199,255,.30),rgba(139,92,246,.34),rgba(236,72,153,.22));box-shadow:0 0 34px rgba(139,92,246,.28);border:1px solid rgba(255,255,255,.12)}.lux-title h1{margin:0;font-size:38px;letter-spacing:-.03em}.lux-title p{margin:4px 0 0;color:var(--muted)}
.neo-card{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(10,20,42,.88),rgba(31,15,53,.76));border:1px solid rgba(124,142,255,.25);border-radius:26px;box-shadow:0 24px 90px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08)}.neo-card:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 8% 8%,rgba(55,199,255,.16),transparent 35%),radial-gradient(circle at 90% 0,rgba(236,72,153,.20),transparent 36%);pointer-events:none}.neo-card>*{position:relative}.soft-grid{display:grid;gap:18px}.soft-grid.two{grid-template-columns:1.1fr .9fr}.soft-grid.three{grid-template-columns:repeat(3,1fr)}.soft-grid.four{grid-template-columns:repeat(4,1fr)}
.kpi-card{padding:24px;border-radius:24px;background:linear-gradient(135deg,rgba(55,199,255,.13),rgba(139,92,246,.16));border:1px solid rgba(124,142,255,.24);position:relative;overflow:hidden;min-height:150px}.kpi-card .kpi-icon{position:absolute;right:22px;bottom:20px;width:70px;height:70px;border-radius:22px;display:grid;place-items:center;font-size:34px;background:linear-gradient(135deg,rgba(139,92,246,.34),rgba(236,72,153,.24));box-shadow:0 0 36px rgba(139,92,246,.22)}.kpi-card b{font-size:44px;display:block;margin-top:14px}.kpi-card span{color:#c9d6ff}.kpi-card.blue{background:linear-gradient(135deg,rgba(47,155,255,.18),rgba(139,92,246,.12))}.kpi-card.pink{background:linear-gradient(135deg,rgba(236,72,153,.20),rgba(139,92,246,.13))}.kpi-card.green{background:linear-gradient(135deg,rgba(33,208,122,.16),rgba(47,155,255,.11))}
.kpi-card .kpi-icon{color:var(--pink);border:1px solid color-mix(in srgb,currentColor 34%,transparent)}
.kpi-card .kpi-icon.companies{color:#f472b6}
.kpi-card .kpi-icon.rooms{color:var(--pink)}
.kpi-card .kpi-icon.bookings{color:var(--violet)}
.kpi-card .kpi-icon.monitor{color:var(--yellow)}
.kpi-card .kpi-icon.users{color:var(--green)}
.kpi-card .kpi-icon.next{color:var(--cyan)}
.kpi-card .kpi-icon.invites{color:var(--yellow)}
.kpi-card .kpi-icon.free-rooms{color:var(--green)}
.kpi-card .kpi-icon.meetings{color:var(--pink)}
.kpi-card .kpi-icon.support{color:var(--cyan)}
.kpi-card .kpi-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 10px color-mix(in srgb,currentColor 42%,transparent))}
.kpi-card .company-kpi-logo{
  color:var(--green);
  overflow:hidden;
  padding:9px;
  background:linear-gradient(135deg,rgba(33,208,122,.20),rgba(55,199,255,.14),rgba(139,92,246,.18));
  border-color:rgba(33,208,122,.36);
}
.kpi-card .company-kpi-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:14px;
  display:block;
}
.kpi-card .company-kpi-logo span{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:#eafff4;
  font-size:24px;
  font-weight:1000;
}
.donut{width:150px;height:150px;border-radius:50%;background:conic-gradient(var(--green) 0 100%,var(--red) 100% 100%,var(--yellow) 100% 100%);display:grid;place-items:center;box-shadow:0 0 36px rgba(139,92,246,.25);margin:auto}.donut span{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background:#10162d;text-align:center;font-weight:1000;color:#fff}.donut span b{display:block;font-size:22px;line-height:1}.donut span small{display:block;margin-top:5px;color:#fff;font-size:15px}.action-tile{display:flex;align-items:center;gap:12px;padding:18px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--line);font-weight:900}.action-tile i{font-style:normal;font-size:28px}.activity-list{display:grid;gap:12px}.activity-item{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:11px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.activity-item>div{display:flex;align-items:baseline;gap:8px;min-width:0;flex-wrap:wrap}.activity-item>div b,.activity-item>div span{min-width:0}.activity-item .bubble{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:rgba(236,72,153,.16)}
.lux-table{width:100%;border-collapse:separate;border-spacing:0 12px}.lux-table th{text-align:left;color:#aeb9d4;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:0 14px}.lux-table td{padding:16px 14px;background:rgba(255,255,255,.055);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.lux-table td:first-child{border-left:1px solid rgba(255,255,255,.08);border-radius:16px 0 0 16px}.lux-table td:last-child{border-right:1px solid rgba(255,255,255,.08);border-radius:0 16px 16px 0}.avatar-chip{display:inline-flex;align-items:center;gap:12px;font-weight:1000}.avatar-round{width:42px;height:42px;border-radius:50%;display:inline-grid;place-items:center;background:linear-gradient(135deg,rgba(55,199,255,.25),rgba(139,92,246,.35));border:1px solid rgba(255,255,255,.16)}.company-cards{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:18px}.company-card{padding:20px;min-height:185px}.company-logo-mini{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--company1),var(--violet),var(--company2));display:grid;place-items:center;font-weight:1000;font-size:26px;box-shadow:0 0 32px rgba(139,92,246,.28)}.company-card-head{display:flex;gap:16px;align-items:center;margin-bottom:18px}.form-panel{padding:26px;background:linear-gradient(135deg,rgba(236,72,153,.18),rgba(47,155,255,.13));border-color:rgba(55,199,255,.22)}.split-form{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;vertical-align:-1px}.status-dot{display:inline-block;width:14px;height:14px;border-radius:50%;box-shadow:0 0 16px currentColor}.select-card{padding:18px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.04);cursor:pointer}.select-card.active{border-color:rgba(139,92,246,.85);box-shadow:0 0 28px rgba(139,92,246,.20);background:linear-gradient(135deg,rgba(55,199,255,.12),rgba(139,92,246,.20))}.mini-preview-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini-monitor{height:88px;border-radius:14px;background:#071225;border:1px solid rgba(255,255,255,.14);position:relative;overflow:hidden}.mini-monitor:after{content:"";position:absolute;inset:0;border-radius:14px;box-shadow:inset 0 0 26px currentColor}.mini-monitor.free{color:var(--green)}.mini-monitor.soon{color:var(--yellow)}.mini-monitor.busy{color:var(--red)}.mini-monitor span{position:absolute;inset:auto 10px 10px;font-size:10px;font-weight:900}.monitor-config-layout{display:grid;grid-template-columns:minmax(520px,560px) minmax(0,1fr);gap:24px;align-items:start}.settings-column{max-height:none;overflow:visible;padding-right:24px}.settings-column::-webkit-scrollbar{width:0}.settings-column::-webkit-scrollbar-thumb{background:transparent}.setting-line{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.setting-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.06)}.toggle{width:50px;height:28px;border-radius:999px;background:#251a46;position:relative;border:1px solid rgba(255,255,255,.12)}.toggle:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;top:2px;right:3px;background:linear-gradient(135deg,var(--cyan),var(--violet))}.monitor-preview-panel{padding:18px}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.style-switch{display:grid;grid-template-columns:1fr 1fr;gap:14px}.monitor-v16-frame{--glow-color:#ff3b66;--accent:#ec4899;--panel-grad:linear-gradient(135deg,#0a1d39 0%,#111a44 42%,#7a124e 100%);height:min(680px,72vh);min-height:560px;border-radius:34px;padding:30px 44px;position:relative;overflow:hidden;background:var(--panel-grad);border:2px solid color-mix(in srgb,var(--glow-color) 86%,white 14%);box-shadow:0 0 22px color-mix(in srgb,var(--glow-color) 72%,transparent),0 0 76px color-mix(in srgb,var(--glow-color) 52%,transparent),0 0 150px color-mix(in srgb,var(--glow-color) 34%,transparent),inset 0 1px 0 rgba(255,255,255,.16);transition:.4s ease}.monitor-v16-frame.theme{--panel-grad:linear-gradient(135deg,#10224c 0%,#151b42 44%,#a51661 100%)}.monitor-v16-frame.semaphore.free{--glow-color:#22c55e;--accent:#22c55e;--panel-grad:linear-gradient(135deg,#072319,#102b25 55%,#09412b)}.monitor-v16-frame.semaphore.soon{--glow-color:#f59e0b;--accent:#f59e0b;--panel-grad:linear-gradient(135deg,#211907,#2d260f 55%,#52390b)}.monitor-v16-frame.semaphore.busy{--glow-color:#ff3b66;--accent:#ff4b5f;--panel-grad:linear-gradient(135deg,#210713,#250f1c 55%,#551125)}.monitor-v16-frame.theme.free{--glow-color:#22c55e}.monitor-v16-frame.theme.soon{--glow-color:#f59e0b}.monitor-v16-frame.theme.busy{--glow-color:#ff3b66}.monitor-v16-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,rgba(255,255,255,.04) 0 28%,transparent 28% 52%,rgba(255,255,255,.045) 52% 66%,transparent 66%),radial-gradient(circle at 0 100%,rgba(55,199,255,.25),transparent 28%);pointer-events:none}.monitor-top{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:start}.aurora-mark{display:flex;align-items:center;gap:14px;font-weight:1000;letter-spacing:.18em}.aurora-a{width:62px;height:62px;border-radius:18px;background:linear-gradient(135deg,#37c7ff,#8b5cf6,#ec4899);display:grid;place-items:center;font-size:36px}.room-status-badge{justify-self:center;display:inline-flex;gap:14px;align-items:center;padding:13px 28px;border-radius:999px;border:1px solid color-mix(in srgb,var(--glow-color) 70%,white 12%);background:rgba(4,9,22,.55);font-weight:1000;font-size:22px;box-shadow:0 0 34px color-mix(in srgb,var(--glow-color) 36%,transparent)}.monitor-clock{text-align:right}.monitor-clock b{font-size:42px;display:block}.monitor-center{position:relative;text-align:center;margin-top:34px}.monitor-center h1{font-size:78px;line-height:.95;margin:0 0 8px;letter-spacing:-.05em;text-shadow:0 16px 45px rgba(0,0,0,.35)}.monitor-center h2{font-size:42px;margin:0;color:#fff}.monitor-underline{width:140px;height:3px;background:linear-gradient(90deg,var(--cyan),var(--pink));margin:16px auto 0;border-radius:999px}.monitor-grid-v16{position:relative;display:grid;grid-template-columns:280px 1fr 280px;gap:42px;align-items:center;margin-top:26px}.monitor-side-card,.monitor-time-card{border:1px solid rgba(255,255,255,.20);border-radius:24px;background:rgba(4,9,22,.34);backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);padding:24px;text-align:center}.fake-qr{width:170px;height:170px;margin:14px auto;border-radius:8px;background:repeating-linear-gradient(45deg,#fff 0 8px,#111827 8px 14px);border:10px solid #fff;color:#000;display:grid;place-items:center;font-weight:1000}.monitor-time-card{max-width:520px;margin:auto;text-align:left}.monitor-time-row{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:18px;padding:16px 12px}.monitor-time-row:first-child{border-bottom:1px solid rgba(255,255,255,.12)}.time-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#2f9bff,#8b5cf6);font-size:25px}.monitor-time-row b{font-size:32px}.org-icon{width:92px;height:92px;margin:10px auto 20px;border-radius:50%;display:grid;place-items:center;border:2px solid color-mix(in srgb,var(--accent) 70%,white 8%);font-size:42px;color:var(--accent);box-shadow:0 0 34px color-mix(in srgb,var(--accent) 38%,transparent)}.org-type{display:inline-flex;margin-top:16px;padding:9px 18px;border-radius:999px;background:linear-gradient(135deg,#7c3aed,#2f9bff);font-weight:900}.countdown-v16{text-align:center;margin-top:18px}.countdown-v16 small{display:block;color:var(--glow-color);font-weight:1000;font-size:18px;letter-spacing:.04em}.countdown-v16 b{display:block;font-size:76px;line-height:1;color:#ff4b5f;text-shadow:0 0 30px rgba(255,59,102,.35)}.monitor-actions-v16{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:26px auto 0;max-width:1040px}.monitor-action{height:78px;border-radius:22px;border:1px solid rgba(255,255,255,.18);background:rgba(17,24,55,.58);display:flex;align-items:center;justify-content:space-between;padding:0 28px;font-weight:1000;font-size:20px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.monitor-action.primary{background:linear-gradient(135deg,#2457d6,#8b5cf6,#ec4899)}.monitor-foot{text-align:center;color:#ccd6ef;margin-top:18px}.scaled-preview{position:absolute;left:0;top:0;width:1920px;height:1080px;transform-origin:top left}.scaled-shell{position:relative;aspect-ratio:16/9;width:100%;height:auto;min-height:0;border:1px solid rgba(255,255,255,.12);border-radius:22px;overflow:hidden;padding:0;background:#050816}.wide-panel{padding:28px}.view-mode-tabs{display:flex;gap:10px}.view-mode-tabs .btn.active{background:linear-gradient(135deg,var(--cyan),var(--violet));border:0}.preview-status-buttons{display:flex;gap:12px}.preview-status-buttons .btn.active{box-shadow:0 0 22px color-mix(in srgb,var(--glow-color) 40%,transparent)}
@media(max-width:1200px){.monitor-config-layout{grid-template-columns:1fr}.monitor-v16-frame{height:auto}.monitor-grid-v16{grid-template-columns:1fr}.soft-grid.four,.soft-grid.three,.soft-grid.two,.company-cards{grid-template-columns:1fr}.split-form{grid-template-columns:1fr}.monitor-center h1{font-size:52px}.monitor-actions-v16{grid-template-columns:1fr}.monitor-top{grid-template-columns:1fr;gap:18px;text-align:center}.room-status-badge,.monitor-clock{justify-self:center;text-align:center}.aurora-mark{justify-content:center}}

/* Booking time controls */
.time-stepper{display:grid;grid-template-columns:1fr 42px;align-items:stretch;width:100%;background:rgba(8,13,31,.72);border:1px solid rgba(255,255,255,.16);border-radius:16px;overflow:hidden}
.time-stepper:focus-within{border-color:rgba(55,199,255,.72);box-shadow:0 0 0 3px rgba(55,199,255,.12)}
.time-stepper input{border:0;background:transparent;border-radius:0;padding:14px 16px;font-weight:900;letter-spacing:0}
.time-stepper-buttons{display:grid;grid-template-rows:1fr 1fr;border-left:1px solid rgba(255,255,255,.12)}
.time-stepper-buttons button{border:0;border-bottom:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,rgba(55,199,255,.18),rgba(139,92,246,.24));color:#fff;font-weight:1000;line-height:1;cursor:pointer}
.time-stepper-buttons button:last-child{border-bottom:0}
.time-stepper-buttons button:hover{background:linear-gradient(135deg,rgba(55,199,255,.34),rgba(139,92,246,.40))}

/* Rooms management */
.room-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:18px;margin-bottom:22px}
.room-grid .room-card{cursor:pointer;margin-bottom:0;min-height:250px;display:flex;flex-direction:column;gap:14px;border-color:color-mix(in srgb,var(--room-accent,#37c7ff) 34%,rgba(158,178,255,.18));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.room-grid .room-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--room-accent,#37c7ff) 72%,white 8%);box-shadow:0 18px 70px rgba(0,0,0,.28),0 0 36px color-mix(in srgb,var(--room-accent,#37c7ff) 22%,transparent)}
.room-card-head h2{margin:0 0 4px;font-size:24px}
.room-card-title{display:flex;align-items:center;gap:14px;min-width:0}
.room-card-logo{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;background:linear-gradient(135deg,var(--room-accent,#37c7ff),#8b5cf6,#ec4899);box-shadow:0 0 24px color-mix(in srgb,var(--room-accent,#37c7ff) 34%,transparent);overflow:hidden;color:#fff;font-weight:1000;font-size:20px}
.room-card-logo-img{width:78%;height:78%;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(0,0,0,.25))}
.room-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}
.room-card-meta span{border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.045);padding:10px 12px;color:#dbe7ff;font-weight:800}
.room-card-meta b{font-size:22px;color:#fff}
.room-card-actions{flex-wrap:wrap}
.room-detail-modal.show{display:grid;place-items:center;background:rgba(2,6,23,.70);backdrop-filter:blur(8px)}
.room-detail-frame{width:min(1120px,92vw);max-height:88vh;overflow:auto}
.room-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:12px}
.room-detail-grid>div{border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.045);padding:14px}
.room-detail-preview{height:420px;margin-top:18px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#050816}
.room-detail-preview iframe{width:100%;height:100%;border:0;background:#050816}
@media(max-width:1100px){.room-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}.room-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.room-grid,.room-detail-grid{grid-template-columns:1fr}.room-detail-preview{height:320px}}

/* Monitor calendar modal */
.monitor-calendar-modal.show{display:block;background:rgba(2,6,23,.70);backdrop-filter:blur(8px)}
.monitor-calendar-panel{position:fixed;left:var(--calendar-left,calc(50vw - min(490px,46vw)));top:var(--calendar-top,7vh);width:min(980px,92vw);height:var(--calendar-height,min(620px,86vh));overflow:hidden;display:flex;flex-direction:column}
.monitor-calendar-drag{cursor:move;user-select:none;touch-action:none}
.monitor-calendar-controls{display:grid;grid-template-columns:repeat(2,minmax(180px,240px));gap:14px;margin:18px 0 20px}
.monitor-calendar-controls label{display:grid;gap:7px;color:#b8c4df;font-size:13px}
.monitor-calendar-controls input{height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:#080c20;color:#fff;padding:0 14px;font:inherit}
#monitorCalendarBody{min-height:0;overflow:auto;padding-right:8px;scrollbar-width:thin;scrollbar-color:rgba(139,92,246,.9) rgba(255,255,255,.06)}
#monitorCalendarBody::-webkit-scrollbar{width:8px}
#monitorCalendarBody::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:999px}
#monitorCalendarBody::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:999px}
.monitor-calendar-resize{position:absolute;left:0;right:0;bottom:0;height:16px;cursor:ns-resize;touch-action:none}
.monitor-calendar-resize:after{content:"";position:absolute;left:50%;bottom:5px;width:76px;height:4px;transform:translateX(-50%);border-radius:999px;background:linear-gradient(90deg,var(--cyan),var(--violet));box-shadow:0 0 18px rgba(55,199,255,.28)}
.monitor-calendar-panel .table td,.monitor-calendar-panel .table th{padding:16px}
body.monitor-tablet-profile .monitor-calendar-panel .table{
  border-collapse:separate;
  border-spacing:0 8px;
}
body.monitor-tablet-profile .monitor-calendar-panel .table th{
  color:#ffffff;
  border-bottom:0;
}
body.monitor-tablet-profile .monitor-calendar-panel .table td{
  color:#ffffff;
  border-top:1px solid rgba(55,199,255,.18);
  border-bottom:1px solid rgba(139,92,246,.18);
  background:linear-gradient(135deg,rgba(47,155,255,.14),rgba(139,92,246,.12));
}
body.monitor-tablet-profile .monitor-calendar-panel .table td:first-child{
  border-left:1px solid rgba(55,199,255,.18);
  border-radius:14px 0 0 14px;
}
body.monitor-tablet-profile .monitor-calendar-panel .table td:last-child{
  border-right:1px solid rgba(139,92,246,.22);
  border-radius:0 14px 14px 0;
}
body.monitor-tablet-profile .monitor-calendar-panel .table b{
  color:#ffffff;
}
body.monitor-tablet-profile .monitor-calendar-panel .pill{
  color:#dff7ff;
  border-color:rgba(55,199,255,.34);
  background:linear-gradient(135deg,rgba(55,199,255,.22),rgba(139,92,246,.20));
}
body.monitor-tablet-profile .monitor-calendar-panel .pill.yellow{
  color:#fff7c2;
  border-color:rgba(255,216,77,.46);
  background:linear-gradient(135deg,rgba(255,216,77,.22),rgba(245,158,11,.18));
}
/* Monitor booking QR modal */
.monitor-booking-modal.show{display:block;background:rgba(2,6,23,.70);backdrop-filter:blur(8px)}
.monitor-booking-panel{position:fixed;left:var(--booking-left,calc(50vw - min(310px,45vw)));top:var(--booking-top,10vh);width:var(--booking-width,min(620px,92vw));height:var(--booking-height,min(500px,82vh));overflow:hidden;display:flex;flex-direction:column}
.monitor-booking-drag{cursor:move;user-select:none;touch-action:none}
.monitor-booking-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(190px,260px) 1fr;gap:18px;align-items:center;padding-top:18px}
.monitor-booking-qr{aspect-ratio:1;width:min(260px,100%);border-radius:24px;background:#fff;padding:16px;display:grid;place-items:center;box-shadow:0 0 40px rgba(55,199,255,.18)}
.monitor-booking-qr img{width:100%;height:100%;object-fit:contain}
.monitor-booking-copy{min-width:0}
.monitor-booking-copy p{color:var(--muted);line-height:1.45}
.monitor-booking-resize{position:absolute;right:8px;bottom:8px;width:24px;height:24px;border-right:3px solid var(--cyan);border-bottom:3px solid var(--violet);border-radius:3px;cursor:nwse-resize;z-index:12;touch-action:none}
@media(max-width:720px){.monitor-booking-body{grid-template-columns:1fr}.monitor-booking-qr{width:min(240px,100%);justify-self:center}.monitor-booking-panel{height:var(--booking-height,min(620px,88vh))}}

/* Monitor fit controls */
.screen-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}
.screen-fit-grid .slider-row{margin:8px 0}
.monitor-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.monitor-preset-grid .select-card{color:#fff;text-align:left;font-weight:1000;min-height:54px}
.monitor-preview-panel{
  position:sticky;
  top:18px;
  align-self:start;
}
.live-fit-panel{
  margin:0 0 16px;
  padding:16px;
  border:1px solid rgba(55,199,255,.24);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(55,199,255,.10),rgba(139,92,246,.13));
  box-shadow:0 18px 44px rgba(47,155,255,.10);
}
.live-fit-panel h3{
  margin:0 0 12px;
}
.live-fit-panel .screen-fit-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.button-fit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px 18px;
}
.fit-subtitle{
  margin:18px 0 12px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.10);
}
.live-fit-panel .slider-row{
  margin:0;
}
.layout-edit-controls{
  padding:14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  background:rgba(255,255,255,.035);
}
@media(max-width:720px){.screen-fit-grid{grid-template-columns:1fr}}
@media(max-width:1500px){
  .monitor-config-layout{
    grid-template-columns:1fr;
  }
  .monitor-preview-panel{
    order:-1;
    position:relative;
    top:auto;
  }
  .settings-column{
    padding-right:0;
  }
  .live-fit-panel .screen-fit-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .button-fit-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .live-fit-panel .screen-fit-grid,
  .button-fit-grid{
    grid-template-columns:1fr;
  }
}


/* === V16 GOLD event detail focused fix === */
.event-detail-card{
  width:min(1120px,92vw);
  max-height:92vh;
}
.event-hero{
  min-height:0;
  grid-template-columns:1.42fr .58fr;
}
.event-main-info{
  padding:28px 38px 20px;
}
.event-topline{
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.event-topline .room-focus-card{
  flex:1;
  width:auto;
  margin-bottom:0;
}
.event-topline .event-status-badge{
  align-self:center;
  white-space:nowrap;
  min-height:48px;
}
.event-status-badge{
  font-size:14px;
}
.event-main-info h2{
  font-size:48px;
  margin:10px 0 18px;
}
.room-focus-card{
  padding:15px 18px;
}
.room-focus-icon,.info-icon{
  width:48px;
  height:48px;
  font-size:22px;
}
.room-focus-card b{
  font-size:26px;
}
.event-info-grid{
  gap:14px;
  margin-bottom:14px;
}
.event-info-box{
  min-height:86px;
  padding:14px 16px;
  gap:14px;
}
.event-info-box b{
  font-size:22px;
}
.event-info-box b small{
  font-size:13px;
}
.event-brand-panel .brand-mark{
  font-size:82px;
}
.event-brand-panel strong{
  font-size:26px;
}
.event-participants-section{
  padding:20px 38px 18px;
}
.participants-head{
  align-items:center;
}
.participant-tools{
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.participant-tools input,
.participant-tools select,
.participant-filter-select{
  height:44px;
  border-radius:14px;
  border:1px solid rgba(124,142,255,.30);
  background:#0a1230 !important;
  color:#f8fbff !important;
  padding:0 14px;
  min-width:190px;
  color-scheme:dark;
}
.participant-tools select option,
.participant-filter-select option{
  background:#0a1230;
  color:#f8fbff;
}
.participant-full-btn{
  height:44px;
}
.participants-scroll{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-height:270px; /* 3 rows visible in 2 columns */
  gap:12px;
  padding-right:12px;
}
.participant-card{
  min-width:0;
  grid-template-columns:46px minmax(0,1fr) auto;
  min-height:74px;
  padding:12px 14px;
  align-items:center;
}
.participant-card .avatar{
  width:42px;
  height:42px;
}
.participant-card b{
  font-size:16px;
  line-height:1.18;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
}
.participant-card span{
  font-size:12px;
  line-height:1.25;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
}
.pstatus{
  padding:7px 10px;
  font-size:12px;
  white-space:nowrap;
}
.event-actions{
  padding:18px 38px 22px;
}

/* Full participants iframe-like modal */
.participants-full-card{
  width:min(980px,92vw);
  max-height:86vh;
  border:1px solid rgba(124,142,255,.42);
  border-radius:28px;
  background:linear-gradient(135deg,rgba(6,19,42,.96),rgba(10,10,28,.97));
  color:#fff;
  overflow:hidden;
  box-shadow:0 30px 120px rgba(0,0,0,.58),0 0 90px rgba(139,92,246,.28);
}
.participants-full-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:24px 28px;
  border-bottom:1px solid rgba(255,255,255,.10);
  background:linear-gradient(90deg,rgba(47,155,255,.16),rgba(139,92,246,.18),rgba(236,72,153,.10));
}
.participants-full-head h2{
  margin:0;
  font-size:28px;
}
.participants-full-tools{
  display:grid;
  grid-template-columns:1fr 220px;
  gap:14px;
  padding:18px 28px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.participants-full-tools input,
.participants-full-tools select{
  height:48px;
  border-radius:16px;
  border:1px solid rgba(124,142,255,.28);
  background:#0a1230 !important;
  color:#fff !important;
  padding:0 16px;
  color-scheme:dark;
}
.participants-full-tools option{
  background:#0a1230;
  color:#fff;
}
.participants-full-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  max-height:52vh;
  overflow-y:auto;
  padding:22px 28px 28px;
  scrollbar-width:thin;
  scrollbar-color:var(--violet) rgba(255,255,255,.06);
}
.participants-full-list::-webkit-scrollbar{width:8px}
.participants-full-list::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:999px}
.participants-full-list::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:999px}
.participants-full-card.monitor-floating-participants{
  position:fixed;
  left:var(--participants-left,calc(50vw - min(490px,46vw)));
  top:var(--participants-top,8vh);
  width:var(--participants-width,min(980px,92vw));
  height:var(--participants-height,min(540px,82vh));
  max-height:none;
  display:flex;
  flex-direction:column;
}
.monitor-floating-participants .participants-full-head{
  cursor:move;
  user-select:none;
  touch-action:none;
}
.monitor-floating-participants .participants-full-list{
  flex:1;
  min-height:0;
  max-height:none;
}
.participants-full-resize{
  position:absolute;
  right:8px;
  bottom:8px;
  width:24px;
  height:24px;
  border-right:3px solid var(--cyan);
  border-bottom:3px solid var(--violet);
  border-radius:3px;
  cursor:nwse-resize;
  z-index:20;
  touch-action:none;
}
@media(max-width:900px){
  .event-topline{flex-direction:column}
  .event-brand-panel{clip-path:none}
  .participants-scroll,.participants-full-list{grid-template-columns:1fr}
  .participants-full-tools{grid-template-columns:1fr}
}

/* === V16 GOLD final board spacing patch: keep approved design, give room to participants === */
.event-detail-card{
  height:min(940px,94vh);
  display:flex;
  flex-direction:column;
}
.event-hero{
  flex:0 0 auto;
  min-height:0 !important;
}
.event-main-info{
  padding:22px 38px 16px !important;
}
.event-main-info h2{
  font-size:44px !important;
  margin:6px 0 14px !important;
}
.event-topline{
  margin-bottom:12px !important;
}
.event-topline .room-focus-card{
  min-height:70px;
}
.event-topline .event-status-badge{
  min-height:42px !important;
  padding:8px 14px !important;
  margin-top:0;
}
.room-focus-card{
  padding:12px 16px !important;
}
.room-focus-icon,.info-icon{
  width:42px !important;
  height:42px !important;
  font-size:20px !important;
}
.room-focus-card b{
  font-size:24px !important;
}
.event-info-grid{
  gap:12px !important;
  margin-bottom:12px !important;
}
.event-info-box{
  min-height:72px !important;
  padding:12px 14px !important;
  gap:12px !important;
}
.event-info-box b{
  font-size:20px !important;
}
.event-info-box b small{
  font-size:12px !important;
  margin-top:3px !important;
}
.event-brand-panel{
  min-height:0 !important;
}
.event-brand-panel .brand-mark{
  font-size:74px !important;
}
.event-brand-panel strong{
  font-size:24px !important;
}
.event-participants-section{
  flex:1 1 auto;
  min-height:360px;
  display:flex;
  flex-direction:column;
  padding:16px 38px 14px !important;
}
.participants-head{
  flex:0 0 auto;
  margin-bottom:10px !important;
}
.participants-head h3{
  font-size:22px !important;
}
.participant-toolbar-row{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}
.participant-toolbar-row .participant-legend{
  margin-bottom:0 !important;
  flex:1 1 auto;
  gap:18px;
}
.participant-toolbar-row .participant-tools{
  flex:0 0 auto;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-end;
}
.participant-toolbar-row .participant-tools input{
  min-width:260px;
}
.participant-toolbar-row .participant-tools select{
  min-width:170px;
}
.participants-scroll{
  flex:1 1 auto;
  max-height:none !important;
  min-height:252px;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-content:start;
  gap:10px !important;
  padding-right:12px !important;
}
.participant-card{
  min-height:74px !important;
  padding:11px 14px !important;
  grid-template-columns:44px minmax(0,1fr) auto !important;
}
.participant-card .avatar{
  width:40px !important;
  height:40px !important;
}
.participant-card .pstatus{
  min-width:92px !important;
  text-align:center !important;
  border:1px solid currentColor !important;
  border-radius:12px !important;
  padding:7px 10px !important;
}
.participant-card .pstatus.ok{background:rgba(34,197,94,.22) !important;color:#b7ffd0 !important;}
.participant-card .pstatus.wait{background:rgba(245,158,11,.24) !important;color:#ffe1a8 !important;}
.participant-card .pstatus.no{background:rgba(239,68,68,.24) !important;color:#ffc0c0 !important;}
.participant-touch-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.participant-card.touch-mode{
  grid-template-columns:44px minmax(0,1fr) minmax(150px,auto) !important;
}
.participant-card.touch-mode .btn.small{
  min-height:32px;
  padding:7px 10px;
  border-radius:11px;
  font-size:12px;
}
.event-actions .btn:disabled{
  opacity:.42;
  cursor:not-allowed;
  filter:saturate(.45);
}
.event-actions{
  flex:0 0 auto;
  padding:14px 38px 18px !important;
}
@media(max-height:860px){
  .event-detail-card{height:96vh;}
  .event-main-info{padding-top:18px !important;padding-bottom:12px !important;}
  .event-main-info h2{font-size:40px !important;margin:4px 0 10px !important;}
  .event-info-box{min-height:64px !important;}
  .event-info-box b{font-size:18px !important;}
  .event-participants-section{min-height:330px;padding-top:14px !important;}
  .participants-scroll{min-height:238px;}
  .participant-card{min-height:68px !important;}
}
@media(max-width:1100px){
  .participant-toolbar-row{flex-direction:column;align-items:stretch;}
  .participant-toolbar-row .participant-tools{justify-content:stretch;}
  .participant-toolbar-row .participant-tools input,.participant-toolbar-row .participant-tools select{min-width:0;flex:1;}
}


/* === V16 GOLD board final compact controls patch === */
.event-detail-card{height:min(940px,94vh) !important;}
.event-participants-section{padding-top:14px !important;}
.participants-head.compact-controls{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:16px !important;margin-bottom:8px !important;}
.participants-head.compact-controls h3{flex:0 0 auto;margin:0 !important;white-space:nowrap;}
.participants-head.compact-controls .participant-tools{flex:1 1 auto;display:flex !important;justify-content:flex-end !important;align-items:center !important;gap:10px !important;min-width:0;}
.participants-head.compact-controls .participant-tools input{width:min(390px,40vw) !important;min-width:210px !important;height:42px !important;}
.participants-head.compact-controls .participant-tools select{width:170px !important;min-width:150px !important;height:42px !important;}
.participants-head.compact-controls .participant-full-btn{height:42px !important;white-space:nowrap;padding:8px 14px !important;}
.participant-legend.compact-legend{display:flex !important;gap:20px !important;align-items:center !important;flex-wrap:wrap !important;margin:0 0 10px !important;color:#cdd8f8;}
.participants-scroll{min-height:296px !important;max-height:none !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
.participant-card{min-height:78px !important;}
.event-actions{padding-top:12px !important;padding-bottom:16px !important;}
@media(max-width:1150px){.participants-head.compact-controls{align-items:flex-start !important;flex-direction:column !important}.participants-head.compact-controls .participant-tools{width:100%;justify-content:stretch !important}.participants-head.compact-controls .participant-tools input{width:auto !important;flex:1 1 auto !important}.participants-head.compact-controls .participant-tools select{width:160px !important}.participants-scroll{min-height:260px !important}}

/* === V16 GOLD Board Final v4: show 3 participant rows cleanly === */
.event-detail-card{
  height:min(960px,96vh) !important;
  max-height:96vh !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
}
.event-hero{
  max-height:330px !important;
  overflow:hidden !important;
}
.event-main-info{padding:18px 38px 12px !important;}
.event-main-info h2{font-size:40px !important;margin:4px 0 10px !important;line-height:1.04 !important;}
.event-topline{margin-bottom:10px !important;}
.event-topline .room-focus-card{min-height:62px !important;}
.event-topline .event-status-badge{min-height:38px !important;padding:7px 13px !important;font-size:13px !important;}
.room-focus-card{padding:10px 14px !important;}
.room-focus-icon,.info-icon{width:38px !important;height:38px !important;font-size:18px !important;}
.room-focus-card b{font-size:22px !important;}
.event-info-grid{gap:10px !important;margin-bottom:10px !important;}
.event-info-box{min-height:60px !important;padding:10px 12px !important;gap:10px !important;}
.event-info-box b{font-size:18px !important;line-height:1.15 !important;}
.event-info-box b small{font-size:11px !important;margin-top:2px !important;}
.event-brand-panel .brand-mark{font-size:66px !important;}
.event-brand-panel strong{font-size:22px !important;}
.event-brand-panel span{font-size:18px !important;}
.event-participants-section{
  min-height:0 !important;
  padding:12px 38px 10px !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
}
.participants-head.compact-controls{margin-bottom:8px !important;gap:12px !important;}
.participants-head.compact-controls h3{font-size:21px !important;}
.participants-head.compact-controls .participant-tools{gap:8px !important;}
.participants-head.compact-controls .participant-tools input{height:38px !important;width:min(360px,36vw) !important;}
.participants-head.compact-controls .participant-tools select{height:38px !important;width:150px !important;min-width:140px !important;}
.participants-head.compact-controls .participant-full-btn{height:38px !important;padding:7px 12px !important;}
.participant-legend.compact-legend{margin:0 0 8px !important;gap:16px !important;font-size:14px !important;}
.participants-scroll{
  flex:1 1 auto !important;
  min-height:0 !important;
  max-height:none !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px 10px !important;
  align-content:start !important;
  overflow-y:auto !important;
  padding-right:12px !important;
}
.participant-card{
  min-height:64px !important;
  padding:8px 12px !important;
  grid-template-columns:38px minmax(0,1fr) auto !important;
  gap:10px !important;
}
.participant-card .avatar{width:36px !important;height:36px !important;font-size:16px !important;}
.participant-card b{font-size:15px !important;line-height:1.12 !important;}
.participant-card span{font-size:11px !important;line-height:1.18 !important;margin-top:2px !important;}
.pstatus{padding:6px 9px !important;font-size:11px !important;}
.event-actions{
  padding:10px 38px 12px !important;
  gap:16px !important;
  background:rgba(2,6,23,.72) !important;
  position:relative !important;
  z-index:5 !important;
}
.event-actions .btn{min-height:42px !important;padding:10px 14px !important;}
@media(max-height:820px){
  .event-detail-card{height:97vh !important;max-height:97vh !important;}
  .event-hero{max-height:300px !important;}
  .event-main-info{padding-top:14px !important;padding-bottom:9px !important;}
  .event-main-info h2{font-size:36px !important;margin-bottom:8px !important;}
  .event-info-box{min-height:54px !important;}
  .room-focus-card b{font-size:20px !important;}
  .participant-card{min-height:60px !important;}
  .event-actions .btn{min-height:38px !important;}
}

/* Color inputs */
.color-field{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;width:100%;background:rgba(8,13,31,.72);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:8px 10px}
.color-field:focus-within{border-color:rgba(255,255,255,.72);box-shadow:0 0 0 1px rgba(255,255,255,.18),0 0 24px rgba(139,92,246,.18)}
.color-field input:not(.color-picker-native){height:34px;padding:0;border:0;background:transparent;border-radius:0;text-transform:uppercase;font-weight:900;letter-spacing:0}
.color-picker-native{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.color-swatch{width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.26);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 0 22px rgba(0,0,0,.18);cursor:pointer}
.color-swatch.small{width:20px;height:20px;border-radius:7px;cursor:default}
.color-summary{display:inline-flex;align-items:center;gap:9px}
.company-logo-img{width:100%;height:100%;object-fit:contain;border-radius:inherit;display:block;padding:6px;background:rgba(255,255,255,.08)}
.company-card{--company-card-color:var(--cyan);border-color:color-mix(in srgb,var(--company-card-color) 55%,rgba(255,255,255,.14))!important;box-shadow:0 24px 90px rgba(0,0,0,.28),0 0 42px color-mix(in srgb,var(--company-card-color) 20%,transparent),inset 0 1px 0 rgba(255,255,255,.08)!important}
.company-card:before{background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--company-card-color) 22%,transparent),transparent 38%),radial-gradient(circle at 90% 0,rgba(236,72,153,.16),transparent 36%)!important}
.company-card .company-logo-mini{background:linear-gradient(135deg,color-mix(in srgb,var(--company-card-color) 88%,white 12%),color-mix(in srgb,var(--company-card-color) 62%,#111827 38%))!important;border:1px solid color-mix(in srgb,var(--company-card-color) 80%,white 14%);box-shadow:0 0 26px color-mix(in srgb,var(--company-card-color) 44%,transparent)!important}
.company-card.gradient-vertical .company-logo-mini{background:linear-gradient(180deg,color-mix(in srgb,var(--company-card-color) 90%,white 10%),color-mix(in srgb,var(--company-card-color) 50%,#050816 50%))!important}
.company-card.gradient-horizontal .company-logo-mini{background:linear-gradient(90deg,color-mix(in srgb,var(--company-card-color) 90%,white 10%),color-mix(in srgb,var(--company-card-color) 50%,#050816 50%))!important}
.company-card.gradient-radial .company-logo-mini{background:radial-gradient(circle at 34% 28%,color-mix(in srgb,var(--company-card-color) 92%,white 8%),color-mix(in srgb,var(--company-card-color) 56%,#050816 44%) 72%)!important}
.company-card.logo-effect-solid .company-logo-mini{box-shadow:none!important;border-color:color-mix(in srgb,var(--company-card-color) 68%,white 18%)}
.company-card.logo-effect-glass .company-logo-mini{background:linear-gradient(135deg,color-mix(in srgb,var(--company-card-color) 42%,rgba(255,255,255,.44)),rgba(255,255,255,.08))!important;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 0 28px color-mix(in srgb,var(--company-card-color) 28%,transparent)!important}
.company-card.logo-effect-outline .company-logo-mini{background:rgba(8,13,31,.45)!important;border:2px solid color-mix(in srgb,var(--company-card-color) 90%,white 10%);box-shadow:0 0 0 4px color-mix(in srgb,var(--company-card-color) 16%,transparent),0 0 26px color-mix(in srgb,var(--company-card-color) 34%,transparent)!important}
.company-logo-status{margin-top:-4px;font-size:13px}
.monitor-v16-frame{--company-monitor-color:var(--cyan)}
.monitor-company-logo-large{display:block;max-width:300px;max-height:92px;object-fit:contain;filter:drop-shadow(0 0 22px color-mix(in srgb,var(--company-monitor-color) 42%,transparent))}
.qr-img{display:block;width:100%;height:100%;object-fit:contain;border-radius:8px}
.aurora-mark:has(.monitor-company-logo-large){min-height:92px;align-items:center;letter-spacing:0}
.monitor-v16-frame .org-icon{border-color:color-mix(in srgb,var(--company-monitor-color) 70%,white 8%);color:var(--company-monitor-color);box-shadow:0 0 34px color-mix(in srgb,var(--company-monitor-color) 38%,transparent)}
.monitor-v16-frame .org-type{background:linear-gradient(135deg,var(--company-monitor-color),var(--violet))}
.event-detail-modal{--company-event-color:var(--cyan)}
.event-company-logo-large{display:block;max-width:240px;max-height:150px;object-fit:contain;filter:drop-shadow(0 0 26px color-mix(in srgb,var(--company-event-color) 38%,transparent))}
.event-brand-panel .brand-mark:has(.event-company-logo-large){width:min(260px,100%);height:160px;font-size:0;background:transparent;box-shadow:none}
.event-brand-panel:has(.event-company-logo-large){justify-content:center;padding:54px 34px 42px 92px;gap:12px}
.event-brand-panel .brand-mark:has(.event-company-logo-large){display:grid;place-items:center;margin:0 auto;width:min(210px,82%);height:132px}
.event-brand-panel .event-company-logo-large{max-width:100%;max-height:100%;margin:auto}
.event-brand-panel:has(.event-company-logo-large) strong,.event-brand-panel:has(.event-company-logo-large) span{width:100%;text-align:center;margin-left:0}
.avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.image-field-preview{margin-top:10px;display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center;padding:9px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.045);min-height:76px}
.image-field-thumb{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,rgba(55,199,255,.18),rgba(139,92,246,.22));border:1px solid rgba(255,255,255,.12)}
.image-field-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.image-field-thumb span{padding:6px;text-align:center;font-size:10px;line-height:1.1;color:rgba(215,223,248,.76);font-weight:900}
.image-field-meta{min-width:0}.image-field-meta b{display:block;font-size:12px}.image-field-meta small{display:block;color:var(--muted);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}
.image-field-preview.avatar-preview .image-field-thumb{border-radius:50%}.image-field-preview.logo-preview .image-field-thumb img{object-fit:contain;padding:6px;background:rgba(255,255,255,.08)}
.image-field-preview.wide-preview{grid-template-columns:96px minmax(0,1fr)}.image-field-preview.wide-preview .image-field-thumb{width:96px;border-radius:14px}.image-field-preview.wide-preview .image-field-thumb img{object-fit:cover}
.small-note{font-size:12px;font-weight:900;white-space:nowrap}
.avatar-initials{width:100%;height:100%;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,rgba(55,199,255,.34),rgba(139,92,246,.44),rgba(236,72,153,.28));color:#fff;font-size:13px;font-weight:1000;letter-spacing:0;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}

/* Dashboard designer */
:root{--appearance-card-alpha:.74;--appearance-blur:8px;--appearance-motion:.7}
.card,.neo-card{backdrop-filter:blur(var(--appearance-blur))}
.appearance-page .appearance-panel label{color:var(--muted)}
.appearance-page input[type=range]{padding:0;accent-color:var(--cyan)}
.appearance-widget-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px}
.appearance-widget-grid label{display:flex;align-items:center;gap:10px;margin:0;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.05);font-weight:900;color:var(--text)}
.appearance-widget-grid input{width:auto;margin:0;accent-color:var(--cyan)}
.appearance-preview{min-height:300px;display:grid;align-content:start;gap:16px;background:linear-gradient(135deg,rgba(55,199,255,.14),rgba(139,92,246,.16),rgba(236,72,153,.10))}
.preview-top{display:flex;align-items:center;gap:14px}
.preview-top small{display:block;color:var(--muted);margin-top:3px}
.preview-logo{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--cyan),var(--violet),var(--pink));box-shadow:0 0 30px color-mix(in srgb,var(--pink) 34%,transparent)}
.preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.preview-kpis div,.preview-activity,.preview-executive{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.07);padding:16px}
.preview-kpis small,.preview-activity small,.preview-executive span{display:block;color:var(--muted)}
.preview-kpis b{display:block;font-size:32px;margin-top:7px}
.preview-activity{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center}
.preview-activity span{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--cyan),var(--pink))}
.preview-executive{display:flex;justify-content:space-between;align-items:center}
[data-preview-widget][hidden]{display:none!important}
:root[data-appearance-mode=light] input,:root[data-appearance-mode=light] select,:root[data-appearance-mode=light] textarea{background:rgba(255,255,255,.78);color:#101827;border-color:rgba(28,38,64,.18)}
:root[data-appearance-mode=light] .sidebar{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(238,244,255,.94));border-right-color:rgba(28,38,64,.14)}
:root[data-appearance-mode=light] .nav a{color:#334155}
:root[data-appearance-mode=light] .rolebox,:root[data-appearance-mode=light] .card,:root[data-appearance-mode=light] .neo-card{background:linear-gradient(135deg,rgba(255,255,255,var(--appearance-card-alpha)),rgba(241,245,255,var(--appearance-card-alpha)));border-color:rgba(28,38,64,.14)}
:root[data-appearance-mode=light] .lux-table td,:root[data-appearance-mode=light] .activity-item,:root[data-appearance-mode=light] .action-tile{background:rgba(255,255,255,.62);border-color:rgba(28,38,64,.12)}

/* Sidebar glow navigation */
.sidebar{
  isolation:isolate;
}
.sidebar:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 28px 92px,rgba(55,199,255,.16),transparent 120px),
    radial-gradient(circle at 92% 4%,rgba(236,72,153,.14),transparent 150px);
  pointer-events:none;
  z-index:-1;
}
.nav{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.nav small{
  letter-spacing:.12em;
}
.nav a{
  --nav-accent:var(--violet);
  position:relative;
  z-index:0;
  min-height:48px;
  padding:12px 15px 12px 12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 28px rgba(0,0,0,.12);
  overflow:hidden;
  cursor:pointer;
  pointer-events:auto;
  touch-action:manipulation;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;
}
.nav a>*{
  position:relative;
  z-index:2;
  pointer-events:none;
}
.nav-icon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:color-mix(in srgb,var(--nav-accent) 86%,white 14%);
  background:
    radial-gradient(circle at 30% 18%,rgba(255,255,255,.30),transparent 34%),
    linear-gradient(135deg,color-mix(in srgb,var(--nav-accent) 34%,rgba(255,255,255,.10)),rgba(255,255,255,.055));
  border:1px solid color-mix(in srgb,var(--nav-accent) 52%,rgba(255,255,255,.14));
  box-shadow:0 0 18px color-mix(in srgb,var(--nav-accent) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.16);
  position:relative;
  z-index:1;
}
.nav-icon svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 8px color-mix(in srgb,var(--nav-accent) 52%,transparent));
}
.nav a:hover .nav-icon,
.nav a.active .nav-icon{
  color:#fff;
  transform:scale(1.05);
  border-color:color-mix(in srgb,var(--nav-accent) 74%,white 18%);
  box-shadow:0 0 24px color-mix(in srgb,var(--nav-accent) 42%,transparent),inset 0 1px 0 rgba(255,255,255,.24);
}
.nav a:before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:4px;
  border-radius:0 999px 999px 0;
  background:var(--nav-accent);
  box-shadow:0 0 18px color-mix(in srgb,var(--nav-accent) 70%,transparent);
  opacity:.78;
  pointer-events:none;
}
.nav a:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,color-mix(in srgb,var(--nav-accent) 20%,transparent),transparent 62%);
  opacity:.28;
  pointer-events:none;
}
.nav a[href^="dashboard.html"],.nav a[href^="dashboard-admin.html"],.nav a[href^="user-dashboard.html"]{--nav-accent:var(--nav-dashboard)}
.nav a[href^="account-approvals.html"]{--nav-accent:var(--nav-pending)}
.nav a[href^="calendar.html"],.nav a[href^="admin-calendar.html"],.nav a[href^="user-calendar.html"]{--nav-accent:var(--nav-calendar)}
.nav a[href^="bookings.html"],.nav a[href^="admin-bookings.html"],.nav a[href^="user-booking.html"]{--nav-accent:var(--nav-bookings)}
.nav a[href^="my-meetings.html"]{--nav-accent:var(--nav-meetings)}
.nav a[href^="invites.html"]{--nav-accent:var(--nav-invites)}
.nav a[href^="rooms.html"]{--nav-accent:var(--nav-rooms)}
.nav a[href^="monitor-room.html"],.nav a[href^="admin-monitor-room.html"]{--nav-accent:var(--nav-monitor)}
.nav a[href^="users.html"],.nav a[href^="admin-users.html"]{--nav-accent:var(--nav-users)}
.nav a[href^="companies.html"]{--nav-accent:var(--nav-companies)}
.nav a[href^="resources.html"]{--nav-accent:var(--nav-resources)}
.nav a[href^="settings-appearance.html"]{--nav-accent:var(--nav-designer)}
.nav a[href^="permissions.html"]{--nav-accent:var(--nav-permissions)}
.nav a[href^="logs.html"]{--nav-accent:var(--nav-logs)}
.nav a[href^="system-db.html"]{--nav-accent:var(--nav-system)}
.nav a[href^="laboratorio-test.html"]{--nav-accent:var(--nav-lab)}
.nav a[href^="contacts.html"]{--nav-accent:var(--nav-contacts)}
.nav a[href^="support.html"],.nav a[href^="support-admin.html"]{--nav-accent:var(--nav-support)}
.nav a[href^="profile.html"]{--nav-accent:var(--nav-profile)}
.superadmin-role .nav a,
.normal-admin-role .nav a,
.user-only .nav a{
  color:#d7e0f7;
}
.nav-badge{
  margin-left:auto;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  background:linear-gradient(135deg,var(--yellow),var(--pink));
  color:#fff;
  font-size:11px;
  font-weight:1000;
  box-shadow:0 0 18px rgba(236,72,153,.32);
}
.nav a:hover{
  color:#fff;
  transform:translateX(3px);
  border-color:color-mix(in srgb,var(--nav-accent) 58%,rgba(255,255,255,.18));
  background:linear-gradient(135deg,color-mix(in srgb,var(--nav-accent) 20%,rgba(255,255,255,.06)),rgba(255,255,255,.04));
  box-shadow:0 0 24px color-mix(in srgb,var(--nav-accent) 28%,transparent),inset 0 1px 0 rgba(255,255,255,.14);
}
.nav a.active{
  color:#fff;
  border-color:color-mix(in srgb,var(--nav-accent) 76%,white 10%);
  background:linear-gradient(135deg,color-mix(in srgb,var(--nav-accent) 34%,rgba(255,255,255,.08)),color-mix(in srgb,var(--nav-accent) 12%,rgba(10,15,35,.92)));
  box-shadow:0 0 28px color-mix(in srgb,var(--nav-accent) 40%,transparent),inset 0 1px 0 rgba(255,255,255,.18);
}
.nav a.active:before{
  opacity:1;
  width:5px;
}
.nav a.active:after{
  opacity:.46;
}
.page-title.has-page-icon{
  display:flex;
  align-items:center;
  gap:18px;
}
.page-title-copy{
  min-width:0;
}
.page-header-icon{
  --nav-accent:var(--cyan);
  width:56px;
  height:56px;
  flex:0 0 56px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:color-mix(in srgb,var(--nav-accent) 86%,white 14%);
  background:
    radial-gradient(circle at 30% 18%,rgba(255,255,255,.30),transparent 34%),
    linear-gradient(135deg,color-mix(in srgb,var(--nav-accent) 34%,rgba(255,255,255,.10)),rgba(255,255,255,.055));
  border:1px solid color-mix(in srgb,var(--nav-accent) 52%,rgba(255,255,255,.14));
  box-shadow:0 0 28px color-mix(in srgb,var(--nav-accent) 30%,transparent),inset 0 1px 0 rgba(255,255,255,.16);
}
.page-header-icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 10px color-mix(in srgb,var(--nav-accent) 52%,transparent));
}
.lux-title .page-header-icon{
  font-size:0;
}
.rolebox{
  box-shadow:0 16px 46px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08);
}
.mini-link{
  border-radius:12px;
  padding:8px 10px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.10);
}
:root[data-appearance-mode=light] .nav a{
  background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(241,245,255,.72));
  border-color:rgba(28,38,64,.12);
  box-shadow:0 10px 24px rgba(28,38,64,.08),inset 0 1px 0 rgba(255,255,255,.7);
}
:root[data-appearance-mode=light] .nav a.active,
:root[data-appearance-mode=light] .nav a:hover{
  color:#101827;
  border-color:color-mix(in srgb,var(--nav-accent) 52%,rgba(28,38,64,.18));
}
:root[data-appearance-mode=light] .nav-icon{
  background:linear-gradient(135deg,color-mix(in srgb,var(--nav-accent) 20%,white 80%),rgba(255,255,255,.78));
  border-color:color-mix(in srgb,var(--nav-accent) 42%,rgba(28,38,64,.14));
  box-shadow:0 8px 18px rgba(28,38,64,.08),inset 0 1px 0 rgba(255,255,255,.82);
}
.pill.blue{background:rgba(47,155,255,.18);border-color:rgba(47,155,255,.45)}
.pill.orange{background:rgba(245,158,11,.18);border-color:rgba(245,158,11,.42);color:#ffe4b0}
.mini-preview-row{grid-template-columns:repeat(4,1fr)}
.mini-monitor.maintenance{color:#2f9bff}
.monitor-v16-frame.maintenance{--glow-color:#2f9bff;--accent:#2f9bff}
.monitor-v16-frame.semaphore.maintenance{--glow-color:#2f9bff;--accent:#2f9bff;--panel-grad:linear-gradient(135deg,#07182f,#0b2140 55%,#123a72)}
.monitor-v16-frame.theme.maintenance{--glow-color:#2f9bff}
.monitor-free-box{position:absolute;left:42%;top:72%;z-index:9;min-width:120px;max-width:720px;box-sizing:border-box;padding:14px 18px;border:1px solid color-mix(in srgb,var(--accent) 56%,white 16%);border-radius:18px;background:rgba(4,9,22,.58);box-shadow:0 18px 42px rgba(0,0,0,.28);font-weight:1000;cursor:move;user-select:none;touch-action:none}
.monitor-free-box.note{background:rgba(47,155,255,.18)}
.monitor-free-box.banner{left:32%;top:82%;min-width:360px;text-align:center;background:linear-gradient(135deg,rgba(47,155,255,.28),rgba(236,72,153,.22))}
.monitor-free-box.image{display:grid;place-items:center;gap:8px;min-width:140px;padding:10px;background:rgba(4,9,22,.42)}
.monitor-free-box.image img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:12px;pointer-events:none}
.monitor-free-box.image span{display:block;font-size:14px;text-align:center;color:rgba(255,255,255,.88)}
.layout-dragging,.layout-dragging *{cursor:grabbing!important;user-select:none!important}
.monitor-layout-switch .select-card{
  width:100%;
  text-align:left;
  color:inherit;
  font:inherit;
}
.monitor-multi-config{
  display:grid;
  gap:14px;
  margin-top:16px;
}
.monitor-multi-config:not(.multi-active) .multi-only-controls{
  display:none;
}
body.monitor-multi-editing .setting-line,
body.monitor-multi-editing .live-fit-panel{
  display:none!important;
}
.multi-card-editor{
  padding:14px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:18px;
  background:rgba(255,255,255,.035);
}
.multi-card-editor h3{
  margin:0 0 8px;
}
.multi-card-flags{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:12px 0;
}
.multi-card-flags label{
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
  font-weight:900;
}
.monitor-room-picker{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  padding:12px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  background:rgba(255,255,255,.035);
}
.room-pick{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:8px;
  min-width:0;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.04);
  font-weight:800;
  border:1px solid transparent;
  transition:.18s ease;
}
.room-pick.active{
  border-color:rgba(55,199,255,.55);
  background:linear-gradient(135deg,rgba(55,199,255,.16),rgba(139,92,246,.16));
  box-shadow:0 0 18px rgba(55,199,255,.12);
}
.room-pick.muted-choice{
  opacity:.58;
}
.monitor-room-picker.single-choice .room-pick{
  cursor:pointer;
}
.room-pick span{
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
  line-height:1.25;
}
.compact-fit{
  grid-template-columns:1fr 1fr;
}
.multi-room-board{
  display:none;
}
.monitor-v16-frame.multi-room-mode>.monitor-top,
.monitor-v16-frame.multi-room-mode>.monitor-center,
.monitor-v16-frame.multi-room-mode>.monitor-grid-v16,
.monitor-v16-frame.multi-room-mode>.monitor-actions-v16,
.monitor-v16-frame.multi-room-mode>.monitor-foot{
  display:none!important;
}
.monitor-v16-frame.multi-room-mode{
  --glow-color:#8fa4c7;
  --accent:#aeb9d4;
  --panel-grad:
    linear-gradient(125deg,rgba(255,255,255,.055) 0 26%,transparent 26% 54%,rgba(255,255,255,.04) 54% 68%,transparent 68%),
    linear-gradient(135deg,rgba(10,24,46,.62),rgba(20,20,48,.54) 48%,rgba(42,18,55,.58));
  border-color:rgba(255,255,255,.22);
  backdrop-filter:blur(16px);
}
.monitor-v16-frame.multi-room-mode .multi-room-board{
  position:relative;
  z-index:2;
  display:grid;
  width:100%;
  height:100%;
  grid-template-columns:repeat(var(--multi-cols,3),minmax(0,1fr));
  gap:var(--multi-gap,24px);
  align-content:center;
}
.multi-room-board[data-orientation=horizontal]{
  grid-auto-flow:column;
  grid-auto-columns:minmax(360px,1fr);
  grid-template-columns:none;
  overflow:hidden;
}
.multi-room-board[data-orientation=vertical]{
  grid-template-columns:1fr;
  align-content:start;
}
.multi-room-card{
  --room-glow:#22c55e;
  --room-accent:#22c55e;
  width:var(--card-width,100%);
  justify-self:center;
  transform:scale(calc(var(--multi-card-scale,1) * var(--card-scale,1)));
  transform-origin:center center;
  min-height:var(--card-min-height,290px);
  padding:26px;
  border-radius:30px;
  border:2px solid color-mix(in srgb,var(--room-glow) 82%,white 12%);
  background:
    linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.045) 52% 66%,transparent 66%),
    linear-gradient(135deg,rgba(4,20,31,.95),rgba(12,22,44,.88) 50%,rgba(28,8,34,.92));
  box-shadow:
    0 0 calc(20px * var(--card-glow,1)) color-mix(in srgb,var(--room-glow) 72%,transparent),
    0 0 calc(70px * var(--card-glow,1)) color-mix(in srgb,var(--room-glow) 42%,transparent),
    0 20px 56px rgba(0,0,0,.32),
    inset 0 1px 0 rgba(255,255,255,.12);
}
.multi-room-card.selected{
  outline:3px solid rgba(255,255,255,.72);
  outline-offset:6px;
}
.multi-room-card.free{
  --room-glow:#22c55e;
  --room-accent:#22c55e;
}
.multi-room-card.maintenance{
  --room-glow:#2f9bff;
  --room-accent:#2f9bff;
}
.multi-room-card.disabled{
  --room-glow:#64748b;
  --room-accent:#94a3b8;
}
.multi-room-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:26px;
}
.multi-room-logo{
  width:58px;
  height:58px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--cyan),var(--violet),var(--pink));
  color:#fff;
  font-size:22px;
  font-weight:1000;
  box-shadow:0 0 28px color-mix(in srgb,var(--room-glow) 34%,transparent);
}
.multi-room-status{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--room-glow) 62%,white 12%);
  background:rgba(4,9,22,.60);
  color:#fff;
  font-weight:1000;
  box-shadow:0 0 28px color-mix(in srgb,var(--room-glow) 34%,transparent);
}
.multi-room-status i{
  width:11px;
  height:11px;
  border-radius:50%;
  background:var(--room-accent);
  box-shadow:0 0 16px var(--room-accent);
}
.multi-room-title{
  margin-bottom:24px;
}
.multi-room-title h2{
  margin:0;
  font-size:42px;
  line-height:.95;
  letter-spacing:0;
  overflow-wrap:anywhere;
}
.multi-room-title span{
  display:block;
  margin-top:10px;
  color:var(--muted);
  font-weight:900;
}
.multi-room-event{
  padding:18px 20px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(4,9,22,.48);
  margin-bottom:18px;
}
.multi-room-event small{
  color:var(--room-accent);
  font-weight:1000;
  letter-spacing:.08em;
}
.multi-room-event strong{
  display:block;
  margin-top:8px;
  font-size:30px;
  color:#fff;
}
.multi-room-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:var(--muted);
  font-weight:900;
}
.multi-room-meta span{
  min-width:0;
  overflow-wrap:anywhere;
}
.multi-room-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}
.multi-room-head span{
  font-size:34px;
  line-height:1;
  font-weight:1000;
}
.multi-room-head b{
  padding:9px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid color-mix(in srgb,var(--glow-color) 46%,white 12%);
  color:#fff;
}
.multi-room-date{
  color:var(--muted);
  font-weight:900;
  margin-bottom:10px;
}
.multi-room-card strong{
  display:block;
  font-size:22px;
  color:#fff;
}
.multi-room-card p{
  margin:10px 0 16px;
  font-size:30px;
  font-weight:1000;
}
.multi-room-card small{
  color:var(--muted);
  font-weight:800;
}
.multi-room-empty{
  display:grid;
  place-items:center;
  min-height:360px;
  border:1px dashed rgba(255,255,255,.25);
  border-radius:28px;
  color:var(--muted);
  font-size:28px;
  font-weight:1000;
}
.company-list-section{margin-top:24px}
.company-list-section>h2{margin:0 0 16px;font-size:24px}
.companies-compact-form{
  padding:18px 26px 16px;
  margin-top:14px;
  margin-bottom:16px;
}
.companies-compact-form .lux-title{
  gap:12px;
  margin-bottom:12px;
}
.companies-compact-form .lux-icon{
  width:44px;
  height:44px;
  border-radius:14px;
}
.companies-compact-form h2{
  margin:0;
  font-size:23px;
}
.companies-compact-form p.muted{
  margin:4px 0 0;
}
.companies-compact-form .split-form{
  gap:10px 14px;
}
.companies-compact-form label{
  margin:5px 0 5px;
  font-size:12px;
}
.companies-compact-form input,
.companies-compact-form select{
  min-height:42px;
  padding:10px 14px;
  border-radius:13px;
}
.companies-compact-form input[type=file]{
  padding:8px 12px;
}
.companies-compact-form>p{
  margin:12px 0 0;
  display:flex;
  gap:10px;
  align-items:center;
}
.companies-compact-form .btn{
  min-height:38px;
  padding:10px 16px;
}
.company-list-section{
  margin-top:16px;
}
.company-list-section>h2{
  margin-bottom:10px;
}
.company-cards{
  grid-template-columns:repeat(3,minmax(260px,1fr));
  gap:12px;
}
.company-card{
  min-height:0;
  padding:16px;
  border-radius:20px;
}
.company-card-head{
  gap:12px;
  margin-bottom:10px;
}
.company-card .company-logo-mini{
  width:46px;
  height:46px;
  border-radius:14px;
  font-size:20px;
}
.company-card h2{
  margin:0 0 6px;
  font-size:20px;
}
.company-logo-status{
  margin:4px 0 10px;
  font-size:12px;
}
.company-card p{
  margin:8px 0 0;
}
.company-card .btn.small{
  padding:7px 10px;
  min-height:32px;
}
.user-list-section{margin-top:24px}
.user-list-head{align-items:end;margin-bottom:14px}
.user-list-head h2{margin:0;font-size:24px}
.user-list-head>div{min-width:260px}
.user-list-tools{display:grid;grid-template-columns:minmax(240px,320px) minmax(220px,260px);gap:14px;align-items:end}
.user-list-tools label{margin:0}
.users-compact-form{
  padding:18px 26px 16px;
  margin-bottom:16px;
}
.users-compact-form .lux-title{
  gap:12px;
  margin-bottom:12px;
}
.users-compact-form .lux-icon{
  width:44px;
  height:44px;
  border-radius:14px;
}
.users-compact-form h2{
  margin:0;
  font-size:23px;
}
.users-compact-form p.muted{
  margin:4px 0 0;
}
.users-compact-form .split-form{
  gap:10px 14px;
}
.users-compact-form label{
  margin:5px 0 5px;
  font-size:12px;
}
.users-compact-form input,
.users-compact-form select{
  min-height:42px;
  padding:10px 14px;
  border-radius:13px;
}
.users-compact-form input[type=file]{
  padding:8px 12px;
}
.users-compact-form>p{
  margin:12px 0 0;
  display:flex;
  gap:12px;
  align-items:center;
}
.users-compact-form .btn{
  min-height:38px;
  padding:10px 16px;
}
.user-list-section{
  margin-top:16px;
}
.user-list-head{
  margin-bottom:10px;
}
.user-list-tools{
  grid-template-columns:minmax(260px,320px) minmax(220px,260px);
  gap:10px;
}
.user-list-tools input,
.user-list-tools select{
  min-height:40px;
  padding:9px 14px;
  border-radius:13px;
}
.users-table-card{
  padding:16px 18px;
}
.users-table{
  border-spacing:0 8px;
}
.users-table th{
  padding:0 12px 3px;
  font-size:11px;
}
.users-table td{
  padding:10px 12px;
}
.users-table .avatar-chip{
  gap:9px;
}
.users-table .avatar-round{
  width:34px;
  height:34px;
}
.users-table .avatar-img{
  width:34px;
  height:34px;
}
.users-table .avatar-initials{
  font-size:12px;
}
.users-table .muted{
  font-size:13px;
}
.users-table .pill{
  padding:6px 10px;
  font-size:12px;
}
.users-table .btn.small{
  padding:7px 10px;
  min-height:32px;
}
.user-actions{
  white-space:nowrap;
}
.calendar-controls input[type=date],.calendar-controls input[type=number]{width:auto;min-width:150px}
.calendar-blank{opacity:.22;pointer-events:none}
.rolebox-profile{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.rolebox-profile b{display:block}
.rolebox-profile p{margin:4px 0 0}
.rolebox-avatar{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(135deg,var(--cyan),var(--violet),var(--pink));border:1px solid rgba(255,255,255,.18);box-shadow:0 0 22px rgba(139,92,246,.28);font-weight:1000}
.rolebox-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.contacts-head{align-items:end;margin-bottom:18px}
.contacts-head h2{margin:0 0 4px}
.contacts-head input{max-width:420px}
.contacts-table .avatar-chip{gap:10px}
.logo.has-platform-logo{background:rgba(255,255,255,.08);padding:6px}
.platform-logo-img{width:100%;height:100%;object-fit:contain;border-radius:inherit;display:block}
.login-screen.has-login-background{background-position:center;background-repeat:no-repeat}
.login-location-brand{display:flex;align-items:center;gap:12px;margin:14px 0 4px}
.login-location-brand img{max-width:180px;max-height:72px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(139,92,246,.32))}
.login-location-brand strong{font-size:20px}

.app.superadmin-role{
  grid-template-columns:minmax(360px,360px) minmax(0,1fr);
}
.app.superadmin-role .sidebar{
  width:360px;
  height:auto;
  min-height:100vh;
  padding:20px 24px;
  position:relative;
  overflow:visible;
}
.app.superadmin-role .brand{
  margin-bottom:22px;
}
.app.superadmin-role .nav{
  flex:0 0 auto;
  min-height:auto;
  overflow:visible;
  padding-right:0;
  padding-bottom:18px;
}
.app.superadmin-role .nav small{
  margin:12px 14px 8px;
}
.app.superadmin-role .nav a{
  min-height:44px;
  padding:9px 13px 9px 11px;
  margin:4px 0;
}
.app.superadmin-role .rolebox{
  width:100%;
  margin-top:18px;
  padding:22px 20px;
  overflow:visible;
}
.app.user-only .sidebar,
.app.normal-admin-role .sidebar{
  height:auto;
  min-height:100vh;
  position:relative;
  overflow:visible;
}
.app.user-only .nav,
.app.normal-admin-role .nav{
  flex:0 0 auto;
  min-height:auto;
  overflow:visible;
  padding-right:0;
  padding-bottom:18px;
}
.app.user-only .rolebox,
.app.normal-admin-role .rolebox{
  margin-top:18px;
  overflow:visible;
}
.rolebox-profile{
  align-items:flex-start;
}
.rolebox-profile>div{
  min-width:0;
}
.rolebox-profile b{
  line-height:1.15;
}
.rolebox-profile p{
  line-height:1.35;
  overflow-wrap:anywhere;
}
.rolebox .mini-link,
.rolebox .logout-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:42px;
  text-align:center;
}
.rolebox .mini-link{
  margin-top:10px;
}
.rolebox .role-switch-link{
  background:linear-gradient(135deg,rgba(55,199,255,.20),rgba(139,92,246,.28));
  border-color:rgba(55,199,255,.32);
  box-shadow:0 0 18px rgba(55,199,255,.16);
}
.dashboard-lower-grid{
  margin-top:22px;
  grid-template-columns:1.15fr 1fr 1fr 1fr;
  align-items:stretch;
}
.dashboard-lower-grid>.neo-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
.normal-admin-role .dashboard-lower-grid{
  min-height:max(560px,calc(100vh - 250px));
}
.normal-admin-role .dashboard-lower-grid>.neo-card{
  min-height:inherit;
}
.normal-admin-role .dashboard-lower-grid>.neo-card>p:last-child{
  margin-top:auto;
}
.normal-admin-role .dashboard-lower-grid .activity-list{
  flex:1;
}
.normal-admin-role .dashboard-lower-grid .dashboard-room-snapshot{
  flex:1;
  max-height:none;
  min-height:0;
}
.dashboard-quick-strip{
  margin-top:14px;
  margin-bottom:16px;
  padding:16px 20px;
  display:grid;
  grid-template-columns:minmax(260px,.62fr) minmax(0,1.9fr);
  gap:14px;
  align-items:center;
}
.dashboard-quick-strip h2{
  margin:0 0 4px;
  font-size:22px;
}
.dashboard-quick-strip p{
  margin:0;
  line-height:1.25;
}
.dashboard-quick-actions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.dashboard-quick-actions .action-tile{
  min-height:46px;
  padding:8px 12px;
  border-radius:13px;
}
.dashboard-quick-actions .action-tile i{
  font-size:21px;
  line-height:1;
}
.dashboard-quick-actions .action-tile span{
  line-height:1.05;
}
.dashboard-login-toggle{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:8px 0 10px;
}
.dashboard-login-toggle button{
  min-height:30px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:11px;
  background:rgba(255,255,255,.055);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.dashboard-login-toggle button.active{
  border-color:rgba(55,199,255,.6);
  background:linear-gradient(135deg,rgba(55,199,255,.22),rgba(139,92,246,.24));
  box-shadow:0 0 18px rgba(55,199,255,.14);
}
.dashboard-refresh-control{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  color:var(--muted);
  font-weight:800;
}
.dashboard-refresh-control select{
  width:112px;
  min-height:40px;
  padding:8px 12px;
  border-radius:12px;
  font-size:13px;
}
.dashboard-kpi-auto{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:8px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  color:#e8eeff;
  font-weight:900;
}
.dashboard-kpi-auto input{
  width:auto;
}
.dashboard-kpi-grid .kpi-card{
  color:inherit;
  text-align:left;
  cursor:pointer;
  transform-style:preserve-3d;
  perspective:900px;
}
button.kpi-card{
  appearance:none;
  font:inherit;
  width:100%;
}
.dashboard-kpi-grid.kpi-flip-active .kpi-card{
  animation:kpiSplitFlapSettle var(--kpi-flip-duration,1120ms) cubic-bezier(.22,.78,.22,1) both;
  animation-delay:var(--kpi-flip-delay,0ms);
}
.dashboard-kpi-grid.kpi-flip-active .kpi-card:before,
.dashboard-kpi-grid.kpi-flip-active .kpi-card:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  pointer-events:none;
  z-index:4;
}
.dashboard-kpi-grid.kpi-flip-active .kpi-card:before{
  top:50%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);
  box-shadow:0 -1px 0 rgba(0,0,0,.32),0 1px 0 rgba(255,255,255,.08);
  opacity:0;
  animation:kpiSplitLine var(--kpi-flip-duration,1120ms) ease both;
  animation-delay:var(--kpi-flip-delay,0ms);
}
.dashboard-kpi-grid.kpi-flip-active .kpi-card:after{
  top:0;
  height:50%;
  border-radius:24px 24px 0 0;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.04)),linear-gradient(135deg,rgba(10,20,42,.72),rgba(31,15,53,.64));
  border-bottom:1px solid rgba(255,255,255,.20);
  transform-origin:50% 100%;
  opacity:0;
  animation:kpiSplitFlap var(--kpi-flip-duration,1120ms) cubic-bezier(.2,.72,.18,1) both;
  animation-delay:var(--kpi-flip-delay,0ms);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}
@keyframes kpiSplitFlap{
  0%{opacity:.92;transform:rotateX(0deg);filter:brightness(1.18)}
  44%{opacity:.98;transform:rotateX(-82deg);filter:brightness(.78)}
  68%{opacity:.86;transform:rotateX(-132deg);filter:brightness(.64)}
  100%{opacity:0;transform:rotateX(-180deg);filter:brightness(1)}
}
@keyframes kpiSplitLine{
  0%,88%{opacity:1}
  100%{opacity:0}
}
@keyframes kpiSplitFlapSettle{
  0%{transform:translateY(-2px)}
  55%{transform:translateY(1px)}
  100%{transform:translateY(0)}
}
@media(prefers-reduced-motion:reduce){
  .dashboard-kpi-grid.kpi-flip-active .kpi-card,
  .dashboard-kpi-grid.kpi-flip-active .kpi-card:before,
  .dashboard-kpi-grid.kpi-flip-active .kpi-card:after{animation:none}
}
.company-logo-cloud{
  width:100%;
  height:100%;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
}
.company-logo-cloud img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:contain;
  border-radius:8px;
  background:rgba(255,255,255,.08);
}
.monitor-kpi-dots{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:16px;
  margin-top:8px;
  padding-right:84px;
  flex-wrap:wrap;
}
.monitor-kpi-dots i{
  width:10px;
  height:10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:#ef4444;
  box-shadow:0 0 12px rgba(239,68,68,.55);
}
.monitor-kpi-dots i.online{
  background:#22c55e;
  box-shadow:0 0 14px rgba(34,197,94,.72);
}
.monitor-kpi-dots i.offline{
  background:#ef4444;
}
.monitor-kpi-dots em{
  font-style:normal;
  color:var(--muted);
  font-size:11px;
  font-weight:1000;
}
.monitor-kpi-dots.empty{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}
.dashboard-access-footer{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:auto;
  padding-top:12px;
}
.dashboard-pending-footer,
.dashboard-room-footer{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:auto;
  padding-top:12px;
}
.dashboard-access-footer .btn{
  flex:0 0 auto;
}
.dashboard-login-company{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}
.dashboard-login-company span{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.dashboard-login-company select{
  width:122px;
  min-height:36px;
  padding:8px 10px;
  border-radius:14px;
  font-size:12px;
}
.dashboard-login-status{
  gap:7px;
  align-content:start;
  align-items:stretch;
  margin-top:0;
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:var(--violet) rgba(255,255,255,.06);
}
.dashboard-access-card{
  display:flex;
  flex-direction:column;
  min-height:0;
}
.dashboard-access-card .dashboard-login-status{
  flex:1;
  min-height:0;
}
.dashboard-login-status::-webkit-scrollbar{width:7px}
.dashboard-login-status::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--cyan),var(--violet));border-radius:999px}
.dashboard-login-status .activity-item{
  min-height:42px;
  padding:7px 8px;
  grid-template-columns:30px 1fr auto;
  border-radius:12px;
}
.dashboard-login-status .activity-item .bubble{
  width:30px;
  height:30px;
  border-radius:10px;
  font-size:10px;
}
.dashboard-login-row .pill{
  padding:6px 8px;
  font-size:10px;
}
.dashboard-pending-card h2,
.dashboard-access-card h2,
.dashboard-recent-card h2{
  margin-bottom:10px;
}
.dashboard-pending-card .pill{
  padding:6px 10px;
  font-size:12px;
}
.dashboard-pending-list{
  gap:8px;
  margin-top:10px;
  align-content:start;
  align-items:stretch;
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:var(--violet) rgba(255,255,255,.06);
}
.dashboard-pending-card{
  display:flex;
  flex-direction:column;
  min-height:0;
}
.dashboard-pending-card .dashboard-pending-list{
  flex:1;
  min-height:0;
}
.dashboard-pending-list::-webkit-scrollbar{width:7px}
.dashboard-pending-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--cyan),var(--violet));border-radius:999px}
.dashboard-pending-list .activity-item{
  min-height:50px;
  padding:9px 10px;
  grid-template-columns:36px 1fr;
  border-radius:13px;
}
.dashboard-pending-list .activity-item .bubble{
  width:36px;
  height:36px;
  border-radius:12px;
}
.dashboard-access-card p,
#liveRoomStatus p{
  margin:12px 0 0;
  padding-top:0;
}
.dashboard-access-card p,
#liveRoomStatus p{
  margin-top:auto;
}
#liveRoomStatus{
  padding:16px 18px 24px;
  display:flex;
  flex-direction:column;
  min-height:0;
}
#liveRoomStatus h2{
  margin:0 0 4px;
}
#liveRoomStatus .donut{
  width:116px;
  height:116px;
  margin:0 auto;
}
#liveRoomStatus .donut span{
  width:68px;
  height:68px;
}
#liveRoomStatus .donut span b{
  font-size:20px;
}
#liveRoomStatus .donut span small{
  margin-top:3px;
  font-size:13px;
}
#liveRoomStatus .donut + .row{
  margin-top:2px!important;
  margin-bottom:2px!important;
}
#liveRoomStatus .row.space{
  min-height:21px;
  line-height:1.1;
}
#liveRoomStatus .color-dot{
  width:11px;
  height:11px;
  margin-right:6px;
}
.dashboard-pending-card .btn,
.dashboard-access-card .btn,
.dashboard-recent-card .btn,
#liveRoomStatus .btn{
  min-height:36px;
  padding:9px 14px;
}
.dashboard-pending-card .activity-item>div,
.dashboard-access-card .activity-item>div,
.dashboard-recent-card .activity-item>div{
  gap:4px 7px;
}
.dashboard-recent-list{
  gap:8px;
  align-content:start;
  align-items:stretch;
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:var(--violet) rgba(255,255,255,.06);
}
.dashboard-recent-card{
  display:flex;
  flex-direction:column;
  min-height:0;
}
.dashboard-recent-card .dashboard-recent-list{
  flex:1;
  min-height:0;
}
.dashboard-recent-list::-webkit-scrollbar{width:7px}
.dashboard-recent-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--cyan),var(--violet));border-radius:999px}
.dashboard-recent-footer{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:auto;
  padding-top:12px;
}
.dashboard-recent-list .activity-item{
  min-height:54px;
  padding:9px 10px;
  grid-template-columns:36px 1fr;
  border-radius:13px;
}
.dashboard-recent-list .activity-item .bubble{
  width:36px;
  height:36px;
  border-radius:12px;
  font-size:13px;
}
.dashboard-recent-list .activity-item b,
.dashboard-login-status .activity-item b{
  line-height:1.1;
}
.dashboard-recent-list .activity-item .muted,
.dashboard-login-status .activity-item .muted{
  line-height:1.2;
  font-size:13px;
}
.dashboard-room-snapshot{
  display:grid;
  gap:8px;
  margin-top:14px;
  margin-bottom:12px;
  max-height:172px;
  overflow-y:auto;
  padding-right:4px;
  scrollbar-width:thin;
  scrollbar-color:var(--violet) rgba(255,255,255,.06);
}
.dashboard-room-snapshot::-webkit-scrollbar{
  width:7px;
}
.dashboard-room-snapshot::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,var(--cyan),var(--violet));
  border-radius:999px;
}
.room-snapshot-item{
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:9px;
  align-items:start;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  background:rgba(255,255,255,.045);
  cursor:pointer;
}
#liveRoomStatus .dashboard-room-snapshot{
  gap:6px;
  margin-top:4px;
  margin-bottom:8px;
  max-height:252px;
  flex:1;
  min-height:0;
}
#liveRoomStatus .room-snapshot-item{
  grid-template-columns:15px minmax(0,1fr);
  gap:6px;
  padding:8px 8px;
  border-radius:12px;
  min-height:55px;
}
#liveRoomStatus .room-snapshot-mode-badge{
  max-width:110px;
  padding:3px 7px;
  font-size:9px;
}
#liveRoomStatus .room-snapshot-item small{
  margin-top:2px;
  line-height:1.18;
}
.room-snapshot-item.maintenance{
  border-color:rgba(55,199,255,.30);
  background:linear-gradient(135deg,rgba(55,199,255,.12),rgba(139,92,246,.08));
}
.room-snapshot-item.manual-override{
  border-color:rgba(245,158,11,.34);
  background:linear-gradient(135deg,rgba(245,158,11,.10),rgba(139,92,246,.10));
}
.room-snapshot-item.is-selected{
  border-color:rgba(55,199,255,.64);
  box-shadow:0 0 18px rgba(55,199,255,.16);
}
.room-snapshot-item.is-locked{
  cursor:default;
}
.room-snapshot-item .status-dot{
  width:11px;
  height:11px;
  margin-top:5px;
  background:currentColor;
}
.room-snapshot-main{min-width:0}
.room-snapshot-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.room-snapshot-item b{
  display:block;
  line-height:1.1;
}
.room-snapshot-title em{
  flex:0 0 auto;
  font-style:normal;
  font-size:10px;
  line-height:1;
  padding:5px 7px;
  border-radius:999px;
  color:#ffe5b5;
  background:rgba(245,158,11,.16);
  border:1px solid rgba(245,158,11,.30);
  font-weight:1000;
}
.room-snapshot-mode-badge{
  flex:0 0 auto;
  max-width:128px;
  border:1px solid rgba(55,199,255,.24);
  border-radius:999px;
  padding:5px 8px;
  background:rgba(55,199,255,.10);
  color:#dff6ff;
  font-size:10px;
  line-height:1;
  font-weight:1000;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.room-snapshot-mode-badge.override{
  border-color:rgba(245,158,11,.34);
  background:rgba(245,158,11,.14);
  color:#ffe7b5;
}
.room-snapshot-item small{
  display:block;
  color:var(--muted);
  line-height:1.25;
  margin-top:3px;
}
.room-snapshot-controls{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
  margin-top:8px;
}
.room-snapshot-controls button{
  min-width:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  background:rgba(255,255,255,.055);
  color:#dbe7ff;
  padding:7px 5px;
  font-size:11px;
  font-weight:1000;
  cursor:pointer;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.room-snapshot-controls button.follow{
  grid-column:1/-1;
}
.room-snapshot-controls button.active{
  border-color:rgba(55,199,255,.55);
  background:linear-gradient(135deg,rgba(55,199,255,.20),rgba(139,92,246,.25));
  color:#fff;
  box-shadow:0 0 14px rgba(55,199,255,.12);
}
.room-snapshot-controls button:disabled{
  opacity:.55;
  cursor:wait;
}
.room-snapshot-preview{
  grid-column:1/-1;
  height:300px;
  margin-top:8px;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  gap:8px;
  padding:8px;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(55,199,255,.26);
  background:#050816;
  box-shadow:0 0 22px rgba(55,199,255,.10);
}
.room-snapshot-preview iframe{
  width:100%;
  height:100%;
  border:0;
  border-radius:10px;
  display:block;
  background:#050816;
}
.room-snapshot-preview .room-snapshot-controls{
  margin-top:0;
}
.dashboard-room-float{
  position:fixed;
  z-index:180;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  gap:10px;
  min-width:430px;
  min-height:360px;
  padding:12px;
  border:1px solid rgba(55,199,255,.36);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(7,16,38,.96),rgba(28,12,48,.96));
  box-shadow:0 26px 90px rgba(0,0,0,.55),0 0 42px rgba(55,199,255,.14);
  overflow:hidden;
}
.dashboard-room-float[hidden]{
  display:none!important;
}
.dashboard-room-float-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:54px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.06);
  cursor:move;
  user-select:none;
  touch-action:none;
}
.dashboard-room-float-head>div{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:3px 10px;
  align-items:center;
  min-width:0;
}
.dashboard-room-float-head .status-dot{
  grid-row:1/3;
  width:12px;
  height:12px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 18px currentColor;
}
.dashboard-room-float-head b,
.dashboard-room-float-head small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-room-float-head small{
  color:var(--muted);
  font-weight:800;
}
.dashboard-room-preview-tools{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
  padding:2px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:13px;
  background:rgba(255,255,255,.045);
}
.dashboard-room-preview-tools button{
  min-width:0;
  flex:1 1 0;
  height:34px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:11px;
  background:rgba(255,255,255,.07);
  color:#dbe7ff;
  padding:0 10px;
  font-size:11px;
  line-height:1;
  font-weight:1000;
  cursor:pointer;
}
.dashboard-room-preview-tools button.active{
  border-color:rgba(55,199,255,.55);
  background:linear-gradient(135deg,rgba(55,199,255,.22),rgba(139,92,246,.26));
  color:#fff;
}
.dashboard-room-close{
  flex:0 0 auto;
  width:36px;
  height:36px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#fff;
  padding:0;
  font-size:24px;
  line-height:1;
  font-weight:900;
  cursor:pointer;
}
.dashboard-room-float iframe{
  width:100%;
  height:100%;
  min-height:0;
  border:0;
  border-radius:14px;
  background:#050816;
}
.dashboard-room-float-locked{
  min-height:0;
  display:grid;
  place-content:center;
  gap:10px;
  padding:28px;
  text-align:center;
  border:1px dashed rgba(255,216,77,.38);
  border-radius:14px;
  background:rgba(255,216,77,.08);
}
.dashboard-room-float-locked b{
  font-size:20px;
}
.dashboard-room-float-locked small{
  max-width:520px;
  color:#dbe7ff;
  line-height:1.45;
  font-weight:800;
}
.dashboard-room-float .room-snapshot-controls{
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:0;
}
.dashboard-room-float .room-snapshot-controls button.follow{
  grid-column:auto;
}
.dashboard-room-float-resize{
  position:absolute;
  right:8px;
  bottom:8px;
  width:22px;
  height:22px;
  border-right:3px solid var(--cyan);
  border-bottom:3px solid var(--violet);
  border-radius:3px;
  cursor:nwse-resize;
  z-index:2;
  opacity:.9;
}
@media(max-width:720px){
  .dashboard-room-float{
    left:12px!important;
    top:12px!important;
    width:calc(100vw - 24px)!important;
    height:calc(100vh - 24px)!important;
    min-width:0;
  }
  .dashboard-room-float .room-snapshot-controls{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dashboard-room-float .room-snapshot-controls button.follow{
    grid-column:1/-1;
  }
}

/* v3.026 - Assistenza e comunicazioni */
.support-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:20px;align-items:start}
.support-login-btn{border-color:color-mix(in srgb,var(--nav-support) 48%,var(--line));background:color-mix(in srgb,var(--nav-support) 12%,rgba(255,255,255,.04))}
.login-support-modal.card{position:relative;width:min(720px,calc(100vw - 28px));max-height:calc(100dvh - 28px);margin:0;padding:28px;overflow:auto;background:linear-gradient(135deg,#0b1930 0%,#17112d 55%,#32152f 100%);border:1px solid rgba(112,210,255,.3);box-shadow:0 30px 100px rgba(0,0,0,.72),0 0 48px rgba(139,92,246,.28)}
.login-support-form{margin-top:18px}.login-support-form .wide{grid-column:1/-1}.login-support-privacy{font-size:12px}.support-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.login-support-modal.card{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:20px}.login-support-form{grid-template-columns:1fr}}
.support-admin-layout{grid-template-columns:1fr}
.support-metrics .metric{min-height:142px;padding:27px 24px}
.support-admin-page>.support-metrics{margin-bottom:var(--page-section-gap)}
.support-admin-page>.support-admin-layout{gap:var(--page-section-gap);margin-bottom:var(--page-section-gap)}
.support-admin-page>.support-admin-layout>.card{margin-bottom:0}
.support-admin-layout>.card{min-height:286px;padding-top:30px;padding-bottom:30px}
.support-layout>.card,.support-layout>div>.card{margin-bottom:var(--page-section-gap)}
.support-ticket-list,.support-announcement-list,.support-notification-list,.support-message-thread{display:grid;gap:12px;margin-top:18px}
.support-admin-layout .support-ticket-list,.support-admin-layout .support-announcement-list{max-height:520px;overflow:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:var(--nav-support) rgba(255,255,255,.06)}
.closed-ticket-archive .support-ticket-list{max-height:520px;overflow:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:var(--nav-support) rgba(255,255,255,.06)}
.support-empty{padding:36px 28px;border:1px dashed var(--line);border-radius:18px;text-align:center;color:var(--muted)}
.support-item{position:relative;padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.045)}
.support-item.is-unread{border-color:color-mix(in srgb,var(--nav-support) 56%,var(--line));box-shadow:0 0 22px color-mix(in srgb,var(--nav-support) 18%,transparent)}
.support-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.support-item h3{margin:0 0 5px;font-size:16px}.support-item p{margin:7px 0;white-space:pre-wrap}.support-item-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:12px}
.support-item-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}
.support-status,.support-priority,.support-severity{display:inline-flex;padding:5px 9px;border-radius:999px;border:1px solid var(--line);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.support-status[data-status="open"]{color:#38bdf8}.support-status[data-status="in_progress"]{color:#f59e0b}.support-status[data-status="resolved"]{color:#10b981}.support-status[data-status="closed"]{color:#94a3b8}
.support-priority[data-priority="urgent"],.support-severity[data-severity="critical"]{color:#fb7185;border-color:rgba(251,113,133,.45)}
.support-priority[data-priority="high"],.support-severity[data-severity="warning"]{color:#facc15;border-color:rgba(250,204,21,.4)}
.support-severity[data-severity="success"]{color:#34d399}.support-severity[data-severity="info"]{color:#38bdf8}
.support-conversation-modal.card{position:relative;width:min(920px,calc(100vw - 28px));max-height:calc(100dvh - 28px);margin:0;padding:28px;overflow:auto;background:linear-gradient(135deg,#0b1930 0%,#17112d 55%,#32152f 100%);border:1px solid rgba(112,210,255,.3);box-shadow:0 30px 100px rgba(0,0,0,.72),0 0 48px rgba(139,92,246,.28)}
@media(max-width:700px){.support-conversation-modal.card{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:20px}}
.support-message{max-width:84%;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid var(--line)}
.support-message.is-own{justify-self:end;background:color-mix(in srgb,var(--nav-support) 17%,rgba(255,255,255,.055));border-color:color-mix(in srgb,var(--nav-support) 38%,var(--line))}
.support-message-head{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:12px;margin-bottom:7px}.support-message p{margin:0;white-space:pre-wrap}
.support-reply-box{position:sticky;bottom:-1px;margin-top:18px;padding:16px;border-radius:18px;background:color-mix(in srgb,var(--bg2) 88%,transparent);border:1px solid var(--line);backdrop-filter:blur(12px)}
.support-admin-controls,.support-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.support-admin-controls{margin:14px 0}.support-admin-controls label{min-width:170px;margin:0}.support-admin-controls select,.support-filters select{padding:9px 12px}
.support-compose[hidden],#announcementComposer[hidden]{display:none!important}
.mail-template-editor{margin-top:0}.mail-template-placeholders{display:flex;gap:7px;flex-wrap:wrap;min-height:44px;padding:9px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.04)}
.mail-template-placeholder{display:inline-flex;align-items:center;padding:5px 8px;border-radius:9px;background:color-mix(in srgb,var(--nav-support) 16%,transparent);border:1px solid color-mix(in srgb,var(--nav-support) 34%,var(--line));color:color-mix(in srgb,var(--nav-support) 82%,white);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}
.communication-audit-list{display:grid;gap:9px;margin-top:18px;max-height:460px;overflow:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:var(--nav-support) rgba(255,255,255,.06)}.communication-audit-list::-webkit-scrollbar{width:8px}.communication-audit-list::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:99px}.communication-audit-list::-webkit-scrollbar-thumb{background:linear-gradient(var(--nav-support),var(--violet));border-radius:99px}.communication-audit-row{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(210px,1fr) minmax(180px,1.3fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035);font-size:13px}.communication-audit-row code{color:color-mix(in srgb,var(--nav-support) 78%,white);font-size:12px}.communication-audit-row time{color:var(--muted);white-space:nowrap}
:root[data-appearance-mode=light] .support-item{background:rgba(255,255,255,.68)}
:root[data-appearance-mode=light] .support-reply-box{background:rgba(255,255,255,.9)}
@media(max-width:1100px){.support-layout,.support-admin-layout{grid-template-columns:1fr}}
@media(max-width:700px){
  .support-page .topbar{align-items:stretch}.support-page .topbar>.btn{width:100%}
  .support-metrics{grid-template-columns:1fr 1fr!important}.support-metrics .metric:last-child{grid-column:1/-1}
  .support-item-head,.support-admin-controls,.support-filters{align-items:stretch;flex-direction:column}
  .support-admin-controls label,.support-admin-controls button,.support-filters select{width:100%}
  .support-message{max-width:96%}
  .communication-audit-row{grid-template-columns:1fr}.communication-audit-row time{white-space:normal}
}
.login-designer-panel{
  border-color:rgba(55,199,255,.34);
  box-shadow:0 26px 92px rgba(55,199,255,.12),var(--glow);
}
.login-designer-head{
  align-items:flex-start;
  margin-bottom:18px;
}
.login-designer-head h2{
  margin:0 0 8px;
}
.login-designer-head p{
  margin:0;
}
.login-designer-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(460px,560px);
  gap:22px;
  align-items:stretch;
}
.grid.cols3.login-designer-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(250px,1fr));
  gap:14px 16px;
  min-width:0;
  align-content:start;
}
.login-scale-field,
.login-overlay-field{
  grid-column:1;
}
.login-designer-layout .privacy-preview-mini{
  grid-column:auto;
  min-width:0;
}
.login-preview-mini{
  grid-column:span 2;
  align-self:end;
}
.login-preview-card{
  min-height:118px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(rgba(3,7,18,.42),rgba(3,7,18,.42)),
    radial-gradient(circle at 18% 18%,rgba(55,199,255,.34),transparent 32%),
    linear-gradient(135deg,rgba(8,16,35,.88),rgba(57,18,72,.78));
  display:grid;
  align-content:center;
  gap:8px;
  padding:20px;
}
.login-preview-card .preview-logo{
  width:44px;
  height:44px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--cyan),var(--violet),var(--pink));
}
.login-preview-card small{
  color:var(--muted);
}
.brand-save-row{
  margin:20px 0 0;
}
.monitor-preview-viewport{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  min-height:0;
  padding:28px;
  box-sizing:border-box;
  border-radius:34px;
  overflow:visible;
  background:#050816;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 80px rgba(0,0,0,.24);
}
.monitor-preview-viewport .monitor-v16-frame{
  position:absolute;
  margin:0;
}
.layout-edit-controls{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.layout-nudge{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
}
.free-box-controls{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  padding:12px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  background:rgba(255,255,255,.035);
}
.free-box-controls label{
  display:grid;
  gap:8px;
  min-width:0;
  color:var(--muted);
  font-size:13px;
}
.free-box-controls input[type=range]{
  width:100%;
}
.layout-editing{
  cursor:crosshair;
}
.layout-editing .monitor-free-box{
  outline:2px dashed rgba(55,199,255,.75);
  outline-offset:4px;
}
.monitor-free-box.selected{
  outline:3px solid #37c7ff;
  box-shadow:0 0 28px rgba(55,199,255,.32),0 18px 42px rgba(0,0,0,.28);
}
.toggle{
  cursor:pointer;
}
.toggle.off{
  background:rgba(255,255,255,.08);
}
.toggle.off:after{
  left:3px;
  right:auto;
  background:rgba(174,185,212,.7);
}
@media(max-width:900px){
  .app.superadmin-role{
    grid-template-columns:1fr;
  }
  .app.superadmin-role .sidebar{
    width:auto;
  }
  .login-preview-mini{
    grid-column:auto;
  }
}

/* Monitor Designer V2 */
.monitor-designer-v2 .lux-header{margin-bottom:18px}
.monitor-devices-designer-panel{margin-bottom:18px;padding:18px}
.monitor-devices-head{align-items:flex-start;margin-bottom:14px}
.monitor-devices-head h2{margin:0 0 6px}
.monitor-devices-head p{margin:0}
.monitor-device-form{display:grid;grid-template-columns:minmax(140px,.9fr) minmax(200px,1.15fr) minmax(140px,.85fr) 120px minmax(140px,.9fr) minmax(170px,.9fr) minmax(150px,auto);gap:12px;align-items:end}
.monitor-device-form label{margin-top:0}
.monitor-device-actions{position:relative;display:grid;grid-template-columns:auto auto;align-items:end;align-self:end;gap:8px;min-width:0;padding-bottom:0}
.monitor-device-actions .btn{padding:11px 14px;white-space:nowrap}
#saveMonitorDevice{min-width:78px}
.monitor-device-actions .muted{position:absolute;left:0;right:0;top:calc(100% + 6px);font-size:13px;line-height:1.25;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.monitor-device-table-wrap{margin-top:12px;max-height:250px;overflow:auto;border-radius:18px;scrollbar-color:var(--violet) rgba(255,255,255,.06);scrollbar-width:thin}
.monitor-device-table-wrap::-webkit-scrollbar{width:10px;height:10px}
.monitor-device-table-wrap::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:999px}
.monitor-device-table-wrap::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--cyan),var(--violet));border-radius:999px;border:2px solid rgba(9,12,32,.88)}
.compact-monitor-table tr.has-pending-monitor-changes td{background:linear-gradient(135deg,rgba(34,197,94,.14),rgba(55,199,255,.09));border-color:rgba(34,197,94,.32)}
.compact-monitor-table tr.has-pending-monitor-changes td:first-child{box-shadow:inset 4px 0 0 rgba(34,197,94,.9)}
.compact-monitor-table tr.is-active-monitor-editor td{border-top-color:rgba(34,197,94,.82);border-bottom-color:rgba(34,197,94,.82);background:linear-gradient(135deg,rgba(34,197,94,.11),rgba(20,184,166,.06))}
.compact-monitor-table tr.is-active-monitor-editor td:first-child{border-left-color:rgba(34,197,94,.82);box-shadow:inset 4px 0 0 #22c55e}
.compact-monitor-table tr.is-active-monitor-editor td:last-child{border-right-color:rgba(34,197,94,.82)}
.monitor-editing-label{display:none;margin-left:2px;padding:3px 8px;border:1px solid rgba(34,197,94,.68);border-radius:999px;background:rgba(34,197,94,.14);color:#86efac;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.compact-monitor-table tr.is-active-monitor-editor .monitor-editing-label{display:inline-flex}
.compact-monitor-table [data-save-monitor-row].is-monitor-row-save-visible{display:inline-flex!important}
.compact-monitor-table{margin:0;border-spacing:0 8px;min-width:1160px}
.compact-monitor-table th{padding:0 10px 5px;font-size:11px;letter-spacing:.07em}
.compact-monitor-table td{padding:8px 10px;vertical-align:middle}
.compact-monitor-table td:nth-child(1){width:170px}
.compact-monitor-table td:nth-child(2){width:150px}
.compact-monitor-table td:nth-child(3){width:255px}
.compact-monitor-table td:nth-child(4){width:90px}
.compact-monitor-table td:nth-child(5){width:125px}
.compact-monitor-table td:nth-child(6){min-width:350px}
.compact-monitor-table input[readonly]{width:100%;min-width:0;max-width:245px;padding:9px 11px;border-radius:12px;font-size:12px}
.compact-monitor-table .btn.small{padding:7px 9px;border-radius:11px;font-size:13px;line-height:1;white-space:nowrap}
.compact-monitor-table td:last-child{display:table-cell}
.monitor-row-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;min-height:34px}
.monitor-state-toggle{appearance:none;color:#fff;font:inherit;font-weight:900;cursor:pointer;min-height:32px;box-shadow:none}
.monitor-state-toggle.pill.green{color:#d7ffe8;background:rgba(33,208,122,.16);border-color:rgba(33,208,122,.35)}
.monitor-state-toggle.pill.red{color:#ffd6df;background:rgba(255,59,102,.18);border-color:rgba(255,59,102,.35)}
.monitor-state-toggle:hover{filter:brightness(1.08)}
.monitor-state-toggle:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.designer-shell{display:flex;flex-direction:column;gap:24px}
.designer-preview{order:1;min-width:0}
.designer-panel{order:2;padding:18px;max-height:none;overflow:visible;display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:14px;align-items:start;grid-auto-flow:dense}
.designer-panel.panel-free-layout{position:relative;display:block;min-height:var(--designer-panel-h,900px);padding-bottom:42px;overflow:visible}
.designer-group{padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid rgba(255,255,255,.10)}
.designer-panel .designer-group{margin:0;padding:14px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.035)}
.designer-panel.panel-free-layout .control-panel-box{position:absolute;margin:0;overflow:auto;resize:none;min-width:220px;min-height:150px;box-shadow:0 18px 46px rgba(0,0,0,.16);scrollbar-color:rgba(55,199,255,.85) rgba(255,255,255,.08);scrollbar-width:thin}
.designer-panel.panel-free-layout .control-panel-box>h2,
.designer-panel.panel-free-layout .control-panel-box>.row.space:first-child{cursor:move;user-select:none}
.designer-panel.panel-free-layout .control-panel-box::-webkit-scrollbar{width:8px}
.designer-panel.panel-free-layout .control-panel-box::-webkit-scrollbar-track{background:rgba(255,255,255,.08);border-radius:999px}
.designer-panel.panel-free-layout .control-panel-box::-webkit-scrollbar-thumb{background:linear-gradient(#8b5cf6,#37c7ff);border-radius:999px}
.control-panel-resize-handle{position:absolute;right:0;bottom:0;width:32px;height:32px;border-radius:18px 0 18px 0;cursor:nwse-resize;background:linear-gradient(135deg,transparent 0 46%,rgba(55,199,255,.95) 47% 62%,rgba(139,92,246,.95) 63% 100%);box-shadow:-8px -8px 22px rgba(55,199,255,.14);z-index:8}
.control-panel-resize-handle:after{content:"";position:absolute;right:8px;bottom:8px;width:14px;height:14px;border-right:3px solid rgba(255,255,255,.75);border-bottom:3px solid rgba(255,255,255,.75);border-radius:0 0 5px 0}
.designer-panel-resize-handle{position:absolute;left:24px;right:24px;bottom:12px;height:22px;border-radius:999px;cursor:ns-resize;background:linear-gradient(90deg,rgba(55,199,255,.95),rgba(139,92,246,.95));box-shadow:0 0 24px rgba(55,199,255,.34);z-index:20}
.designer-panel-resize-handle:after{content:"";position:absolute;left:50%;top:50%;width:96px;height:4px;transform:translate(-50%,-50%);border-radius:999px;background:rgba(255,255,255,.72);box-shadow:0 0 12px rgba(255,255,255,.22)}
.designer-group h2{margin:0 0 10px;font-size:18px}
.designer-group:nth-child(2),.designer-group:nth-child(4){grid-column:span 2}
.designer-group:nth-child(5),.designer-group:nth-child(6){grid-column:span 2}
.designer-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.designer-mode-tabs .select-card{display:grid;gap:8px;text-align:left}
.designer-mode-tabs .select-card span{color:var(--muted);font-weight:800}
.layout-preset-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.layout-preset-room-map{display:grid;gap:10px;margin-top:14px}
.layout-preset-room-map[hidden]{display:none!important}
.layout-preset-room-map h3{margin:0;color:#fff;font-size:15px}
.layout-preset-room-map label{display:grid;grid-template-columns:minmax(110px,.65fr) 1fr;align-items:center;gap:10px;margin:0;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.layout-preset-room-map span{min-width:0;color:#fff;font-weight:900;overflow-wrap:anywhere}
.edit-lock-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.edit-box-flag{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px;width:max-content;max-width:100%;margin-top:12px;padding:10px 14px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);font-weight:900;color:#fff}
.edit-lock-row .edit-box-flag{margin-top:0}
.edit-box-flag input{width:auto}
body:not(.designer-box-editing) .designer-panel .control-panel-resize-handle,
body:not(.designer-box-editing) .designer-panel .designer-panel-resize-handle{display:none}
body:not(.designer-box-editing) .designer-panel .control-panel-box>h2,
body:not(.designer-box-editing) .designer-panel .control-panel-box>.row.space:first-child{cursor:default}
.designer-room-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.035)}
.designer-room-pick{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:46px;padding:9px 11px;border-radius:13px;background:rgba(255,255,255,.045);border:1px solid transparent;font-weight:900;cursor:pointer;color:#fff}
.designer-room-pick input{position:absolute;opacity:0;pointer-events:none}
.designer-room-pick.active{border-color:rgba(55,199,255,.78);background:linear-gradient(135deg,rgba(55,199,255,.24),rgba(139,92,246,.18));box-shadow:0 0 24px rgba(55,199,255,.12)}
.designer-room-pick .room-select-dot{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.68);background:rgba(4,9,22,.72);box-shadow:inset 0 0 0 4px rgba(4,9,22,.92)}
.designer-room-pick.active .room-select-dot{border-color:#37c7ff;background:#37c7ff;box-shadow:0 0 18px rgba(55,199,255,.55),inset 0 0 0 5px #101831}
.designer-room-pick .room-pick-name{min-width:0;font-size:15px;line-height:1.15;overflow-wrap:anywhere}
.designer-room-pick small{color:#b7c3dd;font-size:11px;font-weight:900;text-align:right;white-space:nowrap}
.designer-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
.floating-inspector .designer-status-grid{display:none}
.designer-status-grid button,.designer-card-status button{border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 10px;background:rgba(4,9,22,.55);color:#fff;font-weight:1000;cursor:pointer}
.designer-card-status button{padding:calc(8px * var(--status-button-size,1)) calc(10px * var(--status-button-size,1));min-width:calc(54px * var(--status-button-size,1));font-size:var(--status-button-font-size,12px);font-weight:var(--status-button-font-weight,900);color:var(--status-button-color,#fff);line-height:1.05}
.designer-status-grid button.active,.designer-card-status button.active{border-color:color-mix(in srgb,var(--card-state) 76%,white 12%);box-shadow:0 0 18px color-mix(in srgb,var(--card-state) 42%,transparent)}
.designer-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.designer-control-grid label{font-weight:900;color:#dbe7ff}
.designer-control-grid input[type=range]{margin-top:8px}
.designer-color-row{margin-top:14px}
.designer-flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.designer-flags label{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;min-height:42px;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.045);font-weight:900}
.designer-flags input{justify-self:center;margin:0}
.designer-flags span{display:block;min-width:0;line-height:1.15;overflow-wrap:anywhere}
.designer-flags label.active,.designer-flags label:has(input:checked){background:linear-gradient(135deg,rgba(55,199,255,.12),rgba(139,92,246,.16));box-shadow:inset 3px 0 0 rgba(55,199,255,.75)}
.designer-flags .day-bookings-toggle{grid-column:1/-1;justify-content:center}
.designer-stage{position:relative;aspect-ratio:16/9;border-radius:28px;padding:0;background:#050816;border:1px solid rgba(255,255,255,.12);overflow:hidden;min-height:360px}
.designer-canvas{position:relative;width:1920px;height:1080px;transform-origin:center;overflow:hidden;border-radius:34px;background:linear-gradient(135deg,rgba(8,19,39,.94),rgba(21,15,42,.88) 48%,rgba(49,12,54,.84));border:1px solid rgba(255,255,255,.18)}
.designer-stage .designer-canvas{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--stage-scale,.55))}
@media(max-width:1200px){.designer-panel{grid-template-columns:1fr}.designer-room-list{grid-template-columns:1fr}}
@media(max-width:1320px){.monitor-device-form{grid-template-columns:repeat(4,minmax(0,1fr))}.monitor-device-notes{grid-column:span 2}.monitor-device-actions{grid-column:span 2;grid-template-columns:auto auto 1fr}.monitor-device-actions .muted{grid-column:1/-1}}
@media(max-width:900px){.monitor-device-form{grid-template-columns:1fr 1fr}.monitor-device-notes,.monitor-device-actions{grid-column:span 2}}
.designer-canvas.multi{background:linear-gradient(125deg,rgba(255,255,255,.055) 0 26%,transparent 26% 54%,rgba(255,255,255,.04) 54% 68%,transparent 68%),linear-gradient(135deg,rgba(10,24,46,.62),rgba(20,20,48,.54) 48%,rgba(42,18,55,.58));backdrop-filter:blur(16px)}
.designer-glass-board{position:absolute;inset:44px;border-radius:34px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.035);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 32px 90px rgba(0,0,0,.24)}
.designer-room-card,.designer-card-layer,.designer-free-object{position:absolute;box-sizing:border-box;touch-action:none}
.designer-room-card{--state-free:#22c55e;--state-soon:#f59e0b;--state-busy:#ff3b66;--state-maintenance:#2f9bff;--card-state:var(--state-free);font-family:var(--card-font);font-weight:var(--card-weight);font-size:var(--layer-font-size,28px);color:var(--layer-color,#fff);border-radius:var(--card-radius);border:2px solid color-mix(in srgb,var(--card-state) 80%,white 12%);background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.045) 52% 66%,transparent 66%),linear-gradient(135deg,rgba(4,20,31,.95),rgba(12,22,44,.88) 50%,rgba(28,8,34,.92));box-shadow:0 0 calc(22px * var(--card-glow)) color-mix(in srgb,var(--card-state) 74%,transparent),0 0 calc(82px * var(--card-glow)) color-mix(in srgb,var(--card-state) 42%,transparent),0 24px 68px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14);transform-origin:center;transform:scale(var(--layer-scale,1));cursor:move;overflow:hidden}
.designer-room-card.free{--card-state:var(--state-free)}
.designer-room-card.soon{--card-state:var(--state-soon)}
.designer-room-card.busy{--card-state:var(--state-busy)}
.designer-room-card.maintenance{--card-state:var(--state-maintenance)}
.designer-room-card.semaphore.free{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#062418,#102b25 55%,#09412b)}
.designer-room-card.semaphore.soon{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#211907,#2d260f 55%,#52390b)}
.designer-room-card.semaphore.busy{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#210713,#250f1c 55%,#551125)}
.designer-room-card.semaphore.maintenance{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#07182f,#0b2140 55%,#123a72)}
.designer-room-card.theme{background:linear-gradient(125deg,rgba(255,255,255,.055) 0 28%,transparent 28% 52%,rgba(255,255,255,.045) 52% 66%,transparent 66%),linear-gradient(135deg,var(--card-a),rgba(12,22,44,.88) 48%,var(--card-b))}
.designer-room-card.selected,.designer-card-layer.selected,.designer-free-object.selected{outline:0;box-shadow:0 0 0 2px rgba(55,199,255,.64),0 0 34px rgba(55,199,255,.34),0 0 calc(22px * var(--card-glow,1)) color-mix(in srgb,var(--card-state,#37c7ff) 74%,transparent),0 0 calc(82px * var(--card-glow,1)) color-mix(in srgb,var(--card-state,#37c7ff) 42%,transparent),0 24px 68px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14)}
.designer-card-layer{display:grid;place-items:center;color:var(--layer-color,#fff);font-size:var(--layer-font-size,28px);font-weight:var(--layer-font-weight,900);cursor:move;transform-origin:center;transform:scale(var(--layer-scale,1))}
.designer-card-logo{width:100%;height:100%;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,var(--card-a),#8b5cf6,var(--card-b));font-size:1.6em;font-weight:inherit;box-shadow:0 0 28px color-mix(in srgb,var(--card-state) 34%,transparent);overflow:hidden;isolation:isolate}
.designer-card-logo img{width:var(--media-width,72%);height:var(--media-height,72%);max-width:100%;max-height:100%;object-fit:contain;transform:scale(var(--media-scale,1));filter:drop-shadow(0 12px 22px rgba(0,0,0,.28))}
.designer-card-logo span{display:grid;place-items:center;width:var(--media-width,72%);height:var(--media-height,72%);max-width:100%;max-height:100%;transform:scale(var(--media-scale,1));line-height:1;text-align:center}
.designer-card-status{display:flex;align-items:center;justify-content:center;gap:calc(10px * var(--status-button-size,1));width:100%;height:100%;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgb(4 9 22 / var(--layer-box-opacity,.45));backdrop-filter:blur(8px);box-shadow:0 0 calc(30px * var(--layer-glow,.4)) color-mix(in srgb,var(--card-state,#37c7ff) 34%,transparent)}
.designer-card-status.single button{padding-inline:calc(18px * var(--status-button-size,1))}
.designer-card-title{display:grid;place-items:center;width:100%;height:100%;text-align:center;text-shadow:0 16px 45px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgb(4 9 22 / var(--layer-box-opacity,.45));backdrop-filter:blur(8px);box-shadow:0 0 calc(30px * var(--layer-glow,.4)) color-mix(in srgb,var(--card-state,#37c7ff) 34%,transparent)}
.designer-card-title h2{margin:0;font-size:calc(2.1em * var(--title-name-scale,1));line-height:.95;letter-spacing:0;overflow-wrap:anywhere;color:var(--title-name-color,var(--layer-color,#fff));text-shadow:0 0 calc(20px * var(--layer-glow,.4)) color-mix(in srgb,var(--title-name-color,var(--card-state,#37c7ff)) 34%,transparent)}
.designer-card-title span{display:block;margin-top:10px;font-size:calc(.9em * var(--title-status-scale,1));font-weight:inherit;color:var(--title-status-color,var(--layer-color,#fff));text-shadow:0 0 calc(16px * var(--layer-glow,.4)) color-mix(in srgb,var(--title-status-color,var(--card-state,#37c7ff)) 36%,transparent)}
.designer-card-date,.designer-card-event,.designer-card-countdown,.designer-card-org{display:grid;place-items:center;width:100%;height:100%;text-align:center;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgb(4 9 22 / var(--layer-box-opacity,.45));backdrop-filter:blur(8px);box-shadow:0 0 calc(30px * var(--layer-glow,.4)) color-mix(in srgb,var(--card-state,#37c7ff) 34%,transparent)}
.designer-card-layer.no-box .designer-card-status,.designer-card-layer.no-box .designer-card-title,.designer-card-layer.no-box .designer-card-date,.designer-card-layer.no-box .designer-card-event,.designer-card-layer.no-box .designer-card-countdown,.designer-card-layer.no-box .designer-card-org{border-color:transparent;background:transparent;box-shadow:none;backdrop-filter:none}
.title-text-controls,.text-line-controls{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.10)}
.title-text-controls h3,.text-line-controls h3{margin:0 0 10px;font-size:14px;color:#dbe7ff}
.title-text-controls label,.text-line-controls label{margin-top:10px}
.media-fit-controls{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.10)}
.media-fit-controls h3{margin:0 0 10px;font-size:14px;color:#dbe7ff}
.media-fit-controls label{margin-top:10px}
.designer-card-date b{display:block;font-size:1.35em;line-height:1}
.designer-card-date small{display:block;margin-top:6px;color:#d7dff8;font-size:.58em;font-weight:900}
.designer-card-event small{display:block;color:var(--card-state);font-weight:1000;letter-spacing:.08em}
.designer-card-event b{display:block;font-size:var(--event-title-font-size,1.08em);margin-top:8px;line-height:1.1}
.designer-card-event span{display:block;font-size:var(--event-time-font-size,1.18em);margin-top:8px}
.designer-card-event em{display:block;margin-top:8px;font-size:var(--event-meta-font-size,.62em);font-style:normal;color:#d7dff8;line-height:1.2}
.designer-card-countdown small{display:block;color:var(--card-state);font-weight:1000;letter-spacing:.08em}
.designer-card-countdown small{font-size:var(--countdown-label-font-size,1em)}
.designer-card-countdown b{display:block;margin-top:5px;line-height:1.1;font-size:var(--countdown-value-font-size,1em)}
.designer-card-org{grid-template-rows:minmax(0,1fr) auto;gap:10px;padding:12px;overflow:hidden;min-width:0;min-height:0}
.designer-card-org img{width:var(--media-width,58%);height:var(--media-height,58%);max-width:100%;max-height:100%;object-fit:contain;transform:scale(var(--media-scale,1));filter:drop-shadow(0 10px 22px rgba(0,0,0,.28))}
.designer-card-org span{display:grid;place-items:center;width:var(--media-width,58%);height:var(--media-height,58%);max-width:100%;max-height:100%;aspect-ratio:1;border-radius:999px;border:2px solid color-mix(in srgb,var(--card-state,#37c7ff) 74%,transparent);color:#fff;background:linear-gradient(135deg,var(--card-a,#2f9bff),var(--card-b,#ec4899));transform:scale(var(--media-scale,1));box-shadow:0 0 28px color-mix(in srgb,var(--card-state,#37c7ff) 34%,transparent);font-size:1.3em;font-weight:1000}
.designer-card-org b{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82em;line-height:1.15}
.designer-card-bookings{display:grid;grid-template-rows:repeat(var(--booking-count,1),minmax(0,1fr));gap:6px;width:100%;height:100%;overflow:hidden;padding:8px;border:0;border-radius:22px;background:rgb(4 9 22 / var(--layer-box-opacity,.42));backdrop-filter:blur(8px);scrollbar-color:rgba(148,163,184,.78) rgba(255,255,255,.08);scrollbar-width:thin}
.designer-card-bookings.scroll{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}
.designer-card-layer.no-box .designer-card-bookings{background:transparent;backdrop-filter:none}
.designer-card-bookings::-webkit-scrollbar{width:8px}
.designer-card-bookings::-webkit-scrollbar-track{background:rgba(255,255,255,.08);border-radius:999px}
.designer-card-bookings::-webkit-scrollbar-thumb{background:linear-gradient(#94a3b8,#64748b);border-radius:999px}
.designer-card-bookings button{width:100%;min-height:0;border:1px solid var(--event-color,rgba(255,255,255,.20));border-radius:12px;padding:8px 10px;text-align:left;color:#fff;background:var(--event-bg-solid,var(--event-color,rgba(47,155,255,.45)));background:var(--event-bg,rgba(47,155,255,.45));box-shadow:0 0 16px rgba(47,155,255,.22);box-shadow:0 0 16px color-mix(in srgb,var(--event-color,#2f9bff) 32%,transparent);font:inherit;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.designer-card-bookings.scroll button{min-height:48px;justify-content:flex-start}
.designer-card-bookings button.past{filter:saturate(.68) brightness(.82);opacity:.58;box-shadow:none}
.designer-card-bookings button.next-focus:not(.past){position:relative;isolation:isolate;border-color:var(--event-color,#2f9bff);box-shadow:0 0 0 2px rgba(47,155,255,.30),0 0 22px rgba(47,155,255,.34),0 0 54px rgba(47,155,255,.20);border-color:color-mix(in srgb,var(--event-color,#2f9bff) 78%,white 18%);box-shadow:0 0 0 2px color-mix(in srgb,var(--event-color,#2f9bff) 42%,transparent),0 0 22px color-mix(in srgb,var(--event-color,#2f9bff) 72%,transparent),0 0 54px color-mix(in srgb,var(--event-color,#2f9bff) 38%,transparent)}
.designer-card-bookings button.next-focus:not(.past)::after{content:"";position:absolute;inset:3px;border:1px solid rgba(255,255,255,.40);border-radius:10px;pointer-events:none;animation:bookingFocusPulse 1.6s ease-in-out infinite}
@keyframes bookingFocusPulse{0%,100%{opacity:.35;transform:scale(.985)}50%{opacity:.9;transform:scale(1)}}
.designer-card-bookings b{display:block;font-size:var(--booking-title-font-size,.82em);font-weight:var(--booking-font-weight,900);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.designer-card-bookings small{display:block;margin-top:3px;font-size:var(--booking-meta-font-size,.68em);line-height:1.15;color:rgba(255,255,255,.86);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.designer-card-bookings.width-text-scale button{padding-inline:clamp(8px,2.2%,18px)}
.designer-card-qr{display:grid;place-items:center;width:100%;height:100%;border-radius:16px;background:repeating-linear-gradient(45deg,#fff 0 8px,#111827 8px 14px);border:10px solid #fff;color:#000;font-weight:1000}
.designer-card-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:100%;height:100%}
.designer-card-actions button{border-radius:18px;border:1px solid rgba(255,255,255,.16);background:rgba(17,24,55,.65);color:#fff;font-weight:1000}
.designer-card-actions button:last-child{background:linear-gradient(135deg,var(--card-a),#8b5cf6,var(--card-b))}
.monitor-client-page .designer-room-card{border-color:var(--card-state,#22c55e);box-shadow:0 0 calc(22px * var(--card-glow,1)) rgba(34,197,94,.42),0 0 calc(82px * var(--card-glow,1)) rgba(34,197,94,.24),0 24px 68px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14)}
.monitor-client-page .designer-room-card.soon{box-shadow:0 0 calc(22px * var(--card-glow,1)) rgba(245,158,11,.42),0 0 calc(82px * var(--card-glow,1)) rgba(245,158,11,.24),0 24px 68px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14)}
.monitor-client-page .designer-room-card.busy{box-shadow:0 0 calc(22px * var(--card-glow,1)) rgba(255,59,102,.42),0 0 calc(82px * var(--card-glow,1)) rgba(255,59,102,.24),0 24px 68px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14)}
.monitor-client-page .designer-room-card.maintenance{box-shadow:0 0 calc(22px * var(--card-glow,1)) rgba(47,155,255,.42),0 0 calc(82px * var(--card-glow,1)) rgba(47,155,255,.24),0 24px 68px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14)}
.monitor-client-page .designer-card-status,.monitor-client-page .designer-card-title,.monitor-client-page .designer-card-date,.monitor-client-page .designer-card-event,.monitor-client-page .designer-card-countdown,.monitor-client-page .designer-card-org,.monitor-client-page .designer-card-bookings{background:rgba(4,9,22,.56);border-color:rgba(255,255,255,.16);box-shadow:0 0 30px rgba(34,197,94,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.monitor-client-page .designer-room-card.soon .designer-card-status,.monitor-client-page .designer-room-card.soon .designer-card-title,.monitor-client-page .designer-room-card.soon .designer-card-date,.monitor-client-page .designer-room-card.soon .designer-card-event,.monitor-client-page .designer-room-card.soon .designer-card-countdown,.monitor-client-page .designer-room-card.soon .designer-card-org,.monitor-client-page .designer-room-card.soon .designer-card-bookings{box-shadow:0 0 30px rgba(245,158,11,.18)}
.monitor-client-page .designer-room-card.busy .designer-card-status,.monitor-client-page .designer-room-card.busy .designer-card-title,.monitor-client-page .designer-room-card.busy .designer-card-date,.monitor-client-page .designer-room-card.busy .designer-card-event,.monitor-client-page .designer-room-card.busy .designer-card-countdown,.monitor-client-page .designer-room-card.busy .designer-card-org,.monitor-client-page .designer-room-card.busy .designer-card-bookings{box-shadow:0 0 30px rgba(255,59,102,.18)}
.monitor-client-page .designer-room-card.maintenance .designer-card-status,.monitor-client-page .designer-room-card.maintenance .designer-card-title,.monitor-client-page .designer-room-card.maintenance .designer-card-date,.monitor-client-page .designer-room-card.maintenance .designer-card-event,.monitor-client-page .designer-room-card.maintenance .designer-card-countdown,.monitor-client-page .designer-room-card.maintenance .designer-card-org,.monitor-client-page .designer-room-card.maintenance .designer-card-bookings{box-shadow:0 0 30px rgba(47,155,255,.18)}
.monitor-client-page .designer-canvas.multi{background:linear-gradient(125deg,rgba(255,255,255,.055) 0 26%,transparent 26% 54%,rgba(255,255,255,.04) 54% 68%,transparent 68%),linear-gradient(135deg,rgba(10,24,46,.86),rgba(20,20,48,.80) 48%,rgba(42,18,55,.84))!important}
.monitor-client-page .designer-room-card{border-color:var(--card-state,#22c55e)!important;background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.045) 52% 66%,transparent 66%),linear-gradient(135deg,rgba(4,20,31,.96),rgba(12,22,44,.90) 50%,rgba(28,8,34,.94))!important}
.monitor-client-page .designer-room-card.semaphore.free{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#062418,#102b25 55%,#09412b)!important}
.monitor-client-page .designer-room-card.semaphore.soon{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#211907,#2d260f 55%,#52390b)!important}
.monitor-client-page .designer-room-card.semaphore.busy{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#210713,#250f1c 55%,#551125)!important}
.monitor-client-page .designer-room-card.semaphore.maintenance{background:linear-gradient(125deg,rgba(255,255,255,.05) 0 28%,transparent 28% 52%,rgba(255,255,255,.04) 52% 66%,transparent 66%),linear-gradient(135deg,#07182f,#0b2140 55%,#123a72)!important}
.monitor-client-page .designer-room-card.theme{background:linear-gradient(125deg,rgba(255,255,255,.055) 0 28%,transparent 28% 52%,rgba(255,255,255,.045) 52% 66%,transparent 66%),linear-gradient(135deg,var(--card-a,#2f9bff),rgba(12,22,44,.88) 48%,var(--card-b,#ec4899))!important}
.monitor-client-page .designer-card-logo,.monitor-client-page .designer-card-org span{box-shadow:0 0 28px rgba(34,197,94,.24)!important;border-color:var(--card-state,#22c55e)!important}
.monitor-client-page .designer-room-card.soon .designer-card-logo,.monitor-client-page .designer-room-card.soon .designer-card-org span{box-shadow:0 0 28px rgba(245,158,11,.24)!important}
.monitor-client-page .designer-room-card.busy .designer-card-logo,.monitor-client-page .designer-room-card.busy .designer-card-org span{box-shadow:0 0 28px rgba(255,59,102,.24)!important}
.monitor-client-page .designer-room-card.maintenance .designer-card-logo,.monitor-client-page .designer-room-card.maintenance .designer-card-org span{box-shadow:0 0 28px rgba(47,155,255,.24)!important}
.monitor-client-page .designer-card-status button{border-color:rgba(255,255,255,.18)!important;background:rgba(4,9,22,.62)!important;color:var(--status-button-color,#fff)!important;box-shadow:none!important}
.monitor-client-page .designer-card-status button.active{border-color:var(--card-state,#22c55e)!important;box-shadow:0 0 18px rgba(34,197,94,.32)!important}
.monitor-client-page .designer-room-card.soon .designer-card-status button.active{box-shadow:0 0 18px rgba(245,158,11,.32)!important}
.monitor-client-page .designer-room-card.busy .designer-card-status button.active{box-shadow:0 0 18px rgba(255,59,102,.32)!important}
.monitor-client-page .designer-room-card.maintenance .designer-card-status button.active{box-shadow:0 0 18px rgba(47,155,255,.32)!important}
.monitor-client-page .designer-card-layer.no-box .designer-card-status,.monitor-client-page .designer-card-layer.no-box .designer-card-title,.monitor-client-page .designer-card-layer.no-box .designer-card-date,.monitor-client-page .designer-card-layer.no-box .designer-card-event,.monitor-client-page .designer-card-layer.no-box .designer-card-countdown,.monitor-client-page .designer-card-layer.no-box .designer-card-org,.monitor-client-page .designer-card-layer.no-box .designer-card-bookings{background:transparent!important;box-shadow:none!important;border-color:transparent!important}
.monitor-client-page .designer-card-bookings button{background:var(--event-bg-solid,var(--event-color,#2f9bff))!important;border-color:var(--event-color,#2f9bff)!important;box-shadow:0 0 16px rgba(47,155,255,.24),inset 0 1px 0 rgba(255,255,255,.16)!important;color:#fff!important}
.monitor-client-page .designer-card-bookings button:not([style]){background:linear-gradient(135deg,rgba(22,45,84,.92),rgba(64,54,138,.86))!important;border-color:rgba(95,165,255,.72)!important}
.monitor-client-page .designer-card-actions button{background:rgba(17,24,55,.65)!important;border-color:rgba(255,255,255,.16)!important;color:#fff!important;box-shadow:none!important}
.monitor-client-page .designer-card-actions button:last-child{background:linear-gradient(135deg,var(--card-a,#2f9bff),#8b5cf6,var(--card-b,#ec4899))!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 0 24px rgba(47,155,255,.26),inset 0 1px 0 rgba(255,255,255,.20)!important}
.monitor-client-page .designer-free-object{background:rgba(10,15,32,.82)!important;box-shadow:0 18px 42px rgba(0,0,0,.26)!important}
.designer-free-object{display:grid;place-items:center;padding:16px;border-radius:18px;border:1px solid rgba(255,255,255,.18);background:rgba(10,15,32,.72);color:var(--layer-color,#fff);font-size:var(--layer-font-size,28px);font-weight:var(--layer-font-weight,900);cursor:move;box-shadow:0 18px 42px rgba(0,0,0,.26);transform-origin:center;transform:scale(var(--layer-scale,1))}
.designer-free-object.banner{background:linear-gradient(135deg,#2457d6,#8b5cf6,#ec4899)}
.designer-free-object img{max-width:100%;max-height:100%;object-fit:contain}
.resize-handle{position:absolute;right:0;bottom:0;width:22px;height:22px;border-radius:12px 0 0 0;background:linear-gradient(135deg,var(--cyan),var(--violet));cursor:nwse-resize;box-shadow:0 0 18px rgba(55,199,255,.35)}
body:not(.designer-elements-editing).monitor-designer-page .designer-canvas .resize-handle{display:none!important}
body:not(.designer-elements-editing).monitor-designer-page .designer-canvas .designer-room-card,
body:not(.designer-elements-editing).monitor-designer-page .designer-canvas .designer-card-layer,
body:not(.designer-elements-editing).monitor-designer-page .designer-canvas .designer-free-object{cursor:default}
body:not(.designer-elements-editing).monitor-designer-page .designer-canvas .designer-room-card.selected,
body:not(.designer-elements-editing).monitor-designer-page .designer-canvas .designer-card-layer.selected,
body:not(.designer-elements-editing).monitor-designer-page .designer-canvas .designer-free-object.selected{box-shadow:0 0 0 1px rgba(55,199,255,.34),0 0 calc(22px * var(--card-glow,1)) color-mix(in srgb,var(--card-state,#37c7ff) 74%,transparent),0 0 calc(82px * var(--card-glow,1)) color-mix(in srgb,var(--card-state,#37c7ff) 42%,transparent),0 24px 68px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14)}
.floating-inspector{display:none}
body.inspector-open .floating-inspector{display:block;position:fixed;left:var(--inspector-x,calc(100vw - 548px));top:var(--inspector-y,calc(100vh - 520px));z-index:3000;width:var(--inspector-w,min(520px,calc(100vw - 56px)));height:var(--inspector-h,520px)!important;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);margin:0!important;padding:18px!important;overflow:auto;border:1px solid rgba(55,199,255,.34)!important;border-radius:22px!important;background:linear-gradient(135deg,rgba(9,16,35,.94),rgba(34,20,61,.94))!important;box-shadow:0 28px 90px rgba(0,0,0,.42),0 0 54px rgba(55,199,255,.16);backdrop-filter:blur(18px);font-size:calc(14px * var(--inspector-scale,1))}
body.inspector-open .floating-inspector{overflow-y:auto;overflow-x:hidden;padding:18px 30px 24px 18px!important;scrollbar-gutter:stable;scrollbar-color:var(--violet) rgba(255,255,255,.06);scrollbar-width:thin;background-clip:padding-box!important}
body.inspector-open .floating-inspector::-webkit-scrollbar{width:10px}
body.inspector-open .floating-inspector::-webkit-scrollbar-track{margin:18px 0 44px;background:rgba(255,255,255,.055);border-radius:999px}
body.inspector-open .floating-inspector::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:999px;box-shadow:0 0 14px rgba(55,199,255,.24)}
.inspector-drag-handle{cursor:move;user-select:none;padding-right:42px}
body.inspector-open .floating-inspector .designer-control-grid,
body.inspector-open .floating-inspector .style-switch,
body.inspector-open .floating-inspector .monitor-preset-grid{gap:calc(10px * var(--inspector-scale,1))}
body.inspector-open .floating-inspector .select-card{padding:calc(14px * var(--inspector-scale,1))}
.card-inspector-controls{display:none;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.10)}
body.inspector-card .card-inspector-controls{display:block}
.layer-inspector-controls{display:block}
.inspector-close{position:absolute;right:14px;top:14px;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;font-weight:1000;cursor:pointer}
.inspector-resize-handle{position:absolute;right:0;bottom:0;width:30px;height:30px;border-radius:16px 0 20px 0;background:linear-gradient(135deg,transparent 0 42%,rgba(55,199,255,.95) 42% 58%,transparent 58% 100%);cursor:nwse-resize;box-shadow:0 0 18px rgba(55,199,255,.30)}
.monitor-designer-page .designer-room-card,
.monitor-designer-page .designer-card-layer,
.monitor-designer-page .designer-free-object{
  touch-action:none;
}
body:not(.monitor-designer-page) .resize-handle{
  display:none!important;
}
body:not(.monitor-designer-page) .designer-room-card,
body:not(.monitor-designer-page) .designer-card-layer,
body:not(.monitor-designer-page) .designer-free-object{
  cursor:default!important;
  touch-action:auto!important;
  user-select:auto!important;
}
.monitor-client-page .monitor-client-designer-canvas{transform-origin:center!important;box-shadow:0 0 70px rgba(55,199,255,.20)}
.monitor-client-page #monitorPreview:not(.is-monitor-ready){visibility:hidden}
.monitor-client-page .monitor-client-designer-canvas .designer-room-card{cursor:default!important}
body.monitor-performance .monitor-client-page,
body.monitor-performance .monitor-client-page *{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
body.monitor-performance .monitor-client-page .monitor-client-designer-canvas{
  box-shadow:0 0 28px rgba(55,199,255,.14)!important;
}
body.monitor-performance .monitor-client-page .designer-room-card{
  box-shadow:0 0 18px rgba(34,197,94,.30),0 0 42px rgba(34,197,94,.14),0 16px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
body.monitor-performance .monitor-client-page .designer-room-card.soon{
  box-shadow:0 0 18px rgba(245,158,11,.30),0 0 42px rgba(245,158,11,.14),0 16px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
body.monitor-performance .monitor-client-page .designer-room-card.busy{
  box-shadow:0 0 18px rgba(255,59,102,.30),0 0 42px rgba(255,59,102,.14),0 16px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
body.monitor-performance .monitor-client-page .designer-room-card.maintenance{
  box-shadow:0 0 18px rgba(47,155,255,.30),0 0 42px rgba(47,155,255,.14),0 16px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
body.monitor-performance .monitor-client-page .designer-card-status,
body.monitor-performance .monitor-client-page .designer-card-title,
body.monitor-performance .monitor-client-page .designer-card-date,
body.monitor-performance .monitor-client-page .designer-card-event,
body.monitor-performance .monitor-client-page .designer-card-countdown,
body.monitor-performance .monitor-client-page .designer-card-org,
body.monitor-performance .monitor-client-page .designer-card-bookings{
  box-shadow:0 0 12px rgba(34,197,94,.12)!important;
  background:rgba(4,9,22,.72)!important;
}
body.monitor-performance .monitor-client-page .designer-card-bookings button,
body.monitor-performance .monitor-client-page .designer-card-actions button:last-child{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16)!important;
}
body.monitor-performance-light .monitor-client-page,
body.monitor-performance-light .monitor-client-page *{
  transition:none!important;
  animation:none!important;
}
body.monitor-performance-light .monitor-client-page .designer-room-card,
body.monitor-performance-light .monitor-client-page .monitor-client-designer-canvas{
  box-shadow:0 0 14px rgba(55,199,255,.14),0 12px 30px rgba(0,0,0,.26)!important;
}
body.monitor-performance-light .monitor-client-page .designer-card-status,
body.monitor-performance-light .monitor-client-page .designer-card-title,
body.monitor-performance-light .monitor-client-page .designer-card-date,
body.monitor-performance-light .monitor-client-page .designer-card-event,
body.monitor-performance-light .monitor-client-page .designer-card-countdown,
body.monitor-performance-light .monitor-client-page .designer-card-org,
body.monitor-performance-light .monitor-client-page .designer-card-bookings{
  box-shadow:none!important;
}
body.dashboard-monitor-preview{
  overflow:hidden!important;
}
body.dashboard-monitor-preview .monitor-client-page{
  padding:6px!important;
  min-height:100vh;
}
body.dashboard-monitor-preview .monitor-client-designer-canvas{
  box-shadow:0 0 46px rgba(55,199,255,.18)!important;
}
body.monitor-offline .client-controls{display:none!important}
.monitor-device-offline{width:min(920px,calc(100vw - 56px));min-height:360px;border-radius:34px;display:grid;place-items:center;text-align:center;padding:42px;border:1px solid rgba(55,199,255,.28);background:linear-gradient(135deg,rgba(8,19,39,.94),rgba(34,20,61,.94));box-shadow:0 0 70px rgba(55,199,255,.16),0 24px 70px rgba(0,0,0,.38)}
.offline-monitor-card span{display:inline-flex;padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font-weight:1000;color:#9bdcff}
.offline-monitor-card h1{margin:22px 0 10px;font-size:clamp(34px,5vw,68px);line-height:1}
.offline-monitor-card p{margin:0 auto;max-width:620px;color:#cbd5ee;font-size:18px}
.calendar-test-panel{margin-top:18px}
.calendar-test-layout{display:grid;grid-template-columns:minmax(420px,1fr) minmax(420px,.95fr);gap:16px;align-items:start}
.calendar-test-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.calendar-test-actions{display:grid;grid-template-columns:minmax(320px,1fr) auto minmax(170px,.35fr);gap:14px;align-items:center;margin-top:14px}
.calendar-test-buttons{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.calendar-test-durations{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;color:var(--muted)}
.calendar-test-durations label{display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.055);font-weight:900;color:#fff}
.calendar-test-companies{margin-top:14px;padding:12px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.035)}
.calendar-test-company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
.calendar-test-company-grid label{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.045);font-weight:900;overflow:hidden}
.calendar-test-company-grid input{flex:0 0 auto}
.company-swatch{width:18px;height:18px;border-radius:6px;box-shadow:0 0 14px color-mix(in srgb,currentColor 30%,transparent)}
.compact-fields{margin-top:10px;max-width:260px}
.test-mode-toggle.compact{padding:8px 12px}
.test-mode-toggle{display:inline-flex;align-items:center;gap:8px;margin:0;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font-weight:1000;color:#fff}
.calendar-test-rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:220px;overflow:auto;padding:10px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.035)}
.calendar-test-rooms label{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.045);font-weight:900}
.test-lab-metrics .metric strong{font-size:38px}.test-lab-panel{padding:28px}.test-lab-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;align-items:start}.test-lab-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:250px;overflow:auto;padding:12px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.035)}.test-lab-check-grid.companies{grid-template-columns:repeat(2,minmax(0,1fr))}.test-lab-check-grid label{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;min-height:48px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.052);font-weight:900;overflow:hidden}.test-lab-check-grid label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.test-lab-check-grid label small{color:var(--muted);font-size:11px;font-weight:900}.test-lab-check-grid label.is-disabled{opacity:.42}.test-lab-fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:18px}.test-lab-options{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:16px}.inline-check{display:inline-flex;gap:8px;align-items:center;margin:0;color:#fff;font-weight:900}.inline-check input,.calendar-test-durations input{width:auto}.test-lab-run{margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.10)}.test-lab-log-body{min-height:120px}.test-lab-log-title{font-weight:1000;margin-bottom:12px}.test-lab-log-list{display:grid;gap:8px;max-height:360px;overflow:auto;padding-right:8px}.test-lab-log-row{display:grid;grid-template-columns:190px 1fr;gap:12px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08)}.test-lab-log-row span{color:var(--muted);font-weight:800}.btn.is-loading{opacity:.72;cursor:wait}
.event-pill{background:var(--event-bg-solid,var(--event-color,#ec4899))!important;background:var(--event-bg,linear-gradient(135deg,rgba(236,72,153,.86),rgba(139,92,246,.72)))!important;border-color:var(--event-color,#ec4899)!important;box-shadow:0 0 18px rgba(236,72,153,.24),inset 0 1px 0 rgba(255,255,255,.18)!important;border-color:color-mix(in srgb,var(--event-color,#ec4899) 78%,white 14%)!important;box-shadow:0 0 18px color-mix(in srgb,var(--event-color,#ec4899) 34%,transparent),inset 0 1px 0 rgba(255,255,255,.18)!important;color:#fff}
.event-pill span{color:#fff!important}
.booking-event{background:var(--event-bg-solid,var(--event-color,#ec4899))!important;background:var(--event-bg,linear-gradient(135deg,rgba(236,72,153,.86),rgba(139,92,246,.72)))!important;border-color:var(--event-color,#ec4899)!important;box-shadow:0 0 24px rgba(236,72,153,.26),0 12px 28px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.20)!important;border-color:color-mix(in srgb,var(--event-color,#ec4899) 78%,white 14%)!important;box-shadow:0 0 24px color-mix(in srgb,var(--event-color,#ec4899) 42%,transparent),0 12px 28px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.20)!important;color:#fff}
.timeline-room.room-closed{background:rgba(255,255,255,.018);cursor:not-allowed}
.timeline-room.room-closed .slot-label{color:rgba(220,230,255,.32)}
.screen-orientation-tabs,.preview-status-buttons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.screen-orientation-tabs .btn,.preview-status-buttons button{border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;padding:9px 14px;font-weight:1000;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);cursor:pointer}
.screen-orientation-tabs .btn.active{background:linear-gradient(135deg,rgba(55,199,255,.28),rgba(139,92,246,.36));border-color:rgba(139,92,246,.48)}
.preview-status-buttons button[data-single-state=free]{--status-button-color:#22c55e}
.preview-status-buttons button[data-single-state=soon]{--status-button-color:#f59e0b}
.preview-status-buttons button[data-single-state=busy]{--status-button-color:#ff3b66}
.preview-status-buttons button[data-single-state=maintenance]{--status-button-color:#2f9bff}
.preview-status-buttons button[data-preview-state=free]{--status-button-color:#22c55e}
.preview-status-buttons button[data-preview-state=soon]{--status-button-color:#f59e0b}
.preview-status-buttons button[data-preview-state=busy]{--status-button-color:#ff3b66}
.preview-status-buttons button[data-preview-state=maintenance]{--status-button-color:#2f9bff}
.preview-status-buttons button[data-preview-follow]{--status-button-color:#8b5cf6}
.designer-status-grid button[data-card-follow]{--status-button-color:#8b5cf6}
.preview-status-buttons button{border-color:color-mix(in srgb,var(--status-button-color,#8b5cf6) 44%,white 12%);background:linear-gradient(135deg,color-mix(in srgb,var(--status-button-color,#8b5cf6) 18%,#050816 82%),rgba(255,255,255,.06))}
.preview-status-buttons button.active{background:linear-gradient(135deg,color-mix(in srgb,var(--status-button-color,#8b5cf6) 70%,#050816 30%),color-mix(in srgb,var(--status-button-color,#8b5cf6) 36%,#8b5cf6 64%));box-shadow:0 0 24px color-mix(in srgb,var(--status-button-color,#8b5cf6) 42%,transparent)}
.preview-title-block{min-width:190px;max-width:260px}
.preview-title-block h2{margin:0;font-size:24px;line-height:1.05;white-space:nowrap}
.preview-title-block p{margin:6px 0 0;line-height:1.25;font-size:14px;max-width:240px}
.designer-preview .preview-header{align-items:center;gap:18px;margin-bottom:14px}
.preview-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;min-width:0;flex:1}
.preview-tools .screen-orientation-tabs,.preview-tools .preview-status-buttons{flex-wrap:nowrap;gap:8px}
.preview-tools .screen-orientation-tabs .btn,.preview-tools .preview-status-buttons button{white-space:nowrap;padding:9px 13px;min-width:0;font-size:13px;line-height:1.1}
.soon-threshold-control{display:inline-flex;align-items:center;gap:7px;min-width:auto;padding:6px 9px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#cbd5ee;font-size:11px;font-weight:900;white-space:nowrap}
.soon-threshold-control input{width:48px;min-height:26px;padding:3px 6px;border-radius:9px;text-align:center;font-size:12px;font-weight:1000}
.layout-save-inline{display:flex;flex-direction:column;justify-content:flex-end}
.layout-save-inline .btn{white-space:nowrap;min-height:48px}
@media(max-width:1500px){.preview-tools{flex-wrap:wrap;justify-content:flex-start}.preview-title-block{max-width:none}}
@media(max-width:1200px){.calendar-test-layout,.calendar-test-actions,.test-lab-layout{grid-template-columns:1fr}.calendar-test-fields,.test-lab-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-test-rooms,.calendar-test-company-grid,.test-lab-check-grid,.test-lab-check-grid.companies{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-test-buttons{justify-content:flex-start}}

.btn,
button,
.select-card,
.mini-link,
.logout-btn,
.event-pill,
.booking-event,
.designer-room-pick,
.monitor-action,
.designer-card-bookings button{
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease,border-color .14s ease;
}
.is-pressing{
  transform:scale(.975);
  filter:brightness(1.16) saturate(1.12);
}
.btn.is-pressing,
button.is-pressing,
.select-card.is-pressing,
.event-pill.is-pressing,
.booking-event.is-pressing,
.designer-card-bookings button.is-pressing{
  box-shadow:0 0 0 3px rgba(255,255,255,.12),0 0 28px color-mix(in srgb,var(--event-color,var(--status-button-color,var(--cyan))) 44%,transparent);
}
.designer-card-bookings button.is-pressing,
.event-pill.is-pressing,
.booking-event.is-pressing{
  border-color:rgba(255,255,255,.62);
}

.test-lab-page .topbar{align-items:flex-start}.test-lab-simulation-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start}.test-lab-run-indicator{display:inline-flex;align-items:center;gap:10px;min-height:38px;padding:9px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);font-weight:1000;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.test-lab-run-indicator span{width:12px;height:12px;border-radius:999px;background:#ef4444;box-shadow:0 0 18px rgba(239,68,68,.72)}.test-lab-run-indicator.is-running{border-color:rgba(34,197,94,.48);background:rgba(34,197,94,.12);color:#bbf7d0}.test-lab-run-indicator.is-running span{background:#22c55e;box-shadow:0 0 22px rgba(34,197,94,.86)}.test-lab-run-indicator.is-stopped{border-color:rgba(239,68,68,.42);color:#fecaca}.test-lab-console{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:8px 0 18px}.test-lab-status-card{min-height:104px;padding:18px 20px;border-radius:22px;border:1px solid rgba(75,196,255,.22);background:linear-gradient(135deg,rgba(12,40,68,.74),rgba(72,28,76,.54));box-shadow:0 18px 46px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.08)}.test-lab-status-card span{display:block;color:var(--muted);font-weight:900;margin-bottom:12px}.test-lab-status-card strong{display:block;font-size:34px;line-height:1.05;color:#fff}.test-lab-status-card.live strong{font-size:20px;line-height:1.3}.test-lab-status-card.live strong.is-live{color:#67e8f9;text-shadow:0 0 18px rgba(103,232,249,.35)}.test-lab-grid{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}.test-lab-grid .neo-card,.test-lab-log{border-color:rgba(75,196,255,.20);box-shadow:0 22px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.07)}.test-lab-panel.scenario{padding:24px}.test-lab-simulation{padding:24px;position:static}.test-lab-layout{grid-template-columns:minmax(320px,.8fr) minmax(460px,1.2fr);gap:16px}.test-lab-check-grid{max-height:210px;scrollbar-color:#45c7ff rgba(255,255,255,.08);scrollbar-width:thin}.test-lab-check-grid.rooms{grid-template-columns:repeat(2,minmax(0,1fr))}.test-lab-check-grid.companies{grid-template-columns:repeat(3,minmax(0,1fr))}.test-lab-check-grid label{min-height:42px}.scenario-fields{grid-template-columns:repeat(6,minmax(110px,1fr))}.simulation-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.pill-check{padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.06)}.test-lab-options{padding:14px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.035)}.calendar-test-durations.compact{align-items:stretch}.calendar-test-durations.compact label,.calendar-test-durations label{min-height:36px}.test-lab-run{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.test-lab-log{margin-top:18px;padding:22px}.test-lab-log-list{max-height:430px}.test-lab-log-row{grid-template-columns:175px 1fr;background:linear-gradient(135deg,rgba(47,155,255,.10),rgba(236,72,153,.07));border-color:rgba(75,196,255,.14)}.test-lab-log-row:first-child{border-color:rgba(103,232,249,.36);box-shadow:0 0 22px rgba(75,196,255,.16)}
.test-lab-console{grid-template-columns:repeat(5,minmax(0,1fr))}
.mail-provider-panel{margin:18px 0;padding:18px;border:1px solid color-mix(in srgb,var(--primary) 28%,transparent);border-radius:18px;background:color-mix(in srgb,var(--panel) 82%,transparent)}.mail-provider-panel[hidden]{display:none}.mail-provider-panel h3{margin:0 0 12px}:root[data-appearance-mode=light] .mail-provider-panel{color:var(--light-ink);background:rgba(255,255,255,.62);border-color:rgba(28,38,64,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}
@media(max-width:1300px){.test-lab-layout{grid-template-columns:1fr}.test-lab-console{grid-template-columns:repeat(2,minmax(0,1fr))}.scenario-fields,.simulation-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.test-lab-check-grid.companies{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.test-lab-config-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.test-lab-config-section:nth-child(4),.test-lab-config-section:nth-child(5){grid-column:span 2}}
@media(max-width:700px){.test-lab-config-grid,.test-lab-config-section.compact,.test-lab-config-section .compact-fields{grid-template-columns:1fr}.test-lab-config-section:nth-child(4),.test-lab-config-section:nth-child(5){grid-column:span 1}.test-lab-run{align-items:flex-start}.test-lab-run #testLabSimulationMsg{margin-left:0;text-align:left;width:100%}}

.test-lab-log-head{gap:14px}
.test-lab-log-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.test-lab-auto-refresh{cursor:pointer;color:#fff}
.test-lab-auto-refresh.is-active{border-color:rgba(34,197,94,.42);background:rgba(34,197,94,.14);box-shadow:0 0 18px rgba(34,197,94,.12)}
.test-lab-auto-refresh.is-paused{border-color:rgba(255,59,102,.58);background:rgba(255,59,102,.22);box-shadow:0 0 18px rgba(255,59,102,.16)}
.test-lab-check-grid.rooms label{grid-template-columns:auto 1fr;align-items:center}
.test-lab-check-grid.rooms label span{grid-column:2;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.15}
.test-lab-check-grid.rooms label small{grid-column:2;display:block;margin-top:3px}
.test-lab-options.scenario-actions{display:flex;align-items:center;gap:12px;justify-content:flex-start}
.test-lab-options.scenario-actions .btn{margin-left:6px}
.test-lab-config-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:14px;margin-top:18px}
.test-lab-config-section{padding:14px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.035)}
.test-lab-config-section>span,.test-lab-config-section .calendar-test-durations>span{display:block;flex:0 0 100%;color:var(--muted);font-weight:1000;margin:0 0 10px}
.test-lab-config-section.compact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.test-lab-config-section .test-lab-fields{margin-top:0}
.test-lab-config-section .compact-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.test-lab-config-section .calendar-test-durations{margin-top:0;gap:10px}
.test-lab-config-section:nth-child(4),.test-lab-config-section:nth-child(5){grid-column:span 3}
.test-lab-scope-options label{min-width:0;white-space:nowrap}
.test-lab-run{justify-content:space-between}
.test-lab-run-buttons{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.test-lab-run #testLabSimulationMsg{margin-left:auto;text-align:right}
.dashboard-test-auth{margin-top:18px}
.activity-list.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}
.activity-item .bubble.green{background:rgba(33,208,122,.18);color:#8ff2b6}
.activity-item .bubble.blue{background:rgba(47,155,255,.18);color:#9bd2ff}
.activity-item .bubble.yellow{background:rgba(245,158,11,.18);color:#ffe08a}
.activity-item .bubble.orange{background:rgba(245,158,11,.20);color:#ffd08a}
.activity-item .bubble.danger{background:rgba(255,59,102,.18);color:#ff9ab0}

/* Complete light theme coverage for newer dashboard sections */
:root[data-appearance-mode=light]{
  --light-panel:rgba(255,255,255,.78);
  --light-panel-strong:rgba(255,255,255,.92);
  --light-panel-soft:rgba(248,250,255,.68);
  --light-field:rgba(255,255,255,.88);
  --light-ink:#101827;
  --light-muted:#536179;
  --light-shadow:0 18px 48px rgba(31,41,55,.12),inset 0 1px 0 rgba(255,255,255,.74);
}
:root[data-appearance-mode=light] .card,
:root[data-appearance-mode=light] .neo-card,
:root[data-appearance-mode=light] .form-panel,
:root[data-appearance-mode=light] .wide-panel,
:root[data-appearance-mode=light] .test-lab-panel,
:root[data-appearance-mode=light] .test-lab-log,
:root[data-appearance-mode=light] .test-lab-status-card,
:root[data-appearance-mode=light] .monitor-preview-panel,
:root[data-appearance-mode=light] .appearance-preview,
:root[data-appearance-mode=light] .calendar-test-panel{
  background:linear-gradient(135deg,var(--light-panel),var(--light-panel-soft));
  border-color:rgba(28,38,64,.14);
  color:var(--light-ink);
  box-shadow:var(--light-shadow);
}
:root[data-appearance-mode=light] .neo-card:before{
  background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--cyan) 15%,transparent),transparent 36%),radial-gradient(circle at 92% 0,color-mix(in srgb,var(--pink) 12%,transparent),transparent 38%);
}
:root[data-appearance-mode=light] input,
:root[data-appearance-mode=light] select,
:root[data-appearance-mode=light] textarea{
  background:var(--light-field);
  color:var(--light-ink);
  border-color:rgba(28,38,64,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.74);
}
:root[data-appearance-mode=light] input[type=range]{
  background:transparent;
  box-shadow:none;
  accent-color:var(--cyan);
}
:root[data-appearance-mode=light] .btn,
:root[data-appearance-mode=light] button,
:root[data-appearance-mode=light] .select-card,
:root[data-appearance-mode=light] .role-choice,
:root[data-appearance-mode=light] .mini-link,
:root[data-appearance-mode=light] .pill,
:root[data-appearance-mode=light] .soon-threshold-control,
:root[data-appearance-mode=light] .test-mode-toggle,
:root[data-appearance-mode=light] .pill-check{
  background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(241,245,255,.72));
  border-color:rgba(28,38,64,.16);
  color:var(--light-ink);
  box-shadow:0 10px 24px rgba(28,38,64,.08),inset 0 1px 0 rgba(255,255,255,.74);
}
:root[data-appearance-mode=light] .btn.primary,
:root[data-appearance-mode=light] button.primary,
:root[data-appearance-mode=light] .select-card.active,
:root[data-appearance-mode=light] .role-choice.active,
:root[data-appearance-mode=light] .screen-orientation-tabs .btn.active,
:root[data-appearance-mode=light] .view-mode-tabs .btn.active{
  color:#fff;
  background:linear-gradient(135deg,var(--cyan),var(--violet));
  border-color:transparent;
}
:root[data-appearance-mode=light] .muted,
:root[data-appearance-mode=light] label,
:root[data-appearance-mode=light] .preview-kpis small,
:root[data-appearance-mode=light] .preview-activity small,
:root[data-appearance-mode=light] .preview-executive span,
:root[data-appearance-mode=light] .test-lab-log-row span,
:root[data-appearance-mode=light] .participant-card span,
:root[data-appearance-mode=light] .monitor-foot{
  color:var(--light-muted);
}
:root[data-appearance-mode=light] .lux-table td,
:root[data-appearance-mode=light] .activity-item,
:root[data-appearance-mode=light] .action-tile,
:root[data-appearance-mode=light] .room-snapshot-item,
:root[data-appearance-mode=light] .dashboard-login-toggle button,
:root[data-appearance-mode=light] .preview-kpis div,
:root[data-appearance-mode=light] .preview-activity,
:root[data-appearance-mode=light] .preview-executive,
:root[data-appearance-mode=light] .test-lab-check-grid,
:root[data-appearance-mode=light] .test-lab-check-grid label,
:root[data-appearance-mode=light] .calendar-test-rooms,
:root[data-appearance-mode=light] .calendar-test-rooms label,
:root[data-appearance-mode=light] .test-lab-options,
:root[data-appearance-mode=light] .test-lab-log-row,
:root[data-appearance-mode=light] .participant-card,
:root[data-appearance-mode=light] .participant-tools input,
:root[data-appearance-mode=light] .participant-tools select,
:root[data-appearance-mode=light] .participant-filter-select{
  background:rgba(255,255,255,.62);
  border-color:rgba(28,38,64,.13);
  color:var(--light-ink);
}
:root[data-appearance-mode=light] .login-preview-card{
  border-color:rgba(28,38,64,.14);
  background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(242,247,255,.68)),radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--cyan) 22%,transparent),transparent 34%);
  color:var(--light-ink);
  box-shadow:0 14px 36px rgba(31,41,55,.10),inset 0 1px 0 rgba(255,255,255,.72);
}
:root[data-appearance-mode=light] .screen-orientation-tabs .btn,
:root[data-appearance-mode=light] .preview-status-buttons button{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.16);
  background:linear-gradient(135deg,color-mix(in srgb,var(--status-button-color,#8b5cf6) 12%,white 88%),rgba(255,255,255,.78));
}
:root[data-appearance-mode=light] .preview-status-buttons button.active{
  color:#fff;
  background:linear-gradient(135deg,color-mix(in srgb,var(--status-button-color,#8b5cf6) 74%,#ffffff 26%),color-mix(in srgb,var(--status-button-color,#8b5cf6) 48%,var(--violet) 52%));
}
:root[data-appearance-mode=light] .inline-check,
:root[data-appearance-mode=light] .test-mode-toggle,
:root[data-appearance-mode=light] .permissions-grid label{
  color:var(--light-ink);
}
:root[data-appearance-mode=light] .logout-btn{
  color:#b91c1c;
  background:rgba(254,226,226,.78);
  border-color:rgba(239,68,68,.25);
}
:root[data-appearance-mode=light] .table th,
:root[data-appearance-mode=light] .lux-table th{
  color:#64748b;
}

.logs-page .topbar{align-items:flex-start}.logs-panel,.logs-table-card{padding:22px}.logs-section-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.logs-section-tabs button,.logs-summary-card{min-height:38px;padding:9px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055);color:#fff;font-weight:1000;cursor:pointer}.logs-section-tabs button.active,.logs-summary-card.active{border-color:rgba(75,196,255,.7);background:linear-gradient(135deg,rgba(47,155,255,.24),rgba(139,92,246,.24));box-shadow:0 0 22px rgba(75,196,255,.16)}.logs-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.logs-filter-grid label{margin:0}.logs-actions{display:flex;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}.logs-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:18px 0}.logs-summary-card{display:flex;align-items:center;justify-content:space-between;text-align:left;border-radius:16px;padding:14px 16px}.logs-summary-card b{font-size:24px}.logs-table-card{margin-top:18px}.logs-table-wrap{overflow:auto;max-height:620px;padding-right:4px}.logs-table{min-width:1080px}.logs-table td{vertical-align:top}.logs-table small{font-size:12px}@media(max-width:1500px){.logs-filter-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1300px){.logs-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.logs-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.logs-filter-grid,.logs-summary{grid-template-columns:1fr}}
.dashboard-test-auth{max-height:min(1200px,180vh);display:flex;flex-direction:column;overflow:hidden}
.dashboard-test-auth #dashboardTestAuthHistory{overflow:auto;align-content:start;padding-right:8px;scrollbar-color:var(--violet) rgba(255,255,255,.08);scrollbar-width:thin;max-height:min(760px,95vh)}
.dashboard-test-auth #dashboardTestAuthHistory::-webkit-scrollbar{width:8px}
.dashboard-test-auth #dashboardTestAuthHistory::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:99px}
.dashboard-test-auth #dashboardTestAuthHistory::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:99px}
.dashboard-activity-filters{display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(520px,.95fr);gap:14px;margin-top:16px;align-items:end;flex:0 0 auto}
.activity-filter-buttons{display:flex;gap:8px;flex-wrap:wrap}
.activity-filter-buttons button{border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.07);color:#fff;padding:9px 12px;font-weight:1000;cursor:pointer}
.activity-filter-buttons button.active{border-color:rgba(55,199,255,.62);background:linear-gradient(135deg,rgba(55,199,255,.24),rgba(139,92,246,.28));box-shadow:0 0 18px rgba(55,199,255,.16)}
.dashboard-activity-search{display:grid;grid-template-columns:1fr 1fr 170px 170px auto;gap:12px;align-items:end}
.dashboard-activity-search label{margin-top:0}
.dashboard-activity-search .btn{min-height:47px;white-space:nowrap}
.booking-activity-filters{display:grid;grid-template-columns:180px 260px minmax(220px,1fr);gap:14px;margin:16px 0}
.booking-activity-list{display:grid;gap:10px;min-height:420px;max-height:520px;overflow:auto;padding-right:8px;scrollbar-color:var(--violet) rgba(255,255,255,.08);scrollbar-width:thin}
.booking-activity-row{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;text-align:left;padding:13px 15px;border-radius:16px;border:1px solid color-mix(in srgb,var(--event-color,#2f9bff) 52%,rgba(255,255,255,.12));background:linear-gradient(135deg,color-mix(in srgb,var(--event-color,#2f9bff) 24%,rgba(15,23,42,.86)),rgba(255,255,255,.045));color:#fff;box-shadow:0 0 20px color-mix(in srgb,var(--event-color,#2f9bff) 18%,transparent);cursor:pointer}
.booking-activity-row b,.booking-activity-row small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-activity-row small{margin-top:4px;color:var(--muted);font-weight:800}
.booking-activity-detail{margin-top:16px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.045)}
.booking-activity-detail h3{margin:0 0 6px;font-size:21px}
.booking-activity-actions{justify-content:flex-end;margin-top:14px}
#myMeetingsList,#invitesList,#bookingActivityList{
  min-height:0;
  max-height:520px;
  align-content:start;
}
#myMeetingsList .booking-activity-row,#invitesList .booking-activity-row,#bookingActivityList .booking-activity-row{
  min-height:74px;
  grid-template-columns:minmax(0,1.1fr) minmax(180px,.8fr) auto;
  align-items:center;
}
#myMeetingsList .booking-activity-actions,#invitesList .booking-activity-actions,#bookingActivityList .booking-activity-actions{
  margin-top:0;
  flex-wrap:wrap;
  justify-content:flex-end;
}
#bookingActivityList .booking-activity-row{
  cursor:pointer;
  grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);
}
.booking-participant-stats{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}
.booking-participant-list{display:grid;gap:8px;max-height:220px;overflow:auto;padding-right:8px;scrollbar-color:var(--violet) rgba(255,255,255,.08);scrollbar-width:thin}
.booking-participant-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.04)}
.booking-participant-row.is-guest{border-color:rgba(250,204,21,.42);background:linear-gradient(135deg,rgba(250,204,21,.12),rgba(255,255,255,.04))}
.participant-card.is-guest{border-color:rgba(250,204,21,.45);background:linear-gradient(135deg,rgba(250,204,21,.13),rgba(255,255,255,.045))}
.guest-participant-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;padding:3px 8px;border-radius:8px;border:1px solid rgba(250,204,21,.62);background:rgba(250,204,21,.18);color:#fde68a;font-size:10px;font-weight:1000;line-height:1;vertical-align:middle;letter-spacing:0}
.booking-participant-row b,.booking-participant-row small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-participant-row small{color:var(--muted);margin-top:3px}
.booking-activity-modal.show{display:grid;place-items:center}
.booking-activity-modal-panel{width:min(1080px,92vw);max-height:86vh;display:flex;flex-direction:column;padding:0;overflow:hidden}
.booking-activity-modal-panel .booking-activity-detail{margin:0;padding:18px;overflow:auto}
.booking-activity-modal-panel .booking-participant-list{max-height:544px}
.booking-preview-head{align-items:flex-start;margin-bottom:14px}
.booking-preview-badges{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.booking-range-toggle{min-height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:var(--text);padding:7px 12px;font-weight:1000;font-size:12px;cursor:pointer}
.booking-range-toggle.active{border-color:rgba(55,199,255,.64);background:linear-gradient(135deg,rgba(55,199,255,.22),rgba(139,92,246,.24));box-shadow:0 0 22px rgba(55,199,255,.16)}
.booking-availability-status{display:inline-flex;align-items:center;min-height:34px;border-radius:999px;padding:7px 12px;font-weight:1000;font-size:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07)}
.booking-availability-status.ok{color:#b7f7ce;border-color:rgba(34,197,94,.42);background:rgba(34,197,94,.14)}
.booking-availability-status.warning{color:#fde68a;border-color:rgba(245,158,11,.42);background:rgba(245,158,11,.14)}
.booking-availability-status.danger{color:#fecdd3;border-color:rgba(244,63,94,.48);background:rgba(244,63,94,.16)}
.booking-room-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:10px;max-height:360px;overflow:auto;padding-right:8px;scrollbar-color:var(--violet) rgba(255,255,255,.08);scrollbar-width:thin}
.booking-slot{min-height:68px;border-radius:16px;border:1px solid rgba(255,255,255,.12);padding:11px 12px;text-align:left;color:var(--text);background:rgba(255,255,255,.045);display:flex;flex-direction:column;justify-content:center;gap:3px;overflow:hidden}
.booking-slot b,.booking-slot span,.booking-slot small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-slot b{font-size:13px}
.booking-slot span{font-weight:900;font-size:13px}
.booking-slot small{color:var(--muted);font-weight:800;font-size:11px}
.booking-slot-option{cursor:pointer}
.booking-slot-option:hover,.booking-slot-option.selected{border-color:rgba(55,199,255,.82);box-shadow:0 0 24px rgba(55,199,255,.18);background:linear-gradient(135deg,rgba(55,199,255,.16),rgba(139,92,246,.14))}
.booking-slot-option.selected{outline:2px solid rgba(55,199,255,.46);outline-offset:1px}
.booking-slot-option.in-range,.booking-slot-option.selected{border-color:rgba(56,189,248,.92);background:linear-gradient(135deg,rgba(56,189,248,.34),rgba(34,197,94,.24));box-shadow:0 0 28px rgba(56,189,248,.28),inset 0 0 0 1px rgba(255,255,255,.12)}
.booking-slot.busy{border-color:var(--event-color,#8b5cf6);background:var(--event-bg-solid,var(--event-color,#8b5cf6));background:var(--event-bg);box-shadow:0 0 24px rgba(139,92,246,.22);border-color:color-mix(in srgb,var(--event-color,#8b5cf6) 62%,rgba(255,255,255,.16));box-shadow:0 0 24px color-mix(in srgb,var(--event-color,#8b5cf6) 20%,transparent)}
.logs-monitor-card{margin-top:18px}
.logs-monitor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:14px}
.logs-monitor-item{border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.045);padding:13px 14px;display:grid;gap:8px}
.logs-monitor-item.online{border-color:rgba(34,197,94,.5);box-shadow:0 0 24px rgba(34,197,94,.12)}
.logs-monitor-item.denied{border-color:rgba(244,63,94,.5);box-shadow:0 0 24px rgba(244,63,94,.12)}
.logs-monitor-item b,.logs-monitor-item small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.logs-monitor-item small{color:var(--muted);font-weight:800}
.logs-monitor-meta{display:flex;gap:8px;flex-wrap:wrap}
.logs-monitor-meta span{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900;color:#dbe7ff;background:rgba(255,255,255,.055)}
.booking-participant-modal .modal-panel{width:min(760px,92vw);max-height:86vh}
.booking-directory-tools{padding:18px 24px 0;display:grid;grid-template-columns:minmax(180px,260px) minmax(220px,1fr);gap:12px}
.booking-directory-list{display:grid;gap:10px;padding:18px 24px 24px;overflow:auto;max-height:58vh;scrollbar-color:var(--violet) rgba(255,255,255,.08);scrollbar-width:thin}
.booking-directory-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;text-align:left;width:100%;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(255,255,255,.055);color:var(--text);padding:13px 15px;cursor:pointer}
.booking-directory-item:hover{border-color:rgba(55,199,255,.7);box-shadow:0 0 22px rgba(55,199,255,.12)}
.booking-directory-item b,.booking-directory-item small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-directory-item small{color:var(--muted);margin-top:4px}
.booking-directory-person{display:grid;min-width:0;gap:3px}
.booking-directory-name-row{display:flex;align-items:center;gap:8px;min-width:0}
.booking-directory-name-row b{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-directory-name-row i{font-style:normal;font-size:11px;font-weight:900;color:#a7f3d0;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.25);border-radius:999px;padding:3px 7px;white-space:nowrap;flex:0 1 auto;max-width:42%;overflow:hidden;text-overflow:ellipsis}
.booking-directory-item .email-hidden b{font-size:16px;line-height:1.25}
.booking-directory-item em{font-style:normal;color:#c7d2fe;font-weight:900;font-size:12px}
.booking-directory-company{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.booking-directory-company img{width:28px;height:28px;border-radius:9px;object-fit:contain;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);flex:0 0 auto}
.booking-directory-logo{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--directory-avatar-color,#38bdf8) 42%,rgba(255,255,255,.10)),rgba(139,92,246,.18));border:1px solid color-mix(in srgb,var(--directory-avatar-color,#38bdf8) 54%,rgba(255,255,255,.14));box-shadow:0 0 18px color-mix(in srgb,var(--directory-avatar-color,#38bdf8) 24%,transparent);display:grid;place-items:center;color:#dbeafe;font-size:12px;font-style:normal;font-weight:900;overflow:hidden}
img.booking-directory-logo{display:block;box-sizing:border-box}
img.booking-directory-logo.photo{object-fit:cover;padding:0}
img.booking-directory-logo.company-logo{object-fit:contain;padding:5px}
.booking-directory-empty{padding:8px 2px}
.booking-external-panel{width:min(560px,92vw)}
.booking-external-form{padding:22px 24px 26px;display:grid;gap:10px}
.booking-external-form .btn{margin-top:10px}
.test-lab-run-options{margin-top:14px}
.event-pill{overflow:hidden}
.event-pill-title{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-event{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:30px;line-height:1.08}
.booking-event-title{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-event small{margin-top:2px;line-height:1.08}
.booking-event.compact{font-size:12px;padding:5px 9px;gap:1px}
.booking-event.compact .booking-event-title{font-size:12px}
.booking-event.compact small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.modal-panel{width:min(1500px,96vw);max-height:92vh}
.modal-head{gap:18px}
.timeline-controls{display:grid;grid-template-columns:150px 150px;gap:12px;align-items:end;margin-left:auto}
.timeline-controls label{margin:0;color:var(--muted);font-size:12px;font-weight:900}
.timeline-controls input{height:26px;padding:0}
.calendar-inline-toolbar{display:flex;justify-content:flex-end;gap:12px;margin:0 0 12px}
.calendar-inline-toolbar .timeline-controls{margin-left:0}
.timeline-room-filters{display:flex;gap:10px;flex-wrap:wrap;padding:14px 24px 0}
.timeline-room-filters button{min-height:38px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:var(--text);font-weight:900;padding:0 14px;cursor:pointer}
.timeline-room-filters button.active{background:linear-gradient(135deg,var(--cyan),var(--violet));border-color:transparent;box-shadow:0 0 20px rgba(139,92,246,.28)}
.timeline-modal-panel{position:fixed!important;max-height:none!important;max-width:none!important;margin:0!important;resize:none}
.timeline-modal-drag{cursor:move;user-select:none}
.timeline-modal-resize{position:absolute;right:8px;bottom:8px;width:22px;height:22px;border-right:3px solid var(--cyan);border-bottom:3px solid var(--violet);border-radius:3px;cursor:nwse-resize;z-index:12;opacity:.9}
.schedule-wrap{max-height:76vh;margin:18px 12px 8px 24px}
.timeline-modal-panel .schedule-wrap{flex:1 1 auto;max-height:none;min-height:0}
.timeline-board{--timeline-room-width:360px;grid-template-columns:96px repeat(5,var(--timeline-room-width));min-width:max-content}
.timeline-cell{min-height:var(--timeline-row-height,88px)}
.calendar-fit-page #calendarDays.calendar-day-view,
.calendar-fit-page #userCalendarDays.calendar-day-view{height:100%;min-height:0}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-day,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-day{height:100%;min-height:0}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-schedule,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-schedule{flex:1 1 0;height:auto;min-height:0;max-height:100%;margin:0;padding:0 12px 18px 0;display:block;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--violet) rgba(255,255,255,.06)}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-board,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-board{height:auto;min-height:max(100%,var(--timeline-content-height,100%));align-content:start}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-schedule::-webkit-scrollbar,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-schedule::-webkit-scrollbar{width:10px;height:10px}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-schedule::-webkit-scrollbar-track,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-schedule::-webkit-scrollbar-track{background:rgba(255,255,255,.06);border-radius:999px}
.calendar-fit-page #calendarDays.calendar-day-view .calendar-inline-schedule::-webkit-scrollbar-thumb,
.calendar-fit-page #userCalendarDays.calendar-day-view .calendar-inline-schedule::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--cyan),var(--violet));border-radius:999px}
.timeline-time{font-size:calc(14px * var(--timeline-text-scale,1.1))}
.timeline-room .slot-label{font-size:calc(12px * var(--timeline-text-scale,1.1))}
.booking-event{left:8px;right:8px;padding:8px 10px;line-height:1.16;font-size:calc(13px * var(--timeline-text-scale,1.1))}
.booking-event-title{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.12}
.booking-event small{font-size:calc(10.5px * var(--timeline-text-scale,1.1));white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.booking-event.compact{font-size:calc(12px * var(--timeline-text-scale,1.1));padding:6px 8px}
.booking-event.compact small{font-size:calc(9.5px * var(--timeline-text-scale,1.1));white-space:normal}
@media(max-width:900px){.modal-panel{width:96vw}.modal-head{align-items:flex-start;flex-wrap:wrap}.timeline-controls{width:100%;grid-template-columns:1fr 1fr;margin-left:0}.timeline-board{min-width:1180px}.timeline-room-filters{padding:12px 16px 0}.timeline-modal-panel{left:2vw!important;top:2vh!important;width:96vw!important;height:92vh!important}}
.system-db-page .system-backup-panel{padding:24px}.system-db-metrics .metric strong{font-size:30px}.system-backup-table{display:grid;gap:10px;margin-top:18px}.backup-row{display:grid;grid-template-columns:1fr 120px 140px auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.045)}.backup-row b,.backup-row small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-row small{color:var(--muted);font-weight:800;margin-top:3px}.backup-row .pill{text-transform:capitalize}.backup-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.backup-empty{padding:18px;border:1px dashed rgba(255,255,255,.18);border-radius:16px;color:var(--muted);font-weight:900}
.system-backup-table.is-scrollable{max-height:790px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:6px}
.software-update-panel{display:grid;gap:20px}.software-update-heading{align-items:flex-start}.software-update-panel .split-form>div.wide{grid-column:span 2}.software-update-current{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.software-update-current>div{padding:15px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(5,13,33,.55)}.software-update-current small,.software-update-current strong{display:block}.software-update-current small{color:var(--muted);font-weight:800;margin-bottom:6px}.software-update-current strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.software-update-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.software-update-result{padding:18px;border:1px solid rgba(56,189,248,.35);border-radius:18px;background:rgba(14,116,144,.13)}.software-update-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.software-update-result-grid>div{padding:12px;border-radius:14px;background:rgba(255,255,255,.055)}.software-update-result-grid small,.software-update-result-grid b{display:block}.software-update-result-grid small{color:var(--muted);margin-bottom:4px}.software-update-safety{display:grid;gap:5px;padding:16px 18px;border:1px solid rgba(52,211,153,.30);border-radius:17px;background:rgba(16,185,129,.10)}.software-update-safety span{color:var(--muted);line-height:1.5}.software-update-history-title{align-items:flex-end;margin-top:4px}.software-update-history{display:grid;gap:10px;padding-right:5px}.software-update-history.is-scrollable{max-height:430px;overflow-y:auto;overscroll-behavior:contain}.software-update-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(220px,1.5fr) minmax(150px,1fr) auto;gap:14px;align-items:center;min-height:76px;padding:14px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.045)}.software-update-row>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.software-update-row b,.software-update-row small{display:block}.software-update-row small{color:var(--muted);margin-top:4px}.software-update-row code{color:#67e8f9;font-size:12px}.inline-check{display:flex!important;align-items:center;gap:8px;margin-top:8px}.inline-check input{width:auto!important}.software-update-empty{padding:18px;border:1px dashed rgba(255,255,255,.18);border-radius:16px;color:var(--muted)}
.software-update-box{display:grid;gap:18px;padding:20px;border:1px solid rgba(124,142,255,.22);border-radius:20px;background:linear-gradient(135deg,rgba(7,18,42,.58),rgba(38,18,58,.50));box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}.software-update-box-heading h3{margin:0 0 5px}.software-update-box-heading p{margin:0}.git-rollback-box{border-color:rgba(244,114,182,.24)}.git-rollback-controls{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:end}.git-rollback-controls .btn{min-height:48px}.git-rollback-details{min-height:54px;padding:14px 16px;border:1px solid rgba(255,255,255,.10);border-radius:15px;background:rgba(5,13,33,.52);color:var(--muted);line-height:1.5}.git-rollback-details b{color:#fff}.git-rollback-details code{color:#67e8f9}
@media(max-width:900px){.software-update-current,.software-update-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.software-update-row,.git-rollback-controls{grid-template-columns:1fr}.software-update-row .btn{justify-self:start}.software-update-row>div:last-child{justify-content:flex-start}}
@media(max-width:560px){.software-update-panel .split-form>div.wide{grid-column:span 1}.software-update-current,.software-update-result-grid{grid-template-columns:1fr}}
:root[data-appearance-mode=light] .backup-row{background:rgba(255,255,255,.64);border-color:rgba(28,38,64,.12);color:var(--light-ink)}:root[data-appearance-mode=light] .backup-empty{border-color:rgba(28,38,64,.18);color:var(--light-muted)}
@media(max-width:900px){.backup-row{grid-template-columns:1fr}.system-db-metrics{grid-template-columns:1fr!important}}
.register-screen{align-items:start;padding:20px}.register-shell{width:min(1180px,96vw);padding:28px}.register-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.register-layout{--register-privacy-offset:137px;--register-privacy-bottom-gap:85px;display:grid;grid-template-columns:minmax(360px,.82fr) minmax(420px,1fr);gap:26px;align-items:stretch}.register-form h1{margin-top:4px}.register-company-logo{width:112px;height:112px;border-radius:27px;display:grid;place-items:center;flex:0 0 auto;overflow:hidden;background:linear-gradient(135deg,var(--company-preview-color,var(--cyan)),var(--violet),var(--pink));border:1px solid rgba(255,255,255,.16);box-shadow:0 0 34px color-mix(in srgb,var(--company-preview-color,var(--cyan)) 38%,transparent);font-size:25px;font-weight:1000;color:#fff}.register-company-logo[hidden]{display:none}.register-company-logo img{width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.28))}.register-privacy-panel{position:sticky;top:18px;margin-top:var(--register-privacy-offset);height:calc(100% - var(--register-privacy-offset) - var(--register-privacy-bottom-gap));min-height:0;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.05);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.register-privacy-head{display:flex;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.10);flex:0 0 auto}.register-privacy-head b{font-size:18px}.register-privacy-head span{color:var(--muted);font-size:12px;font-weight:900}.register-privacy-scroll{flex:1 1 auto;min-height:0;max-height:none;overflow:auto;padding:20px;scrollbar-color:var(--violet) rgba(255,255,255,.08);scrollbar-width:thin}.register-privacy-scroll h2,.register-privacy-scroll h3{margin:0 0 10px}.register-privacy-scroll h3{margin-top:18px;font-size:17px}.register-privacy-scroll p{color:#d7dff8;line-height:1.55;margin:0 0 14px}.privacy-end{padding:12px 14px;border-radius:14px;background:rgba(33,208,122,.12);border:1px solid rgba(33,208,122,.25);font-weight:1000}.privacy-consent{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;margin:16px 0 4px;padding:13px 14px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.055);color:var(--text);font-size:13px;line-height:1.35}.privacy-consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--cyan)}.privacy-consent input:disabled{cursor:not-allowed;opacity:.42}.privacy-consent.is-locked{opacity:.72}.privacy-consent.is-ready{border-color:rgba(33,208,122,.45);background:rgba(33,208,122,.10)}.privacy-status{font-size:12px;margin:8px 0 0}.privacy-preview-mini{grid-column:span 2}.privacy-preview-card{min-height:180px;border-radius:20px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);padding:18px;display:grid;grid-template-rows:auto 1fr;gap:10px}.privacy-preview-card div{max-height:170px;overflow:auto;color:var(--muted);font-size:12px;line-height:1.45;white-space:pre-wrap;scrollbar-width:thin;scrollbar-color:var(--violet) rgba(255,255,255,.08)}
.register-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}.register-back-login{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 11px;border:1px solid rgba(255,255,255,.13);border-radius:11px;background:rgba(255,255,255,.035);color:var(--muted);font-size:13px;font-weight:900;line-height:1;text-decoration:none;white-space:nowrap;transition:.18s ease}.register-back-login span{font-size:16px;line-height:1}.register-back-login:hover{color:#fff;border-color:rgba(55,199,255,.45);background:rgba(55,199,255,.10);transform:translateX(-2px)}
.register-confirm-actions{grid-template-columns:1fr 1fr}
@media(max-width:560px){.register-confirm-actions{grid-template-columns:1fr}}
.password-field{position:relative;display:block}.password-field input{padding-right:96px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);height:34px;padding:0 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;font-weight:1000;cursor:pointer}.password-toggle:hover{border-color:rgba(55,199,255,.55)}.login-security-msg{position:relative;margin:14px 0 0;padding:14px 16px 14px 46px;border-radius:16px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#eef4ff;font-weight:1000;line-height:1.35;box-shadow:0 14px 34px rgba(0,0,0,.20)}.login-security-msg:before{content:"i";position:absolute;left:14px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#37c7ff;color:#071021;font-size:13px;font-weight:1000}.login-security-msg.is-info{border-color:rgba(55,199,255,.48);background:linear-gradient(135deg,rgba(55,199,255,.18),rgba(55,199,255,.07));box-shadow:0 0 26px rgba(55,199,255,.14)}.login-security-msg.is-warning{border-color:rgba(255,216,77,.58);background:linear-gradient(135deg,rgba(255,216,77,.24),rgba(255,216,77,.08));color:#fff6c7;box-shadow:0 0 26px rgba(255,216,77,.16)}.login-security-msg.is-warning:before{content:"!";background:#ffd84d;color:#251a00}.login-security-msg.is-danger{border-color:rgba(255,59,102,.70);background:linear-gradient(135deg,rgba(255,59,102,.26),rgba(255,59,102,.10));color:#ffe0e8;box-shadow:0 0 30px rgba(255,59,102,.20)}.login-security-msg.is-danger:before{content:"!";background:#ff3b66;color:#fff}.btn.is-disabled{pointer-events:none;opacity:.5}.register-confirm-modal{z-index:180}.register-confirm-panel{width:min(620px,92vw);padding:0;overflow:hidden}.register-confirm-body{padding:22px 26px}.register-confirm-body p{line-height:1.45}.register-confirm-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:18px}.register-confirm-actions .btn{width:100%}
.approval-pending-screen{background:radial-gradient(circle at 16% 12%,rgba(55,199,255,.18),transparent 34%),radial-gradient(circle at 90% 18%,rgba(236,72,153,.18),transparent 34%),#080816}.approval-pending-card{width:min(720px,94vw);padding:36px;text-align:left;overflow:hidden}.approval-pending-card h1{font-size:clamp(34px,5vw,58px);line-height:1.02}.approval-wait-visual{height:130px;margin:20px 0 10px;border-radius:28px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,rgba(47,155,255,.16),rgba(139,92,246,.16));display:flex;align-items:center;justify-content:center;gap:18px;box-shadow:inset 0 0 40px rgba(55,199,255,.08)}.approval-wait-visual span{width:18px;height:18px;border-radius:50%;background:#ffd84d;box-shadow:0 0 22px rgba(255,216,77,.65);animation:approvalWait 1.1s ease-in-out infinite}.approval-wait-visual span:nth-child(2){animation-delay:.16s;background:#37c7ff;box-shadow:0 0 22px rgba(55,199,255,.65)}.approval-wait-visual span:nth-child(3){animation-delay:.32s;background:#8b5cf6;box-shadow:0 0 22px rgba(139,92,246,.7)}.approval-pending-panel{margin:22px 0;padding:18px;border-radius:18px;border:1px solid rgba(255,216,77,.28);background:rgba(255,216,77,.08)}.approval-pending-panel p{margin:14px 0 8px;font-weight:1000;color:#fff}.approval-pending-panel small{display:block;color:#c6d1ec;line-height:1.45}@keyframes approvalWait{0%,100%{transform:translateY(0);opacity:.6}50%{transform:translateY(-16px);opacity:1}}
.account-approvals-grid{align-items:stretch}.account-event-invites-card,.account-status-card{grid-column:1/-1}.approval-list{display:grid;gap:12px;margin-top:18px;max-height:60vh;overflow:auto;padding-right:4px}.approval-list::-webkit-scrollbar{width:8px}.approval-list::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:99px}.approval-list::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--violet));border-radius:99px}.approval-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,rgba(20,42,72,.72),rgba(72,32,74,.55))}.approval-row b{display:block;color:#fff}.approval-row small{display:block;margin-top:4px;color:#c6d1ec}.approval-row-actions{display:flex;justify-content:flex-end;gap:8px}.event-invite-row .approval-row-actions{flex-wrap:wrap}.event-invite-list{max-height:38vh}.account-status-head{align-items:flex-start}.account-status-tools{display:flex;align-items:center;gap:10px}.account-status-tools select{width:auto;min-width:210px;padding:10px 14px}.account-status-list{max-height:42vh}.account-state-select{width:auto;min-width:125px;padding:9px 12px}.approval-row.is-rejected{border-color:rgba(255,59,102,.42);background:linear-gradient(135deg,rgba(45,20,44,.82),rgba(86,25,57,.62))}.approval-row.is-inactive{border-color:rgba(245,158,11,.34)}
@media(max-width:720px){.account-status-head{align-items:stretch;flex-direction:column}.account-status-tools{width:100%}.account-status-tools select{flex:1;min-width:0}.account-status-list .approval-row{grid-template-columns:auto 1fr}.account-status-list .approval-row-actions{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}}
.account-approvals-ready-hidden .account-approvals-grid{grid-template-columns:minmax(0,1fr)}
.rolebox-system-state{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:128px;margin:8px 0 10px;padding:8px 11px;border-radius:14px;border:1px solid rgba(33,208,122,.36);background:rgba(33,208,122,.12);color:#d7ffe9;font:1000 12px Inter,system-ui,Segoe UI,Arial,sans-serif;text-decoration:none}.rolebox-system-state.is-toggle{cursor:pointer;user-select:none;appearance:none}.rolebox-system-state span{width:9px;height:9px;border-radius:50%;background:#21d07a;box-shadow:0 0 14px rgba(33,208,122,.8);flex:0 0 auto}.rolebox-system-state b{font:inherit}.rolebox-system-state.is-maintenance{border-color:rgba(255,216,77,.48);background:rgba(255,216,77,.14);color:#fff1b8}.rolebox-system-state.is-maintenance span{background:#ffd84d;box-shadow:0 0 14px rgba(255,216,77,.85)}.rolebox-system-state.is-busy{opacity:.65;pointer-events:none}.maintenance-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 18% 12%,rgba(255,216,77,.18),transparent 32%),radial-gradient(circle at 90% 8%,rgba(236,72,153,.18),transparent 34%),#080816}.maintenance-card{width:min(760px,94vw);padding:34px;border-radius:28px;border:1px solid rgba(255,216,77,.28);background:linear-gradient(135deg,rgba(11,18,38,.96),rgba(26,18,12,.94));box-shadow:0 0 70px rgba(255,216,77,.12),0 0 80px rgba(236,72,153,.10);text-align:center}.maintenance-card .brand{justify-content:center;margin-bottom:24px}.roadwork-sign{width:116px;height:104px;margin:0 auto 22px;position:relative;display:grid;place-items:center;animation:maintenancePulse 1.4s ease-in-out infinite}.roadwork-sign span{position:absolute;inset:0;background:#ffd84d;clip-path:polygon(50% 0,100% 92%,0 92%);border-radius:8px}.roadwork-sign:after{content:"";position:absolute;inset:14px;background:repeating-linear-gradient(45deg,#111827 0 10px,#ffd84d 10px 20px);clip-path:polygon(50% 0,100% 92%,0 92%);opacity:.95}.roadwork-sign strong{position:relative;z-index:2;color:#fff;font-size:48px;text-shadow:0 2px 0 #000}.maintenance-card h1{font-size:clamp(34px,5vw,62px);margin:0 0 10px}.maintenance-card p{max-width:560px;margin:0 auto 24px;color:#d7dff8;font-size:18px}.maintenance-stripes{height:28px;border-radius:999px;margin:18px 0 22px;background:repeating-linear-gradient(135deg,#111827 0 20px,#ffd84d 20px 40px);background-size:140px 100%;animation:maintenanceStripes 1.2s linear infinite}.maintenance-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}@keyframes maintenanceStripes{to{background-position:140px 0}}@keyframes maintenancePulse{50%{transform:translateY(-3px) scale(1.03)}}
.rolebox-status-row{display:flex;align-items:center;gap:8px;margin:8px 0 10px}.rolebox-status-row .rolebox-system-state{flex:1 1 auto;min-width:0;margin:0}.rolebox-version{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border-radius:12px;border:1px solid rgba(55,199,255,.36);background:linear-gradient(135deg,rgba(55,199,255,.16),rgba(139,92,246,.18));color:#dff7ff;font:1000 11px Inter,system-ui,Segoe UI,Arial,sans-serif;white-space:nowrap;box-shadow:0 0 18px rgba(55,199,255,.10)}:root[data-appearance-mode=light] .rolebox-version{color:#155e75;border-color:rgba(8,145,178,.24);background:linear-gradient(135deg,rgba(207,250,254,.82),rgba(237,233,254,.82))}
:root[data-appearance-mode=light] .privacy-consent{background:rgba(255,255,255,.68);border-color:rgba(28,38,64,.14);color:var(--light-ink)}:root[data-appearance-mode=light] .privacy-consent a{color:#0f6da8}
:root[data-appearance-mode=light] .register-privacy-panel,:root[data-appearance-mode=light] .privacy-preview-card{background:rgba(255,255,255,.68);border-color:rgba(28,38,64,.14);color:var(--light-ink)}:root[data-appearance-mode=light] .register-privacy-scroll p{color:#334155}
@media(max-width:980px){.register-layout{grid-template-columns:1fr}.register-privacy-panel{position:static;margin-top:0;height:auto;min-height:360px}.register-top{align-items:center}.register-company-logo{width:86px;height:86px}.privacy-preview-mini{grid-column:span 1}}
@media(max-width:980px){.register-top-actions{align-items:flex-end;flex-direction:column}}

:root[data-appearance-mode=light] .logs-panel,
:root[data-appearance-mode=light] .logs-table-card,
:root[data-appearance-mode=light] .booking-activity-detail{
  background:linear-gradient(135deg,var(--light-panel),var(--light-panel-soft));
  border-color:rgba(28,38,64,.14);
  color:var(--light-ink);
  box-shadow:var(--light-shadow);
}
:root[data-appearance-mode=light] .logs-section-tabs button,
:root[data-appearance-mode=light] .logs-summary-card,
:root[data-appearance-mode=light] .activity-filter-buttons button{
  background:linear-gradient(135deg,rgba(255,255,255,.84),rgba(241,245,255,.74));
  border-color:rgba(28,38,64,.16);
  color:var(--light-ink);
  box-shadow:0 10px 24px rgba(28,38,64,.08),inset 0 1px 0 rgba(255,255,255,.74);
}
:root[data-appearance-mode=light] .logs-section-tabs button.active,
:root[data-appearance-mode=light] .logs-summary-card.active,
:root[data-appearance-mode=light] .activity-filter-buttons button.active{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--cyan),var(--violet));
  box-shadow:0 0 22px color-mix(in srgb,var(--cyan) 26%,transparent);
}
:root[data-appearance-mode=light] .booking-activity-row{
  color:var(--light-ink);
  border-color:color-mix(in srgb,var(--event-color,#2f9bff) 34%,rgba(28,38,64,.14));
  background:linear-gradient(135deg,color-mix(in srgb,var(--event-color,#2f9bff) 13%,white 87%),rgba(255,255,255,.76));
  box-shadow:0 12px 28px rgba(31,41,55,.08);
}
:root[data-appearance-mode=light] .booking-participant-row{
  background:rgba(255,255,255,.64);
  border-color:rgba(28,38,64,.12);
}
:root[data-appearance-mode=light] .booking-participant-row.is-guest,
:root[data-appearance-mode=light] .participant-card.is-guest{
  border-color:rgba(202,138,4,.36);
  background:linear-gradient(135deg,rgba(254,240,138,.34),rgba(255,255,255,.78));
}
:root[data-appearance-mode=light] .guest-participant-badge{
  border-color:rgba(202,138,4,.42);
  background:#fef3c7;
  color:#854d0e;
}

/* Keep public login and monitor live surfaces branded even when the dashboard uses light mode. */
:root[data-appearance-mode=light] .login-screen{
  color:#fff;
}
:root[data-appearance-mode=light] .login-screen .login-hero{
  color:#fff;
  border-color:rgba(158,178,255,.18);
  background:linear-gradient(135deg,rgba(13,28,52,.76),rgba(40,20,59,.7));
  box-shadow:var(--glow);
}
:root[data-appearance-mode=light] .login-screen .brand span,
:root[data-appearance-mode=light] .login-screen .muted,
:root[data-appearance-mode=light] .login-screen label{
  color:#AEB9D4;
}
:root[data-appearance-mode=light] .login-screen input,
:root[data-appearance-mode=light] .login-screen select,
:root[data-appearance-mode=light] .login-screen textarea{
  color:#fff;
  border-color:rgba(255,255,255,.16);
  background:rgba(8,13,31,.72);
}
:root[data-appearance-mode=light] .login-screen .btn,
:root[data-appearance-mode=light] .login-screen button{
  color:#fff;
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  box-shadow:none;
}
:root[data-appearance-mode=light] .login-screen .btn.primary,
:root[data-appearance-mode=light] .login-screen button.primary{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--cyan),var(--violet));
}
:root[data-appearance-mode=light] body.monitor-live-page,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-client-page,
:root[data-appearance-mode=light] body.monitor-live-page .event-detail-modal,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-modal,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-modal{
  color:#fff;
}
:root[data-appearance-mode=light] body.monitor-live-page .monitor-action,
:root[data-appearance-mode=light] body.monitor-live-page .btn,
:root[data-appearance-mode=light] body.monitor-live-page button,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions .btn,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions button,
:root[data-appearance-mode=light] body.monitor-live-page .event-close,
:root[data-appearance-mode=light] body.monitor-live-page .participant-full-btn,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel .btn,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel button,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel .btn,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel button,
:root[data-appearance-mode=light] body.monitor-live-page .participants-full-card .btn,
:root[data-appearance-mode=light] body.monitor-live-page .participants-full-card button{
  color:#fff;
  border-color:rgba(255,255,255,.18);
  background:rgba(17,24,55,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
:root[data-appearance-mode=light] body.monitor-live-page .monitor-action.primary,
:root[data-appearance-mode=light] body.monitor-live-page .btn.primary,
:root[data-appearance-mode=light] body.monitor-live-page button.primary,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions .btn.primary,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions button.primary,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel .btn.primary,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel button.primary,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel .btn.primary,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel button.primary{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,#2457d6,#8b5cf6,#ec4899);
}
:root[data-appearance-mode=light] body.monitor-live-page .designer-card-actions button:last-child{
  color:#fff;
  border-color:rgba(255,255,255,.28);
  background:linear-gradient(135deg,var(--card-a,#2f9bff),#8b5cf6,var(--card-b,#ec4899));
  box-shadow:0 0 24px rgba(47,155,255,.26),inset 0 1px 0 rgba(255,255,255,.20);
}
:root[data-appearance-mode=light] body.monitor-live-page .btn.danger,
:root[data-appearance-mode=light] body.monitor-live-page button.danger,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions .btn.danger,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions button.danger{
  color:#fff;
  border-color:rgba(255,59,102,.45);
  background:rgba(255,59,102,.20);
}
:root[data-appearance-mode=light] body.monitor-live-page .event-detail-card,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel,
:root[data-appearance-mode=light] body.monitor-live-page .participants-full-card{
  color:#fff;
  border-color:rgba(124,142,255,.45);
  background:linear-gradient(135deg,rgba(6,19,42,.94),rgba(10,10,28,.96));
  box-shadow:0 0 0 1px rgba(255,255,255,.04),0 30px 120px rgba(0,0,0,.55);
}
:root[data-appearance-mode=light] body.monitor-live-page .event-hero,
:root[data-appearance-mode=light] body.monitor-live-page .event-participants-section,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-drag,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-drag,
:root[data-appearance-mode=light] body.monitor-live-page .participants-full-head{
  color:#fff;
  border-color:rgba(255,255,255,.10);
  background:rgba(2,8,23,.58);
}
:root[data-appearance-mode=light] body.monitor-live-page .participant-card{
  color:#fff;
  border-color:rgba(55,199,255,.20);
  background:linear-gradient(135deg,rgba(10,28,55,.82),rgba(34,24,64,.74));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 28px rgba(0,0,0,.18);
}
:root[data-appearance-mode=light] body.monitor-live-page .participant-card .avatar{
  color:#fff;
  border-color:rgba(255,255,255,.16);
  background:linear-gradient(135deg,rgba(55,199,255,.38),rgba(139,92,246,.42));
}
:root[data-appearance-mode=light] body.monitor-live-page .participant-card .pstatus.ok{
  color:#b7ffd0!important;
  background:rgba(34,197,94,.22)!important;
}
:root[data-appearance-mode=light] body.monitor-live-page .participant-card .pstatus.wait{
  color:#ffe1a8!important;
  background:rgba(245,158,11,.24)!important;
}
:root[data-appearance-mode=light] body.monitor-live-page .participant-card .pstatus.no{
  color:#ffc0c0!important;
  background:rgba(239,68,68,.24)!important;
}
:root[data-appearance-mode=light] body.monitor-live-page .participant-card .pstatus.sent{
  color:#b9d6ff!important;
  background:rgba(59,130,246,.22)!important;
}
:root[data-appearance-mode=light] body.monitor-live-page .muted,
:root[data-appearance-mode=light] body.monitor-live-page label,
:root[data-appearance-mode=light] body.monitor-live-page .participant-card span,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-copy p{
  color:#AEB9D4;
}
:root[data-appearance-mode=light] body.monitor-live-page input,
:root[data-appearance-mode=light] body.monitor-live-page select,
:root[data-appearance-mode=light] body.monitor-live-page textarea{
  color:#fff;
  border-color:rgba(255,255,255,.14);
  background:#080c20;
}

/* Public pages follow the global theme. Personal user appearance is dashboard-only. */
:root[data-appearance-mode=light] .login-screen{
  color:var(--light-ink);
}
:root[data-appearance-mode=light] .login-screen .login-hero{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.14);
  background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(243,247,255,.74));
  box-shadow:var(--light-shadow);
}
:root[data-appearance-mode=light] .login-screen .brand span,
:root[data-appearance-mode=light] .login-screen .muted,
:root[data-appearance-mode=light] .login-screen label{
  color:var(--light-muted);
}
:root[data-appearance-mode=light] .login-screen input,
:root[data-appearance-mode=light] .login-screen select,
:root[data-appearance-mode=light] .login-screen textarea{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.18);
  background:rgba(255,255,255,.88);
}
:root[data-appearance-mode=light] .login-screen .btn,
:root[data-appearance-mode=light] .login-screen button{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.16);
  background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(241,245,255,.72));
  box-shadow:0 10px 24px rgba(28,38,64,.08),inset 0 1px 0 rgba(255,255,255,.74);
}
:root[data-appearance-mode=light] .login-screen .btn.primary,
:root[data-appearance-mode=light] .login-screen button.primary{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--cyan),var(--violet));
}
:root[data-appearance-mode=light] body.monitor-live-page,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-client-page{
  color:var(--light-ink);
  background:radial-gradient(circle at 18% 8%,color-mix(in srgb,var(--cyan) 14%,transparent),transparent 32%),radial-gradient(circle at 86% 0,color-mix(in srgb,var(--pink) 12%,transparent),transparent 34%),linear-gradient(135deg,#f8fafc,#eef4ff 55%,#f5eafe);
}
:root[data-appearance-mode=light] body.monitor-live-page .event-detail-card,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel,
:root[data-appearance-mode=light] body.monitor-live-page .participants-full-card{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.14);
  background:linear-gradient(135deg,rgba(255,255,255,.90),rgba(243,247,255,.82));
  box-shadow:0 30px 90px rgba(31,41,55,.18),inset 0 1px 0 rgba(255,255,255,.74);
}
:root[data-appearance-mode=light] body.monitor-live-page .event-hero,
:root[data-appearance-mode=light] body.monitor-live-page .event-participants-section,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-drag,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-drag,
:root[data-appearance-mode=light] body.monitor-live-page .participants-full-head{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.12);
  background:rgba(255,255,255,.58);
}
:root[data-appearance-mode=light] body.monitor-live-page .monitor-action,
:root[data-appearance-mode=light] body.monitor-live-page .btn,
:root[data-appearance-mode=light] body.monitor-live-page button,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions .btn,
:root[data-appearance-mode=light] body.monitor-live-page .event-actions button,
:root[data-appearance-mode=light] body.monitor-live-page .event-close,
:root[data-appearance-mode=light] body.monitor-live-page .participant-full-btn,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel .btn,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-calendar-panel button,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel .btn,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-panel button{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.16);
  background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(241,245,255,.76));
  box-shadow:0 10px 24px rgba(28,38,64,.08),inset 0 1px 0 rgba(255,255,255,.74);
}
:root[data-appearance-mode=light] body.monitor-live-page .muted,
:root[data-appearance-mode=light] body.monitor-live-page label,
:root[data-appearance-mode=light] body.monitor-live-page .participant-card span,
:root[data-appearance-mode=light] body.monitor-live-page .monitor-booking-copy p{
  color:var(--light-muted);
}
:root[data-appearance-mode=light] body.monitor-live-page input,
:root[data-appearance-mode=light] body.monitor-live-page select,
:root[data-appearance-mode=light] body.monitor-live-page textarea{
  color:var(--light-ink);
  border-color:rgba(28,38,64,.18);
  background:rgba(255,255,255,.88);
}

/* Floating detail board on monitor pages */
.event-detail-card.monitor-floating-detail{
  position:fixed!important;
  left:var(--detail-left,calc(50vw - min(540px,46vw)))!important;
  top:var(--detail-top,8vh)!important;
  width:var(--detail-width,min(1080px,92vw))!important;
  height:var(--detail-height,min(760px,88vh))!important;
  max-width:calc(100vw - 24px)!important;
  max-height:calc(100vh - 24px)!important;
  margin:0!important;
  overflow:hidden!important;
  cursor:move;
  touch-action:none;
}
.event-detail-card.monitor-floating-detail input,
.event-detail-card.monitor-floating-detail select,
.event-detail-card.monitor-floating-detail button,
.event-detail-card.monitor-floating-detail a{
  cursor:pointer;
}
.event-detail-card.monitor-floating-detail .event-participants-section{
  min-height:0!important;
  overflow:hidden!important;
}
.event-detail-card.monitor-floating-detail .participants-scroll{
  overflow:auto!important;
}
.event-detail-card.monitor-floating-detail .event-close{
  top:18px!important;
  right:calc(31% + 30px)!important;
}
.event-detail-resize{
  position:absolute;
  right:8px;
  bottom:8px;
  width:24px;
  height:24px;
  border-right:3px solid var(--cyan);
  border-bottom:3px solid var(--violet);
  border-radius:3px;
  cursor:nwse-resize;
  z-index:20;
  touch-action:none;
}

/* Room form logo preview inline */
.room-logo-field{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(220px,.9fr);
  gap:8px 12px;
  align-items:end;
}
.room-logo-field label{
  grid-column:1 / -1;
}
.room-logo-field input{
  min-width:0;
}
.room-logo-field .image-field-preview{
  margin-top:0;
  min-height:54px;
  padding:7px;
}
.room-logo-field .image-field-thumb{
  width:44px;
  height:44px;
  border-radius:12px;
}
.room-logo-field .image-field-meta b,
.room-logo-field .image-field-meta small{
  font-size:11px;
}
@media(max-width:980px){
  .room-logo-field{
    grid-template-columns:1fr;
  }
}

/* Compact dashboard designer fields */
.appearance-page .appearance-panel{
  padding:20px 24px;
  margin-bottom:18px;
}
.appearance-page .appearance-panel h2{
  margin:0 0 14px;
}
.appearance-page .appearance-panel .grid{
  gap:12px 16px;
}
.appearance-page .appearance-panel label{
  margin:6px 0 6px;
  font-size:12px;
}
.appearance-page .appearance-panel input,
.appearance-page .appearance-panel select,
.appearance-page .appearance-panel textarea{
  min-height:44px;
  padding:11px 14px;
  border-radius:14px;
}
.appearance-page .appearance-panel input[type=file]{
  padding:9px 14px;
}
.appearance-page .appearance-panel input[type=range]{
  min-height:34px;
  padding:0;
}
.appearance-page .image-field-preview{
  min-height:62px;
  margin-top:7px;
  padding:7px;
  gap:8px;
}
.appearance-page .image-field-thumb{
  width:48px;
  height:48px;
  border-radius:13px;
}
.appearance-page .image-field-preview.wide-preview{
  grid-template-columns:72px minmax(0,1fr);
}
.appearance-page .image-field-preview.wide-preview .image-field-thumb{
  width:72px;
  height:48px;
  border-radius:12px;
}
.appearance-page .image-field-meta b{
  font-size:11px;
}
.appearance-page .image-field-meta small{
  font-size:11px;
}
.appearance-page .login-designer-head{
  margin-bottom:12px;
}
.appearance-page .login-designer-head h2{
  margin-bottom:4px;
}
.appearance-page .login-designer-layout{
  gap:14px;
}
.appearance-page .login-preview-card{
  min-height:96px;
  padding:16px 18px;
  gap:6px;
}
.appearance-page .login-preview-card .preview-logo{
  width:38px;
  height:38px;
}
.appearance-page .privacy-preview-card{
  min-height:100%;
  height:100%;
  padding:14px;
}
.appearance-page .privacy-preview-card div{
  max-height:none;
  min-height:0;
}
.appearance-page .brand-save-row{
  margin-top:14px;
}
@media(max-width:1180px){
  .login-designer-layout{
    grid-template-columns:1fr;
  }
  .privacy-preview-mini{
    grid-column:auto;
  }
  .appearance-page .privacy-preview-card{
    min-height:190px;
  }
  .appearance-page .privacy-preview-card div{
    max-height:170px;
  }
}

/* Touch responsive shell: Android/iPhone/tablet management UI */
@media(max-width:1180px){
  .app{
    grid-template-columns:220px minmax(0,1fr);
  }
  .sidebar{
    padding:18px 14px;
  }
  .brand{
    gap:10px;
    margin-bottom:20px;
  }
  .logo{
    width:46px;
    height:46px;
    border-radius:14px;
  }
  .brand b{
    font-size:15px;
    line-height:1.15;
  }
  .brand span{
    font-size:12px;
  }
  .nav a{
    padding:11px 12px;
    border-radius:13px;
    font-size:13px;
  }
  .rolebox{
    padding:14px;
    border-radius:18px;
  }
  .main{
    padding:24px;
  }
  .lux-header,
  .topbar{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .lux-title h1,
  .page-title h1{
    font-size:clamp(30px,4vw,38px);
  }
  .actions{
    flex-wrap:wrap;
    justify-content:flex-start;
  }
  .soft-grid.four,
  .grid.cols4,
  .dashboard-lower-grid,
  .normal-admin-role .dashboard-lower-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .soft-grid.three,
  .grid.cols3{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dashboard-lower-grid,
  .normal-admin-role .dashboard-lower-grid{
    min-height:0;
  }
  .normal-admin-role .dashboard-lower-grid>.neo-card{
    min-height:520px;
  }
  .dashboard-quick-strip{
    grid-template-columns:1fr;
  }
  .dashboard-quick-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .test-lab-console,
  .logs-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .test-lab-layout,
  .logs-filter-grid,
  .scenario-fields{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:900px){
  body{
    min-width:0;
    overflow-x:hidden;
  }
  .app,
  .app.user-only,
  .app.normal-admin-role,
  .app.superadmin-role,
  .calendar-fit-page .app,
  .calendar-fit-page .app.superadmin-role{
    display:block;
    min-height:100vh;
    height:auto;
    overflow:visible;
  }
  .sidebar,
  .app.user-only .sidebar,
  .app.normal-admin-role .sidebar{
    position:sticky;
    top:0;
    z-index:40;
    height:auto;
    min-height:0;
    max-height:none;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:12px;
    padding:12px;
    border-right:0;
    border-bottom:1px solid var(--line);
    background:linear-gradient(180deg,rgba(18,20,46,.96),rgba(11,10,29,.93));
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
    overflow:visible;
  }
  .brand{
    margin:0;
    min-width:0;
  }
  .brand .logo,
  .logo{
    width:40px;
    height:40px;
    border-radius:13px;
  }
  .brand b{
    font-size:15px;
  }
  .brand span{
    font-size:11px;
  }
  .nav,
  .app.user-only .nav,
  .app.normal-admin-role .nav{
    display:flex;
    gap:8px;
    align-items:center;
    overflow-x:auto;
    overflow-y:hidden;
    padding:0 0 4px;
    margin:0 -2px;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
    scrollbar-color:var(--violet) rgba(255,255,255,.06);
  }
  .nav small{
    flex:0 0 auto;
    margin:0 2px 0 0;
    padding:0 8px;
    font-size:11px;
    white-space:nowrap;
  }
  .nav a{
    flex:0 0 auto;
    min-height:40px;
    margin:0;
    padding:10px 13px;
    border-radius:14px;
    white-space:nowrap;
    scroll-snap-align:start;
  }
  .rolebox,
  .app.user-only .rolebox,
  .app.normal-admin-role .rolebox{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:8px;
    align-items:center;
    margin:0;
    padding:10px;
    border-radius:16px;
  }
  .rolebox p{
    margin:0;
    font-size:11px;
  }
  .rolebox .mini-link,
  .rolebox .logout-btn,
  .rolebox .role-switch-link{
    width:auto;
    min-height:36px;
    margin:0;
    padding:8px 11px;
    font-size:12px;
  }
  .main,
  .calendar-fit-page .main,
  .calendar-fit-page .main:has(.calendar-box-custom-height),
  .user-dashboard-page .main{
    height:auto;
    min-height:0;
    overflow:visible;
    padding:18px;
  }
  .lux-header,
  .topbar{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    margin-bottom:18px;
  }
  .lux-title{
    align-items:flex-start;
    gap:12px;
  }
  .lux-icon{
    width:46px;
    height:46px;
    border-radius:15px;
  }
  .lux-title h1,
  .page-title h1{
    font-size:30px;
    line-height:1.05;
  }
  .lux-title p,
  .page-title p{
    font-size:14px;
    line-height:1.35;
  }
  .actions{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .actions .btn,
  .actions button,
  .actions label,
  .dashboard-refresh-control,
  .dashboard-kpi-auto{
    width:100%;
    justify-content:center;
    text-align:center;
  }
  .dashboard-refresh-control select{
    width:100%;
  }
  .card,
  .neo-card,
  .metric,
  .kpi-card{
    border-radius:20px;
  }
  .card,
  .neo-card{
    padding:18px;
  }
  .soft-grid.four,
  .soft-grid.three,
  .soft-grid.two,
  .grid.cols4,
  .grid.cols3,
  .grid.cols2,
  .dashboard-lower-grid,
  .normal-admin-role .dashboard-lower-grid,
  .test-lab-console,
  .test-lab-layout,
  .logs-filter-grid,
  .logs-summary,
  .scenario-fields,
  .simulation-fields,
  .resource-toolbar,
  .resource-grid,
  .resource-chip-grid,
  .company-check-list,
  .room-logo-field{
    grid-template-columns:1fr;
  }
  .dashboard-kpi-grid,
  .user-dashboard-kpis{
    gap:12px;
    margin-bottom:16px;
  }
  .dashboard-kpi-grid .kpi-card,
  .user-dashboard-kpis .kpi-card{
    min-height:124px;
    padding:18px;
  }
  .kpi-card b{
    font-size:34px;
    margin-top:10px;
  }
  .kpi-card .kpi-icon{
    right:16px;
    bottom:16px;
    width:58px;
    height:58px;
    border-radius:19px;
  }
  .dashboard-lower-grid>.neo-card,
  .normal-admin-role .dashboard-lower-grid>.neo-card{
    min-height:0;
    height:auto;
  }
  .dashboard-pending-list,
  .dashboard-login-status,
  .dashboard-recent-list,
  #liveRoomStatus .dashboard-room-snapshot{
    max-height:320px;
    flex:none;
  }
  .dashboard-access-footer{
    align-items:stretch;
  }
  .dashboard-access-footer .btn,
  .dashboard-login-company,
  .dashboard-login-company select{
    width:100%;
  }
  .dashboard-quick-actions{
    grid-template-columns:1fr;
  }
  .row{
    flex-wrap:wrap;
  }
  .row.space{
    align-items:flex-start;
  }
  .btn,
  button,
  input,
  select,
  textarea{
    min-height:44px;
  }
  input,
  select,
  textarea{
    font-size:16px;
    border-radius:14px;
  }
  .table{
    min-width:720px;
  }
  .card:has(.table),
  .logs-table-wrap,
  .scroll-shell,
  .schedule-wrap{
    overflow:auto;
    -webkit-overflow-scrolling:touch;
  }
  .modal{
    align-items:stretch;
    padding:10px;
  }
  .modal-panel,
  .event-detail-card,
  .super-scope-window,
  .monitor-booking-panel,
  .monitor-calendar-panel{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:calc(100vh - 20px)!important;
    border-radius:20px;
  }
  .modal-head{
    padding:16px;
    gap:10px;
    flex-wrap:wrap;
  }
  .calendar-controls{
    width:100%;
    margin-left:0!important;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .calendar-controls select,
  .calendar-controls input[type=date],
  .calendar-controls input[type=number],
  .calendar-controls .btn.small{
    width:100%;
    min-width:0;
  }
  .calendar-fit-page .main>section.card:has(#calendarDays),
  .calendar-fit-page .main>section.card:has(#userCalendarDays){
    min-height:0;
    overflow:auto;
  }
  .calendar-grid:not(.calendar-week-view):not(.calendar-day-view){
    grid-template-columns:repeat(7,minmax(118px,1fr))!important;
    min-width:900px;
  }
  .calendar-fit-page #calendarDays,
  .calendar-fit-page #userCalendarDays{
    min-width:900px;
  }
  .day{
    min-height:150px;
  }
  .calendar-box-edit-panel{
    position:fixed;
    left:12px!important;
    right:12px!important;
    bottom:12px!important;
    width:auto;
    max-width:none;
    grid-template-columns:1fr;
    z-index:240;
  }
  .calendar-box-edit-panel input[type=number]{
    width:100%;
  }
  .calendar-inline-board,
  .timeline-board{
    min-width:980px;
  }
  .calendar-inline-schedule{
    max-height:70vh;
  }
  .login-screen{
    padding:16px;
    min-height:100dvh;
  }
  .login-screen .login-hero,
  :root[data-appearance-mode=light] .login-screen .login-hero{
    width:calc(100vw - 32px);
    max-width:100%;
    padding:24px 20px;
    border-radius:22px;
    overflow:hidden;
  }
  .login-hero input,
  .login-hero .btn,
  .login-hero button,
  .login-hero .password-field,
  .login-hero .login-actions{
    max-width:100%;
    min-width:0;
  }
  .login-hero .password-field input{
    padding-right:82px;
  }
  .login-hero .password-toggle{
    right:6px;
    max-width:74px;
    padding:0 10px;
    font-size:13px;
  }
  .login-hero h1{
    font-size:clamp(34px,9vw,42px);
    line-height:1.05;
  }
  .logs-panel,
  .logs-table-card,
  .test-lab-panel.scenario,
  .test-lab-simulation{
    padding:18px;
  }
  .test-lab-check-grid.rooms,
  .test-lab-check-grid.companies,
  .activity-list.compact{
    grid-template-columns:1fr;
  }
}

@media(max-width:560px){
  .main,
  .calendar-fit-page .main,
  .user-dashboard-page .main{
    padding:14px 12px 20px;
  }
  .sidebar{
    padding:10px;
  }
  .rolebox,
  .app.user-only .rolebox,
  .app.normal-admin-role .rolebox{
    grid-template-columns:1fr 1fr;
  }
  .rolebox>b,
  .rolebox>p,
  .rolebox-profile{
    grid-column:1 / -1;
  }
  .actions{
    grid-template-columns:1fr;
  }
  .lux-title{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
  }
  .lux-title h1,
  .page-title h1{
    font-size:27px;
  }
  .card,
  .neo-card{
    padding:15px;
    border-radius:18px;
  }
  .login-screen .login-hero,
  :root[data-appearance-mode=light] .login-screen .login-hero{
    width:calc(100vw - 24px);
    padding:22px 16px;
  }
  .dashboard-kpi-grid .kpi-card,
  .user-dashboard-kpis .kpi-card{
    min-height:112px;
  }
  .kpi-card b{
    font-size:30px;
  }
  .kpi-card .kpi-icon{
    width:50px;
    height:50px;
    border-radius:17px;
  }
  .activity-item,
  .dashboard-pending-list .activity-item,
  .dashboard-recent-list .activity-item,
  .dashboard-login-status .activity-item{
    grid-template-columns:34px minmax(0,1fr);
  }
  .activity-item .pill,
  .dashboard-login-row .pill{
    grid-column:2;
    justify-self:start;
  }
  .calendar-controls{
    grid-template-columns:1fr;
  }
  .calendar-grid:not(.calendar-week-view):not(.calendar-day-view),
  .calendar-fit-page #calendarDays,
  .calendar-fit-page #userCalendarDays{
    min-width:760px;
  }
  .calendar-grid:not(.calendar-week-view):not(.calendar-day-view){
    grid-template-columns:repeat(7,minmax(96px,1fr))!important;
  }
  .day{
    min-height:132px;
    padding:10px;
  }
  .event-pill{
    padding:7px 8px;
    font-size:11px;
  }
  .modal{
    padding:6px;
  }
  .modal-panel,
  .event-detail-card,
  .super-scope-window,
  .monitor-booking-panel,
  .monitor-calendar-panel{
    width:calc(100vw - 12px)!important;
    max-width:calc(100vw - 12px)!important;
    max-height:calc(100dvh - 12px)!important;
    border-radius:18px;
  }
}

/* Mobile nav refinement: full-width touch menu instead of centered chips */
@media(max-width:900px){
  .sidebar,
  .app.user-only .sidebar,
  .app.normal-admin-role .sidebar{
    position:relative;
    top:auto;
  }
  .nav,
  .app.user-only .nav,
  .app.normal-admin-role .nav{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    overflow:visible;
    padding:0;
    margin:0;
    scroll-snap-type:none;
  }
  .nav small{
    width:100%;
    padding:2px 4px;
    margin:2px 0 0;
  }
  .nav a{
    width:100%;
    justify-content:flex-start;
    min-height:46px;
    padding:12px 14px;
    white-space:normal;
    line-height:1.15;
  }
  .rolebox,
  .app.user-only .rolebox,
  .app.normal-admin-role .rolebox{
    grid-template-columns:1fr 1fr;
  }
  .rolebox>b,
  .rolebox>p,
  .rolebox-profile{
    grid-column:1 / -1;
  }
  .rolebox .mini-link,
  .rolebox .logout-btn,
  .rolebox .role-switch-link{
    width:100%;
  }
}
