:root { color-scheme:light dark; --al-bg:light-dark(#fff,#1c211e); --al-fg:light-dark(#202724,#eff2ee); --al-muted:light-dark(#626b65,#b8c0b9); --al-line:light-dark(#d6ddd7,#485249); --al-soft:light-dark(#f3f6f2,#2a332b); --al-link:light-dark(#526544,#c5d5af); --al-red:light-dark(#b64132,#f1aa79); --al-cta-ink:light-dark(#fff,#202724); --al-gold:#f2b34a; }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
body { margin:0; color:var(--al-fg); background:var(--al-bg); font:16px/1.5 Arial,sans-serif; letter-spacing:0; }
button,input,textarea,select { font:inherit; color:inherit; }
button,.al-read { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; border:1px solid var(--al-line); border-radius:6px; background:var(--al-bg); padding:9px 14px; cursor:pointer; text-decoration:none; color:inherit; }
button:hover,.al-read:hover { background:var(--al-soft); }
:focus-visible { outline:2px solid var(--al-link); outline-offset:3px; }
button:disabled { opacity:.5; cursor:default; }
a { color:var(--al-link); text-underline-offset:3px; }
svg { width:16px; height:16px; flex-shrink:0; }
.al-icon { display:inline-flex; align-items:center; justify-content:center; }
.al-icon:has(svg) .al-icon-fallback { display:none; }
.al-icon-fallback { font-size:11px; }
.al-primary { color:var(--al-cta-ink); background:var(--al-red); border-color:var(--al-red); }
.al-primary:hover { background:var(--al-red); opacity:.85; }
.al-quiet { border-color:transparent; background:transparent; }
.al-header { display:flex; align-items:center; gap:12px 24px; padding:14px 24px; border-bottom:1px solid var(--al-line); }
.al-brand { border:0; padding:0; font-size:23px; font-weight:700; text-decoration:none; color:var(--al-fg); white-space:nowrap; }
.al-brand-dot { color:var(--al-red); }
.al-user { margin-left:auto; min-width:0; max-width:45%; display:flex; align-items:center; gap:8px; }
.al-identity { min-width:0; font-size:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--al-fg); text-decoration:none; }
.al-account { width:44px; height:44px; padding:0; flex-shrink:0; border-radius:50%; background:var(--al-soft); }
.al-account svg { width:22px; height:22px; }
.al-shell { position:relative; min-height:calc(100vh - 73px); }
[data-signed="true"] .al-shell { display:grid; grid-template-columns:184px minmax(0,1fr); }
.al-content { min-width:0; }
.al-main { width:100%; max-width:800px; padding:28px 24px 40px; margin:auto; min-height:530px; }
h1 { font-size:27px; line-height:1.25; font-weight:600; margin:0 0 8px; overflow-wrap:anywhere; }
h2 { font-size:18px; line-height:1.4; font-weight:600; margin:0 0 8px; }
h3 { font-size:16px; margin:0; line-height:1.45; font-weight:600; }
p { margin:8px 0 16px; overflow-wrap:anywhere; }
.al-muted { color:var(--al-muted); }
.al-small { font-size:13px; }
.al-row { display:flex; align-items:center; justify-content:space-between; gap:8px 16px; flex-wrap:wrap; }
.al-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.al-actions > button,.al-actions > .al-read { min-width:84px; }
label { display:block; font-weight:500; margin:0 0 6px; }
textarea,input,select { display:block; width:100%; min-width:0; background:var(--al-bg); border:1px solid var(--al-line); border-radius:6px; padding:11px 12px; font-size:16px; line-height:1.5; margin:6px 0 16px; }
textarea { resize:vertical; min-height:150px; }
.al-check { display:flex; align-items:center; gap:10px; }
.al-check input { width:20px; height:20px; margin:12px 0; flex-shrink:0; }
.al-welcome { max-width:660px; padding:8px 0 24px; margin:auto; }
.al-welcome h1 { font-size:30px; }
.al-welcome .al-lead { font-size:16px; color:var(--al-muted); margin-bottom:20px; }
.al-welcome textarea { min-height:88px; }
.al-welcome .al-primary { min-width:190px; }
.al-presets { display:flex; align-items:center; flex-wrap:wrap; gap:4px 8px; margin:0 0 14px; }
.al-presets button { min-height:32px; padding:4px 8px; font-size:12px; background:var(--al-soft); }
.al-presets [data-active="true"],.al-demo-topic strong { background:#fbe8b8; color:#202724; border-color:#d8b267; }
.al-demo { border-top:1px solid var(--al-line); padding-top:16px; margin-top:24px; }
.al-demo .al-row { margin-bottom:12px; flex-wrap:nowrap; }
.al-demo-topic { display:flex; flex-wrap:wrap; gap:8px; align-items:center; flex:1; min-height:40px; }
.al-demo-topic strong { padding:4px 8px; border-radius:4px; font-size:14px; }
.al-demo-list { position:relative; height:240px; }
.al-demo-paper { position:absolute; left:0; right:0; top:0; height:72px; padding:10px 12px; border:1px solid var(--al-line); border-radius:6px; background:var(--al-bg); display:grid; grid-template-columns:minmax(0,1fr) 52px; gap:12px; align-items:center; transition:transform 650ms cubic-bezier(.22,.61,.36,1); }
.al-demo-paper strong { font-size:14px; font-weight:600; overflow-wrap:anywhere; }
.al-demo-paper mark { background:#fbe8b8; color:#202724; padding:1px 3px; border-radius:2px; }
.al-demo-score { text-align:center; padding:8px 2px; border-radius:6px; font-weight:600; font-variant-numeric:tabular-nums; color:#000; }
[data-tone="high"] { background:#dce9ce; }
[data-tone="medium"] { background:#fbe8b8; }
[data-tone="low"] { background:#f7dcd5; }
.al-sort { display:flex; gap:3px; justify-content:flex-end; margin-left:auto; flex-shrink:0; }
.al-sort button { border:0; min-width:64px; }
.al-sort [aria-pressed="true"] { background:var(--al-soft); }
.al-heading { margin-bottom:18px; }
.al-heading h1 { margin:0; }
.al-feed-heading { flex-wrap:nowrap; gap:8px; }
.al-notice { color:var(--al-link); font-size:13px; margin:8px 0; }
.al-notice:empty { display:none; }
.al-error { color:var(--al-red); }
.al-paper { --al-assessment-height:72px; --al-vote-width:36px; padding:12px; border:1px solid var(--al-line); border-radius:6px; margin:8px 0; }
.al-paper-head { display:grid; grid-template-columns:minmax(0,1fr) max-content; gap:12px; align-items:start; }
.al-paper-copy { min-width:0; }
.al-paper-title { display:block; border:0; padding:0; background:transparent; min-height:0; text-align:left; line-height:1.35; font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.al-paper-title:hover { text-decoration:underline; background:transparent; }
.al-paper-meta { color:var(--al-muted); font-size:13px; line-height:1.4; display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:4px 0 6px; }
.al-paper-meta time { white-space:nowrap; }
.al-assessment { display:flex; align-items:stretch; gap:4px; width:calc(82px + var(--al-vote-width)); height:var(--al-assessment-height); }
button.al-score { display:flex; flex-direction:column; gap:0; justify-content:center; width:78px; height:100%; min-height:0; border:0; padding:8px 4px; text-align:center; color:#000; flex-shrink:0; }
button.al-score:hover { outline:1px solid var(--al-line); outline-offset:2px; }
.al-score b { display:block; font-size:27px; font-weight:600; line-height:1.2; font-variant-numeric:tabular-nums; }
.al-score small { font-size:12px; }
.al-score[data-tone="none"] { color:var(--al-muted); background:var(--al-soft); }
.al-score[data-tone="none"] b { font-size:12px; line-height:1.5; font-weight:400; }
.al-feedback { display:grid; grid-template-rows:repeat(2,minmax(0,1fr)); gap:4px; height:100%; }
.al-feedback button { width:var(--al-vote-width); height:100%; min-height:0; padding:0; color:var(--al-muted); border-color:transparent; }
.al-feedback [data-label="true"][aria-pressed="true"] { background:#dce9ce; color:#26361b; border-color:#a9bd97; }
.al-feedback [data-label="false"][aria-pressed="true"] { background:#f7dcd5; color:#822c22; border-color:#d99c90; }
.al-details { padding:10px 0 0; }
.al-details p { margin:0 0 8px; white-space:pre-wrap; }
.al-saved,.al-saved:hover { background:#dce9ce; border-color:#a9bd97; color:#26361b; }
.al-more { width:100%; margin-top:8px; min-height:52px; }
.al-read { min-width:84px; }
.al-sidebar { border-right:1px solid var(--al-line); padding:20px 12px; background:var(--al-bg); }
.al-sidebar nav,.al-project-nav-list { display:flex; flex-direction:column; gap:4px; }
.al-sidebar a,.al-sidebar nav button { display:flex; align-items:center; gap:8px; min-height:44px; justify-content:flex-start; text-align:left; border-color:transparent; padding:10px; font-size:14px; text-decoration:none; color:inherit; border-radius:6px; overflow-wrap:anywhere; }
.al-sidebar a:hover { background:var(--al-soft); }
.al-project-nav { border-top:1px solid var(--al-line); margin-top:16px; padding-top:12px; }
.al-project-nav h2 { margin:0; }
.al-project-nav-list a { min-width:0; }
.al-project-nav-list span { min-width:0; overflow-wrap:anywhere; }
.al-sidebar [aria-current="page"],.al-settings [aria-current="page"] { color:var(--al-link); background:var(--al-soft); box-shadow:inset 3px 0 var(--al-link); }
.al-nav-toggle,.al-nav-close { display:none; width:44px; padding:0; border:0; flex-shrink:0; }
.al-nav-backdrop { position:fixed; inset:0; width:100%; height:100%; border:0; border-radius:0; padding:0; background:#20272455; z-index:20; }
.al-icon-button { width:44px; padding:0; flex-shrink:0; }
.al-popover { position:fixed; z-index:40; width:280px; max-width:calc(100vw - 16px); max-height:calc(100dvh - 16px); overflow:auto; padding:12px; border:1px solid var(--al-line); border-radius:6px; background:var(--al-bg); box-shadow:0 8px 30px #0002; font-size:14px; }
.al-popover h3 { font-size:14px; }
.al-project-option { width:100%; border:0; text-align:left; justify-content:flex-start; margin-top:4px; overflow-wrap:anywhere; }
.al-project-option span { min-width:0; }
.al-settings { display:grid; grid-template-columns:160px minmax(0,1fr); gap:32px; margin-top:24px; }
.al-settings nav { display:flex; flex-direction:column; gap:4px; align-self:start; }
.al-settings nav button { justify-content:flex-start; border:0; text-align:left; font-size:14px; }
.al-settings-content { min-width:0; }
.al-section { padding:22px 0; border-bottom:1px solid var(--al-line); }
.al-entry-form { padding:16px 0; border-top:1px solid var(--al-line); border-bottom:1px solid var(--al-line); margin-bottom:16px; }
.al-account-form { max-width:480px; margin:12px auto 40px; }
.al-project-card { position:relative; margin:10px 0; border:1px solid var(--al-line); border-radius:6px; }
.al-project-open { width:100%; padding:16px 64px 16px 16px; display:block; text-decoration:none; color:inherit; min-height:100px; }
.al-project-open strong { display:block; margin-bottom:6px; overflow-wrap:anywhere; }
.al-project-options { position:absolute; right:10px; top:12px; width:44px; padding:0; border:0; }
.al-reviewer-card,.al-resource { padding:12px; margin:8px 0; border:1px solid var(--al-line); border-radius:6px; }
.al-resource p { white-space:pre-wrap; margin:6px 0; }
.al-resource a { overflow-wrap:anywhere; }
.al-resource-tools { display:flex; gap:4px; margin-left:auto; }
.al-resource-tools button { width:44px; padding:0; border:0; }
.al-resource-footer { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:8px; border-top:1px solid var(--al-line); padding-top:6px; }
.al-project-group { padding:20px 0 8px; }
.al-project-group + .al-project-group { border-top:1px solid var(--al-line); margin-top:12px; }
.al-project-group > h2 { margin-bottom:10px; }
.al-project-item { --al-kind:light-dark(#526544,#c5d5af); border-left:3px solid var(--al-kind); }
.al-project-item[data-kind="note"] { --al-kind:light-dark(#93650d,#efc779); }
.al-project-item[data-kind="link"] { --al-kind:light-dark(#287889,#91cdd8); }
.al-project-item[data-kind="reviewer"] { --al-kind:light-dark(#ad4e3b,#eeb09d); }
.al-kind-label { display:flex; align-items:center; gap:6px; font-size:12px; color:var(--al-kind); margin-bottom:8px; }
.al-list-add { width:100%; justify-content:flex-start; margin:8px 0; border-style:dashed; color:var(--al-link); }
.al-search-line { display:flex; align-items:stretch; gap:8px; margin:8px 0 24px; }
.al-search-line input { margin:0; flex:1; }
.al-footer { width:100%; max-width:800px; margin:auto; display:flex; flex-wrap:wrap; gap:20px; align-items:center; padding:12px 24px; border-top:1px solid var(--al-line); font-size:12px; color:var(--al-muted); }
.al-sr-only,.al-skip:not(:focus) { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.al-public { max-width:800px; min-height:calc(100vh - 150px); }
.al-public-status { max-width:800px; margin:auto; padding:0 24px; }
.al-public .al-section { padding:24px 0; }
.al-public a,.al-profile-list { overflow-wrap:anywhere; }
.al-profile-bio { white-space:pre-wrap; }
.al-profile-list { margin:0; padding:0; list-style:none; }
.al-profile-list li { padding:10px 0; }
.al-profile-list p { margin:4px 0; }
.al-public pre { max-width:100%; overflow:auto; padding:12px; background:var(--al-soft); font-size:13px; }
.al-skip:focus { position:absolute; z-index:50; background:var(--al-bg); padding:12px; }
@media(max-width:720px) {
  [data-signed="true"] .al-shell { display:block; }
  .al-nav-toggle,.al-nav-close { display:inline-flex; }
  .al-sidebar { display:none; }
  [data-nav-open="true"] .al-sidebar { display:block; position:fixed; z-index:30; inset:0 auto 0 0; width:min(260px,100% - 44px); overflow:auto; padding:12px; box-shadow:6px 0 20px #0002; }
  .al-nav-close { margin:0 0 8px auto; display:flex; }
}
@media(max-width:600px) {
  .al-header { padding:12px 16px; gap:8px; }
  .al-main { padding:22px 16px 28px; }
  h1 { font-size:24px; }
  .al-welcome h1 { font-size:27px; }
  .al-welcome { padding:8px 0 0; }
  .al-welcome .al-primary { width:100%; }
  .al-sort button { padding:8px 10px; }
  .al-demo-list { height:288px; }
  .al-demo-paper { height:88px; }
  .al-settings { grid-template-columns:minmax(0,1fr); gap:20px; }
  .al-settings nav { flex-direction:row; flex-wrap:wrap; border-bottom:1px solid var(--al-line); padding-bottom:8px; }
  .al-settings nav button { flex:1; justify-content:center; }
}
@media(max-width:480px) {
  .al-paper-head { grid-template-columns:minmax(0,1fr) 126px; gap:4px 12px; }
  .al-paper-copy { display:contents; }
  .al-paper-title,.al-paper-meta { grid-column:1/-1; }
  .al-paper-meta { margin:0 0 4px; }
  .al-assessment { grid-column:2; grid-row:3; }
  .al-paper-copy > .al-actions { grid-column:1; grid-row:3; flex-direction:column; align-items:flex-start; gap:4px; }
  .al-paper-copy > .al-actions > * { width:84px; padding-left:8px; padding-right:8px; }
}
@media(max-width:480px),(pointer:coarse) { .al-paper { --al-assessment-height:92px; --al-vote-width:44px; } }
@media(pointer:coarse) { .al-presets button { min-height:44px; } }
@media(max-width:400px) {
  .al-header { padding:10px 8px; gap:4px; }
  .al-brand { font-size:18px; flex:0 0 auto; }
  .al-user { gap:4px; flex:1 1 0; max-width:110px; min-width:44px; }
  .al-identity { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .al-demo-paper { transition:none; } }
