/* Office workspace primitives, deliberately namespaced; home CSS stays canonical. */
.office-dialog{--office-ink:#172432;--office-muted:#617080;--office-line:#dde5ec;--office-cloud:#f3f6f8;--office-accent:#5667a8;box-sizing:border-box;width:min(620px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid var(--office-line);border-radius:12px;background:white;color:var(--office-ink);overflow:auto;box-shadow:0 16px 64px #17243226;font:inherit}.office-dialog::backdrop{background:#17243266}.office-dialog-wide{width:min(850px,calc(100vw - 32px))}.office-dialog-heading{display:flex;flex-wrap:wrap;align-items:center;gap:12px;row-gap:12px;margin-bottom:16px}.office-dialog-title{flex:1;min-width:140px}.office-dialog-title h2{margin:0;font-size:21px;font-weight:650;line-height:1.3;letter-spacing:-.02em}.office-dialog-title p{margin:8px 0 0;color:var(--office-muted);font-size:14px}.office-dialog-actions,.office-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;row-gap:12px}.office-icon-button,.office-button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;border:1px solid var(--office-line,#dde5ec);border-radius:7px;padding:10px 14px;background:white;color:var(--office-ink,#172432);font:inherit;font-size:14px;cursor:pointer}.office-icon-button{padding:10px;border-color:transparent}.office-button-primary{background:var(--office-accent,#5667a8);border-color:var(--office-accent,#5667a8);color:white}.office-button-danger{color:#a63838;background:#fff8f8;border-color:#e8cccc}.office-button:disabled,.office-icon-button:disabled{opacity:.55;cursor:default}.office-dialog button:focus-visible,.office-checkbox input:focus-visible,.office-menu summary:focus-visible{outline:2px solid var(--office-accent,#5667a8);outline-offset:3px}.office-settings{display:grid;grid-template-columns:172px minmax(0,1fr);gap:24px}.office-settings-nav{display:flex;flex-direction:column;gap:8px}.office-settings-nav button{min-height:44px;padding:10px 12px;font:inherit;font-size:14px;text-align:left;border:0;border-radius:7px;background:transparent;color:var(--office-muted,#617080);cursor:pointer}.office-settings-nav button.is-active{background:var(--office-cloud,#f3f6f8);color:var(--office-ink,#172432)}.office-settings-nav button.is-danger{color:#a63838;margin-top:12px}.office-settings-content{min-width:0}.office-danger-zone{display:grid;align-content:start;gap:16px;padding:0;border:0;border-radius:0}.office-danger-zone h3{margin-top:0}.office-checkbox{display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:10px 0;cursor:pointer}.office-checkbox>input{width:20px;height:20px;min-height:20px;flex-shrink:0;margin:2px 0 0;accent-color:var(--office-accent,#5667a8)}.office-checkbox>span{display:grid;gap:5px}.office-checkbox b{font-size:14px;font-weight:550}.office-checkbox small{font-size:13px;line-height:1.5;color:var(--office-muted,#617080)}.office-confirm{position:relative;display:inline-flex;max-width:100%}.office-confirm-popover{position:absolute;bottom:calc(100% + 8px);right:0;z-index:5;box-sizing:border-box;width:260px;max-width:calc(100vw - 48px);padding:14px;border:1px solid var(--office-line,#dde5ec);border-radius:9px;background:white;box-shadow:0 8px 28px #17243226;color:var(--office-ink,#172432);font-size:14px;line-height:1.5;display:grid;gap:12px}.office-comments{border-top:1px solid var(--office-line,#dde5ec);padding-top:20px}.office-comments h3{margin:0 0 16px;font-size:16px}.office-comments-list{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:16px}.office-comments-list>li{min-width:0}.office-comments-list header{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.office-comments-list strong{font-size:14px;overflow-wrap:anywhere}.office-comments-list time{font-size:12px;color:var(--office-muted,#617080)}.office-comments-list header>.office-actions{margin-left:auto}.office-comments-list p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.6;margin:8px 0}.office-menu{position:relative}.office-menu summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.office-menu-items{position:absolute;right:0;top:100%;z-index:4;display:grid;gap:8px;min-width:180px;padding:12px;border:1px solid #dde5ec;border-radius:8px;background:white;box-shadow:0 8px 28px #17243226}.office-toast{margin:12px 0;font-size:14px;color:#617080}.office-toast.is-error{color:#a63838}
@media(max-width:640px){.office-dialog{padding:16px;width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.office-settings{grid-template-columns:minmax(0,1fr);gap:20px}.office-settings-nav{flex-direction:row;flex-wrap:wrap;gap:8px;border-bottom:1px solid #dde5ec;padding-bottom:12px}.office-settings-nav button.is-danger{margin-top:0}.office-dialog input:not([type=checkbox]):not([type=radio]),.office-dialog textarea,.office-dialog select{font-size:16px}.office-dialog-actions{max-width:100%}}
.office-dialog .dialog-close{position:static;top:auto;right:auto;font-size:24px;line-height:1;flex:none}.office-dialog .office-dialog-heading{flex:none}.office-dialog .office-settings label:not(.office-checkbox):not(.office-participant-choice){display:grid;gap:7px}.office-dialog .office-settings-content section[hidden]{display:none}
.office-dialog.office-sharing-dialog{width:min(560px,calc(100vw - 24px))}
.office-dialog .office-checkbox{display:flex;flex-direction:row;align-items:flex-start;gap:12px;row-gap:12px}

/* Stable settings shell shared by Vue and native consumers. */
.office-dialog[open]:has(.office-settings){height:min(720px,calc(100dvh - 32px));overflow:hidden;display:flex;flex-direction:column;gap:0}.office-dialog[open]:has(.office-settings)>.office-dialog-heading{flex:none}.office-dialog[open]:has(.office-settings)>.form-stack{flex:1;min-height:0;display:flex;flex-direction:column}.office-dialog .office-settings{flex:1;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}.office-settings-nav,.office-settings-content{min-height:0;overflow-y:auto;overscroll-behavior:contain}.office-settings-content{padding:2px 4px 100px 2px}.office-settings-content>section{min-width:0}.office-settings .office-sharing-body{padding:0;min-width:0}.office-settings .office-sharing-actions{padding:16px 0 0;margin-top:16px;justify-content:flex-start}.office-danger-zone>h3{margin:0;font-size:16px}.office-danger-zone .office-confirm{justify-self:start}.office-sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}.office-dialog-compact-heading .office-dialog-heading{margin-bottom:8px;flex-wrap:nowrap}.office-dialog-compact-heading .office-dialog-actions{flex:1;justify-content:flex-end;flex-wrap:nowrap}.office-dialog-drawer{width:min(920px,calc(100vw - 24px));max-width:calc(100vw - 24px);height:100dvh;max-height:100dvh;margin:0 0 0 auto;border-radius:12px 0 0 12px;overscroll-behavior:contain;scrollbar-gutter:stable}.office-dialog-drawer .office-dialog-heading{position:sticky;top:-24px;z-index:3;background:white;padding-block:8px}
@media(max-width:640px){.office-dialog[open]:has(.office-settings){height:calc(100dvh - 24px)}.office-dialog .office-settings{grid-template-rows:auto minmax(0,1fr);gap:16px}.office-settings-nav{overflow-y:visible;flex:none}.office-dialog-drawer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0}.office-dialog-drawer .office-dialog-heading{top:-16px}.office-settings-content{padding-bottom:100px}}

.office-settings .office-confirm-popover{bottom:auto;top:calc(100% + 8px)}.office-settings-nav button:disabled{opacity:.55;cursor:default}

.office-settings .office-sharing-form{width:100%;min-width:0;margin:0}.office-settings .office-participant-choice{margin:0}.office-settings .office-participant-fingerprint .office-participant-choice{padding-top:4px}

/* Canonical application navigation, Vue and native. */

/* Office navigation contract: mirrored in both independent apps and Office landing. */
.office-header{position:relative;z-index:80;display:flex;align-items:center;gap:14px;min-height:60px;flex:none;padding:8px clamp(12px,3vw,40px);border-bottom:1px solid #dde5ec;background:#f3f6f8;color:#172432;box-sizing:border-box;font-family:inherit}
.office-home{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:inherit;text-decoration:none;font-size:18px;font-weight:650;white-space:nowrap}
.office-symbol{display:grid;grid-template-columns:repeat(2,6px);gap:3px;color:#5f6fb2;flex:none}.office-symbol i{display:block;position:relative;width:6px;height:6px;border:1.5px solid currentColor;border-radius:50%}.office-symbol i:nth-child(2){border:0;border-radius:0}.office-symbol i:nth-child(2)::before,.office-symbol i:nth-child(2)::after{content:"";position:absolute;top:50%;left:50%;width:7px;height:1.5px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%)}.office-symbol i:nth-child(2)::after{transform:translate(-50%,-50%) rotate(90deg)}
.office-divider{color:#a0adb7;font-size:20px;user-select:none}
.office-disclosure{position:relative;min-width:0}.office-disclosure summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 10px;border-radius:7px;font-size:14px;font-weight:550;white-space:nowrap}.office-disclosure summary::-webkit-details-marker{display:none}.office-disclosure[open]>summary{background:#e5eaf0}.office-chevron{display:block;width:16px;height:16px;flex:0 0 16px;align-self:center;color:#617080}
.office-popover{position:absolute;top:calc(100% + 6px);left:0;display:grid;gap:3px;width:230px;max-width:calc(100vw - 24px);padding:8px;background:#fff;border:1px solid #dde5ec;border-radius:10px;box-shadow:0 10px 30px #17243220;color:#172432;box-sizing:border-box;z-index:90}
.office-popover a,.office-popover button{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border:0;border-radius:6px;background:transparent;text-align:left;text-decoration:none;color:inherit;font:inherit;font-size:14px;cursor:pointer;box-sizing:border-box;width:100%}
.office-popover a[aria-current]{background:#eef1fa;font-weight:650}.office-popover a[aria-current]::after{content:'✓';margin-left:auto;color:#5f6fb2}.office-popover small{display:block;font-size:12px;font-weight:400;color:#617080;margin-top:4px}.office-menu-label{margin:6px 12px 5px;font-size:11px;color:#617080;letter-spacing:.07em;text-transform:uppercase}
.office-identity{margin-left:auto;flex:none}.office-identity .office-popover{left:auto;right:0}.office-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e1e6f2;color:#425487;font-size:13px;font-weight:650}.office-person-name{max-width:140px;overflow:hidden;text-overflow:ellipsis}.office-account-name{padding:9px 12px 13px;border-bottom:1px solid #e5eaf0;overflow-wrap:anywhere;font-size:14px}.office-account-name small{margin-top:5px}.office-login{margin-left:auto;min-height:44px;display:flex;align-items:center;color:inherit;font-size:14px}
.office-header :is(a,button,summary):focus-visible{outline:2px solid #5f6fb2;outline-offset:2px}.office-popover button:disabled{opacity:.6;cursor:wait}
@media(hover:hover){.office-disclosure summary:hover,.office-popover a:hover,.office-popover button:hover{background:#eef1fa}.office-home:hover{color:#425487}}
@media(max-width:540px){.office-header{gap:6px;padding-inline:12px}.office-home{font-size:16px;gap:6px}.office-person-name{display:none}.office-disclosure summary{padding-inline:7px;font-size:13px;gap:5px}.office-identity summary{padding-inline:5px}.office-divider{font-size:16px}.office-apps .office-popover{left:-85px}.office-account-name{display:block}}


/* Shared compact workbench chrome and editor primitives. */
.office-project-header{box-sizing:border-box;display:flex;align-items:center;gap:12px;row-gap:12px;min-height:68px;padding:12px 24px;flex:none;min-width:0;color:var(--ink,#172432)}
.office-project-header.has-surface{background:#fff;border-bottom:1px solid var(--line,#dde5ec)}
.office-project-leading{display:flex;align-items:center;gap:8px;row-gap:8px;min-width:0;flex:1}
.office-project-title{margin:0;min-width:0;max-width:min(42vw,600px);font-size:20px;line-height:1.3;font-weight:650;letter-spacing:-.025em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:inherit}
.office-project-presence{margin-inline-start:auto;flex:none;display:flex;align-items:center;gap:8px;min-width:28px}
.office-project-actions{display:flex;align-items:center;gap:12px;row-gap:12px;flex-wrap:wrap;min-width:0}
.office-project-actions>button,.office-project-leading>a{box-sizing:border-box;min-height:44px;min-width:44px;border-radius:7px}
.office-toolbar-button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:10px;border:0;border-radius:7px;background:transparent;color:var(--muted,#617080);font:inherit;font-size:14px;text-decoration:none;cursor:pointer;flex:none}
.office-toolbar-button:hover{background:var(--cloud,#f3f6f8);color:var(--ink,#172432)}
.office-toolbar-button:disabled{opacity:.45;cursor:default}.office-toolbar-button:focus-visible,.office-project-leading a:focus-visible{outline:2px solid var(--accent,#5667a8);outline-offset:2px}
.office-icon{display:inline-block;flex:none;vertical-align:middle}.office-project-search{min-width:0}.office-search-field{display:flex;align-items:center;gap:8px;min-width:0;width:260px;background:var(--cloud,#f3f6f8);border:1px solid var(--line,#dde5ec);border-radius:7px;padding-inline-start:12px;box-sizing:border-box}.office-search-field[hidden]{display:none}.office-search-field input{min-width:0;flex:1;width:100%;border:0!important;background:transparent!important;border-radius:0;padding:9px 0;min-height:42px;outline:0;font:inherit;font-size:14px;box-sizing:border-box;box-shadow:none!important}.office-search-field:focus-within{outline:2px solid var(--accent,#5667a8);outline-offset:2px}.office-search-field .office-toolbar-button{min-height:42px;min-width:42px}
.office-section{min-width:0;margin:0;padding:12px 0;border-bottom:1px solid var(--line,#dde5ec)}.office-section:last-child{border-bottom:0}.office-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;row-gap:12px;margin-bottom:12px}.office-section-heading{display:flex;align-items:center;gap:10px;margin:0;font-size:13px;font-weight:550;color:var(--muted,#617080);line-height:1.4}
.office-editor-description{display:grid;min-width:0;min-height:44px;position:relative}.office-editor-description>.office-description-mirror,.office-editor-description>textarea{grid-area:1/1;padding:8px 0;min-width:0;max-width:100%;width:100%;min-height:44px;box-sizing:border-box;font:inherit;font-size:15px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;border:0!important;border-radius:0;box-shadow:none!important;background:transparent!important}.office-description-mirror{visibility:hidden;pointer-events:none}.office-editor-description>textarea{resize:none;overflow:hidden;outline:0}.office-editor-description>textarea::placeholder{color:var(--muted,#617080)}.office-editor-description>textarea:focus{outline:0;border:0;box-shadow:none}.office-editor-description:focus-within{box-shadow:0 1px var(--accent,#5667a8)}
.office-color-picker{display:flex;align-items:center;gap:4px;row-gap:4px;flex-wrap:wrap}.office-color-picker>button{box-sizing:border-box;width:44px;min-width:44px;height:44px;min-height:44px;border:0!important;background:transparent!important;padding:10px;display:grid;place-items:center;cursor:pointer;border-radius:7px}.office-color-picker>button>span{width:24px;height:24px;border-radius:50%;border:2px solid #fff;box-sizing:border-box}.office-color-picker>button.is-active>span{outline:2px solid var(--accent,#5667a8);outline-offset:3px}.office-color-picker>button:focus-visible{outline:2px solid var(--accent,#5667a8)}.office-color-picker>button:disabled{opacity:.5;cursor:default}
.office-editor-tabs{display:flex;align-items:center;gap:12px;row-gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line,#dde5ec)}.office-editor-tabs>button{box-sizing:border-box;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted,#617080);font:inherit;font-size:13px;cursor:pointer}.office-editor-tabs>button[aria-selected=true]{border-bottom-color:var(--accent,#5667a8);color:var(--ink,#172432)}.office-editor-tabs>button:focus-visible{outline:2px solid var(--accent,#5667a8);outline-offset:2px}.office-tab-count{font-size:11px;color:var(--muted,#617080);font-variant-numeric:tabular-nums}.office-editor-tabs+[role=tabpanel]{padding-top:24px}.office-editor-tabs button:disabled{opacity:.5;cursor:default}
.office-files{display:grid;gap:12px;min-width:0}.office-file-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.office-file-card{position:relative;min-width:0;border:1px solid var(--line,#dde5ec);border-radius:8px;background:#fff;overflow:visible}.office-file-preview{display:flex;align-items:center;gap:12px;min-width:0;width:100%;min-height:74px;padding:12px 92px 12px 12px;border:0;border-radius:8px;background:transparent;text-align:left;color:var(--ink,#172432);font:inherit;cursor:pointer;box-sizing:border-box}.office-file-preview img,.office-file-icon{width:40px;height:40px;flex:none;object-fit:contain;display:grid;place-items:center;color:var(--accent,#5667a8);background:var(--cloud,#f3f6f8);border-radius:6px}.office-file-info{display:grid;gap:5px;min-width:0}.office-file-info strong{font-size:13px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.office-file-info small{font-size:11px;color:var(--muted,#617080)}.office-file-actions{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;gap:0;align-items:center}.office-file-actions .office-confirm>button{padding:10px;min-width:40px;min-height:44px;border:0;background:transparent;color:var(--muted,#617080)}.office-file-actions>.office-toolbar-button{min-width:40px}.office-upload-zone{display:grid;place-items:center;box-sizing:border-box;min-height:56px;padding:12px;border:1px dashed var(--line,#dde5ec);border-radius:8px;background:var(--cloud,#f3f6f8);color:var(--muted,#617080);font-size:13px;text-align:center;cursor:pointer;position:relative;gap:8px}.office-upload-zone:hover,.office-files.is-drag-over>.office-upload-zone{border-color:var(--accent,#5667a8);background:#eef1fa}.office-upload-zone:focus-within{outline:2px solid var(--accent,#5667a8);outline-offset:2px}.office-upload-zone.is-disabled{opacity:.6;cursor:default}
.office-participant-list{list-style:none;margin:0;padding:0;display:grid;gap:4px;min-width:0}.office-participant-owner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line,#dde5ec);margin-bottom:8px}.office-participant-row{min-width:0}.office-participant-choice{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;min-height:56px;padding:8px 0;box-sizing:border-box}.office-participant-choice>input{appearance:auto;width:20px;height:20px;min-height:20px;flex:none;margin:0;accent-color:var(--accent,#5667a8)}.office-participant-identity{display:grid;gap:3px;flex:1;min-width:0}.office-participant-name{font-size:14px;overflow-wrap:anywhere}.office-participant-identity small,.office-participant-role,.office-participant-empty{font-size:12px;color:var(--muted,#617080)}.office-participant-role{margin-inline-start:auto;flex:none}.office-participant-empty{margin:12px 0}
.office-settings-nav button{display:flex;align-items:center;justify-content:flex-start;gap:10px;text-align:left}.office-settings-nav button>svg{flex:none}.office-dialog{overflow-x:hidden}.office-dialog>*{min-width:0;max-width:100%;box-sizing:border-box}.office-dialog .office-actions{gap:12px;row-gap:12px}.office-toast{position:relative;display:flex;align-items:center;gap:12px;box-sizing:border-box;padding:12px 16px;border:1px solid var(--line,#dde5ec);border-radius:8px;background:#fff;color:var(--ink,#172432);font-size:14px;min-width:0}.office-toast>p{flex:1;min-width:0;margin:0;overflow-wrap:anywhere}.office-toast.is-error{color:#a63838;border-color:#e8cccc}.office-toast>.office-toolbar-button{margin:-8px;flex:none}
@media(max-width:900px){.office-project-title{max-width:32vw}.office-search-field{width:210px}}
@media(max-width:640px){.office-project-header{padding:8px 12px;min-height:60px;gap:8px}.office-project-leading{gap:4px;flex-wrap:wrap}.office-project-title{font-size:18px;max-width:calc(100vw - 140px);flex:1}.office-project-presence{align-self:flex-start;padding-top:8px}.office-project-actions{gap:12px;row-gap:12px}.office-project-header.is-searching .office-project-leading{flex-wrap:nowrap}.office-project-header.is-searching .office-project-leading>*:not(.office-project-search):not(.office-project-refresh){display:none}.office-project-header.is-searching .office-project-presence{display:none}.office-project-header.is-searching .office-project-search{width:100%;flex:1}.office-project-header.is-searching .office-search-field{width:100%}.office-search-field input{font-size:16px}.office-editor-description>textarea,.office-editor-description>.office-description-mirror{font-size:16px}.office-editor-tabs{gap:12px;row-gap:8px}.office-editor-tabs>button{font-size:12px;gap:5px}.office-section{padding:12px 0}.office-file-grid{grid-template-columns:minmax(0,1fr)}.office-file-preview{padding-right:100px}.office-file-actions .office-toolbar-button,.office-file-actions .office-confirm>button{min-width:44px}.office-dialog-drawer{overflow-x:hidden}}
@media(prefers-reduced-motion:reduce){.office-toolbar-button,.office-editor-tabs>button,.office-project-header{transition:none!important}}

.office-toast:empty{display:none}.office-checkbox{margin:0}

.office-file-actions{gap:12px;row-gap:12px;right:8px}.office-file-preview{padding-right:112px}.office-color-custom{position:relative;display:grid;place-items:center;width:44px;min-height:44px;margin:0!important;border:0;background:transparent;color:var(--muted,#617080);font-size:22px;cursor:pointer}.office-color-custom>input{position:absolute;inset:0;width:44px;height:44px;opacity:0;cursor:pointer}.office-color-custom:focus-within{outline:2px solid var(--accent,#5667a8);border-radius:7px}.office-editor-tabs+.office-comments{border-top:0}

.office-file-info small{overflow-wrap:anywhere}.office-file-grid,.office-file-card{max-width:100%}
.office-property-select{display:inline-flex;position:relative;max-width:100%;min-width:150px;min-height:44px;vertical-align:middle;border-radius:6px;color:var(--ink,#172432)}.office-property-value{display:flex;align-items:center;gap:8px;min-height:44px;min-width:0;width:100%;padding:8px 10px;box-sizing:border-box;font-size:14px;line-height:1.4;white-space:nowrap}.office-property-value>span:not(.office-property-dot){overflow:hidden;text-overflow:ellipsis;min-width:0}.office-property-value>svg:last-child{margin-inline-start:auto;color:var(--muted,#617080)}.office-property-dot{width:8px;height:8px;border-radius:50%;flex:none}.office-property-select>select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font:inherit;font-size:14px}.office-property-select:hover{background:var(--cloud,#f3f6f8)}.office-property-select:focus-within{outline:2px solid var(--accent,#5667a8);outline-offset:2px}.office-property-select.is-disabled{opacity:.55}.office-property-select.is-disabled>select{cursor:default}@media(max-width:640px){.office-property-select>select,.office-property-value{font-size:16px}.office-property-select::before{content:'';position:absolute;inset:3px 0;border:1px solid var(--line,#dde5ec);border-radius:6px;background:var(--cloud,#f3f6f8);pointer-events:none}.office-property-value{position:relative;z-index:1;pointer-events:none}}

/* Contextual actions share the same rows; top-layer popovers escape scrolling panes. */
.office-menu>summary{gap:8px;list-style:none;user-select:none}.office-menu>summary::-webkit-details-marker{display:none}
.office-menu-items{box-sizing:border-box;gap:2px;padding:6px;min-width:220px;max-width:calc(100vw - 16px);max-height:min(420px,calc(100dvh - 16px));overflow-y:auto;color:var(--ink,#172432);font:inherit}
.office-menu-items[popover]{position:fixed;inset:auto;margin:0}.office-menu-items[popover]:not(:popover-open){display:none}
.office-menu-items>button,.office-menu-items>a,.office-menu-items>.office-confirm>button{box-sizing:border-box;display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;width:100%;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:14px;line-height:1.4;text-align:left;text-decoration:none;overflow-wrap:anywhere;cursor:pointer}
.office-menu-items>.office-confirm{display:block;min-width:0}.office-menu-items>.office-confirm>button{color:#a93c35}
.office-menu-items>button:hover,.office-menu-items>a:hover,.office-menu-items>.office-confirm>button:hover{background:var(--cloud,#f3f6f8)}.office-menu-items>[aria-current]{background:#eef1fa;color:var(--accent,#5667a8)}
.office-menu-items>button:focus-visible,.office-menu-items>a:focus-visible{outline:2px solid var(--accent,#5667a8);outline-offset:-2px}
.office-project-back{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px;border:0;border-radius:7px;background:transparent;color:var(--muted,#617080);text-decoration:none;flex:none}.office-project-back:hover{background:var(--cloud,#f3f6f8)}
.office-property-select{box-sizing:border-box;min-width:0;width:min(260px,100%)}.office-property-select::before{content:'';position:absolute;inset:3px 0;border:1px solid var(--line,#dde5ec);border-radius:6px;background:var(--cloud,#f3f6f8);pointer-events:none}.office-property-value{position:relative;z-index:1;pointer-events:none}.office-property-select>select{z-index:2}

.office-project-refresh{margin-inline-start:auto;flex:none}
