:root{--cs-blue-bg:#e6f7fe;--cs-blue-tint:#c4edfd;--cs-blue-light:#76d4fa;--cs-blue:#0597d1;--cs-blue-dark:#0a648a;--cs-navy-bg:#e6f1fe;--cs-navy-tint:#c4defd;--cs-navy-light:#76b3f9;--cs-navy-mid:#1d6dc9;--cs-navy:#1d4b81;--cs-grey-bg:#f3f6f6;--cs-grey-tint:#dce3e5;--cs-grey-light:#b8c4c8;--cs-grey-mid:#72868d;--cs-grey-dark:#4d585b;--cs-orange-bg:#feeee6;--cs-orange-tint:#fed7c3;--cs-orange-light:#f9ac85;--cs-orange:#f46a25;--cs-orange-dark:#b3460f;--cs-pink-bg:#fce9ec;--cs-pink-tint:#f8c9d2;--cs-pink-light:#ec8398;--cs-pink:#cc3352;--cs-pink-dark:#8f2237;--cs-green-bg:#ecf9f5;--cs-green-tint:#d0f1e7;--cs-green-light:#86dfc4;--cs-green:#39ac89;--cs-green-dark:#1e765b;--cs-white:#fff;--cs-black:#000;--fg-1:var(--cs-navy);--fg-2:var(--cs-grey-dark);--fg-brand:var(--cs-blue);--fg-on-blue:var(--cs-white);--fg-on-tint:var(--cs-navy);--bg-page:var(--cs-white);--bg-fond:var(--cs-blue-tint);--bg-fond-soft:var(--cs-blue-bg);--bg-cover:var(--cs-blue);--line-strong:var(--cs-navy);--line-soft:var(--cs-grey-light);--border:var(--cs-grey-tint);--bullet:"–";--font-sans:Tahoma, Verdana, "DejaVu Sans", "Geneva", sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--fs-display:64px;--fs-h1:32px;--fs-h2:22px;--fs-h3:17px;--fs-body:14px;--fs-small:12px;--fs-micro:10px;--lh-display:1.05;--lh-heading:1.1;--lh-body:1.3;--lh-tight:1.2;--tracking-tight:-.01em;--tracking-normal:0;--tracking-wide:.02em;--space-after-p:.6em;--sp-0:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--grid-columns:12;--grid-gutter:16px;--page-margin:64px;--radius-0:0;--radius-sm:2px;--border-thin:1px solid var(--cs-grey-tint);--border-mid:1px solid var(--cs-grey-light);--border-rule:2px solid var(--cs-navy);--shadow-none:none;--ease:cubic-bezier(.4, 0, .2, 1);--duration-1:.15s;--duration-2:.24s;--duration-3:.4s}html,body{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--fg-1);background:var(--bg-page);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}h1,.cs-h1{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-h1);line-height:var(--lh-heading);letter-spacing:var(--tracking-tight);color:var(--fg-brand);margin:0 0 var(--sp-4)}h2,.cs-h2{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-h2);line-height:var(--lh-heading);color:var(--fg-1);margin:var(--sp-6) 0 var(--sp-3)}h3,.cs-h3{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-h3);line-height:var(--lh-heading);color:var(--fg-1);margin:var(--sp-5) 0 var(--sp-2)}p,.cs-p{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--fg-1);margin:0 0 var(--space-after-p)}small,.cs-small{font-size:var(--fs-small);line-height:var(--lh-body)}.cs-display{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--tracking-tight);color:var(--cs-white)}.cs-claim{font-family:var(--font-sans);font-weight:400;font-size:var(--fs-h3);line-height:var(--lh-heading);color:var(--fg-1)}.cs-underscore{color:var(--fg-brand);font-weight:700}ul.cs-list,ol.cs-list{margin:0 0 var(--space-after-p);padding:0;list-style:none}ul.cs-list>li,ol.cs-list>li{margin-bottom:.25em;padding-left:1.25em;position:relative}ul.cs-list>li:before,ol.cs-list>li:before{content:"–";color:var(--fg-1);position:absolute;left:0}.cs-box{background:var(--bg-fond);color:var(--fg-on-tint);padding:var(--sp-5);border-radius:var(--radius-0);box-shadow:var(--shadow-none)}.cs-box--accent{background:var(--cs-orange-tint);color:var(--fg-1)}.cs-box--solid{background:var(--cs-blue);color:var(--cs-white)}table.cs-table{border-collapse:collapse;width:100%;font-size:var(--fs-small);line-height:var(--lh-body);color:var(--fg-1)}table.cs-table thead th{text-align:left;border-top:var(--border-rule);border-bottom:1px solid var(--cs-navy);padding:6px 12px 6px 0;font-weight:700}table.cs-table tbody td{border-bottom:1px solid var(--cs-grey-tint);padding:6px 12px 6px 0}table.cs-table tbody tr:last-child td{border-bottom:var(--border-rule)}:root{--st-free-fill:var(--cs-green-tint);--st-free-edge:var(--cs-green);--st-free-text:var(--cs-green-dark);--st-occ-fill:var(--cs-grey-tint);--st-occ-edge:var(--cs-grey-light);--st-occ-text:var(--cs-grey-dark);--st-mine:#0fa0a8;--st-mine-fill:#dbf3f4;--st-mine-edge:#0fa0a8;--st-mine-text:#0a6f75;--st-sel-edge:var(--cs-blue);--st-lounge-fill:var(--cs-orange-bg);--st-lounge-edge:var(--cs-orange-tint);--st-lounge-text:var(--cs-orange-dark);--st-room-fill:var(--cs-blue-bg);--st-room-edge:var(--cs-blue-tint);--st-room-text:var(--cs-blue-dark);--st-info-fill:var(--cs-grey-bg);--st-info-edge:var(--cs-grey-tint);--st-info-text:var(--cs-grey-mid);--app-bg:var(--cs-grey-bg);--surface:var(--cs-white);--surface-line:var(--cs-grey-tint);--plan-bg:#fbfcfc;--plan-floor:#eff3f4;--plan-wall:#cfdade;--topbar:var(--cs-white);--chip-fill:var(--cs-white);--note-fill:var(--cs-orange-bg);--note-edge:var(--cs-orange);--note-text:var(--cs-navy);--note-label:var(--cs-orange-dark)}[data-theme=dark]{--fg-1:#dce7f2;--fg-2:#9fb1c2;--fg-brand:#76d4fa;--app-bg:#0e1822;--surface:#16242f;--surface-line:#284050;--plan-bg:#122029;--plan-floor:#1b2d38;--plan-wall:#2c4250;--topbar:#16242f;--chip-fill:#1d3340;--note-fill:#33241a;--note-edge:#c4692f;--note-text:#f6e2d4;--note-label:#f9ac85;--st-free-fill:#16403a;--st-free-edge:#39ac89;--st-free-text:#86dfc4;--st-occ-fill:#25333d;--st-occ-edge:#3a4e5b;--st-occ-text:#9fb1c2;--st-mine-fill:#0c3c40;--st-mine-edge:#1fb6be;--st-mine-text:#7fe3e8;--st-lounge-fill:#3a2519;--st-lounge-edge:#6e4429;--st-lounge-text:#f9ac85;--st-room-fill:#0e3247;--st-room-edge:#1e5876;--st-room-text:#76d4fa;--st-info-fill:#16242f;--st-info-edge:#2a3f4c;--st-info-text:#6e828f}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;overflow:hidden}#root{flex-direction:column;height:100%;display:flex}body{background:var(--app-bg);color:var(--fg-1);font-family:var(--font-sans);font-size:var(--fs-body);transition:background var(--duration-2) var(--ease), color var(--duration-2) var(--ease)}button{cursor:pointer;font-family:inherit}.u-sep{color:var(--fg-brand);padding:0 .3em;font-weight:700}.app{background:var(--app-bg);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.topbar{justify-content:space-between;align-items:center;gap:var(--sp-4);background:var(--topbar);border-bottom:1px solid var(--surface-line);z-index:40;padding:14px 24px;display:flex;position:sticky;top:0}.topbar .brand{align-items:baseline;gap:12px;min-width:0;display:flex}.topbar .wm{color:var(--cs-blue);letter-spacing:-.01em;white-space:nowrap;font-size:19px;font-weight:700}.topbar .app-name{color:var(--fg-1);white-space:nowrap;font-size:14px;font-weight:700}.topbar .right{align-items:center;gap:8px;display:flex}.tb-btn{height:36px;color:var(--fg-1);border:1px solid var(--surface-line);transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);background:0 0;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:700;line-height:1;display:inline-flex;position:relative}.tb-btn:hover{background:var(--cs-blue-bg)}[data-theme=dark] .tb-btn:hover{background:var(--chip-fill)}.tb-btn.active{background:var(--cs-blue);color:#fff;border-color:var(--cs-blue)}.tb-btn svg{width:16px;height:16px;display:block}.tb-btn .count{background:var(--cs-blue);color:#fff;text-align:center;min-width:18px;padding:1px 6px;font-size:11px;font-weight:700}.tb-btn.active .count{background:#ffffff40}.tb-icon{width:36px;padding:0}.controls{background:var(--surface);border-bottom:1px solid var(--surface-line);flex-wrap:wrap;align-items:flex-end;gap:24px 32px;padding:16px 24px;display:flex}@media (width>=861px) and (width<=1600px){.controls{column-gap:20px;padding-left:20px;padding-right:20px}}.ctrl-block{flex-direction:column;gap:8px;display:flex}.ctrl-label{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);font-size:10.5px;font-weight:700}.days{gap:6px;display:flex}.day{background:var(--chip-fill);border:1px solid var(--surface-line);min-width:58px;color:var(--fg-1);transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);flex-direction:column;align-items:center;gap:2px;padding:8px 6px;line-height:1.15;display:flex}.day:hover{border-color:var(--cs-blue-light)}.day .d-short{font-size:13px;font-weight:700}.day .d-date{color:var(--fg-2);font-size:11px}.day.active{background:var(--cs-blue);border-color:var(--cs-blue)}.day.active .d-short,.day.active .d-date{color:#fff}.segmented{border:1px solid var(--surface-line);align-self:stretch;width:fit-content;display:flex}.segmented button{color:var(--fg-1);background:var(--chip-fill);transition:background var(--duration-1) var(--ease), color var(--duration-1) var(--ease);border:none;flex:1;justify-content:center;align-items:center;padding:0 16px;font-size:13px;font-weight:700;line-height:1;display:flex}.segmented button+button{border-left:1px solid var(--surface-line)}.segmented button.active{background:var(--cs-blue);color:#fff}.slots{gap:6px;display:flex}.slot{background:var(--chip-fill);border:1px solid var(--surface-line);color:var(--fg-1);min-width:96px;transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);flex-direction:column;align-items:flex-start;gap:2px;padding:8px 13px;line-height:1.15;display:flex}.slot:hover{border-color:var(--cs-blue-light)}.slot .s-name{font-size:13px;font-weight:700}.slot .s-time{color:var(--fg-2);font-size:11px}.slot.active{background:var(--cs-blue);border-color:var(--cs-blue)}.slot.active .s-name,.slot.active .s-time{color:#fff}.timepick{align-items:center;gap:10px;display:flex}.timepick select{font-family:var(--font-sans);border:1px solid var(--surface-line);background:var(--chip-fill);color:var(--fg-1);padding:9px 12px;font-size:13px;font-weight:700}.timepick select:focus{outline:2px solid var(--cs-blue);outline-offset:0}.timepick .dash{color:var(--fg-2);font-weight:700}.counter{text-align:right;flex-direction:column;gap:2px;margin-left:auto;display:flex}.counter .big{color:var(--fg-brand);font-size:26px;font-weight:700;line-height:1}.counter .big.zero{color:var(--cs-orange)}.counter .big .of{color:var(--fg-2);font-size:.6em;font-weight:600}.counter .small{color:var(--fg-2);white-space:nowrap;font-size:12px}.legend{background:var(--surface);border-bottom:1px solid var(--surface-line);flex-wrap:wrap;gap:8px 20px;padding:11px 24px;display:flex}.lg-item{color:var(--fg-1);align-items:center;gap:7px;font-size:12px;display:flex}.lg-swatch{border:1px solid;flex:none;width:14px;height:14px}.lg-free{background:var(--st-free-fill);border-color:var(--st-free-edge)}.lg-occ{background:var(--st-occ-fill);border-color:var(--st-occ-edge)}.lg-mine{background:var(--st-mine-fill);border-color:var(--st-mine-edge)}.lg-lounge{background:var(--st-lounge-fill);border-color:var(--st-lounge-edge)}.lg-balcony{background:var(--cs-grey-bg);border:1px dashed var(--cs-grey-light)}.lg-room{background:var(--st-room-fill);border-color:var(--st-room-edge)}.lg-zoom{align-items:center;gap:4px;margin-left:auto;display:flex}.zoom-btn,.zoom-pct{border:1px solid var(--surface-line);background:var(--surface);height:26px;color:var(--fg-1);cursor:pointer;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.zoom-btn{width:26px;font-size:15px;line-height:1}.zoom-pct{font-variant-numeric:tabular-nums;min-width:54px;padding:0 8px}.zoom-btn:hover,.zoom-pct:hover{background:var(--cs-blue-bg);border-color:var(--cs-blue-light)}[data-theme=dark] .zoom-btn:hover,[data-theme=dark] .zoom-pct:hover{background:var(--chip-fill)}.main{flex:1;align-items:stretch;min-height:0;display:flex}.plan-wrap{background:var(--plan-bg);flex:1;justify-content:center;align-items:flex-start;min-width:0;padding:24px;display:flex;overflow:auto}.plan-inner,.fp-measure{width:100%}.fp-viewport{position:relative}@media (width>=861px){.fp-viewport{margin-inline:auto}}.floorplan{transform-origin:0 0;position:relative}.fp-underlay{pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}[data-theme=dark] .fp-underlay{filter:invert()hue-rotate(180deg)brightness(.9);opacity:.6}.room{border:1px solid var(--st-info-edge);background:var(--st-info-fill);color:var(--st-info-text);transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);flex-direction:column;padding:7px 8px;display:flex;position:absolute}.room.lounge{background:var(--st-lounge-fill);border-color:var(--st-lounge-edge);color:var(--st-lounge-text)}.room.reception{background:var(--st-info-fill);border-color:var(--border-mid);color:var(--st-info-text);padding:6px 4px}.room.reception .room-label{font-size:9px;line-height:1.1}.room.balcony{background:var(--cs-grey-bg);border-color:var(--cs-grey-light);color:var(--st-info-text);border-style:dashed}[data-theme=dark] .room.balcony{background:var(--app-bg);border-color:var(--cs-grey-mid)}.room.util{background:var(--cs-grey-bg);border-color:var(--cs-grey-light);color:var(--cs-grey-mid);text-align:center;justify-content:center;align-items:center;padding:2px 3px}.room.util .room-label{color:var(--cs-grey-mid);font-size:9.5px;font-weight:600;line-height:1.05}.room-lblbox{flex-direction:column;display:flex}[data-theme=dark] .room.util{background:var(--app-bg);border-color:var(--cs-grey-mid)}.room.zone{color:var(--cs-grey-mid);pointer-events:none;background:0 0;border:none;justify-content:flex-start;align-items:flex-start;padding:10px 12px}.room.zone .room-label{color:var(--cs-grey-mid);font-size:13px}.room.zone .room-sub{font-size:10px}.room-label{overflow-wrap:break-word;-webkit-hyphens:manual;hyphens:manual;font-size:11px;font-weight:700;line-height:1.1}.room-sub{opacity:.85;margin-top:1px;font-size:9.5px;line-height:1.1}.room.bookable{cursor:pointer;justify-content:space-between;align-items:stretch}.room.bookable.free{background:var(--st-room-fill);border-color:var(--st-room-edge);color:var(--st-room-text)}.room.bookable.free:hover{border-color:var(--cs-blue)}.room.bookable.occ{background:var(--st-occ-fill);border-color:var(--st-occ-edge);color:var(--st-occ-text);cursor:default}.room.bookable.mine{background:var(--st-mine-fill);border-color:var(--st-mine-edge);color:var(--st-mine-text);box-shadow:0 0 0 2px #0fa0a859}.room.bookable.selected{outline:3px solid var(--st-sel-edge);outline-offset:-1px;border-color:var(--st-sel-edge);z-index:5}.room-status{margin-top:auto;font-size:10px;font-weight:700;line-height:1.2}.room-occ-name{margin-top:auto;font-size:10px;font-weight:700}.room.stairs{background:repeating-linear-gradient(45deg, var(--st-info-fill), var(--st-info-fill) 7px, var(--plan-floor) 7px, var(--plan-floor) 14px)}.desks-room{padding:0;overflow:hidden}.desks-room .room-head{flex:none;padding:7px 9px 4px}.dock-grid{flex:1;gap:6px;min-height:0;padding:0 9px 9px;display:grid}.desk{border:1px solid var(--st-free-edge);background:var(--st-free-fill);color:var(--st-free-text);cursor:pointer;min-height:0;transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease), color var(--duration-1) var(--ease);justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex;position:relative;overflow:hidden}.desk:hover{border-color:var(--cs-blue)}.desk.occ{background:var(--st-occ-fill);border-color:var(--st-occ-edge);color:var(--st-occ-text);cursor:default;text-align:center;padding:2px;font-size:10px;font-weight:700;line-height:1.1}.desk.occ:hover{border-color:var(--st-occ-edge)}.desk.mine{background:var(--st-mine-fill);border-color:var(--st-mine-edge);color:var(--st-mine-text);z-index:4;box-shadow:0 0 0 2px #0fa0a859}.desk.selected{outline:3px solid var(--st-sel-edge);outline-offset:-1px;border-color:var(--st-sel-edge);z-index:6}.desk-person{flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;height:100%;padding:2px;display:flex;overflow:hidden}.desk-person-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:8.5px;font-weight:700;line-height:1.05;overflow:hidden}.room-person{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;max-width:100%;margin-top:auto;display:flex}.room-person-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:10px;font-weight:700;line-height:1.1;overflow:hidden}.panel{background:var(--surface);border-left:1px solid var(--surface-line);flex-direction:column;flex:none;width:340px;display:flex;overflow-y:auto}.panel-head{border-bottom:1px solid var(--surface-line);padding:20px 22px 16px}.panel-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);margin-bottom:6px;font-size:10.5px;font-weight:700}.panel-title{color:var(--fg-1);font-size:20px;font-weight:700;line-height:1.1}.panel-titlebrand{color:var(--fg-brand)}.panel-body{flex-direction:column;flex:1;gap:18px;padding:20px 22px;display:flex}.panel-empty{color:var(--fg-2);font-size:13.5px;line-height:1.5}.panel-empty .hint-box{border:1px solid var(--surface-line);color:var(--fg-2);background:var(--cs-blue-bg);margin-top:16px;padding:14px 16px;font-size:12.5px}[data-theme=dark] .panel-empty .hint-box{background:var(--chip-fill)}.detail-row{flex-direction:column;gap:3px;display:flex}.detail-row .dt{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-2);font-size:10.5px;font-weight:700}.detail-row .dd{color:var(--fg-1);font-size:15px;font-weight:700}.statusbox{border:1px solid;padding:13px 15px;font-size:13px;line-height:1.4}.statusbox.occ{background:var(--st-occ-fill);border-color:var(--st-occ-edge);color:var(--fg-1)}.statusbox.mine{background:var(--st-mine-fill);border-color:var(--st-mine-edge);color:var(--st-mine-text)}.statusbox .who{font-size:15px;font-weight:700}.statusbox .lbl{color:var(--fg-2);letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:700}.statusbox.mine .lbl{color:var(--st-mine-text);opacity:.85}.panel-foot{border-top:1px solid var(--surface-line);z-index:3;background:var(--surface);flex-direction:column;flex:none;gap:9px;padding:18px 22px;display:flex;position:sticky;bottom:0}.repeat-block{flex-direction:column;gap:8px;display:flex}.repeat-block .dt{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-2);font-size:10.5px;font-weight:700}.repeat-seg{width:100%}.repeat-seg button{flex:1;padding:9px 6px;font-size:12.5px}.repeat-hint{color:var(--fg-2);font-size:11.5px;line-height:1.4}.btn{text-align:center;transition:background var(--duration-1) var(--ease), color var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);border:1px solid #0000;width:100%;padding:13px 18px;font-size:14px;font-weight:700;line-height:1.1}.btn.primary{background:var(--cs-blue);color:#fff}.btn.primary:hover{background:var(--cs-blue-dark)}.btn.danger{background:var(--surface);color:var(--cs-pink);border-color:var(--cs-pink)}.btn.danger:hover{background:var(--cs-pink-bg)}[data-theme=dark] .btn.danger:hover{background:#3a1620}.btn.ghost{background:var(--surface);color:var(--fg-1);border-color:var(--surface-line)}.btn.ghost:hover{background:var(--chip-fill)}.btn:disabled{background:var(--cs-grey-tint);color:var(--cs-grey-mid);cursor:not-allowed;border-color:#0000}.panel-close{display:none}.toast-wrap{z-index:80;pointer-events:none;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--cs-navy);color:#fff;border-left:3px solid var(--cs-green);animation:toast-in var(--duration-2) var(--ease);align-items:center;gap:12px;padding:13px 20px;font-size:13.5px;font-weight:700;display:flex}[data-theme=dark] .toast{background:#1e3848}.toast.cancel{border-left-color:var(--cs-orange)}@keyframes toast-in{0%{opacity:0}to{opacity:1}}.mybook{background:var(--plan-bg);flex:1;padding:32px 24px;overflow-y:auto}.mybook-inner{max-width:760px;margin:0 auto}.mybook h1{font-size:var(--fs-h1);color:var(--fg-brand);margin:0 0 6px;font-weight:700}.mybook .lead{color:var(--fg-2);margin:0 0 28px;font-size:14px}.booking-list{flex-direction:column;gap:10px;display:flex}.booking-card{background:var(--surface);border:1px solid var(--surface-line);border-left:3px solid var(--st-mine);align-items:center;gap:18px;padding:16px 20px;display:flex}.bc-day{flex-direction:column;align-items:center;min-width:56px;display:flex}.bc-day .dn{color:var(--fg-1);font-size:18px;font-weight:700}.bc-day .dd{color:var(--fg-2);font-size:11px}.bc-main{flex:1;min-width:0}.bc-main .where{color:var(--fg-1);font-size:15px;font-weight:700}.bc-main .when{color:var(--fg-2);margin-top:2px;font-size:13px}.bc-actions{flex:none;gap:8px;display:flex}.bc-actions .btn{width:auto;padding:9px 15px;font-size:13px}.series-tag{letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--st-mine);vertical-align:middle;margin-left:8px;padding:2px 7px;font-size:9.5px;font-weight:700;display:inline-block}.mybook-empty{border:1px solid var(--surface-line);background:var(--surface);text-align:center;color:var(--fg-2);padding:40px 32px}.mybook-empty .t{color:var(--fg-1);margin-bottom:6px;font-size:16px;font-weight:700}.fullbanner{background:var(--cs-orange-bg);border:1px solid var(--cs-orange-tint);color:var(--cs-orange-dark);border-bottom:1px solid var(--cs-orange-tint);padding:11px 24px;font-size:13px;font-weight:700}[data-theme=dark] .fullbanner{color:#f9ac85;background:#2e1c12;border-color:#6e4429}.daynotes{background:var(--note-fill);border-bottom:1px solid var(--surface-line);border-left:3px solid var(--note-edge);flex-direction:column;gap:7px;padding:9px 24px 10px;display:flex}.daynotes-head{letter-spacing:.06em;text-transform:uppercase;color:var(--note-label);align-items:center;gap:12px;font-size:10.5px;font-weight:700;display:flex}.daynotes-add,.daynote-links button,.lg-note{cursor:pointer;color:var(--fg-brand);text-transform:none;letter-spacing:0;background:0 0;border:none;padding:0;font-size:12px;font-weight:700}.daynotes-add:hover,.daynote-links button:hover,.lg-note:hover{text-decoration:underline}.daynote{flex-direction:column;gap:2px;display:flex}.daynote+.daynote{border-top:1px dashed var(--note-edge);padding-top:7px}.daynote-text{color:var(--note-text);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.4}.daynote-meta{color:var(--fg-2);gap:12px;font-size:11px;display:flex}.daynote-links{gap:10px;display:flex}.daynote-editor{flex-direction:column;gap:6px;display:flex}.daynote-editor textarea{resize:vertical;width:100%;min-height:44px;font:inherit;border:1px solid var(--surface-line);background:var(--surface);color:var(--fg-1);padding:7px 9px;font-size:13px}.daynote-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.daynote-actions .btn{width:auto;padding:7px 14px;font-size:13px}.daynote-count{color:var(--fg-2);margin-right:auto;font-size:11px}.lg-note{margin-left:auto}.lg-note+.lg-zoom{margin-left:12px}.day{position:relative}.d-note-dot{background:var(--note-edge);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:5px}.day.active .d-note-dot{background:#fff}.mobile-hint{display:none}@media (width<=860px){.topbar .app-name{display:none}.counter{text-align:left;flex-direction:row;order:99;align-items:baseline;gap:8px;margin-left:0}.counter .big{font-size:22px}.legend{gap:7px 14px;padding:10px 16px}.daynotes{padding:8px 16px 9px}.main{flex-direction:column;display:flex}.plan-wrap{-webkit-overflow-scrolling:touch;justify-content:flex-start;padding:14px}.mobile-hint{color:var(--fg-2);background:var(--plan-bg);padding:0 16px 8px;font-size:11.5px;display:block}.panel{border-left:none;border-top:1px solid var(--surface-line);z-index:70;width:auto;max-height:78vh;animation:sheet-in var(--duration-2) var(--ease);position:fixed;inset:auto 0 0}.panel.idle{display:none}.panel-close{display:flex}.sheet-backdrop{z-index:65;animation:toast-in var(--duration-2) var(--ease);background:#0d1e2a73;position:fixed;inset:0}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.topbar .right{gap:6px}.tb-btn .tb-lbl{display:none}.tb-btn{width:40px;height:40px;padding:0}.tb-btn svg{width:20px;height:20px}.tb-btn .count{border:1.5px solid var(--topbar);border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 5px;display:flex;position:absolute;top:-5px;right:-5px}.legend{background:0 0;border-bottom:none;padding:0;display:flex}.legend .lg-item{display:none}.lg-zoom{padding:8px 14px 0}.controls{gap:10px 16px;padding:12px 16px}}@media (width<=520px){.topbar{padding:10px 14px}.topbar .wm{font-size:17px}.days{gap:4px}.day{flex:1;min-width:0;padding:7px 2px}.day .d-short{font-size:12px}.day .d-date{font-size:10px}.slots{flex-wrap:wrap;gap:4px}.slot{flex:1;min-width:0;padding:7px 8px}.overview-grid{grid-template-columns:1fr}.controls{gap:8px 12px;padding:10px 12px}.week-nav-label span,.counter{display:none}.bc-actions{flex-direction:column;align-items:stretch}.bc-actions .btn{padding:8px 12px}.panel{max-height:85vh}}.mobile-view-bar,.mobile-list-wrap{display:none}@media (width<=860px){.mobile-view-bar{border-bottom:1px solid var(--surface-line);background:var(--surface);gap:0;display:flex}.mobile-view-bar button{color:var(--fg-2);transition:color var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:10px 0;font-size:13px;font-weight:700}.mobile-view-bar button.active{color:var(--cs-blue);border-bottom-color:var(--cs-blue)}.plan-wrap.mobile-hidden{display:none}.mobile-list-wrap{background:var(--plan-bg);flex:1;display:block;overflow-y:auto}.mobile-list-wrap.mobile-hidden,.mobile-hint{display:none}}.mrl{padding:0 0 80px}.mrl-section{margin-bottom:4px}.mrl-section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);padding:14px 16px 6px;font-size:10.5px;font-weight:700}.mrl-item{border:none;border-bottom:1px solid var(--surface-line);background:var(--bg);text-align:left;cursor:pointer;width:100%;transition:background var(--duration-1) var(--ease);align-items:center;gap:12px;padding:13px 16px;display:flex}.mrl-item:active{background:var(--chip-fill)}.mrl-item-info{flex:1;min-width:0}.mrl-item-name{color:var(--fg-1);font-size:15px;font-weight:700}.mrl-item-sub{color:var(--fg-2);margin-top:1px;font-size:12px}.mrl-item-badge{white-space:nowrap;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:700}.mrl-item-free .mrl-item-badge{background:var(--st-free-fill);color:var(--st-free-text)}.mrl-item-occ .mrl-item-badge{background:var(--st-occ-fill);color:var(--st-occ-text)}.mrl-item-mine .mrl-item-badge{background:var(--st-mine-fill);color:var(--st-mine-text)}.mrl-desk-group{margin-bottom:2px}.mrl-dg-header{background:var(--chip-fill);border-bottom:1px solid var(--surface-line);justify-content:space-between;align-items:center;padding:10px 16px 6px;display:flex}.mrl-dg-name{color:var(--fg-1);font-size:13px;font-weight:700}.mrl-dg-count{color:var(--st-free-text);font-size:12px;font-weight:600}.mrl-dg-count.zero{color:var(--st-occ-text)}.mrl-desks{flex-direction:column;display:flex}.mrl-desk{border:none;border-bottom:1px solid var(--surface-line);background:var(--bg);cursor:pointer;transition:background var(--duration-1) var(--ease);justify-content:space-between;align-items:center;padding:11px 16px;display:flex}.mrl-desk:active{background:var(--chip-fill)}.mrl-desk-no{color:var(--fg-1);font-size:14px;font-weight:600}.mrl-desk-status{font-size:12px;font-weight:600}.mrl-desk-free .mrl-desk-status{color:var(--st-free-text)}.mrl-desk-occ .mrl-desk-status{color:var(--st-occ-text)}.mrl-desk-mine .mrl-desk-status{color:var(--cs-blue)}.page-scroll{background:var(--plan-bg);flex:1;min-height:0;padding:32px 24px;overflow-y:auto}.page-inner{max-width:1120px;margin:0 auto}.page-inner h1{font-size:var(--fs-h1);color:var(--fg-brand);margin:0 0 6px;font-weight:700}.page-inner .lead{color:var(--fg-2);max-width:620px;margin:0 0 28px;font-size:14px;line-height:1.5}.overview-grid{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.ov-day{background:var(--surface);border:1px solid var(--surface-line);flex-direction:column;display:flex}.ov-day.today{border-color:var(--cs-blue)}.ov-head{border:none;border-bottom:1px solid var(--surface-line);text-align:left;width:100%;color:inherit;background:0 0;justify-content:space-between;align-items:baseline;gap:8px;padding:12px 14px;display:flex}.ov-head.link{cursor:pointer}.ov-head.link:hover{background:var(--cs-blue-bg)}[data-theme=dark] .ov-head.link:hover{background:var(--chip-fill)}.ov-head:disabled{cursor:default}.ov-head .dname{color:var(--fg-1);font-size:14px;font-weight:700}.ov-head .ddate{color:var(--fg-2);font-size:11px}.ov-count{color:var(--fg-brand);background:var(--cs-blue-bg);border-bottom:1px solid var(--surface-line);padding:9px 14px;font-size:12px;font-weight:700}[data-theme=dark] .ov-count{background:var(--chip-fill)}.ov-count.full{color:var(--cs-orange);background:var(--cs-orange-bg)}[data-theme=dark] .ov-count.full{background:#2e1c12}.ov-list{flex-direction:column;padding:8px 0;display:flex}.ov-person{border-left:3px solid #0000;flex-direction:column;gap:1px;padding:6px 14px;display:flex}.ov-person.me{border-left-color:var(--st-mine);background:var(--st-mine-fill)}.ov-person .pn{color:var(--fg-1);font-size:12.5px;font-weight:700}.ov-person.me .pn{color:var(--st-mine-text)}.ov-person .pw{color:var(--fg-2);font-size:11px}.ov-empty{color:var(--fg-2);padding:14px;font-size:12px;font-style:normal}.ov-legend{color:var(--fg-2);align-items:center;gap:8px;margin-top:22px;font-size:12px;display:flex}.ov-legend .sw{background:var(--st-mine-fill);border-left:3px solid var(--st-mine);width:12px;height:12px}.ov-nav{flex-wrap:wrap;align-items:center;gap:14px 18px;margin-bottom:22px;display:flex}.ov-seg{flex:none}.ov-stepper{align-items:center;gap:6px;display:flex}.ov-step{width:34px;height:34px;color:var(--fg-1);background:var(--chip-fill);border:1px solid var(--surface-line);transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);flex:none;font-size:18px;font-weight:700;line-height:1}.ov-step:hover{border-color:var(--cs-blue-light);background:var(--cs-blue-bg)}[data-theme=dark] .ov-step:hover{background:var(--chip-fill)}.ov-navlabel{color:var(--fg-1);text-align:center;min-width:188px;font-size:15px;font-weight:700}.ov-today{width:auto;padding:8px 16px;font-size:13px}.cal{border:1px solid var(--surface-line);background:var(--surface)}.cal-head{grid-template-columns:repeat(7,1fr);display:grid}.cal-hcell{letter-spacing:.07em;text-transform:uppercase;color:var(--fg-2);border-bottom:1px solid var(--surface-line);padding:11px 14px;font-size:11px;font-weight:700}.cal-hcell.we{color:var(--cs-grey-mid)}.cal-body{flex-direction:column;display:flex}.cal-row{grid-template-columns:repeat(7,1fr);display:grid}.cal-cell{text-align:left;background:var(--surface);min-height:92px;color:var(--fg-1);border-top:1px solid var(--surface-line);border-left:1px solid var(--surface-line);transition:background var(--duration-1) var(--ease);flex-direction:column;gap:10px;padding:10px 12px 12px;display:flex}.cal-cell:nth-child(7n+1){border-left:none}.cal-cell:not(:disabled){cursor:pointer}.cal-cell:not(:disabled):hover{background:var(--cs-blue-bg)}[data-theme=dark] .cal-cell:not(:disabled):hover{background:var(--chip-fill)}.cal-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.cal-dnum{font-size:15px;font-weight:700;line-height:1}.cal-today{letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--cs-blue);padding:2px 6px;font-size:9.5px;font-weight:700}.cal-meta{flex-direction:column;gap:6px;margin-top:auto;display:flex}.cal-count{color:var(--fg-1);font-size:18px;font-weight:700;line-height:1}.cal-count .cal-of{color:var(--fg-2);font-size:11px;font-weight:700}.cal-bar{background:var(--cs-grey-tint);height:5px;overflow:hidden}.cal-bar-fill{background:var(--cs-blue);height:100%;display:block}.cal-we-lbl{color:var(--cs-grey-mid);margin-top:auto;font-size:11px;font-weight:700}.cal-cell.out{background:var(--app-bg)}.cal-cell.out .cal-dnum{color:var(--cs-grey-mid);opacity:.55}.cal-cell.weekend{background:var(--cs-grey-bg);color:var(--cs-grey-mid);cursor:default}[data-theme=dark] .cal-cell.weekend{background:var(--app-bg)}.cal-cell.full .cal-count{color:var(--cs-orange-dark)}.cal-cell.full .cal-bar-fill{background:var(--cs-orange)}[data-theme=dark] .cal-cell.full .cal-count{color:#f9ac85}.cal-cell.today{box-shadow:inset 0 0 0 2px var(--cs-blue)}.cal-cell.today .cal-dnum{color:var(--cs-blue)}[data-theme=dark] .cal-cell.today .cal-dnum{color:var(--fg-brand)}.cal-scale{border-top:1px solid var(--surface-line);color:var(--fg-2);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;font-size:11.5px;font-weight:700;display:flex}.cal-scale .cs-lbl{color:var(--fg-1)}.cal-scale .cs-track{background:linear-gradient(90deg, var(--cs-grey-tint), var(--cs-blue));width:120px;height:6px}.cal-scale .cs-min,.cal-scale .cs-max{font-weight:400}.cal-scale .cs-full-key{align-items:center;gap:6px;margin-left:auto;display:flex}.cal-scale .cs-full-key .sw{background:var(--cs-orange);width:12px;height:6px}.settings{max-width:640px}.set-section{background:var(--surface);border:1px solid var(--surface-line);margin-bottom:16px;padding:22px 24px}.set-section h2{font-size:var(--fs-h3);color:var(--fg-1);margin:0 0 4px;font-weight:700}.set-section .desc{color:var(--fg-2);margin:0 0 18px;font-size:12.5px;line-height:1.45}.set-time-row{border-top:1px solid var(--surface-line);align-items:center;gap:14px;padding:12px 0;display:flex}.set-time-row:first-of-type{border-top:none}.set-time-row .stl{flex:1}.set-time-row .stl .t{color:var(--fg-1);font-size:14px;font-weight:700}.set-time-row .stl .s{color:var(--fg-2);font-size:11.5px}.set-time-row .pick{align-items:center;gap:8px;display:flex}.set-time-row select{font-family:var(--font-sans);border:1px solid var(--surface-line);background:var(--chip-fill);color:var(--fg-1);padding:9px 11px;font-size:13px;font-weight:700}.set-time-row select:focus{outline:2px solid var(--cs-blue);outline-offset:0}.set-time-row select:disabled{opacity:.55}.set-time-row .dash{color:var(--fg-2);font-weight:700}.set-field{flex-direction:column;gap:6px;display:flex}.set-field label{color:var(--fg-1);font-size:12px;font-weight:700}.set-field input{font-family:var(--font-sans);border:1px solid var(--surface-line);background:var(--chip-fill);color:var(--fg-1);padding:11px 13px;font-size:14px}.set-field input:focus{outline:2px solid var(--cs-blue);outline-offset:0}.set-radio{flex-wrap:wrap;gap:8px;display:flex}.set-radio button{border:1px solid var(--surface-line);background:var(--chip-fill);color:var(--fg-1);padding:9px 15px;font-size:13px;font-weight:700}.set-radio button.active{background:var(--cs-blue);color:#fff;border-color:var(--cs-blue)}.set-foot{align-items:center;gap:10px;display:flex}.set-foot .btn{width:auto;padding:12px 22px}.set-saved{color:var(--cs-green-dark);opacity:0;transition:opacity var(--duration-2) var(--ease);font-size:13px;font-weight:700}[data-theme=dark] .set-saved{color:var(--cs-green-light)}.set-saved.show{opacity:1}.week-nav{align-items:center;gap:4px;display:flex}.week-nav-btn{width:30px;height:30px;color:var(--fg-1);background:var(--chip-fill);border:1px solid var(--surface-line);transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);justify-content:center;align-items:center;font-size:18px;font-weight:700;line-height:1;display:flex}.week-nav-btn:hover{border-color:var(--cs-blue-light);background:var(--cs-blue-bg)}[data-theme=dark] .week-nav-btn:hover{background:var(--chip-fill)}.week-nav-label{color:var(--fg-1);background:var(--chip-fill);border:1px solid var(--surface-line);height:30px;transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);align-items:center;gap:6px;padding:6px 11px;font-size:13px;font-weight:700;display:flex}.week-nav-label:hover{border-color:var(--cs-blue-light);background:var(--cs-blue-bg)}[data-theme=dark] .week-nav-label:hover{background:var(--chip-fill)}.week-nav-today{color:var(--cs-blue);background:var(--cs-blue-bg);border:1px solid var(--cs-blue-tint);height:30px;transition:background var(--duration-1) var(--ease);padding:6px 11px;font-size:12px;font-weight:700}.week-nav-today:hover{background:var(--cs-blue-tint)}[data-theme=dark] .week-nav-today{background:var(--chip-fill);color:var(--fg-brand);border-color:var(--surface-line)}.day.today-day:not(.active){border-color:var(--cs-blue-light)}.day.today-day:not(.active) .d-short{color:var(--cs-blue)}.week-picker{z-index:50;background:var(--surface);border:1px solid var(--surface-line);min-width:242px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 4px 16px #0000001a}[data-theme=dark] .week-picker{box-shadow:0 4px 16px #00000059}.wp-nav{border-bottom:1px solid var(--surface-line);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.wp-nav-btn{width:28px;height:28px;color:var(--fg-1);transition:color var(--duration-1) var(--ease);background:0 0;border:none;font-size:17px;font-weight:700;line-height:1}.wp-nav-btn:hover{color:var(--cs-blue)}.wp-nav-label{color:var(--fg-1);font-size:13px;font-weight:700}.wp-head{grid-template-columns:repeat(7,1fr);padding:4px 6px 0;display:grid}.wp-hcell{text-transform:uppercase;letter-spacing:.05em;color:var(--fg-2);text-align:center;padding:4px 0;font-size:10px;font-weight:700}.wp-row{width:100%;transition:background var(--duration-1) var(--ease);background:0 0;border:none;grid-template-columns:repeat(7,1fr);gap:1px;padding:2px 6px;display:grid}.wp-row:hover{background:var(--cs-blue-bg)}[data-theme=dark] .wp-row:hover{background:var(--chip-fill)}.wp-row.active{background:var(--cs-blue)}.wp-row.active .wp-cell{color:#fff}.wp-row.active .wp-cell.out{opacity:.5}.wp-cell{color:var(--fg-1);text-align:center;padding:5px 2px;font-size:12px;font-weight:700;line-height:1}.wp-cell.out{color:var(--fg-2);opacity:.45}.wp-cell.we{color:var(--cs-grey-mid)}.modal-overlay{z-index:100;background:#0d1e2a80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}[data-theme=dark] .modal-overlay{background:#000000a6}.modal{background:var(--surface);width:100%;max-width:500px;max-height:90vh;animation:toast-in var(--duration-2) var(--ease);flex-direction:column;display:flex}.modal-head{border-bottom:1px solid var(--surface-line);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.modal-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);margin-bottom:4px;font-size:10.5px;font-weight:700}.modal-title{color:var(--fg-1);font-size:18px;font-weight:700;line-height:1.1}.modal-body{flex-direction:column;flex:1;gap:0;padding:20px;display:flex;overflow-y:auto}.modal-section{border-bottom:1px solid var(--surface-line);margin-bottom:18px;padding-bottom:18px}.modal-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.modal-sec-head{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);margin-bottom:12px;font-size:10.5px;font-weight:700}.modal-field-row{color:var(--fg-1);flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:700;display:flex}.modal-num{font-family:var(--font-sans);text-align:center;border:1px solid var(--surface-line);background:var(--chip-fill);width:68px;color:var(--fg-1);padding:7px 10px;font-size:14px;font-weight:700}.modal-num:focus{outline:2px solid var(--cs-blue);outline-offset:0}.modal-date-input{font-family:var(--font-sans);border:1px solid var(--surface-line);background:var(--chip-fill);color:var(--fg-1);padding:7px 10px;font-size:13px;font-weight:700}.modal-date-input:focus{outline:2px solid var(--cs-blue);outline-offset:0}.modal-date-input:disabled,.modal-num:disabled{opacity:.45}.day-checks{flex-wrap:wrap;gap:5px;display:flex}.day-check{text-align:center;background:var(--chip-fill);border:1px solid var(--surface-line);min-width:42px;color:var(--fg-1);transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease), color var(--duration-1) var(--ease);padding:8px 11px;font-size:13px;font-weight:700}.day-check:hover{border-color:var(--cs-blue-light)}.day-check.active{background:var(--cs-blue);border-color:var(--cs-blue);color:#fff}.rec-range{flex-direction:column;gap:10px;display:flex}.rec-radio-row{color:var(--fg-1);cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:700;display:flex}.rec-radio-row input[type=radio]{accent-color:var(--cs-blue);cursor:pointer;flex:none;width:15px;height:15px}.rec-preview{background:var(--cs-blue-bg);border:1px solid var(--cs-blue-tint);color:var(--fg-1);margin-top:18px;padding:12px 14px;font-size:13px}[data-theme=dark] .rec-preview{background:var(--chip-fill);border-color:var(--surface-line)}.rec-preview-count{color:var(--fg-brand);font-size:22px;font-weight:700}.rec-preview-label{font-weight:700}.rec-preview-range{color:var(--fg-2);font-weight:400}.rec-set-box{background:var(--cs-blue-bg);border:1px solid var(--cs-blue-tint);padding:12px 14px}[data-theme=dark] .rec-set-box{background:var(--chip-fill);border-color:var(--surface-line)}.rec-set-summary{color:var(--fg-1);font-size:12.5px;font-weight:700;line-height:1.4}.modal-foot{border-top:1px solid var(--surface-line);align-items:center;gap:9px;padding:14px 20px;display:flex}.user-avatar-btn{overflow:hidden;border-radius:50%!important;width:34px!important;height:34px!important;padding:4px!important}.user-avatar-img{object-fit:cover;border-radius:50%;width:26px;height:26px;display:block}.user-avatar-initials{background:var(--cs-blue);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:10px;font-weight:700;display:flex}@keyframes indeterminate{0%{transform:translate(-100%)scaleX(.5)}50%{transform:translate(60%)scaleX(1.2)}to{transform:translate(200%)scaleX(.5)}}.confirm-backdrop{z-index:10000;background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.confirm-card{background:var(--card,var(--surface));color:var(--fg-1);border:1px solid var(--border,var(--surface-line));text-align:center;border-radius:16px;width:100%;max-width:420px;padding:28px 28px 22px;box-shadow:0 12px 40px #00000040}.confirm-icon{margin-bottom:8px;font-size:30px}.confirm-title{color:var(--fg-1);margin:0 0 10px;font-size:18px;font-weight:700}.confirm-text{color:var(--fg-2);margin:0 0 12px;font-size:13.5px;line-height:1.5}.confirm-list{text-align:left;background:var(--st-mine-fill);border:1px solid var(--st-mine-edge);color:var(--st-mine-text);border-radius:10px;flex-direction:column;gap:6px;margin:0 0 14px;padding:12px 14px;font-size:13px;list-style:none;display:flex}.confirm-actions{gap:10px;display:flex}.confirm-actions .btn{flex:1}:root{--st-pend-fill:#fff3dd;--st-pend-edge:#e7b75a;--st-pend-text:#8a5a00}[data-theme=dark]{--st-pend-fill:#3a2e12;--st-pend-edge:#7a5f22;--st-pend-text:#e7c179}.desk.pending,.room.bookable.pending{background:var(--st-pend-fill)!important;border:1.5px dashed var(--st-pend-edge)!important;color:var(--st-pend-text)!important;box-shadow:none!important}.room-att-badge{background:var(--cs-blue);color:#fff;vertical-align:middle;border-radius:8px;margin-left:6px;padding:1px 5px;font-size:9px;font-weight:700;display:inline-block}.statusbox.pending{background:var(--st-pend-fill);border-color:var(--st-pend-edge);color:var(--st-pend-text)}.statusbox.pending .lbl{color:var(--st-pend-text);opacity:.85}.forwho-block{flex-direction:column;gap:8px;display:flex}.forwho-block>.dt{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-2);font-size:10.5px;font-weight:700}.forwho-seg{width:100%}.forwho-seg button{flex:1;padding:9px 8px;font-size:12.5px}.forwho-hint{color:var(--fg-2);font-size:11.5px;line-height:1.4}.ppick{flex-direction:column;gap:8px;display:flex;position:relative}.ppick-chips{flex-wrap:wrap;gap:6px;display:flex}.ppick-chip{background:var(--cs-blue-bg);color:var(--fg-1);border:1px solid var(--st-room-edge);border-radius:14px;align-items:center;gap:6px;padding:4px 6px 4px 10px;font-size:12px;font-weight:600;display:inline-flex}[data-theme=dark] .ppick-chip{background:var(--chip-fill);border-color:var(--surface-line)}.ppick-chip button{color:inherit;cursor:pointer;background:#00000014;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:13px;line-height:1;display:flex}.ppick-chip button:hover{background:var(--cs-pink);color:#fff}.ppick-input{border:1px solid var(--surface-line);background:var(--chip-fill);width:100%;color:var(--fg-1);padding:9px 12px;font-family:inherit;font-size:13px}.ppick-input:focus{border-color:var(--cs-blue);outline:none}.ppick-results{z-index:50;background:var(--surface);border:1px solid var(--surface-line);max-height:240px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000024}.ppick-empty{color:var(--fg-2);padding:12px 14px;font-size:12.5px}.ppick-opt{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:1px;width:100%;padding:9px 14px;font-family:inherit;display:flex}.ppick-opt+.ppick-opt{border-top:1px solid var(--surface-line)}.ppick-opt:hover{background:var(--cs-blue-bg)}[data-theme=dark] .ppick-opt:hover{background:var(--chip-fill)}.ppick-opt-name{color:var(--fg-1);font-size:13.5px;font-weight:600}.ppick-opt-mail{color:var(--fg-2);font-size:11px}.attendee-box{flex-direction:column;gap:8px;display:flex}.attendee-box>.dt{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-2);font-size:10.5px;font-weight:700}.attendee-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.att{border:1px solid var(--surface-line);background:var(--chip-fill);justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;font-size:13px;display:flex}.att-name{color:var(--fg-1);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.att-status{flex:none;font-size:11px;font-weight:700}.att.att-confirmed .att-status{color:var(--st-mine)}.att.att-declined .att-status{color:var(--cs-pink)}.att.att-pending .att-status{color:var(--st-pend-text)}.foot-actions{gap:10px;display:flex}.foot-actions .btn{flex:1}.btn.danger.ghost{background:var(--surface);color:var(--cs-pink);border-color:var(--surface-line)}.btn.danger.ghost:hover{background:var(--cs-pink-bg)}[data-theme=dark] .btn.danger.ghost:hover{background:#3a1620}.pending-section{margin-bottom:22px}.pending-head{letter-spacing:.04em;text-transform:uppercase;color:var(--st-pend-text);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.pending-count{background:var(--st-pend-edge);color:#3a2600;border-radius:9px;padding:1px 7px;font-size:11px}.booking-card.pending{border-color:var(--st-pend-edge);background:var(--st-pend-fill)}.pending-tag{letter-spacing:.05em;text-transform:uppercase;color:var(--st-pend-text);background:var(--st-pend-edge);vertical-align:middle;margin-left:8px;padding:2px 7px;font-size:9.5px;font-weight:700;display:inline-block}.booking-card.pending .pending-tag{color:var(--st-pend-text);background:#0000001f}.ov-person.tentative{opacity:.72}.ov-person.tentative .pn{font-style:italic}.ctrl-presence{justify-content:flex-end}.presence-cta{background:var(--chip-fill);color:var(--fg-1);border:1px solid var(--surface-line);cursor:pointer;white-space:nowrap;transition:background var(--duration-1) var(--ease), border-color var(--duration-1) var(--ease);align-items:center;gap:8px;padding:9px 15px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.presence-cta svg{flex:none;width:17px;height:17px}.presence-cta:hover{border-color:var(--cs-blue-light)}.presence-cta.active{background:var(--cs-blue);border-color:var(--cs-blue);color:#fff}.counter-present{color:var(--cs-blue);font-weight:700}.counter-present.has-people{cursor:help;text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;position:relative}.counter-present.has-people:focus-visible{outline:2px solid var(--cs-blue);outline-offset:3px;border-radius:3px}.people-tip{z-index:60;background:var(--surface);min-width:250px;max-width:320px;color:var(--fg-1);border:1px solid var(--surface-line);text-align:left;white-space:normal;border-radius:7px;flex-direction:column;gap:7px;padding:11px 13px;font-weight:400;display:none;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 2px 6px #00000017,0 14px 32px -12px #00000059}.counter-present.has-people:hover .people-tip,.counter-present.has-people:focus .people-tip,.counter-present.has-people:focus-within .people-tip{display:flex}.pt-head{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-2);border-bottom:1px solid var(--surface-line);padding-bottom:6px;font-size:10.5px;font-weight:700}.pt-list{flex-direction:column;gap:5px;max-height:min(320px,45vh);display:flex;overflow-y:auto}.pt-row{flex-direction:column;gap:1px;display:flex}.pt-row.me .pt-name{color:var(--cs-blue)}.pt-name{font-size:13px;font-weight:600;line-height:1.3}.pt-where{color:var(--fg-2);font-size:11.5px;line-height:1.3}.pt-more{color:var(--fg-2);margin-top:2px;font-size:11.5px;font-style:italic}@media (width<=520px){.people-tip{min-width:210px;max-width:calc(100vw - 32px);left:0;right:auto}}.bc-title{color:var(--fg-1);margin-top:2px;font-size:13.5px;font-style:italic;font-weight:600}.bc-note{color:var(--note-text);background:var(--note-fill);border-left:3px solid var(--note-edge);white-space:pre-wrap;border-radius:0 4px 4px 0;margin-top:7px;padding:7px 10px;font-size:13.5px;line-height:1.45}.bc-note:before{content:"Anmerkung";letter-spacing:.07em;text-transform:uppercase;color:var(--note-label);margin-bottom:2px;font-size:9.5px;font-weight:700;display:block}.booking-note{color:var(--note-text);background:var(--note-fill);border-left:3px solid var(--note-edge);white-space:pre-wrap;border-radius:0 4px 4px 0;padding:9px 12px;font-size:14.5px;font-weight:500;line-height:1.5}.detail-row .booking-note{margin-top:2px}.edit-hint{color:var(--fg-2);margin-top:7px;font-size:12px;line-height:1.45}.edit-warn{color:var(--note-text);background:var(--note-fill);border-left:3px solid var(--note-edge);border-radius:0 4px 4px 0;margin-top:8px;padding:7px 10px;font-size:12.5px;line-height:1.45}.confirm-choices{flex-direction:column;gap:8px;margin-top:4px;display:flex}.confirm-choices .btn{width:100%}.confirm-choices .confirm-cancel{opacity:.8;margin-top:2px}.edit-fixed{color:var(--fg-1);font-size:14px;font-weight:600}.edit-fixed span{color:var(--fg-2);margin-top:2px;font-size:12px;font-weight:400;display:block}.booking-note-input{resize:vertical;min-height:60px;line-height:1.4}textarea.ppick-input{font-family:inherit}@media (width<=860px){.ctrl-presence{order:98;align-items:flex-start}.panel-foot{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}.ppick-results{max-height:200px}}@media (width<=520px){.ppick-input,.timepick select,.booking-note-input{font-size:16px}.ppick-opt-name{font-size:15px}.panel{max-height:88vh}.panel-body{gap:14px;padding:16px}.panel-foot{padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px))}.panel-foot .btn{padding:13px 16px;font-size:15px}.ctrl-presence{width:100%}.presence-cta{justify-content:center;width:100%;padding:12px}.forwho-seg button{padding:9px 6px;font-size:12px;line-height:1.15}}.user-menu-wrap{position:relative}.user-menu-backdrop{z-index:60;position:fixed;inset:0}.user-menu{z-index:61;background:var(--surface);border:1px solid var(--surface-line);min-width:232px;animation:toast-in var(--duration-2) var(--ease);padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 28px #00000029}.user-menu-head{border-bottom:1px solid var(--surface-line);margin-bottom:4px;padding:10px 12px}.um-name{color:var(--fg-1);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.um-mail{color:var(--fg-2);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.um-admin,.admin-badge{letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--cs-blue);border-radius:10px;padding:2px 7px;font-size:9.5px;font-weight:700}.admin-badge{vertical-align:middle;margin-left:6px}.user-menu-item{text-align:left;width:100%;color:var(--fg-1);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:13.5px;font-weight:600;display:flex}.user-menu-item svg{flex:none;width:17px;height:17px}.user-menu-item:hover{background:var(--cs-blue-bg)}[data-theme=dark] .user-menu-item:hover{background:var(--chip-fill)}.user-menu-item.danger{color:var(--cs-pink)}.user-menu-item.danger:hover{background:var(--cs-pink-bg)}[data-theme=dark] .user-menu-item.danger:hover{background:#3a1620}.set-toggle{color:var(--fg-1);cursor:pointer;align-items:center;gap:10px;font-size:14px;font-weight:600;display:inline-flex}.set-toggle input{width:18px;height:18px;accent-color:var(--cs-blue);cursor:pointer}.panel-slots{flex-wrap:wrap;gap:6px;display:flex}.panel-slots .slot{text-align:center;flex:30%;align-items:center;min-width:0;padding:8px 10px}.panel-slots .slot .s-name{font-size:12px}.panel-slots .slot .s-time{font-size:10px}.panel-timepick{flex-wrap:wrap}.panel-timepick select{flex:auto;min-width:0}.controls-toggle{display:none}@media (width<=860px){.controls{gap:10px 16px}.controls-toggle{cursor:pointer;background:0 0;border:none;order:-1;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:0;padding:2px 2px 4px;font-family:inherit;display:flex}.ct-summary{color:var(--fg-1);text-align:left;font-size:12.5px;font-weight:700;line-height:1.3}.ct-caret{color:var(--cs-blue);white-space:nowrap;flex:none;font-size:12px;font-weight:700}.controls:not(.expanded) .ctrl-collapsible,.counter{display:none}}.controls .segmented{height:46px}.controls .slots .slot{justify-content:center;height:46px}.controls .timepick{align-items:center;min-height:46px}
