/* iCred palette: brand manual pp. 11–12; semantic error colors retained. */
:root{font-family:'Avenir Next','Segoe UI',sans-serif;color:#000000;background:#f7f8f8;--paper:#f7f8f8;--surface:#fff;--ink:#000000;--muted:#4f4f52;--accent:#0f692e;--wash:#e9f5ed;--line:#c4c9cc;--error:#9a2929;color-scheme:light}
*{box-sizing:border-box}body{margin:0}a{color:var(--accent)}button,input,select{font:inherit}button,.button{display:inline-block;border:1px solid transparent;border-radius:8px;background:#1dcf5c;color:#000;padding:11px 17px;font-weight:600;cursor:pointer;text-decoration:none}button:hover,.button:hover{filter:brightness(.92)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}input,select{width:100%;min-width:0;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);padding:11px 12px}form{display:grid;gap:12px}label{font-size:13px;font-weight:600}h1,h2,p{margin-top:0}h1{font-size:34px;letter-spacing:-1px;line-height:1.2;font-weight:600;margin-bottom:14px}h2{font-size:17px;font-weight:600}p{color:var(--muted);line-height:1.65;max-width:70ch}small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--surface);padding:32px 24px;display:flex;flex-direction:column;gap:40px;border-right:1px solid var(--line)}.brand{font-size:34px;letter-spacing:-1.6px;font-weight:650;color:var(--ink);text-decoration:none}.brand span{color:var(--accent)}.sidebar nav{display:grid;gap:6px}.sidebar nav h2{color:var(--muted);font-size:13px}.org-link{padding:12px;border-radius:7px;text-decoration:none;color:var(--muted);font-size:14px;overflow-wrap:anywhere}.org-link.selected{background:var(--wash);color:var(--accent);font-weight:600}.sidebar-footer{margin-top:auto;padding-top:32px}.sidebar-footer p{font-size:12px;margin-bottom:10px}.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.language{display:flex;gap:16px;font-size:12px;margin-top:24px}.workspace{padding:55px clamp(24px,4vw,64px);width:100%;max-width:1500px}.context{font-size:14px;color:var(--accent);margin-bottom:12px}.scope-note{border-top:1px solid var(--line);padding-top:20px;font-size:12px;margin:30px 0}.work-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px}.team-list{list-style:none;padding:0;margin:0}.team-list li{display:flex;align-items:center;gap:16px;min-height:86px;border-bottom:1px solid var(--line);padding:16px 0;overflow-wrap:anywhere}.team-list li>div{min-width:0}.team-symbol{font-size:24px;color:var(--accent)}.editor{background:var(--surface);padding:24px;border:1px solid var(--line);border-radius:10px}.editor button{margin-top:8px}.notice{padding:14px 18px;border-left:3px solid var(--accent);background:var(--wash);font-size:14px;overflow-wrap:anywhere}.notice.error{border-color:var(--error);color:var(--error)}.organization-list{max-width:650px}.organization-list a{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:20px;color:var(--ink);overflow-wrap:anywhere}.organization-list span{color:var(--accent)}.welcome{max-width:620px;padding-top:40px}.welcome h1{font-size:44px}.welcome h2{margin-top:35px}.welcome .button{margin:0 12px 12px 0}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--paper:#000000;--surface:#171918;--ink:#ffffff;--muted:#c4c9cc;--accent:#1dcf5c;--wash:#0a451f;--line:#4f4f52;--error:#ffb4b4;color:var(--ink);background:var(--paper)}button,.button{color:#000000}.secondary{color:var(--ink)}}
@media(max-width:1000px){.shell{grid-template-columns:220px minmax(0,1fr)}.work-grid{grid-template-columns:1fr}.editor{max-width:480px}}
@media(max-width:620px){.shell{display:block}.sidebar{padding:20px;gap:20px;border-right:0;border-bottom:1px solid var(--line)}.sidebar-footer{padding:0;display:flex;flex-wrap:wrap;gap:16px;align-items:center}.sidebar-footer p{display:none}.language{margin:0}.workspace{padding:30px 20px}.welcome{padding-top:0}.welcome h1{font-size:34px}.work-grid{gap:24px}h1{font-size:30px}}
.context{overflow-wrap:anywhere}.invitation-form{max-width:560px;display:grid;gap:12px}.invitation-list{list-style:none;padding:0;margin:0}.invitation-list li{padding:20px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.invitation-list p{margin:8px 0;font-size:14px}.invitation-list form{margin-top:16px;justify-items:start}.invitation-list button{font-size:14px}
.member-list{list-style:none;padding:0;margin:0;max-width:850px}.member-list li{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}.member-list li>div{min-width:0}.member-list li>a{flex-shrink:0;font-size:14px}.member-id{overflow-wrap:anywhere;margin:8px 0}.member-confirmation{max-width:600px}@media(max-width:620px){.member-list li{align-items:flex-start;flex-direction:column;gap:14px}}
.participation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}@media(max-width:1000px){.participation-grid{grid-template-columns:1fr;gap:24px}}

.project-teams { margin: 1rem 0; padding: 1rem; border: 1px solid var(--line); border-radius: .75rem; min-width: 0; }
.project-team { display: flex; align-items: flex-start; gap: .6rem; padding: .5rem 0; }
.project-team input[type="checkbox"] { width: auto; flex: 0 0 auto; margin-top: .2rem; }
.project-team span, .project-name { overflow-wrap: anywhere; min-width: 0; }
.profile-browser h1,.profile-browser h2,.profile-browser strong,.profile-browser li,.profile-browser dd{overflow-wrap:anywhere}.profile-instructions{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65;margin:0}.profile-browser dl{margin:28px 0}.profile-browser dt{font-weight:600;margin-top:16px}.profile-browser dd{margin:6px 0;color:var(--muted)}
.profile-browser textarea{font:inherit;width:100%;min-width:0;resize:vertical;border:1px solid var(--line);border-radius:7px;padding:12px;background:var(--surface);color:var(--ink)}button:disabled{opacity:.55;cursor:not-allowed}

.policy-editor{max-width:850px}.policy-editor fieldset{display:grid;gap:12px}.policy-editor legend{padding:0 8px}
.workflow-editor fieldset{min-width:0}.workflow-editor legend{overflow-wrap:anywhere;max-width:100%}.workflow-editor .project-team{min-height:44px}

.local-destinations .editor{max-width:700px}.local-destinations .project-team{min-height:44px;align-items:center}.local-destinations fieldset{margin:0}

/* Oracle: independent entry roots; edges only join the focal layer to its children. */
.oracle-workspace h1,.oracle-workspace h2,.oracle-workspace h3{overflow-wrap:anywhere}.oracle-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;margin-top:28px}.oracle-navigation{min-width:0}.oracle-roots{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:18px}.oracle-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center;padding:20px 0}.oracle-focus{min-width:0;position:relative}.oracle-focus>.oracle-node{border:2px solid var(--accent);background:var(--wash)}.oracle-node{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:18px;position:relative;min-width:0;overflow-wrap:anywhere}.oracle-node strong{display:block;font-size:17px}.oracle-actions{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0}.oracle-actions a{padding:5px 0;min-height:32px;font-size:14px}.oracle-children{list-style:none;margin:0;padding:0 0 0 20px;border-left:1px solid var(--line);display:grid;gap:18px;position:relative}.oracle-children:before{content:"";position:absolute;left:-37px;top:50%;width:36px;border-top:1px solid var(--line);pointer-events:none}.oracle-children>li{position:relative;min-width:0}.oracle-children>li:before{content:"";position:absolute;left:-20px;top:50%;width:20px;border-top:1px solid var(--line);pointer-events:none}.oracle-badge{display:inline-block;color:var(--muted);font-size:12px;margin:8px 0}.oracle-editor,.oracle-reader{max-width:none;min-width:0}.oracle-editor textarea{width:100%;min-width:0;font:inherit;line-height:1.5;padding:12px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:var(--surface);resize:vertical}.oracle-reader pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65}.oracle-reader code{overflow-wrap:anywhere}.oracle-empty{padding:20px;min-width:0}
@media(min-width:1250px){.oracle-layout:has(.oracle-editor),.oracle-layout:has(.oracle-reader){grid-template-columns:minmax(0,1fr) minmax(350px,1fr)}}
@media(max-width:620px){.oracle-map{grid-template-columns:1fr;gap:20px}.oracle-children{margin-left:18px}.oracle-children:before{left:-1px;top:-20px;width:0;height:20px;border-top:0;border-left:1px solid var(--line)}.oracle-editor,.oracle-reader{padding:18px}.oracle-editor textarea{font-size:16px}.oracle-actions a{min-height:44px;display:inline-flex;align-items:center}.oracle-layout{gap:24px}}

/* Import follows the Oracle map: one selection, one tree, one explicit confirmation. */
.oracle-import{max-width:850px}.oracle-import label{display:block;margin:18px 0 8px}.oracle-import input[type=file]{font-size:14px}.oracle-import [hidden]{display:none!important}.import-selection{padding-left:22px;font-size:14px;color:var(--muted);overflow-wrap:anywhere}.import-limits{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.import-limits h3{font-size:15px}.import-tree,.import-tree ul{list-style:none;padding-left:20px;margin:12px 0;border-left:1px solid var(--line)}.import-tree li{position:relative;padding:8px 0 8px 12px;overflow-wrap:anywhere}.import-tree li:before{content:"";position:absolute;left:-20px;top:20px;width:24px;border-top:1px solid var(--line)}.import-tree ul:empty{display:none}.import-tree span{font-weight:600}.oracle-import #import-status{overflow-wrap:anywhere}.oracle-import #import-result a{display:inline-block;min-height:44px}.oracle-import .oracle-actions{align-items:flex-start}@media(max-width:620px){.oracle-import{padding:18px}.oracle-import input{font-size:16px}.import-tree,.import-tree ul{padding-left:12px}.import-tree li{padding-left:8px}.import-tree li:before{left:-12px;width:16px}.oracle-import button{width:100%;min-height:44px}}

.oracle-publication{min-width:0;max-width:none}.oracle-publication pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65}.oracle-publication code,.oracle-publication time{overflow-wrap:anywhere}.publication-history{padding-left:22px}.publication-history li{padding:10px 0;border-bottom:1px solid var(--line)}.publication-history time{display:block;color:var(--muted);font-size:13px}.oracle-publication form{max-width:420px}@media(max-width:620px){.oracle-publication{padding:18px}.oracle-publication a{display:inline-block;min-height:44px;padding-top:10px}.oracle-publication button{min-height:44px}}

/* Published search uses the Oracle shell and a reading list, without ranking cards. */
.oracle-search{max-width:1100px}.search-query{max-width:850px}.search-query form{max-width:none}.search-query button,.search-next button{justify-self:start}.search-query p{font-size:13px;margin:0}.search-results-section{margin-top:32px}.search-results{list-style:none;padding:0;margin:0}.search-results li{padding:24px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere;min-width:0}.search-results h3{font-size:20px;line-height:1.4;margin:0 0 8px;font-weight:600;max-width:70ch}.search-meta{font-size:13px;margin-bottom:12px}.search-excerpt{white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:8px}.search-next{margin-top:24px}.oracle-search h1{overflow-wrap:anywhere}@media(max-width:620px){.search-query{padding:18px}.search-query input{font-size:16px}.search-query button,.search-next button{width:100%;min-height:44px}.search-results h3 a{display:inline-block;min-height:44px}}

.profile-oracle-editor fieldset{min-width:0;display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:18px}.profile-oracle-editor legend{padding:0 8px;font-weight:600}.profile-oracle-editor input{min-width:0}.profile-oracle-editor .oracle-actions{margin:0}@media(max-width:620px){.profile-oracle-editor{padding:18px}.profile-oracle-editor input{font-size:16px}.profile-oracle-editor button{min-height:44px}}

/* Private skill catalog: existing Avenir shell, readable source and narrow actions. */
.skill-catalog {min-width:0}
.skill-catalog h1,.skill-catalog h2,.skill-catalog .context {overflow-wrap:anywhere}
.skill-list {list-style:none;padding:0;margin:2rem 0}
.skill-list li {display:flex;justify-content:space-between;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}
.skill-list li>div {min-width:0}
.skill-list h2 {margin:0;font-size:1.25rem}
.skill-actions {display:flex;align-items:center;flex-wrap:wrap;gap:1rem}
.skill-actions form {margin:0}
.skill-markdown {white-space:pre-wrap;overflow-wrap:anywhere;max-width:80ch;line-height:1.6;font-family:inherit;margin:2rem 0}
.skill-editor {display:grid;grid-template-columns:minmax(0,1fr) minmax(12rem,17rem);gap:2rem;max-width:none}
.skill-fields {min-width:0}
.skill-fields input,.skill-fields textarea {width:100%;box-sizing:border-box}
.skill-fields label {display:block;margin:1.25rem 0 .5rem}
.skill-fields textarea {padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);resize:vertical;min-height:22rem;font:inherit;line-height:1.55}
.skill-editor-aside {align-self:start;font-size:.95rem;line-height:1.5;min-width:0}
@media(max-width:700px){.skill-editor{grid-template-columns:minmax(0,1fr)}.skill-list li{flex-direction:column}.skill-actions{align-items:flex-start}.skill-catalog{padding-inline:1rem}}

/* Decision configuration forms retain the existing shell and exact-version reading rhythm. */
.decision-configurations{min-width:0}.decision-configurations h1,.decision-configurations h2,.decision-configurations a{overflow-wrap:anywhere}.decision-configurations form{max-width:760px;display:grid;gap:12px;margin-top:24px}.decision-configurations fieldset{min-width:0;border:1px solid var(--line);border-radius:8px;padding:18px;display:grid;gap:12px}.decision-configurations legend{padding:0 8px}.decision-configurations input{min-width:0;width:100%;box-sizing:border-box}.decision-configurations input[readonly]{color:var(--muted)}.decision-configurations .button{margin:8px 12px 8px 0}@media(max-width:620px){.decision-configurations{padding-inline:18px}.decision-configurations input{font-size:16px}.decision-configurations button{min-height:44px}}

/* Oracle progressive map: only authorized SSR nodes are positioned. List is the fallback. */
[data-oracle-map]{min-width:0}[data-oracle-map] h2{font-size:18px;margin-bottom:16px}
.oracle-map-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.oracle-map-toolbar[hidden]{display:none!important}.oracle-map-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.oracle-map-toolbar button{background:var(--surface);border:1px solid var(--line);color:var(--ink);padding:8px 12px;font-size:13px;min-height:40px}.oracle-map-toolbar button:disabled{opacity:.5;cursor:default}.oracle-map-toolbar output{min-width:4ch;text-align:center;font-size:13px;color:var(--muted)}
.oracle-map-viewport{min-width:0}.oracle-map-active .oracle-map-viewport{height:480px;overflow:hidden;position:relative;border:1px solid var(--line);border-radius:12px;background:var(--paper);cursor:grab}.oracle-map-active [data-map-content]{position:relative;transform-origin:0 0}.oracle-map-active [data-map-node]{position:absolute;width:280px;min-width:0;margin:0;z-index:1}.oracle-map-active [data-map-node] a{cursor:pointer}.oracle-map-active .oracle-focus>.oracle-node{border-color:var(--accent);border-width:2px}.oracle-map-active .oracle-map,.oracle-map-active .oracle-roots,.oracle-map-active .oracle-children{display:contents;margin:0;padding:0;border:0}.oracle-map-active .oracle-focus:after,.oracle-map-active .oracle-children:before,.oracle-map-active .oracle-children>li:before{display:none}.oracle-map-active .oracle-empty{display:none}.oracle-map-active .oracle-actions{margin:8px 0 0}.oracle-map-edges{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}.oracle-map-edges path{fill:none;stroke:var(--line);stroke-width:2}
@media(max-width:620px){.oracle-map-active .oracle-map-viewport{height:420px}.oracle-map-toolbar button{min-height:44px}.oracle-map-toolbar{gap:8px}}
@media(prefers-reduced-motion:reduce){.oracle-map-active [data-map-content]{transition:none}}

/* Corporate enrollment keeps state and the one-shot credential separate. */
.executor-enrollments form{max-width:620px}.executor-records{list-style:none;padding:0;margin:24px 0}.executor-records li{padding:18px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.executor-records p{margin:8px 0}.executor-secret{max-width:700px;border:2px solid var(--accent);border-radius:12px;background:var(--wash);padding:24px;margin:24px 0}.executor-secret input{margin:10px 0 18px;font-size:16px}.executor-enrollments small{overflow-wrap:anywhere}@media(max-width:620px){.executor-enrollments{padding:20px}.executor-secret{padding:18px}.executor-enrollments input{font-size:16px}.executor-enrollments a{overflow-wrap:anywhere}.executor-enrollments button{min-height:44px}}

.account-preferences{overflow-wrap:anywhere}.account-preferences>p{max-width:65ch}.account-preferences .editor{max-width:560px}.account-preferences fieldset{min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px}.account-preferences legend{padding:0 8px}.account-preferences .language-choice{display:flex;align-items:center;gap:12px;min-height:44px}.account-preferences input[type="radio"]{width:auto;flex:0 0 auto;accent-color:var(--accent)}.account-preferences #language-hint{font-size:14px;line-height:1.6;color:var(--muted)}

/* Keep native preview selects usable by touch without changing their behavior. */
#preview-user, #preview-team { height: 44px; min-height: 44px; max-width: 100%; }

/* Product workspace: shared UX contract, iCred palette, system theme. */
.ux-shell {
  --ux-brand: #1dcf5c;
  --ux-nav-active: #e9f5ed;
  --ux-focus: #0f692e;
  grid-template-columns: 248px minmax(0, 1fr);
  background: var(--paper);
  line-height: 1.5;
}
.ux-sidebar {
  position: sticky;
  top: 0;
  height: 100dvh;
  overflow-y: auto;
  padding: 24px 18px;
  gap: 24px;
  border-color: var(--line);
}
.ux-sidebar .brand { display: inline-flex; padding: 0 10px; font-size: 30px; }
.ux-context { min-width: 0; overflow-wrap: anywhere; }
.ux-context summary { cursor: pointer; font-weight: 600; padding: 10px; border-radius: 8px; }
.ux-context summary:hover { background: var(--paper); }
.ux-context > p { margin: 0; padding: 0 10px; font-size: 13px; }
.ux-nav { gap: 6px; }
.ux-nav a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 8px;
  text-decoration: none;
  color: var(--muted);
  font-size: 14px;
}
.ux-nav a:hover { background: var(--paper); color: var(--ink); }
.ux-nav a[aria-current="page"], .ux-nav a.selected {
  color: var(--accent);
  background: var(--ux-nav-active);
  font-weight: 650;
}
.ux-nav-group { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.ux-nav-group > summary { padding: 10px 12px; cursor: pointer; color: var(--muted); font-size: 13px; }
.ux-nav-group > h2 { margin: 0 12px 8px; font-size: 12px; font-weight: 600; }
.ux-sidebar .sidebar-footer { margin-top: auto; padding: 16px 10px 0; }
.ux-sidebar .sidebar-footer .language { margin-top: 16px; }
.ux-main { max-width: 1560px; padding: 32px clamp(24px, 4vw, 64px) 64px; min-width: 0; }
.ux-main h1 { font-size: clamp(28px, 3vw, 38px); letter-spacing: -1.1px; line-height: 1.18; }
.ux-main h2 { font-size: 20px; letter-spacing: -.35px; }
.ux-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 24px;
  padding-bottom: 20px;
  margin-bottom: 36px;
  border-bottom: 1px solid var(--line);
}
.ux-topbar p { margin: 0; font-size: 13px; }
.ux-topbar a { text-decoration: none; }
.ux-home { max-width: 1120px; }
.ux-home > header { margin-bottom: 32px; }
.ux-home > header p { font-size: 16px; max-width: 60ch; }
.ux-action-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 24px 0 40px; }
.ux-action-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface);
  color: var(--ink);
  text-decoration: none;
  min-width: 0;
}
.ux-action-card:hover { border-color: var(--accent); }
.ux-action-card h2, .ux-action-card h3, .ux-action-card strong { font-size: 19px; margin: 0; letter-spacing: -.2px; }
.ux-action-card p { margin: 0; font-size: 14px; line-height: 1.6; }
.ux-action-card > span:last-child { color: var(--accent); font-size: 14px; font-weight: 600; }
.ux-next-steps { padding: 0; margin: 20px 0 40px; list-style-position: inside; }
.ux-next-steps > li { padding: 18px 0; border-bottom: 1px solid var(--line); }
.ux-next-steps p { margin: 6px 0 0; font-size: 14px; }
.ux-next-steps a { font-weight: 600; text-underline-offset: 3px; }
.ux-admin { margin-top: 36px; padding-top: 24px; border-top: 1px solid var(--line); }
.ux-admin > summary { cursor: pointer; font-weight: 600; padding: 10px 0; }
.ux-admin[open] > summary { margin-bottom: 20px; }
.ux-admin .editor { max-width: 640px; }
.ux-shell textarea, .ux-shell input, .ux-shell select { font-size: 15px; }
.ux-shell :focus-visible { outline: 3px solid var(--ux-focus); outline-offset: 3px; }
.ux-mobile-nav > summary { display: none; }
@media (prefers-color-scheme: dark) {
  .ux-shell { --ux-nav-active: #0a451f; --ux-focus: #1dcf5c; }
  .ux-action-card:hover { border-color: #1dcf5c; }
}
@media (max-width: 900px) {
  .ux-shell { grid-template-columns: 216px minmax(0, 1fr); }
  .ux-sidebar { padding: 24px 12px; }
  .ux-action-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 620px) {
  .ux-shell { display: block; }
  .ux-sidebar { position: static; height: auto; overflow: visible; padding: 16px 20px; gap: 16px; }
  .ux-mobile-nav > summary { display: list-item; cursor: pointer; padding: 10px 0; font-weight: 600; }
  .ux-main { padding: 24px 20px 48px; }
  .ux-topbar { margin-bottom: 24px; padding-bottom: 16px; }
  .ux-action-card { padding: 20px; }
  .ux-action-grid { margin-bottom: 28px; }
  .ux-sidebar .sidebar-footer { padding: 12px 0 0; }
  .ux-shell textarea, .ux-shell input, .ux-shell select { font-size: 16px; }
}
/* Native disclosure navigation: desktop persistent, mobile user-controlled. */
.ux-navigation > summary { display: none; }
.ux-navigation > .ux-nav-body { display: block; }
.ux-context-switch > summary { cursor: pointer; padding: 10px 12px; font-weight: 600; border: 1px solid var(--line); border-radius: 8px; overflow-wrap: anywhere; }
.ux-context-switch[open] > summary { margin-bottom: 8px; }
.ux-admin-nav { margin-top: 16px; border-top: 1px solid var(--line); padding-top: 12px; }
.ux-admin-nav > summary { cursor: pointer; min-height: 44px; padding: 10px 12px; font-size: 14px; color: var(--muted); }
@media (max-width: 620px) {
  .ux-navigation > summary { display: list-item; cursor: pointer; padding: 10px 0; font-weight: 600; }
  .ux-navigation:not([open]) > .ux-nav-body { display: none; }
  .ux-navigation[open] > .ux-nav-body { display: block; }
}
.ux-skip-link { position: absolute; z-index: 20; left: 16px; top: -100px; background: var(--surface); padding: 12px 16px; border: 2px solid var(--accent); border-radius: 8px; }
.ux-skip-link:focus { top: 12px; }
.ux-context > small { margin: 0 0 4px; font-size: 12px; }
.ux-context > strong { display: block; font-size: 15px; }
.ux-context-options { display: grid; }
.ux-nav-section > summary { cursor: pointer; min-height: 44px; padding: 10px 12px; border-radius: 8px; font-size: 14px; }
.ux-nav-section > summary:hover { background: var(--paper); }
.ux-nav-section > .ux-nav-group, .ux-admin-nav > .ux-nav-group { margin: 4px 0 8px 12px; padding: 0 0 0 8px; border-top: 0; border-left: 1px solid var(--line); }
.ux-account { display: grid; gap: 12px; }
.ux-account > a { font-size: 13px; text-decoration: none; }
.ux-account > h2 { font-size: 12px; margin: 8px 0 0; color: var(--muted); }
.ux-auth-brand { padding: 28px clamp(24px, 5vw, 72px); }
.ux-auth-brand + .workspace { margin: 0 auto; max-width: 760px; }
@media (prefers-reduced-motion: reduce) {
  .ux-shell *, .ux-shell *::before, .ux-shell *::after { scroll-behavior: auto; transition-duration: 0s; animation-duration: 0s; }
}
.ux-auth-shell { display: block; min-height: 100dvh; }
.ux-auth-shell .workspace { max-width: 720px; margin: 0 auto; padding-top: 36px; }
.ux-auth-shell .welcome { padding: 0; }
@media (min-width: 621px) {
  .ux-navigation::details-content { content-visibility: visible; display: block; }
}
@media (max-width: 620px) {
  .ux-sidebar { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; position: relative; }
  .ux-sidebar .brand { grid-column: 1; grid-row: 1; padding-left: 0; align-self: center; }
  .ux-context { grid-column: 1 / -1; grid-row: 2; }
  .ux-context > small { display: none; }
  .ux-context > strong { font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .ux-context-switch { grid-column: 2; grid-row: 1; }
  .ux-context-switch > summary { padding: 10px; font-size: 12px; min-height: 44px; }
  .ux-context-options { position: absolute; left: 20px; right: 20px; top: 64px; z-index: 10; padding: 8px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; }
  .ux-navigation { grid-column: 1 / -1; grid-row: 3; }
  .ux-navigation > summary { min-height: 44px; padding: 10px 0; font-size: 14px; }
  .ux-topbar .context { display: none; }
}
