:root{--canvas: #F4F4F0;--canvas-dark: #E8E6E0;--black: #111111;--white: #F4F4F0;--bg: #F4F4F0;--red: #E03C31;--yellow: #FFF000;--grey: #888880;--grey-mid: #888880;--grey-light: #D8D8D4;--border: 1px solid #111111;--border-thick: 2px solid #111111;--shadow: 4px 4px 0px #111111;--shadow-sm: 2px 2px 0px #111111;--shadow-inset: inset 2px 2px 0px #111111;--font-serif: "EB Garamond", Georgia, "Times New Roman", serif;--font-mono: "Space Mono", "Courier New", monospace;--font-typewriter: "Courier Prime", "Courier New", monospace;--font-marker: "Permanent Marker", cursive;--font-body: var(--font-serif);--space-xs: 6px;--space-sm: 16px;--space-md: 32px;--space-lg: 64px;--space-xl: 120px;--max-width: 660px;--max-width-wide: 960px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:18px;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{background:var(--canvas);color:var(--black);font-family:var(--font-body);line-height:1.75;min-height:100vh;position:relative}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.04}h1,h2,h3,h4{font-family:var(--font-body);font-weight:400;line-height:1.3}h1{font-size:2.2rem}h2{font-size:1.4rem}h3{font-size:1.1rem}p{line-height:1.75}.mono{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.03em}.label{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-md)}.container-wide{max-width:var(--max-width-wide);margin:0 auto;padding:0 var(--space-md)}.flex{display:flex}.flex-col{flex-direction:column}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.items-center{align-items:center}.justify-between{justify-content:space-between}hr{border:none;border-top:var(--border);margin:var(--space-md) 0}input,textarea{font-family:var(--font-body);font-size:1rem;background:transparent;color:var(--black);border:none;border-bottom:var(--border);width:100%;padding:8px 0;outline:none;line-height:1.6}input:focus,textarea:focus{border-bottom:var(--border-thick)}textarea{resize:none;min-height:80px}button{cursor:pointer;border:none;background:none;font-family:var(--font-mono)}.btn{font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border:var(--border-thick);padding:8px 16px;background:transparent;cursor:pointer;box-shadow:var(--shadow-sm);transition:box-shadow .1s,transform .1s}.btn:hover:not(:disabled){box-shadow:none;transform:translate(2px,2px)}.btn:disabled{opacity:.4;cursor:default}.btn-primary{font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:var(--black);color:var(--canvas);border:var(--border-thick);padding:10px 20px;cursor:pointer;box-shadow:var(--shadow-sm);transition:box-shadow .1s,transform .1s}.btn-primary:hover:not(:disabled){box-shadow:none;transform:translate(2px,2px)}.btn-primary:disabled{opacity:.4;cursor:default}.session-textarea{flex:1;font-family:var(--font-typewriter);font-size:.9rem;border:var(--border);padding:10px 12px;resize:none;background:transparent;min-height:0}.session-textarea:focus{outline:none;border:var(--border-thick)}.text-muted{color:var(--grey)}.text-red{color:var(--red)}.text-small{font-size:.85rem}.flex-1{flex:1}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}[data-quadrant=sanctuary]{--font-body: var(--font-serif)}[data-quadrant=sanctuary] body,[data-quadrant=sanctuary]{background-color:var(--canvas);background-image:repeating-linear-gradient(transparent,transparent 31px,rgba(0,0,0,.045) 31px,rgba(0,0,0,.045) 32px)}[data-quadrant=sanctuary] .container{max-width:580px;padding:0 var(--space-lg)}[data-quadrant=sanctuary] .btn-primary,[data-quadrant=sanctuary] .btn-ghost{all:unset;font-family:var(--font-serif);font-size:1rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px;color:var(--black)}[data-quadrant=sanctuary] .btn-primary:hover,[data-quadrant=sanctuary] .btn-ghost:hover{opacity:.6}[data-quadrant=sanctuary] .label{letter-spacing:.05em;text-transform:none;font-family:var(--font-serif);font-style:italic;font-size:.85rem;color:var(--grey)}[data-quadrant=sanctuary] h1{font-size:2.6rem;line-height:1.25;letter-spacing:-.01em}[data-quadrant=sanctuary] h2{font-size:1.5rem;font-style:italic}[data-quadrant=sanctuary] input,[data-quadrant=sanctuary] textarea{font-family:var(--font-serif);font-size:1.1rem;border:none;border-bottom:1px solid var(--grey-light);padding:12px 0}[data-quadrant=sanctuary] input:focus,[data-quadrant=sanctuary] textarea:focus{border-bottom:1px solid var(--grey)}[data-quadrant=sanctuary] hr{display:none}[data-quadrant=sanctuary] .coach-message{font-family:var(--font-serif);font-size:1.15rem;font-style:italic;line-height:1.9;color:var(--black)}[data-quadrant=sanctuary] .user-message{font-family:var(--font-serif);font-size:.95rem;color:var(--grey);text-align:right}.label-machine{display:inline-block;background:#b01a28;color:#f5ede0;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;letter-spacing:.32em;padding:7px 16px 6px;transform:rotate(-.6deg);position:relative;text-shadow:0 1px 0 rgba(255,255,255,.22),0 -1px 0 rgba(0,0,0,.45);box-shadow:inset 0 3px 6px #ffffff1a,inset 0 -3px 6px #00000047,3px 4px #00000052}.label-machine:before,.label-machine:after{content:"";position:absolute;top:0;bottom:0;width:3px;background:linear-gradient(to right,rgba(255,255,255,.08),transparent)}.label-machine:before{left:0}.label-machine:after{right:0;background:linear-gradient(to left,rgba(0,0,0,.15),transparent)}.sanctuary-page{max-width:540px;margin:0 auto;padding:var(--space-xl) var(--space-lg);position:relative}.sanctuary-page:before{content:"";position:absolute;top:28px;right:28px;width:18px;height:18px;border-top:1px solid rgba(0,0,0,.18);border-right:1px solid rgba(0,0,0,.18);pointer-events:none}.sanctuary-wordmark{font-family:var(--font-serif);font-style:italic;font-size:.95rem;color:var(--grey);letter-spacing:.04em}.sanctuary-headline{font-family:var(--font-serif);font-size:2.4rem;font-weight:400;line-height:1.25;letter-spacing:-.01em;margin-bottom:var(--space-md);max-width:520px}.sanctuary-subhead{font-family:var(--font-serif);font-size:1.5rem;font-style:italic;font-weight:400;margin-bottom:var(--space-sm)}.sanctuary-body{font-family:var(--font-serif);font-size:1.05rem;line-height:1.8;color:var(--grey);max-width:480px;margin-bottom:var(--space-lg)}.sanctuary-cta{all:unset;font-family:var(--font-serif);font-size:1.05rem;font-style:italic;cursor:pointer;background:linear-gradient(transparent 52%,#fff000b8 52%);padding:0 3px;color:var(--black);transition:opacity .2s}.sanctuary-cta:hover{opacity:.7}.sanctuary-cta:disabled{opacity:.35;cursor:default;background:none}.sanctuary-back{all:unset;font-family:var(--font-serif);font-size:.9rem;font-style:italic;cursor:pointer;color:var(--grey);text-decoration:none}.sanctuary-back:hover{color:var(--black)}.sanctuary-form{max-width:400px}[data-quadrant=sandbox]{--font-body: var(--font-typewriter)}[data-quadrant=sandbox] body,[data-quadrant=sandbox]{background:#f0ede6}[data-quadrant=sandbox] h1,[data-quadrant=sandbox] h2,[data-quadrant=sandbox] h3{font-family:var(--font-typewriter);font-weight:700;letter-spacing:-.02em}[data-quadrant=sandbox] input,[data-quadrant=sandbox] textarea{font-family:var(--font-typewriter);font-size:.95rem}[data-quadrant=sandbox] .coach-message{font-family:var(--font-marker);font-size:1.1rem;line-height:1.6;color:var(--black);position:relative}[data-quadrant=sandbox] .message-block{transform:rotate(-.5deg);transition:transform .3s ease}[data-quadrant=sandbox] .message-block:nth-child(2n){transform:rotate(.4deg)}[data-quadrant=sandbox] .message-block:hover{transform:rotate(0)}[data-quadrant=sandbox] .user-message{font-family:var(--font-typewriter);font-size:.9rem;background:var(--canvas);border:var(--border);padding:10px 14px;display:inline-block;transform:rotate(.3deg)}[data-quadrant=sandbox] .redaction{display:inline-block;background:var(--black);color:transparent;padding:0 4px;border-radius:0;-webkit-user-select:none;user-select:none}[data-quadrant=sandbox] .btn-primary{font-family:var(--font-typewriter);font-size:.85rem;font-weight:700;background:var(--black);color:var(--canvas);padding:10px 20px;letter-spacing:.05em;border:none;transform:rotate(-.3deg);display:inline-block}[data-quadrant=sandbox] .btn-ghost{font-family:var(--font-typewriter);font-size:.8rem;border:var(--border-thick);padding:8px 16px;background:transparent}[data-quadrant=sandbox] .label{font-family:var(--font-typewriter);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--grey)}[data-quadrant=sandbox] .note-card{background:#fafaf4;border:var(--border);padding:var(--space-md);position:relative;transform:rotate(-.5deg)}[data-quadrant=sandbox] .note-card:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%) rotate(1deg);width:48px;height:16px;background:#fff000b3;border:1px solid rgba(0,0,0,.1)}[data-quadrant=system]{--font-body: var(--font-mono)}[data-quadrant=system] body,[data-quadrant=system]{background:var(--canvas)}[data-quadrant=system] h1,[data-quadrant=system] h2,[data-quadrant=system] h3{font-family:var(--font-mono);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.9rem}[data-quadrant=system] h1{font-size:1rem}[data-quadrant=system] .system-cell{border:var(--border-thick);padding:var(--space-md);box-shadow:var(--shadow)}[data-quadrant=system] .coach-message{font-family:var(--font-mono);font-size:.85rem;line-height:1.8;color:var(--black);border-left:4px solid var(--black);padding-left:var(--space-sm)}[data-quadrant=system] .user-message{font-family:var(--font-mono);font-size:.8rem;background:var(--black);color:var(--canvas);padding:10px 14px;display:inline-block}[data-quadrant=system] .btn-primary{font-family:var(--font-mono);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:var(--black);color:var(--canvas);padding:12px 24px;border:var(--border-thick);box-shadow:var(--shadow-sm);display:inline-block}[data-quadrant=system] .btn-primary:hover{box-shadow:none;transform:translate(2px,2px)}[data-quadrant=system] .btn-ghost{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;border:var(--border-thick);padding:10px 20px;box-shadow:var(--shadow-sm);background:transparent}[data-quadrant=system] .btn-ghost:hover{box-shadow:none;transform:translate(2px,2px)}[data-quadrant=system] .label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grey)}[data-quadrant=system] input,[data-quadrant=system] textarea{font-family:var(--font-mono);font-size:.85rem;border:var(--border);padding:10px 12px;box-shadow:var(--shadow-inset);width:100%}[data-quadrant=system] hr{border:none;border-top:var(--border-thick);margin:var(--space-md) 0}[data-quadrant=workbench]{--font-body: var(--font-mono)}[data-quadrant=workbench] body,[data-quadrant=workbench]{background:var(--canvas)}.dymo-label{display:inline-block;background:var(--black);color:var(--canvas);font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;padding:4px 10px;box-shadow:1px 1px #ffffff26 inset,-1px -1px #0006 inset}.tape-border{position:relative;border:var(--border-thick);padding:var(--space-md);box-shadow:var(--shadow)}.tape-border:before,.tape-border:after{content:"";position:absolute;background:#fff000bf;border:1px solid rgba(0,0,0,.12);height:14px}.tape-border:before{top:-7px;left:16px;width:56px;transform:rotate(-1.5deg)}.tape-border:after{bottom:-7px;right:24px;width:40px;transform:rotate(1deg)}.deadline-tape{display:inline-block;background:var(--red);color:var(--canvas);font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:3px 10px;transform:rotate(-.5deg)}[data-quadrant=workbench] .coach-message{font-family:var(--font-mono);font-size:.85rem;line-height:1.8;color:var(--black);border-left:3px solid var(--black);padding-left:var(--space-sm)}[data-quadrant=workbench] .user-message{font-family:var(--font-mono);font-size:.8rem;background:var(--canvas-dark);border:var(--border);padding:10px 14px;display:inline-block;box-shadow:var(--shadow-sm)}[data-quadrant=workbench] .btn-primary{font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;background:var(--black);color:var(--canvas);padding:12px 24px;border:none;box-shadow:var(--shadow-sm);display:inline-block}[data-quadrant=workbench] .btn-primary:hover{box-shadow:none;transform:translate(2px,2px);transition:all .1s}[data-quadrant=workbench] .btn-ghost{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;border:var(--border-thick);padding:10px 18px;background:transparent;box-shadow:var(--shadow-sm)}[data-quadrant=workbench] .btn-ghost:hover{box-shadow:none;transform:translate(2px,2px);transition:all .1s}.commitment-done{text-decoration:line-through;text-decoration-thickness:2px;color:var(--grey)}[data-quadrant=workbench] .commitment-block{border:var(--border-thick);padding:var(--space-md);box-shadow:var(--shadow);position:relative;margin-bottom:var(--space-md)}.overdue-marker{display:inline-block;background:var(--red);color:var(--canvas);font-family:var(--font-mono);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:2px 8px;margin-left:8px}[data-quadrant=workbench] .label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grey)}[data-quadrant=workbench] .horizon-grid{display:grid;grid-template-columns:1fr 1fr 1fr;border:var(--border-thick);box-shadow:var(--shadow)}[data-quadrant=workbench] .horizon-cell{padding:var(--space-md);border-right:var(--border)}[data-quadrant=workbench] .horizon-cell:last-child{border-right:none}[data-quadrant=workbench] .workbench-header{border-bottom:var(--border-thick);padding-bottom:var(--space-sm);margin-bottom:var(--space-md);display:flex;justify-content:space-between;align-items:center}[data-quadrant=workbench] .log-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xs) 0;border-bottom:1px solid var(--grey-light)}.phase-progress{display:flex;align-items:center;gap:4px}.phase-pip{width:10px;height:10px;border:var(--border);background:transparent;flex-shrink:0}.phase-pip.done{background:var(--black)}.phase-pip.current{background:var(--yellow);border:var(--border-thick)}.phase-pip.pending{background:transparent}.phase-guide{border-left:3px solid var(--yellow);padding:var(--space-sm) var(--space-md);background:var(--canvas-dark)}.interview-checklist{display:flex;gap:var(--space-md);margin-top:8px;flex-wrap:wrap}.interview-check{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.03em}.interview-check.done{color:var(--black)}.interview-check.active{color:var(--black);font-weight:700}.interview-check.pending{color:var(--grey)}.signal-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);align-items:start}.oblique-card{border:var(--border-thick);padding:var(--space-md);box-shadow:var(--shadow);background:var(--canvas)}.oblique-text{font-size:1.05rem;line-height:1.6}.today-prompt-card{padding:var(--space-md);border-left:3px solid var(--black);background:var(--canvas-dark)}.today-prompt-text{font-size:.95rem;line-height:1.7;font-style:italic}[data-quadrant=sanctuary] .oblique-card{border:none;box-shadow:none;padding:0}[data-quadrant=sanctuary] .oblique-text{font-family:var(--font-serif);font-size:1.3rem;font-style:italic;line-height:1.9}[data-quadrant=sanctuary] .today-prompt-card{border-left:none;background:transparent;padding:0}[data-quadrant=sanctuary] .today-prompt-text{font-family:var(--font-serif);font-size:1.05rem;color:var(--grey)}[data-quadrant=sandbox] .oblique-card{transform:rotate(-.4deg);position:relative}[data-quadrant=sandbox] .oblique-card:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%) rotate(1deg);width:48px;height:14px;background:#fff000b3;border:1px solid rgba(0,0,0,.1)}[data-quadrant=sandbox] .oblique-text{font-family:var(--font-marker);font-size:1rem;line-height:1.7}[data-quadrant=system] .oblique-card{border:var(--border-thick);box-shadow:var(--shadow)}[data-quadrant=system] .oblique-text{font-family:var(--font-mono);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;line-height:1.7}.portfolio-block{border:var(--border);padding:var(--space-sm) var(--space-md)}.portfolio-block a:hover{opacity:.65}.milestone-track{display:flex;align-items:center;gap:var(--space-xs);margin-top:6px}.milestone-item{display:flex;flex-direction:column;align-items:center;gap:3px}.milestone-pip{width:24px;height:8px;border:var(--border);background:transparent}.milestone-done .milestone-pip{background:var(--black)}.milestone-current .milestone-pip{background:var(--yellow);border:var(--border-thick)}.milestone-pending .milestone-pip{background:transparent}.milestone-missed .milestone-pip{background:var(--red)}.horizon-grid-small{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.first-move-block{border:var(--border-thick);padding:var(--space-md);box-shadow:var(--shadow);position:relative;margin-bottom:var(--space-md)}@media (max-width: 640px){.signal-row,.horizon-grid-small{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.is-snapping .message-block,.is-snapping .note-card{animation:snap-to-grid .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes snap-to-grid{0%{transform:rotate(var(--current-rotation, -.5deg)) translateY(0)}40%{transform:rotate(.2deg) translateY(-4px)}to{transform:rotate(0) translateY(0)}}.is-snapping{background-image:linear-gradient(var(--grey-light) 1px,transparent 1px),linear-gradient(90deg,var(--grey-light) 1px,transparent 1px);background-size:32px 32px;animation:grid-fade-in .5s ease forwards}@keyframes grid-fade-in{0%{background-size:32px 32px;opacity:.3}to{background-size:32px 32px;opacity:1}}.phase-transition-flash{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--canvas);opacity:0;pointer-events:none;z-index:9998;animation:flash .4s ease forwards}@keyframes flash{0%{opacity:0}30%{opacity:.8}to{opacity:0}}.session-layout{display:flex;flex-direction:column;height:100vh;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-md)}.session-header{padding:12px var(--space-sm);background:var(--black);color:var(--canvas);display:flex;justify-content:space-between;align-items:center;flex-shrink:0;border-top:3px solid rgba(255,240,0,.6)}.message{display:flex;flex-direction:column}.message-user{align-items:flex-end}.message-assistant{align-items:flex-start}.message-content{max-width:88%;font-family:var(--font-body);font-size:.9rem;line-height:1.75;white-space:pre-wrap}.message-user .message-content{background:var(--canvas-dark);border:var(--border);padding:10px 14px;transform:rotate(.3deg);box-shadow:var(--shadow-sm)}.message-assistant .message-content{padding:0}.session-messages{flex:1;overflow-y:auto;padding:var(--space-md) 0;display:flex;flex-direction:column;gap:var(--space-md)}.session-input-area{border-top:var(--border);padding:var(--space-sm) 0 var(--space-md);display:flex;gap:var(--space-sm);align-items:flex-end;flex-shrink:0}.safety-watchful-bar{background:var(--yellow);color:var(--black);padding:6px var(--space-sm);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:var(--space-xs)}.safety-banner,.safety-redirected-bar{background:var(--black);color:var(--canvas);padding:var(--space-sm);font-family:var(--font-mono);font-size:.8rem;margin-bottom:var(--space-sm)}.message-block{display:flex;flex-direction:column}.message-block.user-message{align-items:flex-end}.message-block.coach-message{align-items:flex-start}.message-label{margin-bottom:4px;display:block}.message-text{max-width:88%;line-height:1.7;white-space:pre-wrap}.user-message .message-text{background:var(--grey-light);padding:12px 16px}.coach-message .message-text{background:transparent;padding:0}.sending-dots{font-family:var(--font-mono);font-size:.75rem;color:var(--grey);letter-spacing:.2em}@media (max-width: 640px){html{font-size:16px}.container{padding:0 var(--space-sm)}[data-quadrant=sandbox] .message-block,[data-quadrant=sandbox] .note-card,[data-quadrant=sandbox] .user-message{transform:none}[data-quadrant=workbench] .horizon-grid{grid-template-columns:1fr}[data-quadrant=workbench] .horizon-cell{border-right:none;border-bottom:var(--border)}[data-quadrant=workbench] .horizon-cell:last-child{border-bottom:none}h1{font-size:1.8rem}}
