/* Shared controls respect account colours, keyboard focus and secondary glass. */
:root{--control-thumb:color-mix(in srgb,var(--tone) 36%,var(--muted));--control-hover:rgba(var(--accent-rgb),.14)}
*{scrollbar-width:thin;scrollbar-color:var(--control-thumb) transparent}
::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--control-thumb);border:2px solid transparent;background-clip:padding-box;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:var(--tone)}::-webkit-scrollbar-button{display:none;width:0;height:0}::-webkit-scrollbar-corner{background:transparent}
/* Specificity must beat legacy .main/.nav/.context-sidebar rules; non-auto
   standard properties disable Chromium's themed scrollbar pseudo elements. */
@supports selector(::-webkit-scrollbar){html:root body,html:root body *{scrollbar-width:auto;scrollbar-color:auto}}
@supports not selector(::-webkit-scrollbar){html:root body,html:root body *{scrollbar-width:thin;scrollbar-color:var(--control-thumb) transparent}}
html .layout .nav{padding:4px 12px 4px 4px;scrollbar-gutter:stable;gap:5px;min-width:0}
html .nav button{min-width:0;max-width:100%;overflow:hidden;transform:none;border-radius:12px}
.nav button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav button>.line-icon,.nav button.active:after{flex-shrink:0}
html .nav button:focus-visible{outline:2px solid var(--tone);outline-offset:-3px}
html .shell select:not([multiple]),html dialog select:not([multiple]){appearance:none;-webkit-appearance:none;cursor:pointer;padding-inline-end:38px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size:5px 5px;background-repeat:no-repeat;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
select[aria-expanded=true]{border-color:var(--tone)}select:disabled{cursor:not-allowed;opacity:.55}
html .ui-select-popup{position:fixed;inset:auto;margin:0;padding:6px;box-sizing:border-box;min-width:0;overflow:hidden;z-index:1000;background:rgba(var(--panel),.97);border:1px solid var(--line);border-radius:14px;color:var(--text);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);font:300 var(--ui-font-size)/1.65 var(--font-ui)}
.ui-select-popup:popover-open,.ui-select-popup.is-open{display:flex;flex-direction:column;gap:6px}
html .ui-select-popup .ui-select-search{flex:none;width:100%;min-width:0;min-height:36px;border-radius:10px;margin:0;padding:7px 10px;background:rgba(var(--input-rgb),.35);color:var(--text);font:inherit}
.ui-select-list{overflow:auto;overscroll-behavior:contain;min-height:0;scroll-padding:5px;padding:2px;max-height:calc(var(--menu-height) - 60px)}
.ui-select-list:only-child{max-height:calc(var(--menu-height) - 12px)}
.ui-select-option{display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:12px;min-height:36px;border:1px solid transparent;border-radius:9px;padding:8px 10px;color:var(--text);cursor:pointer;box-sizing:border-box;overflow-wrap:anywhere}
.ui-select-option>span:first-child{min-width:0}.ui-select-check{color:var(--tone);text-align:center}
.ui-select-option[data-group]:before{content:attr(data-group);grid-column:1/-1;color:var(--muted);font-size:.9em;padding:3px 0}
.ui-select-option:hover,.ui-select-option.is-current{background:var(--control-hover);border-color:rgba(var(--accent-rgb),.42)}
.ui-select-option[aria-selected=true]{color:var(--selected-ink);background:rgba(var(--accent-rgb),.28)}
.ui-select-option[aria-disabled=true]{opacity:.42;cursor:not-allowed}.ui-select-empty{margin:10px;color:var(--muted)}
html .shell input[type=range]:not(.color-slider),html dialog input[type=range]:not(.color-slider){appearance:none;-webkit-appearance:none;display:block;width:100%;min-width:0;min-height:0;height:8px;padding:0;margin:14px 0;border:1px solid var(--line);border-radius:9px;background:linear-gradient(to right,var(--tone) 0 var(--range-progress,0%),rgba(var(--accent-rgb),.12) var(--range-progress,0%) 100%);cursor:pointer}
input[type=range]:not(.color-slider)::-webkit-slider-runnable-track{height:6px;border-radius:9px;background:transparent}input[type=range]:not(.color-slider)::-moz-range-track{height:6px;border-radius:9px;background:transparent}
input[type=range]:not(.color-slider)::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid var(--tone);border-radius:50%;background:rgb(var(--panel));margin-top:-6px}input[type=range]:not(.color-slider)::-moz-range-thumb{width:14px;height:14px;border:2px solid var(--tone);border-radius:50%;background:rgb(var(--panel))}
input[type=range]:focus-visible{outline:2px solid var(--tone);outline-offset:5px}
.ui-control-bar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:24px}
.ui-control-group{display:flex;align-items:center;gap:12px;min-width:0}.ui-control-label{color:var(--muted);white-space:nowrap}
.ui-segmented{display:inline-flex;align-items:stretch;gap:3px;padding:3px;min-width:0;border:1px solid var(--line);border-radius:13px;background:rgba(var(--input-rgb),.15)}
html .ui-segmented .btn{border:1px solid transparent;background:transparent;border-radius:9px;color:var(--muted);padding:7px 12px;min-height:34px;transform:none}
html .ui-segmented .btn[aria-pressed=true]{background:rgba(var(--accent-rgb),.28);border-color:rgba(var(--accent-rgb),.38);color:var(--selected-ink)}
html .ui-segmented .btn:focus-visible{outline:2px solid var(--tone);outline-offset:-2px}
@media(max-width:767px){.ui-control-bar{padding:14px;gap:14px}.ui-control-group{flex-wrap:wrap;gap:8px}.ui-control-label{font-size:12px}.ui-segmented{max-width:100%}html .ui-segmented .btn{padding:7px 10px}}
@media(forced-colors:active){.ui-select-option.is-current,.ui-select-option[aria-selected=true]{outline:2px solid Highlight;outline-offset:-2px}.ui-segmented .btn[aria-pressed=true]{outline:2px solid Highlight;outline-offset:-2px}}

/* Dense metadata stays secondary to names, with space between separate states. */
.node-identity{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:160px;max-width:100%}
html .node-identity .node-title{font-size:var(--ui-font-size);font-weight:300;line-height:1.7;overflow-wrap:anywhere}
html .node-identity .protocol-badge{font-size:max(10px,calc(var(--ui-font-size) - 2px));padding:1px 7px;line-height:1.6;flex:none}
.status-badges{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}
.badge+.badge{margin-inline-start:6px}.status-badges>.badge+.badge,.actions>.badge+.badge,.tag-list>.badge+.badge{margin-inline-start:0}
.context-metrics dt{flex:1;min-width:0}.context-metrics dd{max-width:68%;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
html .context-section{margin-bottom:24px;padding-bottom:20px}html .context-metrics{margin-top:12px}
/* Keep native semantics and keyboard behaviour, draw the visible controls. */
html body input:is([type=checkbox],[type=radio]){appearance:none;-webkit-appearance:none;display:inline-grid;place-content:center;inline-size:17px;block-size:17px;min-inline-size:17px;min-block-size:17px;padding:0;border:1px solid var(--muted);border-radius:5px;background:rgba(var(--input-rgb),.6);vertical-align:middle;cursor:pointer}
html body input[type=radio]{border-radius:50%}
html body input[type=checkbox]:checked,html body input[type=radio]:checked{background:var(--tone);border-color:var(--tone)}
html body input[type=checkbox]:checked:after{content:"";width:8px;height:4px;border-left:2px solid rgb(var(--panel));border-bottom:2px solid rgb(var(--panel));transform:translateY(-1px) rotate(-45deg)}
html body input[type=checkbox]:indeterminate:after{content:"";width:8px;height:2px;background:var(--tone)}
html body input[type=radio]:checked:after{content:"";width:7px;height:7px;border-radius:50%;background:rgb(var(--panel))}
html body input:is([type=checkbox],[type=radio]):focus-visible{outline:2px solid var(--tone);outline-offset:3px}
html body input:is([type=checkbox],[type=radio]):disabled{opacity:.45;cursor:not-allowed}
html body input[type=number]{appearance:textfield;-moz-appearance:textfield}
input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
html input::file-selector-button{border:1px solid var(--line);border-radius:9px;background:rgba(var(--accent-rgb),.18);color:var(--text);font:inherit;padding:7px 12px;cursor:pointer}
@media(forced-colors:active){html body input:is([type=checkbox],[type=radio]){appearance:auto;-webkit-appearance:auto}html body input:is([type=checkbox],[type=radio]):after{display:none}}

.ui-datetime-field{display:flex;align-items:stretch;gap:8px;min-width:0}.ui-datetime-field>input{flex:1;min-width:0}.ui-datetime-field>.ui-date-trigger{flex:none;min-width:40px;padding:7px}
html .ui-date-popup{position:fixed;inset:auto;margin:0;padding:14px;box-sizing:border-box;max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--line);border-radius:16px;background:rgba(var(--panel),.98);backdrop-filter:blur(28px);color:var(--text);font:300 var(--ui-font-size)/1.6 var(--font-ui)}
.ui-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ui-calendar-head h3{font-size:var(--ui-font-size);margin:0}.ui-calendar-week,.ui-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.ui-calendar-week{margin:14px 0 5px;color:var(--muted)}
.ui-date-day{border:1px solid transparent;border-radius:9px;min-height:33px;padding:4px;color:var(--text);background:transparent;cursor:pointer;font:inherit}.ui-date-day:hover,.ui-date-day:focus-visible{outline:1px solid var(--tone);outline-offset:-2px;background:var(--control-hover)}.ui-date-day.selected{background:rgba(var(--accent-rgb),.28);color:var(--selected-ink);border-color:var(--tone)}.ui-date-day[aria-current=date]{text-decoration:underline;text-underline-offset:4px}
.ui-calendar-time{display:flex;align-items:end;gap:10px;margin-top:14px}.ui-calendar-time label{display:grid;gap:4px;flex:1;color:var(--muted)}html .ui-calendar-time input{width:100%;padding:6px 10px;min-height:34px;border:1px solid var(--line);border-radius:9px;background:rgba(var(--input-rgb),.4);color:var(--text);font:inherit}.ui-calendar-time>span{padding-bottom:6px}.ui-calendar-actions{display:flex;gap:7px;justify-content:flex-end}.ui-date-popup .inline-error{margin:8px 0;min-height:0}

html .node-identity{flex-wrap:nowrap;min-width:200px;width:280px;max-width:100%}html .node-identity .node-title{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.site-background-preview{display:grid;place-items:center;width:100%;max-width:640px;aspect-ratio:16/7;overflow:hidden;border:1px solid var(--line);border-radius:14px;margin-bottom:24px;background:rgba(var(--input-rgb),.4);color:var(--muted)}.site-background-preview img{width:100%;height:100%;object-fit:cover}
