:root{--raised:var(--panel);--stage:var(--panel);--line-strong:var(--line);--banana:var(--accent);--on-banana:#fff;--banana-edge:var(--accent);--wordmark:var(--fg);--dim:var(--line);--good:var(--accent);--info:var(--accent);--extra:var(--muted);--font:inherit;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--voice-body:normal;--voice-mono:normal;--voice-display:normal;--voice-button:normal;--mark-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8.8 2.2L15.2 2.2A0.35 0.35 0 0 1 15.55 2.55L15.55 5.65A0.35 0.35 0 0 1 15.2 6L8.8 6A0.35 0.35 0 0 1 8.45 5.65L8.45 2.55A0.35 0.35 0 0 1 8.8 2.2ZM15.23 6L15.33 5.97L15.42 5.92L15.49 5.84L15.54 5.72L15.55 4.35L14.94 4.71L14.69 4.93L14.59 5.05L14.42 5.32L14.36 5.47L14.27 5.78L14.25 6ZM18.89 4.33L22.09 9.87A0.35 0.35 0 0 1 21.96 10.35L19.27 11.9A0.35 0.35 0 0 1 18.8 11.77L15.6 6.23A0.35 0.35 0 0 1 15.72 5.75L18.41 4.2A0.35 0.35 0 0 1 18.89 4.33ZM18.81 11.8L18.89 11.87L18.98 11.92L19.08 11.95L19.21 11.93L20.4 11.25L19.78 10.9L19.47 10.8L19.31 10.77L18.99 10.76L18.83 10.78L18.52 10.86L18.32 10.95ZM22.09 14.13L18.89 19.67A0.35 0.35 0 0 1 18.41 19.8L15.72 18.25A0.35 0.35 0 0 1 15.6 17.77L18.8 12.23A0.35 0.35 0 0 1 19.27 12.1L21.96 13.65A0.35 0.35 0 0 1 22.09 14.13ZM15.58 17.8L15.55 17.9L15.55 18L15.59 18.1L15.67 18.21L16.85 18.9L16.84 18.19L16.78 17.87L16.72 17.72L16.57 17.43L16.48 17.3L16.25 17.07L16.07 16.95ZM15.2 21.8L8.8 21.8A0.35 0.35 0 0 1 8.45 21.45L8.45 18.35A0.35 0.35 0 0 1 8.8 18L15.2 18A0.35 0.35 0 0 1 15.55 18.35L15.55 21.45A0.35 0.35 0 0 1 15.2 21.8ZM8.77 18L8.67 18.03L8.58 18.08L8.51 18.16L8.46 18.28L8.45 19.65L9.06 19.29L9.31 19.07L9.41 18.95L9.58 18.68L9.64 18.53L9.73 18.22L9.75 18ZM5.11 19.67L1.91 14.13A0.35 0.35 0 0 1 2.04 13.65L4.73 12.1A0.35 0.35 0 0 1 5.2 12.23L8.4 17.77A0.35 0.35 0 0 1 8.28 18.25L5.59 19.8A0.35 0.35 0 0 1 5.11 19.67ZM5.19 12.2L5.11 12.13L5.02 12.08L4.92 12.05L4.79 12.07L3.6 12.75L4.22 13.1L4.53 13.2L4.69 13.23L5.01 13.24L5.17 13.22L5.48 13.14L5.68 13.05ZM1.91 9.87L5.11 4.33A0.35 0.35 0 0 1 5.59 4.2L8.28 5.75A0.35 0.35 0 0 1 8.4 6.23L5.2 11.77A0.35 0.35 0 0 1 4.73 11.9L2.04 10.35A0.35 0.35 0 0 1 1.91 9.87ZM8.42 6.2L8.45 6.1L8.45 6L8.41 5.9L8.33 5.79L7.15 5.1L7.16 5.81L7.22 6.13L7.28 6.28L7.43 6.57L7.52 6.7L7.75 6.93L7.93 7.05ZM8.6 12A3.4 3.4 0 1 1 15.4 12A3.4 3.4 0 1 1 8.6 12ZM10.7 12A1.3 1.3 0 1 0 13.3 12A1.3 1.3 0 1 0 10.7 12Z'/%3E%3C/svg%3E");--mark-mask-full:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8.8 1.95L15.2 1.95A0.6 0.6 0 0 1 15.8 2.55L15.8 5.65A0.6 0.6 0 0 1 15.2 6.25L8.8 6.25A0.6 0.6 0 0 1 8.2 5.65L8.2 2.55A0.6 0.6 0 0 1 8.8 1.95ZM15.26 6.25L15.43 6.2L15.58 6.11L15.7 5.98L15.77 5.82L15.8 5.65L15.8 4.49L15.2 4.84L14.98 5L14.71 5.31L14.55 5.69L14.5 5.96L14.51 6.25ZM9.62 3A0.42 0.42 0 0 0 9.2 3.43L9.2 3.43A0.42 0.42 0 0 0 9.62 3.85L13.14 3.85A0.42 0.42 0 0 0 13.57 3.43L13.57 3.43A0.42 0.42 0 0 0 13.14 3ZM9.62 4.4A0.42 0.42 0 0 0 9.2 4.83L9.2 4.83A0.42 0.42 0 0 0 9.62 5.25L11.55 5.25A0.42 0.42 0 0 0 11.97 4.83L11.97 4.83A0.42 0.42 0 0 0 11.55 4.4ZM19.1 4.2L22.3 9.75A0.6 0.6 0 0 1 22.08 10.57L19.4 12.12A0.6 0.6 0 0 1 18.58 11.9L15.38 6.35A0.6 0.6 0 0 1 15.6 5.53L18.28 3.98A0.6 0.6 0 0 1 19.1 4.2ZM18.61 11.95L18.73 12.07L18.89 12.16L19.06 12.19L19.24 12.18L19.4 12.12L20.4 11.54L19.8 11.19L19.55 11.08L19.15 11L18.74 11.05L18.48 11.15L18.24 11.3ZM18.61 5.44A0.42 0.42 0 0 0 18.03 5.29L18.03 5.29A0.42 0.42 0 0 0 17.87 5.87L19.63 8.91A0.42 0.42 0 0 0 20.21 9.07L20.21 9.07A0.42 0.42 0 0 0 20.37 8.49ZM17.39 6.14A0.42 0.42 0 0 0 16.81 5.99L16.81 5.99A0.42 0.42 0 0 0 16.66 6.57L17.62 8.23A0.42 0.42 0 0 0 18.2 8.39L18.2 8.39A0.42 0.42 0 0 0 18.36 7.81ZM22.3 14.25L19.1 19.8A0.6 0.6 0 0 1 18.28 20.02L15.6 18.47A0.6 0.6 0 0 1 15.38 17.65L18.58 12.1A0.6 0.6 0 0 1 19.4 11.88L22.08 13.43A0.6 0.6 0 0 1 22.3 14.25ZM15.35 17.7L15.3 17.87L15.31 18.04L15.36 18.21L15.46 18.36L15.6 18.47L16.6 19.04L16.6 18.35L16.57 18.08L16.43 17.69L16.19 17.36L15.98 17.19L15.72 17.05ZM20.98 14.44A0.42 0.42 0 0 0 20.83 13.86L20.83 13.86A0.42 0.42 0 0 0 20.25 14.02L18.49 17.06A0.42 0.42 0 0 0 18.64 17.65L18.64 17.65A0.42 0.42 0 0 0 19.22 17.49ZM19.77 13.74A0.42 0.42 0 0 0 19.61 13.16L19.61 13.16A0.42 0.42 0 0 0 19.03 13.32L18.07 14.98A0.42 0.42 0 0 0 18.23 15.56L18.23 15.56A0.42 0.42 0 0 0 18.81 15.41ZM15.2 22.05L8.8 22.05A0.6 0.6 0 0 1 8.2 21.45L8.2 18.35A0.6 0.6 0 0 1 8.8 17.75L15.2 17.75A0.6 0.6 0 0 1 15.8 18.35L15.8 21.45A0.6 0.6 0 0 1 15.2 22.05ZM8.74 17.75L8.57 17.8L8.42 17.89L8.3 18.02L8.23 18.18L8.2 18.35L8.2 19.51L8.8 19.16L9.02 19L9.29 18.69L9.45 18.31L9.5 18.04L9.49 17.75ZM14.38 21A0.42 0.42 0 0 0 14.8 20.57L14.8 20.57A0.42 0.42 0 0 0 14.38 20.15L10.86 20.15A0.42 0.42 0 0 0 10.43 20.57L10.43 20.57A0.42 0.42 0 0 0 10.86 21ZM14.38 19.6A0.42 0.42 0 0 0 14.8 19.18L14.8 19.18A0.42 0.42 0 0 0 14.38 18.75L12.45 18.75A0.42 0.42 0 0 0 12.03 19.18L12.03 19.18A0.42 0.42 0 0 0 12.45 19.6ZM4.9 19.8L1.7 14.25A0.6 0.6 0 0 1 1.92 13.43L4.6 11.88A0.6 0.6 0 0 1 5.42 12.1L8.62 17.65A0.6 0.6 0 0 1 8.4 18.47L5.72 20.02A0.6 0.6 0 0 1 4.9 19.8ZM5.39 12.05L5.27 11.93L5.11 11.84L4.94 11.81L4.76 11.82L4.6 11.88L3.6 12.46L4.2 12.81L4.45 12.92L4.85 13L5.26 12.95L5.52 12.85L5.76 12.7ZM5.39 18.56A0.42 0.42 0 0 0 5.97 18.71L5.97 18.71A0.42 0.42 0 0 0 6.13 18.13L4.37 15.09A0.42 0.42 0 0 0 3.79 14.93L3.79 14.93A0.42 0.42 0 0 0 3.63 15.51ZM6.61 17.86A0.42 0.42 0 0 0 7.19 18.01L7.19 18.01A0.42 0.42 0 0 0 7.34 17.43L6.38 15.77A0.42 0.42 0 0 0 5.8 15.61L5.8 15.61A0.42 0.42 0 0 0 5.64 16.19ZM1.7 9.75L4.9 4.2A0.6 0.6 0 0 1 5.72 3.98L8.4 5.53A0.6 0.6 0 0 1 8.62 6.35L5.42 11.9A0.6 0.6 0 0 1 4.6 12.12L1.92 10.57A0.6 0.6 0 0 1 1.7 9.75ZM8.65 6.3L8.7 6.13L8.69 5.96L8.64 5.79L8.54 5.64L8.4 5.53L7.4 4.96L7.4 5.65L7.43 5.92L7.57 6.31L7.81 6.64L8.02 6.81L8.28 6.95ZM3.02 9.56A0.42 0.42 0 0 0 3.17 10.14L3.17 10.14A0.42 0.42 0 0 0 3.75 9.98L5.51 6.94A0.42 0.42 0 0 0 5.36 6.35L5.36 6.35A0.42 0.42 0 0 0 4.78 6.51ZM4.23 10.26A0.42 0.42 0 0 0 4.39 10.84L4.39 10.84A0.42 0.42 0 0 0 4.97 10.68L5.93 9.02A0.42 0.42 0 0 0 5.77 8.44L5.77 8.44A0.42 0.42 0 0 0 5.19 8.59ZM8.6 12A3.4 3.4 0 1 1 15.4 12A3.4 3.4 0 1 1 8.6 12ZM10.7 12A1.3 1.3 0 1 0 13.3 12A1.3 1.3 0 1 0 10.7 12Z'/%3E%3C/svg%3E")}.rail h1:before,#rail h1:before,.stages li:before,.nextbar:before,.tile.add:before,.gate>.bar:before,.composer:before,.set-theme>button[aria-pressed=true]:before{content:"";width:1.05em;height:1.05em;-webkit-mask:var(--mark-mask) no-repeat center / contain;-webkit-mask:var(--mark-mask) no-repeat center / contain;mask:var(--mark-mask) no-repeat center / contain;background:currentColor;flex:none;align-self:center;display:inline-block}.rail h1,#rail h1{letter-spacing:-.005em;font-variation-settings:var(--voice-display);color:var(--wordmark);align-items:center;gap:8px;margin:0 0 4px;font-size:23px;font-weight:750;display:flex}.rail h1:before,#rail h1:before{color:var(--banana);-webkit-mask-image:var(--mark-mask-full);-webkit-mask-image:var(--mark-mask-full);mask-image:var(--mark-mask-full);font-size:26px}.railhead{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:500;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);margin:16px 0 5px;display:block}.course{gap:4px;font-size:12px;display:grid}.course .path{word-break:break-all;color:var(--fg);-webkit-line-clamp:3;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.course .muted{font-size:11px}.course button{justify-self:start;margin-top:2px;padding:4px 11px;font-size:12px}#rail-deck{background:var(--bg);width:100%;color:var(--fg);border:1px solid var(--line);font:inherit;font-size:13px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:6px;padding:8px 10px}#rail-deck:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px;border-color:var(--banana-edge)}.stages{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);margin:6px 0;padding:0;list-style:none}.stages li{color:var(--muted);cursor:pointer;border-left:3px solid #0000;border-radius:0 6px 6px 0;align-items:center;gap:9px;padding:5px 8px;font-size:13px;display:flex}.stages li:before{color:var(--dim)}.stages li .sname{flex:1}.stages li .sstate{letter-spacing:.08em;font-size:10.5px}.stages li:hover{color:var(--fg);background:var(--raised)}.stages li:focus-visible{outline:2px solid var(--banana-edge);outline-offset:-2px}.stages li.done:before{color:var(--good)}.stages li.on{color:var(--fg);border-left-color:var(--banana);background:var(--raised)}.stages li.next{color:var(--fg);font-weight:600}.stages li.next:before,.stages li.on:before{color:var(--banana)}.stages li.next .sstate:before{content:"next";color:var(--accent)}.stages li.running{color:var(--fg)}.stages li.running:before{color:var(--warn)}.stages li.running .sstate:before{content:"running…";color:var(--warn)}.library{align-content:start;display:grid}.lib{gap:1px;margin:4px 0 0;padding:0;list-style:none;display:grid}.lib button,.lopen{text-align:left;width:100%;padding:5px 8px 5px calc(8px + var(--depth,0) * 14px);color:var(--muted);font-family:var(--font-mono);font-variation-settings:var(--voice-mono);background:0 0;border:0;border-left:3px solid #0000;border-radius:0 6px 6px 0;align-items:baseline;gap:8px;font-size:13px;font-weight:400;display:flex}.lib button:hover,.lopen:hover{color:var(--fg);background:var(--raised);filter:none}.lib button.on{color:var(--fg);border-left-color:var(--banana);background:var(--raised);font-weight:600}.lib .lall{color:var(--fg)}.lname{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.lcount{color:var(--muted);font-size:11px;font-weight:400}.lnewfolder{color:var(--accent);background:0 0;border:0;border-radius:6px;justify-self:start;margin:6px 0 0 3px;padding:3px 8px;font-size:12px;font-weight:500}.lnewfolder:hover{background:var(--raised);filter:none}.lopen{color:var(--fg);border-left-color:var(--banana-edge)}.railfoot{border-top:1px solid var(--line);gap:9px;margin-top:auto;padding-top:16px;font-size:12px;display:grid}.railfoot button{justify-self:start}.conns{gap:3px;margin:0;padding:0;list-style:none;display:grid}.conn{color:var(--muted);align-items:flex-start;gap:7px;display:flex}.conn-dot{border:1.5px solid var(--muted);border-radius:50%;flex:none;width:8px;height:8px;margin-top:5px}.conn-note{color:var(--accent);display:block}.conn[data-tone=on]{color:var(--fg)}.conn[data-tone=on] .conn-dot{background:var(--good);border-color:var(--good)}.conn[data-tone=busy] .conn-dot,.conn[data-tone=warn] .conn-dot{background:var(--warn);border-color:var(--warn)}.conn[data-tone=busy] .conn-dot{animation:1.4s ease-in-out infinite nb-pulse}.conn[data-tone=bad]{color:var(--bad)}.conn[data-tone=bad] .conn-dot{background:var(--bad);border-color:var(--bad)}@media (prefers-reduced-motion:reduce){.conn[data-tone=busy] .conn-dot{animation:none}}.status{color:var(--muted);word-break:break-word;font-size:11px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);align-items:flex-start;gap:8px;display:flex}.status-text{flex:1;min-width:0}.status.error{color:var(--bad);max-height:10em;padding:8px 10px;overflow:auto}.status-x{color:inherit;background:0 0;border-radius:4px;flex:none;margin:-3px -5px 0 0;padding:1px 5px;font-size:15px;font-weight:400;line-height:1;position:sticky;top:0}.status-x:hover{background:color-mix(in srgb, var(--bad) 15%, transparent);filter:none}.nextbar{background:var(--banana);color:var(--on-banana);border-bottom:1px solid var(--banana-edge);flex:none;align-items:center;gap:18px;padding:14px 22px;display:flex}.nextbar:before{font-size:30px}.nb-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.nb-k{letter-spacing:.18em;text-transform:uppercase;font-size:10.5px;font-weight:600;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);color:color-mix(in srgb, var(--on-banana) 62%, var(--banana))}.nb-text strong{letter-spacing:-.01em;font-variation-settings:var(--voice-display);font-size:21px;font-weight:700}.nb-hint{color:color-mix(in srgb, var(--on-banana) 82%, var(--banana));font-size:13px}.nb-actions{flex:none;gap:8px;display:flex}.nextbar:has(.nb-spin):before{display:none}.nb-spin{border:3px solid color-mix(in srgb, var(--on-banana) 25%, transparent);border-top-color:var(--on-banana);border-radius:50%;flex:none;width:22px;height:22px;animation:.9s linear infinite nb-spin}@keyframes nb-spin{to{transform:rotate(360deg)}}.nb-run{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);color:var(--on-banana);flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.nb-elapsed{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.nb-idle{color:color-mix(in srgb, var(--on-banana) 70%, var(--banana));font-size:11px}.nb-idle:empty{display:none}.nb-idle.stalled{color:var(--bad);font-weight:600}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stages li.running:before{animation:1.4s ease-in-out infinite nb-pulse}@keyframes nb-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.nb-spin,.stages li.running:before{animation:none}.nb-spin{border-top-color:var(--on-banana);opacity:.8}}.nextbar button{background:var(--on-banana);min-height:44px;color:var(--banana);font-size:14.5px}.nextbar button.quiet,.nextbar button.ghost{color:var(--on-banana);border:1.5px solid var(--on-banana);background:0 0}.nextbar button.quiet:hover,.nextbar button.ghost:hover{background:color-mix(in srgb, var(--on-banana) 12%, transparent)}.crumb{background:var(--panel);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:12px;min-width:0;padding:7px 16px;font-size:12.5px;display:flex}.crumb-back{color:var(--fg);border:1px solid var(--line-strong);background:0 0;border-radius:15px;flex:none;padding:4px 12px 4px 10px;font-size:12px;font-weight:600}.crumb-back:hover{background:var(--raised);border-color:var(--banana-edge);filter:none}.crumb-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-family:var(--font-mono);font-variation-settings:var(--voice-mono);overflow:hidden}.crumb-path i{opacity:.55;margin:0 2px;font-style:normal}.crumb-path strong{color:var(--fg);font-weight:600}.home-pane,.settings-pane,.school-pane{max-width:78ch;padding:8px 4px}.home h2,.settings-pane h2{letter-spacing:-.015em;font-variation-settings:var(--voice-display);margin:0 0 6px;font-size:28px;font-weight:700}.home p{color:var(--muted);margin:0 0 14px}.home h2 i{color:var(--muted);margin:0 10px;font-style:normal;font-weight:400}.home h2 .tcrumb{color:var(--muted);font:inherit;font-variation-settings:var(--voice-display);background:0 0;border:0;border-radius:6px;padding:0;font-weight:600}.home h2 .tcrumb:hover{color:var(--fg);text-underline-offset:4px;filter:none;text-decoration:underline}.setup-row{flex-wrap:wrap;align-items:center;gap:12px;margin:6px 0 14px;display:flex}.setup-row input,.newdeck input{background:var(--panel);min-width:260px;color:var(--fg);border:1px solid var(--line);font:inherit;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:8px;flex:1;padding:11px 13px;font-size:13.5px}.setup-row input:focus-visible,.newdeck input:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px;border-color:var(--banana-edge)}.big{border-radius:9px;min-height:44px;padding:12px 20px;font-size:15px}.home-steps{color:var(--muted);margin:18px 0 0;padding-left:1.4em;font-size:13px}.home-steps li{margin:4px 0}.home-steps li::marker{color:var(--banana-edge)}.settings-pane .bar{background:var(--panel);border-radius:10px;margin-bottom:8px}.set-section{border-top:1px solid var(--line);padding:16px 4px}.set-section:first-of-type{border-top:0}.set-section h3{font-variation-settings:var(--voice-display);margin:0 0 4px;font-size:17px;font-weight:650}.hint{color:var(--muted);margin:4px 0 12px;font-size:13px}.facts{font-size:12.5px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 8px;display:grid}.facts dt{color:var(--muted)}.facts dd{word-break:break-all;margin:0}.set-contact{align-items:center;gap:10px;margin:8px 0 0;display:flex}.set-contact .path{-webkit-user-select:text;user-select:text;font-variation-settings:var(--voice-mono)}.set-update{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:10px 0 0;display:flex}.set-update .hint{margin:0}.set-theme{background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:0;padding:3px;display:inline-flex}.set-theme>button{min-height:36px;color:var(--muted);background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;padding:8px 15px;font-weight:500;display:inline-flex}.set-theme>button:hover{background:var(--raised);filter:none}.set-theme>button[aria-pressed=true]{background:var(--banana);color:var(--on-banana);font-weight:600}.newdeck{flex-wrap:wrap;gap:10px;margin:0 0 10px;display:flex}.dtools{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 0;display:flex}.dtools input[type=search]{background:var(--panel);min-width:200px;color:var(--fg);border:1px solid var(--line);font:inherit;border-radius:8px;flex:1;padding:8px 12px;font-size:13px}.dtools input[type=search]:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px;border-color:var(--banana-edge)}.dsort{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:3px;display:inline-flex}.dsort>button{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:5px 11px;font-size:12px;font-weight:500}.dsort>button:hover{background:var(--raised);filter:none}.dsort>button[aria-pressed=true]{background:var(--banana);color:var(--on-banana);font-weight:600}.dnotice{background:var(--raised);border:1px solid var(--line-strong);border-radius:9px;align-items:center;gap:12px;margin:14px 0 0;padding:8px 8px 8px 14px;font-size:13px;display:flex}.dnotice>span{flex:1}.materials .dnotice{margin:0 0 10px}.dnotice>button.quiet{color:var(--fg);padding:5px 12px}.dnotice .dclose{color:var(--muted);background:0 0;padding:2px 8px;font-size:16px;font-weight:400}.dnotice .dclose:hover{color:var(--fg);filter:none}.dgroup{margin:16px 0 0}.dfolder{align-items:center;gap:8px;min-height:32px;display:flex}.dfold{min-width:0;color:var(--fg);font-family:var(--font-mono);font-variation-settings:var(--voice-mono);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:4px 6px 4px 2px;font-size:13px;font-weight:600;display:inline-flex}.dfold:hover{background:var(--raised);filter:none}.dfold .dpath{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dfold .dsep{color:var(--muted);margin:0 1px;font-style:normal;font-weight:400}.dfold .dn{color:var(--muted);font-size:11.5px;font-weight:400}.dchev{border:4.5px solid #0000;border-left:6px solid var(--muted);transform-origin:3px;width:0;height:0;margin-left:4px;transition:transform .12s}.dfold[aria-expanded=true] .dchev{transform:rotate(90deg)}.dfolder-acts{opacity:0;gap:6px;margin-left:auto;transition:opacity .12s;display:inline-flex}.dfolder:hover .dfolder-acts,.dfolder:focus-within .dfolder-acts{opacity:1}.dfolder-acts button{border-radius:14px;padding:3px 10px;font-size:11.5px}@media (hover:none){.dfolder-acts{opacity:1}}.decks{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.dtree{margin-top:8px}.dtree>.dgroup:first-child,.dkids>.dgroup:first-child{margin-top:10px}.dkids{border-left:1px solid var(--line-strong);margin:4px 0 0 9px;padding-left:14px}.dkids>.decks:first-child{margin-top:6px}.dgroup .dgroup{margin-top:10px}.dempty{color:var(--muted);margin:6px 0 2px;font-size:12.5px}.dnewfolder{padding:10px 0 4px}.dfolder-acts button.danger{color:var(--bad)}.decks li{background:var(--panel);border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr max-content;align-items:stretch;display:grid;position:relative}.decks li:hover{border-color:var(--banana-edge);background:var(--raised)}.decks li:focus-within{border-color:var(--banana-edge)}.decks li.empty{cursor:default;color:var(--muted);grid-template-columns:1fr;padding:13px 17px}.decks li.empty:hover{border-color:var(--line);background:var(--panel)}.dopen{color:var(--fg);text-align:left;font-variation-settings:var(--voice-body);background:0 0;border:0;border-radius:10px 0 0 10px;grid-template-columns:1fr max-content;align-items:center;gap:4px 18px;min-width:0;padding:13px 4px 13px 17px;font-size:14px;font-weight:400;display:grid}.dopen:hover{filter:none}.dopen:focus-visible{outline:2px solid var(--banana-edge);outline-offset:-2px}.decks li strong{font-variation-settings:var(--voice-display);text-overflow:ellipsis;white-space:nowrap;font-size:16.5px;font-weight:650;overflow:hidden}.decks .dmeta{color:var(--muted);font-size:12px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);grid-column:1}.decks .dkick{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);grid-column:1;margin-bottom:-2px;overflow:hidden}.decks .dkick .dsep{opacity:.6;font-style:normal}.dopen-tag{vertical-align:3px;background:var(--banana);color:var(--on-banana);font-variation-settings:var(--voice-button);letter-spacing:.02em;border-radius:10px;margin-left:9px;padding:1px 8px;font-size:10.5px;font-weight:600;display:inline-block}.decks li.current{border-color:var(--banana-edge)}.decks .dstate{color:var(--accent);grid-column:1;font-size:13px;font-weight:500}.dmore{color:var(--muted);letter-spacing:.12em;background:0 0;border:0;border-radius:7px;align-self:center;margin-right:8px;padding:6px 9px;font-size:10px;font-weight:700}.dmore:hover,.dmore[aria-expanded=true]{background:var(--stage);color:var(--fg);filter:none}.dmenu{z-index:5;background:var(--panel);border:1px solid var(--line-strong);min-width:210px;max-height:320px;box-shadow:0 10px 28px color-mix(in srgb, var(--fg) 16%, transparent);border-radius:10px;padding:5px;display:grid;position:absolute;top:calc(100% - 10px);right:10px;overflow:auto}.dmenu>button{color:var(--fg);text-align:left;background:0 0;border:0;border-radius:6px;padding:7px 10px;font-size:13px;font-weight:500}.dmenu>button:hover,.dmenu>button:focus-visible{background:var(--raised);filter:none;outline:none}.dmenu>button:disabled{opacity:1;color:var(--muted)}.dmenu>button:disabled:after{content:" ✓";color:var(--good)}.dmenu>button[data-move]{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);font-size:12.5px}.dmenu>button[data-move] em{color:var(--muted);font-style:normal;font-family:var(--font);font-variation-settings:var(--voice-body)}.dmenu .dsep{color:var(--muted);font-style:normal}.dmenu>button.danger{color:var(--bad)}.dmenu-head{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:10px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);padding:5px 10px 4px}.dedit{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;padding:10px 12px;display:flex}.dfolder.editing .dedit{flex:1;padding:4px 0}.dedit input{background:var(--bg);min-width:220px;color:var(--fg);border:1px solid var(--banana-edge);font:inherit;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:7px;flex:1;padding:8px 11px;font-size:13.5px}.dedit input:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px}.dedit .hint{flex-basis:100%;margin:0;font-size:12px}.decks li.editing{cursor:default}.decks li.editing:hover{background:var(--panel)}.dsteps{grid-area:1/2/-1;justify-self:end;align-items:center;gap:9px;display:flex}.dtrack{background:var(--dim);border-radius:3px;width:116px;height:6px;position:relative}.dtrack>i{background:var(--good);border-radius:3px;position:absolute;inset:0 auto 0 0}.dsteps .dmark{background:var(--dim);width:17px;height:17px;-webkit-mask:var(--mark-mask) no-repeat center / contain;-webkit-mask:var(--mark-mask) no-repeat center / contain;mask:var(--mark-mask) no-repeat center / contain;flex:none}.dsteps.started .dmark{background:var(--banana)}.dsteps.finished .dmark{background:var(--good)}.dsteps .dcount{color:var(--muted);white-space:nowrap;width:42px;font-size:11.5px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono)}.materials{flex:none}.mhead{align-items:center;gap:10px;margin:0 0 9px;display:flex}.mhead h3{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:10px;font-weight:500;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);margin:0}.mhead h3 small{text-transform:none;letter-spacing:0;margin-left:8px;font-weight:400}.tiles{flex-wrap:wrap;gap:8px;display:flex}.shelf{flex-basis:100%;grid-template-columns:150px 1fr;align-items:start;gap:8px 12px;display:grid}.shelf:not(:has(.shelf-label)){grid-template-columns:1fr}.shelf-tiles{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.shelf-tiles:empty{display:none}.shelf-label{color:var(--muted);white-space:nowrap;font-size:11px;line-height:1.3;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);padding-top:8px}.shelf-label small{color:var(--dim);margin-left:4px;font-size:11px}.shelf.made .shelf-label{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;align-items:baseline;gap:6px;padding:8px 0 0;font-weight:400;display:inline-flex}.shelf.made .shelf-label:before{content:"▸";font-size:9px;transition:transform .12s}.shelf.made .shelf-label[aria-expanded=true]:before{transform:rotate(90deg)}.shelf.made .shelf-label:hover{color:var(--fg);filter:none}.shelf.made .tile{border-style:dashed}@media (width<=640px){.shelf{grid-template-columns:1fr;gap:4px}}.tile{background:var(--panel);border:1px solid var(--line);min-height:32px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:16px;align-items:baseline;gap:8px;padding:6px 30px 6px 12px;font-size:12px;display:inline-flex;position:relative}.tile .tkind{color:var(--info);font-weight:600}.tile.kind-pdf .tkind{color:var(--bad)}.tile.kind-text .tkind{color:var(--info)}.tile.kind-doc .tkind,.tile.kind-slides .tkind{color:var(--extra)}.tile.kind-image .tkind,.tile.kind-video .tkind,.tile.kind-audio .tkind{color:var(--good)}.tile .tname{text-overflow:ellipsis;white-space:nowrap;max-width:30ch;font-weight:500;overflow:hidden}.tile .tmeta{color:var(--muted)}.tile .tremove{color:var(--muted);background:0 0;border:0;border-radius:10px;padding:0 4px;font-size:15px;font-weight:400;line-height:1;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.tile .tremove:hover{color:var(--bad);filter:none;background:0 0}.tile.add{border-style:dashed;border-color:var(--line-strong);cursor:pointer;color:var(--accent);background:0 0;flex-basis:100%;align-items:center;gap:10px;padding:9px 14px}.tile.add:before{color:var(--banana);font-size:17px}.tile.add:hover,body.dropping .tile.add{border-color:var(--banana-edge);background:var(--raised)}.tile.add .tname{max-width:none;font-weight:600}.tile.add .tmeta{font-variation-settings:var(--voice-body)}.gate{border:1px solid var(--banana-edge);background:var(--panel);border-radius:10px;flex-direction:column;flex:none;max-height:45vh;display:flex}.gate>.bar{background:var(--raised);border-bottom-color:var(--line);border-radius:10px 10px 0 0}.gate>.bar:before{color:var(--banana);font-size:15px}.gate>.bar h2{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);font-size:13px;font-weight:600}.gate .artifact{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);white-space:pre-wrap;flex:1;margin:0;padding:14px 18px;font-size:12.5px;line-height:1.75;overflow:auto}.viewswitch{background:var(--bg);border:1px solid var(--line);border-radius:9px;grid-template-columns:1fr 1fr;gap:0;margin:8px 0 10px;padding:3px;display:grid}.viewswitch>button{color:var(--muted);background:0 0;border:0;border-radius:6px;padding:5px 0;font-size:12.5px;font-weight:500}.viewswitch>button:hover{background:var(--raised);color:var(--fg);filter:none}.viewswitch>button[aria-pressed=true]{background:var(--banana);color:var(--on-banana);font-weight:600}.dclass,.lmark{border:1px solid var(--banana-edge);font-family:var(--font-mono);font-variation-settings:var(--voice-mono);letter-spacing:.04em;color:var(--accent);text-transform:uppercase;border-radius:9px;flex:none;padding:0 6px;font-size:10px;font-weight:500;line-height:16px;display:inline-block}.dnow,.lmark.lnow{background:var(--banana);color:var(--on-banana);font-family:var(--font-mono);font-variation-settings:var(--voice-mono);letter-spacing:.04em;text-transform:uppercase;border:0;border-radius:9px;flex:none;padding:0 7px;font-size:10px;font-weight:600;line-height:16px;display:inline-block}.lmark.lnow{font-size:9px;line-height:14px}.school-head{align-items:center;gap:10px;margin:0 0 12px;display:flex}.school-head h2{margin:0}.school-head button.quiet{padding:7px 14px}.term{margin:0 0 22px}.term-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;min-height:32px;padding-bottom:6px;display:flex}.term-fold{color:var(--fg);font-variation-settings:var(--voice-display);background:0 0;border:0;align-items:center;gap:8px;padding:2px 6px 2px 0;font-size:17px;font-weight:650;display:inline-flex}.term-fold:hover{filter:none}.term-fold[aria-expanded=true] .dchev{transform:rotate(90deg)}.term-plain{font-variation-settings:var(--voice-display);font-size:15px;font-weight:650}.dterm-range,.term-when{color:var(--muted);font-size:12px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono)}.term.past .term-fold,.term.past .dterm-range{opacity:.6}.term-acts{opacity:0;gap:6px;transition:opacity .12s;display:inline-flex}.term-head:hover .term-acts,.term-head:focus-within .term-acts{opacity:1}.term-acts button{border-radius:14px;padding:3px 10px;font-size:11.5px}.term-acts button.danger{color:var(--bad)}@media (hover:none){.term-acts{opacity:1}}.sedit{padding:8px 0 0}.sedit>span{font-size:13px}.sedit input[type=date]{flex:none;min-width:0}.coming{margin:12px 0 0}.coming .railhead{margin:0 0 4px}.hexams{gap:4px;margin:0;padding:0;list-style:none;display:grid}.hexams li{grid-template-columns:7ch minmax(10ch,max-content) 1fr max-content;align-items:baseline;gap:12px;font-size:13px;display:grid}.hx-date{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);color:var(--accent);font-size:12px;font-weight:600}.hx-class{color:var(--muted);justify-self:start;font-size:12.5px;text-decoration:none}.hx-class:hover{color:var(--fg);text-decoration:underline}.hx-when{color:var(--muted);font-size:12px}.hx-due .hx-date{color:var(--info)}.hx-due strong{font-weight:500}.hexams li.soon{background:var(--raised);border-radius:6px;margin:0 -8px;padding:2px 8px}.hexams li.soon .hx-when{color:var(--fg);font-weight:600}.ccards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:12px 0 0;display:grid}.ccard{text-align:left;background:var(--panel);min-height:92px;color:var(--fg);border:1px solid var(--line);font-variation-settings:var(--voice-body);border-radius:12px;align-content:start;gap:4px;padding:13px 15px;font-weight:400;display:grid}.ccard:hover{border-color:var(--banana-edge);background:var(--raised);filter:none}.ccard.open{border-color:var(--banana-edge);box-shadow:inset 3px 0 0 var(--banana)}.ccard-name{font-variation-settings:var(--voice-display);overflow-wrap:anywhere;font-size:15px;font-weight:650}.ccard-exam{color:var(--accent);font-size:12.5px;font-weight:600}.ccard-exam.none{color:var(--muted);font-weight:400}.ccard-due{color:var(--info);font-size:12px;font-weight:500}.ccard-exam.soon:before,.ccard-due.soon:before{content:"● ";color:var(--banana-edge)}.ccard-meta{color:var(--muted);font-size:12px}.ccard.add{border-style:dashed;border-color:var(--line-strong);background:0 0;align-content:center}.ccard.add .ccard-name{color:var(--accent);font-size:14px}.school-empty{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px 20px}.school-empty p{color:var(--fg);margin:0 0 10px}.school-empty ul{color:var(--muted);gap:6px;margin:0 0 14px;padding-left:1.2em;font-size:13px;display:grid}.school-empty li::marker{color:var(--banana-edge)}.school-foot{margin:8px 0 0}.lib .lterm{font-size:12px;font-weight:600;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);align-items:baseline;gap:8px;padding:8px 8px 2px 11px;display:flex}.sform{background:var(--panel);border:1px solid var(--banana-edge);border-radius:12px;gap:10px;margin:0 0 18px;padding:14px 16px;display:grid}.sform h3{font-variation-settings:var(--voice-display);margin:0;font-size:15px;font-weight:650}.sform .hint{margin:0}.srow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.srow[hidden]{display:none}.sform input{background:var(--bg);color:var(--fg);border:1px solid var(--line-strong);font:inherit;font-size:13.5px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:7px;padding:8px 10px}.sform input[name=name]{flex:1;min-width:200px}.sform input[name=termName]{width:16ch}.sform input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-size:12.5px}@media (prefers-color-scheme:dark){.sform input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial}}.sform input:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px;border-color:var(--banana-edge)}.sform input:disabled{opacity:.6}.dterm-pick{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.dterm-pick select,.class-term select,.cs-exam select{background:var(--bg);color:var(--fg);border:1px solid var(--line-strong);font:inherit;border-radius:7px;max-width:38ch;padding:5px 8px;font-size:12.5px}.class-pane{flex:none}.rail-class-name{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);overflow-wrap:anywhere;padding:4px 0 2px;font-size:14px;font-weight:600}.rail-class-empty{margin:4px 0 0 11px}.cdecks{gap:6px;margin:0 0 8px;padding:0;list-style:none;display:grid}.cdeck{text-align:left;background:var(--panel);width:100%;color:var(--fg);border:1px solid var(--line);font-variation-settings:var(--voice-body);border-radius:10px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:2px 18px;padding:10px 14px;font-weight:400;display:grid}.cdeck:hover{border-color:var(--banana-edge);background:var(--raised);filter:none}.cdeck strong{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.cdeck-state{color:var(--muted);grid-column:1;font-size:12px}.cdeck .dsteps .dcount{color:var(--muted);font-size:11.5px}.cnewdeck{gap:8px;margin:0 0 18px;display:flex}.cnewdeck input{background:var(--panel);min-width:0;color:var(--fg);border:1px dashed var(--line-strong);font:inherit;font-size:13.5px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:8px;flex:1;padding:9px 12px}.cnewdeck input:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px;border-style:solid;border-color:var(--banana-edge)}.exams{gap:6px;margin:0;padding:0;list-style:none;display:grid}.exam{background:var(--panel);border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(12ch,1.1fr) 150px minmax(12ch,1.4fr) minmax(16ch,1.4fr) 26px;align-items:center;gap:8px;padding:5px 6px 5px 8px;display:grid}.exam.draft{border-style:dashed;border-color:var(--banana-edge)}.exam input{min-width:0;color:var(--fg);font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 7px;font-size:13px}.exam .ex-name{font-weight:600}.exam .ex-date{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-size:12.5px}@media (prefers-color-scheme:dark){.exam .ex-date{--lightningcss-light: ;--lightningcss-dark:initial}}.exam input:hover{border-color:var(--line)}.exam input:focus-visible{outline:2px solid var(--banana-edge);outline-offset:0;border-color:var(--banana-edge);background:var(--bg)}.ex-when{color:var(--muted);font-size:12px}.ex-when.past{opacity:.7;text-decoration:line-through}.exam .tremove{color:var(--muted);background:0 0;border:0;padding:0 4px;font-size:15px;font-weight:400;line-height:1}.exam .tremove:hover{color:var(--bad);filter:none}.exams-empty{margin:0 0 4px}.hint+.cexams-head{margin-top:22px}.class-pane .hint{margin:10px 0 0}.class-foot{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 18px;font-size:13px;display:flex}.class-foot button{padding:5px 12px;font-size:12px}.class-foot button.danger{background:var(--bad);color:var(--panel)}.class-term{align-items:center;gap:6px;display:inline-flex}@media (width<=760px){.exam{grid-template-columns:1fr 150px 26px}.exam .ex-covers,.exam .ex-when{grid-column:1/-1}}.materials.class-docs .mnote{color:var(--muted);margin:-4px 0 10px;font-size:12.5px}.class-brief{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 20px;font-size:13px;display:flex}.class-brief:empty{display:none}.class-brief .cb-text{color:var(--muted)}.class-brief .cb-text strong{color:var(--fg);font-weight:600}.class-brief .cb-ok{color:var(--good);font-weight:600}.class-brief button{padding:5px 12px;font-size:12.5px}.class-brief .nb-spin{border-width:2px;border-color:var(--line-strong);border-top-color:var(--accent);width:14px;height:14px}.class-brief .nb-elapsed{color:var(--muted);font-size:12.5px;font-weight:500}.class-brief .nb-idle{color:var(--muted)}.tile.fresh{border-color:var(--banana-edge);background:var(--raised)}.tile .tnew{color:var(--accent);font-weight:600}.class-strip{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--banana);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 12px;font-size:13px;display:flex}.cs-k{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:10px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono)}.class-strip .cs-name{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);color:var(--fg);font-weight:600;text-decoration:none}.class-strip .cs-name:hover{text-decoration:underline}.cs-brief,.cs-when{color:var(--muted);font-size:12px}.cs-exam{align-items:center;gap:6px;margin-left:auto;font-size:12.5px;display:inline-flex}.gate-lead{color:var(--fg);margin:0;padding:10px 18px 0;font-size:13px}.ae-body{padding-bottom:14px;overflow:auto}.ae-said{color:var(--good)}.ae-list{flex-direction:column;gap:10px;margin:10px 0 0;padding:0 18px;list-style:none;display:flex}.ae-edit{border:1px solid var(--line);background:var(--bg);border-radius:8px;padding:10px 12px}.ae-edit.blocked{opacity:.78}.ae-head{cursor:pointer;align-items:center;gap:9px;font-size:13.5px;display:flex}.ae-edit.blocked .ae-head{cursor:default}.ae-head input{accent-color:var(--banana);flex:none;width:15px;height:15px}.ae-why{color:var(--muted);margin:6px 0 0 24px;font-size:12.5px}.ae-field{margin:8px 0 0 24px}.ae-name{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:10px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);display:block}.ae-diff{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:3px;font-size:12.5px;line-height:1.7}.ae-diff del{color:var(--bad);text-decoration:line-through;text-decoration-thickness:1px}.ae-diff ins{background:var(--banana);color:var(--on-banana);border-radius:3px;padding:0 2px;text-decoration:none}.ae-problem,.ae-warn,.ae-note{margin:6px 0 0 24px;font-size:12.5px}.ae-problem{color:var(--bad)}.ae-warn{color:var(--warn)}.ae-note{color:var(--muted)}.ae-actions{flex-wrap:wrap;gap:8px;padding:12px 18px 0;display:flex}.set-rate{align-items:center;gap:10px;font-size:13.5px;display:inline-flex}.set-rate input{background:var(--panel);width:8ch;color:var(--fg);border:1px solid var(--line);font:inherit;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:8px;padding:7px 10px}.set-rate input:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px;border-color:var(--banana-edge)}.pk-key{align-items:center;gap:6px;display:inline-flex}.pk-key input{background:var(--bg);width:22ch;color:var(--fg);border:1px solid var(--line-strong);font:inherit;font-size:12.5px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:7px;padding:7px 9px}.pk-current{margin:0 0 10px;font-size:14px}.providers{gap:9px;margin:8px 0;padding:0;list-style:none;display:grid}.providers li{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 15px}.providers li.on{background:var(--raised);border-color:var(--banana-edge)}.pname{font-variation-settings:var(--voice-display);font-size:14.5px;font-weight:650}.pname small{color:var(--muted);font-variation-settings:var(--voice-body);margin-left:6px;font-size:12px;font-weight:400}.pk-badge{color:var(--muted);border:1px solid var(--line-strong);vertical-align:2px;font-size:11px;font-weight:500;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:10px;margin-left:6px;padding:1px 8px}.pk-badge.on{color:var(--accent);border-color:var(--banana-edge)}.pdesc{color:var(--muted);margin:2px 0 9px;font-size:12.5px}.pactions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pactions input{background:var(--bg);color:var(--fg);border:1px solid var(--line);font:inherit;min-width:240px;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:8px;padding:8px 10px;font-size:12.5px}.pk-more{margin:10px 0}.pk-more summary{cursor:pointer;color:var(--accent);font-size:13px}.plog,.log{font-family:var(--font-mono);font-variation-settings:var(--voice-mono);color:var(--muted);white-space:pre-wrap;max-height:140px;margin:8px 0 0;font-size:11.5px;line-height:1.6;overflow:auto}.auth{background:var(--raised);border:1px solid var(--banana-edge);border-radius:10px;margin:8px 0;padding:11px 14px}.agent-host{flex-direction:column;flex:1;min-height:0;display:flex}.chat-pane{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-direction:column;flex:1;min-height:40vh;display:flex}.chat-pane .bar{border-radius:10px 10px 0 0;flex-wrap:wrap}.selectors{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:6px 10px;font-size:12px;display:flex}.selectors select{background:var(--bg);color:var(--fg);border:1px solid var(--line);font:inherit;border-radius:6px;max-width:180px;padding:3px 5px;font-size:12px}.messages{flex-direction:column;flex:1;gap:6px;padding:12px 16px;display:flex;overflow:auto}.msg{white-space:pre-wrap;word-break:break-word;border-radius:8px;max-width:84ch;padding:7px 12px;font-size:13.5px}.msg.user{background:var(--raised);border:1px solid var(--banana-edge);align-self:flex-end}.msg.agent{border-left:2px solid var(--banana);background:0 0;padding-left:11px}.msg.thought{color:var(--muted);border-left:2px solid var(--line);padding-left:11px;font-size:12.5px}.msg.tool{color:var(--info);font-family:var(--font-mono);font-variation-settings:var(--voice-mono);background:0 0;padding:1px 12px;font-size:12px;line-height:1.7}.permission{background:var(--raised);border:1px solid var(--banana-edge);border-radius:8px;margin:0 16px 8px;padding:11px 13px}.ptitle{font-variation-settings:var(--voice-display);margin-bottom:6px;font-weight:650}.composer{border-top:1px solid var(--line);align-items:center;gap:10px;padding:9px 16px 11px;display:flex}.composer:before{color:var(--banana);font-size:16px}.composer textarea,.composer input{background:var(--bg);color:var(--fg);border:1px solid var(--line);font:inherit;resize:vertical;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);border-radius:8px;flex:1;padding:9px 11px;font-size:13px}.composer textarea:focus-visible,.composer input:focus-visible{outline:2px solid var(--banana-edge);outline-offset:1px;border-color:var(--banana-edge)}.signin{border:1px solid var(--banana-edge);background:var(--panel);border-radius:10px;flex:none;margin:8px 0}.signin .console{white-space:pre-wrap;word-break:break-word;max-height:38vh;font-family:var(--font-mono);font-variation-settings:var(--voice-mono);margin:0;padding:12px 15px;font-size:12px;line-height:1.7;overflow:auto}.bar{border-bottom:1px solid var(--line);background:var(--panel);align-items:center;gap:10px;padding:9px 14px;display:flex}.bar h2{font-variation-settings:var(--voice-display);margin:0;font-size:15px;font-weight:650}.grow{flex:1}.hidden{display:none!important}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font:Recursive, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:Recursive, ui-monospace, SFMono-Regular, Menlo, monospace;--voice-body:"CASL" .4, "MONO" 0;--voice-mono:"MONO" 1, "CASL" 0;--voice-display:"CASL" 1, "MONO" 0;--voice-button:"CASL" .7, "MONO" 0;--bg:#fff9e3;--panel:#fff;--raised:#fff3c9;--stage:#efe6cb;--fg:#241f0e;--muted:#6e6243;--line:#eadfae;--line-strong:#d3c48c;--banana:#ffd029;--on-banana:#241f0e;--banana-edge:#e0b81c;--wordmark:var(--fg);--dim:#e2d3a2;--accent:#9a6400;--good:#167a44;--info:#0e7c8a;--bad:#c0402a;--extra:#6d4fc2;--warn:#9a6400}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#14120b;--panel:#1d1a11;--raised:#262114;--stage:#1a1710;--fg:#f7f0da;--muted:#b6ab8b;--line:#35301e;--line-strong:#4a432b;--banana-edge:#c79e12;--wordmark:var(--banana);--dim:#3f3a26;--accent:#ffd029;--good:#4dd97b;--info:#45d3e0;--bad:#ff8a6e;--extra:#c2a5ff;--warn:#e8c07d}}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--fg);font:16px/1.55 var(--font);font-variation-settings:var(--voice-body);margin:0}main{max-width:1100px;margin:0 auto;padding:40px 24px 64px}#build{border-top:1px solid var(--line);max-width:70ch;margin-top:32px;padding-top:18px}#build a,a{color:var(--accent)}h1{letter-spacing:-.01em;font-variation-settings:var(--voice-display);flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 6px;font-size:32px;font-weight:750;display:flex}h1:before{content:"";background:var(--banana);width:34px;height:34px;-webkit-mask:var(--mark-mask-full) no-repeat center / contain;-webkit-mask:var(--mark-mask-full) no-repeat center / contain;mask:var(--mark-mask-full) no-repeat center / contain;flex:none}h1 .sep{color:var(--line)}h1 .what{letter-spacing:normal;color:var(--muted);font-size:20px;font-weight:400}.expand{letter-spacing:.01em;color:var(--muted);font-variation-settings:var(--voice-display);margin:4px 0 0;font-size:15px;font-weight:500}.tag{color:var(--muted);margin:10px 0 28px}code{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:90%}.drop{background:var(--panel);border:2px dashed var(--line);text-align:center;border-radius:12px;padding:40px 24px;transition:border-color .15s,background .15s}.drop.over{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.dropline{margin:0 0 8px;font-size:17px}.small{color:var(--muted);margin:0;font-size:14px}.note{margin-top:10px}button{background:var(--banana);color:var(--on-banana);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:9px 16px;font-size:15px;font-weight:600}button:hover{filter:brightness(1.08)}button.ghost{color:var(--fg);border:1px solid var(--line-strong);background:0 0;font-weight:500}button.link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:400;text-decoration:underline}.summary{font-size:15px}.summary .count{font-weight:600}.summary .deck{color:var(--muted)}.summary .clean{color:var(--accent);font-weight:600}.summary .dirty{color:var(--warn);font-weight:600}.actions{gap:8px;display:flex}.panes{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}@media (width<=800px){.panes{grid-template-columns:1fr}}.pane{min-width:0}.pane h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:600}#review{border:1px solid var(--line);background:#333b45;border-radius:10px;width:100%;height:70vh;min-height:420px}#report{background:var(--panel);border:1px solid var(--line);white-space:pre-wrap;word-break:break-word;border-radius:10px;height:70vh;min-height:420px;margin:0;padding:14px 16px;font:13px/1.6 Menlo,ui-monospace,monospace;overflow:auto}.error{background:color-mix(in srgb, var(--bad) 12%, var(--panel));border:1px solid var(--bad);color:var(--fg);white-space:pre-wrap;border-radius:8px;margin-top:20px;padding:12px 14px}footer{color:var(--muted);margin-top:40px;font-size:14px}footer a{color:var(--accent)}body.with-rail #shell{grid-template-columns:230px 1fr;min-height:100vh;display:grid}body.with-rail main{flex-direction:column;min-width:0;max-width:none;padding:0 24px 24px;display:flex}body.with-rail #bar{margin:0 -24px 16px}#rail{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;gap:4px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0;overflow:auto}#view-agent{flex-direction:column;gap:16px;display:flex}.results-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px;display:flex}.flags{margin:0;padding-left:16px;font-size:13px}.flags li{margin:4px 0}.flags button{margin-left:4px;padding:0 6px;font-size:12px}#flagbox h2{margin-top:14px}#flagbox h2 small{color:var(--warn)}
