:root{--p:#345068;--p2:#5f7f94;--bg:#f3f6f8;--text:#24333d;--muted:#697b86;--white:#fff;--border:#dce5ea;--ok:#23824d;--bad:#b43c3c;--shadow:0 14px 35px rgba(28,50,64,.12)}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
button,input,textarea,select{font:inherit}
.course-header{background:linear-gradient(135deg,#243b4d,#45657a);color:white;padding:52px 24px}
.course-header .inner,.game-header .inner{width:min(1100px,100%);margin:auto}
.course-header .inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.course-header h1{font-size:clamp(2.2rem,5vw,4rem);margin:10px 0}
.course-header p{max-width:720px;line-height:1.7;color:rgba(255,255,255,.86)}
.badge{display:inline-block;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.14);font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.back,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:12px;border:0;text-decoration:none;font-weight:800;cursor:pointer}
.back{background:white;color:var(--p)}
.btn{background:var(--p);color:white}
.btn.alt{background:#e7eef2;color:var(--p)}
.btn.danger{background:#8d3c3c}
.wrap{width:min(1100px,calc(100% - 32px));margin:42px auto 70px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{position:relative;padding:26px;border-radius:20px;background:white;border:1px solid var(--border);text-decoration:none;color:inherit;box-shadow:0 7px 22px rgba(32,54,67,.07);transition:.2s;min-height:270px}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.card .num{position:absolute;top:18px;right:20px;font-size:2.6rem;font-weight:900;color:#cfdae0}
.card .icon{font-size:2rem;display:grid;place-items:center;width:58px;height:58px;border-radius:17px;background:#edf3f6;margin-bottom:22px}
.card h2{font-size:1.25rem;max-width:80%}
.card p{line-height:1.6;color:var(--muted)}
.card .go{font-weight:800;color:var(--p)}
.game-header{background:white;border-bottom:1px solid var(--border);padding:20px}
.game-header .inner{display:flex;justify-content:space-between;align-items:center;gap:20px}
.game-header h1{margin:0;font-size:1.35rem}
.game-header a{text-decoration:none;color:var(--p);font-weight:800}
.panel{width:min(900px,calc(100% - 30px));margin:38px auto;padding:30px;background:white;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}
.instructions{padding:16px 18px;border-left:5px solid var(--p);background:#edf3f6;border-radius:9px;line-height:1.6;margin-bottom:24px}
.actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:20px}
.message{min-height:28px;margin-top:18px;font-weight:800}.ok{color:var(--ok)}.bad{color:var(--bad)}
.progress{height:10px;background:#dfe7eb;border-radius:999px;overflow:hidden;margin:18px 0}.progress>div{height:100%;width:0;background:var(--p);transition:.3s}
.field, textarea, select{width:100%;padding:14px 15px;border:2px solid var(--border);border-radius:12px;outline:none}.field:focus,textarea:focus,select:focus{border-color:var(--p)}
.center{text-align:center}.hidden{display:none!important}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.chip{padding:9px 12px;background:#edf3f6;border-radius:999px;font-weight:700}
.timer{font-size:4rem;font-weight:900;color:var(--p);text-align:center;margin:20px 0}
.bigword{font-size:clamp(2rem,8vw,4rem);font-weight:900;letter-spacing:.14em;text-align:center;color:var(--p);overflow-wrap:anywhere}
.option-list{display:grid;gap:12px}.option{padding:14px;border:2px solid var(--border);border-radius:12px;cursor:pointer;background:white;text-align:left}.option:hover{border-color:var(--p)}
.story{padding:20px;border-radius:16px;background:#f7f9fa;line-height:1.8}
.canvas-tools{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px;align-items:center}
canvas{display:block;max-width:100%;border:1px solid var(--border);border-radius:16px;background:white;touch-action:none}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare figure{margin:0}.compare svg{width:100%;border-radius:15px;border:1px solid var(--border)}
@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.course-header .inner{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.grid{grid-template-columns:1fr}.panel{padding:22px}.compare{grid-template-columns:1fr}.game-header .inner{align-items:flex-start;flex-direction:column}}

.recortables-placeholder{padding:34px;border:2px dashed #b4c6d0;background:#fff;border-radius:18px;max-width:750px}.recortables-placeholder p{color:#697b86;line-height:1.65}.recortables-placeholder code{overflow-wrap:anywhere}
