/* Keep the reading surface within its grid track, with equal outer gutters. */
html[data-appearance=celestial] .app-shell>.main{width:calc(100% - 24px);max-width:1500px;margin:12px auto;align-self:start;min-width:0}
html[data-appearance=celestial] .main>.page{min-width:0}
@media(max-width:700px){html[data-appearance=celestial] .app-shell>.main{width:calc(100% - 8px);margin:4px auto}}
/* SVG focus uses the actual compartment, never a rectangular browser outline. */
#transitNorthChart svg .chart-field154,svg .chart-field154:is(:hover,:focus,:focus-visible,:active){outline:none!important;box-shadow:none!important;stroke:none!important;stroke-width:0!important;fill:transparent;filter:none!important}
#transitNorthChart svg .chart-field154:hover,svg .chart-field154:hover{fill:#b5975520!important}
#transitNorthChart svg .chart-field154:focus-visible,svg .chart-field154:focus-visible{fill:#b5975545!important;stroke:#957039!important;stroke-width:2!important;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#transitNorthChart .north-graha-marker{outline:none;box-shadow:none}
#transitNorthChart .north-graha-marker:focus-visible{outline:2px solid #957039;outline-offset:2px}
.exp-layout155{display:grid;grid-template-columns:minmax(360px,1.2fr) minmax(300px,1fr);gap:24px;align-items:start}.exp-board155{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:radial-gradient(ellipse at top,#30445f,#142035);border-radius:18px;padding:20px}.exp-node155{display:flex;flex-direction:column;gap:9px;text-align:left;padding:14px 10px;min-height:125px;border:2px solid var(--tile);border-radius:12px;background:#fff9ec;color:#29364b;font:16px Georgia,serif;cursor:pointer}.exp-node155 small{font-size:11px;line-height:1.4}.exp-node155.selected{box-shadow:0 0 0 3px #eac66f;outline-offset:4px}.exp-node155.here{background:#f7dfa1}.exp-index155{font-size:12px;color:#5b4b2f}.exp-resources155{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.exp-resources155>span{padding:10px 15px;background:var(--paper2);border:1px solid var(--line);border-radius:30px}.exp-actions155{display:grid;gap:10px;margin-top:20px}.exp-turn155 p{line-height:1.7}.exp-event155{display:block;width:100%;margin:12px 0;text-align:left;white-space:normal}.exp-event155 small{display:block;margin-top:6px}.exp-mode155{padding:20px;border:1px solid var(--line);background:var(--paper2);border-radius:12px;display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:24px}.exp-mode155 p{margin:5px 0}.exp-mode155 h2{font-size:21px;margin:0}html[data-appearance=rainbow] .exp-node155:nth-child(4n+1){background:#ffe4c4}html[data-appearance=rainbow] .exp-node155:nth-child(4n+2){background:#e0f1c6}html[data-appearance=rainbow] .exp-node155:nth-child(4n+3){background:#d9eafa}html[data-appearance=rainbow] .exp-node155:nth-child(4n){background:#eadbfa}
@media(max-width:1050px){.exp-layout155{grid-template-columns:1fr}.exp-board155{max-width:640px;margin:auto}}@media(max-width:480px){.exp-board155{padding:10px;gap:7px}.exp-node155{padding:10px 6px;font-size:14px;min-height:125px}.exp-mode155{display:block}.exp-mode155 .btn{margin-top:12px}}
.ls-tools155{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0}.ls-tools155 label{display:flex;align-items:center;gap:8px}.ls-tools155 input[type=number]{width:85px}.ls-stage152 canvas{touch-action:none}.ls-slide-strip155{display:flex;gap:5px;flex-wrap:wrap;max-height:160px;overflow:auto;padding:10px 0}.ls-slide-strip155 button{min-width:36px;padding:7px}.ls-slide-strip155 [aria-current=true]{background:var(--wine);color:var(--paper)}.ls-prompter155{max-height:260px;overflow:auto;white-space:pre-wrap;padding:18px;font-size:22px;line-height:1.9;border:1px solid var(--line);border-radius:10px;background:var(--paper2)}.ls-ready155{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;margin:14px 0;color:var(--muted)}.ls-ready155 span{padding:5px 9px;border:1px solid var(--line);border-radius:20px}.ls-plan155{font-size:13px;color:var(--muted)}
