@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff")}.f-board{display:grid;gap:1rem;color:#202a32}.f-board *{box-sizing:border-box}.f-model{min-height:12rem;padding:clamp(1rem,3vw,1.6rem);border:1px solid #d8dedb;border-radius:1.15rem;background:#fffdf8;display:grid;gap:1.15rem;align-content:center;overflow:auto}.f-flow{display:flex;align-items:center;gap:.35rem;width:100%;overflow-x:auto;padding:.35rem 0}.f-flow-part{display:flex;align-items:center;flex:0 0 auto;gap:.35rem}.f-node{min-width:5rem;padding:.8rem .9rem;border:1.5px solid #89969a;border-radius:.8rem;background:#fff;text-align:center;font-size:.9rem;font-weight:650}.f-node.is-active{border-color:#126a78;background:#e7f4f1;box-shadow:0 0 0 3px #c3e6df}.f-node.is-muted{opacity:.45}.f-arrow,.f-edge{color:#57747a;font-weight:700}.f-cells{display:flex;gap:.35rem;width:max-content;max-width:100%;overflow-x:auto;padding:.3rem}.f-cell{min-width:3.55rem;padding:.6rem .5rem;border:1.5px solid #a4b5b5;border-radius:.65rem;background:#fff;display:grid;gap:.15rem;text-align:center}.f-cell small{color:#68777d;font-family:IBM Plex Mono,monospace;font-size:.69rem;white-space:nowrap}.f-cell strong{font-size:1.05rem;white-space:nowrap}.f-cell.is-active{border-color:#ad663d;background:#fff0e3}.f-lanes{display:grid;min-width:18rem;border:1px solid #d8dedb;border-radius:.65rem;overflow:hidden;font-family:IBM Plex Mono,monospace;font-size:.77rem}.f-lane-head,.f-lane-row{display:grid;grid-auto-columns:minmax(4rem,1fr);grid-auto-flow:column}.f-lane-head{background:#ecf1ef;color:#3b5258}.f-lane-head>*,.f-lane-row>*{padding:.5rem .55rem;min-width:0;overflow-wrap:anywhere;border-right:1px solid #e2e8e5}.f-lane-row{border-top:1px solid #e2e8e5;background:#fff}.f-lane-row.is-active{background:#e7f4f1}.f-code{overflow-x:auto;border:1px solid #d8dedb;border-radius:.65rem;background:#f6f7f5;padding:.45rem 0;font:.86rem/1.5 IBM Plex Mono,monospace}.f-code>div{white-space:pre;padding:.15rem .75rem}.f-code>div.is-active{background:#dff2ea;box-shadow:inset 3px 0 #126a78}.f-code-line{color:#82908e;display:inline-block;min-width:2rem;-webkit-user-select:none;user-select:none}.f-code code{font:inherit}.f-strip{display:flex;width:100%;min-width:20rem;border:1px solid #9eadae;border-radius:.6rem;overflow:hidden;font:.73rem IBM Plex Mono,monospace}.f-strip-segment{flex-basis:0;min-width:2.2rem;padding:.75rem .35rem;display:grid;place-items:center;text-align:center;border-right:1px solid #fff;background:#dae9e7}.f-strip-segment.a{background:#bfded9}.f-strip-segment.b{background:#f3d9bb}.f-strip-segment.c{background:#dbd6ee}.f-strip-segment.overhead{background:repeating-linear-gradient(135deg,#ece9e2,#ece9e2 6px,#dedbd4 6px 12px)}.f-ruler{font:.7rem IBM Plex Mono,monospace;color:#718084}.f-split{display:flex;flex-wrap:wrap;gap:.8rem;align-items:flex-start}.f-split>div{flex:1 1 9rem;min-width:0;display:grid;gap:.5rem}.f-detail{padding:.65rem .8rem;border-left:3px solid #698a88;background:#edf3f0;color:#35494d;font-size:.88rem}.f-pipe{display:flex;align-items:center;gap:.5rem;overflow-x:auto}.f-pipe-lines{flex:0 0 auto;min-width:5.5rem;padding:.6rem;border:1px solid #b6c4c3;border-radius:.4rem;background:#fff;font:.75rem/1.5 IBM Plex Mono,monospace}.f-process-tree{display:grid;justify-items:center;gap:.65rem;font:.83rem IBM Plex Mono,monospace}.f-process-tree>span,.f-process-tree>div>span{display:block;padding:.65rem;border:1px solid #91a5a2;border-radius:.55rem;background:#f4faf7}.f-process-tree>div{display:flex;gap:1rem}.f-address-space{border:2px solid #5a777a;border-radius:.8rem;padding:.8rem;display:grid;gap:.65rem}.f-shared{padding:.6rem;border-radius:.4rem;background:#e1eeea;font:.8rem IBM Plex Mono,monospace}.f-job-cards{display:flex;flex-wrap:wrap;gap:.4rem}.f-job-cards span{padding:.55rem .7rem;border:1px solid #a5b7b7;border-radius:.55rem;background:#fff;font:.76rem IBM Plex Mono,monospace}.f-priority-baseline{display:grid;gap:.3rem}.f-priority-baseline small{color:#62777a;font:700 .68rem IBM Plex Mono,monospace;text-transform:uppercase}.f-lock{display:grid;place-items:center;min-height:4rem;border:2px solid #ad663d;border-radius:.6rem;background:#fff0e3;font-weight:700}.f-wait-graph{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.55rem}.f-wait-graph small{font-size:.7rem;color:#617578}.f-kicker{color:#607b7b;font:700 .67rem IBM Plex Mono,monospace;letter-spacing:.07em;text-transform:uppercase}.f-worked{border-left:3px solid #126a78;padding:.45rem .85rem;background:#f2f7f3}.f-worked p{margin:.25rem 0 0;max-width:65ch;line-height:1.5}.f-question h3{font-size:clamp(1rem,2vw,1.22rem);margin:.25rem 0 0;line-height:1.35}.f-options{display:flex;flex-wrap:wrap;gap:.55rem}.f-option{flex:1 1 9rem;min-height:3.5rem;display:grid;align-content:center;gap:.2rem;text-align:left;padding:.7rem .85rem;border:1.5px solid #92aaa8;border-radius:.7rem;background:#fff;color:#1c353b;cursor:pointer;font:inherit}.f-option:hover,.f-option:focus-visible{border-color:#126a78;background:#e9f4f0;outline:none;box-shadow:0 0 0 3px #cde7df}.f-option strong{font-size:.88rem}.f-option span{font-size:.73rem;color:#566d70}.f-workspace-actions{display:flex;flex-wrap:wrap;gap:.5rem;border-top:1px dashed #bacac5;padding-top:.8rem}.f-boundary{display:grid;gap:.25rem}.f-boundary>div{padding:.55rem .75rem;border:1px solid #b4c2bd;border-radius:.45rem;display:flex;justify-content:space-between;gap:.5rem;font-size:.82rem;background:#fff}.f-boundary>div:nth-child(2){border-style:dashed;border-color:#ae764d;background:#fff3e8;color:#8b4e28;text-transform:uppercase;letter-spacing:.08em;font:700 .7rem IBM Plex Mono,monospace}.f-boundary>div:nth-child(3){background:#e6f1ed}.f-touch{flex:1 1 7.5rem;min-height:3.6rem;border:1.5px solid #6d9992;border-radius:.65rem;background:#f2faf5;color:#184e4b;display:grid;align-content:center;gap:.15rem;text-align:center;padding:.55rem;font:inherit;cursor:pointer}.f-touch strong{font-size:.82rem;line-height:1.35}.f-touch small{font-size:.67rem;color:#5c7471}.f-touch:hover,.f-touch:focus-visible{outline:none;border-color:#126a78;background:#dff3ed;box-shadow:0 0 0 3px #c2e7dc}.f-explain-controls{display:flex;justify-content:space-between;gap:.5rem;margin-top:.65rem}.f-explain-controls button{min-height:2.8rem;padding:.35rem .75rem;border:1px solid #91aaa4;border-radius:.5rem;background:#fff;color:#244942;font:inherit;cursor:pointer}.f-explain-controls button:disabled{opacity:.42;cursor:default}.f-explain-controls button:not(:disabled):hover,.f-explain-controls button:not(:disabled):focus-visible{border-color:#126a78;outline:2px solid #c2e7dc}.f-done{display:flex;flex-wrap:wrap;gap:.4rem .8rem;color:#1f6759;font-size:.9rem}@media(max-width:600px){.f-model{min-height:10rem;padding:.8rem}.f-option{flex-basis:calc(50% - .4rem);min-height:3.8rem}.f-node{min-width:4.4rem;padding:.7rem .55rem;font-size:.77rem}.f-cells{width:100%}.f-cell{min-width:3rem}.f-pipe{display:grid;justify-content:start}.f-pipe .f-flow{max-width:calc(100vw - 4rem)}}.sys-board{display:grid;gap:1.05rem;color:#17212b}.sys-model{min-width:0;border:1px solid #d8dee5;background:#fff;padding:clamp(.65rem,2vw,1.25rem);overflow-x:auto}.sys-pan-cue{display:none}.sys-decision{display:grid;gap:.75rem}.sys-question{margin:0;font-size:1.12rem;font-weight:650;line-height:1.35}.sys-error{margin:0;padding:.55rem .7rem;border-left:3px solid #bb563e;background:#f9ede9;color:#7d3826;font-size:.91rem;line-height:1.4}.sys-choices{display:flex;flex-wrap:wrap;gap:.55rem}.sys-choices button{appearance:none;border:1.5px solid #9aacc1;border-radius:.55rem;background:#fff;color:#17212b;padding:.75rem .85rem;min-height:44px;line-height:1.25;font:inherit;text-align:left;cursor:pointer;transition:border-color .12s,background .12s}.sys-choices button:hover,.sys-choices button:focus-visible{border-color:#275dce;background:#edf3ff;outline:2px solid #275dce;outline-offset:2px}.sys-note,.sys-done{margin:0;max-width:65ch;line-height:1.5;color:#394a5d}.sys-explain{display:grid;gap:.7rem}.sys-explain-nav{display:flex;gap:.65rem;align-items:center;justify-content:flex-start;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.8rem;color:#526177}.sys-explain-nav button{min-height:44px;border:1px solid #9aacc1;background:#fff;color:#17212b;padding:.45rem .7rem;border-radius:.3rem;cursor:pointer;font:inherit}.sys-explain-nav button:disabled{opacity:.45;cursor:default}.sys-explain-nav button:focus-visible{outline:2px solid #275dce;outline-offset:2px}.sys-done{padding:.75rem 1rem;background:#edf3ff;border-left:3px solid #275dce}.sys-net{margin:0;min-width:600px}.sys-net svg{display:block;width:100%;height:auto;max-height:320px}.sys-net figcaption,.sys-strip figcaption,.sys-path figcaption{font-size:.86rem;color:#526177;margin:.55rem .1rem 0;line-height:1.35}.sys-svg-label{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:14px;fill:#17212b}.sys-svg-small{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;fill:#bb563e}.sys-target{cursor:pointer}.sys-target:focus-visible{outline:3px solid #275dce;outline-offset:2px}.sys-table-wrap{overflow-x:auto}.sys-table{border-collapse:collapse;width:100%;min-width:340px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.88rem}.sys-table th,.sys-table td{padding:.65rem .55rem;text-align:left;border-bottom:1px solid #d8dee5;white-space:nowrap}.sys-table th{background:#f2f5f8;color:#3b4c60;font-weight:600}.sys-table tbody tr:last-child td{border-bottom:0}.sys-row-target{background:#edf3ff}.sys-cell-button{font:inherit;font-weight:700;min-height:44px;min-width:44px;border:1.5px solid #275dce;background:#fff;color:#153d89;border-radius:.25rem;cursor:pointer}.sys-cell-button:focus-visible{outline:2px solid #275dce;outline-offset:2px}.sys-diagram-note{margin:.7rem .1rem .1rem;color:#526177;font-size:.9rem;line-height:1.4}.sys-strip{margin:.8rem 0 0;min-width:320px}.sys-strip-row{display:flex;align-items:stretch;gap:2px;min-height:82px}.sys-strip-block{display:flex;justify-content:center;align-items:center;min-width:2.2rem;flex-basis:0;border:1.5px solid #9baec2;background:#f7f9fb;color:#26384e;padding:.3rem;text-align:center;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.78rem;overflow-wrap:anywhere}.sys-strip-block.free{background:#eaf3ff;border-color:#275dce}.sys-strip-block.used{background:#dfe5eb;border-color:#65758b}.sys-strip-block.blocked{background:#f7e7e1;border-color:#bb563e;color:#8b3c2a}.sys-block-target{font:inherit;cursor:pointer;border-width:2px;border-style:dashed}.sys-block-target:hover,.sys-block-target:focus-visible{outline:2px solid #275dce;outline-offset:2px;background:#edf3ff}.sys-path{margin:.2rem 0 1rem;min-width:320px}.sys-path>div{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.sys-path-item{display:inline-flex;gap:.3rem;align-items:center;padding:.55rem .6rem;border:1px solid #b9c6d3;background:#f7f9fb;border-radius:.3rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.82rem}.sys-path-item b{color:#275dce;margin-left:.3rem;font-size:1.1rem}.sys-path-target{cursor:pointer;border:1.5px dashed #275dce;color:#153d89}.sys-model-targets{display:flex;gap:.45rem;flex-wrap:wrap;margin:.75rem 0}.sys-model-targets button{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:5rem;min-height:48px;border:1.5px dashed #275dce;background:#edf3ff;color:#153d89;border-radius:.3rem;padding:.5rem .65rem;cursor:pointer;font:inherit;text-align:left}.sys-model-targets button small{font-size:.7rem;color:#526177}.sys-model-targets button:hover,.sys-model-targets button:focus-visible{outline:2px solid #275dce;outline-offset:2px;background:#dceaff}.sys-address-map{display:flex;flex-direction:column;max-width:15rem;border:2px solid #26384e;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.8rem}.sys-address-map span{padding:.45rem .65rem;border-bottom:1px solid #a9b7c6}.sys-address-map span:nth-child(3){background:#eaf3ff;color:#153d89}.sys-address-map span:last-child{border-bottom:0;background:#f0f3f6}.sys-buddy-tree{display:grid;gap:.3rem;min-width:320px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.78rem;text-align:center}.sys-buddy-tree>div{display:flex;gap:.25rem;justify-content:center}.sys-buddy-tree>div:first-child{display:block;border:1.5px solid #26384e;padding:.4rem}.sys-buddy-tree span{border:1px solid #b9c6d3;background:#f7f9fb;padding:.45rem;flex:1}.sys-buddy-tree button{flex:1;min-height:48px;padding:.45rem;border:1.5px dashed #275dce;background:#edf3ff;color:#153d89;cursor:pointer;font:inherit}.sys-buddy-tree button:hover,.sys-buddy-tree button:focus-visible{outline:2px solid #275dce;outline-offset:2px}.sys-bits{display:flex;align-items:stretch;flex-wrap:wrap;gap:.2rem;margin-bottom:1rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85rem}.sys-bits span:not(.sys-bit-arrow){border:1.5px solid #9aaabd;min-width:6.5rem;padding:.55rem .75rem;text-align:center}.sys-bits b{font-size:1.15rem;letter-spacing:.11em}.sys-bits .sys-page{background:#f1f4f7}.sys-bits .sys-offset{background:#e9f1ff;border-color:#275dce!important}.sys-bits .sys-frame{background:#fff}.sys-bits .sys-bit-target{font:inherit;cursor:pointer;border-style:dashed}.sys-bits .sys-bit-target:hover,.sys-bits .sys-bit-target:focus-visible{outline:2px solid #275dce;outline-offset:2px}.sys-bit-arrow{font-size:1.5rem;color:#275dce;align-self:center;padding:0 .3rem}.sys-file-objects{display:flex;gap:.5rem;flex-wrap:wrap;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85rem}.sys-file-objects>div{flex:1;min-width:13rem;border:1px solid #b9c6d3;padding:.7rem;background:#f7f9fb;line-height:1.7}.sys-file-window{border-top:1px solid #d8dee5;margin-top:.75rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.83rem}.sys-file-window p{margin:.65rem 0 .25rem}.sys-inode{text-align:center;min-width:320px}.sys-inode-root{display:inline-block;padding:.55rem 1.5rem;border:2px solid #26384e;background:#fff}.sys-inode-branches{display:flex;gap:.35rem;margin-top:1.1rem}.sys-inode-branches>div,.sys-inode-branches>button{flex:1;min-width:0;padding:.65rem .2rem;background:#eaf3ff;border:1.5px solid #275dce;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.77rem;overflow-wrap:anywhere}.sys-inode-branches>button{cursor:pointer;border-style:dashed;color:#153d89}.sys-inode-branches>button:hover,.sys-inode-branches>button:focus-visible{outline:2px solid #275dce;outline-offset:2px}.sys-inode-branches b{display:block;margin-top:.3rem}.sys-inode p{font-size:.83rem;color:#526177}.sys-layouts{display:grid;gap:.4rem;min-width:320px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.83rem}.sys-layouts>div{display:flex;gap:.8rem;border-bottom:1px solid #d8dee5;padding:.55rem 0;align-items:center}.sys-layouts b{min-width:6.5rem}.sys-layouts span{overflow-wrap:anywhere}.sys-layouts small{color:#526177}.sys-link-map{display:grid;gap:.5rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85rem;min-width:320px}.sys-link-map span{padding:.55rem;border:1px solid #b9c6d3;background:#f7f9fb}.sys-link-map .removed{text-decoration:line-through;color:#8a97a5;background:#fff}.sys-lanes{display:grid;gap:.3rem;min-width:340px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.78rem}.sys-lanes>div{display:grid;grid-template-columns:minmax(7rem,1fr) repeat(4,minmax(3.5rem,1fr));gap:2px}.sys-lanes b,.sys-lanes span{border:1px solid #c1ccd7;padding:.55rem .35rem;text-align:center;background:#f7f9fb}.sys-lanes b{background:#e7eef6;text-align:left}.sys-reach{margin:1rem auto 0;min-width:600px;max-width:600px;font-family:IBM Plex Mono,ui-monospace,monospace}.sys-reach svg{display:block;width:100%;height:auto}.sys-reach figcaption{font-size:.84rem;color:#526177;margin:.3rem .1rem 0}@media(max-width:620px){.sys-board{gap:.85rem}.sys-model{padding:.55rem}.sys-pan-cue{display:block;margin:0 0 -.45rem;color:#526177;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.75rem}.sys-choices{display:grid;grid-template-columns:1fr}.sys-choices button{width:100%;min-height:48px}.sys-question{font-size:1rem}.sys-net{min-width:600px}.sys-inode-branches{gap:.2rem}.sys-inode-branches>div,.sys-inode-branches>button{font-size:.68rem;padding:.5rem .1rem}.sys-lanes{font-size:.68rem}}@media(prefers-reduced-motion:reduce){.sys-choices button{transition:none}}.paper-card{width:100%;max-width:860px;min-width:0;overflow:hidden;margin:0 auto 4rem;background:#fff;color:#17212b;border:1px solid #d8dee5;box-shadow:0 10px 30px #17212b0f;font-family:Arial,Helvetica,sans-serif;line-height:1.46}.paper-header{padding:2rem 2.25rem 1rem;border-bottom:2px solid #17212b}.paper-kicker{color:#526171;font-size:.82rem;font-weight:700;letter-spacing:.035em}.paper-header h1{font-size:clamp(1.25rem,3vw,1.7rem);line-height:1.2;margin:.45rem 0}.paper-pages{color:#667687;font-size:.84rem}.paper-prompt,.paper-solution{padding:1.5rem 2.25rem 2rem;min-width:0;overflow-x:auto}.paper-prompt>:first-child,.paper-solution>:first-child{margin-top:0}.paper-text{max-width:72ch;margin:.85rem 0 1.15rem}.paper-text strong{font-weight:700}.paper-code{overflow-x:auto;white-space:pre;padding:1rem 1.2rem;margin:1.15rem 0;background:#fafbfc;border:1px solid #d8dee5;color:#17212b;font:500 .86rem/1.55 IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;tab-size:4}.paper-table-scroll{overflow-x:auto;margin:1.1rem 0 1.4rem}.paper-table{border-collapse:collapse;font-size:.93rem;min-width:min(100%,310px)}.paper-table th,.paper-table td{text-align:left;padding:.43rem .85rem;border-bottom:1px solid #b9c2cb;vertical-align:top}.paper-table thead th{border-top:2px solid #17212b;border-bottom:2px solid #17212b;font-weight:700}.paper-table tbody tr:last-child td{border-bottom:2px solid #17212b}.paper-checks{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.65rem}.paper-checks li{display:flex;gap:.75rem;align-items:flex-start}.paper-checkbox{border:2px solid #17212b;width:1.08rem;height:1.08rem;flex:0 0 1.08rem;margin-top:.15rem}.paper-rule{padding:1rem 1.2rem;margin:1.1rem 0;border-left:3px solid #275dce;background:#f4f7fd}.paper-answer-lines{min-height:110px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 34px,#d8dee5 35px,transparent 36px);margin:1rem 0}.paper-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1.1rem 2.25rem;border-top:1px solid #d8dee5}.paper-actions button,.paper-actions a{min-height:44px;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-weight:700;font-size:.9rem;border-radius:5px;padding:.55rem .9rem}.paper-solution-toggle{border:1px solid #275dce;background:#275dce;color:#fff;cursor:pointer}.paper-pdf-link{border:1px solid #d8dee5;color:#275dce;text-decoration:none}.paper-actions :is(button,a):focus-visible{outline:3px solid #275dce;outline-offset:3px}.paper-solution{border-top:2px solid #275dce;background:#fcfdff}.paper-solution h2{margin:0 0 1rem;font-size:1.12rem}.paper-caution{border-left:3px solid #bb563e;background:#fff8f5;padding:.8rem 1rem;margin:1rem 0}.paper-caution .paper-text{margin:0}.paper-gantt{display:flex;overflow-x:auto;padding:.5rem 0 1rem}.paper-gantt-cell{min-width:48px;border:1px solid #aab6c2;margin-left:-1px;padding:.35rem .3rem;text-align:center;font:600 .8rem/1.2 IBM Plex Mono,ui-monospace,monospace}.paper-gantt-cell small{display:block;font-size:.7rem;color:#526171;font-weight:400}.paper-gantt-cell.is-switch{background:#f4f7fd}.paper-gantt-solved{overflow-x:auto;margin:1.2rem 0}.paper-solved-ruler{position:relative;height:27px;font:.7rem IBM Plex Mono,ui-monospace,monospace}.paper-solved-ruler b{display:inline-block;width:64px}.paper-solved-ruler span{position:absolute;top:0;transform:translate(-50%)}.paper-solved-lane{display:flex;min-height:33px;align-items:center}.paper-solved-lane>b{width:64px;flex:0 0 64px;font:700 .8rem IBM Plex Mono,ui-monospace,monospace}.paper-solved-track{position:relative;height:30px;border-top:1px solid #d8dee5;border-bottom:1px solid #aab6c2;background:repeating-linear-gradient(to right,#e2e7eb 0,#e2e7eb 1px,transparent 1px,transparent 31px)}.paper-solved-track span{position:absolute;top:2px;bottom:2px;display:grid;place-items:center;box-sizing:border-box;border:1px solid #275dce;background:#e9effb;font:700 .72rem IBM Plex Mono,ui-monospace,monospace}.paper-solved-track span.is-switch{border-color:#526171;background:#eef0f2}.paper-figure-scroll{overflow-x:auto}.paper-figure.paper-reach-figure{min-width:780px;max-width:none}.paper-figure.paper-train-figure{min-width:650px;max-width:none}.paper-gantt-blank{width:100%;overflow-x:auto;margin:1.3rem 0}.paper-gantt-times{display:flex;padding-left:4rem;width:max-content}.paper-gantt-times span{width:31px;flex:0 0 31px;font:.68rem IBM Plex Mono,ui-monospace,monospace;color:#526171}.paper-gantt-lane{display:flex;width:max-content;min-height:28px;align-items:center}.paper-gantt-lane b{width:4rem;font:.8rem IBM Plex Mono,ui-monospace,monospace}.paper-gantt-track{width:961px;height:25px;border-bottom:1px solid #aab6c2;background:repeating-linear-gradient(to right,#e2e7eb 0,#e2e7eb 1px,transparent 1px,transparent 31px)}.paper-bullets{padding-left:1.45rem;margin:.75rem 0 1.15rem}.paper-bullets li{margin:.3rem 0}.paper-figure{display:block;width:min(100%,640px);max-width:100%;height:auto;border:1px solid #d8dee5;background:#fff;margin:1rem 0}.paper-figure text{font-family:IBM Plex Mono,ui-monospace,monospace;fill:#17212b}.paper-figure-caption{color:#647383;font-size:.78rem;margin:-.35rem 0 1.1rem}.paper-pan-cue{display:none;color:#526171;font:600 .75rem IBM Plex Mono,ui-monospace,monospace}.paper-memory-row{overflow-x:auto;margin:.85rem 0}.paper-memory-label{display:block;font:700 .8rem IBM Plex Mono,ui-monospace,monospace;margin-bottom:.25rem}.paper-memory-strip{display:flex;width:max-content;min-width:100%;border:1px solid #aab6c2}.paper-memory-cell{box-sizing:border-box;width:24px;height:40px;flex:0 0 24px;border-right:1px solid #c9d1d9;text-align:center;background:#fff;display:flex;flex-direction:column;justify-content:space-between;font:700 .72rem IBM Plex Mono,ui-monospace,monospace}.paper-memory-cell.occupied{background:#e9effb}.paper-memory-cell small{font-size:.55rem;font-weight:400;color:#526171}@media(max-width:600px){.paper-card{border-left:0;border-right:0;box-shadow:none;margin-bottom:1.5rem}.paper-header,.paper-prompt,.paper-solution,.paper-actions{padding-left:1rem;padding-right:1rem}.paper-code{font-size:.72rem}.paper-table{font-size:.8rem}.paper-table th,.paper-table td{padding:.4rem .5rem}.paper-actions>*{flex:1 1 100%}.paper-pan-cue{display:block;margin:.15rem 0 .6rem}}:root{font-family:DM Sans,system-ui,sans-serif;color:#17212b;background:#f1f3f5;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #275dce;outline-offset:3px}.app-shell{min-height:100vh}.site-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1120px)/2));background:#fff;border-bottom:1px solid #d8dee5}.site-brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;letter-spacing:-.025em}.site-brand small{display:block;font-size:11px;font-weight:500;letter-spacing:.02em;color:#697886}.site-mark{width:34px;height:34px;border-radius:10px;background:#17212b;color:#fff;display:grid;place-items:center;font-weight:700}.header-resume{font-size:14px;font-weight:700;color:#275dce}.site-footer{max-width:1120px;margin:64px auto 0;padding:24px 0 38px;border-top:1px solid #d8dee5;color:#697886;display:flex;justify-content:space-between;font-size:13px}.site-footer a{color:#275dce}.app-shell main{max-width:1120px;margin:0 auto;padding:0 0 40px}.eyebrow{display:block;color:#607180;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.page-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:25px 0 34px;color:#607180;font-size:14px}.page-top a{min-height:44px;display:flex;align-items:center;color:#275dce;font-weight:700}.page-top span{font-family:IBM Plex Mono,monospace;font-size:12px}.map-intro{padding:76px 0 46px;max-width:750px}.map-intro h1{font-size:clamp(36px,5vw,62px);line-height:1.05;letter-spacing:-.055em;margin:16px 0 20px}.map-intro p{font-size:19px;line-height:1.5;color:#4c5c69;max-width:650px}.resume{display:inline-flex;align-items:center;justify-content:space-between;min-width:200px;min-height:52px;padding:0 20px;margin-top:18px;background:#275dce;color:#fff;border-radius:11px;font-weight:700}.room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.room-card{background:#fff;border:1px solid #d8dee5;border-radius:14px;min-height:166px;padding:21px 24px;display:flex;flex-direction:column;position:relative;transition:border-color .15s,transform .15s}.room-card:hover{border-color:#275dce;transform:translateY(-2px)}.room-index{font:12px IBM Plex Mono,monospace;color:#275dce;margin-bottom:15px}.room-card strong{font-size:22px;letter-spacing:-.025em}.room-card>span:nth-child(3){font-size:14px;line-height:1.4;color:#596a78;margin:6px 25px 18px 0}.room-card small{margin-top:auto;color:#6f7c87;font-size:12px}.room-card b{position:absolute;right:22px;top:24px;font-size:20px;color:#275dce}.map-tools{border-top:1px solid #d8dee5;margin-top:38px;padding-top:20px;display:flex;gap:24px;align-items:center;justify-content:space-between;color:#536473;font-size:14px}.map-tools div{display:flex;gap:8px}.map-tools button,.board-actions button,.hints button{min-height:44px;padding:8px 14px;border:1px solid #b9c5d0;background:#fff;border-radius:9px;color:#263848;font-weight:700}.map-tools button:hover,.board-actions button:hover:not(:disabled),.hints button:hover:not(:disabled){border-color:#275dce;color:#275dce}.map-tools [role=alert]{color:#bb563e}.room-page,.board-page,.paper-page{max-width:820px;margin:0 auto}.room-head{margin-bottom:30px}.room-head h1,.board-heading h1{font-size:clamp(33px,4vw,48px);letter-spacing:-.045em;line-height:1.08;margin:12px 0}.room-head p,.board-heading p{font-size:17px;line-height:1.5;color:#51616e;margin:0}.room-rows{border-top:1px solid #bdc7d1}.room-row-wrap{border-bottom:1px solid #bdc7d1}.room-board-row{display:flex;align-items:center;gap:20px;min-height:100px;padding:14px 4px}.room-board-row:hover .row-main strong,.room-paper-row:hover{color:#275dce}.row-number{width:40px;align-self:flex-start;padding-top:12px;color:#275dce;font:14px IBM Plex Mono,monospace}.row-main{display:flex;flex:1;flex-direction:column;gap:4px}.row-main strong{font-size:21px;letter-spacing:-.02em}.row-main small{color:#607180;font-size:14px;line-height:1.35}.row-meta{color:#687987;font-size:12px;white-space:nowrap}.row-meta b{color:#275dce;font-size:18px;margin-left:10px}.room-paper-row{min-height:52px;display:flex;align-items:center;gap:12px;padding:7px 7px 7px 64px;color:#344756;font-size:14px}.room-paper-row>span:first-child{font-size:19px;color:#bb563e}.room-paper-row small{margin-left:auto;color:#73818d}.room-paper-row b{font-size:18px;color:#275dce}.board-heading{margin-bottom:26px}.board-mode{display:inline-flex;gap:3px;padding:4px;background:#e3e8ed;border-radius:10px;margin-bottom:18px}.board-mode button{border:0;background:transparent;min-height:40px;padding:0 20px;border-radius:7px;color:#566777;font-weight:700}.board-mode button.active{background:#fff;color:#17212b;box-shadow:0 1px 3px #17212b22}.board-question{font-size:21px;line-height:1.38;letter-spacing:-.015em;min-height:42px;margin:0 0 18px}.board-question strong{font-weight:600}.board-canvas{background:#fff;border:1px solid #c5cfd9;border-radius:15px;min-height:360px;padding:24px;overflow:auto}.board-feedback,.board-solved{padding:13px 16px;background:#fff;border-left:4px solid #bb563e;margin:14px 0;font-size:15px;line-height:1.45}.board-solved{border-color:#275dce}.board-actions{display:flex;justify-content:space-between;gap:12px;margin:18px 0}.board-actions>div{display:flex;gap:8px}.hints{border-top:1px solid #d8dee5;padding:22px 0}.hints ol{margin:16px 0 0;padding-left:24px;color:#435462;line-height:1.5}.hints li+li{margin-top:8px}.source-group{margin:22px 0 0;border-top:1px solid #d8dee5;padding-top:22px}.source-group h2{font-size:17px;margin:0 0 12px}.source-row{display:flex;gap:15px;align-items:center;min-height:65px;border:1px solid #c5cfd9;background:#fff;border-radius:9px;padding:10px 14px;margin:8px 0}.source-row>span:first-child{font-size:24px;color:#bb563e}.source-row>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:2px}.source-row strong{font-size:14px}.source-row small{font-size:12px;color:#607180}.source-row b{color:#275dce}.bottom-nav{display:flex;justify-content:flex-end;margin:30px 0}.bottom-nav a{min-height:48px;display:flex;gap:25px;align-items:center;padding:0 20px;border-radius:9px;background:#17212b;color:#fff;font-weight:700}.term-link{border:0;background:transparent;border-bottom:2px dotted #275dce;padding:0 1px;color:inherit;font-weight:inherit;line-height:inherit}.term-link.first{color:#275dce;background:#e7edff;border-radius:3px}.term-link.quiet{border-bottom-color:#8aa2db}.term-overlay{position:fixed;z-index:30;inset:0;background:#17212b66;display:flex;align-items:center;justify-content:center;padding:16px}.term-card{width:min(420px,100%);background:#fff;border-radius:14px;padding:22px;box-shadow:0 18px 70px #14233444}.term-card>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:15px}.term-card strong{font-size:23px}.term-card button{border:0;background:#edf1f5;border-radius:8px;min-width:44px;min-height:44px;font-size:23px}.term-card p{line-height:1.5;color:#354656}.term-picture{padding:21px 13px;background:#f5f7fa;border:1px solid #d8dee5;border-radius:10px;font:14px IBM Plex Mono,monospace;color:#275dce;white-space:pre-wrap;text-align:center}@media(max-width:900px){.app-shell main{padding:0 22px 38px}.site-header{padding:0 22px}.site-footer{margin:50px 22px 0}}@media(max-width:640px){.site-header{height:62px;padding:0 16px}.site-brand{font-size:16px}.site-brand small{font-size:10px}.header-resume{font-size:12px}.app-shell main{padding:0 16px 32px}.map-intro{padding:45px 0 30px}.map-intro p{font-size:16px}.room-grid{grid-template-columns:1fr}.room-card{min-height:140px;padding:18px}.room-card strong{font-size:20px}.map-tools{display:block}.map-tools>div{margin-top:15px}.page-top{margin:14px 0 26px}.page-top span{font-size:11px}.board-canvas{padding:15px;min-height:330px;border-radius:12px}.board-question{font-size:19px}.board-actions{align-items:flex-start}.board-actions>div{flex-wrap:wrap}.board-actions button{font-size:13px}.room-board-row{gap:10px;min-height:90px}.row-number{width:32px}.row-main strong{font-size:18px}.row-main small{font-size:12px}.row-meta{font-size:0}.row-meta b{font-size:18px}.room-paper-row{padding-left:43px}.room-paper-row small{display:none}.term-overlay{align-items:flex-end;padding:0}.term-card{border-radius:15px 15px 0 0;width:100%;padding:24px 20px 32px}.site-footer{margin:40px 16px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.room-card{transition:none}}.map-intro{padding:58px 0 24px;max-width:850px}.map-intro h1{font-size:clamp(32px,4vw,46px);letter-spacing:-.04em;line-height:1.1;margin:12px 0}.map-intro p{font-size:16px;max-width:660px;margin:0;color:#526270}.resume-row{display:flex;align-items:center;gap:20px;min-height:74px;padding:12px 21px;background:#17212b;color:#fff;border-radius:11px;margin:25px 0 22px}.resume-row span{font:12px IBM Plex Mono,monospace;letter-spacing:.08em;color:#a9bacb}.resume-row strong{font-size:18px;font-weight:700;flex:1}.resume-row b{font-size:22px}.room-grid{display:block;border-top:1px solid #c5cfd9}.room-card{display:grid;grid-template-columns:34px 126px minmax(0,1fr) auto 20px;align-items:center;gap:20px;min-height:110px;padding:17px 10px;border:0;border-bottom:1px solid #c5cfd9;border-radius:0;background:transparent;transition:background .15s}.room-card:hover{background:#fff;transform:none;border-color:#c5cfd9}.room-index{margin:0;align-self:center}.room-glyph{width:120px;height:66px;color:#275dce;background:#fff;border:1px solid #d8dee5;border-radius:8px;padding:8px}.room-card>span.room-summary{display:flex;flex-direction:column;gap:5px;margin:0;color:#17212b;line-height:1.25}.room-summary strong{font-size:20px}.room-card>.room-summary strong{color:#17212b}.room-summary span{font-size:14px;color:#586977}.room-card small{margin:0;white-space:nowrap;font-size:12px;color:#667784}.room-card b{position:static;font-size:20px}@media(max-width:700px){.map-intro{padding:36px 0 16px}.resume-row{gap:12px;margin:20px 0 14px}.resume-row strong{font-size:16px}.room-card{grid-template-columns:24px 88px minmax(0,1fr) 16px;gap:10px;min-height:96px;padding:11px 2px}.room-glyph{width:86px;height:55px}.room-summary strong{font-size:17px}.room-summary span{font-size:12px}.room-card small{display:none}}@media(max-width:390px){.room-card{grid-template-columns:22px 65px minmax(0,1fr) 14px;gap:7px}.room-glyph{width:64px;height:50px}.room-summary strong{font-size:16px}.room-summary span{font-size:11px}}.header-links{display:flex;align-items:center;gap:22px}.header-timer{font:700 13px IBM Plex Mono,monospace;color:#bb563e;white-space:nowrap}.paper-shelf{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:29px 0 22px;border-bottom:1px solid #c5cfd9}.paper-shelf h2{font-size:21px;margin:5px 0 0;letter-spacing:-.02em}.paper-shelf-links{display:flex;gap:9px}.paper-shelf-links a{background:#fff;border:1px solid #c5cfd9;border-radius:8px;min-height:48px;min-width:195px;padding:12px 14px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-weight:700}.paper-shelf-links a:hover{border-color:#275dce;color:#275dce}.paper-shelf-links span{font:12px IBM Plex Mono,monospace;color:#687987}.rehearsal-page{max-width:850px;margin:0 auto}.rehearsal-clock{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:#fff;border:1px solid #c5cfd9;border-radius:10px;margin:23px 0}.rehearsal-clock div{display:flex;flex-direction:column;gap:3px}.rehearsal-clock small{font:700 11px IBM Plex Mono,monospace;letter-spacing:.06em;color:#687987}.rehearsal-clock strong{font:700 30px IBM Plex Mono,monospace;color:#17212b}.rehearsal-clock button{border:1px solid #275dce;background:#275dce;color:#fff;border-radius:8px;padding:11px 16px;min-height:44px;font-weight:700}.rehearsal-list{border-top:1px solid #bdc7d1}.rehearsal-list a{display:grid;grid-template-columns:34px 130px minmax(0,1fr) 70px 20px;gap:14px;align-items:center;min-height:63px;border-bottom:1px solid #bdc7d1;padding:10px 5px}.rehearsal-list a:hover{background:#fff;color:#275dce}.rehearsal-list a>span:first-child,.rehearsal-list small{font:12px IBM Plex Mono,monospace;color:#71808b}.rehearsal-list strong{font-size:14px}.rehearsal-list a>span:nth-child(3){font-size:14px;color:#536473}.rehearsal-list b{font-size:18px;color:#275dce}.paper-sequence{display:flex;justify-content:space-between;margin:20px 0 45px}.paper-sequence a{display:inline-flex;align-items:center;min-height:44px;padding:0 15px;border:1px solid #b9c5d0;background:#fff;border-radius:8px;color:#275dce;font-weight:700;font-size:14px}@media(max-width:700px){.paper-shelf{display:block}.paper-shelf-links{margin-top:16px;flex-direction:column}.paper-shelf-links a{min-width:0}.rehearsal-list a{grid-template-columns:23px 100px minmax(0,1fr) 16px;gap:8px}.rehearsal-list small{display:none}.rehearsal-list a>span:nth-child(3){font-size:12px}.header-links{gap:10px}.header-timer{font-size:11px}}
