:root{--bg: #dceafb;--ink: #16324d;--muted: #5b738c;--line: #d3e3f4;--card: #ffffff;--accent: #2f7de8;--accent-2: #4aa3ff;--accent-deep: #1f63c8;--accent-soft: #e4f0ff;--danger: #d45b5b;--tent: #e0a03a;--tent-soft: #fff4df;--conflict: #d9480f;--conflict-soft: #fff0eb;--shadow: 0 22px 50px rgba(31, 99, 180, .16);--shadow-soft: 0 8px 20px rgba(31, 99, 180, .08);font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,ui-sans-serif,system-ui,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(920px 520px at 8% -12%,rgba(122,198,255,.72) 0%,transparent 58%),radial-gradient(780px 460px at 108% 4%,rgba(74,163,255,.38) 0%,transparent 52%),radial-gradient(640px 420px at 50% 118%,rgba(56,189,248,.28) 0%,transparent 55%),linear-gradient(180deg,#eaf5ff,#d7e8fb 48%,#eef5ff)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent)}.shell{min-height:100vh;display:flex;flex-direction:column}.top{display:flex;align-items:center;justify-content:space-between;margin:14px 16px 0;padding:10px 14px 10px 18px;background:linear-gradient(180deg,#fffffff0,#ecf6ffd1);border:1px solid rgba(255,255,255,.8);border-radius:18px;box-shadow:inset 0 1px #fffffff2,var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{font-size:15px;font-weight:600;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:46vw}.kicker{font-size:12px;font-weight:600;color:var(--accent);margin-bottom:4px}.nav{display:flex;gap:8px;font-size:14px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.nav a{color:var(--muted);text-decoration:none;padding:8px 12px;border-radius:999px}.nav a.active{color:var(--ink);background:var(--accent-soft)}.login-wrap{flex:1;display:grid;place-items:center;padding:48px 16px 64px;position:relative;isolation:isolate;overflow:hidden}.login-wrap:before,.login-wrap:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0;filter:blur(8px)}.login-wrap:before{width:280px;height:280px;top:8%;left:16%;background:radial-gradient(circle,#74c0ffb3,#74c0ff00 70%)}.login-wrap:after{width:340px;height:340px;right:10%;bottom:4%;background:radial-gradient(circle,#4f8cff6b,#4f8cff00 70%)}.login-logo{max-height:40px;margin-bottom:14px}.app-logo-field .app-logo-actions{display:flex;flex-wrap:wrap;gap:8px}.app-logo-preview{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#ffffffb3;width:fit-content}.app-logo-dropzone{padding:20px 16px;border:2px dashed var(--line);border-radius:12px;background:#ffffff80;text-align:center;transition:border-color .15s,background .15s}.app-logo-dropzone.drag-over{border-color:var(--accent, #2f7de8);background:#2f7de814}.app-favicon-preview{width:32px;height:32px;object-fit:contain;image-rendering:auto}.admin-subsection-title{margin:16px 0 6px;font-size:14px;font-weight:700;color:var(--ink)}.branding-history{margin-top:8px}.branding-history-lead{margin:0 0 8px}.branding-history-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.branding-history-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#ffffffb8}.branding-history-item.is-active{border-color:#2f7de873;box-shadow:inset 0 0 0 1px #2f7de81f}.branding-history-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.branding-history-badge{font-size:12px;font-weight:700;color:var(--accent-deep, #1f63b4)}.branding-history-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}@media(max-width:640px){.branding-history-item{grid-template-columns:auto 1fr}.branding-history-actions{grid-column:1 / -1;justify-content:flex-start}}.move-draft-message textarea{width:100%;min-height:56px}.hint-icon-wrap{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}.hint-icon-btn{width:18px;height:18px;border-radius:999px;border:1px solid var(--line);background:#ffffffe6;color:var(--muted);font-size:11px;font-weight:700;line-height:1;cursor:pointer;padding:0}.hint-icon-btn:hover,.hint-icon-btn[aria-expanded=true]{color:var(--accent, #2f7de8);border-color:var(--accent, #2f7de8)}.hint-icon-popover{position:absolute;z-index:40;top:calc(100% + 8px);left:50%;transform:translate(-50%);min-width:220px;max-width:320px;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px #16324d24;color:var(--muted);font-size:13px;line-height:1.65;text-align:left;white-space:normal}.hint-icon-popover.is-fixed{position:fixed;top:0;left:0;transform:none;z-index:80;overflow:auto}.hint-icon-popover.is-wide{width:min(380px,calc(100vw - 16px));max-width:min(380px,calc(100vw - 16px))}.hint-role-block{display:block}.hint-role-block+.hint-role-block{margin-top:10px}.hint-role-block strong{display:block;margin-bottom:2px;color:var(--ink, #16324d);font-size:12px}.hint-role-aside{display:block;margin-top:6px}.legend-with-hint{display:inline-flex;align-items:center;gap:2px}.admin-access-request-card{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#ffffffa6}.admin-access-request-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.admin-access-group-picks{list-style:none;margin:0;padding:0;display:grid;gap:8px}.admin-access-group-pick{display:flex;gap:10px;align-items:flex-start}.admin-locale-rows{display:grid;gap:12px}.admin-locale-row{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#ffffffa6}.admin-locale-key{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--muted);margin-bottom:6px}.admin-locale-default{margin:0 0 8px}.admin-locale-row textarea{width:100%;min-height:56px}.login-notice{margin-top:4px;padding:12px 14px;border-radius:12px;font-size:14px;line-height:1.55}.login-notice.success{background:linear-gradient(180deg,#eaf8f1,#d5efe3);border:1px solid #9fd4b8;color:#1f5c42}.login-notice-title{margin:0 0 6px;font-weight:700;font-size:15px}.login-notice p:last-child{margin:0}.login-maint-retry{margin:8px 0 0}.service-status-banner{position:sticky;top:0;z-index:80;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;margin:0;padding:10px 16px;background:linear-gradient(180deg,#fff6e8,#ffe8c8);border-bottom:1px solid #e0b87a;color:#7a4b12;font-size:13px;line-height:1.45}.service-status-banner strong{font-weight:700}.card{position:relative;z-index:1;background:linear-gradient(180deg,#fffffff7,#f1f8ffeb);border:1px solid rgba(255,255,255,.9);border-radius:24px;box-shadow:inset 0 1px #fff,0 1px 2px #1f63b40f,var(--shadow);width:min(420px,100%);padding:32px 28px 28px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.card h1{font-size:26px;font-weight:700;letter-spacing:-.03em;margin:0 0 8px}.hint{color:var(--muted);font-size:14px;line-height:1.7}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;margin:2px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}.banner{background:linear-gradient(180deg,#fff7ea,#ffe9c8);color:#8a5a18;padding:12px 14px;margin:16px 0 14px;font-size:14px;line-height:1.6;border-radius:12px;box-shadow:inset 0 1px #fffc}.stack{display:flex;flex-direction:column;gap:12px;margin-top:22px}.stack-tight{margin-top:0;gap:12px}.stack-tight .banner{margin-top:0;margin-bottom:0}.card>.hint{margin-top:10px}label{font-size:13px;color:var(--muted);display:grid;gap:6px}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-width:16px;min-height:16px;padding:0;margin:0;box-shadow:none;flex-shrink:0;accent-color:var(--accent, #2f7de8);cursor:pointer}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:flex;align-items:flex-start;gap:10px;color:var(--ink);cursor:pointer}label.admin-access-group-pick>span{flex:1;min-width:0}.group-member-picker-table input[type=checkbox]{display:block;margin:0 auto}input,select,textarea{width:100%;background:linear-gradient(180deg,#f5f9fe,#eaf2fb);border:1px solid var(--line);border-radius:14px;padding:11px 12px;outline:none;box-shadow:inset 0 1px 2px #1f63b40f}input:focus,select:focus,textarea:focus{border-color:#8db8ef;background:#fff;box-shadow:0 0 0 3px #2f7de829}textarea{min-height:88px;resize:vertical}a.btn{display:block;text-align:center;text-decoration:none}.btn{background:linear-gradient(180deg,var(--accent-2) 0%,var(--accent) 52%,var(--accent-deep) 100%);color:#fff;border:0;padding:12px 16px;min-height:44px;border-radius:14px;font-weight:600;box-shadow:inset 0 1px #ffffff61,0 8px 18px #1f63b447;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.btn:hover{filter:brightness(1.04)}.btn:active{transform:translateY(1px);box-shadow:inset 0 1px #ffffff40,0 3px 8px #1f63b438}.btn.secondary{background:linear-gradient(180deg,#fff,#eef5fd);color:var(--ink);border:1px solid var(--line);box-shadow:inset 0 1px #fff,var(--shadow-soft)}.btn.danger{background:linear-gradient(180deg,#e87878 0%,var(--danger) 100%);color:#fff}.btn:disabled{opacity:.45;box-shadow:none}.grid-page{padding:20px 24px 48px}.section-title{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px}.setup-page-wrap{display:flex;justify-content:center}.setup-page{width:min(1120px,100%);display:flex;flex-direction:column;gap:24px}.setup-grid{display:grid;gap:24px;grid-template-columns:1fr;align-items:start}.setup-card{width:100%;margin-bottom:0}.setup-page .diag-card{width:100%!important}.setup-actions{margin-top:0}.setup-exit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.setup-exit .hint{margin:0;flex:1 1 240px}.service-status{margin:0 0 16px;padding:10px 14px;border-radius:10px;font-size:15px;font-weight:600}.service-status.active{background:var(--accent-soft);color:var(--accent-deep)}.service-status.suspended{background:#fdeaea;color:var(--danger)}.settings-page-wrap,.requests-page-wrap{display:flex;justify-content:center}.requests-page{width:min(760px,100%)}.requests-history-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:8px}.requests-history-head .admin-section-title{margin:0}.requests-history-actions{display:flex;flex-wrap:wrap;gap:8px}.settings-form{width:min(640px,100%)}.settings-subtitle{font-size:16px;margin:8px 0 0}.booking-detail-page-wrap{display:flex;justify-content:center}.booking-detail-top{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.booking-detail-top-title{max-width:none;text-align:center;justify-self:center}.detail-back-link{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:var(--accent-deep);text-decoration:none;padding:8px 14px;border-radius:999px;background:var(--accent-soft);white-space:nowrap}.detail-back-link:hover{filter:brightness(.97)}@media(max-width:640px){.booking-detail-top{grid-template-columns:1fr;justify-items:stretch}.booking-detail-top-title{text-align:left;justify-self:stretch}.booking-detail-top .nav{justify-content:flex-start}}.booking-detail-card{width:min(780px,100%)}.booking-detail-field{display:grid;gap:6px;font-size:13px;color:var(--muted)}.booking-detail-field>span{white-space:nowrap}.booking-detail-field>select{width:100%}@media(min-width:640px){.detail-list>div{display:grid;grid-template-columns:9rem 1fr;gap:4px 20px;align-items:start}.detail-list dt{margin-bottom:0;padding-top:2px}}.detail-list{display:grid;gap:12px;margin:0}.detail-list dt{font-size:13px;color:var(--muted);margin-bottom:4px}.detail-list dd{margin:0}.booking-detail-head{border-left:4px solid var(--accent);padding-left:12px}.booking-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.booking-detail-edit-form{margin-top:0;padding-top:8px;border-top:1px solid var(--line)}.booking-detail-feedback{display:grid;gap:6px;min-height:1.25em}.booking-detail-feedback-msg{margin:0;font-weight:600}.booking-detail-feedback .ok{color:#1f6b4a}.booking-detail-primary-actions{display:grid;gap:10px;margin-top:4px}.booking-detail-unsaved{margin:0;color:var(--accent-deep);font-weight:600}.booking-detail-primary-buttons{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%}.booking-detail-primary-buttons .btn{width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center}@media(min-width:640px){.booking-detail-primary-buttons{flex-direction:row;align-items:stretch;width:100%;gap:12px}.booking-detail-primary-buttons .btn{flex:1 1 0;width:auto;min-width:0}.booking-detail-primary-buttons .btn.btn-attention{transform:none}}.booking-transfer-section{border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;margin-top:16px;background:#ffffffb3}.booking-transfer-section .settings-subtitle{margin-top:0}.btn.btn-attention{animation:btn-attention-pulse 1.4s ease-in-out infinite}@keyframes btn-attention-pulse{0%,to{box-shadow:inset 0 1px #ffffff61,0 8px 18px #1f63b447}50%{box-shadow:inset 0 1px #ffffff61,0 8px 22px #1f63b473,0 0 0 4px #2f7de840}}.cal .event{cursor:pointer}.user-greeting{font-size:17px;font-weight:600;line-height:1.35}.user-greeting-short{display:none}.user-greeting-full{display:inline}.app-topbar{position:relative;gap:10px}.app-topbar.menu-open{z-index:70;overflow:visible;-webkit-backdrop-filter:none;backdrop-filter:none}.app-topbar-menu-btn{display:none;flex-shrink:0;width:42px;height:42px;border-radius:12px;border:1px solid rgba(31,99,180,.18);background:#ffffffe0;cursor:pointer;align-items:center;justify-content:center;padding:0}.app-topbar-menu-icon,.app-topbar-menu-icon:before,.app-topbar-menu-icon:after{display:block;width:18px;height:2px;background:var(--accent-deep, #1f63b4);border-radius:2px;position:relative}.app-topbar-menu-icon:before,.app-topbar-menu-icon:after{content:"";position:absolute;left:0}.app-topbar-menu-icon:before{top:-6px}.app-topbar-menu-icon:after{top:6px}.app-topbar.menu-open .app-topbar-menu-icon{background:transparent}.app-topbar.menu-open .app-topbar-menu-icon:before{top:0;transform:rotate(45deg)}.app-topbar.menu-open .app-topbar-menu-icon:after{top:0;transform:rotate(-45deg)}.app-topbar-backdrop{display:none}.nav-text-btn{appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:inherit;cursor:pointer;padding:0;text-align:left}.nav-text-btn:hover{color:var(--accent-deep, #1f63b4)}.google-sync-toggle-caption{margin:0 0 6px;font-size:12px;line-height:1.4}.app-topbar.booking-detail-top .brand.user-greeting{display:flex;align-items:center;gap:10px;max-width:none;flex:1;min-width:0}.app-topbar.booking-detail-top .booking-detail-top-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:860px){.user-greeting-full{display:none}.user-greeting-short{display:inline}.app-topbar{display:flex;flex-wrap:nowrap;align-items:center}.app-topbar .brand{flex:1;min-width:0;max-width:none}.app-topbar-menu-btn{display:inline-flex;z-index:41}.app-topbar-nav{display:none;position:absolute;top:calc(100% + 6px);right:10px;left:auto;min-width:min(260px,calc(100vw - 28px));flex-direction:column;align-items:stretch;gap:2px;padding:10px;background:#fffffffa;border:1px solid rgba(31,99,180,.14);border-radius:16px;box-shadow:0 16px 40px #14305a29;z-index:40}.app-topbar.menu-open .app-topbar-nav{display:flex}.app-topbar-nav a,.app-topbar-nav .nav-text-btn{padding:10px 12px;border-radius:10px}.app-topbar-nav a.active{background:var(--accent-soft, rgba(47, 125, 232, .12))}.app-topbar-backdrop{display:block;position:fixed;inset:0;border:0;padding:0;margin:0;background:transparent;z-index:30}.app-topbar.booking-detail-top .brand.user-greeting{flex-wrap:wrap}}@media(min-width:900px){.setup-grid{grid-template-columns:1fr 1fr}.setup-wide{grid-column:1 / -1}}.admin-page-wrap{display:flex;justify-content:center}.admin-page{width:min(1120px,100%);margin:0 auto}.admin-tab-panel{display:flex;flex-direction:column;gap:20px;margin-top:8px}.admin-section{background:linear-gradient(180deg,#fffffff7,#f1f8ffeb);border:1px solid rgba(255,255,255,.9);border-radius:20px;box-shadow:inset 0 1px #fff,0 1px 2px #1f63b40f,var(--shadow);padding:22px 24px}.admin-section-title{margin:0 0 16px;font-size:18px;font-weight:700;letter-spacing:-.02em}.admin-section .stack,.admin-section .google-connection,.admin-section .workspace-users{margin-top:0}.admin-table-wrap,.workspace-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#eaf2fb59}.pending-request-layout{display:block}.pending-request-layout.has-detail{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr);gap:16px;align-items:start}.pending-request-table td{vertical-align:top}.pending-request-table tr.is-selected td{background:#1f63b414}.pending-request-table tr.is-past td{color:var(--muted)}.pending-request-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pending-request-table .btn{display:inline-flex;align-items:center;justify-content:center;width:auto;margin:0;white-space:nowrap;min-height:32px;padding:6px 10px;border-radius:10px;font-size:12px;box-shadow:none}.pending-past-title{margin:18px 0 8px}.list-pager{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px}.list-pager label{display:flex;align-items:center;gap:8px;margin:0;font-size:13px}.list-pager select{width:auto;min-height:32px}.list-pager .btn{min-height:32px;padding:6px 10px}.list-pager-index{font-size:13px;color:var(--muted)}.pending-request-table tbody th{background:#eaf2fbcc;font-size:12px;color:var(--muted)}.pending-request-sub{margin-top:2px;font-size:12px}button.linkish{padding:0;border:0;background:none;color:var(--accent, #1f63c8);font:inherit;font-weight:700;text-align:left;cursor:pointer}.pending-request-detail{border:1px solid var(--line);border-radius:14px;padding:16px;background:#ffffffb8}.pending-request-detail h3{margin:0 0 6px;font-size:13px;color:var(--muted)}.pending-request-title{margin:0 0 12px;font-size:16px;font-weight:700}.pending-meta{display:grid;gap:8px;margin:0 0 12px}.pending-meta div{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:8px}.pending-meta dt{margin:0;color:var(--muted);font-size:12px}.pending-meta dd{margin:0;font-size:13px}.pending-request-message{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#eef5fd;font-size:13px;line-height:1.55;white-space:pre-wrap}.pending-request-message span{display:block;margin-bottom:4px;color:var(--muted);font-size:12px}.pending-request-links{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 12px}.pending-request-detail .btn-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}@media(max-width:980px){.pending-request-layout.has-detail{grid-template-columns:1fr}}.workspace-table-wrap{max-height:420px;overflow:auto}.admin-user-list{display:flex;flex-direction:column;gap:12px}.admin-user-card{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#eaf2fb59}.admin-user-card.is-disabled{background:#eef1f4b8;border-color:#cfd6e0}.admin-user-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.admin-user-badges{display:flex;flex-wrap:wrap;gap:6px}.admin-user-email{font-weight:600;word-break:break-all;font-size:14px}.admin-user-card-body{display:grid;gap:10px}.admin-user-field{display:grid;gap:4px;margin:0;min-width:0}.admin-user-label{font-size:12px;color:var(--muted);font-weight:600}.admin-user-readonly{font-size:15px;line-height:1.4;word-break:break-word}.admin-user-control{width:100%;min-height:44px;box-sizing:border-box}.admin-user-card-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}@media(min-width:720px){.admin-user-card-body{grid-template-columns:minmax(0,1fr) 160px;grid-template-areas:"name role" "calendar role" "backup role" "actions actions";align-items:start}.admin-user-field-name{grid-area:name}.admin-user-field-calendar{grid-area:calendar}.admin-user-field-role{grid-area:role}.admin-user-field-backup{grid-area:backup}.admin-user-card-actions{grid-area:actions}}.admin-user-readonly-stack{display:flex;flex-direction:column;gap:4px;min-width:0}.admin-user-table{margin:0;border-collapse:separate;border-spacing:0;width:100%}.admin-user-table th,.admin-user-table td{vertical-align:top;padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;background:transparent}.admin-user-table thead th{background:#eaf2fb8c;font-size:13px;color:var(--muted);font-weight:600}.admin-user-table tbody tr:last-child td{border-bottom:none}.admin-notice{margin:0;padding:10px 12px;border-radius:10px;border:1px solid rgba(180,83,9,.25);background:#fff7ede6;color:#92400e;font-size:14px;line-height:1.5}.admin-group-list{display:flex;flex-direction:column;gap:12px}.admin-group-card{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#eaf2fb59;display:flex;flex-direction:column;gap:12px}.admin-group-card+.admin-group-card{margin-top:0}.admin-group-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px}.admin-group-name{font-size:16px}.admin-group-count{margin:4px 0 0}.admin-group-members-wrap{max-height:240px}.group-member-assign{padding-top:4px;border-top:1px solid var(--line)}.group-assign-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.group-assign-selected-count{margin:0}.group-member-picker-wrap{max-height:360px}.group-member-picker-table .group-picker-check-col{width:40px;text-align:center}.group-member-picker-table .group-picker-name,.group-member-picker-table .group-picker-email{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(min-width:720px){.group-member-picker-table .group-picker-name{max-width:280px}.group-member-picker-table .group-picker-email{max-width:320px}}.group-member-picker-table tr.is-member{opacity:.55}.group-picker-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:var(--surface-2, #eef2f6);font-size:11px;color:var(--muted);vertical-align:middle}.group-picker-actions{white-space:nowrap;width:1%}.access-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:4px 0 8px}.access-legend-item{margin:0}.access-summary{margin:0 0 4px}.access-tree{display:flex;flex-direction:column;gap:12px}.access-fold{border-left:4px solid;border-radius:12px;padding:0;overflow:hidden}.access-fold-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 12px}.access-fold-toggle{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;border:none;background:transparent;text-align:left;padding:0;font:inherit;color:inherit;cursor:pointer}.access-fold-chevron{flex:0 0 auto;width:1em;color:var(--muted)}.access-fold-title{font-weight:600;font-size:15px}.access-fold-summary{margin-left:4px;font-size:13px;color:var(--muted);white-space:nowrap}.access-fold-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.access-fold-body{padding:0 12px 12px 28px;display:flex;flex-direction:column;gap:12px}.access-type-list,.access-resource-list{display:flex;flex-direction:column;gap:10px}.access-resource-card{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#ffffffa6;display:flex;flex-direction:column;gap:10px}.access-resource-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.access-scope-stack{display:flex;flex-direction:column;gap:10px}.access-scope-panel{border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.access-scope-panel.is-direct{border:1px solid rgba(31,99,180,.28);background:#ffffffeb;box-shadow:inset 3px 0 #1f63b4}.access-scope-panel.is-inherited{border:1px dashed rgba(100,116,139,.45);background:#f1f5f9d9;box-shadow:inset 3px 0 #94a3b8}.access-scope-header{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px 12px}.access-scope-heading{flex:1 1 auto;min-width:0}.access-scope-title{margin:0;font-size:14px;font-weight:700}.access-scope-subtitle{margin:2px 0 0;font-size:13px;color:var(--muted)}.access-scope-count{flex:0 0 auto;min-width:1.5em;height:1.5em;padding:0 8px;border-radius:999px;background:#0000000f;font-size:12px;font-weight:700;line-height:1.5em;text-align:center}.access-scope-empty{margin:0;font-size:13px;color:var(--muted)}.access-scope-add{padding-top:4px;border-top:1px dashed var(--line)}.access-scope-kind{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.access-scope-kind.is-direct{background:#1f63b424;color:#1f63b4}.access-scope-kind.is-inherited{background:#64748b29;color:#475569}.access-policy-table-wrap{max-height:none;border-radius:8px}.access-policy-table th,.access-policy-table td{font-size:13px;vertical-align:middle}.access-policy-source-cell{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:12px}.access-policy-subject-cell{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.access-policy-action-cell{white-space:nowrap;width:1%}.access-policy-table tr.is-inherited-row{background:#ffffff59}.access-perm-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.access-perm-badge.is-view{background:#1f63b41f;color:#1f63b4}.access-perm-badge.is-book{background:#3d5a4c24;color:#3d5a4c}.access-status-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.access-status-badge.is-open{background:#0d948824;color:#0d9488}.access-status-badge.is-restricted{background:#b4530924;color:#b45309}.access-direct-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;background:var(--surface-2, #eef2f6);color:var(--muted);white-space:nowrap}.access-policy-add{margin-top:4px}.workspace-table tr.is-deleted td{background:#fdeaea47}@media(max-width:719px){.admin-section{padding:16px 14px}.workspace-filters{grid-template-columns:1fr}.filter-chips{flex-wrap:wrap}.workspace-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.workspace-table{min-width:520px}.admin-user-card-actions .btn{flex:1 1 calc(50% - 4px);min-width:0}}.modal-backdrop{position:fixed;inset:0;z-index:40;background:#1226446b;display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{width:min(640px,100%);max-height:min(80vh,720px);overflow:auto;margin:0}.restore-choice-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.backup-conflict-list{margin:12px 0 0;padding-left:1.2rem;display:flex;flex-direction:column;gap:8px;color:var(--ink)}.restore-choice-row{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#ffffffb8}.restore-choice-meta{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.restore-choice-options{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.restore-choice-options label{display:flex;align-items:flex-start;gap:8px;color:var(--ink);font-size:14px;line-height:1.5}.modal-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:16px}.admin-user-detail-grid{display:grid;gap:10px}@media(min-width:720px){.admin-user-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-user-field-check{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:14px}.admin-link-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.admin-link-list a{word-break:break-word}.admin-request-row{display:flex;flex-direction:column;gap:8px}.admin-request-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.admin-request-card{border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;background:#fff}.yield-issue-card.yield-issue-error{border-color:#e8b4b4;background:#fff8f8}.yield-issue-detail{margin:0;font-size:14px;line-height:1.5}.yield-issue-scope{margin:0}.yield-self-warning{margin:0 0 8px}.admin-request-card.request-focused{outline:2px solid var(--accent);outline-offset:2px;box-shadow:var(--shadow-soft)}.admin-request-card-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-request-badge{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--accent-soft, rgba(47, 125, 232, .12));color:var(--accent);font-size:12px;font-weight:600}.admin-request-direction{font-size:12px;color:var(--muted)}.admin-request-title{font-size:16px;font-weight:700;color:var(--ink);text-decoration:none;line-height:1.4}.admin-request-title:hover{text-decoration:underline}.admin-request-meta{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.admin-request-message{margin:0;padding:10px 12px;border-radius:8px;background:#3d5a4c0f;font-size:13px;line-height:1.55;white-space:pre-wrap}.admin-request-actions{margin-top:4px;padding-top:10px;border-top:1px solid var(--line)}.admin-request-action-lead{margin:0 0 8px}.admin-request-action-buttons{display:flex;flex-wrap:wrap;gap:8px}.request-card-incoming{border-left:4px solid var(--accent)}.request-card-outgoing{border-left:4px solid #9aa8b8}.request-direction-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.02em}.request-direction-badge-incoming{background:var(--accent-soft);color:var(--accent-deep)}.request-direction-badge-outgoing{background:#eef2f7;color:#5b738c}.request-card-lead{margin:0;font-size:14px;line-height:1.55;color:var(--ink);font-weight:600}.request-answer-deadline{display:flex;align-items:center;gap:6px;margin:8px 0 0;font-size:13px;font-weight:700;color:#9a5b12}.request-card-time{margin-left:auto}.request-change-block{border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;background:#f8fbff}.request-change-block-title{font-size:12px;font-weight:700;color:var(--accent-deep);letter-spacing:.02em}.request-change-booking-link{font-size:15px;font-weight:700;color:var(--ink);text-decoration:none;line-height:1.4}.request-change-booking-link:hover{text-decoration:underline}.request-change-space{margin:0;font-size:12px;color:var(--muted)}.request-change-row{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:baseline;font-size:13px;line-height:1.5}.request-change-row-highlight .request-change-value{color:var(--accent-deep);font-weight:700}.request-change-label{color:var(--muted);white-space:nowrap}.request-change-value{color:var(--ink);word-break:break-word}.request-change-outcome{margin:0;font-size:13px;line-height:1.55;color:var(--conflict);font-weight:600}.requests-move-form{margin-top:10px;padding:12px;border-radius:10px;background:#fff;border:1px solid var(--line)}.request-card-history{opacity:.96}.request-status-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}.request-status-accepted{background:#e4f0ff;color:#1f63c8}.request-status-applied{background:#e8f5ec;color:#2d6a3e}.request-status-rejected{background:#fff0eb;color:#d9480f}.request-status-expired{background:#eef2f7;color:#5b738c}.request-reject-message{background:#fff8f5;border:1px solid #f5d0c5}.admin-audit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.admin-audit-item{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#eaf2fb59}.admin-audit-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.audit-terminal{margin:0;padding:12px 14px;border-radius:10px;border:1px solid #1e293b;background:#0f172a;color:#e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;line-height:1.55;overflow-x:auto;white-space:pre}.audit-more{margin-top:10px}.section-err{margin:0 0 8px;padding:8px 10px;border-radius:8px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;font-size:13px}.google-connection-actions{margin-bottom:0}.google-connection{display:flex;flex-direction:column;gap:16px}.google-connection-compact{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.google-check-panel{display:flex;flex-direction:column;gap:12px;margin-top:0}.google-check-meta{margin:0}.google-check-results{display:flex;flex-direction:column;gap:2px}.google-check-results p{margin:0;line-height:1.45}.google-check-results .banner{margin-top:10px;margin-bottom:0}.google-check-panel>.btn{align-self:flex-start}.google-check-loading{margin:0;padding:0}.catalog-tree{display:flex;flex-direction:column;gap:20px;margin-top:8px}.catalog-lists{display:grid;gap:16px}@media(min-width:720px){.catalog-lists{grid-template-columns:1fr 1fr}}.catalog-section-title{font-size:14px;margin:0 0 8px;color:var(--muted)}.catalog-chip-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.catalog-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:var(--accent-soft);font-size:14px}.catalog-delete{padding:4px 10px;font-size:12px}.table-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:start}.workspace-users{gap:16px}.workspace-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.workspace-summary{margin:0}.workspace-filters{display:grid;gap:12px}@media(min-width:720px){.workspace-filters{grid-template-columns:1fr auto;align-items:end}}.workspace-search input{width:100%}.filter-chips{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:6px 12px;font-size:13px;cursor:pointer}.filter-chip.on{background:var(--accent-soft);border-color:#9ec5f5;color:var(--accent-deep);font-weight:600}.workspace-actions{display:flex;flex-wrap:wrap;gap:8px}.workspace-table{margin:0}.workspace-table tr.is-registered{opacity:.72}.user-badge{display:inline-block;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:600}.user-badge.new{background:#fff4df;color:#9a6b1a}.user-badge.registered{background:var(--accent-soft);color:var(--accent-deep)}.user-badge.disabled{background:#eef1f4;color:#5a6573;border:1px solid #cfd6e0;font-weight:700}.user-badge.deleted{background:#fdeaea;color:var(--danger)}.manual-user-add{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#fff9}.manual-user-add summary{cursor:pointer;font-weight:600}.catalog-loc-title{font-size:18px;margin:0 0 8px}.catalog-type{margin-left:12px;padding-left:12px;border-left:2px solid var(--line)}.catalog-type-title{font-size:15px;margin:0 0 8px;color:var(--muted)}.catalog-location-wrap{margin-bottom:12px}.catalog-fold{border-left:4px solid var(--accent);border-radius:12px;overflow:hidden;margin-bottom:10px}.catalog-fold-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px}.catalog-fold-toggle{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:10px 12px;border:none;background:transparent;text-align:left;cursor:pointer;font:inherit}.catalog-fold-chevron{color:var(--muted);width:14px;flex-shrink:0}.catalog-fold-title{font-weight:600;font-size:15px}.catalog-fold-summary{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-fold-actions{padding-right:10px;flex-shrink:0}.catalog-fold-body{padding:0 12px 12px 16px;border-top:1px solid rgba(0,0,0,.06)}.catalog-type-list,.catalog-type-spaces{display:flex;flex-direction:column;gap:8px;margin-top:10px}.catalog-add-space-section{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}.catalog-add-space-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}@media(max-width:720px){.catalog-add-space-grid{grid-template-columns:1fr}}.catalog-space-card{border-left:3px solid var(--accent);border-radius:10px;background:#ffffffb3;margin-bottom:6px}.catalog-space-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px 4px 0}.catalog-space-toggle{padding:8px 4px 8px 8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.catalog-space-name{font-weight:600}.catalog-space-color-dot{width:12px;height:12px;border-radius:999px;flex-shrink:0;box-shadow:inset 0 0 0 1px #0000001f}.catalog-space-meta{font-size:12px;color:var(--muted)}.catalog-space-body{padding:0 10px 10px 14px;border-top:1px solid var(--line)}.catalog-space-head{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-top:10px}.cal-view-toggle{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.cal-view-toggle button{border:none;background:var(--card);padding:6px 14px;cursor:pointer;font:inherit;font-size:14px}.cal-view-toggle button.active{background:var(--accent);color:#fff}.cal-week-nav{padding:6px 10px;min-width:36px}.cal-week-label{font-size:14px;font-weight:600}.cal-week{overflow:auto;max-height:calc(100vh - 180px);border:1px solid rgba(211,227,244,.9);border-radius:20px;background:linear-gradient(180deg,#fff,#f4f9ff)}.cal-week-head,.cal-week-row{display:grid;border-bottom:1px solid var(--line)}.cal-week-corner{position:sticky;left:0;z-index:2;background:#f4f9ff}.cal-week-day-head{text-align:center;padding:10px 6px;position:sticky;top:0;z-index:1}.cal-week-day-head.is-today,.cal-week-cell.is-today{background:#1f63b414}.cal-week-resource{position:sticky;left:0;z-index:1;background:#f7fbff;padding:10px;font-size:13px;border-right:1px solid var(--line)}.cal-week-cell{min-height:88px;padding:6px;border-right:1px solid var(--line);vertical-align:top;cursor:pointer}.cal-week-cell:hover{background:#3d5a4c0a}.week-event{border-left:3px solid var(--accent);border-radius:6px;padding:4px 6px;margin-bottom:4px;font-size:11px;cursor:pointer}.week-event.tentative{border-left-color:var(--tent);background:var(--tent-soft)}.week-event.conflict-pending{background:repeating-linear-gradient(-45deg,var(--tent-soft),var(--tent-soft) 6px,#ffe0c4 6px,#ffe0c4 12px);outline:2px solid var(--conflict);outline-offset:-1px}.week-event.yield-pending{outline:2px dashed #2f7de8;outline-offset:-1px}.week-event.yield-proposal{background:#2f7de814;border:2px dashed #2f7de8;border-left:2px dashed #2f7de8;color:var(--ink);pointer-events:none}.week-event.event-editable{cursor:grab;touch-action:none}.week-event.event-editing{outline:2px solid var(--accent);outline-offset:1px}.week-event-time{font-weight:600;color:var(--muted);font-size:10px}.week-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-space-head{display:flex;flex-wrap:wrap;gap:8px;align-items:end}.catalog-space-head .admin-user-field{flex:1 1 200px}.space-details-block{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.space-details-toggle{font-size:13px}.space-details-form{display:flex;flex-direction:column;gap:10px;margin-top:10px}.space-color-field{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;background:#ffffffb3}.space-color-presets{display:flex;flex-wrap:wrap;gap:8px}.space-color-swatch{width:28px;height:28px;border-radius:999px;border:2px solid transparent;cursor:pointer;padding:0}.space-color-swatch.active{border-color:var(--ink);box-shadow:0 0 0 2px #fff inset}.space-color-custom{display:flex;gap:8px;align-items:center}.space-color-custom input[type=color]{width:44px;height:36px;padding:2px;border:1px solid var(--line);border-radius:10px;background:#fff}.space-color-custom .admin-user-control{flex:1 1 120px}.booking-color-field{border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;margin:0;background:#ffffffb3}.booking-color-field legend{font-size:13px;font-weight:600;padding:0 6px}.booking-color-field .space-color-field{border:none;border-radius:0;padding:0;background:transparent}.booking-color-toggle{margin-bottom:8px}.booking-color-space-preview{display:flex;align-items:center;gap:10px;margin-top:4px}.space-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.space-details-textarea{min-height:72px;resize:vertical}.space-amenities-field{border:none;margin:0;padding:0}.space-amenities-checks{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:6px}.space-amenity-check{display:inline-flex;align-items:center;gap:6px;font-size:14px}.resource-meta{margin:8px 0 12px}.resource-meta-line{margin:0 0 6px;font-size:14px;color:var(--text)}.resource-meta-compact{margin-top:2px;font-size:12px}.resource-amenities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.resource-amenity-chip{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--surface-2, #eef2f6);font-size:12px;color:var(--muted)}.resource-desc{margin:0;white-space:pre-wrap}.space-booking-preview{padding:10px 12px;border:1px dashed var(--line);border-radius:8px;background:var(--surface-2, #f8faf9)}.space-booking-preview-body{display:flex;flex-direction:column;gap:6px}.space-preview-notice-label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:2px}.catalog-type-block{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.catalog-location-block{display:flex;flex-direction:column;gap:16px}.catalog-location-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.catalog-location-head .catalog-loc-title{margin:0}.catalog-location-section{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.catalog-chip-inline{align-self:flex-start}.catalog-type-calendar{margin:0;padding:12px 14px}.catalog-type-subtitle{margin:0 0 8px;font-size:14px;color:var(--muted)}.catalog-add-row{align-items:center}.catalog-empty-hint{margin:4px 0 0}.calendar-link-row{display:flex;flex-direction:column;gap:10px}.calendar-link-actions{display:flex;flex-wrap:wrap;gap:8px}.calendar-id-field{margin:0}.calendar-verify{padding:10px 12px;border-radius:8px;font-size:13px}.calendar-verify.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.calendar-verify.warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.calendar-verify-head{margin:0 0 6px}.calendar-view-link{margin:0;font-size:14px}.calendar-view-link a{font-weight:600}.catalog-space{display:grid;gap:8px;margin-bottom:10px}@media(min-width:720px){.catalog-space{grid-template-columns:1fr 1fr auto auto;align-items:center}}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.toolbar input[type=date]{width:auto;background:var(--card)}.cal{overflow:auto;max-height:calc(100vh - 180px);background:linear-gradient(180deg,#fff,#f4f9ff);border:1px solid rgba(211,227,244,.9);border-radius:20px;box-shadow:inset 0 1px #ffffffe6,var(--shadow-soft)}.cal-header-row{display:grid;position:sticky;top:0;z-index:3;background:linear-gradient(180deg,#f4f9ff,#e7f1fc);border-bottom:1px solid var(--line)}.cal-body-row{display:grid;align-items:stretch}.cal-corner{position:sticky;left:0;z-index:2;min-height:1px}.cal-time-col{position:sticky;left:0;z-index:1;background:#f7fbff;border-right:1px solid var(--line)}.cal-resource-col{position:relative;display:grid;border-right:1px solid var(--line);background:#ffffffa6}.slot-cell{border-bottom:1px solid var(--line);cursor:pointer;min-height:24px;z-index:0}.slot-cell:hover{background:#3d5a4c0f}.cal-filter{display:inline-flex;align-items:center;gap:6px;font-size:14px;white-space:nowrap;flex-shrink:0}.cal-filter select{min-width:120px;width:auto}.cal-head,.cal-row{display:contents}.cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;font-size:11px}.time{padding:0 8px;color:var(--muted);font-size:11px;line-height:24px;border-bottom:1px solid var(--line);box-sizing:border-box}.head{padding:12px 10px;font-size:13px;font-weight:600;border-right:1px solid var(--line)}.cell.head,.cal-week-resource.head{min-width:0;overflow:hidden}.space-head{min-width:0;font-weight:400}.space-head-line,.space-head-sub{display:flex;align-items:center;gap:4px;min-width:0}.space-head-line+.space-head-sub{margin-top:2px}.space-head-name,.space-head-bit{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.space-head-name{flex:0 1 auto;font-weight:600}.space-head-bit{flex:0 1 auto}.space-head-sub{color:var(--muted);font-size:11px;font-weight:400}.space-head-icons,.space-head-dot,.space-info-btn,.cal-embed-icon{flex:none}.space-head-icons{display:inline-flex;align-items:center;gap:2px}.space-info-btn,.cal-embed-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border-radius:999px;color:var(--accent, #1f63b4);background:transparent;line-height:1}.space-info-btn{border:1px solid currentColor;font-size:11px;font-weight:700;font-family:Georgia,Times New Roman,serif;cursor:pointer}.cal-embed-icon{border:0;text-decoration:none}.space-info-btn:hover,.cal-embed-icon:hover{background:#1f63b414}.space-info-popover{position:fixed;z-index:70;width:min(280px,calc(100vw - 16px));max-height:min(360px,calc(100vh - 16px));overflow:auto;padding:12px;border-radius:12px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px #16324d2e}.space-info-title{margin:0 0 4px;font-weight:600}.space-info-line{margin:6px 0;font-size:13px}.show-calendar-link{display:grid;gap:4px;margin:8px 0}.show-calendar-link-row{display:inline-flex;align-items:center;gap:8px}.event{position:absolute;left:4px;right:4px;padding:4px 6px;overflow:hidden;font-size:11px;line-height:1.3;color:#fff;border-radius:8px;box-shadow:0 4px 10px #16324d29;z-index:2;cursor:pointer;box-sizing:border-box;pointer-events:auto}.event.event-has-yield .event-title,.event.event-has-yield .event-time{padding-right:5.6em}.ask-yield-btn{border:0;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700;line-height:1.4;background:#fff;color:#16324d;cursor:pointer;box-shadow:0 1px 3px #16324d47}.event .ask-yield-btn{position:absolute;top:3px;right:3px;z-index:3}.week-event .ask-yield-btn{display:inline-flex;margin-top:4px}.event-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-time{font-size:10px;opacity:.92;margin-top:2px}.event.tentative{background:var(--tent-soft);color:#8a5a18;outline:1px dashed var(--tent);box-shadow:none}.event.conflict-pending{background:repeating-linear-gradient(-45deg,var(--tent-soft),var(--tent-soft) 6px,#ffe0c4 6px,#ffe0c4 12px);outline:2px solid var(--conflict);color:#8a3a12}.event.yield-pending{outline:2px dashed #2f7de8;box-shadow:0 0 0 1px #2f7de840}.event.yield-proposal{background:#2f7de81a;border:2px dashed #2f7de8;color:var(--ink);pointer-events:none;z-index:3;box-shadow:none}.move-draft-ghost{opacity:.65;border-color:#64748b8c;background:#64748b0f;z-index:2}.booking-buffer-zone{position:absolute;left:4px;right:4px;box-sizing:border-box;z-index:1;pointer-events:none;background:#78828c2e;border:1px dashed rgba(90,100,110,.55);border-radius:6px;overflow:hidden;display:flex;align-items:flex-start;padding:2px 4px}.booking-buffer-label{font-size:9px;line-height:1.2;color:#3c4650d9;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-buffer-fieldset{margin:0;padding:0;border:none}.booking-buffer-fieldset legend{font-weight:600;margin-bottom:6px}.booking-buffer-inherit{display:flex;align-items:flex-start;gap:8px;font-size:13px;margin:8px 0}.yield-confirm-panel,.slot-snap-panel{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.slot-snap-line{margin:6px 0;font-size:14px}input.input-fix-pulse{animation:input-fix-pulse .8s ease-in-out 3}@keyframes input-fix-pulse{0%,to{box-shadow:inset 0 1px 2px #1f63b40f}50%{box-shadow:inset 0 1px 2px #b0303014,0 0 0 3px #d64a4a2e,0 0 18px 4px #d64a4a57}}.btn.btn-save-ready{animation:btn-save-ready-pulse .8s ease-in-out 3}@keyframes btn-save-ready-pulse{0%,to{box-shadow:inset 0 1px #ffffff61,0 8px 18px #1f63b447}50%{box-shadow:inset 0 1px #ffffff61,0 8px 18px #1f63b433,0 0 0 4px #2ea05a3d,0 0 22px 6px #2ea8606b}}.move-draft-notice{margin:8px 0 0;font-size:13px}.event.continues-before{border-top-left-radius:0;border-top-right-radius:0;border-top:2px dashed rgba(255,255,255,.65)}.event.continues-after{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:2px dashed rgba(255,255,255,.65)}.event-editable{cursor:grab;touch-action:none}.event-editable:active{cursor:grabbing}.event-editing{z-index:4;outline:2px solid #2f7de8;outline-offset:1px;box-shadow:0 6px 16px #2f7de859}.event.tentative.event-editing{outline-color:var(--tent);box-shadow:0 6px 16px #8a5a1840}.event-resize-handle{position:absolute;left:0;right:0;height:8px;z-index:1;touch-action:none}.event-resize-start{top:0;cursor:ns-resize}.event-resize-end{bottom:0;cursor:ns-resize}.move-draft-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#ffffffeb}.move-draft-info{display:flex;flex-direction:column;gap:2px;min-width:140px}.move-draft-times{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px}.move-draft-datetime{display:grid;gap:4px;font-size:13px;color:var(--muted)}.move-draft-space{display:grid;gap:4px}.move-draft-space-name{margin:0;color:var(--text);font-weight:600}.move-draft-datetime span{font-size:12px}.move-draft-datetime input[type=date],.move-draft-datetime input[type=time]{width:auto;min-width:7em}.move-draft-actions{display:flex;flex-wrap:wrap;gap:8px}.booking-range-field{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;gap:10px;margin:0;background:#ffffffb3}.booking-range-field legend{font-weight:600;padding:0 4px}.booking-resource-field{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;gap:8px;margin:0;background:#ffffffb3}.booking-resource-field legend{font-size:13px;font-weight:600;padding:0 6px}.booking-resource-field select{width:100%}.booking-range-row{display:grid;grid-template-columns:minmax(5em,auto) minmax(0,1fr) minmax(7em,auto);gap:8px;align-items:center;font-size:13px;color:var(--muted)}.booking-range-row>span{white-space:nowrap}.booking-range-row input[type=date],.booking-range-row input[type=time]{width:100%;min-width:0}.booking-members-field{display:grid;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#ffffffb3}.booking-members-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.booking-member-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.booking-member-name{flex:1 1 160px;font-size:14px}.booking-member-remove{padding:4px 10px;font-size:13px}.booking-member-add{display:grid;gap:8px}.booking-members-pending-label{margin:0;font-size:13px;font-weight:600;color:var(--text)}.booking-member-role{display:grid;gap:4px;font-size:13px;color:var(--muted);max-width:240px}.booking-members-readonly{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}@media(max-width:520px){.booking-range-row{grid-template-columns:1fr}.booking-range-row>span{white-space:normal}}.catalog-slug-row{display:flex;gap:8px;align-items:center}.catalog-slug-row .admin-user-control{flex:1}.catalog-slug-field{margin:10px 0}.purpose-fold{border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:8px}.purpose-fold-head{display:flex;align-items:center;gap:6px;min-height:36px;padding-right:6px}.purpose-fold-toggle{flex:1;display:flex;align-items:center;gap:8px;min-width:0;padding:6px 10px;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.purpose-fold-chevron{flex-shrink:0;width:12px;opacity:.65}.purpose-fold-title{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purpose-fold-summary{flex-shrink:0;font-size:11px;color:var(--muted);font-weight:400}.purpose-fold-actions{display:flex;align-items:center;gap:2px}.purpose-fold-body{padding:0 10px 10px;border-top:1px solid var(--line)}.purpose-fold-lead{margin:8px 0 6px;font-size:12px}.purpose-set-list-compact{display:grid;gap:6px}.purpose-set-list-compact .purpose-fold{margin-bottom:0;background:#fafbfc}.purpose-set-actions{display:flex;align-items:center;gap:2px}.purpose-set-rename{display:block;margin:8px 0 6px}.purpose-set-rename .hint{display:block;margin-bottom:4px;font-size:11px}.purpose-inline-add{display:flex;gap:6px;align-items:center;margin-bottom:8px}.purpose-inline-add-tight{margin:6px 0 0}.purpose-inline-input{flex:1;min-width:0;padding:5px 8px;font-size:13px;border:1px solid var(--line);border-radius:8px;background:#fff}.btn-compact{padding:5px 10px;font-size:12px;white-space:nowrap}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:13px;line-height:1;cursor:pointer;color:inherit}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-icon.danger{color:#b42318;border-color:#f5c2c0}.purpose-move-btns{display:inline-flex;gap:2px}.field-error{color:#b42318;font-size:.92rem}.catalog-order-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.catalog-order-row{display:flex;gap:8px;align-items:center}.purpose-tpl-rows{list-style:none;margin:0;padding:0;display:grid;gap:4px}.purpose-tpl-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:4px;align-items:center}.purpose-tpl-item.is-inactive .purpose-inline-input{opacity:.55}.purpose-calendar{margin:2px 0 8px 28px}.purpose-calendar-body{display:grid;gap:8px;margin-top:6px}.btn-text{border:0;background:transparent;color:var(--accent-deep);padding:0;font-size:13px;font-weight:600;cursor:pointer}.purpose-active-chip{display:inline-flex;margin:0}.purpose-active-chip input{width:14px;height:14px;margin:0}.muted-list button{margin-left:12px}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(420px,100%);background:linear-gradient(180deg,#fff,#f3f8ff);border-left:1px solid var(--line);padding:28px 24px;overflow:auto;z-index:5;box-shadow:-16px 0 40px #1f63b41f}.drawer-backdrop{position:fixed;inset:0;z-index:4;border:0;padding:0;margin:0;background:#16324d1f;cursor:pointer}.drawer--create{border-left-width:1px;border-left-color:var(--line)}.drawer--edit{border-left:3px solid rgba(196,84,84,.82);box-shadow:-20px 0 44px #c454541a,inset 3px 0 #c454542e}.drawer--view{--drawer-accent: var(--accent);border-left:3px solid var(--drawer-accent);box-shadow:-20px 0 44px color-mix(in srgb,var(--drawer-accent) 14%,transparent),inset 3px 0 color-mix(in srgb,var(--drawer-accent) 28%,white)}.drawer-panel-head{display:grid;gap:12px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}.drawer-panel-head--accent{border-left:4px solid var(--drawer-accent, var(--accent));padding-left:12px;margin-left:-4px}.drawer-panel-head-main{display:grid;gap:4px}.drawer-panel-kicker{margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.drawer-panel-title{margin:0;font-size:20px;line-height:1.35;font-weight:700;color:var(--ink)}.drawer-panel-title--lg{font-size:22px;margin:8px 0 0}.drawer-panel-lead{margin:0;line-height:1.5}.drawer-panel-body{display:grid;gap:14px}.drawer-panel-actions{display:flex;flex-wrap:wrap;gap:8px}.drawer-summary-line{margin:0;font-size:15px;font-weight:600;color:var(--ink)}.drawer-close-btn{justify-self:start}.drawer-detail-link{display:inline-flex;justify-content:center;text-decoration:none;margin-top:4px}.drawer-notes-body{white-space:pre-wrap;line-height:1.55}.google-sync-section{border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;margin:0;background:#ffffffb3}.google-sync-section legend{font-size:13px;font-weight:600;padding:0 6px}.google-sync-lead{margin:4px 0 12px;font-size:12px;line-height:1.45}.google-sync-field{display:grid;gap:8px;margin-bottom:12px}.google-sync-field:last-child{margin-bottom:0}.google-sync-label{display:grid;gap:6px;font-size:13px;font-weight:600}.google-sync-label input,.google-sync-label textarea{font-weight:400}.google-sync-toggle{display:grid;grid-template-columns:1fr 1fr;gap:6px}.google-sync-option{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;line-height:1.35;text-align:center;cursor:pointer;color:var(--muted);transition:border-color .15s,background .15s,color .15s;white-space:nowrap}.google-sync-option:hover:not(:disabled){border-color:var(--accent);color:var(--ink)}.google-sync-option.active{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);font-weight:600}.google-sync-option:disabled{opacity:.45;cursor:not-allowed}.notes-visibility-toggle{flex-wrap:wrap}.notes-visibility-toggle .google-sync-option{flex:1 1 auto;min-width:7.5em;font-size:12px;padding:8px 10px;white-space:normal}.notes-visibility-toggle .notes-visibility-private:hover:not(:disabled){border-color:#d98989;color:#9a3f3f}.notes-visibility-toggle .notes-visibility-private.active{border-color:var(--danger);background:linear-gradient(180deg,#fff1f1,#fde4e4);color:#9a3f3f}.booked-for-field{display:grid;gap:6px}.booked-for-label{font-size:13px;font-weight:600}.booked-for-picker{display:grid;gap:8px}.booked-for-mode{display:grid;grid-template-columns:1fr auto;gap:6px}.booked-for-mode-btn{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;line-height:1.35;text-align:center;cursor:pointer;color:var(--muted)}.booked-for-mode-btn:first-child{text-align:left}.booked-for-mode-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);font-weight:600}.booked-for-search{position:relative}.booked-for-input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:14px;box-sizing:border-box}.booked-for-suggest{position:absolute;z-index:10;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #16324d1f;max-height:220px;overflow:auto}.booked-for-suggest-item{display:grid;gap:2px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;text-align:left;cursor:pointer;font:inherit}.booked-for-suggest-item:hover,.booked-for-suggest-item.active{background:var(--accent-soft)}.booked-for-suggest-name{font-size:13px;font-weight:600}.booked-for-suggest-email{font-size:11px;color:var(--muted)}.booked-for-empty,.booked-for-hint{margin:6px 0 0;font-size:12px}.proxy-booking-field{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#ffffffb3}.tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.tabs button{background:none;border:0;padding:8px 12px;color:var(--muted);border-radius:999px}.tabs button.on{color:var(--ink);background:var(--accent-soft)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left}.err{color:var(--danger);font-size:13px}.ok{color:var(--accent);font-size:13px}.warn{color:#8a5a18;font-size:13px}.diag-card{width:min(1120px,100%)!important}.diag-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.diag-row{font-size:14px;line-height:1.65;padding-left:18px;position:relative;margin:0}.diag-row:before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%}.diag-row.ok:before{background:var(--accent)}.diag-row.warn:before{background:#d4a017}.diag-row.err:before{background:var(--danger)}.diag-row.info:before{background:#8aa4c4}.login-wrap-setup{place-items:start center;align-content:start;gap:20px;overflow:auto}.login-wrap-setup>.card{width:min(720px,100%)}.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:30;padding:12px 18px;border-radius:14px;box-shadow:var(--shadow);max-width:min(420px,calc(100% - 24px));text-align:center;font-size:14px;font-weight:600;pointer-events:none}.toast.ok{background:linear-gradient(180deg,#eaf8f1,#d5efe3);color:#1f6b4a}.toast.err{background:linear-gradient(180deg,#fff1f0,#ffd9d6);color:var(--danger)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.oauth-links{margin:12px 0 8px}.copy-field{display:grid;gap:6px}.copy-label{font-size:13px;color:var(--muted)}.oauth-links>.btn,.oauth-links>a.btn,.guide-card>.btn,.guide-card>a.btn{width:fit-content;display:inline-flex;align-items:center;margin-top:12px}.ext-links{display:grid;gap:6px;margin:8px 0 0;padding:0;list-style:none}.ext-links a{font-size:14px;word-break:break-all}.copy-row{display:flex;gap:8px;align-items:stretch}.copy-row .copy-value{flex:1;display:block;padding:10px 12px;background:#f4f8fd;border-radius:10px;font-size:12px;word-break:break-all;line-height:1.5}.copy-row .btn{flex-shrink:0;width:auto;min-width:108px;padding:0 14px}.guide-card{width:min(760px,100%);margin-bottom:24px}.guide-card h2{font-size:17px;margin:28px 0 10px;letter-spacing:-.02em}.guide-card ol,.guide-card ul{padding-left:1.25em;line-height:1.75;margin:0}.guide-card li{margin:8px 0}.example-block{margin:16px 0 8px;padding:16px 16px 14px;background:#f4f8fd;border:1px solid var(--line);border-radius:16px}.example-block h3{font-size:14px;font-weight:700;margin:0 0 8px}.example-block .hint{margin:0 0 10px}.example-block .stack{margin-top:0}.scope-list{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.resource-switch{display:none;width:100%}@media(max-width:720px){.top{margin:10px 10px 0;padding:10px 12px;gap:10px;align-items:flex-start}.nav{gap:6px;font-size:14px}.grid-page{padding:12px 12px 96px}.login-wrap{padding:24px 12px}.login-wrap:before{left:-40px;top:-20px}.login-wrap:after{right:-60px}.card{padding:24px 18px 20px}.card h1{font-size:22px}.row2{grid-template-columns:1fr}.resource-switch{display:block;margin-bottom:10px}.cal{max-height:none}.cell{min-height:28px;font-size:12px}.head{font-size:14px}.event{font-size:12px;padding:6px}.drawer{left:0;right:0;top:auto;width:100%;max-height:92dvh;border-left:0;border-top:1px solid var(--line);border-radius:20px 20px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.drawer--edit{border-top:3px solid rgba(196,84,84,.82);border-left:0;box-shadow:0 -16px 40px #c454541a,inset 0 3px #c454542e}.drawer--view{border-top:3px solid var(--drawer-accent, var(--accent));border-left:0;box-shadow:0 -16px 40px color-mix(in srgb,var(--drawer-accent) 14%,transparent),inset 0 3px color-mix(in srgb,var(--drawer-accent) 28%,white)}.table{display:block;overflow-x:auto}label{font-size:15px}input,select,textarea{font-size:16px}}@media(min-width:721px){.resource-switch{display:none!important}}.tz-select{position:relative;display:grid;gap:.5rem}.tz-select.is-open{z-index:60}.admin-user-field:has(.tz-select.is-open),label:has(.tz-select.is-open){position:relative;z-index:60}.tz-select-mode{display:flex;flex-wrap:wrap;gap:.75rem 1rem}.tz-select-mode-option{display:inline-flex;align-items:center;gap:.35rem;font-size:.92rem}.tz-select-suggestions{position:absolute;z-index:61;left:0;right:0;top:calc(100% + .2rem);max-height:14rem;overflow:auto;margin:0;padding:.25rem 0;list-style:none;border:1px solid var(--line);border-radius:8px;background:var(--card);box-shadow:var(--shadow-soft)}.tz-select-suggestions li button{display:block;width:100%;padding:.45rem .75rem;border:0;background:transparent;text-align:left;font:inherit;cursor:pointer}.tz-select-suggestions li button:hover,.tz-select-suggestions li button:focus-visible{background:var(--accent-soft)}.tz-select-empty{padding:.45rem .75rem;color:var(--muted);font-size:.92rem}.admin-dst-table-wrap{overflow:auto}.admin-dst-table{width:100%;border-collapse:collapse;font-size:.92rem}.admin-dst-table th,.admin-dst-table td{padding:.45rem .6rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-dst-table .user-badge{margin-left:.4rem}.warn-inline{color:var(--warn, #b45309)}.admin-audit-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-audit-filter-wide{grid-column:1 / -1}.admin-audit-actions{flex-wrap:wrap}.admin-audit-tz-hint{margin:0 0 8px}.admin-audit-tz-picker select{width:100%}.admin-audit-select-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.admin-audit-export-section{border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:14px;padding:16px;background:color-mix(in srgb,var(--accent) 4%,rgba(255,255,255,.55))}.admin-audit-export-scroll{max-height:240px}.admin-audit-export-actions{margin-top:4px}.admin-audit-search-prompt{margin:0;padding:14px 16px;border-radius:12px;border:1px dashed var(--line);background:#ffffff73}.admin-audit-results-scroll{max-height:min(420px,52vh)}.admin-audit-results-table{font-size:.86rem}.admin-audit-results-table th,.admin-audit-results-table td{padding:.4rem .55rem;line-height:1.35}.admin-audit-col-when{white-space:nowrap;width:9.5em}.admin-audit-col-actor{max-width:14em;overflow-wrap:anywhere;word-break:normal}.admin-audit-col-target{max-width:12em;overflow-wrap:anywhere}.admin-audit-text-btn{appearance:none;background:none;border:0;padding:0;margin:0;color:inherit;font:inherit;text-align:left;text-decoration:underline;text-underline-offset:2px;cursor:pointer;overflow-wrap:anywhere}.admin-audit-inline-link{color:inherit;font-weight:600;text-underline-offset:2px}.admin-audit-inline-links,.admin-audit-target-links{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.35rem}.admin-audit-inline-search{appearance:none;border:1px solid rgba(0,0,0,.15);background:#ffffffb3;border-radius:4px;padding:0 .35rem;font-size:.75em;line-height:1.5;cursor:pointer;color:var(--muted, #5b738c)}.admin-audit-detail-links{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 .85rem}.admin-audit-results-mobile{display:none;list-style:none;margin:0;padding:0;gap:.65rem}.admin-audit-result-card{border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:.75rem .85rem;background:#ffffffb8}.admin-audit-result-card.selected{outline:2px solid rgba(61,90,76,.35)}.admin-audit-result-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.admin-audit-result-card-check{display:flex;align-items:center;gap:.45rem;min-width:0}.admin-audit-result-card-when{font-size:.82rem;color:var(--muted, #5b738c);white-space:nowrap}.admin-audit-result-card-summary{margin:0 0 .25rem;font-weight:600;line-height:1.35;overflow-wrap:anywhere}.admin-audit-result-card-meta,.admin-audit-result-card-actor{margin:0;font-size:.84rem;line-height:1.4;color:var(--muted, #5b738c);overflow-wrap:anywhere}@media(max-width:720px){.admin-audit-results-desktop{display:none}.admin-audit-results-mobile{display:flex;flex-direction:column}.admin-audit-col-actor{word-break:normal}}.admin-audit-col-summary{word-break:break-word}.admin-audit-summary-main{font-weight:600}.admin-audit-summary-tech{color:var(--muted);font-size:.92em;font-weight:400}.admin-audit-col-actions{white-space:nowrap;width:1%}.admin-audit-col-actions .btn+.btn{margin-left:.35rem}.admin-audit-detail-modal{max-width:42rem;width:min(92vw,42rem)}.admin-audit-detail-meta{margin-bottom:.75rem}.admin-audit-detail-tech-label{margin:12px 0 4px}.admin-audit-detail-tech{font-size:.82rem;color:#4a5f73}.admin-audit-detail-body{margin:0 0 1rem;padding:.75rem 1rem;background:var(--paper, #f8f6f1);border:1px solid rgba(0,0,0,.08);border-radius:6px;font-family:inherit;font-size:.88rem;line-height:1.45;white-space:pre-wrap;word-break:break-word;max-height:min(60vh,28rem);overflow:auto}.admin-audit-col-check{width:2.25rem;text-align:center}.admin-audit-row-selected td{background:color-mix(in srgb,var(--accent) 8%,transparent)}.admin-audit-export-table td:last-child{width:6rem;text-align:right}.admin-audit-table-wrap,.admin-dst-table-wrap{overflow:auto}.admin-audit-table{width:100%;border-collapse:collapse;font-size:.92rem}.admin-audit-table th,.admin-audit-table td{padding:.55rem .65rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-audit-detail{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;color:var(--muted);max-width:28rem;word-break:break-word}.admin-audit-pager{display:flex;align-items:center;gap:12px;margin-top:12px}.admin-audit-report-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.admin-audit-report-item{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#ffffff8c}.admin-audit-report-notes{margin:8px 0 0;white-space:pre-wrap}.admin-audit-report-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-audit-save-modal{width:min(520px,92vw)}.audit-print-page{padding:20px;max-width:1000px;margin:0 auto;color:#16324d;background:#fff;font-size:13px;line-height:1.35;min-height:100vh}body.audit-print-route,body.audit-print-route #root{background:#fff!important;background-image:none!important}.audit-print-toolbar{display:flex;gap:8px;margin-bottom:16px}.audit-print-head h1{margin:0 0 14px;font-size:1.35rem;line-height:1.3}.audit-print-kicker{margin:0 0 2px;color:#5b738c;font-size:.85rem}.audit-print-meta-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.audit-print-meta-box{min-width:140px;padding:8px 10px;border:1px solid #d3e3f4;border-radius:8px;background:#fafcff}.audit-print-meta-label{font-size:.72rem;color:#5b738c;margin-bottom:2px}.audit-print-meta-value{font-size:.92rem;font-weight:600}.audit-print-section{margin-bottom:14px}.audit-print-section-title{margin:0 0 6px;font-size:.78rem;font-weight:700;color:#5b738c;letter-spacing:.02em}.audit-print-notes{margin:0;padding:8px 10px;border-radius:8px;background:#f4f8fd;border:1px solid #d3e3f4;white-space:pre-wrap;font-size:.9rem}.audit-print-notes-empty{color:#5b738c;font-style:normal}.audit-print-filter-list{margin:0;padding:8px 10px;border:1px solid #d3e3f4;border-radius:8px;background:#fafcff;display:grid;gap:4px 12px}.audit-print-filter-item{display:grid;grid-template-columns:9.5em 1fr;gap:8px;align-items:baseline}.audit-print-filter-item dt{margin:0;font-size:.75rem;color:#5b738c;font-weight:600}.audit-print-filter-item dd{margin:0;font-size:.84rem;word-break:break-word}.audit-print-table{width:100%;border-collapse:collapse;font-size:.8rem;table-layout:fixed}.audit-print-table th,.audit-print-table td{border:1px solid #c8d9eb;padding:5px 7px;vertical-align:top;line-height:1.35}.audit-print-table thead th{background:#eef5ff;font-size:.74rem;font-weight:700;color:#3d5873}.audit-print-table tbody tr:nth-child(2n){background:#fafcff}.audit-print-col-no{width:2.2em;text-align:center}.audit-print-col-when{width:9.5em;white-space:nowrap}.audit-print-col-actor{width:11em;word-break:break-all}.audit-print-col-target{width:9em;word-break:break-word}.audit-print-col-summary{word-break:break-word}.audit-print-row-summary{font-weight:600}.audit-print-row-tech{color:#5b738c;font-size:.92em;font-weight:400}.audit-print-row-detail{margin-top:3px;font-size:7pt;line-height:1.25;color:#333;white-space:pre-wrap;word-break:break-word;font-weight:400}.audit-print-row-tech-detail{margin-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:6pt;line-height:1.2;color:#5b738c;white-space:pre-wrap;word-break:break-word;font-weight:400}.audit-print-footnote{margin:8px 0 0;color:#5b738c;font-size:.72rem}.audit-print-tech-note{margin:10px 0 0;color:#5b738c;font-size:.72rem}.audit-print-foot{margin-top:16px;color:#5b738c;font-size:.75rem}@media print{.no-print{display:none!important}html,body,#root{background:#fff!important;background-image:none!important;min-height:0!important}.audit-print-page{padding:0;font-size:9pt;background:#fff!important;min-height:100vh}.audit-print-head h1{font-size:14pt}.audit-print-table{page-break-inside:auto;font-size:7.5pt}.audit-print-table th,.audit-print-table td{padding:3px 5px}.audit-print-table tr{page-break-inside:avoid;page-break-after:auto}.audit-print-table thead{display:table-header-group}.audit-print-filter-item{grid-template-columns:8em 1fr}}@media(max-width:720px){.admin-audit-filters,.audit-print-filter-item{grid-template-columns:1fr}.admin-audit-report-item{flex-direction:column}}.reconcile{margin-top:28px;padding-top:8px;display:flex;flex-direction:column;gap:12px}.reconcile-toolbar{display:flex;gap:12px}.reconcile-cals,.reconcile-issues{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.reconcile-issues{max-height:480px;overflow:auto}.reconcile-cal,.reconcile-issue-main{display:flex;align-items:flex-start;gap:10px}.reconcile-kind{flex:0 0 auto;font-size:12px;color:var(--accent-deep);background:var(--accent-soft);border-radius:999px;padding:2px 8px}.reconcile-range{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reconcile-range label,.reconcile-progress-wrap{display:flex;flex-direction:column;gap:6px}.reconcile-progress{height:8px;border-radius:999px;background:#2f7de826;overflow:hidden}.reconcile-progress>span{display:block;height:100%;background:var(--accent);border-radius:inherit}.reconcile-progress>span.indeterminate{width:40%;animation:reconcile-slide 1.1s ease-in-out infinite}@keyframes reconcile-slide{0%{transform:translate(-120%)}to{transform:translate(280%)}}.reconcile-issue{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#ffffffb8;display:flex;flex-direction:column;gap:8px}.reconcile-issue-text{display:flex;flex-direction:column;gap:2px;min-width:0}.reconcile-badge{flex:0 0 auto;font-size:12px;font-weight:700;border-radius:999px;padding:2px 8px;background:var(--accent-soft);color:var(--accent-deep)}.reconcile-badge.delete{background:#fde8e8;color:#9b2c2c}.reconcile-links{display:flex;flex-wrap:wrap;gap:12px;padding-left:28px}@media(max-width:720px){.reconcile-range{grid-template-columns:1fr}}
