/* Proposal 09: Obsidian & Ice. Semantic colors come from hostsync-theme.css; canonical branding remains shared. */
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) {
    --hs-color-slate-800:var(--hostsync-surface);
    --hs-color-slate-850:var(--hostsync-surface);
    --hs-color-surface-deep:var(--hostsync-surface); --hs-color-surface-panel:var(--hostsync-surface);
    --hs-color-border-cool-strong:var(--hostsync-border);
    background:var(--hostsync-background)!important;
}
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access)>:is(.hivesync-shell__header,.hivesync-shell__main,.hivesync-shell__footer) { background:var(--hostsync-background)!important; }
html .ho-root.ho-live { --ho-bg:var(--hostsync-background); --ho-panel:var(--hostsync-surface); --ho-line:var(--hostsync-border); --ho-muted:var(--hostsync-secondary); --hs-color-surface-deep:var(--hostsync-surface); --hs-color-surface-panel:var(--hostsync-surface); --hs-color-surface-panel-deep:var(--hostsync-surface); background:transparent!important; }
/* Active panel owners choose semantic paint; supporting cards keep the default surface. */
html .ho-root.ho-live :is(.ho-card,.ho-access-panel,.ho-assignment-editor,.hi-card,.hi-assignment,.ho-revoke-dialog):not(.ho-amber):not(.ho-green):not(.ho-red):not(.ho-save-outcome) { background:var(--ho-card-surface,var(--hostsync-surface))!important; border-color:var(--ho-card-border,var(--hostsync-border))!important; }
html .ho-root.ho-live :is(input:not([type=radio]):not([type=checkbox]),select,textarea) { background:var(--hostsync-raised); border-color:var(--ho-control-border,var(--hostsync-border-control)); }
html .ho-root.ho-live .ho-button:not(.ho-secondary):not(.ho-destructive):not(:disabled) { background:var(--hostsync-action)!important; border-color:var(--hostsync-action)!important; color:var(--hostsync-on-action)!important; }
html .ho-root.ho-live .ho-button:not(.ho-secondary):not(.ho-destructive):not(:disabled):hover { background:var(--hostsync-action-hover)!important; }
html .ho-root.ho-live .ho-button:not(.ho-secondary):not(.ho-destructive):not(:disabled):active { background:var(--hostsync-action-pressed)!important; }
html .ho-root.ho-live :is(a,button,input,select,textarea):focus-visible { outline:2px solid var(--hostsync-focus);outline-offset:2px;box-shadow:0 0 0 2px var(--hostsync-focus-edge); }
html .hs-overview .hs-freshness .ho-access-link { background:transparent; border:0; color:var(--hostsync-primary); min-height:44px; min-width:44px; padding:.5rem; cursor:pointer; }
html .hs-staff .ho-receipt-actions { display:flex!important; flex-wrap:wrap; gap:12px; margin-top:1.25rem; }


/* Finalized boards share a compact operational shell at desktop size. */
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) > .hivesync-shell__header { min-height:64px!important; margin:0!important; padding:10px 28px!important; border:0!important; border-bottom:1px solid var(--hostsync-border)!important; border-radius:0!important; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity { width:100%; justify-content:space-between; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__home .feature-brand-lockup { --feature-brand-logo-size:32px!important; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__home .feature-brand-name { font-size:22px!important; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) > .hivesync-shell__footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 24px; padding:12px 28px; border-top:1px solid var(--hostsync-border); }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .bizmonger-legal-footer { padding:0; border:0; background:transparent; width:auto; flex:0 1 auto; }
html .ho-root.ho-live .ho-button { min-height:44px; min-width:0; width:auto; font-size:14px; line-height:1.4; padding:9px 16px; border-radius:5px; }
html .ho-root.ho-live .ho-button .hs-glyph { width:18px; height:18px; flex:none; }
@media(max-width:600px) {
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) > .hivesync-shell__header { padding:12px 18px; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) > .hivesync-shell__footer { padding:12px 18px; }
}

/* Keep the keyboard skip link visually hidden through responsive transitions. */
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) > .hivesync-shell__skip-link:not(:focus) { clip-path:inset(100%); }

/* Keep the shared identity and menus on the compact header rail shown by the boards. */
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .focused-workflow-layout__header:not(.focused-workflow-layout__header--hostsync-operations) { display:flex; align-items:center; flex-wrap:nowrap; gap:16px; width:100%; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity { flex:1 1 auto; width:auto; flex-wrap:nowrap; gap:16px; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__apps { margin-left:auto; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__apps summary { font-size:14px; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__choices { left:auto; right:0; }
html .ho-root.ho-live.hs-overview .hs-attention-item .ho-button.ho-secondary { background:transparent!important; color:var(--hostsync-primary)!important; border-color:var(--hostsync-primary)!important; min-height:44px; padding:8px 16px; font-size:14px; }
html .ho-root.ho-live.hs-overview .hs-arrival .ho-button { min-height:44px; padding:8px 16px; font-size:14px; }
html .ho-root.ho-live.hs-stay-list .ho-button.hs-add-stay { background:var(--hostsync-action)!important; border-color:var(--hostsync-action)!important; color:var(--hostsync-on-action)!important; margin:0; min-width:0; }
html .ho-root.ho-live.hs-stay-details .ho-button.ho-secondary { background:transparent!important; border:1px solid var(--hostsync-border-control)!important; color:var(--hostsync-text)!important; }
@media(max-width:600px) {
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) > .hivesync-shell__header { padding:8px 16px!important; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .focused-workflow-layout__header { gap:10px; grid-template-columns:none; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity { gap:8px; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__apps-label { display:inline; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__apps summary { width:auto; max-width:100%; padding:0 8px; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu__avatar { width:32px; height:32px; font-size:14px; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__home .feature-brand-lockup { --feature-brand-logo-size:28px!important; gap:8px; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__home .feature-brand-name { font-size:20px!important; }
}

/* Finalized shared rail: feature identity, authorized property context, Apps and Account. */
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity__context { display:flex; flex:0 1 auto; align-items:center; min-width:0; border:0; padding:0; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu.workspace-account-menu--label { flex:none; border:0; padding:0; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu--label summary { min-height:44px; gap:8px; padding:0 12px; border:1px solid var(--hostsync-border-control); border-radius:4px; background:var(--hostsync-surface); }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu__ellipsis { font-size:22px; }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu__trigger-label { font-size:13px; }
@media(max-width:600px) {
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu__trigger-label { display:inline; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu--label summary { width:auto; min-width:44px; box-sizing:border-box; padding:0 8px; justify-content:center; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .workspace-account-menu--label summary>.oi { display:none; }
}

@media(min-width:601px) and (max-width:900px) {
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access)>.hivesync-shell__header { padding:10px 18px!important; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .focused-workflow-layout__header { gap:10px; }
 html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-issues,.hivesync-shell--hostsync-access) .product-shell-identity { gap:12px; }
}

/* Operations retain their initiating context; Account and Exit remain independent utilities. */
html .hivesync-shell--hostsync-issues .product-shell-identity__apps { margin-left:0!important; order:1; }
html .hivesync-shell--hostsync-issues .product-shell-identity__context { order:2; }
html .hivesync-shell--hostsync-issues .hs-operations-context { font-size:12px; color:var(--hostsync-text); white-space:nowrap; }
html .hivesync-shell--hostsync-issues .hs-operations-exit { font-size:13px; color:var(--hostsync-text); min-height:44px; display:flex; align-items:center; text-decoration:none; flex:none; }
@media(max-width:600px) {
 html .hivesync-shell--hostsync-issues .product-shell-identity__context { display:none!important; }
 html .hivesync-shell--hostsync-issues .product-shell-identity__apps { margin-left:auto!important; }
 html .hivesync-shell--hostsync-issues .product-shell-identity__apps summary { border:0; background:none; }
 html .hivesync-shell--hostsync-issues .product-shell-identity__apps summary>.oi { width:18px; height:14px; background:linear-gradient(to bottom,var(--hostsync-secondary) 0 2px,transparent 2px 6px,var(--hostsync-secondary) 6px 8px,transparent 8px 12px,var(--hostsync-secondary) 12px); font-size:0; }
 html .hivesync-shell--hostsync-issues .product-shell-identity__apps summary>.oi::before { content:none; }
}

/* Operations keeps its app switch and context beside the feature identity. */
html .hivesync-shell--hostsync-issues .product-shell-identity { justify-content:flex-start!important; }
.hp5-secondary-navigation { margin-top:16px; border-top:1px solid var(--hostsync-border); font-size:12px; }
.hp5-secondary-navigation summary,.hp5-secondary-navigation a { min-height:44px; display:flex; align-items:center; gap:8px; }
.hp5-secondary-navigation a { color:var(--hostsync-text); text-decoration:none; }

:is(.hp5-secondary-navigation,.hs-property-navigation,.hs-stay-list .hs-access-options)>summary::before { content:"▸"; margin-right:8px; }
:is(.hp5-secondary-navigation,.hs-property-navigation,.hs-stay-list .hs-access-options)[open]>summary::before { content:"▾"; }

@media(max-width:700px) {
}

/* HostSync's app glyph remains visible while the icon font loads. Black is alpha-mask geometry, not theme paint. */
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-access) .product-shell-identity__apps summary>.oi { display:inline-block; width:16px; height:16px; font-size:0; background:repeating-linear-gradient(to right,currentColor 0 4px,transparent 4px 6px); mask:repeating-linear-gradient(to bottom,#000 0 4px,transparent 4px 6px); }
html .hivesync-shell:is(.hivesync-shell--hostsync-property,.hivesync-shell--hostsync-guide,.hivesync-shell--hostsync-access) .product-shell-identity__apps summary>.oi::before { content:none; }

/* Bound the six-board workspaces instead of stretching regional geometry on wide monitors. */
@media(min-width:1001px) {
 html .ho-root.ho-live:is(.hs-overview,.hs-stay-list,.hs-staff,.ho-repair) > .page-frame { max-width:1280px!important; width:calc(100% - 64px)!important; margin-inline:auto; }
 html .ho-root.ho-live.hs-stay-details.hs-embedded .page-frame.ho-live-frame { width:100%; max-width:none; }
}

/* Primary manager and guide boards use the full desktop canvas; paired setup stays compact. */
@media(min-width:1001px) {
 html .ho-root.ho-live.hs-manager > .page-frame { max-width:1500px!important; width:calc(100% - 40px)!important; margin-inline:auto; }
 html .ho-root.ho-live.ho-guide-editor:not(.ho-essentials-focused) > .page-frame { max-width:1500px!important; width:calc(100% - 72px)!important; margin-inline:auto; }
 html .ho-root.ho-live.hs-property-setup > .page-frame { max-width:1040px!important; width:calc(100% - 64px)!important; margin-inline:auto; }
}

@media(min-width:601px) { html .hivesync-shell.hivesync-shell--hostsync-issues .product-shell-identity__apps summary { border:1px solid var(--hostsync-border-control)!important; border-radius:4px; min-height:44px; padding:0 10px; background:var(--hostsync-surface); } }

/* Semantic state pairs have priority over earlier page-specific action colors. */
html .ho-root.ho-live :is(.ho-button,.hi-button):disabled { background:var(--hostsync-disabled)!important; color:var(--hostsync-disabled-text)!important; border-color:var(--hostsync-border-control)!important; opacity:1; }
html .ho-root.ho-live :is(.ho-button.ho-secondary,.hi-button.hi-secondary):not(.hp5-filters .ho-button):not(:disabled,[aria-pressed=true]) { background:transparent!important; color:var(--hostsync-primary)!important; border-color:var(--hostsync-primary)!important; }
html .ho-root.ho-live :is(.ho-button.ho-secondary,.hi-button.hi-secondary):not(.hp5-filters .ho-button):hover:not(:disabled,[aria-pressed=true]) { background:var(--hostsync-hover)!important; color:var(--hostsync-primary)!important; }
html .ho-root.ho-live :is(.ho-button.ho-secondary,.hi-button.hi-secondary):active:not(:disabled,[aria-pressed=true]) { background:var(--hostsync-pressed)!important; }
html .ho-root.ho-live :is(.ho-button.ho-destructive,.hi-button.hi-destructive):not(:disabled) { background:var(--hostsync-error-surface)!important; color:var(--hostsync-error)!important; border-color:var(--hostsync-error)!important; }
html .ho-root.ho-live :is(.ho-button,.hi-button):active:not(:disabled):not(.ho-secondary):not(.hi-secondary):not(.ho-destructive):not(.hi-destructive) { background:var(--hostsync-action-pressed)!important; }

@media(forced-colors:active) {
    html .ho-root.ho-live .ho-button:not(.ho-secondary):not(.ho-destructive):not(:disabled),
    html .ho-root.ho-live .ho-button:not(.ho-secondary):not(.ho-destructive):not(:disabled):hover,
    html .ho-root.ho-live .ho-button:not(.ho-secondary):not(.ho-destructive):not(:disabled):active,
    html .ho-root.ho-live :is(.ho-button,.hi-button),
    html .ho-root.ho-live :is(.ho-button,.hi-button):is(:hover,:active):not(:disabled),
    html .ho-root.ho-live :is(.ho-button.ho-secondary,.hi-button.hi-secondary):not(:disabled),
    html .ho-root.ho-live :is(.ho-button.ho-secondary,.hi-button.hi-secondary):is(:hover,:active):not(:disabled),
    html .ho-root.ho-live :is(.ho-button.ho-destructive,.hi-button.hi-destructive):not(:disabled),
    html .ho-root.ho-live :is(.ho-button,.hi-button):active:not(:disabled):not(.ho-secondary):not(.hi-secondary):not(.ho-destructive):not(.hi-destructive) { background:ButtonFace!important; color:ButtonText!important; border-color:ButtonText!important; }
    html .ho-root.ho-live :is(.ho-button,.hi-button):disabled { background:ButtonFace!important; color:GrayText!important; border-color:GrayText!important; }
    html .ho-root.ho-live :is(a,button,input,select,textarea):focus-visible { outline-color:Highlight; box-shadow:none; }
}

/* Standalone guest pages own their canvas; hosted feature roots reveal the shell canvas. */
html body.ho-root.ho-live.ho-guest-shell { background:var(--hostsync-background)!important; }

/* Match the operational rail's specificity so its nowrap rule cannot obscure
   Apps behind Account. Account stays aligned with the first identity row. */
@media(max-width:700px) {
 html .hivesync-shell.hivesync-shell--hostsync-theme .focused-workflow-layout__header { align-items:flex-start; }
 html .hivesync-shell.hivesync-shell--hostsync-theme .product-shell-identity { flex-wrap:wrap; min-width:0; max-width:100%; }
 html .hivesync-shell.hivesync-shell--hostsync-theme .product-shell-identity__apps { max-width:100%; }
 html .hivesync-shell.hivesync-shell--hostsync-theme .product-shell-identity__apps summary { white-space:normal; }
}
