:root{--paper: #f6f0e4;--paper-dim: #efe6d4;--manila: #e8d5a8;--manila-edge: #cbb27e;--navy: #1e3a4c;--navy-deep: #162c3a;--wood: #c4965c;--wood-dark: #8b5e34;--pip: #e8c547;--ink: #241c14;--ink-soft: #5c4d3c;--rust: #c45c26;--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--radius: 4px;--edge: 1.5px solid var(--ink)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--paper-dim);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow:hidden}#app{height:100dvh;display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr) auto auto;overflow:hidden}.topbar{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"brand tag actions" "ticker ticker ticker";align-items:center;gap:4px 16px;padding:8px 16px 0;background:var(--navy);color:var(--paper);border-bottom:2px solid var(--ink)}.brand{grid-area:brand;display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border-radius:6px;border:1.5px solid var(--ink);background:var(--paper);object-fit:cover;display:block}.company{margin:0;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#a9c2cf}.topbar h1{margin:0;font-size:18px;letter-spacing:.02em;font-weight:700}.desk-tag{grid-area:tag;justify-self:end;margin:0;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--pip);border:2px solid var(--ink);border-radius:2px;padding:4px 10px}.topbar-actions{grid-area:actions;display:flex;gap:8px;padding-bottom:2px}.ticker{grid-area:ticker;margin:6px -16px 0;overflow:hidden;background:var(--navy-deep);border-top:1px solid rgba(246,240,228,.18);font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:#cfe0e8}.ticker-track{display:flex;width:max-content;gap:2rem;padding:6px 0;animation:ticker 46s linear infinite}.ticker-track span{white-space:nowrap}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.workspace{min-height:0;padding:8px 12px 4px;display:flex}.scene{flex:1;min-height:0;background:var(--paper);border:2px solid var(--ink);border-radius:6px;box-shadow:4px 4px #241c1424;overflow:hidden}.desk-svg{display:block;width:100%;height:100%}.zone-chip,.zone-label{font-family:var(--mono);font-size:11px;letter-spacing:.16em;fill:var(--ink);opacity:.6}.zone-chip.is-on-tag{font-size:8px;letter-spacing:.1em;opacity:.95}.zone-prop{image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none}.zone-label{font-size:9px;opacity:.85}.zone-hint{font-family:var(--sans);font-size:10px;fill:var(--ink-soft);opacity:.7}.nameplate{font-family:var(--mono);font-size:13px;letter-spacing:.18em;fill:var(--ink)}.nameplate-sub{font-family:var(--mono);font-size:7px;letter-spacing:.14em;fill:var(--ink-soft)}.emp{cursor:pointer;outline:none;transition:transform .42s ease-out,filter .16s ease;transform-box:fill-box;transform-origin:32px 32px}.emp.is-featured{filter:drop-shadow(0 5px 0 rgba(36,28,20,.28))}.emp.is-featured:not(.is-dragging):hover{filter:drop-shadow(0 6px 0 rgba(36,28,20,.32))}.emp:not(.is-terminated):not(.is-dragging):not(.is-featured):hover{filter:drop-shadow(0 3px 0 rgba(36,28,20,.22))}.emp.is-dragging{cursor:grabbing;transition:none;filter:drop-shadow(0 8px 0 rgba(36,28,20,.2))}.emp-hit{fill:transparent;stroke:transparent;stroke-width:2}.emp:hover .emp-hit{fill:#e8c54729;stroke:#241c1459}.emp:focus-visible .emp-hit,.emp.is-selected .emp-hit{fill:#e8c54738;stroke:var(--ink);stroke-width:2.5;stroke-dasharray:5 3}.emp:focus-visible{outline:none}.emp-caption{display:none}.emp-tag{font-family:var(--mono);font-size:8px;letter-spacing:.08em;fill:var(--ink);opacity:.78;pointer-events:none}.emp.is-flash{filter:drop-shadow(0 0 6px rgba(232,197,71,.9))}.emp-art{transform-box:fill-box;transform-origin:32px 32px}.emp.is-drawer-in .emp-art{animation:drawer-slide-in .38s ease-out}.emp.is-sink-land .emp-art{animation:sink-land .5s cubic-bezier(.22,1.35,.36,1)}.sink-zone.is-klonk{transform-box:fill-box;transform-origin:50% 50%;animation:sink-clonk .42s ease-out}.sink-ripple{transform-box:fill-box;transform-origin:1010px 575px;animation:sink-ripple .55s ease-out forwards;pointer-events:none}@keyframes drawer-slide-in{0%{transform:translateY(-14px)}to{transform:translateY(0)}}@keyframes sink-land{0%{transform:translateY(-20px) rotate(-8deg)}58%{transform:translateY(3px) rotate(2deg)}to{transform:translateY(0) rotate(0)}}@keyframes sink-clonk{0%{transform:translateY(0)}32%{transform:translateY(4px)}64%{transform:translateY(-2px)}to{transform:translateY(0)}}@keyframes sink-ripple{0%{transform:scale(.35);opacity:.85}to{transform:scale(1.45);opacity:0}}.zone-flash{fill:#e8c54729;stroke:#e8c547;stroke-width:2;pointer-events:none}.emp-sprite{image-rendering:pixelated;image-rendering:crisp-edges}.emp-art .emp-fallback,.emp-art.no-sprite .emp-sprite{display:none}.emp-art.no-sprite .emp-fallback{display:block}.drawer{position:fixed;top:0;right:0;z-index:12;width:min(400px,100%);height:100dvh;background:var(--manila);border-left:2px solid var(--ink);box-shadow:-6px 0 #241c1429;transform:translate(100%);transition:transform .35s ease-out;overflow:hidden}.drawer.is-open{transform:translate(0)}.drawer .panel,.drawer:has(.panel){height:100%}.panel{height:100%;background:var(--manila);padding:18px 16px 24px;overflow-y:auto;outline:none;border:0;border-radius:0;box-shadow:none;max-height:none;position:static}.panel:before{display:none}.panel:focus-visible{box-shadow:6px 6px #241c1429,0 0 0 3px var(--pip)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--manila-edge);padding-bottom:10px}.panel-kicker{margin:0;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.panel h2{margin:6px 0 2px;font-size:22px;line-height:1.15}.panel-empty .lede{color:var(--ink-soft);margin:8px 0 14px}.howto{margin:0;padding-left:18px;font-size:13px;color:var(--ink-soft)}.howto li{margin-bottom:6px}.icon-btn{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper);background:var(--navy);border:2px solid var(--ink);border-radius:2px;padding:5px 10px;cursor:pointer}.icon-btn:hover{background:var(--navy-deep)}.icon-btn:focus-visible{outline:3px solid var(--pip);outline-offset:1px}.identity{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:start;padding:14px 0}.identity-img,.identity-svg{width:92px;height:92px;background:var(--paper);border:var(--edge);border-radius:2px;padding:4px}.identity-img{image-rendering:pixelated;object-fit:contain}.role{margin:2px 0;font-weight:600;color:var(--navy)}.meta{margin:2px 0;font-size:12px;color:var(--ink-soft)}.standing{margin:6px 0 0;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.pip-dot{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:50%;border:1.5px solid var(--ink);vertical-align:-1px}.pip-dot.active{background:#6b8f62}.pip-dot.on_pip{background:var(--pip)}.pip-dot.terminated{background:var(--rust)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:0 0 16px;padding:12px;background:var(--paper);border:1px solid var(--manila-edge);border-radius:2px}.facts dt{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.facts dd{margin:1px 0 0;font-size:13px}.panel section{margin-bottom:16px}.panel h3{margin:0 0 8px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--manila-edge);padding-bottom:4px}.prose p{margin:0 0 8px;font-size:13.5px}.file-card{background:var(--paper);border:1px solid var(--manila-edge);border-left:4px solid var(--navy);border-radius:2px;padding:9px 11px;margin-bottom:8px}.file-card header{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:4px}.file-card p{margin:0;font-size:13px}.rating{color:var(--rust);letter-spacing:.14em}.muted{margin:0;font-size:13px;color:var(--ink-soft);font-style:italic}.topbar-actions{grid-area:actions;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.banner{margin:0;padding:6px 16px;background:var(--pip);color:var(--ink);font-size:12px;border-bottom:1px solid var(--ink);display:flex;gap:16px;align-items:baseline;justify-content:space-between}.banner-ask{margin:0;font-weight:600}.banner-status{margin:0;font-size:11px;white-space:nowrap}.banner a{color:var(--navy)}.try-it{position:relative;z-index:8;background:var(--paper);border-bottom:2px solid var(--ink)}.try-it-toggle{display:block;width:100%;margin:0;padding:6px 16px;border:0;background:var(--manila);color:var(--ink);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;text-align:left;cursor:pointer}.try-it-toggle:hover,.try-it-toggle:focus-visible{background:var(--pip)}.try-it-toggle:focus-visible{outline:3px solid var(--navy);outline-offset:-3px}.try-it-body{position:absolute;left:0;right:0;top:100%;z-index:9;padding:10px 16px 12px;max-height:min(50vh,420px);overflow:auto;border-bottom:2px solid var(--ink);background:var(--paper);box-shadow:0 8px #241c142e}.try-it-body p{margin:0 0 8px;font-size:13px;line-height:1.45;color:var(--ink)}.try-it-body code{font-family:var(--mono);font-size:12px;background:#241c1414;padding:1px 4px}.try-it-warn{border:2px solid var(--ink);background:#edc4b8;padding:8px 10px;font-weight:600}.try-it-prompt-label{display:block;margin:10px 0 4px;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.try-it-prompt{display:block;width:100%;max-height:160px;margin:0 0 10px;padding:8px 10px;border:2px solid var(--ink);border-radius:2px;background:#fffaf0;color:var(--ink);font-family:var(--mono);font-size:12px;line-height:1.4;resize:vertical}.try-it-actions{display:flex;flex-wrap:wrap;gap:8px}.access-strip{margin:0;padding:4px 16px;background:var(--navy-deep, #162c3a);color:#cfe0e8;font-family:var(--mono, ui-monospace, monospace);font-size:10px;letter-spacing:.04em;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tool-count,.tool-source{opacity:.7}.tool-chip{display:inline-block;border:1px solid rgba(246,240,228,.28);border-radius:2px;padding:1px 6px}.tool-chip.is-off{opacity:.45}.desk-paper{cursor:pointer}.desk-paper.is-newest{animation:paper-settle .42s ease-out}@keyframes paper-settle{0%{opacity:0}to{opacity:1}}.banner code{font-size:12px}.ghost-btn,.icon-btn,.solid-btn{border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);padding:6px 10px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.topbar .ghost-btn{background:transparent;color:var(--paper);border-color:#f6f0e473}.solid-btn.danger{background:#8b2e2e;color:var(--paper);border-color:#8b2e2e}.actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 8px}.paperwork{background:var(--paper);border:1.5px solid var(--ink);padding:14px 14px 18px;box-shadow:3px 4px #241c141f;margin:10px 0 16px}.paperwork h4{margin:0 0 2px;font-size:16px}.paperwork .form-id{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 8px}.paperwork label{display:block;font-size:12px;margin:8px 0 4px}.paperwork input:not([type=checkbox]),.paperwork textarea,.paperwork select{width:100%;border:none;border-bottom:1px solid var(--ink);background:transparent;padding:4px 0;font:inherit}.checks{display:grid;gap:6px;margin:8px 0;font-size:13px}.sig{margin-top:18px;border-top:1px solid var(--ink);padding-top:8px;font-size:12px}.sig-line{margin-top:16px;border-bottom:1px solid var(--ink);height:26px}.log-wrap{border-top:2px solid var(--ink);background:#efe8d6}.log-toggle{width:100%;text-align:left;background:transparent;border:0;padding:8px 16px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.actor-agent{color:var(--navy)}.actor-human{color:var(--wood-dark)}.modal-back{position:fixed;inset:0;background:#241c1473;display:grid;place-items:center;z-index:20;padding:16px}.modal{width:min(460px,100%);background:var(--paper);border:2px solid var(--ink);padding:18px;box-shadow:6px 6px #241c142e}.modal h2{margin:0 0 8px}.howto{padding-left:18px;color:var(--ink-soft)}.alumni-card{fill:var(--paper);stroke:var(--ink)}.solid-btn,.ghost-btn{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.02em;border:2px solid var(--ink);border-radius:2px;padding:7px 12px;cursor:pointer;box-shadow:2px 2px #241c1440}.solid-btn{background:var(--navy);color:var(--paper)}.ghost-btn{background:var(--paper);color:var(--ink)}.solid-btn:hover{background:var(--navy-deep)}.ghost-btn:hover{background:#fffaf0}.solid-btn:active,.ghost-btn:active{transform:translate(2px,2px);box-shadow:none}.solid-btn.danger{background:var(--rust);color:var(--paper)}.solid-btn.danger:hover{background:#a94a1c}.solid-btn:focus-visible,.ghost-btn:focus-visible{outline:3px solid var(--pip);outline-offset:2px}.topbar-actions .ghost-btn{font-size:11px;padding:4px 9px;box-shadow:none}.actions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.banner code{font-family:var(--mono);font-size:11.5px;background:#241c141f;padding:1px 5px;border-radius:2px}.banner a{color:var(--navy);text-underline-offset:2px}.paperwork{background:var(--paper);border:1px solid var(--manila-edge);border-radius:2px;box-shadow:2px 2px #241c141a;padding:14px;margin-bottom:16px}.form-id{margin:0 0 8px;font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--manila-edge);padding-bottom:6px}.paperwork h4{margin:0 0 8px;font-size:15px}.paperwork p{margin:0 0 7px;font-size:13px}.paperwork label{display:block;margin-bottom:10px;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.paperwork input[type=text],.paperwork input[type=number],.paperwork select,.paperwork textarea{display:block;width:100%;margin-top:4px;font-family:var(--sans);font-size:13px;letter-spacing:normal;text-transform:none;color:var(--ink);background:#fffdf7;border:1.5px solid var(--ink);border-radius:2px;padding:6px 8px}.paperwork textarea{resize:vertical}.paperwork select:focus-visible,.paperwork textarea:focus-visible,.paperwork input:focus-visible{outline:3px solid var(--pip);outline-offset:1px}.checks{display:grid;gap:6px;margin-bottom:10px}.checks label,.checks .check-row{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;column-gap:8px;margin:0;font-family:var(--sans);font-size:13px;letter-spacing:normal;text-transform:none;color:var(--ink)}.paperwork input[type=checkbox],.checks input[type=checkbox],.checks .check-box{display:inline-block;width:14px;height:14px;max-width:16px;min-width:14px;margin:2px 0 0;padding:0;flex:0 0 auto;justify-self:center;accent-color:var(--navy)}.checks input[type=checkbox]:disabled{opacity:.9}.sig{margin-top:14px;font-size:11px;font-style:italic;color:var(--ink-soft)}.sig-line{margin-top:18px;padding-top:4px;border-top:1px solid var(--ink);font-family:var(--mono);font-size:10px;font-style:normal;letter-spacing:.1em;text-transform:uppercase}.log-wrap{margin:0 12px 8px}.log-toggle{width:100%;text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper);background:var(--navy);border:2px solid var(--ink);border-radius:3px 3px 0 0;padding:8px 12px;cursor:pointer}.log-toggle:focus-visible{outline:3px solid var(--pip);outline-offset:2px}.log-list{margin:0;padding:4px 12px 6px;list-style:none;background:var(--paper);border:2px solid var(--ink);border-top:none;border-radius:0 0 3px 3px;font-size:12px}.log-wrap:not(.is-expanded) .log-list{max-height:none;overflow:hidden}.log-wrap.is-expanded .log-list{max-height:180px;overflow-y:auto}.log-more{margin:0;padding:2px 12px 4px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);background:var(--paper);border:2px solid var(--ink);border-top:0;width:100%;text-align:left;cursor:pointer;display:block}.log-list li{display:grid;grid-template-columns:64px 58px minmax(0,1fr);gap:8px;padding:2px 0;line-height:1.3;border-bottom:1px dotted var(--manila-edge)}.log-list li:last-child{border-bottom:none}.log-list li>span:first-child{font-family:var(--mono);font-size:11px;color:var(--ink-soft)}.actor-agent,.actor-human,.actor-system{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;text-align:center;align-self:start;border:1.5px solid var(--ink);border-radius:2px;padding:1px 0}.actor-agent{background:var(--pip)}.actor-human{background:#cfe0e8}.actor-system{background:#efe8d6;color:var(--ink-soft)}.modal-back{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:22px;background:#241c1447}.modal{width:min(460px,100%);background:var(--manila);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:8px 8px #241c1466;padding:20px}.modal h2{margin:6px 0 10px;font-size:20px}.modal p{font-size:13.5px;margin:0 0 10px}.modal .actions{margin:16px 0 0}.sep-form{border:3px solid var(--rust);box-shadow:8px 8px #c45c2659}.sep-form .solid-btn.danger{font-size:14px;padding:10px 16px}.alumni-card{fill:#f6f0e4;stroke:#241c14;stroke-width:1.2}.pip-badge{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em}.emp.is-terminated{opacity:.82;cursor:default}.emp.is-terminated[data-zone=sink]{opacity:1}.emp.is-dragging{cursor:grabbing}.emp.is-dragging .emp-hit{fill:#e8c5474d;stroke:var(--ink)}@media(max-width:1040px){.drawer{width:min(380px,100%)}.banner{flex-direction:column;gap:2px}.banner-status{white-space:normal}}@media(max-width:768px){.drawer{width:100%}}@media(max-width:620px){.try-it-body{max-height:min(55vh,360px);padding:8px 12px 10px}.try-it-prompt{max-height:140px;font-size:11px}.topbar{grid-template-columns:1fr;grid-template-areas:"brand" "tag" "actions" "ticker"}.desk-tag{justify-self:start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.ticker-track{animation:none;transform:none}.emp,.drawer{transition:none}.desk-paper.is-newest{animation:none}}
