:root{--blue:#1954df;--navy:#102348;--line:#dfe6f1;--muted:#677891}*{box-sizing:border-box}body{margin:0;background:#f4f6fa;color:var(--navy);font:14px system-ui,sans-serif}button,input,textarea,select{font:inherit}button{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--navy);padding:11px 15px;cursor:pointer;font-weight:600}button:hover{border-color:var(--blue)}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible{outline:3px solid #96b8ff;outline-offset:2px}.primary{background:var(--blue);color:white;border-color:var(--blue)}.danger{color:#b22b37}.logo{font-size:40px;font-weight:900;letter-spacing:-2px}.logo span{color:#ffd245}p{color:var(--muted);line-height:1.65}h1{font-size:29px;letter-spacing:-.8px;margin:0 0 9px}h2{font-size:20px;margin:0 0 14px}h3{margin:10px 0}small,.muted{color:var(--muted)}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.login .card{width:440px;max-width:100%;padding:36px}.card{background:white;border:1px solid var(--line);border-radius:13px;padding:25px;margin-bottom:20px}label{display:block;font-size:12px;font-weight:650;margin:18px 0 7px}input,textarea,select{display:block;width:100%;border:1px solid #cfd9e9;border-radius:7px;padding:11px;margin-top:7px;background:white;color:var(--navy)}textarea{min-height:90px;resize:vertical}.login button{width:100%;margin-top:22px}#login-error{color:#b22b37}#shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}aside{background:var(--navy);color:white;padding:28px 20px;display:flex;flex-direction:column}aside .sub{font-size:11px;letter-spacing:1px;color:#a4b5cf;margin-bottom:35px}nav{display:grid;gap:9px}nav button{background:transparent;color:#b7c9e7;text-align:left;border:0}nav button.active{background:#294877;color:#fff}.identity{margin-top:auto;padding-top:50px}.identity p{color:#a4b5cf}.identity button{background:transparent;color:white}header{height:75px;padding:20px 34px;display:flex;justify-content:space-between;align-items:center;background:white;border-bottom:1px solid var(--line)}#content{padding:34px;max-width:1450px;margin:auto}main{min-width:0}.badge{display:inline-block;padding:6px 9px;border-radius:6px;background:#edf3ff;color:var(--blue);font-size:11px;font-weight:750}.green{background:#e5f7ef;color:#18774f}.yellow{background:#fff6d9;color:#886a17}.heading,.row{display:flex;justify-content:space-between;align-items:center;gap:12px}.heading{margin-bottom:28px}.toolbar{display:flex;gap:9px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}.grid .card{display:flex;flex-direction:column;align-items:flex-start}.grid .card .toolbar{margin-top:auto;padding-top:15px}.editor{display:grid;grid-template-columns:280px 1fr;gap:22px}.node-list{display:grid;gap:8px;margin:20px 0}.node-list button{text-align:left;overflow-wrap:anywhere}.node-list button.active{border-color:var(--blue);background:#edf3ff}.node-list small{display:block;margin-top:5px}.answers{display:grid;gap:12px}.answer{border:1px solid var(--line);padding:13px;border-radius:9px}.answer label{margin-top:6px}.notice{padding:14px 18px;background:#fff6d9;color:#81621b;border-radius:8px;line-height:1.7;margin-bottom:20px}.question{font-size:25px;line-height:1.35;margin:25px 0 12px}.run{max-width:860px;margin:auto}.choices{display:grid;gap:12px;margin:25px 0}.choices button{text-align:left;padding:18px}.result{background:#eef5ff;padding:25px;border-radius:12px;border:1px solid #c7d9ff;margin:22px 0}.history-item{padding:13px 18px;border-left:3px solid #b8cef8;margin:14px 0;line-height:1.8}.history-item b{display:block}.hint{white-space:pre-wrap;line-height:1.8}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left}th,td{padding:15px 10px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:11px;color:var(--muted);text-transform:uppercase}dialog{color:var(--navy);border:1px solid var(--line);border-radius:14px;max-width:850px;width:92%;max-height:90vh;padding:28px}dialog::backdrop{background:#10234888}#toast{position:fixed;bottom:25px;right:25px;max-width:450px;background:var(--navy);color:white;padding:18px 23px;border-radius:10px;z-index:100}#toast.error{background:#9d2332}[hidden]{display:none!important}.spacer{margin-top:24px}.help{font-size:12px}.empty{padding:40px;text-align:center}.empty p{max-width:500px;margin:15px auto}a{color:var(--blue)}@media(max-width:900px){#shell{grid-template-columns:170px 1fr}#content{padding:22px}.editor{grid-template-columns:1fr}.heading{flex-wrap:wrap}header{padding:20px}.node-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media(max-width:600px){#shell{display:block}aside{padding:15px;display:block}aside .logo{font-size:27px}aside .sub{display:none}nav{display:flex;flex-wrap:wrap;margin-top:12px}.identity{padding:12px 0 0;display:flex;gap:12px;align-items:center}.identity p{margin:0}.identity button{margin-left:auto}header{height:auto;gap:10px;font-size:12px}#content{padding:20px 14px}h1{font-size:25px}.card{padding:20px}.heading{align-items:flex-start}.row{flex-wrap:wrap}.question{font-size:22px}#toast{left:15px;right:15px}.editor{display:block}}

#close-modal{margin-top:16px}

.node-select{display:none}
@media(max-width:600px){
  button,input,select{min-height:44px}
  input,select,textarea{font-size:16px}
  nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .identity{flex-wrap:wrap}
  .identity b{overflow-wrap:anywhere;max-width:100%}
  .node-list{display:none}
  .node-select{display:block}
  .grid{grid-template-columns:minmax(0,1fr)}
  .card,.editor{min-width:0}
  .grid .card form{width:100%}
  h1,h2,.question,.history-item,.hint{overflow-wrap:anywhere}
  dialog{padding:20px}
}

.history-mobile{display:none}
@media(max-width:600px){.desktop-history{display:none}.history-mobile{display:block}.history-mobile h2,.history-mobile p{overflow-wrap:anywhere}}
