/* dhosty navigation: stable layout, quiet surfaces and original optical-grid icons. */
.sidebar #nav{overflow-anchor:none;scroll-behavior:auto;scrollbar-width:thin;padding-top:4px}
.sidebar .brand{padding-bottom:14px!important}
.sidebar .server-switch.nav105-workspace{min-height:58px;height:58px;padding:10px 12px;gap:10px;border-radius:16px;margin-bottom:3px!important;box-shadow:0 2px 8px #182f5010}
.nav105-workspace>span:nth-child(2){min-width:0;flex:1}
.sidebar .nav105-workspace strong,.sidebar .nav105-workspace small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}
.sidebar .nav105-workspace strong{font-size:13px}.sidebar .nav105-workspace small{font-size:11px;margin-top:1px}
.sidebar .nav105-workspace .server-avatar{width:30px;height:30px;flex:0 0 30px;border-radius:10px}
.sidebar .apple-nav-icon,.site-icon,.server-avatar,.hub-icon,.service-symbol,.apple-project-icon,.quick-symbol{display:inline-grid!important;place-items:center!important;line-height:0!important;padding:0!important;flex-shrink:0;vertical-align:middle}
.sidebar .apple-nav-icon{width:30px;height:30px;flex-basis:30px;border-radius:10px;border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 9%,transparent);box-shadow:inset 0 1px 0 #ffffff20}
.sidebar .apple-nav-icon .icon,.site-icon .icon,.server-avatar .icon,.hub-icon .icon,.service-symbol .icon,.apple-project-icon .icon,.quick-symbol .icon{width:18px!important;height:18px!important;display:block!important;position:static!important;transform:none!important;margin:0!important;stroke-width:1.7!important;overflow:visible}
.sidebar #nav>a,.sidebar .dhosty-nav-items>a{min-height:43px;border-radius:12px;gap:11px;margin:3px 0;padding:6px 10px;transition:background-color .18s,color .18s,box-shadow .18s}
.sidebar #nav a.active{box-shadow:0 3px 10px #0764d128}
.sidebar #nav a[hidden],.sidebar #nav section[hidden],.sidebar #nav p[hidden]{display:none!important}
.dhosty-nav-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .24s cubic-bezier(.2,.7,.2,1),opacity .18s}
.dhosty-nav-body[data-open="true"],.dhosty-nav-body.nav105-search-open{grid-template-rows:1fr;opacity:1}
.dhosty-nav-items{min-height:0;overflow:hidden}
.sidebar .apple-nav-heading{min-height:38px;margin-top:10px;padding:6px 10px;font-size:11px;letter-spacing:.025em}
.apple-nav-heading .icon{transition:transform .24s}.apple-nav-heading[aria-expanded="false"] .icon{transform:rotate(0deg)}
.nav105-tools{position:sticky;top:-4px;z-index:2;background:var(--sidebar,#eef0f5);padding:7px 2px 9px;border-bottom:1px solid #8b99ae25;margin-bottom:8px}
.nav105-search{display:flex;align-items:center;gap:7px;background:#ffffffa8;border:1px solid #8095b52a;border-radius:10px;padding:0 9px;height:36px;color:#66778d;margin:0!important}
.nav105-search>.icon{width:16px;height:16px;flex:none}
.nav105-search input{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;margin:0!important;height:34px;min-width:0;width:100%;font-size:12px!important;color:inherit;outline-offset:2px}
.nav105-search kbd{font:11px monospace;border:1px solid #8796ac40;border-radius:4px;padding:0 4px;line-height:18px}
.nav105-actions{display:flex;align-items:center;justify-content:space-between;margin-top:7px;gap:4px}
.nav105-actions button{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#66778d;border-radius:7px;padding:5px 7px;font:inherit;font-size:11px;cursor:pointer}
.nav105-actions button>.icon{width:14px;height:14px}.nav105-actions button:hover,.nav105-actions button[aria-pressed="true"]{background:#1478ef12;color:#0764d1}
.nav105-favorites{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.sidebar #nav .nav105-favorites a{display:flex;align-items:center;gap:5px;max-width:100%;border:1px solid #7994bc2b;border-radius:8px;padding:5px 7px;font-size:10px;background:#ffffff65;min-height:26px;white-space:nowrap;overflow:hidden}
.nav105-favorites a span{overflow:hidden;text-overflow:ellipsis}.nav105-favorites .icon{width:13px;height:13px;flex:none}
.nav105-empty{padding:16px 8px;color:#66778d;font-size:12px}
.nav105-context{margin:0 0 8px;font-size:11px;color:#66778d;flex-shrink:0}
.nav105-context>summary{list-style:none;display:flex;align-items:center;gap:7px;cursor:pointer;border-radius:8px;padding:7px 10px}.nav105-context>summary::-webkit-details-marker{display:none}.nav105-context>summary .icon{width:13px;height:13px}.nav105-context>summary .icon:last-child{margin-left:auto}.nav105-context[open]>summary .icon:last-child{transform:rotate(90deg)}
.nav105-context>div{margin-top:3px;padding:12px;background:#ffffff90;border:1px solid #8796ac25;border-radius:12px;max-height:220px;overflow:auto}
.nav105-context p{margin:3px 0 10px;overflow-wrap:anywhere}.nav105-context dl{margin:10px 0}.nav105-context dl>div{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid #8796ac20}.nav105-context dd{margin:0;font-variant-numeric:tabular-nums;font-weight:600}
.nav105-context a{display:flex;align-items:center;gap:7px;padding:5px 0;color:inherit}.nav105-context a>.icon{width:14px;height:14px}.nav105-context a>.icon:last-child{margin-left:auto}
[data-theme="dark"] .nav105-tools{background:#202226}[data-theme="dark"] .nav105-search,[data-theme="dark"] .nav105-context>div,[data-theme="dark"] .nav105-favorites a{background:#292d34!important;color:#c6d1e1}
[data-theme="dark"] .nav105-actions button,[data-theme="dark"] .nav105-context,[data-theme="dark"] .nav105-empty{color:#b2bfd2}[data-theme="dark"] .nav105-actions button:hover,[data-theme="dark"] .nav105-actions button[aria-pressed="true"]{color:#95c5ff;background:#95c5ff14}
.nav105-actions button:focus-visible,.nav105-context summary:focus-visible{outline:2px solid #1478ef;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.dhosty-nav-body,.apple-nav-heading .icon,.sidebar #nav a{transition:none!important}}
@media(max-width:700px){.nav105-search input{font-size:16px!important}.sidebar .server-switch.nav105-workspace{height:54px;min-height:54px}.sidebar .brand{padding-bottom:10px}}

.site-icon{width:32px;height:32px;flex:0 0 32px;border-radius:10px}.site-icon .icon{width:18px;height:18px}

/* Accordion and full-width shortcuts: override the legacy nav-link flex basis. */
.sidebar #nav .nav105-favorites{display:flex;flex-direction:column;align-items:stretch;width:100%}
.sidebar #nav .nav105-favorites>a{flex:0 0 auto!important;width:100%;min-width:0;min-height:34px;padding:7px 9px;font-size:12px;line-height:1.4;box-sizing:border-box}
.sidebar #nav .nav105-favorites>a>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}
.nav105-tools,.apple-nav-group{flex:0 0 auto}.nav105-tools{order:-10}.sidebar #nav>a[data-key="apple-nav-overview"]{order:-9}.apple-nav-group[data-front="true"]{order:-8}
.sidebar .apple-nav-group{margin-top:7px}.nav105-context .nav105-domain{gap:8px;padding:9px 0}.nav105-domain>span:nth-child(2){min-width:0;flex:1}.nav105-domain strong,.nav105-domain small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav105-domain strong{font-size:11px}.nav105-domain small{font-size:10px;color:var(--secondary)}.nav105-domain-dot{width:6px;height:6px;border-radius:50%;background:#b99857;flex:none}.nav105-domain-dot.ready{background:#219a69}

.nav105-context{position:relative}.nav105-context>div{position:absolute;inset:100% 0 auto;z-index:90;max-height:min(360px,60dvh);background:var(--surface)!important;box-shadow:0 14px 40px #142b5225}.nav105-context>summary:hover{background:var(--blue-soft)}

.nav105-actions{align-items:flex-start}.nav105-quick{flex:1;min-width:0}.nav105-quick>summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer;padding:5px 7px;border-radius:7px;font-size:11px;color:var(--secondary)}.nav105-quick>summary::-webkit-details-marker{display:none}.nav105-quick>summary>.icon{width:14px;height:14px;flex:none}.nav105-quick>summary>.icon:last-child{margin-left:auto;width:11px;height:11px}.nav105-quick[open]>summary>.icon:last-child{transform:rotate(90deg)}.nav105-quick:not([open])>div{display:none}.nav105-quick>summary:hover{background:var(--blue-soft);color:var(--blue)}.nav105-quick>div{padding-bottom:6px}.nav105-quick:focus-within>summary{outline-offset:2px}
