:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--booking-glass-base:#ffffff80;--booking-glass-base-weight:25%;--calendar-crystal-hover-base-weight:40%;--booking-glass-blue:#2585ff80;--booking-glass-purple:#955dff80;--calendar-crystal-yellow:#ffb92880;--calendar-crystal-red:#ff486880;--surface-calendar-maintenance:color-mix(in srgb, var(--booking-glass-base) var(--booking-glass-base-weight), var(--calendar-crystal-yellow));--surface-calendar-disabled:color-mix(in srgb, var(--booking-glass-base) var(--booking-glass-base-weight), var(--calendar-crystal-red));--surface-booking-own:color-mix(in srgb, var(--booking-glass-base) var(--booking-glass-base-weight), var(--booking-glass-blue));--surface-booking-own-hover:color-mix(in srgb, var(--surface-booking-own) var(--calendar-crystal-hover-base-weight), var(--booking-glass-blue));--text-booking-own:#173d9c;--border-booking-own:#7296e8;--surface-booking-other:color-mix(in srgb, var(--booking-glass-base) 65%, var(--booking-glass-blue));--surface-booking-other-hover:color-mix(in srgb, var(--surface-booking-other) 80%, var(--booking-glass-blue));--surface-machine-own:color-mix(in srgb, var(--booking-glass-base) var(--booking-glass-base-weight), var(--booking-glass-purple));--surface-machine-own-hover:color-mix(in srgb, var(--surface-machine-own) var(--calendar-crystal-hover-base-weight), var(--booking-glass-purple));--text-machine-own:#3f287f;--border-machine-own:#9580d0;--surface-machine-other:color-mix(in srgb, var(--booking-glass-base) 65%, var(--booking-glass-purple));--surface-machine-other-hover:color-mix(in srgb, var(--surface-machine-other) 80%, var(--booking-glass-purple));--booking-glass-highlight:#fff9}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--booking-glass-base:#00000080;--booking-glass-base-weight:80%;--calendar-crystal-hover-base-weight:80%;--surface-booking-other:#354f73c7;--surface-booking-other-hover:#3d5b82d1;--surface-machine-other:#53426fc7;--surface-machine-other-hover:#604d7fd1;--ink:#e5e7eb;--muted:#a1a8b5;--line:#3b424f;--line-strong:#69768a;--panel:#1a1d24;--soft:#242832;--blue:#3565d1;--blue-dark:#2c57ba;--blue-soft:#22334f;--cyan:#76d1e2;--green:#8bdab2;--green-soft:#193c2e;--orange:#f2c181;--orange-soft:#3c2e1e;--red:#ffacb5;--red-soft:#452931;--navy:#121720;--shadow:0 1px 2px #0004, 0 10px 30px #0003;--surface-page:#111318;--surface-panel:#1a1d24;--surface-raised:#242832;--surface-hover:#2c3340;--surface-input:#171a21;--surface-disabled:#252a33;--surface-inverse:#111925;--text-primary:#e5e7eb;--text-secondary:#a1a8b5;--text-muted:#a1a8b5;--text-disabled:#a1a8b5;--text-accent:#a8c5ff;--text-on-accent:#fff;--border-subtle:#3b424f;--border-control:#69768a;--border-focus:#8fb1ff;--focus-ring:#8fb1ff;--surface-accent:#22334f;--surface-accent-hover:#2c4163;--border-accent:#769dde;--surface-success:#193c2e;--surface-success-hover:#234936;--text-success:#9fe2ba;--border-success:#63b98a;--surface-warning:#3c2e1e;--surface-warning-hover:#4a3823;--surface-warning-stripe-hover:#5a4229;--text-warning:#f2c181;--border-warning:#bf945c;--surface-danger:#452931;--surface-danger-hover:#54303b;--surface-danger-stripe-hover:#633a47;--text-danger:#ffb6c0;--border-danger:#d17e8b;--surface-purple:#342d4f;--surface-purple-hover:#453764;--text-purple:#d5c2ff;--border-purple:#a38bcf;--surface-info:#183c45;--surface-info-hover:#214b54;--text-info:#98dce7;--border-info:#66adbf;--fill-accent:#3565d1;--fill-accent-hover:#2c57ba;--fill-danger:#a53047;--fill-danger-hover:#89283b;--fill-success:#236644;--fill-warning:#805720;--fill-purple:#654394;--fill-info:#246071;--marker-accent:#91aeea;--marker-accent-strong:#c1d4ff;--marker-purple:#b4a1e3;--marker-purple-strong:#dfd0ff;--marker-success:#9fe2ba;--marker-warning:#f2c181;--marker-warning-soft:#ffe0b5;--marker-danger:#ff899b;--marker-danger-soft:pink;--marker-info:#98dce7;--text-booking-own:#bbd4ff;--border-booking-own:#769dde;--text-machine-own:#dfcfff;--border-machine-own:#a38bcf;--booking-glass-highlight:#c9dfff26;--event-detail-opacity:1;--readable-detail-opacity:1;--shadow-color:#0005;--overlay-backdrop:#0009;--overlay-disabled:#252a3394;--overlay-past:#9aa8bb14;--overlay-grid:#9aa8bb20}.display-preferences{flex:none;align-items:center;gap:8px;display:inline-flex}.display-preferences .theme-switcher.compact .language-switcher-trigger{width:42px;min-width:42px;padding-inline:10px}.preference-menu .language-switcher-option-code{place-items:center;display:grid}.preference-menu .language-switcher-popover{z-index:160}@media (width<=820px){.display-preferences{gap:6px}.display-preferences .language-switcher-current,.display-preferences .language-switcher-chevron{display:none}.display-preferences .locale-switcher .language-switcher-code{display:inline}.display-preferences .language-switcher-trigger{min-width:42px;padding-inline:10px}.auth-page-tools{flex-wrap:wrap;gap:8px}}:root{--font-ui:Inter, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;font-family:var(--font-ui);color:var(--text-primary,#172033);background:var(--surface-page,#f4f5f7);font-synthesis:none;--ink:#172033;--muted:#70798b;--line:#e1e4e9;--line-strong:#d2d7df;--panel:#fff;--soft:#f7f8fa;--blue:#2558d9;--blue-dark:#1947bd;--blue-soft:#eaf0ff;--cyan:#28b9c8;--green:#19875b;--green-soft:#e9f7f0;--orange:#d97020;--orange-soft:#fff2e7;--red:#c74343;--red-soft:#fdeeee;--navy:#111a2d;--shadow:0 1px 2px #1018280a, 0 10px 30px #1018280d;scrollbar-color:var(--border-control,#aeb7c6) transparent}*{box-sizing:border-box}::-webkit-scrollbar{background:0 0}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}@supports not (scrollbar-color:auto){::-webkit-scrollbar-thumb{background:var(--border-control,#aeb7c6);border-radius:999px}}.lucide,.mouse-control-icon{flex:none}html{background:var(--surface-page,#f4f5f7)}body{min-width:1180px;min-height:100vh;margin:0}button,input,textarea,select{font-family:var(--font-ui)}button{font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit}input,textarea,select{letter-spacing:normal;font-size:13px;font-weight:400}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--focus-ring,#2558d92e);outline-offset:1px}a{color:inherit;text-decoration:none}.boot-shell{text-align:center;place-content:center;min-height:100vh;display:grid}.boot-mark{width:54px;height:54px;color:var(--text-on-accent,white);background:var(--blue);box-shadow:0 12px 28px var(--shadow-color,#2558d93d);border-radius:15px;place-items:center;margin:0 auto 18px;font-weight:800;display:grid}.boot-shell h1{margin:0;font-size:28px}.boot-shell p{color:var(--muted)}.auth-page{background:var(--surface-page,#f6f7f9);grid-template-columns:repeat(2,minmax(510px,1fr));height:100dvh;min-height:100dvh;display:grid;overflow:hidden}.auth-story{min-height:0;color:var(--text-primary,#f6f8fd);background:var(--navy);flex-direction:column;padding:48px;display:flex;position:relative;overflow:hidden}.auth-story:before,.auth-story:after{content:"";border:1px solid var(--border-subtle,#ffffff12);border-radius:50%;position:absolute}.auth-story:before{width:560px;height:560px;top:110px;right:-350px}.auth-story:after{width:360px;height:360px;top:210px;right:-230px}.brand-lockup{letter-spacing:-.02em;align-items:center;gap:11px;font-size:18px;font-weight:700;display:flex}.auth-brand{z-index:1;color:var(--text-on-accent,white);letter-spacing:-.03em;gap:13px;font-size:20px;position:relative}.auth-brand .brand-icon{border-radius:11px;width:42px;height:42px}.auth-intro{z-index:1;max-width:380px;margin:auto 0;position:relative}.auth-intro h1{letter-spacing:-.04em;margin:0 0 14px;font-size:34px;line-height:1.25}.auth-intro p{max-width:350px;color:var(--text-secondary,#aeb9cb);margin:0;font-size:15px;line-height:1.75}.brand-icon,.mini-mark{width:35px;height:35px;color:var(--text-on-accent,white);background:var(--blue);border-radius:10px;place-items:center;display:grid}.eyebrow{color:var(--text-accent,#86a7ff);letter-spacing:.15em;font-size:11px;font-weight:700;display:block}.eyebrow.dark{color:var(--text-accent,var(--blue))}.auth-panel{overscroll-behavior:contain;scrollbar-gutter:stable;justify-content:center;align-items:flex-start;min-width:0;height:100%;min-height:0;padding:48px clamp(32px,4vw,56px);display:flex;overflow-y:auto}.auth-filings{z-index:1;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px 16px;display:flex;position:relative}.auth-panel-content{flex-direction:column;flex:none;gap:18px;width:min(440px,100%);margin:auto 0;display:flex}.auth-page-tools{justify-content:flex-end;align-items:center;gap:14px;min-height:38px;display:flex}.auth-card{border:1px solid var(--line);background:var(--surface-panel,white);width:100%;box-shadow:0 24px 80px var(--shadow-color,#161f3214);flex:none;padding:38px 42px}.auth-docs-link{color:var(--text-secondary,#667085);align-items:center;gap:6px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.auth-icp-link{color:var(--text-secondary,#aeb9cb);font-size:12px;text-decoration:none}.auth-public-security-link{color:var(--text-secondary,#aeb9cb);align-items:center;gap:5px;font-size:12px;text-decoration:none;display:inline-flex}.auth-public-security-link img{flex:0 0 20px;width:20px;height:20px}.auth-icp-link:hover,.auth-public-security-link:hover{color:var(--text-on-accent,white)}.auth-docs-link:hover{color:var(--text-accent,#2457e6)}.auth-card-head{align-items:center;gap:14px;margin-bottom:28px;display:flex}.auth-card-head h2{letter-spacing:-.03em;margin:0;font-size:26px}.auth-tabs{width:100%;margin-bottom:24px}.stack-form{flex-direction:column;gap:16px;display:flex}.field{min-width:0;color:var(--text-primary,#3f4859);flex-direction:column;gap:7px;font-size:12px;font-weight:600;display:flex}.field>span,.field>label,.registration-field>label{display:block}.field small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.5}input,textarea,select{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:var(--surface-input,white);border-radius:7px;transition:border-color .15s,box-shadow .15s}input,select{height:39px;padding:0 11px}.password-input-control{width:100%}.password-input-shell{width:100%;position:relative}.password-input-shell input{padding-right:43px}.password-input-shell input::-ms-reveal{width:0;height:0;display:none}.password-input-shell input::-ms-clear{width:0;height:0;display:none}.password-visibility-button{width:31px;height:31px;color:var(--text-secondary,#758095);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-visibility-button:hover{color:var(--text-accent,var(--blue));background:var(--blue-soft)}.password-visibility-button:focus-visible{outline:3px solid var(--focus-ring,#2558d92e);outline-offset:0}.registration-field input:disabled{color:var(--text-disabled,#929aaa);background:var(--surface-disabled,#f1f3f6);cursor:not-allowed}textarea{resize:vertical;padding:10px 11px;line-height:1.5}input:focus,textarea:focus,select:focus{border-color:var(--border-focus,#8da9ec);box-shadow:0 0 0 3px var(--focus-ring,#2558d914);outline:none}.password-input-shell:focus-within input{border-color:var(--border-focus,#8da9ec);box-shadow:0 0 0 3px var(--focus-ring,#2558d914)}.registration-field.has-error input,.auth-field.has-error input,.field.has-error input,.field.has-error textarea{border-color:var(--border-danger,#d98989);box-shadow:0 0 0 3px var(--shadow-color,#b53e3e12)}.field-inline-error{color:var(--text-danger,#9b4141)!important;font-size:10px!important;font-weight:550!important;line-height:1.4!important}.field-bubble{border:1px solid var(--border-accent,#bfd0f5);color:var(--text-accent,#31549d);background:var(--surface-accent,#f2f6ff);border-radius:7px;margin-top:2px;padding:9px 11px;font-size:11px;font-weight:500;line-height:1.5;position:relative}.field-bubble:before{content:"";border-top:1px solid var(--border-accent,#bfd0f5);border-left:1px solid var(--border-accent,#bfd0f5);background:inherit;width:8px;height:8px;position:absolute;top:-5px;left:15px;transform:rotate(45deg)}.field-bubble.error{border-color:var(--border-danger,#e2aaaa);color:var(--text-danger,#913f3f);background:var(--surface-raised,#fff3f3)}.field-bubble.error:before{border-color:var(--border-danger,#e2aaaa)}.field-bubble.warning{border-color:var(--border-warning,#e1c28f);color:var(--text-warning,#8a561e);background:var(--surface-warning,#fff8e9)}.field-bubble.warning:before{border-color:var(--border-warning,#e1c28f)}.field-bubble.form-feedback{margin-top:0}.field-bubble.form-feedback:before{display:none}.field-bubble ul{margin:0;padding:0;list-style:none}.field-bubble:not(.password-checklist) ul{gap:3px;display:grid}.password-checklist ul{grid-template-columns:minmax(0,1fr);gap:5px;display:grid}.password-checklist li{align-items:center;gap:6px;min-width:0;display:flex}.password-checklist li svg,.password-checklist .check-dot{flex:none}.password-checklist li.passed{color:var(--text-success,#28734b)}.password-checklist li.failed{color:var(--text-danger,#a33e3e)}.field-bubble.hint.password-checklist li.failed,.password-checklist li.pending{color:var(--text-secondary,#6f7d91)}.check-dot{opacity:.65;border:1px solid;border-radius:50%;width:8px;height:8px}input::placeholder,textarea::placeholder{color:var(--text-disabled,#a7afbd)}.primary-button,.secondary-button,.danger-button{cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 15px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.primary-button{border:1px solid var(--blue);color:var(--text-on-accent,white);background:var(--blue)}.primary-button:hover{border-color:var(--blue-dark);background:var(--blue-dark)}.primary-button:active,.secondary-button:active,.danger-button:active{transform:translateY(1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.45}.secondary-button{border:1px solid var(--line-strong);color:var(--text-primary,#354052);background:var(--surface-panel,white)}.secondary-button:hover{border-color:var(--border-control,#aab4c2);background:var(--surface-hover,#f8f9fb)}.danger-button{border:1px solid var(--border-danger,#b94b4b);color:var(--text-on-accent,white);background:var(--fill-danger,#b94b4b)}.danger-button:hover{border-color:var(--border-danger,#983939);background:var(--fill-danger-hover,#983939)}.secondary-button.accent{color:var(--text-accent,var(--blue));border-color:var(--border-accent,#aabff1);background:var(--blue-soft)}.secondary-button.compact{min-height:32px;padding:0 10px;font-size:12px}.primary-button.wide,.secondary-button.wide{width:100%}.auth-submit{min-height:44px;margin-top:2px}.text-button,.text-action{color:var(--text-accent,var(--blue));cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.text-action.danger,.icon-button.danger{color:var(--red)}.auth-alt{margin:17px auto 0;display:block}.auth-register-entry{border-top:1px solid var(--line);gap:10px;margin-top:24px;padding-top:20px;display:grid}.auth-register-entry>span{color:var(--muted);text-align:center;font-size:11px}.inline-message{border:1px solid var(--border-accent,#c8d6f5);color:var(--text-accent,#2f539f);background:var(--surface-accent,#f0f4fd);border-radius:7px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;line-height:1.5;display:flex}.inline-message.error{border-color:var(--border-danger,#ecc5c5);color:var(--text-danger,#934242);background:var(--surface-danger,#fff2f2)}.registration-success{text-align:center;justify-items:center;gap:20px;padding:12px 0 2px;display:grid}.registration-success p{color:var(--muted);margin:0 0 4px;font-size:14px}.success-mark{width:54px;height:54px;color:var(--text-success,#26734a);background:var(--surface-success,#eaf7ef);border-radius:50%;place-items:center;display:grid}.segmented{border:1px solid var(--line);background:var(--surface-raised,#f2f4f7);border-radius:8px;gap:2px;padding:3px;display:inline-flex}.segmented button{min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0 13px;font-size:12px;font-weight:600}.segmented button.active{color:var(--ink);background:var(--surface-panel,white);box-shadow:0 1px 3px var(--shadow-color,#1018281f)}.segmented button:disabled{cursor:not-allowed;opacity:.42}.spin{animation:1s linear infinite spin}.busy-button-content{place-items:center;display:inline-grid;position:relative}.busy-button-label,.busy-button-spinner{grid-area:1/1}.busy-button-label.hidden{visibility:hidden}.busy-button-spinner{place-items:center;display:grid}@keyframes spin{to{transform:rotate(360deg)}}.app-frame{--app-topbar-height:64px;--app-password-banner-height:0px;--app-maintenance-banner-height:0px;--app-banner-height:calc(var(--app-password-banner-height) + var(--app-maintenance-banner-height));--app-header-height:calc(var(--app-topbar-height) + var(--app-banner-height));min-height:100dvh}.app-frame.has-password-banner{--app-password-banner-height:36px}.app-frame.has-maintenance-banner{--app-maintenance-banner-height:36px}.system-maintenance-banner{z-index:29;top:var(--app-topbar-height);height:var(--app-maintenance-banner-height);border-bottom:1px solid var(--border-warning,#edd2b4);color:var(--text-warning,#885021);background:var(--surface-warning,#fff5e9);grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:8px;padding:4px 28px;font-size:12px;display:grid;position:sticky}.system-maintenance-banner-copy{grid-column:2;justify-self:center;align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.system-maintenance-banner-copy>svg{flex-shrink:0}.system-maintenance-banner-copy>span{white-space:nowrap;text-overflow:ellipsis;text-align:center;min-width:0;overflow:hidden}.system-maintenance-banner>button{width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;grid-column:3;place-items:center;padding:0;display:grid}.system-maintenance-banner>button:hover{background:var(--surface-warning-hover,#fae9d2)}.topbar{z-index:30;height:var(--app-topbar-height);border-bottom:1px solid var(--line);background:var(--surface-panel,#fffffff7);grid-template-columns:240px 1fr 240px;align-items:center;padding:0 28px;display:grid;position:sticky;top:0}.topbar .brand-icon{width:33px;height:33px}.main-nav{justify-content:center;gap:4px;height:100%;display:flex}.main-nav button{height:100%;color:var(--text-secondary,#667084);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 17px;font-size:13px;font-weight:600;display:flex;position:relative}.main-nav button:after{content:"";background:0 0;height:2px;position:absolute;bottom:0;left:16px;right:16px}.main-nav button.active{color:var(--text-accent,var(--blue))}.main-nav button.active:after{background:var(--blue)}.topbar-user{justify-self:end;position:relative}.topbar-actions{justify-self:end;align-items:center;gap:8px;display:flex}.topbar-user-trigger{min-width:188px;min-height:46px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:9px;padding:5px 8px;display:flex}.topbar-user-trigger:hover,.topbar-user-trigger.open{border-color:var(--line);background:var(--surface-hover,#f7f8fa)}.topbar-user-copy{text-align:left;flex-direction:column;flex:1;align-items:flex-start;min-width:86px;display:flex}.topbar-user-copy strong{font-size:12px}.topbar-user-copy small{color:var(--muted);font-size:10px}.topbar-user-trigger>svg{color:var(--muted);transition:transform .16s}.topbar-user-trigger.open>svg{transform:rotate(180deg)}.topbar-avatar-wrap{flex:none;display:inline-flex;position:relative}.notification-avatar-badge{color:var(--text-on-accent,#fff);background:var(--fill-danger,#dc3545);font-variant-numeric:tabular-nums;border:2px solid var(--border-subtle,#fff);min-width:18px;height:18px;box-shadow:0 1px 3px var(--shadow-color,#89121f2e);border-radius:999px;justify-content:center;align-items:center;padding:0 4px;font-size:9px;font-weight:750;line-height:1;display:inline-flex;position:absolute;top:-5px;right:-8px}.topbar-user-menu{z-index:80;border:1px solid var(--line);background:var(--surface-raised,#fff);width:188px;box-shadow:0 12px 30px var(--shadow-color,#1e293b24);border-radius:10px;gap:2px;padding:6px;animation:.14s ease-out ui-popover-in;display:grid;position:absolute;top:calc(100% + 7px);right:0}.topbar-user-menu button,.topbar-user-menu>a{min-height:36px;color:var(--text-primary,#465166);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:0 10px;font-size:12px;text-decoration:none;display:flex}.topbar-user-menu button:hover,.topbar-user-menu button.active,.topbar-user-menu>a:hover,.topbar-user-menu>a.active{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#eef3ff)}.notification-menu-indicator{min-width:18px;height:18px;color:var(--text-on-accent,#fff);background:var(--fill-danger,#dc3545);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.avatar{width:34px;height:34px;color:var(--text-accent,#1947bd);background:var(--surface-accent,#e4ebfc);border-radius:10px;place-items:center;font-weight:700;display:grid}.avatar.small{border-radius:8px;width:32px;height:32px;font-size:12px}.icon-button{width:34px;height:34px;color:var(--text-secondary,#657084);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;padding:0;display:inline-grid}.icon-button:hover{border-color:var(--line);background:var(--surface-hover,#f5f6f8)}.icon-button.tiny{width:27px;height:27px}.password-banner{z-index:29;top:calc(var(--app-topbar-height) + var(--app-maintenance-banner-height));height:var(--app-password-banner-height);border-bottom:1px solid var(--border-warning,#edd2b4);color:var(--text-warning,#885021);background:var(--surface-warning,#fff5e9);justify-content:center;align-items:center;gap:8px;padding:7px 28px;font-size:12px;display:flex;position:sticky}.password-banner button{color:var(--text-warning,#a24e0b);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.password-banner>svg{flex-shrink:0}.app-content{min-height:calc(100vh - var(--app-header-height));min-height:calc(100dvh - var(--app-header-height))}.calendar-layout{height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));grid-template-columns:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.calendar-layout.composer-open{grid-template-columns:minmax(760px,1fr) 356px}.calendar-main{flex-direction:column;min-width:0;min-height:0;padding:28px 26px;display:flex}.booking-drawer{overscroll-behavior:contain;border-left:1px solid var(--line);background:var(--surface-panel,#fbfbfc);min-height:0;padding:26px 24px 40px;overflow-y:auto}.page-header{flex:none;justify-content:space-between;align-items:center;gap:24px;min-height:39px;margin-bottom:22px;display:flex}.page-header h1{letter-spacing:-.035em;white-space:nowrap;margin:0;font-size:29px;line-height:1.2}.page-header-title-group{align-items:center;gap:18px;min-width:0;display:flex}.page-header-actions{justify-content:flex-end;align-items:center;min-width:0;display:flex}.live-state{color:var(--green);white-space:nowrap;align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.live-state span{background:var(--marker-success,#29a972);width:7px;height:7px;box-shadow:0 0 0 4px var(--shadow-color,#e5f6ee);border-radius:50%}.live-state.connecting,.live-state.refreshing{color:var(--text-secondary,#6a7485)}.live-state.connecting span,.live-state.refreshing span{background:var(--text-secondary,#8490a2);box-shadow:0 0 0 4px var(--shadow-color,#eef0f3)}.live-state.disconnected{color:var(--text-warning,#a45b24)}.live-state.disconnected span{background:var(--marker-warning,#d9823f);box-shadow:0 0 0 4px var(--shadow-color,#fff0e3)}.calendar-header-actions{align-items:center;gap:8px;display:flex}.calendar-utility-row{-webkit-user-select:none;user-select:none;flex:none;justify-content:space-between;align-items:center;gap:18px;min-height:32px;margin:-10px 0 12px;display:flex}.calendar-title-status{align-items:center;gap:13px;min-width:0;display:flex}.server-clock{color:var(--text-secondary,#627087);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-size:12px;display:inline-flex}.server-clock strong{color:var(--text-primary,#26344a);font-size:13px;font-weight:650}.server-clock>i{background:var(--surface-raised,#d5dbe5);width:1px;height:12px;margin:0 2px}.time-zone-toggle{border:1px solid var(--border-control,#d5dce8);min-width:48px;height:26px;color:var(--text-secondary,#5d6b80);background:var(--surface-panel,#fff);font:inherit;cursor:pointer;border-radius:999px;padding:0 10px;font-size:11px;font-weight:650;line-height:1;transition:border-color .16s,background-color .16s,color .16s,box-shadow .16s}.time-zone-toggle:hover{border-color:var(--border-accent,#aebcda);color:var(--text-accent,var(--blue));background:var(--surface-hover,#f5f7ff)}.time-zone-toggle.active{border-color:var(--border-accent,#9caee2);color:var(--text-accent,#3154ae);background:var(--surface-accent,#eaf0ff);box-shadow:inset 0 0 0 1px var(--shadow-color,#4162b414)}.time-zone-toggle:focus-visible{outline:2px solid var(--focus-ring,#3b5bb347);outline-offset:2px}@media (prefers-reduced-motion:reduce){.time-zone-toggle{transition:none}}.server-clock.synchronizing{color:var(--text-secondary,#8a94a6)}.server-clock.synchronizing strong{color:inherit}.calendar-wheel-hint{border:1px solid var(--border-subtle,#dce2eb);height:32px;color:var(--text-secondary,#536177);background:var(--surface-raised,#f8f9fb);white-space:nowrap;border-radius:7px;align-items:center;gap:6px;padding:0 10px;font-size:10px;font-style:normal;font-weight:550;display:inline-flex}.calendar-wheel-hint>span{align-items:center;gap:4px;display:inline-flex}.calendar-hint-combination{align-items:center;gap:1px;display:inline-flex}.calendar-wheel-hint b{color:var(--text-secondary,#99a3b3);margin:0 1px;font-weight:500}.calendar-wheel-hint svg{color:var(--text-accent,#3d67bf);flex:none}.calendar-wheel-hint .mouse-control-accent{fill:var(--text-accent,#2f6ff2)}.calendar-wheel-hint>i{background:var(--border-control,#d9dfe8);flex:0 0 1px;width:1px;height:11px}.calendar-wheel-hint kbd{border:1px solid var(--border-subtle,#d4dae4);border-bottom-color:var(--border-subtle,#bdc5d1);min-width:25px;color:var(--text-secondary,#4e5a6e);background:var(--surface-panel,white);box-shadow:0 1px 0 var(--shadow-color,#e3e7ed);border-radius:4px;padding:1px 4px;font-family:inherit;font-size:9px;font-weight:700;line-height:1.2}.calendar-main>.page-header{gap:12px;margin-bottom:22px}.calendar-main>.page-header .page-header-title-group{gap:14px}.calendar-main>.page-header,.calendar-main>.toolbar{-webkit-user-select:none;user-select:none}.calendar-main input,.calendar-main textarea{-webkit-user-select:text;user-select:text}.toolbar{border:1px solid var(--line);background:var(--surface-panel,white);border-bottom:0;flex:none;align-items:center;gap:6px;min-height:54px;padding:8px;display:flex}.toolbar-group{flex:none;align-items:center;gap:2px;display:flex}.date-button{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;min-width:124px;height:34px;padding:0 5px;font-size:12px;font-weight:600;display:flex}.calendar-date-control{flex:none;position:relative}.calendar-date-field{width:100%;min-width:0}.calendar-date-field>.select-control-trigger{grid-template-columns:16px minmax(0,1fr) 14px;font-size:13px;font-weight:400}.calendar-date-field>.select-control-trigger>svg:first-child{color:var(--muted)}.calendar-date-field>.select-control-trigger[aria-expanded=true]{border-color:var(--border-accent,#8ca8e8);box-shadow:0 0 0 3px var(--focus-ring,#2558d91a)}.calendar-date-field>.select-control-trigger[aria-expanded=true] .select-control-chevron{transform:rotate(180deg)}.calendar-date-field .calendar-date-footer{border-top:1px solid var(--line);gap:6px;margin-top:8px;padding-top:8px;display:flex}.calendar-date-field .calendar-date-footer .calendar-date-today{color:var(--text-secondary,#536075);white-space:nowrap;background:0 0;flex:1 0 auto;justify-content:center;align-items:center;gap:5px;width:auto;margin-top:0;padding-inline:5px;font-size:11px;display:flex}.calendar-date-field .calendar-date-footer .calendar-date-today:hover,.calendar-date-field .calendar-date-footer .calendar-date-today:focus-visible,.calendar-date-field .calendar-date-footer .calendar-date-today[aria-pressed=true]{color:var(--text-accent,var(--blue));background:var(--surface-accent,var(--blue-soft))}.calendar-date-popover{z-index:100;border:1px solid var(--border-subtle,#d8deea);background:var(--surface-raised,white);width:276px;box-shadow:0 14px 38px var(--shadow-color,#1b27402e);border-radius:10px;padding:10px;animation:.14s ease-out ui-popover-in;position:absolute;top:calc(100% + 8px);left:0}.calendar-date-popover-head{grid-template-columns:30px 1fr 30px;align-items:center;height:34px;display:grid}.calendar-date-popover-head strong{text-align:center;font-size:12px}.calendar-date-popover-head button,.calendar-date-grid button{color:var(--text-secondary,#536075);font:inherit;cursor:pointer;background:0 0;border:0}.calendar-date-popover-head button{border-radius:6px;place-items:center;width:30px;height:30px;display:grid}.calendar-date-popover-head button:hover,.calendar-date-popover-head button:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#eef3ff)}.calendar-date-weekdays,.calendar-date-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-date-weekdays{margin:4px 0 3px}.calendar-date-weekdays span{min-width:0;color:var(--text-secondary,#8a93a3);text-align:center;white-space:nowrap;font-size:9px}.calendar-date-grid{gap:2px}.calendar-date-grid button{font-variant-numeric:tabular-nums;border-radius:6px;justify-self:center;width:32px;height:30px;font-size:10px}.calendar-date-grid button:hover,.calendar-date-grid button:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#edf2ff)}.calendar-date-grid button.outside{color:var(--text-secondary,#b3bac6)}.calendar-date-grid button.today{box-shadow:inset 0 0 0 1px var(--border-accent,#9ab2eb)}.calendar-date-grid button.selected{color:var(--text-on-accent,white);background:var(--blue);box-shadow:none;font-weight:700}.calendar-date-today{width:100%;height:30px;color:var(--text-accent,var(--blue));background:var(--surface-accent,#eef3ff);cursor:pointer;border:0;border-radius:6px;margin-top:7px;font-size:10px;font-weight:650}.calendar-date-today:hover,.calendar-date-today:focus-visible{background:var(--surface-accent-hover,#e2eaff)}.toolbar .search-box{flex:130px;min-width:80px;margin-left:0}.calendar-resource-finder{border:1px solid var(--line);min-width:220px;height:35px;color:var(--text-secondary,#8a93a4);background:var(--surface-panel,#fafbfc);border-radius:7px;flex:280px;align-items:center;gap:7px;padding:0 8px 0 10px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.calendar-resource-finder.open,.calendar-resource-finder:focus-within{border-color:var(--border-focus,#9db3e9);background:var(--surface-panel,white);box-shadow:0 0 0 3px var(--focus-ring,#2558d91a)}.calendar-resource-finder>svg{color:var(--text-secondary,#7b8799);flex:none}.calendar-resource-finder.open>svg,.calendar-resource-finder:focus-within>svg{color:var(--text-accent,var(--blue))}.calendar-resource-finder input{min-width:0;height:auto;box-shadow:none;background:0 0;border:0;flex:1;padding:0}.calendar-resource-finder input:focus{outline:none}.calendar-resource-finder-clear{width:24px;height:24px;color:var(--text-secondary,#7d8798);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.calendar-resource-finder-clear:hover,.calendar-resource-finder-clear:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#eaf0ff);outline:none}.calendar-resource-finder-menu{z-index:220;overscroll-behavior:contain;border:1px solid var(--border-subtle,#dce2ec);color:var(--ink);background:var(--surface-raised,#fffffffc);box-shadow:0 18px 46px var(--shadow-color,#18243a2e), 0 2px 8px var(--shadow-color,#18243a0f);scrollbar-width:thin;scrollbar-color:var(--border-control,#c8d0dc) transparent;border-radius:12px;animation:.14s ease-out ui-popover-in;position:fixed;overflow:hidden auto}.calendar-resource-finder-menu:not([style]){visibility:hidden}.calendar-resource-finder-menu.up{animation-name:ui-select-popover-up}.calendar-resource-finder-machine+.calendar-resource-finder-machine{border-top:1px solid var(--border-subtle,#e8ebf1)}.calendar-resource-finder-machine-option,.calendar-resource-finder-group-option{width:100%;color:var(--text-primary,#3e4a5e);text-align:left;cursor:pointer;border:0}.calendar-resource-finder-machine-option{background:var(--surface-panel,white);grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;min-height:44px;padding:5px 10px;display:grid}.calendar-resource-finder-group-option{min-height:36px;color:var(--text-secondary,#667187);background:var(--surface-panel,#fafbfc);grid-template-columns:18px 15px minmax(0,1fr);align-items:center;gap:6px;padding:4px 10px;display:grid}.calendar-resource-finder-machine-option:hover,.calendar-resource-finder-machine-option.active,.calendar-resource-finder-group-option:hover,.calendar-resource-finder-group-option.active{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#f1f5ff);outline:none}.calendar-resource-finder-machine-icon{width:28px;height:28px;color:var(--text-accent,var(--blue));background:var(--surface-accent,#eaf0ff);border-radius:8px;place-items:center;display:grid}.calendar-resource-finder-group-option>svg{color:var(--text-secondary,#7a8aa4)}.calendar-resource-finder-copy{align-items:center;min-width:0;display:flex;position:relative}.calendar-resource-finder-result-title,.calendar-resource-finder-result-address,.calendar-resource-finder-result-tags,.calendar-resource-finder-result-resource{text-overflow:ellipsis;white-space:nowrap;flex:none;min-width:0;overflow:hidden}.calendar-resource-finder-result-title{color:var(--text-primary,#344055);font-size:12.5px;line-height:1.25}.calendar-resource-finder-result-address,.calendar-resource-finder-result-resource{color:var(--text-secondary,#7f899a);font-size:10.5px;line-height:1.25}.calendar-resource-finder-result-tags{color:var(--text-secondary,#4c6fbf);font-size:10.5px;font-style:normal;line-height:1.25}.calendar-resource-finder-result-resource{text-align:right;margin-left:auto}.calendar-resource-finder-measure{visibility:hidden;white-space:nowrap;pointer-events:none;width:max-content;height:0;position:absolute;overflow:hidden}.calendar-resource-finder-measure>*{flex:none;width:max-content;max-width:none;margin:0;display:inline-block}.calendar-resource-finder-measure strong{font-size:12.5px;line-height:1.25}.calendar-resource-finder-measure small,.calendar-resource-finder-measure em{font-size:10.5px;line-height:1.25}.calendar-resource-finder-empty{min-height:112px;color:var(--text-secondary,#7d8798);justify-content:center;align-items:center;gap:8px;padding:20px;font-size:12px;display:flex}.toolbar .segmented,.toolbar>.secondary-button{flex:none}.toolbar .segmented{padding:2px}.toolbar .segmented button{min-height:29px;padding:0 8px;font-size:11px}.toolbar .reservation-mode button{padding:0 7px}.calendar-day-control.hidden{visibility:hidden;pointer-events:none}.toolbar>.secondary-button{white-space:nowrap;gap:5px;min-height:35px;padding:0 9px;font-size:12px}.search-box{border:1px solid var(--line);height:35px;color:var(--text-secondary,#8a93a4);background:var(--surface-panel,#fafbfc);border-radius:7px;align-items:center;gap:7px;padding:0 10px;display:flex}.search-box input{min-width:0;height:auto;box-shadow:none;background:0 0;border:0;flex:1;padding:0}.search-clear-button{width:24px;height:24px;color:var(--text-secondary,#7d8798);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.search-clear-button:hover,.search-clear-button:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#eaf0ff);outline:none}.toolbar .select-control{flex:0 0 106px;width:106px}.timeline-zoom-control{border:1px solid var(--line);background:var(--surface-panel,#fafbfc);border-radius:7px;flex:none;grid-template-columns:26px 32px 26px;align-items:center;height:35px;display:inline-grid;overflow:hidden}.timeline-zoom-control button{height:33px;color:var(--text-secondary,#657086);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.timeline-zoom-control button:hover:not(:disabled),.timeline-zoom-control button:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#edf2ff)}.timeline-zoom-control button:disabled{color:var(--text-disabled,#c3c9d3);cursor:default}.timeline-zoom-control span{color:var(--text-secondary,#4f5a6d);text-align:center;white-space:nowrap;font-size:10px;font-weight:700}.timeline-scroll-frame{border:1px solid var(--line);background:var(--surface-panel,white);min-height:0;box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;flex-direction:column;flex:auto;display:flex;overflow:hidden}.calendar-zoom-guide{z-index:95;border:1px solid var(--line);background:var(--surface-raised,white);width:min(300px,100vw - 24px);box-shadow:0 8px 26px var(--shadow-color,#1d2a442e);color:var(--text-secondary,#657086);pointer-events:none;border-radius:9px;align-items:center;gap:8px;padding:10px;font-size:12px;line-height:1.5;display:flex;position:fixed}.calendar-zoom-guide-arrow{left:calc(var(--guide-arrow-left) - 5px);background:inherit;width:9px;height:9px;position:absolute;transform:rotate(45deg)}.calendar-zoom-guide.above .calendar-zoom-guide-arrow{border-right:1px solid var(--line);border-bottom:1px solid var(--line);bottom:-5px}.calendar-zoom-guide.below .calendar-zoom-guide-arrow{border-left:1px solid var(--line);border-top:1px solid var(--line);top:-5px}.calendar-zoom-guide>svg{flex-shrink:0}.calendar-zoom-guide>span{flex:1;min-width:0}.calendar-zoom-guide button{pointer-events:auto;height:28px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:0 0 28px;place-items:center;padding:0;display:grid}.calendar-zoom-guide button:hover,.calendar-zoom-guide button:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#edf2ff)}.calendar-panel-state,.calendar-empty-state{flex:auto;min-width:0;min-height:0}.calendar-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:36px 24px;display:flex;overflow:hidden}.calendar-empty-state-icon{width:54px;height:54px;color:var(--text-accent,var(--blue));background:var(--surface-accent,#edf2ff);border-radius:16px;place-items:center;display:grid}.calendar-empty-state h3{color:var(--ink);margin:16px 0 0;font-size:17px}.calendar-empty-state p{max-width:440px;color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.6}.calendar-empty-state .secondary-button{width:auto;min-height:36px;margin-top:18px;padding:0 14px}.timeline-scroll-shell{overscroll-behavior:contain;scrollbar-width:thin;background:var(--surface-panel,white);flex:auto;min-height:0;overflow:hidden auto;container-type:inline-size}.timeline-scroll-shell::-webkit-scrollbar{width:7px;height:7px}.timeline-scroll-shell::-webkit-scrollbar-track{background:0 0}.timeline-scroll-shell::-webkit-scrollbar-thumb{background:var(--border-subtle,#c7ceda);border-radius:999px}.timeline-scroll-shell::-webkit-scrollbar-thumb:hover{background:var(--surface-hover,#aeb7c6)}.timeline-horizontal-scroll-row{border-top:1px solid var(--border-subtle,#eef0f4);background:var(--surface-panel,#fafbfc);flex:0 0 11px;height:11px;margin-left:260px}.timeline-horizontal-scroll{scrollbar-width:thin;width:100%;height:11px;overflow:auto hidden}.timeline-horizontal-scroll>div{height:1px}.timeline-horizontal-scroll>div.week{width:max(100%,490px)}.timeline-horizontal-scroll::-webkit-scrollbar{height:7px}.timeline-horizontal-scroll::-webkit-scrollbar-track{background:0 0}.timeline-horizontal-scroll::-webkit-scrollbar-thumb{background:var(--border-subtle,#aeb7c6);border-radius:999px}.timeline-horizontal-scroll::-webkit-scrollbar-thumb:hover{background:var(--surface-hover,#929cad)}.timeline-card{background:var(--surface-panel,white);min-width:0;position:relative}.timeline-card.week{min-width:750px}.machine-strip .calendar-machine-name{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.machine-strip.calendar-search-highlight{background:var(--surface-accent,#eaf1ff);box-shadow:inset 3px 0 0 var(--blue)}.timeline-row.calendar-search-highlight .resource-cell,.timeline-row.calendar-search-highlight .week-day-cell>button,.timeline-row.calendar-search-highlight .time-track{background-color:var(--surface-accent,#edf3ff)}.timeline-row.calendar-search-highlight .resource-cell{box-shadow:inset 3px 0 0 var(--blue)}.machine-strip,.week-day-cell>button,.resource-cell,.time-track{transition:background-color .18s,box-shadow .18s}.calendar-machine-tags{align-items:center;gap:4px;min-width:0;display:inline-flex;overflow:hidden}.calendar-machine-tags>span{border:1px solid var(--border-subtle,#d5ddec);max-width:76px;color:var(--text-secondary,#586a89);background:var(--surface-panel,#f8faff);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:2px 6px;font-size:8px;font-weight:600;line-height:1.25;overflow:hidden}.week-day-cell{border-right:1px solid var(--border-subtle,#eef0f4);min-width:0;position:relative}.week-days-track{grid-template-columns:repeat(7,minmax(70px,1fr));min-width:0;display:grid}.week-day-cell>button{width:100%;height:100%;min-height:57px;color:var(--text-secondary,#788295);background:var(--surface-panel,white);cursor:pointer;border:0;flex-direction:column;justify-content:center;gap:8px;padding:9px 8px;font-family:inherit;display:flex}.week-day-cell>button:hover,.week-day-cell>button:focus-visible{background:var(--surface-hover,#f4f7ff);box-shadow:inset 0 0 0 1px var(--focus-ring,#b8c9ed);outline:none}.week-day-cell>button.today{background:var(--surface-panel,#fbfcff)}.week-day-summary{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:650;overflow:hidden}.week-day-cell>button.occupied .week-day-summary{color:var(--text-accent,#3159ad)}.week-day-cell>button.unavailable .week-day-summary{color:var(--text-warning,#a35b22)}.week-mini-track{background:var(--surface-raised,#edf0f5);border-radius:3px;width:100%;height:8px;position:relative;overflow:hidden}.week-mini-track i{background:var(--marker-accent,#91a8dd);border-radius:2px;min-width:1px;position:absolute;top:1px;bottom:1px}.week-mini-track i.mine{background:var(--marker-accent-strong,#3564ca)}.week-mini-track i.machine-scope{background:var(--marker-purple,#a99bdc)}.week-mini-track i.machine-scope.mine{background:var(--marker-purple-strong,#806bc8)}.week-mini-track i.unavailable{background:repeating-linear-gradient(-45deg, var(--marker-warning,#e2a36e), var(--marker-warning,#e2a36e) 3px, var(--marker-warning-soft,#f3c79f) 3px, var(--marker-warning-soft,#f3c79f) 6px)}.week-mini-track i.unavailable.disabled{background:repeating-linear-gradient(-45deg, var(--marker-danger,#cf5961), var(--marker-danger,#cf5961) 3px, var(--marker-danger-soft,#efa4aa) 3px, var(--marker-danger-soft,#efa4aa) 6px)}.week-day-popover{z-index:90;border:1px solid var(--border-subtle,#d6deec);width:min(280px,100vw - 24px);max-height:min(280px,100vh - 24px);color:var(--text-secondary,#4d596d);background:var(--surface-raised,white);box-shadow:0 14px 34px var(--shadow-color,#1d2a442e);pointer-events:none;border-radius:8px;gap:8px;padding:12px;animation:.14s ease-out ui-popover-in;display:grid;position:fixed;overflow:auto}.week-day-popover>strong{color:var(--text-primary,#303c50);font-size:11px}.week-day-popover>div{grid-template-columns:7px 68px minmax(0,1fr);align-items:center;gap:6px;font-size:9px;display:grid}.week-day-popover>div>span{background:var(--marker-accent,#7893cf);border:0;border-radius:50%;width:7px;height:7px}.week-day-popover>div>span.mine{background:var(--marker-accent-strong,#3564ca)}.week-day-popover>div>span.machine-scope{background:var(--marker-purple,#a99bdc)}.week-day-popover>div>span.machine-scope.mine{background:var(--marker-purple-strong,#806bc8)}.week-day-popover>div>span.unavailable{background:var(--marker-warning,#d28a4e)}.week-day-popover>div>span.disabled{background:var(--marker-danger,#c84f57)}.week-day-popover time{color:var(--text-secondary,#667185);font-variant-numeric:tabular-nums}.week-day-popover em{text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.timeline-head{z-index:30;border-bottom:1px solid var(--line);background:var(--surface-raised,#f8f9fb);grid-template-columns:260px minmax(0,1fr);height:42px;display:grid;position:sticky;top:0}.resource-head{z-index:32;border-right:1px solid var(--line);color:var(--text-secondary,#566174);background:var(--surface-raised,#f8f9fb);justify-content:space-between;align-items:center;padding:0 15px;font-size:11px;font-weight:700;display:flex;position:sticky;left:0}.resource-head small{color:var(--text-secondary,#929aa8);font-size:10px;font-weight:500}.scale-head{position:relative}.scale-head>span,.scale-head>button{color:var(--text-secondary,#7f8898);white-space:nowrap;background:0 0;border:0;padding:0;font-family:inherit;font-size:10px;position:absolute;top:13px;transform:translate(-50%)}.scale-head>span:first-child,.scale-head>button:first-child{transform:none}.scale-head>span:last-of-type,.scale-head>button:last-of-type{transform:translate(-100%)}.scale-head.week button{border-right:1px solid var(--border-control,#eceff4);cursor:pointer;border-radius:0;height:100%;padding:0;position:static;transform:none}.scale-head.week{grid-template-columns:repeat(7,minmax(70px,1fr));min-width:0;display:grid}.scale-head.week button:hover,.scale-head.week button:focus-visible,.scale-head.week button.today{color:var(--text-accent,#2857b7);background:var(--surface-accent-hover,#eef3ff);outline:none}.scale-head.week button:hover,.scale-head.week button:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#eaf0ff)}.current-time-line{z-index:6;background:var(--marker-danger,#e05252);width:1px;box-shadow:0 0 0 1px var(--shadow-color,#e0525214);pointer-events:none;position:absolute;top:0;bottom:0}.current-time-line.with-label:before{background:var(--marker-danger,#e05252);content:"";border-radius:50%;width:7px;height:7px;position:absolute;top:25px;left:-3px}.scale-head .current-time-line{z-index:10}.current-time-line.with-label span{color:var(--text-on-accent,white);background:var(--fill-danger,#d84949);white-space:nowrap;border-radius:4px;padding:2px 5px;font-size:9px;line-height:1.25;position:absolute;top:4px;left:0;transform:translate(-50%)}.machine-block{--machine-strip-padding:15px;--machine-collapse-width:15px;--machine-leading-gap:4px}.machine-strip{border:0;border-bottom:1px solid var(--line);width:100%;height:38px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:var(--surface-raised,#f5f7fa);padding:0;transition:background .14s;display:block}.machine-strip:hover{background:var(--surface-hover,#eef2f7)}.machine-strip:focus-visible{z-index:12;outline:2px solid var(--blue);outline-offset:-2px;position:relative}.machine-strip.collapsed{border-bottom-color:var(--border-subtle,#e1e5eb)}.machine-announcement-row{border-bottom:1px solid var(--border-subtle,#d5e1f5);background:var(--surface-accent,#eaf1ff)}.machine-announcement-link{width:min(100%,100cqw);min-width:0;height:32px;padding:0 var(--machine-strip-padding);padding-left:calc(var(--machine-strip-padding) + var(--machine-collapse-width) + var(--machine-leading-gap));color:var(--text-accent,#315ba0);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;font-size:12px;display:flex;position:sticky;left:0}.machine-announcement-link>svg{flex-shrink:0}.machine-announcement-link>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.machine-announcement-link:hover{background:var(--surface-accent-hover,#dce8ff)}.machine-announcement-link:focus-visible{outline:2px solid var(--border-focus,#4774c7);outline-offset:-2px}.machine-strip-visible{width:min(100%,100cqw);min-width:0;height:100%;padding:0 var(--machine-strip-padding);align-items:center;display:flex;position:sticky;left:0;overflow:hidden}.machine-strip-leading{align-items:center;gap:var(--machine-leading-gap);flex:none;display:inline-flex}.machine-strip-leading>svg:not(.machine-collapse-icon){color:var(--text-accent,var(--blue))}.machine-collapse-icon{width:var(--machine-collapse-width);color:var(--text-secondary,#68758a);flex:none;transition:transform .18s}.machine-strip.collapsed .machine-collapse-icon{transform:rotate(-90deg)}.machine-strip strong{font-size:12px}.machine-strip-visible .calendar-machine-name{flex:none}.machine-strip code{min-width:0;color:var(--text-secondary,#8a93a2);text-overflow:ellipsis;white-space:nowrap;flex:none;font-family:inherit;font-size:10px;overflow:hidden}.machine-strip-tags-field{flex:none;align-items:center;min-width:0;height:100%;display:inline-flex;overflow:hidden}.machine-strip-tags-field>.calendar-machine-tags{width:max-content}.machine-strip-state{flex:none;margin-left:auto}.machine-resource-summary{min-width:0;color:var(--text-secondary,#7a8495);text-overflow:ellipsis;white-space:nowrap;flex:none;font-size:10px;overflow:hidden}.machine-strip-measure{visibility:hidden;white-space:nowrap;pointer-events:none;width:max-content;height:0;position:absolute;overflow:hidden}.machine-strip-measure>*{flex:none;width:max-content;max-width:none;margin:0;display:inline-block}.machine-contents{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .18s,opacity .15s,visibility linear;display:grid}.machine-contents.collapsed{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .18s,opacity .13s,visibility 0s linear .18s}.machine-contents-inner{min-height:0;overflow:clip}@media (prefers-reduced-motion:reduce){.machine-strip,.week-day-cell>button,.resource-cell,.time-track,.machine-collapse-icon,.machine-contents,.machine-contents.collapsed{transition:none}}.timeline-row{border-bottom:1px solid var(--border-subtle,#eceef2);grid-template-columns:260px minmax(0,1fr);min-height:58px;display:grid}.timeline-row:last-child{border-bottom:0}.resource-cell{z-index:20;border-right:1px solid var(--line);cursor:default;background:var(--surface-panel,white);align-items:center;gap:9px;padding:9px 12px 9px 15px;display:flex;position:sticky;left:0}.resource-copy{flex-direction:column;flex:1;min-width:0;display:flex}.resource-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.resource-copy small{color:var(--text-secondary,#818a9a);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.resource-summary{min-width:0;color:var(--text-secondary,#818a9a);text-overflow:ellipsis;white-space:nowrap;outline:none;margin-top:3px;font-size:10px;display:block;overflow:hidden}.resource-summary:focus-visible{box-shadow:0 0 0 2px var(--focus-ring,#2e66de38);border-radius:3px}.resource-summary-popover{z-index:120;border:1px solid var(--border-subtle,#d9dfeb);width:max-content;max-width:min(320px,100vw - 24px);max-height:calc(100vh - 24px);color:var(--text-primary,#3d485b);background:var(--surface-raised,white);box-shadow:0 10px 28px var(--shadow-color,#202b432e);white-space:normal;overflow-wrap:anywhere;pointer-events:none;border-radius:7px;padding:8px 10px;font-size:10px;line-height:1.55;animation:.14s ease-out ui-popover-in;position:fixed;overflow:auto}.resource-copy em{color:var(--text-secondary,#5974b6);margin-left:6px;font-style:normal}.time-track{cursor:crosshair;-webkit-user-select:none;user-select:none;min-height:58px;position:relative;overflow:hidden}.time-track.browse-only{cursor:default}.time-track.not-selectable{cursor:not-allowed}.timeline-row.long-term-disabled .resource-cell{color:var(--text-disabled,#7b8494);background:var(--surface-disabled,#f2f4f7)}.timeline-row.long-term-disabled .resource-copy strong,.timeline-row.long-term-disabled .resource-summary{color:var(--text-disabled,#747d8c)}.time-track.long-term-disabled{cursor:not-allowed;background:var(--surface-disabled,#f5f6f8)}.time-track.long-term-disabled>:not(.long-term-disabled-state){opacity:.42;pointer-events:none}.time-track>i{background:var(--surface-raised,#eef0f3);width:1px;position:absolute;top:0;bottom:0}.calendar-blocked-time{z-index:1;background-image:repeating-linear-gradient(-45deg, var(--overlay-past,#58657c08), var(--overlay-grid,#58657c08) 6px, var(--overlay-grid,#58657c0f) 6px, var(--overlay-grid,#58657c0f) 12px);pointer-events:none;position:absolute;top:0;bottom:0}.calendar-blocked-time--access-expiry.has-expiry-boundary{border-left:1px dashed var(--text-disabled,#7b8494)}.calendar-blocked-time--access-expiry,.calendar-blocked-time--disabled{color:var(--text-disabled,#697386);justify-content:center;align-items:center;gap:6px;font-size:10px;font-weight:600;display:flex}.calendar-blocked-time--access-expiry{container-type:inline-size}@container (width<=110px){.calendar-blocked-time-label{display:none}}@container (width<=48px){.calendar-expiry-action{display:none}}.calendar-blocked-time--disabled{z-index:8;background-color:var(--overlay-disabled,#f5f6f894)}.calendar-blocked-time-label{text-overflow:ellipsis;white-space:nowrap;padding-inline:6px;overflow:hidden}.calendar-expiry-action{flex-shrink:0;min-width:0;max-width:100%}.calendar-expiry-renew.secondary-button{pointer-events:auto;background:var(--surface-panel,#fff);min-height:24px;padding:0 8px;font-size:10px}.calendar-expiry-renew:focus-visible{outline:2px solid var(--focus-ring,#3157bd);outline-offset:2px}.calendar-expiry-pending{text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.timeline-hover-guide{z-index:7;border-left:1px dashed var(--border-accent,#3768cc);pointer-events:none;width:1px;position:absolute;top:0;bottom:0}.timeline-hover-guide span{z-index:1;color:var(--text-on-accent,white);background:var(--fill-accent,#315fbe);box-shadow:0 3px 9px var(--shadow-color,#243d6f2e);white-space:nowrap;border-radius:4px;padding:2px 5px;font-size:9px;line-height:1.3;position:absolute;top:3px;left:0;transform:translate(-50%)}.timeline-bar-anchor{z-index:2;min-width:0;height:37px;font:inherit;text-align:left;background:0 0;border:0;padding:0;position:absolute;top:10px;overflow:visible}.timeline-bar-anchor.passive{pointer-events:none}.timeline-bar-anchor.unavailability-bar{z-index:1}.timeline-bar-anchor.unavailability-bar.disable-history-bar{z-index:2}.timeline-bar-anchor.booking-bar,.timeline-bar-anchor.unavailability-bar{cursor:pointer}.timeline-bar-anchor.draft-timeline-bar,.timeline-bar-anchor.drag-blocked-bar,.timeline-bar-anchor.drag-erase-bar{z-index:4}.timeline-bar-visual{white-space:nowrap;border-radius:5px;width:max(100%,2px);min-width:0;font-size:10px;position:absolute;inset:0 auto 0 50%;overflow:hidden;transform:translate(-50%)}.timeline-bar-content{align-items:center;gap:6px;width:100%;height:100%;padding:0 8px;display:flex;overflow:hidden}.timeline-bar-visual.booking-bar{border:1px solid var(--border-booking-own);color:var(--text-booking-own);background:var(--surface-booking-other);box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 2px 6px var(--shadow-color,#395eae24);text-align:left;cursor:pointer;font-family:inherit;overflow:hidden}.timeline-bar-anchor.booking-bar:hover>.timeline-bar-visual,.timeline-bar-anchor.booking-bar:focus-visible>.timeline-bar-visual{border-color:color-mix(in srgb, var(--border-booking-own) 65%, var(--text-booking-own));background:var(--surface-booking-other-hover);box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 3px 8px var(--shadow-color,#395eae2e);outline:none}.timeline-bar-anchor.booking-bar:after,.timeline-bar-anchor.unavailability-bar:after{content:"";width:max(100%,24px);position:absolute;top:-5px;bottom:-5px;left:50%;transform:translate(-50%)}.timeline-bar-content>*{z-index:1;position:relative}.timeline-bar-visual.booking-bar.mine{background:var(--surface-booking-own)}.timeline-bar-anchor.booking-bar.mine:hover>.timeline-bar-visual,.timeline-bar-anchor.booking-bar.mine:focus-visible>.timeline-bar-visual{background:var(--surface-booking-own-hover)}.timeline-bar-visual.booking-bar.machine-scope{border-color:var(--border-machine-own);color:var(--text-machine-own);background:var(--surface-machine-other);box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 2px 6px var(--shadow-color,#5b41a924)}.timeline-bar-anchor.booking-bar.machine-scope:hover>.timeline-bar-visual,.timeline-bar-anchor.booking-bar.machine-scope:focus-visible>.timeline-bar-visual{border-color:color-mix(in srgb, var(--border-machine-own) 65%, var(--text-machine-own));background:var(--surface-machine-other-hover)}.timeline-bar-visual.booking-bar.machine-scope.mine{background:var(--surface-machine-own)}.timeline-bar-anchor.booking-bar.machine-scope.mine:hover>.timeline-bar-visual,.timeline-bar-anchor.booking-bar.machine-scope.mine:focus-visible>.timeline-bar-visual{background:var(--surface-machine-own-hover)}.timeline-bar-visual.booking-bar.editing-history{border-color:var(--border-subtle,#aeb7c6);color:var(--text-secondary,#657083);background:var(--surface-raised,#eef0f3);cursor:default}.draft-timeline-bar small{color:inherit;opacity:var(--event-detail-opacity,.72)}.booking-bar small{color:inherit}.booking-bar-copy{flex-direction:column;min-width:0;line-height:1.18;display:flex;overflow:hidden}.booking-bar-copy>span{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.booking-bar-copy small{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.timeline-bar-visual.calendar-day-event-block,.timeline-bar-visual.calendar-day-event-block .timeline-bar-content,.timeline-bar-visual.calendar-day-event-block .booking-bar-copy,.timeline-bar-visual.calendar-day-event-block .booking-bar-copy>span,.timeline-bar-visual.calendar-day-event-block .booking-bar-copy small{overflow:hidden}.timeline-bar-visual.calendar-day-event-block .booking-bar-copy>span,.timeline-bar-visual.calendar-day-event-block .booking-bar-copy small{text-overflow:clip}.draft-timeline-bar .booking-dot{background:currentColor}.booking-dot{background:var(--marker-accent,#7893cf);border:0;border-radius:50%;flex:none;width:6px;height:6px}.booking-bar .booking-dot{box-shadow:none;background:currentColor}.booking-bar.editing-history .booking-dot{border-color:var(--border-subtle,#8792a3);background:var(--text-secondary,#8792a3);box-shadow:none}.timeline-bar-visual.unavailability-bar{--unavailability-tint:var(--calendar-crystal-yellow);--unavailability-base:var(--surface-calendar-maintenance);--unavailability-fill:var(--unavailability-base);--unavailability-stripe:color-mix(in srgb, var(--unavailability-fill) 80%, var(--booking-glass-base));border:1px solid var(--border-warning,#e0a36e);color:var(--text-warning,#924e1c);background:repeating-linear-gradient(-45deg, var(--unavailability-fill), var(--unavailability-fill) 6px, var(--unavailability-stripe) 6px, var(--unavailability-stripe) 12px);box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 2px 6px var(--shadow-color,#9b541d1a);text-align:left;cursor:pointer;font-family:inherit}.timeline-bar-anchor.unavailability-bar:hover>.timeline-bar-visual,.timeline-bar-anchor.unavailability-bar:focus-visible>.timeline-bar-visual{--unavailability-fill:color-mix(in srgb, var(--unavailability-base) var(--calendar-crystal-hover-base-weight), var(--unavailability-tint));border-color:color-mix(in srgb, var(--border-warning,#e0a36e) 65%, var(--text-warning,#9b541d));box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 2px 8px var(--shadow-color,#9b541d2e);outline:none}.unavailability-bar .unavailability-icon{flex:none}.unavailability-bar small{color:inherit}.timeline-bar-visual.unavailability-bar.disable-history-bar{--unavailability-tint:var(--calendar-crystal-red);--unavailability-base:var(--surface-calendar-disabled);border-color:var(--border-danger,#d5656a);color:var(--text-danger,#922a35);box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 2px 6px var(--shadow-color,#9f30381f)}.timeline-bar-anchor.unavailability-bar.disable-history-bar:hover>.timeline-bar-visual,.timeline-bar-anchor.unavailability-bar.disable-history-bar:focus-visible>.timeline-bar-visual{border-color:color-mix(in srgb, var(--border-danger,#d5656a) 65%, var(--text-danger,#922a35));box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 2px 8px var(--shadow-color,#9f303833)}:root:not([data-theme=dark]) :is(.timeline-bar-anchor.booking-bar.mine,.timeline-bar-anchor.unavailability-bar):is(:hover,:focus-visible)>.timeline-bar-visual{box-shadow:inset 0 1px 0 var(--booking-glass-highlight), 0 3px 8px color-mix(in srgb, currentColor 18%, transparent)}.timeline-bar-visual.draft-timeline-bar{border:1px dashed var(--border-accent,#7296e8);color:var(--text-accent,#173d9c);background:var(--surface-accent,#d6e1fff7);box-shadow:0 2px 6px var(--shadow-color,#395eae24)}.timeline-bar-visual.draft-timeline-bar.machine-scope{border-color:var(--border-purple,#806bc8);color:var(--text-purple,#3f287f);background:var(--surface-purple,#ded7faf7);box-shadow:0 2px 6px var(--shadow-color,#5b41a924)}.timeline-bar-visual.drag-blocked-bar{border:1px solid var(--border-danger,#d77b7b);color:var(--text-danger,#a13f3f);background:repeating-linear-gradient(-45deg, var(--surface-danger,#ffe6e6f0), var(--surface-danger,#ffe6e6f0) 6px, var(--surface-raised,#fff4f4f0) 6px, var(--surface-raised,#fff4f4f0) 12px);border-radius:5px}.timeline-bar-visual.drag-erase-bar{border:1px solid var(--border-danger,#e05252);color:var(--text-danger,#a92f2f);background:var(--surface-danger,#ffe6e6e0);box-shadow:inset 0 0 0 1px var(--shadow-color,#ffffff8c)}.timeline-refreshing{z-index:10;border:1px solid var(--border-subtle,#d8deea);width:max-content;color:var(--text-secondary,#596477);background:var(--surface-panel,#fffffff0);box-shadow:0 5px 18px var(--shadow-color,#17233a1f);border-radius:6px;align-items:center;gap:6px;margin:-31px 10px 10px auto;padding:6px 9px;font-size:10px;display:flex;position:sticky;bottom:10px;right:10px}.timeline-loading,.content-loading{min-height:260px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.drawer-head{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.drawer-head h2{margin:0;font-size:22px;line-height:1.2}.drawer-head-actions{align-items:center;gap:7px;display:flex}.drawer-manual-add-button,.drawer-clear-button{border:1px solid var(--border-danger,#e2c9c9);height:30px;color:var(--text-danger,#a64b4b);background:var(--surface-panel,#fff8f8);cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:0 9px;font-family:inherit;font-size:11px;font-weight:600;display:inline-flex}.drawer-manual-add-button{border-color:var(--border-accent,#cfd9ec);color:var(--text-accent,#315da8);background:var(--surface-panel,#f7f9fe)}.drawer-manual-add-button:hover{border-color:var(--border-accent,#9eb4dc);background:var(--surface-accent-hover,#eef3fd)}.drawer-clear-button:hover{border-color:var(--border-danger,#d9a8a8);background:var(--surface-danger-hover,#fff0f0)}.drawer-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:340px;padding:48px 20px;display:flex}.booking-drawer .drawer-empty{color:var(--text-secondary,#99a2b1)}.booking-drawer .drawer-empty-icon{box-sizing:content-box;color:var(--text-secondary,#7182a6);background:var(--surface-raised,#edf1f8);border-radius:14px;padding:12px}.booking-drawer .drawer-empty strong{color:var(--text-secondary,#667184)}.booking-drawer .drawer-empty p{color:var(--text-secondary,#8a95a7);margin:-4px 0 0;font-size:11px;line-height:1.5}.booking-drawer .drawer-add-button{border-color:var(--border-control,#cfd7e4);width:auto;height:34px;min-height:34px;color:var(--text-secondary,#536179);background:var(--surface-panel,#fff);gap:6px;margin-top:2px;padding:0 12px;font-size:11px;font-weight:650}.booking-drawer .drawer-add-button:hover{border-color:var(--border-accent,#9eb2df);color:var(--text-accent,#2857b7);background:var(--surface-hover,#f5f8ff)}.empty-illustration{border:1px solid var(--border-accent,#d8e1f6);width:62px;height:62px;color:var(--text-accent,var(--blue));background:var(--surface-accent,#eef3ff);border-radius:18px;place-items:center;margin:0 auto 19px;display:grid}.drawer-empty strong{font-size:14px}.selected-summary{border:1px solid var(--border-accent,#d9e2f7);background:var(--surface-accent,#f2f6ff);align-items:center;gap:10px;margin-bottom:16px;padding:11px 12px;display:flex}.selected-summary>span{width:36px;height:36px;color:var(--text-on-accent,white);background:var(--blue);border-radius:10px;place-items:center;font-size:17px;font-weight:700;display:grid}.selected-summary>div{align-items:center;display:flex}.selected-summary strong{font-size:13px;line-height:1.3}.two-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.duration-line{color:var(--text-secondary,#798395);align-items:center;gap:6px;margin:-5px 0 14px;font-size:10px;display:flex}.booking-drawer .field{margin-bottom:13px}.section-label{color:var(--text-secondary,#566174);justify-content:space-between;margin:22px 0 9px;font-size:11px;font-weight:700;display:flex}.section-label small{color:var(--text-secondary,#8b94a4);font-weight:500}.draft-list{flex-direction:column;gap:7px;display:flex}.draft-time-fields{gap:8px;margin-top:9px;display:grid}.draft-time-fields .field{margin-bottom:0}.draft-duration{color:var(--text-secondary,#737d8d);align-items:center;gap:5px;margin:7px 0 8px;font-size:10px;display:flex}.draft-issues{border:1px solid var(--border-danger,#edcaca);color:var(--text-danger,#994646);background:var(--surface-raised,#fff4f4);border-radius:6px;gap:4px;margin-top:9px;padding:8px 10px;font-size:10px;display:grid}.draft-card{border:1px solid var(--line);border-left:3px solid var(--border-subtle,#bdc6d4);background:var(--surface-panel,white);padding:10px 11px}.draft-card.available{border-left-color:var(--green)}.draft-card.conflicted{border-left-color:var(--red)}.draft-card.invalid{border-color:var(--border-danger,#e1aaaa);border-left-color:var(--red);background:var(--surface-panel,snow)}.draft-card-head{justify-content:space-between;align-items:center;display:flex}.draft-card-head>div{align-items:center;gap:6px;display:flex}.draft-card-head strong{font-size:11px}.immediate-start-label{border:1px solid var(--border-accent,#b9d2ff);background:var(--surface-accent,#edf4ff);height:19px;color:var(--text-accent,#275fc9);white-space:nowrap;border-radius:999px;align-items:center;padding:0 6px;font-size:10px;font-weight:650;display:inline-flex}.draft-time{color:var(--text-secondary,#737d8d);margin:3px 0 8px 21px;font-size:10px}.status-label{align-items:center;gap:4px;font-size:10px;font-weight:600;display:inline-flex}.status-label.success{color:var(--green)}.status-label.danger{color:var(--red)}.drawer-actions{grid-template-columns:1fr;gap:7px;margin-top:15px;display:grid}.editing-reservation-banner{border:1px solid var(--border-accent,#cbd8f5);color:var(--text-accent,#35599f);background:var(--surface-accent,#f2f6ff);border-radius:7px;align-items:flex-start;gap:7px;margin-bottom:10px;padding:9px 10px;font-size:10px;line-height:1.5;display:flex}.editing-reservation-banner svg{flex:none;margin-top:1px}.calendar-reservation-time-fields{gap:9px;display:grid}.calendar-reservation-metadata-fields{gap:12px;display:grid}.calendar-reservation-time-fields .field,.calendar-reservation-metadata-fields .field{margin-bottom:0}.reservation-popover-layer{z-index:90;position:fixed;inset:0}.reservation-popover{border:1px solid var(--border-accent,#cfd8e8);width:320px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);color:var(--text-primary,#344054);background:var(--surface-raised,#fff);box-shadow:0 18px 45px var(--shadow-color,#21314e2e), 0 3px 10px var(--shadow-color,#21314e1a);border-radius:10px;outline:none;padding:14px;animation:.14s ease-out ui-popover-in;position:fixed;overflow:auto}.reservation-popover:before{content:"";background:var(--marker-accent,#5579d8);border-radius:10px 10px 0 0;height:3px;position:absolute;inset:0 0 auto}.booking-detail-popover{--calendar-popover-border:var(--border-booking-own)}.booking-detail-popover.machine-scope{--calendar-popover-border:var(--border-machine-own)}.unavailability-popover{--calendar-popover-border:var(--border-warning,#e0a36e)}.unavailability-popover.disable-history-popover{--calendar-popover-border:var(--border-danger,#d5656a)}.booking-detail-popover,.unavailability-popover{border-color:var(--calendar-popover-border);border-top-width:0}.booking-detail-popover:before,.unavailability-popover:before{background:var(--calendar-popover-border)}.unavailability-source-list{border-top:1px solid var(--border-subtle,#edf0f5);gap:8px;margin-top:11px;padding-top:10px;display:grid}.unavailability-source-item{border:1px solid var(--border-warning,#f0d7c1);background:var(--surface-panel,#fffaf5);border-radius:8px;padding:10px 11px}.unavailability-source-item>div{align-items:center;gap:7px;display:flex}.unavailability-source-item strong{color:var(--text-warning,#8e4f20);font-size:12px}.unavailability-source-item time{color:var(--text-secondary,#6d7480);align-items:center;gap:5px;margin-top:5px;font-size:11px;line-height:1.45;display:flex}.unavailability-source-item time span{color:var(--text-secondary,#a4a9b1)}.unavailability-source-item p{color:var(--text-secondary,#4f5968);white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0;font-size:12px;line-height:1.5}.disable-history-popover .unavailability-source-item{border-color:var(--border-danger,#f0c9cc);background:var(--surface-raised,#fff7f8)}.disable-history-popover .unavailability-source-item strong{color:var(--text-danger,#99333a)}.reservation-popover-head{justify-content:space-between;align-items:center;gap:12px;min-height:32px;display:flex}.reservation-popover-head>div{align-items:center;gap:8px;min-width:0;display:flex}.reservation-popover-head strong{color:var(--text-primary,#263348);font-size:15px;line-height:1.2}.reservation-popover-head .state-chip{padding:3px 7px;font-size:10px}.reservation-popover-actions{flex:none;gap:5px!important}.reservation-popover-action{border:1px solid var(--border-subtle,#dce2ec);width:30px;height:30px;color:var(--text-secondary,#68758a);background:var(--surface-raised,#fff);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;padding:0;display:inline-flex}.reservation-popover-action:hover:not(:disabled),.reservation-popover-action:focus-visible{color:var(--text-accent,#315eb8);border-color:var(--border-focus,#b8c9ec);background:var(--surface-accent-hover,#f1f5ff);outline:none}.reservation-popover-action.edit{color:var(--text-accent,#315eb8);border-color:var(--border-accent,#c8d6f3);background:var(--surface-raised,#f4f7ff)}.reservation-popover-action.danger{color:var(--text-danger,#b14d4d);border-color:var(--border-danger,#eccccc);background:var(--surface-raised,#fff7f7)}.reservation-popover-action.danger:hover:not(:disabled),.reservation-popover-action.danger:focus-visible{color:var(--text-danger,#9e3434);border-color:var(--border-focus,#dfabab);background:var(--surface-danger-hover,#fff0f0)}.reservation-popover-action:disabled{opacity:.55;cursor:default}.nearby-reservations-hint{color:var(--text-secondary,#7a8596);margin:7px 0 0;font-size:11px}.nearby-reservations-list{gap:5px;max-height:342px;margin-top:11px;display:grid;overflow-y:auto}.nearby-reservations-list>button{border:1px solid var(--border-control,#e1e6ef);width:100%;min-height:52px;color:var(--text-secondary,#667185);background:var(--surface-panel,#fafbfc);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:7px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:7px 8px;display:grid}.nearby-reservations-list>button:hover,.nearby-reservations-list>button:focus-visible{border-color:var(--border-focus,#b9c9eb);background:var(--surface-accent-hover,#f2f6ff);outline:none}.nearby-reservation-marker{background:var(--marker-accent,#91a8dd);border-radius:3px;width:7px;height:28px}.nearby-reservation-marker.mine{background:var(--marker-accent-strong,#3564ca)}.nearby-reservation-marker.machine-scope{background:var(--marker-purple,#a99bdc)}.nearby-reservation-marker.machine-scope.mine{background:var(--marker-purple-strong,#806bc8)}.nearby-reservation-copy{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:2px 9px;min-width:0;display:grid}.nearby-reservation-copy time{color:var(--text-secondary,#53627a);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;font-weight:700}.nearby-reservation-copy strong,.nearby-reservation-copy small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nearby-reservation-copy strong{color:var(--text-primary,#354156);font-size:11px}.nearby-reservation-copy small{color:var(--text-secondary,#7f8999);grid-column:1/-1;font-size:10px}.reservation-popover-details{border-top:1px solid var(--border-subtle,#edf0f5);gap:8px;margin:12px 0 0;padding:11px 0 0;display:grid}.reservation-popover-details>div{grid-template-columns:48px minmax(0,1fr);gap:9px;display:grid}.reservation-popover-details dt,.reservation-popover-content span{color:var(--text-secondary,#8690a0);font-size:11px;line-height:1.55}.reservation-popover-details dd{color:var(--text-primary,#455166);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.55}.reservation-popover-time-separator{color:var(--text-secondary,#99a2b1);margin:0 5px}.reservation-popover-content{border-top:1px solid var(--border-subtle,#edf0f5);gap:8px;margin-top:11px;padding-top:10px;display:grid}.reservation-popover-content>div{grid-template-columns:48px minmax(0,1fr);gap:9px;display:grid}.reservation-popover-content p{color:var(--text-primary,#455166);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.55}.drawer-actions .primary-button[aria-disabled=true]{cursor:not-allowed;opacity:.45;border-color:var(--blue);background:var(--blue);transform:none}.announcement-dialog{gap:22px;display:grid}.announcement-dialog .announcement-markdown{max-height:min(56vh,520px);padding:4px 2px;overflow:auto}.announcement-dialog-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding-top:14px;display:flex}.announcement-dialog-footer>span{color:var(--muted);font-size:12px}.announcement-dialog-footer .primary-button{margin-left:auto}.announcement-markdown{min-width:0;color:var(--text-primary,#455166);overflow-wrap:anywhere;font-size:14px;line-height:1.75}.announcement-markdown>:first-child{margin-top:0}.announcement-markdown>:last-child{margin-bottom:0}.announcement-markdown p{margin:9px 0}.announcement-markdown ul,.announcement-markdown ol{margin:9px 0;padding-left:23px}.announcement-markdown li{margin:4px 0}.announcement-markdown a{color:var(--text-accent,var(--blue));text-underline-offset:3px}.announcement-markdown code{border:1px solid var(--border-subtle,#e1e6ef);color:var(--text-danger,#a43258);background:var(--surface-raised,#f7f8fa);border-radius:5px;padding:2px 5px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.announcement-markdown blockquote{border-left:3px solid var(--border-accent,#8aa7ee);color:var(--text-secondary,#53627a);background:var(--surface-panel,#f5f8ff);margin:12px 0;padding:9px 13px}.announcement-markdown table{border-collapse:collapse;width:100%}.announcement-markdown th,.announcement-markdown td{border:1px solid var(--border-subtle,#e1e6ee);text-align:left;padding:7px 9px}.announcement-subheading{color:var(--ink);margin:16px 0 7px;font-size:15px;display:block}.announcement-management-page{min-width:0}.system-maintenance-panel{margin-bottom:14px}.system-maintenance-preview{overflow-wrap:anywhere;color:var(--text-warning,#885021);background:var(--surface-warning,#fff5e9);border-radius:8px;margin:0;padding:12px 14px;font-size:12px;line-height:1.7}.system-maintenance-preview.empty{color:var(--muted);background:var(--surface-raised,#f7f9fc)}.system-maintenance-load-error{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;display:flex}.announcement-viewer-page{max-width:980px}.announcement-load-error{color:var(--muted);justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}.announcement-page-actions{align-items:center;gap:14px;display:flex}.announcement-history-toggle{white-space:nowrap}.announcement-admin-list{gap:14px;display:grid}.announcement-admin-card{padding:20px}.announcement-admin-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:14px;display:flex}.announcement-admin-card>header>div{align-items:center;gap:10px;min-width:0;display:flex}.announcement-admin-card h2{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:17px}.announcement-card-actions{align-items:center;gap:8px;display:flex}.announcement-admin-card>.announcement-markdown{padding:15px 2px}.announcement-admin-card>footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:7px 16px;padding-top:11px;font-size:11px;display:flex}.announcement-admin-empty{color:var(--muted);text-align:center;padding:30px}.announcement-editor-modal{flex-direction:column;height:min(720px,100vh - 60px);display:flex}.announcement-editor-modal>header{flex:none}.announcement-create-form{flex:auto;grid-template-rows:minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:20px;min-height:0;display:grid}.announcement-create-fields{grid-template-rows:auto minmax(0,1fr);gap:14px;min-height:0;display:grid}.announcement-create-fields>.field:last-child{min-height:0}.announcement-create-fields textarea{resize:none;flex:auto;min-height:0;overflow:auto}.announcement-create-fields .field>small{color:var(--muted);font-size:11px;line-height:1.65}.announcement-create-fields .field>small code{margin:0 4px}.announcement-preview{border:1px solid var(--line);background:var(--surface-raised,#fafbfc);border-radius:10px;min-width:0;min-height:0;padding:16px;overflow:auto}.announcement-preview>strong{color:var(--muted);margin-bottom:13px;font-size:11px;display:block}.announcement-preview>span{color:var(--muted);font-size:13px}.announcement-editor-feedback,.announcement-create-form>.modal-actions{grid-column:1/-1}@media (width<=820px){.modal-backdrop:has(.announcement-editor-modal){padding:12px}.announcement-editor-modal{height:calc(100vh - 24px)}.announcement-management-page .page-header{align-items:flex-start}.announcement-page-actions{flex-direction:column-reverse;align-items:flex-end}.announcement-admin-card>header{flex-direction:column;align-items:stretch}.announcement-card-actions{justify-content:flex-end}.announcement-create-form{flex-direction:column;display:flex;overflow-y:auto}.announcement-create-fields{flex:none}.announcement-create-fields textarea{min-height:220px}.announcement-editor-feedback{grid-column:auto}.announcement-create-form>.modal-actions{z-index:1;background:var(--surface-raised,white);flex:none;grid-column:auto;padding-top:12px;position:sticky;bottom:0}.announcement-preview{flex:none;height:220px;min-height:220px}.announcement-dialog-footer{flex-direction:column;align-items:stretch}.announcement-dialog-footer .primary-button{width:100%;margin-left:0}}.machine-announcement-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.7}.machine-announcement-preview{border:1px solid var(--border-subtle,#d5e1f5);background:var(--surface-accent,#eaf1ff);color:var(--text-accent,#315ba0);border-radius:8px;align-items:flex-start;gap:12px;padding:14px;display:flex}.machine-announcement-symbol{background:var(--surface-panel,#fff);border-radius:8px;flex:0 0 32px;place-items:center;height:32px;display:grid}.machine-announcement-preview .machine-announcement-body{flex:1;min-width:0;max-height:170px;margin-block:5px;font-size:12px;overflow-y:auto}.machine-announcement-preview.empty{background:var(--surface-raised,#f7f9fc);border-color:var(--line);color:var(--muted);align-items:center}.page-shell{width:min(1440px,100% - 52px);margin:0 auto;padding:31px 0 60px}.page-shell.narrow-page{width:min(980px,100% - 52px)}.resource-catalog-page{max-width:1280px}.resource-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.resource-catalog-card{box-sizing:border-box;flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex;box-shadow:0 2px 6px #00000006;container-type:inline-size}.catalog-card-header{grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.catalog-machine-icon{width:36px;height:36px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:8px;place-items:center;display:grid}.catalog-machine-heading{min-width:0}.catalog-machine-heading h2{color:var(--ink);overflow-wrap:anywhere;margin:0 0 3px;font-size:16px;line-height:1.4}.catalog-card-statuses{padding-top:2px;display:flex}.catalog-card-statuses>.state-chip{flex-shrink:0}.catalog-resource-summary{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:600;line-height:1.7}.catalog-resource-summary.empty{color:var(--muted);font-size:12px;font-weight:400}.catalog-machine-details{gap:8px;min-width:0;display:grid}.catalog-machine-details>.catalog-manager-list,.catalog-machine-heading>.catalog-machine-login-ip{margin:0}.catalog-machine-login-ip{min-width:0;min-height:20px;color:var(--text-secondary,#506079);white-space:nowrap;align-items:center;gap:6px;margin-bottom:7px;font-size:10px;line-height:20px;display:flex}.catalog-machine-login-ip>svg{color:var(--text-secondary,#5872ab);flex:none}.catalog-machine-login-ip>span{flex:none;font-weight:700}.catalog-machine-login-ip>code{min-width:0;color:var(--text-primary,#31415c);white-space:normal;overflow-wrap:anywhere;font-family:inherit;font-size:11px}.catalog-manager-list{min-width:0;height:22px;color:var(--text-secondary,#68758a);white-space:nowrap;align-items:center;gap:6px;margin-bottom:8px;font-size:10px;line-height:1.4;display:flex}.catalog-manager-list>svg{color:var(--text-secondary,#5974b6);flex:none}.catalog-manager-list>span{flex:none;font-weight:700}.catalog-manager-summary{flex:auto;min-width:0;height:22px;position:relative}.catalog-manager-visible{width:100%;height:22px;color:var(--text-secondary,#4d596c);align-items:center;gap:10px;display:flex}.catalog-manager-visible>span{flex:none}.catalog-manager-overflow{flex:none;height:22px;position:relative}.catalog-manager-list em{min-width:0;color:var(--muted);text-overflow:ellipsis;font-style:normal;overflow:hidden}.catalog-manager-count{border:1px solid var(--border-accent,#d9e1f2);height:22px;color:var(--text-secondary,#4d66a1);background:var(--surface-raised,#f5f7fc);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;padding:0 7px;font-weight:700}.catalog-manager-count:hover,.catalog-manager-count:focus-visible{border-color:var(--border-focus,#aebfe4);color:var(--text-accent,#2f55ad);background:var(--surface-accent-hover,#edf2ff);outline:none}.catalog-manager-popover{z-index:30;box-sizing:border-box;border:1px solid var(--border-subtle,#d9dfeb);width:max-content;min-width:220px;max-width:min(360px,100vw - 64px);max-height:280px;color:var(--text-primary,#445064);background:var(--surface-raised,white);box-shadow:0 14px 34px var(--shadow-color,#202b432e);white-space:normal;border-radius:9px;flex-direction:column;padding:11px 12px;animation:.14s ease-out ui-popover-in;display:flex;position:absolute;top:calc(100% + 7px);right:0}.catalog-manager-popover:before{content:"";border-top:1px solid var(--border-subtle,#d9dfeb);border-left:1px solid var(--border-subtle,#d9dfeb);background:var(--text-secondary,white);width:8px;height:8px;position:absolute;top:-5px;right:16px;transform:rotate(45deg)}.catalog-manager-popover>strong{color:var(--text-primary,#273247);margin-bottom:7px;font-size:11px;display:block}.catalog-manager-popover>div{flex:auto;gap:1px;min-height:0;display:grid;overflow-y:auto}.catalog-manager-popover span{overflow-wrap:anywhere;border-radius:5px;padding:6px 7px;line-height:1.45}.catalog-manager-popover span:nth-child(odd){background:var(--surface-raised,#f7f8fb)}.catalog-manager-measure{visibility:hidden;pointer-events:none;align-items:center;gap:10px;width:max-content;display:flex;position:fixed;top:-10000px;left:-10000px}.catalog-card-controls{background:var(--surface-raised,#f7f9fc);justify-content:space-between;align-items:center;gap:12px;min-width:0;margin:auto -16px -16px;padding:10px 16px;display:flex}.catalog-card-controls>.catalog-access-chip{flex-shrink:0}.catalog-card-action-row{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.catalog-card-action-row>button{flex-shrink:0}.catalog-card-dates{text-align:right;gap:4px;min-width:0;display:grid}.catalog-card-dates .catalog-access-expiry{font-size:11px;line-height:1.5}.catalog-card-dates time{white-space:nowrap}.catalog-card-dates:empty{display:none}@media (width<=1050px){.resource-catalog-grid{grid-template-columns:minmax(0,1fr)}}@container (width<=420px){.catalog-card-header{gap:8px}.catalog-card-controls{flex-wrap:wrap;gap:8px}.catalog-card-action-row{width:100%}.catalog-card-controls:not(:has(.catalog-access-expiry)) .catalog-card-action-row{width:auto}.catalog-card-dates{text-align:left;margin-right:auto}}@container (width<=300px){.catalog-card-header{grid-template-columns:minmax(0,1fr) auto}.catalog-machine-icon{display:none}}.catalog-access-chip.admin{color:var(--text-accent,#3157bd);background:var(--surface-accent,#e8efff)}.catalog-access-chip.user{color:var(--green);background:var(--green-soft)}.catalog-access-chip.pending{color:var(--orange);background:var(--orange-soft)}.catalog-access-chip.no_access{color:var(--text-secondary,#667085);background:var(--surface-raised,#f0f1f3)}.catalog-card-action.primary-button,.catalog-card-action.secondary-button{min-width:48px;height:30px;min-height:30px;padding:0 9px;font-size:11px}.catalog-card-action.danger{border-color:var(--border-danger,#edcaca);color:var(--red);background:var(--surface-panel,snow)}.catalog-card-action.danger:hover{border-color:var(--border-danger,#dbaaaa);background:var(--red-soft)}.resource-catalog-card .tag-row{flex-wrap:wrap;align-items:center}.resource-catalog-card .tag-row span{white-space:nowrap;flex:none}.field-counter{color:var(--muted);text-align:right;margin-top:-9px;font-size:10px}.reservation-category-tabs button{justify-content:center;align-items:center;gap:7px;min-width:132px;display:flex}.reservation-tab-count{min-width:20px;height:20px;color:var(--text-secondary,#687386);background:var(--surface-raised,#e5e9f0);border-radius:10px;place-items:center;padding:0 6px;font-size:10px;line-height:1;display:inline-grid}.reservation-category-tabs button.active .reservation-tab-count{color:var(--text-accent,#2455bd);background:var(--surface-accent,#e8efff)}.my-reservations-page .page-header{margin-bottom:18px}.reservation-list-panel{border-radius:8px;overflow:hidden}.reservation-list-toolbar{border-bottom:1px solid var(--line);background:var(--surface-panel,#fbfcfe);align-items:center;min-height:58px;padding:10px 15px;display:flex}.reservation-list-loading{min-height:248px}.reservation-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:248px;padding:42px 20px;display:flex}.reservation-empty-state>div{width:52px;height:52px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:14px;place-items:center;display:grid}.reservation-empty-state h3{color:var(--text-primary,#354052);margin:14px 0 0;font-size:14px}.card{border:1px solid var(--line);background:var(--surface-panel,white);box-shadow:var(--shadow)}.booking-table{overflow:hidden}.my-reservations-page .booking-table .table-row{grid-template-columns:280px 180px 100px minmax(220px,1fr) 78px 72px;min-height:82px;padding:14px 18px}.my-reservations-page .booking-table .table-row.table-head{letter-spacing:.01em;min-height:42px;padding-top:10px;padding-bottom:10px;font-size:11px}.my-reservations-page .resource-title strong,.my-reservations-page .time-copy strong,.my-reservations-page .reservation-duration strong,.my-reservations-page .booking-copy strong{font-size:13px}.my-reservations-page .resource-title span,.my-reservations-page .time-copy span,.my-reservations-page .booking-copy span{font-size:11px}.my-reservations-page .state-chip{padding:5px 8px;font-size:10px}.reservation-duration{min-width:0;color:var(--text-primary,#435069);white-space:nowrap}.my-reservations-page .row-actions{gap:6px}.reservation-action-button{border-color:var(--border-control,#e1e5eb);background:var(--surface-panel,#fff)}.reservation-action-button.edit{color:var(--text-accent,var(--blue))}.reservation-action-button.danger{border-color:var(--border-control,#efdada);color:var(--red);background:var(--surface-panel,snow)}.reservation-action-button.danger:hover{border-color:var(--border-danger,#e4bebe);background:var(--red-soft)}.table-row{border-bottom:1px solid var(--line);grid-template-columns:1.35fr 1fr 1.2fr 85px 115px;align-items:center;gap:18px;min-height:78px;padding:12px 17px;display:grid}.table-row:last-child{border-bottom:0}.table-row.table-head{min-height:39px;color:var(--text-secondary,#7b8494);background:var(--surface-raised,#f8f9fa);font-size:10px;font-weight:700}.resource-title{align-items:flex-start;gap:10px;min-width:0;display:flex}.machine-glyph{border:1px solid var(--border-accent,#d9e2f7);width:34px;height:34px;color:var(--text-accent,var(--blue));background:var(--surface-accent,#f1f5ff);border-radius:8px;flex:none;place-items:center;display:grid}.resource-title>div,.time-copy,.booking-copy,.admin-table-row>div:not(.row-actions):not(.member-identity){flex-direction:column;gap:3px;min-width:0;display:flex}.resource-title strong,.time-copy strong,.booking-copy strong,.admin-table-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.resource-title span,.time-copy span,.booking-copy span,.admin-table-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.change-note{color:var(--orange);align-items:center;gap:3px;font-size:9px;display:flex}.state-chip{width:fit-content;color:var(--text-secondary,#667085);background:var(--surface-raised,#f0f1f3);white-space:nowrap;border-radius:5px;padding:4px 7px;font-size:9px;font-weight:700}.state-chip.upcoming,.state-chip.active,.state-chip.watching,.state-chip.pending_approval{color:var(--text-accent,#1d54c4);background:var(--surface-accent,#e8efff)}.state-chip.active{color:var(--green);background:var(--green-soft)}.state-chip.cancelled,.state-chip.rejected,.state-chip.disabled,.state-chip.cancelled_unavailability{color:var(--text-disabled,#9a4c4c);background:var(--red-soft)}.state-chip.triggered{color:var(--green);background:var(--green-soft)}.state-chip.retiring{color:var(--orange);background:var(--orange-soft)}.row-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.unread-big{color:var(--text-accent,var(--blue));align-items:baseline;gap:6px;font-size:25px;font-weight:700;display:flex}.unread-big small{color:var(--muted);font-size:10px}.notification-header-actions{align-items:center;gap:13px;display:flex}.notification-read-all-button{justify-content:center;width:94px}.notification-list{overflow:hidden}.notification-row{border-bottom:1px solid var(--line);grid-template-columns:38px 1fr auto;align-items:center;gap:14px;min-height:91px;padding:17px 19px;display:grid}.notification-row:last-child{border-bottom:0}.notification-row.unread{background:var(--surface-panel,#f7f9ff)}.notification-icon{width:37px;height:37px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:10px;place-items:center;display:grid}.notification-copy{min-width:0}.notification-destination{width:100%;min-height:56px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 9px;display:grid}.notification-destination:hover{background:var(--surface-accent,#3763d20f)}.notification-destination:focus-visible{outline:2px solid var(--focus-ring,#2f5bd347);outline-offset:1px}.notification-destination>svg{color:var(--text-secondary,#98a2b3);transition:transform .16s,color .16s}.notification-destination:hover>svg{color:var(--text-accent,var(--blue));transform:translate(2px)}.notification-title{justify-content:space-between;align-items:center;display:flex}.notification-title strong{font-size:13px}.notification-title span{color:var(--muted);font-size:10px}.notification-row p{color:var(--text-secondary,#647083);margin:6px 0 0;font-size:11px;line-height:1.55}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:60px 20px;display:flex}.empty-state>div{width:58px;height:58px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:16px;place-items:center;display:grid}.empty-state h3{margin:17px 0 6px;font-size:15px}.empty-state h3:last-child{margin-bottom:0}.empty-state p{color:var(--muted);margin:0;font-size:12px}.admin-shell{min-height:calc(100vh - var(--app-header-height));min-height:calc(100dvh - var(--app-header-height));grid-template-columns:230px minmax(800px,1fr);display:grid}.admin-sidebar{top:var(--app-header-height);height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));color:var(--text-primary,#dce2ee);background:var(--navy);flex-direction:column;padding:30px 18px 20px;display:flex;position:sticky}.admin-sidebar>div:first-child{padding:0 10px 18px}.admin-sidebar h2{margin:0;font-size:20px;line-height:1.25}.admin-sidebar nav{flex-direction:column;gap:4px;display:flex}.admin-sidebar nav button{height:40px;color:var(--text-secondary,#8e9aaf);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;padding:0 11px;font-size:12px;display:flex}.admin-sidebar nav button.active{color:var(--text-on-accent,white);background:var(--surface-inverse,#1d2a42)}.admin-content{height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));box-sizing:border-box;min-width:0;padding:31px 34px 24px;overflow:hidden}.machine-management-content{height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));box-sizing:border-box;flex-direction:column;padding-bottom:24px;display:flex;overflow:hidden}.machine-management-content>.page-header{flex:none}.report-management-content{height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));box-sizing:border-box;padding-bottom:24px;overflow:hidden}.report-page{flex-direction:column;height:100%;min-height:0;display:flex}.report-page>.page-header,.report-page>.report-filters{flex:none}.report-results{flex-direction:column;flex:auto;min-height:0;display:flex}.machine-admin-layout{flex:auto;grid-template-columns:235px minmax(600px,1fr);align-items:stretch;gap:14px;min-height:0;display:grid}.machine-list{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.machine-list-search{border-bottom:1px solid var(--line);height:48px;color:var(--muted);background:var(--surface-panel,#fff);flex:none;align-items:center;gap:8px;padding:0 11px;display:flex}.machine-list-search input{background:0 0;border:0;outline:0;width:100%;min-width:0;height:32px;min-height:32px;padding:0;font-size:10px}.machine-list-scroll{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.machine-list-scroll>button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:64px;color:inherit;background:var(--surface-panel,white);text-align:left;cursor:pointer;grid-template-columns:34px 1fr 16px;align-items:center;gap:9px;padding:10px 11px;display:grid}.machine-list-scroll>button:last-of-type{border-bottom:0}.machine-list-scroll>button.active{background:var(--surface-accent,#f1f5ff)}.machine-list-scroll>button.active>svg{color:var(--text-accent,var(--blue))}.machine-list-icon{width:34px;height:34px;color:var(--text-secondary,#5f6b80);background:var(--surface-raised,#f0f2f5);border-radius:8px;place-items:center;display:grid}.machine-list-scroll button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.machine-list strong{font-size:11px}.machine-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.machine-detail{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;gap:12px;min-width:0;height:100%;min-height:0;padding-right:3px;display:flex;overflow-y:auto}.machine-context-bar{justify-content:space-between;align-items:center;gap:18px;min-height:58px;padding:0 7px 0 14px;display:flex}.machine-context-identity{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.machine-context-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.machine-context-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.machine-context-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.machine-section-tabs{flex:none;align-items:center;gap:3px;min-height:57px;display:flex}.machine-section-tabs button{height:57px;color:var(--text-secondary,#68758a);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 14px;font-size:11px;font-weight:650;display:flex;position:relative}.machine-section-tabs button:after{content:"";background:0 0;height:2px;position:absolute;bottom:0;left:12px;right:12px}.machine-section-tabs button.active{color:var(--text-accent,var(--blue))}.machine-section-tabs button.active:after{background:var(--blue)}.machine-section-tabs button:focus{outline:none}.machine-section-tabs button:focus-visible{box-shadow:inset 0 0 0 2px var(--focus-ring,#9bb7f5);border-radius:5px}.machine-section-tabs button>span{min-width:18px;height:18px;color:var(--text-on-accent,#fff);background:var(--fill-danger,#dc3545);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:9px;line-height:1;display:inline-flex}.machine-section-content{min-width:0}.machine-section-stack{gap:12px;display:grid}.machine-management-empty{text-align:center;flex-direction:column;flex:none;justify-content:center;align-items:center;min-height:250px;padding:38px 24px;display:flex}.machine-management-empty-icon{width:54px;height:54px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:15px;place-items:center;display:grid}.machine-management-empty h2{margin:16px 0 6px;font-size:16px}.machine-management-empty p{color:var(--muted);margin:0 0 18px;font-size:12px}.machine-management-loading{min-height:140px;color:var(--muted);flex:none;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.tag-row{flex-wrap:wrap;gap:5px;display:flex}.tag-row span{border:1px solid var(--border-subtle,#dbe0e8);color:var(--text-secondary,#667084);background:var(--surface-raised,#f7f8fa);border-radius:4px;padding:3px 6px;font-size:9px}.detail-grid{grid-template-columns:1.2fr .8fr;gap:12px;display:grid}.panel-card,.report-card{padding:16px}.section-header{justify-content:space-between;align-items:center;gap:11px;min-height:30px;margin-bottom:14px;display:flex}.section-header-title{flex:1;min-width:0}.section-header h2,.section-header h3{color:var(--text-primary,#303b4d);margin:0;line-height:1.25}.section-header h2{font-size:18px}.section-header h3{font-size:13px}.section-header-actions{min-width:0;color:var(--text-secondary,#8490a2);justify-content:flex-end;align-items:center;gap:7px;display:flex}.section-header-icon{flex:none;place-items:center;display:grid}.group-admin-table{border-top:1px solid var(--line);overflow:hidden}.group-admin-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(150px,1fr) 52px minmax(59px,auto);align-items:center;gap:12px;min-height:58px;padding:9px 8px;display:grid}.group-admin-row.head{min-height:34px;color:var(--muted);background:var(--surface-raised,#f8f9fa);padding-block:0;font-size:9px;font-weight:700}.group-admin-row.head>span:last-child{text-align:right}.group-admin-row:last-child{border-bottom:0}.group-admin-info{align-items:center;gap:9px;min-width:0;display:flex}.group-admin-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.group-admin-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;overflow:hidden}.group-admin-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.group-admin-copy .resource-summary{margin-top:0;font-size:9px}.group-admin-row .group-admin-actions{flex-direction:row;justify-content:flex-end;align-items:center;gap:5px;min-width:0;display:flex}.resource-pool-row{grid-template-columns:minmax(150px,1.5fr) minmax(76px,.65fr) minmax(110px,1fr) minmax(59px,auto)}.group-status-cell{align-items:center;gap:5px;display:flex}.state-chip.scheduled{color:var(--text-warning,#9a5d17);background:var(--orange-soft)}.resource-pool-row>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;overflow:hidden}.resource-group-panel,.resource-pool-panel{box-sizing:border-box;width:100%}.machine-section-content .group-admin-row.head{z-index:2;position:sticky;top:0}.machine-info-overview{grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);gap:10px;display:grid}.machine-info-identity,.machine-info-resource{border:1px solid var(--line);background:var(--surface-panel,#fafbfc);border-radius:8px;min-width:0;min-height:76px;padding:12px 14px}.machine-info-identity{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.machine-info-symbol{width:38px;height:38px;color:var(--text-secondary,#4166a8);background:var(--surface-accent,#edf3ff);border-radius:8px;place-items:center;display:grid}.machine-info-identity>div{flex-direction:column;gap:2px;min-width:0;display:flex}.machine-info-identity>div>span,.machine-info-resource>span,.machine-info-tags>span,.machine-info-detail>span{color:var(--muted);font-size:9px;font-weight:700}.machine-info-identity strong{color:var(--text-primary,#293548);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;overflow:hidden}.machine-info-identity small{color:var(--text-secondary,#68758a);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.machine-info-resource{flex-direction:column;justify-content:center;gap:8px;display:flex}.machine-info-resource>span,.machine-info-detail>span{align-items:center;gap:6px;display:flex}.machine-info-resource strong{color:var(--text-primary,#344054);font-size:11px;font-weight:650;line-height:1.55}.machine-info-tags{border:1px solid var(--line);border-radius:7px;align-items:center;gap:12px;min-height:38px;margin-top:10px;padding:7px 10px;display:flex}.machine-info-tags>span{flex:none}.machine-info-tags .tag-row{min-width:0}.machine-info-tags em{color:var(--muted);font-size:10px;font-style:normal}.machine-info-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.machine-info-detail{border:1px solid var(--line);background:var(--surface-panel,#fff);border-radius:8px;min-width:0;min-height:88px;padding:11px 12px}.machine-info-detail.management{border-color:var(--border-subtle,#dbe3f3);background:var(--surface-panel,#fafcff)}.machine-info-text{margin-top:7px}.machine-info-text p{color:var(--text-secondary,#4a5568);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:10px;line-height:1.65;display:-webkit-box;overflow:hidden}.machine-info-text p.expanded{display:block;overflow:visible}.machine-info-text button{color:var(--text-accent,var(--blue));cursor:pointer;background:0 0;border:0;margin-top:5px;padding:0;font-size:9px}.machine-disabled-state{border:1px solid var(--border-warning,#e4c8a8);min-height:58px;color:var(--text-disabled,#89501f);background:var(--surface-warning,#fff9f2);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.machine-disabled-state.active{border-color:var(--border-subtle,#c8ded4);color:var(--text-disabled,#257556);background:var(--surface-disabled,#f4fbf7)}.machine-disabled-state>div:first-child{align-items:center;gap:8px;display:flex}.machine-disabled-state strong{font-size:11px}.machine-disable-modal{gap:15px}.machine-disable-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.machine-disable-modal .unavailability-impact-bar{margin-top:0}.machine-disable-modal-action{white-space:nowrap;justify-content:center;width:120px}.machine-form{gap:14px}.machine-form-primary,.machine-form-public-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.machine-form-public-notes textarea{min-height:112px}.machine-form-management textarea{min-height:96px}.machine-form-label{justify-content:space-between;align-items:center;gap:12px;display:flex!important}.machine-form-label>small{color:var(--text-warning,#9a5d17);white-space:nowrap;align-items:center;gap:4px;font-size:9px;font-weight:500;display:inline-flex}.machine-form-management .field-counter{margin-top:-3px;font-weight:400}.machine-form-actions{margin-top:2px}.machine-form-actions button{justify-content:center;width:104px}.unavailability-empty{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin-top:12px;padding:13px 10px;font-size:10px}.unavailability-impact-bar{border-radius:7px;justify-content:space-between;align-items:center;gap:14px;margin-top:10px;padding:10px 11px;display:flex}.unavailability-impact-bar.warning{color:var(--text-warning,#98521c);background:var(--orange-soft)}.unavailability-impact-bar.safe{color:var(--green);background:var(--green-soft)}.unavailability-impact-bar>div{align-items:flex-start;gap:8px;min-width:0;display:flex}.unavailability-impact-bar>div>span{flex-direction:column;gap:3px;min-width:0;display:flex}.unavailability-impact-bar strong{font-size:10px}.unavailability-impact-bar small{font-size:9px}.unavailability-table{border-top:1px solid var(--line);margin-top:12px}.unavailability-table-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(160px,.8fr) minmax(300px,1.4fr) 32px;align-items:center;gap:12px;min-height:46px;padding:7px 8px;font-size:10px;display:grid}.unavailability-table-row.head{min-height:34px;color:var(--muted);background:var(--surface-raised,#f8f9fa);padding-block:0;font-size:9px;font-weight:700}.unavailability-table-row>span{color:var(--text-secondary,#657084)}.machine-unavailability-table{border:1px solid var(--line);border-radius:8px;overflow:hidden}.machine-unavailability-table-row{grid-template-columns:150px 215px minmax(0,1fr) 32px;gap:14px}.machine-unavailability-table-row:last-child{border-bottom:0}.machine-unavailability-table-row.head{padding-inline:12px}.machine-unavailability-table-row:not(.head){min-height:54px;padding-inline:12px;font-size:11px}.unavailability-kind-chip{border:1px solid var(--border-warning,#efd2b8);background:var(--surface-warning,#fff5eb);white-space:nowrap;border-radius:999px;width:fit-content;padding:3px 7px;font-size:9px;font-weight:700;line-height:1.2;color:var(--text-warning,#9b541d)!important}.unavailability-kind-chip.long-term{border-color:var(--border-warning,#e2bd98);background:var(--surface-warning,#ffedda);color:var(--text-warning,#8c4617)!important}.unavailability-kind-chip.group{border-color:var(--border-accent,#cad8f2);background:var(--surface-raised,#f1f5fd);text-overflow:ellipsis;max-width:100%;overflow:hidden;color:var(--text-accent,#315caa)!important}.unavailability-period,.unavailability-reason{text-overflow:ellipsis;min-width:0;overflow:hidden}.unavailability-period{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-primary,#3f4a5d)!important}.unavailability-reason{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;color:var(--text-secondary,#566174)!important}.unavailability-reason.empty{color:var(--text-secondary,#9aa3b2)!important}.unavailability-row-action{justify-content:center;min-width:32px;display:flex}.resource-item-editor,.resource-allocation-editor,.range-allocation-list{flex-direction:column;gap:9px;display:flex}.resource-allocation-editor>.section-label{margin:2px 0 0}.resource-item-row{grid-template-columns:minmax(150px,.8fr) minmax(220px,1.2fr) 32px;align-items:center;gap:9px;display:grid}.resource-allocation-card{border:1px solid var(--line);background:var(--surface-panel,#fafbfc);border-radius:8px;padding:12px}.resource-allocation-card.selected{border-color:var(--border-accent,#c8d6f7);background:var(--surface-input,#f8faff)}.resource-allocation-card.conflict{border-color:var(--border-danger,#df8f8f);background:var(--surface-panel,#fff7f7);box-shadow:inset 3px 0 0 var(--border-danger,#c65353)}.resource-allocation-toggle{cursor:pointer;align-items:center;gap:9px;display:flex}.resource-allocation-toggle input[type=checkbox],.device-choice-grid input[type=checkbox]{width:16px;height:16px;min-height:16px;accent-color:var(--blue);flex:none}.resource-allocation-toggle>span,.device-choice-grid label>span{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.resource-allocation-toggle strong,.device-choice-grid strong{color:var(--text-primary,#303b4d);font-size:11px}.resource-allocation-toggle small,.device-choice-grid small{color:var(--muted);font-size:9px}.resource-allocation-card>:not(.resource-allocation-toggle){margin-top:11px}.range-allocation-row{grid-template-columns:90px 12px 90px minmax(150px,1fr) 32px;align-items:center;gap:7px;display:grid}.device-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.device-choice-grid label{border:1px solid var(--line);background:var(--surface-panel,white);border-radius:6px;align-items:center;gap:7px;min-width:0;padding:8px;display:flex}.device-choice-grid label.unavailable{opacity:.55;background:var(--surface-raised,#f4f5f7)}.resource-config-editor{flex-direction:column;gap:12px;height:calc(100vh - 154px);min-height:0;max-height:640px;display:flex}.resource-config-tabs{border-bottom:1px solid var(--line);align-items:center;gap:22px;display:flex}.resource-config-tabs button{min-height:38px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 2px;font-size:11px;font-weight:700}.resource-config-tabs button.active{border-bottom-color:var(--blue);color:var(--text-accent,var(--blue))}.resource-config-workspace{border:1px solid var(--line);background:var(--surface-panel,white);border-radius:9px;flex:auto;grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.resource-config-list{border-right:1px solid var(--line);background:var(--surface-raised,#f7f8fa);flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.resource-config-add{flex:none;justify-content:center;width:100%}.resource-config-list>div{flex-direction:column;flex:auto;gap:5px;min-height:0;padding-block:5px;display:flex;overflow:auto}.resource-config-list>div>button{width:100%;min-width:0;color:var(--text-primary,#465267);text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;flex-direction:column;align-items:flex-start;gap:3px;padding:9px 10px;display:flex;position:relative}.resource-config-list>div>button:hover{border-color:var(--border-control,#dce3ef);background:var(--surface-hover,white)}.resource-config-list>div>button.draggable{cursor:grab}.resource-config-list>div>button.draggable:active{cursor:grabbing}.resource-config-list>div>button.dragging{opacity:.42}.resource-config-list>div>button.drop-before:before,.resource-config-list>div>button.drop-after:after{content:"";z-index:2;pointer-events:none;background:radial-gradient(circle at 4px 4px, var(--fill-accent,#3f6fce) 0 3px, transparent 3.5px) left center / 8px 8px no-repeat, linear-gradient(var(--fill-accent,#3f6fce), var(--fill-accent,#3f6fce)) 7px center / calc(100% - 7px) 2px no-repeat;height:8px;position:absolute;left:2px;right:2px}.resource-config-list>div>button.drop-before:before{top:-7px}.resource-config-list>div>button.drop-after:after{bottom:-7px}.resource-config-list>div>button.active{border-color:var(--border-accent,#c9d7f8);color:var(--text-accent,#244a9a);background:var(--surface-accent,#edf3ff)}.resource-config-list>div>button.has-errors{border-color:var(--border-danger,#e6b0b0);background:var(--surface-panel,#fff7f7)}.resource-config-list>div>button.active.has-errors{border-color:var(--border-danger,#d98282);color:var(--text-danger,#853535);background:var(--surface-danger,#fff1f1)}.resource-config-list>div>button strong,.resource-config-list>div>button small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.resource-config-list>div>button strong{font-size:11px}.resource-config-list>div>button small{color:var(--muted);font-size:9px}.resource-config-list-name{align-items:center;gap:5px;max-width:100%;display:flex}.resource-config-list-name svg{color:var(--text-secondary,#8b96a8);flex:none}.resource-config-error-count{color:var(--text-danger,#ad4141);align-items:center;gap:5px;font-size:9px;font-weight:700;display:inline-flex}.resource-config-error-count i{background:var(--fill-danger,#d34f4f);width:6px;height:6px;box-shadow:0 0 0 2px var(--shadow-color,#f9dede);border-radius:50%}.resource-config-form{flex-direction:column;gap:14px;min-width:0;min-height:0;padding:16px;display:flex;overflow:auto}.resource-config-form-head{justify-content:space-between;align-items:center;gap:12px;min-height:30px;display:flex}.resource-config-form-head>strong{min-width:0;color:var(--text-primary,#273245);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.resource-config-form-head>div{align-items:center;gap:8px;display:flex}.resource-config-conflict-chip{border:1px solid var(--border-danger,#e5a4a4);min-height:23px;color:var(--text-danger,#a43e3e);background:var(--surface-raised,#fff3f3);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:9px;font-weight:700;display:inline-flex}.resource-config-invalid{border-color:var(--border-danger,#d86c6c)!important;background:var(--surface-panel,#fff8f8)!important;box-shadow:0 0 0 2px var(--shadow-color,#c4484814)!important}.resource-config-invalid-region{border:1px solid var(--border-danger,#df8f8f);background:var(--surface-panel,#fff8f8);border-radius:8px;padding:10px}.resource-tag-editor{flex-direction:column;gap:7px;min-width:0;display:flex}.resource-tag-list{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.resource-tag-entry{grid-template-columns:minmax(0,1fr) 64px;width:100%;display:grid}.resource-tag-input-shell{border:1px solid var(--border-control,#d7dce5);background:var(--surface-input,white);border-radius:7px 0 0 7px;align-items:center;min-height:39px;padding:0 10px;display:flex}.resource-tag-input-shell:focus-within{border-color:var(--border-focus,#789ae5);box-shadow:0 0 0 3px var(--focus-ring,#4a71cf1a)}.resource-tag-input-shell.resource-config-invalid:focus-within{border-color:var(--border-focus,#d86c6c);box-shadow:0 0 0 2px var(--focus-ring,#c4484814)}.resource-tag-input-shell input{border-radius:0;width:100%;min-width:0;min-height:37px;padding:0;box-shadow:none!important;background:0 0!important;border:0!important}.resource-tag-entry .secondary-button{border-radius:0 7px 7px 0;width:64px;min-width:0;min-height:39px;margin-left:-1px}.resource-tag-token{border:1px solid var(--border-accent,#cbd8f2);min-width:0;min-height:25px;color:var(--text-secondary,#38568f);background:var(--surface-accent,#eef4ff);border-radius:999px;align-items:center;gap:4px;padding:0 4px 0 8px;font-size:9px;font-weight:700;display:inline-flex}.resource-tag-token>span{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.resource-tag-token button{width:19px;min-width:19px;height:19px;min-height:19px;color:var(--text-secondary,#61759d);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.resource-tag-token button:hover{color:var(--text-danger,#9a4141);background:var(--surface-danger-hover,#f9dddd)}.resource-tag-error{color:var(--text-danger,#a43f3f);align-items:center;gap:5px;margin-top:5px;font-size:9px;line-height:1.4;display:flex}.resource-config-inline-errors,.resource-allocation-errors{color:var(--text-danger,#a43f3f);flex-direction:column;gap:5px;font-size:9px;line-height:1.5;display:flex}.resource-config-inline-errors{border:1px solid var(--border-danger,#ebbbbb);background:var(--surface-panel,#fff6f6);border-radius:7px;padding:9px 10px}.resource-allocation-errors{border-top:1px solid var(--border-danger,#edc6c6);padding-top:9px}.resource-config-inline-errors span,.resource-allocation-errors span{align-items:flex-start;gap:6px;display:flex}.resource-config-inline-errors svg,.resource-allocation-errors svg{flex:none;margin-top:1px}.resource-config-validation-summary{border:1px solid var(--border-danger,#e7b3b3);min-height:34px;color:var(--text-danger,#a33d3d);background:var(--surface-raised,#fff4f4);border-radius:7px;align-items:center;gap:7px;padding:8px 10px;font-size:10px;font-weight:700;display:flex}.resource-config-validation-summary svg{flex:none}.resource-config-save-error{border:1px solid var(--border-danger,#efc0c0);color:var(--text-danger,#a13f3f);background:var(--surface-panel,#fff5f5);border-radius:7px;align-items:flex-start;gap:7px;padding:9px 11px;font-size:10px;line-height:1.55;display:flex}.resource-config-save-error svg{flex:none;margin-top:1px}.resource-config-actions button{justify-content:center;width:112px}.compact-form{gap:10px}.compact-form .field{font-size:10px}.compact-form input{height:34px;font-size:10px}.impact{border-radius:5px;align-items:center;gap:6px;padding:8px;font-size:10px;font-weight:600;display:flex}.impact.warning{color:var(--text-warning,#a35318);background:var(--orange-soft)}.impact.safe{color:var(--green);background:var(--green-soft)}.info-panel dl{grid-template-columns:70px 1fr;gap:11px;margin:0;display:grid}.info-panel dt{color:var(--muted);font-size:10px}.info-panel dd{color:var(--text-secondary,#4a5568);white-space:pre-wrap;margin:0;font-size:10px;line-height:1.55}.management-notes-panel p{min-height:54px;color:var(--text-secondary,#4a5568);white-space:pre-wrap;margin:0;font-size:11px;line-height:1.7}.machine-requests-panel{order:1}.machine-access-panel{order:2}.machine-access-panel,.machine-requests-panel{min-width:0}.machine-access-section .machine-member-row,.machine-access-section .machine-request-row{grid-template-columns:minmax(160px,1.2fr) minmax(100px,.8fr) 128px 132px 88px;gap:12px;min-width:660px;min-height:60px;padding:9px 8px;font-size:11px}.machine-access-section .machine-member-head{min-height:34px;color:var(--muted);padding-block:0;font-size:10px;font-weight:500}.machine-access-section .machine-member-head>span:first-child{padding-left:0}.machine-access-section .machine-member-list,.machine-access-section .machine-request-list{overflow-x:auto}.machine-access-section .state-chip{justify-self:start}.machine-access-section time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px}.machine-access-section .access-request-reason{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:11px;display:-webkit-box;overflow:hidden}.access-expiry-button{max-width:100%;min-height:30px;color:var(--ink);text-align:left;cursor:pointer;font:inherit;font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:4px 6px;display:inline-flex}.access-expiry-button svg{color:var(--muted);opacity:.65;flex-shrink:0}.access-expiry-button:hover,.access-expiry-button:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent,var(--blue-soft));border-color:var(--border-accent,var(--line))}.access-expiry-button:focus-visible{outline:2px solid var(--focus-ring,var(--blue));outline-offset:2px}.access-expiry-button:hover svg,.access-expiry-button:focus-visible svg{color:inherit;opacity:1}.access-expiry-cell{justify-items:start;gap:2px;margin-left:-6px;display:grid}.access-expiry-readonly{color:var(--muted);font-variant-numeric:tabular-nums;padding:4px 6px}.access-expiry-cell small{color:var(--text-danger,#a13f3f);padding-inline:6px;font-size:10px}.access-expiry-cell.expired .access-expiry-button{color:var(--text-danger,#a13f3f)}.machine-access-modal .modal-actions{padding-top:4px}.machine-access-modal .modal-actions>button{min-width:88px}.machine-access-modal .invite-candidate-list{border-radius:7px}.catalog-access-expiry{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.machine-member-list,.machine-request-list{border-top:1px solid var(--line)}.machine-member-row{border-bottom:1px solid var(--line);min-height:58px;color:var(--text-secondary,#667084);grid-template-columns:minmax(240px,1.5fr) 72px 118px minmax(94px,auto);align-items:center;gap:8px;padding:8px 0;font-size:10px;display:grid}.machine-member-row:last-child{border-bottom:0}.machine-member-head{min-height:34px;color:var(--text-secondary,#8a93a2);background:var(--surface-panel,#fafbfc);padding:0;font-size:9px;font-weight:700}.machine-member-head>span:first-child{padding-left:8px}.member-identity{align-items:center;gap:9px;min-width:0;display:flex}.member-identity>span{flex-direction:column;gap:3px;min-width:0;display:flex}.member-identity strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.member-identity small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.machine-member-row .row-actions,.machine-request-row .row-actions{white-space:nowrap;justify-content:flex-end;gap:6px}.list-icon-action{color:var(--text-secondary,#526078);border-color:#0000}.list-icon-action.approve{color:var(--green)}.list-icon-action.invite{color:var(--text-accent,var(--blue));background:var(--blue-soft)}.list-icon-action:disabled{opacity:.5;cursor:not-allowed}.state-chip.member,.state-chip.pending{color:var(--text-secondary,#506077);background:var(--surface-raised,#edf0f5)}.request-count{min-width:24px;height:24px;color:var(--text-secondary,#415b8d);background:var(--surface-accent,#edf3ff);border-radius:12px;place-items:center;font-size:10px;font-weight:700;display:grid}.machine-request-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(190px,1fr) minmax(180px,1.4fr) 126px auto;align-items:center;gap:14px;min-height:66px;padding:9px 0;display:grid}.machine-request-row:last-child{border-bottom:0}.machine-request-row p{color:var(--text-secondary,#5e6879);margin:0;font-size:10px;line-height:1.5}.machine-request-row time{color:var(--muted);font-size:9px}.invite-member-modal .search-box{width:100%}.invite-candidate-list{border:1px solid var(--line);max-height:340px;overflow:auto}.invite-candidate-list>div:not(.mini-empty){border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:8px 10px;display:flex}.invite-candidate-list>div:last-child{border-bottom:0}.revision-list{border-top:1px solid var(--line);margin-top:3px;padding-top:2px}.revision-list>div:not(.section-label){border-bottom:1px solid var(--line);grid-template-columns:28px 1fr auto;align-items:center;gap:8px;min-height:38px;display:grid}.revision-list>div>span{color:var(--text-accent,var(--blue));font-size:9px;font-weight:700}.revision-list>div>strong{font-size:9px}.revision-list>div>small{color:var(--muted);font-size:8px}.admin-table{overflow:hidden}.admin-table-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(180px,1.2fr) minmax(140px,1fr) 110px 90px minmax(250px,1.5fr);align-items:center;gap:15px;min-height:68px;padding:11px 16px;font-size:10px;display:grid}.admin-table-row:last-child{border-bottom:0}.admin-table-row.head{min-height:39px;color:var(--muted);background:var(--surface-raised,#f8f9fa);font-size:10px;font-weight:700}.admin-table-row .row-actions{flex-wrap:wrap}.user-management-sections{gap:12px;display:grid}.user-management-page,.announcement-management-page,.settings-management-page,.audit-management-page{overscroll-behavior:contain;scrollbar-gutter:stable;height:100%;min-height:0;padding-right:8px;display:block;overflow-y:auto}.user-list-panel,.user-application-panel{min-width:0}.user-application-panel{order:1}.user-list-panel{order:2}.user-account-table,.user-application-list{--user-management-columns:minmax(180px, 1.05fr) minmax(100px, .55fr) minmax(190px, 1.15fr) 164px 70px 100px;border-top:1px solid var(--line);overflow:hidden}.user-account-row{grid-template-columns:var(--user-management-columns);gap:14px;min-height:64px;padding:10px 12px}.user-account-table{overflow-x:auto}.user-account-row:not(.directory){min-width:898px}.user-account-row.directory{grid-template-columns:minmax(240px,1fr) minmax(140px,.65fr) 90px}.user-account-row.head{letter-spacing:.02em;min-height:38px;padding-block:0;font-size:10px}.user-account-row .member-identity{gap:10px}.user-account-row .avatar.small{border-radius:9px;width:34px;height:34px;font-size:13px}.user-account-row .member-identity strong{font-size:13px}.user-account-row .member-identity small{font-size:10px}.user-account-email,.user-account-employee-number{min-width:0;color:var(--text-primary,#354052);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.user-account-email{font-weight:400}.user-account-employee-number{font-weight:600}.user-account-last-login{color:var(--text-secondary,#596579);white-space:nowrap;font-size:11px}.user-account-row .state-chip{padding:5px 8px;font-size:10px}.user-account-row .icon-button.tiny{width:30px;height:30px}.user-account-row .row-actions{white-space:nowrap;flex-wrap:nowrap;justify-content:flex-end;gap:5px}.user-application-row{grid-template-columns:var(--user-management-columns);border-bottom:1px solid var(--line);min-height:64px;color:var(--text-secondary,#667084);align-items:center;gap:14px;padding:10px 12px;font-size:11px;display:grid}.user-application-row:last-child{border-bottom:0}.user-application-row.head{min-height:38px;color:var(--text-secondary,#8a93a2);background:var(--surface-panel,#fafbfc);letter-spacing:.02em;padding-block:0;font-size:10px;font-weight:700}.user-application-row .member-identity{gap:10px}.user-application-row .avatar.small{border-radius:9px;width:34px;height:34px;font-size:13px}.user-application-row .member-identity strong{font-size:13px}.user-application-row .member-identity small{font-size:10px}.application-user-meta{align-items:center;gap:6px;display:flex}.application-user-meta>span:first-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.application-new-user-tag{color:var(--text-accent,#315fc6);background:var(--surface-accent,#edf3ff);border-radius:4px;flex:none;padding:2px 5px;font-size:9px;font-weight:700;line-height:1.3}.application-employee-number,.application-email{min-width:0;color:var(--text-primary,#354052);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.application-employee-number{font-weight:600}.application-email{font-weight:400}.application-field-change{grid-template-columns:minmax(38px,1fr) 13px minmax(38px,1fr);align-items:center;gap:4px;min-width:0;display:grid}.application-field-change del,.application-field-change strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.application-field-change del{color:var(--text-secondary,#929aaa);font-size:11px}.application-field-change strong{color:var(--ink);font-size:12px}.list-icon-action.destructive{background:var(--red-soft)}.user-application-row time{color:var(--muted);font-size:11px}.user-application-row .icon-button.tiny{width:30px;height:30px}.user-application-row .state-chip{padding:5px 8px;font-size:10px}.application-actions{grid-template-columns:repeat(3,30px);justify-content:end;gap:5px;display:grid}.application-action-placeholder{width:30px;height:30px;display:block}.report-filters{grid-template-columns:minmax(150px,.75fr) minmax(150px,.75fr) minmax(220px,1fr) auto;align-items:end;gap:14px;margin-bottom:14px;padding:14px 16px;display:grid}.report-filters>button{justify-content:center;width:112px;height:39px}.metric-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px;display:grid}.metric-card{align-items:center;gap:16px;min-height:98px;padding:19px 20px;display:flex}.metric-icon{width:46px;height:46px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:12px;flex:0 0 46px;place-items:center;display:grid}.metric-copy{flex:1;justify-content:space-between;align-items:center;gap:14px;min-width:0;display:flex}.metric-card span{color:var(--text-secondary,#5f6b7c);white-space:nowrap;flex:none;font-size:15px;font-weight:650;line-height:1.2}.metric-card strong{letter-spacing:-.035em;white-space:nowrap;margin-left:auto;font-size:29px;line-height:1.08}.report-layout{flex:auto;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:14px;min-height:0;display:grid}.report-card{flex-direction:column;height:100%;min-height:0;padding:18px 20px;display:flex;overflow:hidden}.report-card>.section-header{flex:none}.utilization-list,.ranking-list{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;flex:auto;gap:17px;min-height:0;padding-right:8px;display:flex;overflow-y:auto}.util-label{justify-content:space-between;align-items:center;gap:16px;margin-bottom:7px;display:flex}.util-label span{flex-direction:column;gap:3px;min-width:0;display:flex}.util-label strong{font-size:13px}.util-label small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.35;overflow:hidden}.util-label b{color:var(--text-accent,var(--blue));flex:none;font-size:14px}.progress{background:var(--surface-raised,#edf0f4);border-radius:4px;height:7px;overflow:hidden}.progress span{border-radius:inherit;background:var(--blue);height:100%;display:block}.ranking-list>div:not(.mini-empty){grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:36px;display:grid}.utilization-list>.mini-empty,.ranking-list>.mini-empty{white-space:nowrap;flex:auto;place-items:center;min-height:0;padding:24px;font-size:12px;line-height:1.5;display:grid}.rank{width:28px;height:28px;color:var(--text-secondary,#49679f);background:var(--surface-raised,#eef2f9);border-radius:7px;place-items:center;font-size:11px;font-weight:700;display:grid}.ranking-list div>div{align-items:center;min-width:0;display:flex}.ranking-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;overflow:hidden}.ranking-list b{white-space:nowrap;color:var(--text-primary,#475366);font-size:12px}.renewal-request-label{color:var(--text-accent,var(--blue));margin:3px 0 0 42px;font-size:10px;display:block}.renewal-expiry-comparison>small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.settings-page{flex-direction:column;gap:16px;width:100%;display:flex}.settings-card{box-sizing:border-box;width:100%;padding:20px}.smtp-settings-card{transition:background-color .18s,border-color .18s,box-shadow .18s}.smtp-settings-card.is-disabled{border-color:var(--border-subtle,#d9dde3);background:var(--surface-disabled,#f0f2f5);box-shadow:none}.smtp-settings-card .settings-intro,.smtp-settings-card .settings-intro .section-header-icon,.smtp-settings-body{transition:border-color .18s,color .18s,background-color .18s,opacity .18s}.smtp-settings-card.is-disabled .settings-intro{border-bottom-color:var(--border-subtle,#d7dbe1)}.smtp-settings-card.is-disabled .settings-intro .section-header-icon{color:var(--text-disabled,#737d8d);background:var(--surface-disabled,#e1e4e9)}.smtp-settings-card.is-disabled .smtp-settings-body{opacity:var(--readable-detail-opacity,.68)}.smtp-settings-card.is-disabled:focus-within .smtp-settings-body{opacity:var(--readable-detail-opacity,.88)}.smtp-settings-card.is-disabled input,.smtp-settings-card.is-disabled .select-control-trigger,.smtp-settings-card.is-disabled .smtp-test-control{background:var(--surface-disabled,#ffffffc7)}.smtp-settings-body{flex-direction:column;display:flex}.settings-intro{border-bottom:1px solid var(--line);min-height:52px;margin-bottom:0;padding-bottom:15px}.settings-intro .section-header-icon{width:36px;height:36px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:9px;flex:0 0 36px;place-items:center;display:grid}.settings-intro h3{color:var(--text-primary,#2f3a4d);font-size:15px;font-weight:700}.booking-settings-card{padding:16px 20px;container:booking-settings/inline-size}.booking-rule-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;padding:14px 0;display:grid}.settings-fields{grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;display:grid}.booking-settings-card .settings-rule-note{color:var(--text-secondary,#64748b);background:0 0;border:0;flex:260px;padding:0;line-height:1.6}.booking-settings-card .settings-card-footer{flex-wrap:wrap;min-height:47px;padding-top:12px}.booking-settings-card .settings-card-footer .primary-button{flex-shrink:0;min-width:104px;margin-left:auto}.booking-settings-card .settings-card-footer .primary-button:disabled{border:1px solid var(--line);background:var(--surface-raised,#f8fafc);color:var(--text-disabled,#8994a5);box-shadow:none;opacity:1}@container booking-settings (width<=640px){.booking-rule-fields{grid-template-columns:minmax(0,1fr);gap:12px}}.email-domain-settings{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;padding-top:10px;display:grid}.mail-service-section{padding-top:18px}.smtp-configuration-section{order:1}.registration-email-section{border-top:1px solid var(--line);order:2;margin-top:18px}.mail-service-section-heading{min-height:28px;color:var(--text-primary,#344054);align-items:center;gap:8px;display:flex}.mail-service-section-heading svg{color:var(--text-secondary,#64748b);flex:none}.mail-service-section-heading strong{font-size:13px;font-weight:700}.site-profile-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;padding:18px 0;display:grid}.site-profile-origin{grid-column:1/-1}.settings-card-footer.site-profile-footer{justify-content:flex-end}@media (width<=820px){.site-profile-fields{grid-template-columns:1fr}.site-profile-origin{grid-column:auto}}.email-domain-policy-badge{min-height:26px;color:var(--text-secondary,#6d7686);background:var(--surface-raised,#eef1f5);white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.email-domain-policy-badge.is-restricted{color:var(--text-accent,#315ea8);background:var(--surface-accent,#eaf1ff)}.registration-email-policy{border-right:1px solid var(--line);align-content:start;gap:12px;min-height:82px;padding:2px 24px 2px 0;display:grid}.registration-email-field-title{color:var(--text-primary,#3d4758);font-size:12px;font-weight:700}.registration-email-policy-control{justify-content:space-between;align-items:center;gap:16px;min-height:39px;display:flex}.registration-email-policy-control>strong{color:var(--text-secondary,#5d6879);font-size:12px;font-weight:600}.registration-email-domains{gap:8px;min-width:0;display:grid}.email-domain-list{scrollbar-gutter:stable;flex-wrap:wrap;align-content:flex-start;align-items:center;gap:6px;max-height:102px;display:flex;overflow-y:auto}.email-domain-token{border:1px solid var(--border-accent,#cbd8f2);min-height:27px;color:var(--text-secondary,#38568f);background:var(--surface-accent,#eef4ff);border-radius:999px;align-items:center;gap:5px;padding:0 4px 0 10px;font-size:11px;font-weight:700;display:inline-flex}.email-domain-token button{width:22px;height:22px;color:var(--text-secondary,#6c7fa5);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.email-domain-token button:hover,.email-domain-token button:focus-visible{color:var(--text-danger,#b23a48);background:var(--surface-hover,#fff)}.email-domain-entry{grid-template-columns:minmax(0,1fr) 72px;width:100%;display:grid}.email-domain-entry input{border-radius:7px 0 0 7px;min-width:0}.email-domain-entry .secondary-button{border-radius:0 7px 7px 0;width:72px;min-width:0;min-height:39px;margin-left:-1px}.email-domain-entry.is-invalid input{z-index:1;border-color:var(--border-danger,#d86c6c);box-shadow:0 0 0 2px var(--shadow-color,#c4484814);position:relative}.email-domain-error{min-height:16px;color:var(--text-danger,#b42334);font-size:11px;font-weight:600}.settings-card-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:55px;padding-top:16px;display:flex}.settings-card-footer .primary-button{min-height:39px}.smtp-header-controls{flex:none;align-items:center;gap:14px;display:flex}.smtp-state{min-height:26px;color:var(--text-secondary,#70798a);background:var(--surface-raised,#eef1f5);white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.smtp-state.ready{color:var(--text-success,#277250);background:var(--surface-success,#e7f5ed)}.smtp-state.warning{color:var(--text-warning,#a36619);background:var(--surface-warning,#fff2d8)}.settings-toggle-control{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex;position:relative}.settings-toggle-control strong{color:var(--text-primary,#3d4758);font-size:12px;font-weight:600;line-height:1.3}.settings-toggle-control input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.settings-toggle{border:1px solid var(--border-control,#b9c1cd);background:var(--surface-raised,#dfe3e9);border-radius:999px;flex:0 0 34px;width:34px;height:19px;transition:border-color .15s,background .15s,box-shadow .15s;display:block;position:relative}.settings-toggle>i{background:var(--text-on-accent,white);width:13px;height:13px;box-shadow:0 1px 3px var(--shadow-color,#1d293d3d);border-radius:50%;transition:transform .15s;position:absolute;top:2px;left:2px}.settings-toggle-control input:checked+.settings-toggle{border-color:var(--blue);background:var(--blue)}.settings-toggle-control input:checked+.settings-toggle>i{transform:translate(15px)}.settings-toggle-control input:focus-visible+.settings-toggle{box-shadow:0 0 0 3px var(--focus-ring,#3365d129)}.settings-toggle-control:has(input:disabled){cursor:wait;opacity:.65}.smtp-summary{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));min-height:58px;padding:0;display:grid}.smtp-summary>div{justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:58px;padding:15px 13px;display:flex;position:relative}.smtp-summary>div:after{content:"";background:var(--line);width:1px;height:28px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.smtp-summary>div:first-child{padding-left:0}.smtp-summary>div:last-child{padding-right:0}.smtp-summary>div:last-child:after{display:none}.smtp-summary span{color:var(--muted);white-space:nowrap;font-size:13px;font-weight:600;line-height:1.25}.smtp-summary strong{min-width:0;color:var(--text-primary,#354052);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;line-height:1.25;overflow:hidden}.smtp-warning{border:1px solid var(--border-danger,#e7b8b8);color:var(--text-danger,#a53c3c);background:var(--surface-panel,#fff5f5);border-radius:7px;align-items:flex-start;gap:8px;margin-top:14px;padding:9px 11px;font-size:10px;line-height:1.5;display:flex}.smtp-warning svg{flex:none;margin-top:1px}.smtp-form-grid{flex-direction:column;gap:14px;padding:12px 0 18px;display:flex}.smtp-connection-fields,.smtp-connection-options,.smtp-paired-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.smtp-test{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:14px;min-height:59px;padding:10px 0;display:grid}.smtp-test-copy{align-items:center;min-width:0;padding-left:1px;display:flex}.smtp-test strong{color:var(--text-primary,#3d4758);font-size:12px;font-weight:600;line-height:1.3}.smtp-updated-at{color:var(--muted);font-size:11px}.smtp-test-control{border:1px solid var(--line-strong);background:var(--surface-panel,white);border-radius:7px;width:100%;height:39px;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.smtp-test-control:focus-within{border-color:var(--border-focus,#7197eb);box-shadow:0 0 0 3px var(--focus-ring,#3365d11c)}.smtp-test-control input{min-width:0;height:37px;box-shadow:none;border:0;border-radius:0;flex:1}.smtp-test-control input:focus{box-shadow:none}.smtp-test-control .secondary-button{border:0;border-left:1px solid var(--line-strong);background:var(--surface-raised,#f8f9fb);border-radius:0;flex:none;min-height:37px;padding:0 14px}.async-button{position:relative}.smtp-test-button{width:100px}.smtp-save-button{width:136px}.smtp-test-control .secondary-button:hover{background:var(--surface-hover,#f0f3f7)}.smtp-footer{justify-content:space-between}.smtp-footer-meta{align-items:center;gap:12px;min-width:0;display:flex}.smtp-password-action{text-align:left;flex:0 0 112px;width:112px}.smtp-updated-at{white-space:nowrap}.mini-empty{color:var(--muted);text-align:center;padding:30px 10px;font-size:10px}.booking-window-policy,.booking-admin-policy{border:1px solid var(--border-subtle,#e2e8f0);background:var(--surface-raised,#f8fafc);border-radius:10px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:12px 14px;display:grid}.booking-rule-icon{width:32px;height:32px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:8px;place-items:center;display:grid}.booking-rule-copy{gap:4px;min-width:0;display:grid}.booking-rule-copy>label{color:var(--text-primary,#344054);cursor:pointer;font-size:13px;font-weight:600;line-height:1.5}.booking-rule-copy small{color:var(--text-secondary,#64748b);font-size:12px;line-height:1.6}.booking-days-input{width:100px;min-width:0}.feedback-page,.feedback-detail-page{max-width:1120px}.feedback-filter-bar{gap:10px;margin-bottom:16px;padding:12px;display:flex}.feedback-filter-bar .select-control{width:180px}.feedback-ticket-list{gap:10px;display:grid}.feedback-load-more{margin:14px auto 0;display:flex}.feedback-ticket-card{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--surface-panel,white);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.feedback-ticket-card:hover{border-color:var(--border-accent,#9eb4e7);box-shadow:0 8px 24px var(--shadow-color,#1f3d7914)}.feedback-ticket-main{gap:5px;min-width:0;display:grid}.feedback-ticket-title-row,.feedback-detail-title-row{align-items:center;gap:9px;min-width:0;display:flex}.feedback-ticket-title-row>strong{min-width:0}.feedback-intrinsic-badges{flex:none;align-items:center;gap:6px;display:inline-flex}.feedback-ticket-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.feedback-ticket-main small,.feedback-admin-table small{color:var(--muted);font-size:10px}.feedback-ticket-number{color:var(--text-accent,var(--blue));letter-spacing:.04em;font-size:10px;font-weight:750}.feedback-ticket-status{flex:none;justify-content:flex-end;align-items:center;gap:9px;display:flex}.feedback-pill{border:1px solid var(--border-subtle,#d5dae4);color:var(--text-secondary,#536074);background:var(--surface-raised,#f5f6f8);white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:650}.feedback-pill.type-issue{border-color:var(--border-warning,#f0c8ae);color:var(--text-warning,#9a4e22);background:var(--surface-warning,#fff4eb)}.feedback-pill.type-requirement{border-color:var(--border-accent,#cbc8f2);color:var(--text-secondary,#5750a8);background:var(--surface-accent,#f3f2ff)}.feedback-pill.level-suggestion{border-color:var(--border-info,#b9dfdc);color:var(--text-info,#28716c);background:var(--surface-raised,#eefaf8)}.feedback-pill.level-not-urgent{border-color:var(--border-subtle,#d8dde5);color:var(--text-secondary,#667085);background:var(--surface-raised,#f5f6f8)}.feedback-pill.level-normal{border-color:var(--border-accent,#c6d5f5);color:var(--text-secondary,#365d9f);background:var(--surface-accent,#f0f5ff)}.feedback-pill.level-serious{border-color:var(--border-warning,#edc794);color:var(--text-warning,#915a16);background:var(--surface-warning,#fff6e8)}.feedback-pill.level-urgent{border-color:var(--border-warning,#efbda7);color:var(--text-warning,#a44727);background:var(--surface-warning,#fff1eb)}.feedback-pill.level-fatal,.feedback-pill.level-very-urgent{border-color:var(--border-danger,#eab8bd);color:var(--text-danger,#a33d48);background:var(--surface-danger,#fff0f2)}.feedback-pill.status-submitted{border-color:var(--border-accent,#c6d5f5);color:var(--text-secondary,#365d9f);background:var(--surface-accent,#f0f5ff)}.feedback-pill.status-confirmed{border-color:var(--border-info,#b5dfe7);color:var(--text-info,#28707e);background:var(--surface-info,#eefafd)}.feedback-pill.status-adopted{border-color:var(--border-accent,#cbc8f2);color:var(--text-secondary,#5750a8);background:var(--surface-accent,#f3f2ff)}.feedback-pill.status-fixed,.feedback-pill.status-implemented{border-color:var(--border-success,#b9dfca);color:var(--text-success,#28704e);background:var(--surface-raised,#eefaf4)}.feedback-pill.status-rejected{border-color:var(--border-danger,#e9c2c2);color:var(--text-danger,#974747);background:var(--surface-danger,#fff1f1)}.feedback-pill.status-withdrawn{border-color:var(--border-subtle,#d8dde5);color:var(--text-secondary,#6f7785);background:var(--surface-raised,#f3f4f6)}.feedback-editor-modal{height:min(760px,100vh - 60px)}.feedback-editor-modal>header{flex:none}.feedback-editor-form{flex-direction:column;height:calc(100% - 42px);min-height:0;display:flex}.feedback-editor-scroll{flex:auto;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:18px;min-height:0;display:grid;overflow:hidden}.feedback-editor-fields,.feedback-editor-preview{min-height:0;padding-right:5px;overflow:auto}.feedback-editor-fields{flex-direction:column;gap:13px;display:flex}.feedback-editor-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.feedback-editor-fields textarea{resize:none;min-height:320px}.feedback-editor-preview{border:1px solid var(--line);background:var(--surface-raised,#fafbfc);border-radius:9px;padding:14px}.feedback-editor-preview>strong{color:var(--muted);margin-bottom:12px;font-size:10px;display:block}.feedback-editor-form>.modal-actions{flex:none;margin-top:16px}.feedback-image-picker{gap:9px;min-width:0;display:grid}.feedback-image-native-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.feedback-image-dropzone{border:1px dashed var(--border-accent,#b7c6e7);min-height:76px;color:var(--text-secondary,#48638f);background:var(--surface-panel,#f8faff);border-radius:9px;align-items:center;gap:10px;padding:12px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.feedback-image-dropzone.dragging{border-color:var(--blue);background:var(--surface-accent,#eef4ff);box-shadow:inset 0 0 0 1px var(--blue)}.feedback-image-dropzone.full{color:var(--muted);background:var(--surface-raised,#f6f7f9);border-style:solid}.feedback-image-dropzone-icon{width:34px;height:34px;color:var(--text-accent,var(--blue));background:var(--surface-panel,white);box-shadow:0 3px 10px var(--shadow-color,#2c4d911a);border-radius:9px;flex:none;place-items:center;display:grid}.feedback-image-dropzone-copy{flex:auto;gap:3px;min-width:0;display:grid}.feedback-image-dropzone-copy strong{font-size:10px}.feedback-image-dropzone-copy small{color:var(--muted);font-size:9px;font-weight:400}.feedback-image-dropzone>button{flex:none;width:auto}.feedback-selected-images{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.feedback-selected-image{border:1px solid var(--line);background:var(--surface-input,white);border-radius:8px;grid-template-columns:42px minmax(0,1fr) 28px;align-items:center;gap:7px;min-width:0;padding:6px;display:grid}.feedback-selected-image>img{object-fit:cover;background:var(--surface-input,#f2f3f6);border-radius:5px;width:42px;height:42px}.feedback-selected-image>span{gap:3px;min-width:0;display:grid}.feedback-selected-image>span strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.feedback-selected-image>span small{color:var(--muted);font-size:8px;font-weight:400}.feedback-selected-image>button{width:28px;height:28px;color:var(--text-danger,#8c4a4a)}.feedback-image-picker.compact{margin-top:10px}.feedback-image-picker.compact .feedback-image-dropzone{min-height:60px}.feedback-image-picker.compact .feedback-selected-images{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.feedback-retained-images{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.feedback-retained-images button{border:1px solid var(--line);background:var(--surface-raised,#f5f6f8);cursor:pointer;border-radius:7px;height:78px;padding:0;position:relative;overflow:hidden}.feedback-retained-images img{object-fit:cover;width:100%;height:100%}.feedback-retained-images span{color:var(--text-on-accent,white);background:var(--surface-inverse,#181f2dc7);border-radius:4px;align-items:center;gap:2px;padding:3px 5px;font-size:9px;display:flex;position:absolute;bottom:4px;right:4px}.feedback-back-button{color:var(--text-accent,var(--blue));cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-bottom:12px;padding:0;display:inline-flex}.feedback-detail-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;padding:20px;display:grid}.feedback-detail-header h1{margin:5px 0;font-size:22px}.feedback-detail-title-row h1{overflow-wrap:anywhere;min-width:0}.feedback-detail-header p{color:var(--muted);margin:0;font-size:10px}.feedback-detail-status{justify-content:flex-end;display:flex}.feedback-detail-actions{grid-column:1/-1;gap:8px;display:flex}.feedback-admin-actions{grid-template-columns:170px minmax(0,1fr);align-items:start;gap:16px;margin-top:12px;padding:14px 16px;display:grid}.feedback-status-change{grid-template-columns:170px minmax(220px,1fr) auto;align-items:start;gap:10px;display:grid}.feedback-status-change textarea{resize:none;height:39px;min-height:39px;padding-top:8px;padding-bottom:8px}.feedback-status-change>button{align-self:end;width:auto;margin-bottom:1px}@media (width<=1100px){.feedback-admin-actions{grid-template-columns:1fr}}.feedback-current-content{margin-top:12px;padding:20px}.feedback-current-content h2,.feedback-timeline>h2{margin:0 0 14px;font-size:15px}.feedback-timeline{margin-top:18px}.feedback-activity{grid-template-columns:30px minmax(0,1fr);gap:10px;margin-bottom:10px;padding:15px;display:grid;position:relative}.feedback-activity-marker{width:28px;height:28px;color:var(--text-accent,var(--blue));background:var(--blue-soft);border-radius:50%;place-items:center;display:grid}.feedback-activity header{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.feedback-activity header strong{font-size:11px}.feedback-activity header span{color:var(--muted);font-size:10px}.feedback-activity header time{color:var(--muted);margin-left:auto;font-size:9px}.feedback-activity .announcement-markdown{margin-top:10px}.feedback-changed-fields{color:var(--muted);font-size:10px}.feedback-attachments{grid-template-columns:repeat(auto-fill,minmax(120px,160px));gap:9px;margin-top:12px;display:grid}.feedback-attachments a{border:1px solid var(--line);color:var(--ink);background:var(--surface-panel,#fafbfc);border-radius:8px;text-decoration:none;overflow:hidden}.feedback-attachments img{object-fit:cover;width:100%;height:100px;display:block}.feedback-attachments span{text-overflow:ellipsis;white-space:nowrap;padding:6px 8px;font-size:9px;display:block;overflow:hidden}.feedback-comment-form{margin-top:16px;padding:17px}.feedback-comment-form textarea{resize:vertical;min-height:110px}.feedback-comment-actions{justify-content:flex-end;align-items:center;gap:9px;margin-top:10px;display:flex}.feedback-admin-shell{height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));min-height:0;overflow:hidden}:is(html:has(.feedback-admin-detail-frame),body:has(.feedback-admin-detail-frame)){height:100%;overflow:hidden}.feedback-admin-detail-frame{height:100dvh;min-height:0;overflow:hidden}.feedback-admin-detail-frame>.app-content{height:calc(100vh - var(--app-header-height));height:calc(100dvh - var(--app-header-height));min-height:0;overflow:hidden}.feedback-management-content{background:var(--surface-raised,#f4f5f7);min-height:0;padding:0;overflow:hidden}.feedback-admin-page{overscroll-behavior:contain;scrollbar-gutter:stable;width:100%;height:100%;min-height:0;padding:31px 34px 24px;overflow-y:auto}.feedback-management-content>.admin-feedback-detail{overscroll-behavior:contain;scrollbar-gutter:stable;width:min(1120px,100% - 68px);max-width:1120px;height:100%;min-height:0;margin:0 auto;padding:31px 0 24px;overflow-y:auto}.feedback-admin-filters{grid-template-columns:minmax(190px,1fr) 130px 130px 130px;display:grid}.feedback-admin-filters .select-control{width:100%}.feedback-search{border:1px solid var(--line-strong);background:var(--surface-panel,white);border-radius:7px;align-items:center;gap:7px;height:39px;padding:0 10px;display:flex}.feedback-search input{height:auto;box-shadow:none;border:0;padding:0}.feedback-admin-table{overflow:hidden}.feedback-admin-table>button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:var(--surface-panel,white);text-align:left;cursor:pointer;grid-template-columns:86px minmax(180px,1fr) auto 18px;align-items:center;gap:12px;padding:13px 15px;display:grid}.feedback-admin-table>button:last-child{border-bottom:0}.feedback-admin-table>button:hover{background:var(--surface-hover,#f8faff)}.feedback-admin-table>button>span:nth-child(2){gap:4px;min-width:0;display:grid}.feedback-admin-table strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-tab-badge{min-width:18px;height:18px;color:var(--text-on-accent,white);background:var(--fill-danger,#d34040);border-radius:10px;place-items:center;margin-left:auto;padding:0 5px;font-size:9px;font-weight:700;display:grid}@media (width<=820px){.modal-backdrop:has(.feedback-editor-modal){padding:12px}.feedback-editor-modal{height:calc(100vh - 24px)}.feedback-editor-scroll{flex-direction:column;display:flex;overflow-y:auto}.feedback-editor-fields,.feedback-editor-preview{flex:none;overflow:visible}.feedback-editor-fields textarea{min-height:230px}.feedback-editor-preview{min-height:200px}.feedback-image-dropzone{flex-wrap:wrap;align-items:flex-start}.feedback-image-dropzone-copy{min-width:calc(100% - 50px)}.feedback-image-dropzone>button{margin-left:44px}.feedback-selected-images{grid-template-columns:1fr}.feedback-ticket-card{flex-direction:column;align-items:flex-start}.feedback-ticket-title-row,.feedback-detail-title-row{flex-wrap:wrap;align-items:flex-start}.feedback-ticket-status{width:100%}.feedback-ticket-status>svg{margin-left:auto}.feedback-detail-header,.feedback-admin-actions,.feedback-status-change{grid-template-columns:1fr}.feedback-status-change>button{justify-self:end}.feedback-admin-filters{grid-template-columns:1fr 1fr}.feedback-admin-table>button{grid-template-columns:78px minmax(0,1fr) auto 18px}.feedback-admin-table>button .feedback-pill{display:none}.feedback-filter-bar{flex-wrap:wrap}.feedback-filter-bar .select-control{flex:140px}}.modal-backdrop{z-index:100;background:var(--overlay-backdrop,#0e162680);place-items:center;padding:30px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line);background:var(--surface-raised,white);width:min(460px,100%);max-height:calc(100vh - 60px);box-shadow:0 30px 100px var(--shadow-color,#0a121f38);padding:22px;overflow:auto}.modal.wide{width:min(650px,100%)}.modal.large{width:min(960px,100%);overflow:hidden}.modal>header{justify-content:space-between;align-items:center;margin-bottom:19px;display:flex}.modal>header h2{margin:0;font-size:18px}.modal-header-actions{align-items:center;gap:8px;margin-left:auto;margin-right:8px;display:flex}.calendar-manual-form{gap:14px}.calendar-manual-mode{width:100%}.calendar-manual-mode button{flex:1 1 0;min-width:0}.modal-note{border:1px solid var(--border-accent,#d9e2f7);color:var(--text-secondary,#3f5f9d);background:var(--surface-accent,#f2f6ff);align-items:flex-start;gap:7px;padding:10px 11px;font-size:10px;line-height:1.5;display:flex}.modal-note.warning{border-color:var(--border-warning,#ecd4bb);color:var(--text-warning,#92531f);background:var(--surface-warning,#fff5ea)}.action-dialog{gap:17px;display:grid}.action-dialog-message{color:var(--text-secondary,#596579);white-space:pre-line;margin:0;font-size:12px;line-height:1.65}.action-dialog-message.danger{border:1px solid var(--border-danger,#ecd1d1);color:var(--text-danger,#8d3d3d);background:var(--surface-raised,#fff7f7);border-radius:7px;padding:10px 11px}.action-dialog .field{gap:7px}.action-dialog textarea{resize:vertical;min-height:96px}.action-dialog-actions{padding-top:2px}.context-notice{border:1px solid var(--border-accent,#d8e3f7);width:fit-content;max-width:100%;min-height:32px;color:var(--text-secondary,#415b8d);background:var(--surface-raised,#f3f7ff);border-radius:7px;align-items:flex-start;gap:7px;padding:7px 9px;font-size:11px;line-height:1.45;display:flex}.context-notice>svg{flex:none;margin-top:1px}.context-notice.warning{border-color:var(--border-warning,#ecd4bb);color:var(--text-warning,#92531f);background:var(--surface-warning,#fff5ea)}.operation-with-notice{gap:8px;display:grid}.operation-with-notice .context-notice{width:100%}.settings-rule-note{flex:0 auto}.toast{z-index:200;max-width:420px;min-height:42px;color:var(--text-success,#285e45);background:var(--surface-success,#edfaf3);box-shadow:0 14px 50px var(--shadow-color,#10182829);border:1px solid;align-items:center;gap:8px;padding:10px 15px;font-size:12px;font-weight:600;animation:.2s ease-out toast-in;display:flex;position:fixed;bottom:22px;right:22px}.toast.error{border-color:var(--border-danger,#ecc5c5);color:var(--text-danger,#934242);background:var(--surface-danger,#fff2f2)}@keyframes toast-in{0%{opacity:0;transform:translateY(7px)}}@media (width<=1280px){.calendar-layout.composer-open{grid-template-columns:minmax(700px,1fr) 330px}.calendar-main{padding-left:18px;padding-right:18px}.timeline-head,.timeline-row{grid-template-columns:260px minmax(0,1fr)}.toolbar .search-box{min-width:150px}.topbar{grid-template-columns:200px 1fr 200px}}.verification-row,.verification-input-row{grid-template-columns:minmax(0,1fr) 160px;align-items:start;gap:10px;display:grid}.verification-button{white-space:nowrap;flex:0 0 160px;justify-content:center;width:160px;min-width:160px;max-width:160px;height:39px;min-height:39px;margin-top:24px;padding-inline:12px}.verification-input-row>input{min-width:0}.verification-input-row>.verification-button{margin-top:0}@media (width<=420px){.verification-row,.verification-input-row{grid-template-columns:minmax(0,1fr)}.verification-row>.verification-button,.verification-input-row>.verification-button{justify-self:end;margin-top:0}}.auth-two-fields{gap:16px}.profile-layout{box-sizing:border-box;padding-bottom:28px}.profile-form-card{border-color:var(--border-subtle,#dfe4ec);box-shadow:0 12px 34px var(--shadow-color,#1f2b4114);border-radius:14px;overflow:visible}.profile-section{border-bottom:1px solid var(--border-subtle,#e8ebf0);padding:17px 18px 18px}.profile-section:last-child{border-bottom:0}.profile-section-head{justify-content:space-between;align-items:center;gap:14px;min-height:30px;margin-bottom:12px;display:flex}.profile-section-title{align-items:center;gap:9px;min-width:0;display:flex}.profile-section-title h2{color:var(--text-primary,#263247);letter-spacing:-.01em;margin:0;font-size:14px;line-height:1.2}.profile-section-icon{width:30px;height:30px;color:var(--text-accent,#315fc4);background:var(--surface-accent,#edf2ff);border-radius:9px;flex:0 0 30px;place-items:center;display:inline-grid}.profile-section-icon.security{color:var(--text-success,#20805c);background:var(--surface-success,#eaf8f1)}.profile-section-icon.mail{color:var(--text-purple,#7757bc);background:var(--surface-purple,#f2edfc)}.profile-section-icon.api-token{color:var(--text-warning,#9a6417);background:var(--surface-warning,#fff5df)}.profile-section-title>div{gap:3px;display:grid}.profile-section-title>div>small{color:var(--muted);font-size:10px}.profile-api-token-actions{align-items:center;gap:8px;display:flex}.profile-api-token-actions .primary-button,.profile-api-token-actions .secondary-button{gap:5px;height:32px;min-height:32px;padding:0 11px;font-size:11px;text-decoration:none}.profile-api-token-list{gap:8px;display:grid}.profile-api-token-row{border:1px solid var(--border-subtle,#e3e7ee);background:var(--surface-panel,#fafbfd);border-radius:10px;grid-template-columns:minmax(220px,1.2fr) minmax(270px,1fr) 30px;align-items:center;gap:12px;min-width:0;padding:10px 11px;display:grid}.profile-api-token-main{gap:6px;min-width:0;display:grid}.profile-api-token-main>div{align-items:center;gap:7px;display:flex}.profile-api-token-main strong{min-width:0;color:var(--text-primary,#273245);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.profile-api-token-main code{color:var(--text-secondary,#566176);font-size:10px}.profile-api-token-meta{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;font-size:10px;display:flex}.api-token-create-form{gap:13px}.api-token-secret-view{gap:14px;display:grid}.api-token-secret-view>code{overflow-wrap:anywhere;border:1px solid var(--border-subtle,#d8deea);color:var(--text-primary,#25324a);background:var(--surface-raised,#f5f7fb);-webkit-user-select:all;user-select:all;border-radius:8px;padding:13px;font-size:12px;line-height:1.6}.profile-fields-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.profile-field-third{grid-column:span 2}.profile-field-half{grid-column:span 3}@media (width<=600px){.profile-fields-grid>.profile-field{grid-column:1/-1}}.profile-security-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.profile-field{border:1px solid var(--border-control,#e3e7ee);background:var(--surface-panel,#fafbfd);border-radius:10px;flex-direction:column;justify-content:center;align-items:flex-start;gap:7px;min-width:0;min-height:66px;padding:10px 12px;display:flex}.profile-field-head{justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:20px;display:flex}.profile-field-head>span,.profile-field-head>label{color:var(--muted);font-size:11px;font-weight:650}.profile-field>strong,.profile-field>code{min-width:0;max-width:100%;color:var(--text-primary,#273245);text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:inherit;font-size:14px;font-weight:700;line-height:1.35;overflow:hidden}.profile-field-meta{color:var(--muted);white-space:nowrap;font-size:10px;font-weight:600}.profile-row-actions{flex:none;align-items:center;gap:8px;display:flex}.profile-edit{border-radius:7px;flex:0 0 26px;width:26px;height:26px}.profile-password-action{gap:6px;height:34px;min-height:34px;padding:0 12px;font-size:11px}.profile-email-preferences{min-height:0}.profile-email-preferences-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.profile-email-preference{border:1px solid var(--line);background:var(--surface-panel,#fafbfd);min-width:0;height:44px;color:var(--text-primary,#3a4558);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:9px;padding:0 11px 0 13px;font-size:12px;font-weight:650;display:flex;position:relative}.profile-email-preference:hover{border-color:var(--border-accent,#bfcce2);background:var(--surface-hover,#f5f8fd)}.profile-email-preference-label{white-space:nowrap;align-items:center;gap:5px;min-width:0;display:inline-flex}.profile-email-preference-label svg{color:var(--text-secondary,#8b96a9);flex:none}.profile-email-preference-detail{z-index:80;border:1px solid var(--border-subtle,#d5deec);background:var(--surface-inverse,#202b3d);width:max-content;min-width:190px;max-width:270px;box-shadow:0 9px 24px var(--shadow-color,#121d302e);color:var(--text-primary,#f8fafc);opacity:0;pointer-events:none;visibility:hidden;white-space:normal;border-radius:8px;padding:10px 12px;font-size:11px;font-weight:500;line-height:1.65;transition:opacity .14s,transform .14s,visibility .14s;position:absolute;bottom:calc(100% + 9px);left:0;transform:translateY(4px)}.profile-email-preference-detail ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.profile-email-preference-detail li{padding-left:12px;position:relative}.profile-email-preference-detail li:before{background:var(--surface-accent,#8fb2ff);content:"";border-radius:50%;width:4px;height:4px;position:absolute;top:.72em;left:0;transform:translateY(-50%)}.profile-email-preference-detail:after{border-right:1px solid var(--border-subtle,#d5deec);border-bottom:1px solid var(--border-subtle,#d5deec);background:var(--surface-inverse,#202b3d);content:"";width:9px;height:9px;position:absolute;top:100%;left:17px;transform:translateY(-5px)rotate(45deg)}.profile-email-preference:hover .profile-email-preference-detail,.profile-email-preference:focus-within .profile-email-preference-detail{opacity:1;visibility:visible;transform:translateY(0)}.profile-email-preference>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.profile-email-switch{background:var(--surface-raised,#cbd3df);border-radius:999px;flex:0 0 30px;align-items:center;width:30px;height:18px;padding:2px;transition:background-color .16s;display:inline-flex}.profile-email-switch>i{background:var(--text-on-accent,white);width:14px;height:14px;box-shadow:0 1px 2px var(--shadow-color,#18243a3d);border-radius:50%;transition:transform .16s;display:block}.profile-email-preference>input:checked+.profile-email-switch{background:var(--blue)}.profile-email-preference>input:checked+.profile-email-switch>i{transform:translate(12px)}.profile-email-preference>input:focus-visible+.profile-email-switch{outline:3px solid var(--focus-ring,#2e69dc33);outline-offset:2px}.profile-email-preference:has(input:disabled){cursor:wait;opacity:.62}.profile-email-preference-locked:has(input:disabled){cursor:not-allowed;opacity:1}.profile-email-preference-locked>input:checked+.profile-email-switch{background:var(--blue);box-shadow:none}.profile-email-preference-locked .profile-email-switch>i{background:var(--text-secondary,#c8ced8)}.profile-email-unavailable{color:var(--muted);font-size:12px;font-weight:600}.profile-edit:disabled{cursor:not-allowed;opacity:.42}.profile-review-anchor{position:relative}.profile-review-chip{cursor:pointer;border:0}.profile-review-popover{z-index:70;border:1px solid var(--border-subtle,#d7dfef);background:var(--surface-raised,#fff);width:252px;box-shadow:0 12px 28px var(--shadow-color,#202d4626);border-radius:9px;gap:9px;padding:13px 14px;animation:.14s ease-out ui-popover-in;display:grid;position:absolute;top:calc(100% + 7px);right:0}.profile-review-popover:before{content:"";border-top:1px solid var(--border-subtle,#d7dfef);border-left:1px solid var(--border-subtle,#d7dfef);background:var(--text-secondary,#fff);width:8px;height:8px;position:absolute;top:-5px;right:20px;transform:rotate(45deg)}.profile-review-popover>div{grid-template-columns:56px 1fr;align-items:baseline;gap:8px;display:grid}.profile-review-popover span,.profile-review-popover small{color:var(--muted);font-size:10px}.profile-review-popover strong{font-size:12px}.profile-review-popover .text-action{justify-self:end}.profile-edit-form .modal-actions{margin-top:4px}.copy-value-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.copy-value-row .secondary-button{justify-content:center;min-width:82px}.modal-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.modal-actions.split{justify-content:space-between}.secondary-button.danger{border-color:var(--border-danger,#e4b4b4);color:var(--text-danger,#9a4141);background:var(--surface-panel,#fff8f8)}.password-banner button:last-child{color:inherit;opacity:var(--readable-detail-opacity,.75);margin-left:4px}.select-control{width:100%;min-width:0;color:var(--ink);font-size:13px;font-weight:400;position:relative}.select-control-trigger{border:1px solid var(--line-strong);width:100%;height:39px;color:var(--ink);background:var(--surface-input,white);text-align:left;cursor:pointer;border-radius:7px;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:8px;padding:0 10px 0 11px;transition:border-color .15s,color .15s,background-color .15s,box-shadow .15s;display:grid}.select-control-trigger:hover:not(:disabled){border-color:var(--border-accent,#aebfe9);background:var(--surface-disabled,#fbfcff)}.select-control.open .select-control-trigger{border-color:var(--border-accent,#8ca8e8);color:var(--text-accent,#1947bd);background:var(--surface-input,#f8faff);box-shadow:0 0 0 3px var(--shadow-color,#2558d91a)}.select-control-trigger:focus-visible{border-color:var(--border-focus,#8ca8e8);outline:3px solid var(--focus-ring,#2558d929);outline-offset:1px}.select-control-trigger:disabled{color:var(--text-disabled,#8c95a4);background:var(--surface-disabled,#f3f4f6);cursor:not-allowed;opacity:.72}.select-control-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.select-control-value.placeholder{color:var(--text-disabled,#929baa)}.select-control-chevron{color:var(--text-secondary,#8a94a5);justify-self:end;transition:transform .16s,color .16s}.select-control.open .select-control-chevron{color:var(--text-secondary,#5475bd);transform:rotate(180deg)}.select-control.compact .select-control-trigger{gap:5px;height:35px;padding-inline:10px 8px;font-size:12px}.select-control-menu{z-index:220;overscroll-behavior:contain;border:1px solid var(--border-control,#dce2ec);color:var(--ink);background:var(--surface-raised,#fffffffc);box-shadow:0 18px 46px var(--shadow-color,#18243a2e), 0 2px 8px var(--shadow-color,#18243a0f);scrollbar-width:thin;scrollbar-color:var(--border-control,#c8d0dc) transparent;border-radius:12px;padding:7px;animation:.14s ease-out ui-popover-in;position:fixed;overflow:hidden auto}.select-control-menu:not([style]){visibility:hidden}.select-control-menu.up{animation-name:ui-select-popover-up}.select-control-option{width:100%;min-height:39px;color:var(--text-primary,#3e4a5e);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:minmax(0,1fr) 17px;align-items:center;gap:10px;padding:8px 9px 8px 11px;font-size:12px;line-height:1.35;display:grid}.select-control-option>span{overflow-wrap:anywhere;min-width:0}.select-control-option:hover:not(:disabled),.select-control-option.active:not(:disabled),.select-control-option:focus-visible:not(:disabled){color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#f1f5ff);outline:none}.select-control-option.selected{color:var(--text-accent,#1947bd);background:var(--surface-accent,#eaf0ff);font-weight:650}.select-control-option>svg{opacity:0}.select-control-option.selected>svg{opacity:1}.select-control-option:disabled{color:var(--text-disabled,#a0a7b2);cursor:not-allowed}.language-switcher{display:inline-flex;position:relative}.language-switcher-trigger{border:1px solid var(--border-control,#dce1e9);height:38px;color:var(--text-secondary,#536075);background:var(--surface-panel,#ffffffeb);box-shadow:0 1px 2px var(--shadow-color,#1018280a);white-space:nowrap;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:650;transition:border-color .16s,color .16s,background-color .16s,box-shadow .16s;display:inline-flex}.language-switcher-trigger:hover,.language-switcher.open .language-switcher-trigger{border-color:var(--border-accent,#aebfe9);color:var(--text-accent,var(--blue));background:var(--surface-hover,#f7f9ff);box-shadow:0 4px 14px var(--shadow-color,#2558d91a)}.language-switcher-trigger:focus-visible{outline:3px solid var(--focus-ring,#2558d92e);outline-offset:1px}.language-switcher-chevron{color:var(--text-secondary,#8a94a5);transition:transform .16s}.language-switcher.open .language-switcher-chevron{transform:rotate(180deg)}.language-switcher-code{min-width:22px;color:inherit;text-align:center;letter-spacing:.02em;font-size:14px;font-weight:800;display:none}.language-switcher.compact .language-switcher-trigger{gap:6px;width:72px;padding:0 10px}.language-switcher.compact .language-switcher-current,.language-switcher.compact .language-switcher-chevron{display:none}.language-switcher.compact .language-switcher-code{display:inline}.language-switcher-popover{z-index:160;border:1px solid var(--border-subtle,#dce2ec);width:232px;color:var(--ink);background:var(--surface-raised,#fffffffa);box-shadow:0 18px 46px var(--shadow-color,#18243a2e), 0 2px 8px var(--shadow-color,#18243a0f);border-radius:13px;gap:3px;padding:8px;animation:.14s ease-out ui-popover-in;display:grid;position:absolute;top:calc(100% + 8px);right:0}.language-switcher-option{width:100%;min-height:46px;color:var(--text-primary,#39465b);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:5px 9px;display:grid}.language-switcher-option:hover,.language-switcher-option:focus-visible{color:var(--text-accent,var(--blue));background:var(--surface-accent-hover,#f1f5ff);outline:none}.language-switcher-option.selected{color:var(--text-accent,#1947bd);background:var(--surface-accent,#eaf0ff)}.language-switcher-option-code{border:1px solid var(--border-subtle,#d8dfeb);width:34px;height:34px;color:var(--text-secondary,#526078);background:var(--surface-panel,white);border-radius:9px;place-items:center;font-size:11px;font-weight:850;display:grid}.language-switcher-option.selected .language-switcher-option-code{border-color:var(--border-accent,#b9c9ee);color:var(--text-accent,#1947bd)}.language-switcher-option-copy{align-items:center;min-width:0;display:flex}.language-switcher-option-copy strong{font-size:13px;font-weight:750}.language-switcher-option>svg{opacity:0}.language-switcher-option.selected>svg{opacity:1}@keyframes ui-popover-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ui-select-popover-up{0%{opacity:0;transform:translateY(4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.topbar-user-menu,.calendar-date-popover,.week-day-popover,.resource-summary-popover,.reservation-popover,.catalog-manager-popover,.profile-review-popover,.language-switcher-popover,.calendar-resource-finder-menu,.select-control-menu{animation:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=820px){body{min-width:0}.auth-page{grid-template-columns:minmax(0,1fr);height:auto;min-height:100dvh;overflow:visible}.auth-story{display:none}.auth-panel{min-height:100dvh;padding:16px;overflow:visible}.auth-card{padding:28px 22px}.app-frame{--app-topbar-height:110px}.app-frame.has-password-banner{--app-password-banner-height:70px}.system-maintenance-banner{padding-inline:12px}.topbar{height:var(--app-topbar-height);grid-template-rows:46px 56px;grid-template-columns:auto minmax(0,1fr) auto;column-gap:8px;padding:8px 12px 0}.topbar>.brand-lockup{grid-area:1/1}.topbar>.brand-lockup>span:last-child{display:none}.main-nav{scrollbar-width:none;grid-area:2/1/auto/-1;justify-content:flex-start;width:100%;overflow-x:auto}.main-nav::-webkit-scrollbar{display:none}.main-nav button{white-space:nowrap;flex:none;padding-inline:12px}.topbar-actions{grid-area:1/3;gap:5px}.topbar-user-trigger{gap:3px;min-width:46px;min-height:42px;padding:4px}.topbar-user-copy{display:none}.topbar-user-menu{width:min(240px,100vw - 24px)}.password-banner{height:var(--app-password-banner-height);text-align:center;flex-wrap:wrap;align-content:center;padding:7px 12px;line-height:1.35}.password-banner-message{text-align:left;flex:0 calc(100% - 25px)}.calendar-main{padding:14px 10px}.calendar-main>.page-header{flex-wrap:wrap;margin-bottom:12px}.calendar-wheel-hint{display:none}.toolbar{overflow:auto hidden}.calendar-layout.composer-open{grid-template-columns:minmax(0,1fr)}}.editor-fieldset{border:0;min-width:0;margin:0;padding:0}
