:root{
  --c2-paper:#f4f0e6;--c2-sheet:#fffdf7;--c2-ink:#17211b;--c2-muted:#665f55;
  --c2-rule:#cfc7b7;--c2-accent:#9d3f2d;--c2-good:#315f48;--c2-dark:#17211b;
  --c2-soft:#e7e0d2;--c2-max:1180px;--c2-reading:720px;
}
*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased}
body.c2-shell{margin:0;background:var(--c2-paper);color:var(--c2-ink);font-family:Georgia,"Noto Serif KR",serif;line-height:1.6}
button,input,textarea,select{font:inherit;color:inherit}
button,.c2-link-button{min-height:44px;border:0;background:var(--c2-ink);color:#fff;padding:11px 18px;cursor:pointer;font-weight:700}
button:disabled{opacity:.42;cursor:not-allowed}
input,textarea,select{width:100%;border:1px solid var(--c2-rule);background:var(--c2-sheet);padding:12px 13px;min-height:46px;border-radius:0}
textarea{min-height:120px;resize:vertical}
a{color:inherit}
.c2-reading{width:min(calc(100% - 40px),var(--c2-reading));margin:auto}
.c2-brand{display:inline-block;margin-bottom:20px}.c2-brand img{display:block;width:150px;height:auto;max-width:45vw}
.c2-back,.c2-text-link{font:700 .78rem/1.3 Arial,sans-serif;text-underline-offset:4px}
.c2-eyebrow{margin:0 0 10px;color:var(--c2-accent);font:800 .72rem/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.c2-lead{max-width:58ch;color:var(--c2-muted)}
.c2-join{padding:64px 0 100px}
.c2-join h1{font-size:clamp(2.5rem,8vw,5.3rem);line-height:.99;letter-spacing:-.035em;margin:.28em 0}
.c2-form{display:grid;gap:17px;margin-top:30px}
.c2-form label{display:grid;gap:7px;font-weight:700}
.c2-check{grid-template-columns:22px 1fr;align-items:start;font-weight:400!important}
.c2-check input{width:19px;min-height:19px;margin:4px 0}
.c2-note,.c2-status{color:var(--c2-muted);font-size:.86rem}
.c2-status{min-height:24px}
.c2-optional{font-weight:400;color:var(--c2-muted);font-size:.78rem}
.classroom2-entry .classroom2-lead{max-width:58ch}
.classroom2-flow{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:48px;padding-top:18px;border-top:1px solid var(--c2-rule);font:800 .7rem Arial,sans-serif;letter-spacing:.1em;color:var(--c2-muted)}
.classroom2-flow b{color:var(--c2-accent)}
.c2-course,.c2-session,.c2-studio,.c2-live{width:min(calc(100% - 40px),var(--c2-max));margin:auto;padding:40px 0 100px}
.c2-course-head,.c2-studio-head,.c2-live-head,.c2-session-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;border-bottom:1px solid var(--c2-rule);padding-bottom:24px}
.c2-course-head h1,.c2-studio-head h1,.c2-live-head h1,.c2-session-head h1{margin:5px 0;font-size:clamp(1.9rem,4vw,3.4rem);line-height:1.08;letter-spacing:-.025em}
.c2-person,.c2-live-facts{font:700 .8rem Arial,sans-serif;display:grid;gap:6px;text-align:right}
.c2-person span,.c2-live-facts span{color:var(--c2-muted)}
.c2-session-list{margin-top:48px}
.c2-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;border-bottom:1px solid var(--c2-rule);padding-bottom:10px;margin-bottom:14px}
.c2-section-head h2{margin:0;font-size:1rem;font-family:Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.c2-section-head span{color:var(--c2-muted);font-size:.8rem}
.c2-session-card{display:grid;grid-template-columns:84px 1fr auto;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--c2-rule)}
.c2-session-card .c2-seq{font:800 .72rem Arial,sans-serif;color:var(--c2-accent);letter-spacing:.09em}
.c2-session-card h3{margin:0 0 5px;font-size:1.25rem}
.c2-session-card p{margin:0;color:var(--c2-muted)}
.c2-phase-badge{display:inline-flex;align-items:center;min-height:32px;padding:5px 9px;background:var(--c2-soft);font:800 .68rem Arial,sans-serif;letter-spacing:.08em}
.c2-phase-nav{display:grid;grid-template-columns:repeat(8,minmax(90px,1fr));gap:1px;background:var(--c2-rule);margin:22px 0 38px;overflow:auto}
.c2-phase-step{background:var(--c2-sheet);padding:10px 12px;min-height:58px}
.c2-phase-step b{display:block;font:800 .65rem Arial,sans-serif;letter-spacing:.06em}
.c2-phase-step span{font-size:.72rem;color:var(--c2-muted)}
.c2-phase-step.is-current{background:var(--c2-dark);color:#fff}
.c2-phase-step.is-current span{color:#e7e0d2}
.c2-phase-step.is-done b{color:var(--c2-good)}
.c2-question{max-width:900px;padding:24px 0 30px}
.c2-question h2,.c2-live-question h2{font-size:clamp(2rem,5vw,4rem);line-height:1.06;letter-spacing:-.03em;margin:.2em 0 .45em}
.c2-context{max-width:68ch;color:var(--c2-muted);white-space:pre-wrap}
.c2-work{max-width:760px;padding:20px 0}
.c2-work h3{font-size:1.5rem;margin:0 0 8px}
.c2-work textarea{min-height:180px}
.c2-confidence{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 20px}
.c2-confidence label{display:flex;gap:8px;align-items:center;border:1px solid var(--c2-rule);padding:11px;background:var(--c2-sheet)}
.c2-confidence input{width:18px;min-height:18px}
.c2-first-thought{max-width:760px;margin:30px 0;padding:22px;border-left:4px solid var(--c2-accent);background:var(--c2-sheet)}
.c2-first-thought blockquote{margin:8px 0 12px;font-size:1.16rem;white-space:pre-wrap}
.c2-first-thought span{color:var(--c2-muted);font-size:.8rem}
.c2-peers{margin-top:44px}
.c2-peer-card{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--c2-rule)}
.c2-peer-card b{font:800 .72rem Arial,sans-serif;color:var(--c2-muted)}
.c2-peer-card p{margin:0;white-space:pre-wrap}
.c2-stage-note{border:1px solid var(--c2-rule);background:var(--c2-sheet);padding:20px;max-width:760px}
.c2-stage-note strong{display:block;margin-bottom:6px}
.c2-studio-shell{font-family:Arial,"Noto Sans KR",sans-serif}
.c2-studio-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1px;background:var(--c2-rule);margin-top:28px}
.c2-studio-panel{background:var(--c2-sheet);padding:24px}
.c2-compact-form{grid-template-columns:1fr 180px}
.c2-compact-form label:first-child{grid-column:1/-1}
.c2-compact-form label:nth-child(3){grid-column:1/-1}
.c2-compact-form button{grid-column:1/-1}
.c2-course-cards{margin-top:30px}
.c2-course-card{padding:16px 0;border-top:1px solid var(--c2-rule)}
.c2-course-card-head{display:flex;justify-content:space-between;gap:12px}
.c2-course-card h3{margin:0;font-family:Georgia,serif}
.c2-course-code{font:800 .8rem ui-monospace,monospace;letter-spacing:.08em;color:var(--c2-accent)}
.c2-course-access{display:grid;justify-items:end;gap:4px;min-width:170px}
.c2-course-access>span{font:700 .68rem Arial,sans-serif;color:var(--c2-muted);letter-spacing:.08em;text-transform:uppercase}
.c2-copy-link{min-height:32px;padding:5px 9px;background:transparent;color:var(--c2-ink);border:1px solid var(--c2-rule);font:700 .72rem Arial,sans-serif}
.c2-mini-session{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px dashed var(--c2-rule);font-size:.82rem}
.c2-link-button{text-decoration:none;display:inline-flex;align-items:center}
.c2-live-facts{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.c2-live-facts strong{background:var(--c2-dark);color:#fff;padding:8px 10px;font-size:.72rem;letter-spacing:.08em}
.c2-live-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:1px;background:var(--c2-rule)}
.c2-live-grid>section,.c2-live-grid>aside{background:var(--c2-sheet);padding:24px}
.c2-live-question{min-height:300px}
.c2-live-control{display:flex;flex-direction:column;gap:12px}
.c2-live-control button{width:100%}
.c2-live-roster{max-height:420px;overflow:auto}
.c2-live-responses{max-height:620px;overflow:auto}
.c2-roster-row{display:grid;grid-template-columns:1fr 24px;padding:9px 0;border-bottom:1px solid var(--c2-rule);font-size:.82rem}
.c2-roster-row .done{color:var(--c2-good);font-weight:800}
.c2-response-card{padding:15px 0;border-bottom:1px solid var(--c2-rule)}
.c2-response-card header{display:flex;justify-content:space-between;gap:12px;font-size:.78rem}
.c2-response-card header span{color:var(--c2-muted)}
.c2-response-card p{white-space:pre-wrap;font-family:Georgia,serif}
.c2-text-link{margin-top:auto}
@media(max-width:900px){
  .c2-studio-grid,.c2-live-grid{grid-template-columns:1fr}
  .c2-course-head,.c2-studio-head,.c2-live-head,.c2-session-head{flex-direction:column}
  .c2-course-card-head{align-items:flex-start}
  .c2-course-access{justify-items:start}
  .c2-person,.c2-live-facts{text-align:left}
  .c2-live-facts{align-items:flex-start}
  .c2-compact-form{grid-template-columns:1fr}
  .c2-compact-form label,.c2-compact-form button{grid-column:auto!important}
}
@media(max-width:640px){
  .c2-course,.c2-session,.c2-studio,.c2-live{width:min(calc(100% - 28px),var(--c2-max));padding-top:24px}
  .c2-session-card{grid-template-columns:1fr}
  .c2-phase-nav{grid-template-columns:repeat(8,110px)}
  .c2-peer-card{grid-template-columns:1fr;gap:5px}
  .c2-confidence{grid-template-columns:1fr}
  .c2-live-grid>section,.c2-live-grid>aside,.c2-studio-panel{padding:18px}
}

.c2-dialogue,.c2-ai-section{margin-top:54px}
.c2-dialogue-form,.c2-personal-ai-form{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:10px;align-items:end;margin:18px 0 24px}
.c2-dialogue-form textarea,.c2-personal-ai-form textarea{min-height:88px}
.c2-dialogue-form label,.c2-personal-ai-form label{display:grid;gap:6px;font-weight:700}
.c2-dialogue-list,.c2-ai-list{display:grid;gap:0}
.c2-dialogue-card,.c2-ai-card,.c2-ai-draft-card{padding:17px 0;border-bottom:1px solid var(--c2-rule)}
.c2-dialogue-card header,.c2-ai-card header,.c2-ai-draft-card header{display:flex;justify-content:space-between;gap:16px;align-items:baseline;font:700 .78rem Arial,sans-serif}
.c2-dialogue-card header span,.c2-ai-card header span,.c2-ai-draft-card header span{color:var(--c2-muted);font-size:.7rem}
.c2-dialogue-card p,.c2-ai-card p,.c2-ai-draft-card p{margin:8px 0 0;white-space:pre-wrap}
.c2-post-type{padding:3px 7px;background:var(--c2-soft);color:var(--c2-ink)!important}
.c2-ai-card{padding:18px;background:var(--c2-sheet);border:1px solid var(--c2-rule);margin-bottom:10px}
.c2-ai-card header b{color:var(--c2-accent);letter-spacing:.05em}
.c2-ai-prompt{padding-top:10px;border-top:1px dashed var(--c2-rule);font-size:.86rem;color:var(--c2-muted)}
.c2-ai-prompt strong{color:var(--c2-ink)}
.c2-personal-ai-form{margin-top:26px;padding-top:18px;border-top:1px solid var(--c2-rule)}
.c2-teacher-dialogue,.c2-teacher-ai{grid-column:1/-1;max-height:720px;overflow:auto}
.c2-ai-mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}
.c2-ai-mode-grid button{background:var(--c2-soft);color:var(--c2-ink);border:1px solid var(--c2-rule)}
.c2-ai-draft-card textarea{margin-top:12px;min-height:150px}
.c2-ai-draft-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.c2-ai-draft-actions button:nth-child(2){background:var(--c2-accent)}
.c2-ai-draft-actions button:nth-child(3){background:transparent;color:var(--c2-accent);border:1px solid var(--c2-accent)}
@media(max-width:760px){
  .c2-dialogue-form,.c2-personal-ai-form{grid-template-columns:1fr}
  .c2-ai-mode-grid{grid-template-columns:1fr 1fr}
}

.c2-rethink,.c2-closing,.c2-record{margin-top:54px}
.c2-rethink-form{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;margin-top:18px}
.c2-rethink-form>label:first-child{grid-column:1/-1}
.c2-rethink-form textarea{min-height:180px}
.c2-influences{grid-column:1/-1;border:1px solid var(--c2-rule);padding:14px;margin:0}
.c2-influences legend{font-weight:700;padding:0 6px}
.c2-influences label{display:inline-flex;align-items:center;gap:7px;margin:7px 16px 4px 0;font-size:.86rem}
.c2-influences input{width:18px;min-height:18px}
.c2-rethink-saved{padding:20px;background:var(--c2-sheet);border-left:4px solid var(--c2-good)}
.c2-rethink-saved h3{margin:.2em 0 .4em}
.c2-rethink-saved p{white-space:pre-wrap}
.c2-rethink-meta{font-size:.82rem;color:var(--c2-muted)}
.c2-thinking-trace{margin-top:14px;border:1px solid var(--c2-rule);background:var(--c2-sheet);padding:12px 14px}
.c2-thinking-trace summary{cursor:pointer;font-weight:700}
.c2-thinking-trace pre{white-space:pre-wrap;margin:14px 0 0;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}
.c2-record-body{white-space:pre-wrap;background:var(--c2-sheet);border:1px solid var(--c2-rule);padding:20px;max-width:900px}
.c2-teacher-rethink,.c2-teacher-closing,.c2-teacher-record{grid-column:1/-1}
.c2-teacher-closing textarea{min-height:150px}
.c2-teacher-record>button{margin-bottom:14px}
#c2-record-editor textarea{min-height:420px;font-family:Georgia,"Noto Serif KR",serif;line-height:1.6}
.c2-record-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.c2-record-actions button:last-child{background:var(--c2-accent)}
.c2-rethink-card .c2-note{margin-top:6px}
.c2-thinking-card{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--c2-rule);margin-bottom:18px;border:1px solid var(--c2-rule)}
.c2-thinking-card>header{grid-column:1/-1;background:var(--c2-soft);padding:12px 16px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.c2-thinking-card>header span{font:700 .7rem Arial,sans-serif;color:var(--c2-muted)}
.c2-thinking-card>h3{grid-column:1/-1;background:var(--c2-sheet);margin:0;padding:18px 16px;font-size:1.25rem}
.c2-thinking-half{background:var(--c2-sheet);padding:18px 16px;min-height:150px}
.c2-thinking-half p:not(.c2-eyebrow){white-space:pre-wrap}
.c2-thinking-half small{color:var(--c2-muted)}
@media(max-width:700px){
  .c2-rethink-form{grid-template-columns:1fr}
  .c2-rethink-form>label:first-child,.c2-influences{grid-column:auto}
  .c2-thinking-card{grid-template-columns:1fr}
  .c2-thinking-card>header,.c2-thinking-card>h3{grid-column:1}
}
