/* OpenCode V2 dark palette; source and resolved tokens in README. */
.project-buttons { display: grid; gap: .7rem; }
.project-option { display: flex; align-items: center; gap: .7rem; }
.project-button {
  display: block;
  flex: 1;
  min-width: 0;
  min-height: 44px;
  padding: .35rem .65rem;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--raised);
  color: var(--interactive);
  overflow-wrap: anywhere;
  text-decoration: none;
}
.project-button:hover { border-color: var(--interactive); text-decoration: none; }
.project-button:focus-visible { outline: 2px solid var(--interactive); outline-offset: 2px; }
.admin-list { list-style: none; padding: 0; margin: 1rem 0 .5rem; }
.admin-list > li { display: flex; align-items: center; justify-content: flex-end; gap: .5rem; padding: .65rem; border-bottom: 1px solid var(--border); background: var(--panel); }
.admin-name { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.admin-list button { flex: none; min-width: 44px; min-height: 44px; }
.admin-create { width: 100%; min-height: 44px; }
#admin-dialog .admin-create { margin-top: .75rem; }
.admin-enabled, .admin-role { display: flex; align-items: center; gap: .35rem; margin: 0; flex: none; }
.admin-enabled input, .admin-role input { width: 1.2rem; height: 1.2rem; flex: none; accent-color: var(--interactive); }
.admin-role { font-size: .875rem; }
#admin-dialog { width: min(38rem, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); overflow-y: auto; padding: 1.25rem; color: var(--text); background: var(--panel); border: 1px solid var(--border); border-radius: 6px; overflow-wrap: anywhere; }
#admin-dialog::backdrop { background: #000b; }
#admin-dialog h2 { margin-top: 0; }
#admin-dialog form { margin-bottom: 1rem; }
.admin :is(button,input,select,a):focus-visible { outline: 2px solid var(--interactive); outline-offset: 3px; }
.admin button:disabled { cursor: not-allowed; }
@media(max-width:450px) { .admin-list > li { gap: .3rem; padding: .5rem .25rem; flex-wrap: wrap; } .admin-name { flex-basis: 100%; } .admin-enabled, .admin-role { margin-left: auto; } }
/* Sidebar destinations remain anchors; expansion has its own button. */
header .brand { display: inline-flex; align-items: center; gap: .5rem; flex-shrink: 0; }
header .brand img { display: block; width: 28px; height: 28px; flex: none; }
#account-dropdown { position: relative; min-width: 0; max-width: min(20rem, calc(100% - 8rem)); margin-left: auto; }
#account-toggle { display: flex; align-items: center; gap: .5rem; max-width: 100%; min-height: 44px; }
#account-toggle > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#account-menu { position: absolute; top: calc(100% + .5rem); right: 0; z-index: 3; width: max-content; min-width: 12rem; max-width: calc(100vw - 3rem); padding: .35rem; border: 1px solid var(--border); border-radius: 6px; background: var(--panel); box-shadow: 0 .5rem 1.5rem #0008; }
#account-menu :is(a,button) { display: block; width: 100%; min-height: 44px; padding: .5rem .65rem; border: 0; border-radius: 4px; background: transparent; text-align: left; text-decoration: none; }
#account-menu :is(a,button):hover { background: var(--raised); }
#account-dropdown :is(a,button):focus-visible { outline: 2px solid var(--interactive); outline-offset: 2px; }
/* Task controls are display-only, including in loose and nested lists. */
#rendered li.task-list-item { list-style: none; }
#rendered .task-list-checkbox {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin: 0 .45em 0 -1.45em;
  padding: 0;
  vertical-align: -.1em;
  accent-color: var(--green);
  opacity: 1;
  cursor: default;
}
aside .tree-link {
  display: block;
  min-width: 0;
  padding: .35rem .65rem;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--raised);
  overflow-wrap: anywhere;
  text-decoration: none;
}
aside .tree-link:hover {
  background: #2a2a2a;
  border-color: var(--interactive);
  text-decoration: none;
}
aside .tree-link[aria-current="page"] {
  background: #30243e;
  border-color: var(--accent);
  color: var(--text);
  font-weight: 700;
  text-decoration: none;
}
aside .tree-link[aria-current="page"]:hover { background: #403052; }
aside .tree-link:focus-visible, #tree button:focus-visible {
  outline: 2px solid var(--interactive);
  outline-offset: 2px;
}
.tree-row { margin: .25rem 0; }
.tree-row .tree-link { flex: 1; }
.tree-control {
  flex: none;
  width: 1.5rem;
  height: calc(1.6em + 2px);
  padding: 0 .25rem;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--raised);
}
#children{background:#000000;border-top:1px solid var(--border);margin-top:1.5rem;padding:1rem}#children>ul,#children>p{margin:0}
:root{color-scheme:dark;--base:#0a0a0a;--panel:#141414;--raised:#1e1e1e;--text:#eeeeee;--muted:#808080;--border:#484848;--accent:#9d7cd8;--interactive:#fab283;--cyan:#56b6c2;--green:#7fd88f;--red:#e06c75;--yellow:#e5c07b;--orange:#f5a742}
*{box-sizing:border-box}body{margin:0;background:var(--base);color:var(--text);font:16px/1.6 system-ui,sans-serif}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}header{display:flex;gap:1.5rem;align-items:center;padding:.8rem 1.5rem;border-bottom:1px solid var(--border);background:var(--panel)}header .brand{font-weight:700;color:var(--interactive);margin-right:auto}button,input,textarea,select{font:inherit;color:inherit;background:var(--raised);border:1px solid var(--border);border-radius:4px;padding:.35rem .65rem}button{cursor:pointer;color:var(--interactive)}button:hover{border-color:var(--interactive)}button:disabled{opacity:.5;cursor:wait}button.danger,.error{color:var(--red)}label{display:block;margin:.6rem 0}input,select,textarea{display:block;width:100%}.check{display:flex;gap:.5rem}.check input{width:auto}textarea{min-height:55vh;resize:vertical;font:14px/1.5 ui-monospace,monospace;tab-size:4}h1,h2,h3,h4,h5,h6{color:var(--accent);line-height:1.3}main{padding:1.5rem 2rem;min-width:0}.small{max-width:680px;margin:auto}.workspace{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 60px)}aside{background:var(--panel);padding:1rem;border-right:1px solid var(--border);overflow-wrap:anywhere}#tree{margin:1rem 0}#tree ul{list-style:none;margin:0;padding-left:1rem}#tree>ul{padding:0}.tree-row{display:flex;align-items:center;gap:.4rem}.tree-row button{padding:0 .25rem;min-width:1.5rem}.tree-row a{overflow-wrap:anywhere}#notice:not(:empty){position:sticky;top:0;background:var(--raised);border-bottom:1px solid var(--red);padding:.6rem 1.5rem;z-index:2}.breadcrumbs,.toolbar{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center}.toolbar{margin:1rem 0}.muted{color:var(--muted)}#search-form{display:flex;gap:.5rem;align-items:end;max-width:40rem;margin:1rem 0}.search-label{flex:1;margin:0}article{max-width:1000px;overflow-wrap:anywhere}article pre{overflow:auto;padding:1rem;background:var(--panel);border:1px solid var(--border);border-radius:5px;color:var(--green)}code{font-family:ui-monospace,monospace;color:var(--green);background:var(--raised);padding:.1rem .3rem}pre code{background:transparent;padding:0}blockquote{border-left:3px solid var(--yellow);padding-left:1rem;color:var(--yellow)}strong{color:var(--orange)}hr{border:0;border-top:1px solid var(--muted)}table{border-collapse:collapse}td,th{border:1px solid var(--border);padding:.4rem}.admin{max-width:1000px;margin:auto}.admin-form{background:var(--panel);border:1px solid var(--border);padding:1rem;margin:1rem 0}.admin-form h3{margin-top:0}[hidden]{display:none!important}#history-list pre{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--border);padding:1rem}@media(max-width:750px){.workspace{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid var(--border)}header{gap:.7rem;flex-wrap:wrap}main{padding:1rem}}
