:root{color-scheme:light;font-family:SF Pro Display,SF Pro Text,Inter,Aptos,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:geometricPrecision;--bg: #050505;--canvas: #f5f5f3;--panel: #ffffff;--panel-2: #fafafa;--ink: #050505;--muted: #737373;--soft: #ececea;--line: #deded9;--line-strong: #bdbdb6;--inverse: #ffffff;--primary: #050505;--primary-dark: #272727;--green: #0a7a43;--red: #b62032;--orange: #c26116;--yellow: #b18409;--gray: #737373;background:var(--canvas);color:var(--ink)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top right,rgba(255,255,255,.13),transparent 28rem),var(--canvas)}button,input,select,textarea{font:inherit}button{cursor:pointer}button,input,select,textarea{-webkit-tap-highlight-color:transparent}.app-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s ease}.app-shell.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;background:#050505;color:var(--inverse);display:flex;flex-direction:column;gap:20px;border-right:1px solid rgba(255,255,255,.1)}.brand{display:flex;gap:10px;align-items:center;min-width:0}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:8px;background:#fff;color:#050505;flex:0 0 auto;box-shadow:inset 0 0 0 1px #00000014}.brand strong,.brand span{display:block}.brand strong{font-weight:520}.brand span{color:#ffffff94;font-size:12px;margin-top:3px}.sidebar-toggle{margin-left:auto;width:34px;height:34px;border:1px solid rgba(255,255,255,.16);border-radius:8px;color:#fff;background:#111;display:grid;place-items:center}.sidebar-toggle:hover{background:#1c1c1c}.nav-stack{display:grid;gap:6px}.nav-stack button,.profile-box,.segmented,.date-switcher,.search-box,.toast,.metric,.icon-action,.primary-btn,.secondary-btn,.timeline-card,.side-panel,.panel,.booking-modal,.status-card,.list-booking,.audit-item,.room-admin-card,input,select,textarea{border-radius:8px}.nav-stack button{border:1px solid transparent;color:#ffffffb3;background:transparent;display:flex;align-items:center;gap:11px;padding:12px;text-align:left;font-weight:450;transition:background .14s ease,color .14s ease,border-color .14s ease}.nav-stack button:hover,.nav-stack button.active{background:#fff;border-color:#fff;color:#050505}.profile-box{margin-top:0;display:flex;gap:6px;align-items:center;padding:7px 8px;background:#111;border:1px solid rgba(255,255,255,.14)}.sidebar-clock{margin-top:auto;padding:14px 12px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#111;display:grid;gap:4px}.sidebar-clock span{color:#ffffff94;font-size:12px;line-height:1.25}.sidebar-clock strong{color:#fff;font-size:25px;line-height:1;font-weight:450;font-variant-numeric:tabular-nums}.profile-box svg{color:#ffffffb8;width:13px;height:13px}.profile-box select{min-width:0;width:100%;color:#fff;background:transparent;border:0;outline:0;font-size:10px;font-weight:400}.sidebar-collapsed .sidebar{padding-inline:10px;align-items:center}.sidebar-collapsed .brand{width:100%;justify-content:center}.sidebar-collapsed .brand>div:not(.brand-mark),.sidebar-collapsed .nav-stack span,.sidebar-collapsed .sidebar-clock span,.sidebar-collapsed .profile-box select{display:none}.sidebar-collapsed .sidebar-toggle{position:absolute;top:62px;left:19px;margin:0}.sidebar-collapsed .nav-stack{margin-top:34px;width:100%}.sidebar-collapsed .nav-stack button,.sidebar-collapsed .profile-box{justify-content:center;width:42px;height:42px;padding:0}.sidebar-collapsed .sidebar-clock{width:52px;padding:10px 6px;text-align:center}.sidebar-collapsed .sidebar-clock strong{font-size:13px;line-height:1.15;white-space:normal}.main-area{min-width:0;padding:26px}.topbar{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:18px;align-items:start;margin-bottom:22px}.topbar h1,.dashboard-head h2,.analytics-head h2,.panel h2,.modal-head h2{margin:4px 0 0;line-height:1.05;letter-spacing:0;font-weight:500}.topbar h1{max-width:720px;font-size:clamp(30px,3vw,42px)}.eyebrow{margin:0;color:var(--muted);text-transform:uppercase;font-weight:500;font-size:12px}.topbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.search-box,.date-switcher,.toast,.metric,.timeline-card,.side-panel,.panel,.booking-modal{background:#ffffffeb;border:1px solid var(--line);box-shadow:0 1px #0000000a}.search-box,.date-switcher,.toast{display:flex;align-items:center}.search-box{gap:10px;padding:0 13px;min-height:46px}.search-box svg,.date-switcher svg,.toast svg{color:var(--ink)}.search-box input{border:0;outline:0;width:245px;min-width:140px;background:transparent}.date-switcher input{border:0;background:transparent;padding:11px 8px;outline:0;font-weight:450}.date-switcher button,.icon-action{width:44px;height:44px;border:0;background:transparent;color:var(--ink);display:grid;place-items:center}.icon-action:hover,.date-switcher button:hover,.list-booking button:hover{background:#efefec}.primary-btn,.secondary-btn{border:1px solid transparent;min-height:46px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:500}.primary-btn{background:#050505;color:#fff;border-color:#050505}.primary-btn:hover{background:#2a2a2a}.secondary-btn{background:#fff;border-color:var(--line);color:var(--ink)}.secondary-btn:hover{border-color:#050505}.toast{grid-column:1 / -1;justify-self:end;gap:9px;padding:10px 12px;color:var(--muted);font-size:14px}.toast strong{color:var(--ink);margin-left:8px;font-weight:500}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;transition:grid-template-columns .18s ease}.content-grid.plan-collapsed{grid-template-columns:minmax(0,1fr) 62px}.toolbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.timeline-zoom{min-height:42px;display:inline-flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:13px}.timeline-zoom span{white-space:nowrap}.timeline-zoom input{width:150px;accent-color:#050505}.timeline-now-btn{min-height:42px;border:1px solid #050505;background:#050505;color:#fff;padding:0 15px;font-weight:430}.timeline-now-btn:disabled{opacity:.38;cursor:not-allowed}.segmented{background:#050505;border:1px solid #050505;padding:3px;display:inline-flex;gap:3px;overflow-x:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{border:0;background:transparent;min-height:38px;padding:0 14px;border-radius:6px;color:#ffffff9e;font-weight:450;white-space:nowrap}.segmented button.active{background:#fff;color:#050505}.quick-actions,.dashboard-metrics,.kpi-grid{display:flex;gap:10px;flex-wrap:wrap}.metric{min-width:150px;padding:13px;display:grid;gap:5px}.metric svg{color:#050505}.metric span{color:var(--muted);font-size:12px;font-weight:450}.metric strong{font-size:24px;line-height:1;font-weight:500}.timeline-card,.side-panel,.panel,.booking-modal{box-shadow:0 18px 60px #05050514}.timeline-card{overflow-x:auto;overflow-y:visible;min-width:0;scrollbar-color:#050505 #e8e8e4;scrollbar-width:thin;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.timeline-card.is-dragging,.timeline-card.is-dragging .slot,.timeline-card.is-dragging .booking-pill{cursor:grabbing}.timeline-header,.timeline-row{display:grid;grid-template-columns:236px minmax(var(--timeline-min, 740px),1fr)}.timeline-header{color:var(--muted);font-size:12px;font-weight:450;border-bottom:1px solid var(--line);background:#fff;min-height:54px}.room-column-label{padding:15px 16px;position:sticky;left:0;z-index:7;background:#fff}.time-scale{position:relative;display:grid;grid-template-columns:repeat(6,1fr);align-items:start;padding-top:10px}.current-time-label{position:absolute;top:30px;z-index:5;transform:translate(-50%);padding:3px 7px;border-radius:6px;background:#ff2f5fc7;color:#fff;font-size:11px;white-space:nowrap}.timeline-body{overflow:visible}.timeline-row{min-height:92px;border-bottom:1px solid #e8e8e4;background:#fff}.timeline-row:nth-child(2n){background:#fbfbfa}.timeline-row:last-child{border-bottom:0}.room-cell{position:sticky;left:0;z-index:6;display:grid;grid-template-columns:12px minmax(0,1fr);align-content:center;column-gap:11px;padding:15px 16px;border-right:1px solid var(--line);background:inherit}.room-cell strong,.room-cell small{grid-column:2;min-width:0}.room-cell strong{overflow-wrap:anywhere;font-weight:500}.room-cell small{color:var(--muted);margin-top:4px}.status-dot{width:9px;height:9px;border-radius:50%;margin-top:6px;box-shadow:0 0 0 4px #0000000d}.status-dot.free{background:var(--green)}.status-dot.busy{background:var(--red)}.status-dot.soon{background:var(--orange)}.status-dot.blocked{background:var(--gray)}.slots{position:relative;display:grid;grid-template-columns:repeat(var(--slot-count),minmax(18px,1fr));background:linear-gradient(90deg,rgba(5,5,5,.08) 1px,transparent 1px),linear-gradient(180deg,rgba(5,5,5,.025),transparent);background-size:calc(100% / 11) 100%,100% 100%}.current-time-line{position:absolute;top:0;bottom:0;z-index:4;width:8px;pointer-events:none;background:#ff2f5f52;box-shadow:0 0 0 1px #ff2f5f14,0 0 18px #ff2f5f29}.current-time-line:before{content:"";position:absolute;top:9px;left:50%;width:10px;height:10px;transform:translate(-50%);border-radius:50%;background:#ff2f5f85;box-shadow:0 0 0 5px #ff2f5f14}.slot{border:0;border-right:1px solid rgba(5,5,5,.055);background:transparent;min-height:92px;cursor:grab}.slot:hover{background:#0505050e}.booking-pill{position:absolute;top:15px;height:62px;border:1px solid #050505;border-left:6px solid var(--room-color);background:#050505;box-shadow:0 12px 26px #05050538;border-radius:8px;text-align:left;padding:9px 10px;overflow:hidden;color:#fff;cursor:pointer}.booking-pill span,.booking-pill small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-pill span{font-size:13px;font-weight:390;line-height:1.15}.booking-pill small{color:#ffffffad;margin-top:5px;font-size:12px;font-weight:350}.booking-tooltip-floating{position:fixed;z-index:80;width:min(280px,calc(100vw - 24px));transform:translate(-50%,-100%);display:grid;gap:4px;padding:11px 12px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#050505;color:#fff;box-shadow:0 18px 42px #00000047;pointer-events:none}.booking-tooltip-floating strong{font-size:14px;font-weight:450}.booking-tooltip-floating span,.booking-tooltip-floating em,.booking-tooltip-floating small{color:#ffffffb8;font-size:12px;font-style:normal;font-weight:360}.booking-pill.pending{background:#fff;color:#050505;border-color:#050505}.booking-pill.pending small{color:var(--muted)}.booking-pill.blocked{background:#deded9;color:#050505;border-color:#c7c7c0}.booking-pill.blocked small{color:#575757}.side-panel{padding:17px;min-width:0;transition:padding .18s ease}.side-panel.collapsed{padding:10px;display:flex;justify-content:center}.side-panel h3,.panel h3{margin:0 0 14px;font-size:18px}.side-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.side-panel-head h3{margin:0}.panel-toggle{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#050505;display:grid;place-items:center}.panel-toggle:hover{border-color:#050505}.side-panel.collapsed .side-panel-head{margin:0}.booking-list,.audit-list,.room-admin-list,.rank-list{display:grid;gap:10px}.list-booking{display:grid;grid-template-columns:5px minmax(0,1fr) 34px 34px;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);background:#fff}.list-booking>span{width:5px;height:44px;border-radius:8px}.list-booking strong,.list-booking small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-booking strong{font-weight:500}.list-booking small{color:var(--muted);margin-top:4px}.list-booking button{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;border-radius:7px}.dashboard-screen,.analytics-layout,.admin-layout{display:grid;gap:16px}.dashboard-head,.analytics-head,.modal-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.room-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.status-card{min-height:214px;padding:18px;color:#050505;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:12px;box-shadow:0 18px 60px #05050514}.status-card.free{border-top:6px solid var(--green)}.status-card.busy{border-top:6px solid var(--red)}.status-card.soon{border-top:6px solid var(--orange)}.status-card.blocked{border-top:6px solid var(--gray)}.status-card-top,.status-card footer{display:flex;justify-content:space-between;gap:12px;align-items:center}.status-card-top span{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;background:#050505;color:#fff}.status-card-top strong{text-transform:uppercase;font-size:12px;color:var(--muted);font-weight:450}.status-card h3{margin:12px 0 0;font-size:clamp(22px,2.2vw,32px);line-height:1.04}.status-card p{margin:0;font-size:15px;color:#333}.status-remaining{width:fit-content;padding:8px 10px;border-radius:8px;background:#050505;color:#fff;font-size:14px;font-weight:500}.usage-bar{height:8px;background:#ebebe7;border-radius:999px;overflow:hidden;margin-top:auto}.usage-bar span{display:block;height:100%;background:#050505}.status-card footer{color:var(--muted);font-size:13px}.location-badge{font-weight:700}.location-badge.pravda{color:#fcc542}.location-badge.ta3{color:#13171d}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.panel{padding:18px}.rank-row{display:grid;grid-template-columns:13px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #e8e8e4}.rank-row:last-child{border-bottom:0}.rank-row span{width:13px;height:13px;border-radius:50%}.rank-row strong{min-width:0;overflow-wrap:anywhere}.rank-row em{color:var(--muted);font-style:normal;font-weight:450}.neutral-dot{background:#050505}.heatmap{display:grid;grid-template-columns:repeat(11,minmax(16px,1fr));gap:6px}.heatmap span{min-height:34px;border-radius:6px;background:#050505}.audit-panel{max-width:1100px}.audit-item{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);background:#fff}.audit-icon{width:40px;height:40px;border-radius:8px;display:grid;place-items:center;color:#fff;background:#050505}.audit-item p{margin:4px 0 0;color:var(--muted)}.audit-item time{color:var(--muted);font-size:13px;white-space:nowrap}.settings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.settings-grid.compact{grid-template-columns:repeat(4,minmax(88px,1fr))}label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:450}input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;color:var(--ink);min-height:42px;padding:10px 11px;outline-color:#050505}input:focus,select:focus,textarea:focus{border-color:#050505}textarea{resize:vertical}.room-admin-card{padding:14px;border:1px solid var(--line);background:#fff}.room-admin-head{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:end;margin-bottom:12px}.room-admin-icon{width:44px;height:44px;border:1px solid var(--line);background:#050505;color:#fff;display:grid;place-items:center}.room-admin-head input{font-weight:450}.toggle-line{margin-top:12px;display:flex;align-items:center;gap:8px;color:var(--ink)}.toggle-line input{width:17px;min-height:17px}.approval-master{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.modal-backdrop{position:fixed;inset:0;background:#050505ad;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:grid;place-items:center;padding:18px;z-index:20}.booking-modal{width:min(840px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.choice-group{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.recurrence-box{margin-top:14px;border:1px solid var(--line);background:#f7f7f4;padding:14px}.recurrence-box .toggle-line{margin-top:0}.recurrence-panel{display:grid;gap:12px;margin-top:14px}.weekday-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekday-picker button{min-height:38px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:430}.weekday-picker button.selected{background:#050505;border-color:#050505;color:#fff}.recurrence-summary{margin:0;color:var(--muted);font-size:13px}.choice-group button{min-height:36px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:0 13px;display:inline-flex;align-items:center;gap:6px;color:#4e4e4e;font-weight:450}.choice-group button.selected{color:#fff;border-color:#050505;background:#050505}.wide-label{margin-top:10px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@media(max-width:1180px){.content-grid{grid-template-columns:minmax(0,1fr)}.room-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.side-panel{order:3}}@media(max-width:920px){body{background:var(--canvas)}.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10;height:auto;padding:12px;flex-direction:row;align-items:center;gap:12px;overflow-x:auto;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}.sidebar-collapsed .sidebar{padding:12px;align-items:center}.sidebar-collapsed .brand{justify-content:flex-start}.sidebar-collapsed .brand>div:not(.brand-mark),.sidebar-collapsed .nav-stack span,.sidebar-collapsed .sidebar-clock span,.sidebar-collapsed .profile-box select{display:block}.sidebar-collapsed .sidebar-toggle{position:static;margin-left:auto}.sidebar-collapsed .nav-stack{margin-top:0;width:auto}.sidebar-collapsed .nav-stack button,.sidebar-collapsed .profile-box{width:auto;height:auto;padding:11px 12px;justify-content:flex-start}.sidebar-collapsed .sidebar-clock{width:auto;padding:14px 12px;text-align:left}.sidebar-collapsed .sidebar-clock strong{font-size:25px;line-height:1;white-space:nowrap}.brand{min-width:190px}.nav-stack{display:flex;min-width:max-content}.nav-stack button{padding:11px 12px}.profile-box{min-width:130px;margin-top:0}.sidebar-clock{min-width:190px;margin-top:0}.topbar,.toolbar,.dashboard-head,.analytics-head{grid-template-columns:1fr;align-items:stretch}.topbar-actions{justify-content:flex-start}.toast{justify-self:stretch}.kpi-grid,.two-column,.settings-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.main-area{padding:16px 14px}.topbar{gap:14px}.topbar h1{font-size:30px;line-height:1}.search-box,.date-switcher,.primary-btn,.secondary-btn{width:100%}.toolbar{flex-direction:column;align-items:stretch}.segmented{width:100%}.segmented button{flex:1 0 auto}.quick-actions,.dashboard-metrics{display:grid;grid-template-columns:1fr}.search-box input{width:100%}.room-status-grid,.kpi-grid,.two-column,.settings-grid,.form-grid,.settings-grid.compact{grid-template-columns:1fr}.timeline-header,.timeline-row{grid-template-columns:184px minmax(var(--timeline-min, 680px),1fr)}.metric{min-width:100%}.audit-item{grid-template-columns:40px minmax(0,1fr)}.audit-item time{grid-column:2}.modal-actions{flex-direction:column-reverse}}
