﻿:root{--bg:#f7f1e8;--panel:#fffdf9;--text:#2d2823;--accent:#1c7aa5;--line:#7a6f64;--shadow:0 18px 36px rgba(53,57,62,.12)}
*{box-sizing:border-box}body{margin:0;font-family:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(145,210,236,.22),transparent 28%),radial-gradient(circle at bottom right,rgba(248,214,146,.24),transparent 24%),linear-gradient(180deg,#fbfaf7 0%,var(--bg) 100%)}
.page{width:min(1180px,calc(100vw - 32px));margin:24px auto 40px}.hero,.panel{background:var(--panel);border-radius:24px;box-shadow:var(--shadow)}.hero{position:relative;display:grid;grid-template-columns:98px 1fr;gap:18px;align-items:center;padding:22px;background:var(--hero-gradient,linear-gradient(120deg,#d7efff 0%,#a7d4f2 54%,#668fb2 100%))}.hero-icon{width:98px;height:98px;border-radius:28px;display:grid;place-items:center;font-size:48px;background:rgba(255,248,223,.92);border:4px solid rgba(255,255,255,.55)}.brand-ribbon{position:absolute;top:16px;right:18px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.92);border:2px solid rgba(255,255,255,.5);font-weight:800;color:#2b5b72;font-size:.95rem;box-shadow:0 8px 16px rgba(43,91,114,.12);display:flex;align-items:center;gap:8px}.brand-logo{width:28px;height:28px;object-fit:cover;border-radius:50%;background:#fff}
h1,h2,h3,p{margin-top:0}h1{margin-bottom:8px;font-size:clamp(1.7rem,2.8vw,2.6rem)}.hero p,.muted{color:#425058;line-height:1.8}.panel{margin-top:18px;padding:20px}.controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.control-card{padding:14px;border-radius:18px;background:#fff;border:2px solid rgba(28,122,165,.12)}label{display:block;font-size:.95rem;font-weight:700;margin-bottom:8px}select,button{font:inherit;border-radius:14px;border:2px solid rgba(28,122,165,.16);background:#fff;padding:11px 12px;width:100%}button{width:auto;cursor:pointer;font-weight:700}button.primary{color:#fff;background:var(--accent);border-color:transparent}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.status{margin-top:16px;padding:14px 16px;border-radius:18px;background:#f7fbfd;line-height:1.8;color:#59524b}.workspace{display:grid;grid-template-columns:1.22fr .95fr;gap:18px;margin-top:18px}.board{border:2px solid rgba(122,111,100,.14);border-radius:22px;background:#fffefb;padding:18px}.instruction{padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#f4fbff 0%,#fffdfa 100%);border:2px solid rgba(28,122,165,.12);line-height:1.95;margin-bottom:14px}.tip-banner{margin-bottom:12px;padding:10px 14px;border-radius:16px;background:linear-gradient(90deg,#fff8dd 0%,#fffdf8 100%);border:2px dashed rgba(140,113,33,.28);font-weight:800;color:#73561f}.keyword{display:inline-block;padding:2px 10px;border-radius:999px;background:#fff19d;color:#624700;font-weight:800;font-size:1.05rem}.icon-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.read-chip,.memo-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;font-weight:800}.read-chip{background:#eef8ff;color:#245b7a}.memo-chip{background:#fff4d8;color:#7b5a18}.teacher-panel{display:grid;gap:12px}.teacher-card,.child-card{padding:16px;border-radius:18px;border:2px solid rgba(28,122,165,.12);background:#fff}.teacher-answer{line-height:1.95;white-space:pre-wrap}.problem-view{display:grid;gap:12px}.option-row,.mini-grid,.logic-grid,.map-grid{display:grid;gap:10px}.pattern-seq{display:flex;gap:12px;flex-wrap:wrap;font-size:2rem;font-weight:800;align-items:center}.option-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.option-card,.plain-card{padding:14px;border-radius:16px;border:2px solid rgba(122,111,100,.16);background:#fff;line-height:1.9;min-height:74px}.mini-grid{grid-template-columns:repeat(3,1fr)}.mini-cell{min-height:72px;border-radius:14px;border:2px dashed rgba(122,111,100,.22);display:grid;place-items:center;font-weight:800;background:#fcfeff}.logic-grid{grid-template-columns:repeat(4,1fr)}.logic-cell{min-height:80px;border-radius:16px;border:2px solid rgba(122,111,100,.16);display:grid;place-items:center;background:#fff;font-size:1.8rem;text-align:center;padding:6px}.map-grid{grid-template-columns:repeat(2,1fr)}.memo-box{margin-top:12px;padding:12px;border-radius:14px;border:2px dashed rgba(122,111,100,.24);background:#fffaf3;min-height:88px;line-height:1.9}.feedback-box{padding:12px 14px;border-radius:16px;background:#f1fbf5;border:2px solid rgba(30,138,96,.15);line-height:1.85}.print-sheet{display:none}
@media print{@page{size:A4 portrait;margin:10mm}body{background:#fff}.page{display:none !important}.print-sheet{display:block;page-break-after:always;min-height:270mm;padding:2mm}.print-sheet:last-child{page-break-after:auto}.print-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:8mm}.print-title{font-size:22px;font-weight:800}.print-subtitle,.print-note{margin-top:4mm;font-size:12px;line-height:1.8}.print-meta{font-size:12px;line-height:1.8;text-align:right}.print-brand{display:flex;align-items:center;gap:10px}.print-logo{width:42px;height:42px;object-fit:cover;border-radius:50%;background:#fff;border:1px solid rgba(0,0,0,.08)}}
@media (max-width:940px){.workspace,.map-grid,.logic-grid,.mini-grid{grid-template-columns:1fr}}
