@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#202334;background:#f8f9fc;font-size:16px;--blue:#2938df;--line:#dee1eb;--muted:#636879}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ef936d;outline-offset:3px}header{height:98px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:white}.brand{text-decoration:none;color:#222742;font:bold 2rem 'Manrope',sans-serif;letter-spacing:-1.7px}.brand span{color:var(--blue)}.brand i{font:500 .875rem 'DM Sans',sans-serif;letter-spacing:0;border-left:1px solid #d7dbe8;margin-left:24px;padding-left:24px;color:var(--muted)}.version{font-size:.75rem;letter-spacing:1.5px;color:var(--muted)}main{max-width:1500px;margin:auto;padding:0 5vw}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:44px 0 40px}.eyebrow{font-size:.75rem;letter-spacing:1.6px;font-weight:700;color:var(--blue);margin:0 0 14px}h1{font:600 clamp(2.5rem,4.5vw,4.4rem)/1.08 'Manrope',sans-serif;letter-spacing:-2.5px;margin:0}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--blue)}.intro>p{font-size:1rem;line-height:1.8;color:var(--muted);margin:0 0 4px}.workspace{display:grid;grid-template-columns:310px minmax(0,1fr);border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 16px 60px #26335105}aside{padding:28px 25px;background:#fcfcfe;border-right:1px solid var(--line)}.section-number{font-size:.875rem;font-weight:700;color:var(--blue);display:flex;gap:12px;align-items:center;margin-bottom:20px}.section-number span{font-size:.75rem;letter-spacing:1.5px;color:#636879}.spacer{margin-top:32px}label{display:block;font-size:.875rem;font-weight:600;line-height:1.5;margin-bottom:16px}small{display:block;font-weight:400;color:var(--muted);font-size:.75rem}input:not([type=range]):not([type=color]),textarea{width:100%;border:1px solid #d6dae6;background:#fff;border-radius:8px;padding:11px;color:#202334;margin-top:7px;font-size:1rem}textarea{resize:vertical;line-height:1.5;min-height:100px}input[type=range]{accent-color:var(--blue);min-width:30px;width:100%}.hint{font-size:.8125rem;color:var(--muted);line-height:1.6;margin:8px 0 20px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:13px}.color-label{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}input[type=color]{width:45px;height:32px;border:1px solid var(--line);border-radius:5px;background:#fff;padding:3px}.primary{background:var(--blue);color:#fff;width:100%;border:0;border-radius:8px;padding:15px;font-weight:600;display:flex;justify-content:space-between;margin-top:24px}.primary:hover{background:#1826c3}.secondary{border:1px solid var(--line);border-radius:7px;background:white;padding:10px 13px;font-size:.875rem;color:#333850;white-space:nowrap}.secondary:hover{border-color:var(--blue)}.error{font-size:.875rem;line-height:1.5;background:#fff0ee;border:1px solid #f0c5c0;border-radius:6px;padding:12px;color:#9b2c1c}.result{padding:30px;min-width:0}.result-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.result-heading .eyebrow{font-size:.75rem;letter-spacing:1.1px;color:var(--muted);margin-bottom:7px}h2{font:600 1.9rem 'Manrope',sans-serif;letter-spacing:-1px;margin:0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:25px;padding:18px 0}.metric:not(:first-child){padding-left:22px;border-left:1px solid var(--line)}.metric strong{font:600 1.35rem 'Manrope',sans-serif}.metric span{display:block;font-size:.75rem;color:var(--muted);margin-top:5px}.visual-panel{background:#f1f3fa;border:1px solid #e6e9f3;border-radius:12px;padding:18px;margin-top:24px}.visual-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.visual-top .section-number{margin:0}.toggle{display:flex;background:#e4e7f2;border-radius:6px;padding:3px}.toggle button{font-size:.8125rem;border:0;background:transparent;color:#62677b;padding:8px 10px;border-radius:4px}.toggle button[aria-pressed=true]{color:#2735ce;background:white;box-shadow:0 2px 4px #20234910}#diagram{width:100%;display:block;height:auto;max-height:370px;overflow:visible}#diagram text{font-family:'DM Sans',sans-serif}.round-control{display:flex;align-items:center;gap:15px}.round-control label{white-space:nowrap;margin:0;font-weight:400}.round-control button{width:32px;height:32px;flex-shrink:0;border:1px solid #d5daea;border-radius:50%;background:white;color:var(--blue)}button:disabled{opacity:.4;cursor:default}.round-detail{display:flex;gap:16px;align-items:flex-start;margin-top:18px;padding:15px;background:white;border-radius:8px;font-size:.875rem;line-height:1.6}.round-detail b{color:var(--blue);white-space:nowrap}.visual-note{font-size:.75rem;line-height:1.6;color:#676f83;margin:13px 0 0}.validation{display:flex;gap:12px;padding:20px 0;margin:8px 0}.check{color:#19755d;background:#e8f6ed;width:28px;height:28px;display:grid;place-items:center;flex-shrink:0;border-radius:50%}.validation strong{font-size:.875rem}.validation p{font-size:.8125rem;color:var(--muted);line-height:1.6;margin:5px 0 0}.pattern-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding-top:22px}h3{font:600 1.25rem 'Manrope',sans-serif;margin:0 0 17px}.pattern-heading span{font-size:.75rem;color:var(--muted);margin-bottom:17px}details{border:1px solid var(--line);border-radius:8px;margin-bottom:16px;padding:15px;font-size:.875rem;line-height:1.65}summary{cursor:pointer;font-weight:600}.setup p{margin:12px 0}.rounds{margin-bottom:18px}.instruction{display:grid;grid-template-columns:75px 1fr 62px;gap:12px;align-items:start;padding:13px 9px;border-bottom:1px solid #edf0f5;border-left:3px solid transparent;font-size:.875rem;line-height:1.6;cursor:pointer}.instruction.active{background:#f0f1ff;border-left-color:var(--blue)}.instruction button{border:0;background:transparent;text-align:left;padding:0;color:var(--blue);font-size:.875rem;font-weight:600}.instruction .count{text-align:right;font-size:.8125rem;color:var(--muted)}.instruction p{margin:0}.checkpoint{display:block;color:#976022;font-size:.8125rem;margin-top:6px}footer{display:flex;align-items:center;justify-content:space-between;padding:32px 0;color:var(--muted)}footer span{font:bold 1.3rem 'Manrope',sans-serif;color:#3c4159}footer p{font-size:.8125rem}@media(min-width:1400px){main{padding:0 60px}}@media(max-width:1050px){main{padding:0 25px}.workspace{grid-template-columns:280px minmax(0,1fr)}aside{padding:24px 18px}.result{padding:24px 20px}.result-heading{align-items:flex-start;flex-direction:column}.intro>p{max-width:250px}.pattern-heading{align-items:flex-start;flex-direction:column;gap:0}}@media(max-width:760px){header{height:76px;padding:0 22px}.brand i,.version{display:none}main{padding:0 16px}.intro{padding:30px 6px;display:block}.intro>p{margin-top:20px;max-width:none}.intro>p br{display:none}.workspace{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid var(--line);padding:24px}.result{padding:24px 16px}.metrics{gap:8px}.metric:not(:first-child){padding-left:12px}.metric strong{font-size:1.15rem}.round-detail{display:block}.round-detail b{display:block;margin-bottom:4px}.instruction{grid-template-columns:64px 1fr 48px;gap:7px}.visual-panel{padding:12px}footer{gap:20px}footer p{max-width:200px;text-align:right}h1{letter-spacing:-1.5px}}@media print{header,.intro,aside,.visual-panel,.secondary,footer{display:none}.workspace{display:block;border:0}.result{padding:0}details{break-inside:avoid}.instruction{break-inside:avoid}main{padding:0}}
