:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#27231f;background:#f6f4f0;font-synthesis:none;--orange:#b94a15;--line:#ded9d1;--muted:#736d65}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button,a.button{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#302b26;cursor:pointer;text-decoration:none}button:hover,a.button:hover{background:#f3eee6}button.primary{background:var(--orange);color:white;border-color:var(--orange)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #df8c59;outline-offset:3px}.bar{height:72px;padding:0 28px;display:flex;gap:26px;align-items:center;border-bottom:1px solid var(--line);background:#fff}.brand{font-size:24px;letter-spacing:-1px;font-weight:750;color:#302b26;text-decoration:none}.brand span{font-size:11px;letter-spacing:2px;color:var(--orange);padding-left:12px}.tagline{color:var(--muted);font-size:14px}.account{display:flex;gap:12px;align-items:center;margin-left:auto;font-size:13px}.welcome{max-width:800px;padding:90px 32px;margin:auto}.welcome h1{font-size:clamp(32px,5vw,52px);line-height:1.14;font-weight:600;letter-spacing:-1.5px;margin:15px 0 24px}.welcome p{line-height:1.7;max-width:600px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--orange)}.quiet{color:var(--muted);font-size:13px;line-height:1.55}.notice{padding:14px 18px;background:#fff0db;border-left:3px solid #ca6a22;border-radius:4px;font-size:13px;line-height:1.6}.library{max-width:1120px;margin:auto;padding:40px 28px}.heading{display:flex;align-items:center;gap:12px;justify-content:space-between}.heading h1{font-size:30px;font-weight:600;letter-spacing:-.8px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:24px}.diagram-card{text-align:left;align-items:flex-start;flex-direction:column;min-height:190px;padding:24px;background:#fff}.diagram-card h2{font-size:21px;line-height:1.3;margin:12px 0;font-weight:600}.pill{font-size:11px;padding:4px 8px;border-radius:4px;background:#f1eee8;color:#665548}.workspace{padding:18px 22px}.workspace h1{font-size:23px;font-weight:600;margin:8px 0}.title-line{display:flex;gap:16px;align-items:center}.title-line a{font-size:13px;color:var(--muted)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:16px 0}.toolbar .spacer{flex:1}.toolbar label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px}.canvas-shell{position:relative;height:calc(100vh - 280px);min-height:450px;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.canvas-shell:fullscreen{height:100vh;border-radius:0}.canvas-shell:fullscreen #canvas{height:100%}#canvas{height:100%;width:100%;background-image:radial-gradient(#e3ded6 .8px,transparent .8px);background-size:18px 18px}.details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;overflow:auto;max-height:calc(100vh - 280px)}.details h2{font-size:20px;line-height:1.35;margin:10px 0}.details h3{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:22px 0 6px}.details p{font-size:14px;line-height:1.65;margin:8px 0}.details .subtle{font-size:12px;color:var(--muted)}.lesson-nav{display:flex;gap:8px;margin-top:18px}.lesson-nav button{flex:1}.step-selector{max-width:320px;border:1px solid var(--line);border-radius:8px;background:white;padding:10px;font-size:13px}.djs-element.selected-step .djs-visual>:first-child{stroke:#b94a15!important;stroke-width:3px!important}.djs-container svg{outline:none}.footer-hint{margin-top:10px;font-size:12px;color:var(--muted)}.versions{padding:12px 0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.versions select{padding:9px}#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:90vw;background:#302b26;color:white;padding:13px 20px;border-radius:9px;z-index:100;box-shadow:0 5px 24px #0002}dialog{width:min(780px,94vw);max-height:85vh;border:1px solid var(--line);border-radius:14px;padding:24px}dialog::backdrop{background:#18130d70}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-top h2{font-size:22px;font-weight:600}.access-person{padding:16px 0;border-top:1px solid var(--line)}.access-person strong{display:block;font-size:15px}.access-person small{color:var(--muted)}.grant-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:12px;padding-left:8px;font-size:13px}.error{color:#a32d20}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
@media(max-width:1000px){.workspace-grid{grid-template-columns:minmax(0,1fr) 280px}.bar{padding:0 18px}.tagline{display:none}.workspace{padding:16px}.toolbar .spacer{display:none}.canvas-shell{height:550px}.details{max-height:550px}}
@media(max-width:700px){.bar{height:auto;min-height:68px;padding:14px;flex-wrap:wrap;gap:12px}.account{font-size:11px;overflow-wrap:anywhere}.workspace-grid{grid-template-columns:1fr}.canvas-shell{height:52vh;min-height:340px}.details{max-height:none}.welcome{padding:50px 22px}.workspace{padding:12px}.title-line{flex-wrap:wrap}.toolbar{gap:6px}.toolbar button,.toolbar a.button{font-size:12px;padding:8px 10px}.step-selector{width:100%;max-width:none}.workspace h1{font-size:21px}.library{padding:24px 16px}.heading{flex-wrap:wrap}.grant-row{flex-wrap:wrap}}
