:root{--ink:#24332d;--forest:#285a47;--mint:#e8f1eb;--paper:#fbfaf6;--line:#dfe5df;--coral:#e97d63}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Pretendard","Noto Sans KR",system-ui,sans-serif}.site-shell{min-height:100vh;background:radial-gradient(circle at 88% 8%,#e1eee5 0,transparent 24%),var(--paper)}
.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:auto;padding:0 28px;border-bottom:1px solid rgba(40,90,71,.1)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--forest);color:white;border-radius:12px 12px 12px 4px;font-family:Georgia,serif;font-size:22px}.brand b{display:block;font:700 24px/1 Georgia,serif;letter-spacing:-.5px}.brand small{display:block;margin-top:4px;color:#78837e;font-size:10px;letter-spacing:.08em}.profile-pill{border:1px solid var(--line);background:white;padding:9px 10px 9px 16px;border-radius:99px;color:var(--ink);font-weight:700}.profile-pill span{margin-left:8px;background:var(--mint);color:var(--forest);padding:5px 9px;border-radius:99px;font-size:11px}
.hero{max-width:1200px;margin:auto;padding:80px 28px 62px}.eyebrow{margin:0 0 12px;color:var(--coral);font-size:12px;font-weight:800;letter-spacing:.16em}.hero h1{font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(44px,6vw,78px);line-height:1.06;letter-spacing:-.045em;margin:0}.hero h1 em{color:var(--forest);font-style:normal;position:relative}.hero h1 em:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:8px;border-radius:50%;background:#e6b654;opacity:.5}.hero>p:last-child{font-size:16px;line-height:1.8;color:#66716c;margin:25px 0 0}
.library{max-width:1200px;margin:auto;padding:0 28px 90px}.section-heading{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:28px}.section-heading h2{font-family:Georgia,"Noto Serif KR",serif;font-size:30px;margin:0}.book-count{color:#78837e;font-size:14px}.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.book-card{display:grid;grid-template-columns:128px 1fr;gap:22px;padding:22px;background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 35px rgba(36,51,45,.06);transition:.2s}.book-card:hover{transform:translateY(-5px);box-shadow:0 16px 45px rgba(36,51,45,.12);border-color:#adc8b8}.book-cover{aspect-ratio:3/4.2;border-radius:4px 12px 12px 4px;padding:14px;display:flex;flex-direction:column;box-shadow:5px 8px 16px rgba(36,51,45,.2);color:#23352e;position:relative;overflow:hidden}.book-cover:after{content:"";position:absolute;inset:0;border-left:5px solid rgba(0,0,0,.09);pointer-events:none}.book-cover span{font-size:9px;letter-spacing:.12em}.book-cover strong{font-family:Georgia,"Noto Serif KR",serif;font-size:20px;line-height:1.15;margin:auto 0}.book-cover i{font-style:normal;font-size:8px;letter-spacing:.15em}.book-info{min-width:0;display:flex;flex-direction:column}.category{align-self:flex-start;background:var(--mint);color:var(--forest);font-size:11px;font-weight:800;padding:5px 9px;border-radius:99px}.book-info h3{font-family:Georgia,"Noto Serif KR",serif;font-size:22px;margin:17px 0 6px}.book-info p{margin:0;color:#78837e;font-size:13px}.progress-row{margin-top:auto;padding-top:20px;border-top:1px solid #edf0ed;display:flex;flex-direction:column;gap:8px;font-size:12px;color:#78837e}.progress-row b{color:var(--forest)}
@media(max-width:900px){.book-grid{grid-template-columns:1fr 1fr}.book-card{grid-template-columns:105px 1fr}.hero{padding-top:58px}}
@media(max-width:620px){.topbar{height:72px;padding:0 18px}.brand small{display:none}.profile-pill{font-size:0}.profile-pill span{font-size:11px;margin:0}.hero{padding:48px 20px 42px}.hero h1{font-size:45px}.library{padding:0 20px 64px}.book-grid{grid-template-columns:1fr}.book-card{grid-template-columns:110px 1fr}.section-heading h2{font-size:26px}}

/* shared app controls */
button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}.primary-button,.secondary-button,.small-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:12px 18px;font-weight:800;text-decoration:none;transition:.15s}.primary-button{background:var(--forest);color:#fff;box-shadow:0 6px 18px rgba(40,90,71,.18)}.primary-button:hover{background:#1d4838;transform:translateY(-1px)}.primary-button:disabled{opacity:.4;cursor:not-allowed;transform:none}.secondary-button{background:var(--mint);color:var(--forest)}.small-button{background:var(--forest);color:white;padding:9px 13px;font-size:13px}.text-button{border:0;background:transparent;color:#68756f;padding:5px;text-decoration:underline;text-underline-offset:3px}.wide{width:100%}.muted{color:#718078}.form-message{font-size:13px;color:#6c7872}.error-message{font-size:13px;color:#b34336}.success-message{font-size:13px;color:#1d754f}.danger-text{color:#b34336!important}.brand.light{color:#fff}.brand.light .brand-mark{background:#fff;color:var(--forest)}.brand.light small{color:rgba(255,255,255,.65)}

/* header + catalog */
.app-topbar{position:relative;z-index:3}.main-nav{display:flex;gap:8px;margin-left:auto;margin-right:28px}.main-nav a{padding:9px 12px;border-radius:9px;text-decoration:none;font-size:14px;font-weight:750}.main-nav a:hover{background:var(--mint);color:var(--forest)}.account-menu{display:flex;align-items:center;gap:9px}.account-menu>img,.avatar-fallback{width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--mint);display:grid;place-items:center;font-weight:800;color:var(--forest)}.account-menu div{display:flex;flex-direction:column}.account-menu b{font-size:13px}.account-menu small{font-size:11px;color:#849089}.account-menu .text-button{font-size:11px;margin-left:5px}.library-hero{padding-top:72px}.book-card{text-decoration:none}.book-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}.cover-tone-0{background:#f4c95d}.cover-tone-1{background:#eb7f67}.cover-tone-2{background:#79a9a1}.cover-tone-3{background:#87a9d2}.cover-tone-4{background:#b99acb}.catalog-progress{height:5px;background:#edf1ee;border-radius:99px;overflow:hidden;margin-top:auto}.catalog-progress span{display:block;height:100%;background:var(--coral)}.empty-shelf{display:flex;min-height:280px;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #b9c7bf;border-radius:22px;background:rgba(255,255,255,.6);text-align:center}.empty-shelf h3{font:700 25px Georgia,"Noto Serif KR",serif;margin:10px 0 6px}.empty-shelf p{margin:0 0 20px;color:#748079}.empty-books{font-size:48px;color:#82a18f}

/* sign in */
.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(380px,1.08fr) minmax(420px,.92fr);background:#fff}.auth-story{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:48px clamp(40px,7vw,110px);color:#fff;background:linear-gradient(145deg,#214d3d,#2e6a53 65%,#193b30)}.auth-story:before{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.12);border-radius:48% 52% 60% 40%;right:-240px;top:-160px;transform:rotate(24deg)}.auth-story>div:not(.thread-art){position:relative;z-index:1}.auth-story h1{font:700 clamp(44px,5vw,72px)/1.12 Georgia,"Noto Serif KR",serif;letter-spacing:-.04em;margin:18px 0}.auth-story h1 em{font-style:normal;color:#f5c765}.auth-story>div>p:last-child{line-height:1.9;color:rgba(255,255,255,.72)}.thread-art{display:flex;align-items:center;gap:8px;position:relative;padding:30px 0}.thread-art:before{content:"";position:absolute;left:3%;right:3%;top:50%;height:1px;background:#eabf5b}.thread-art span{position:relative;z-index:1;display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:#f7f1e5;color:#285a47;border:7px solid rgba(255,255,255,.13);font-weight:800}.thread-art span:nth-child(even){transform:translateY(18px)}.auth-panel{display:grid;place-items:center;padding:45px;background:radial-gradient(circle at 70% 20%,#edf5ef,transparent 32%),#fff}.login-card{width:min(430px,100%)}.login-card h2{font:700 36px Georgia,"Noto Serif KR",serif;margin:8px 0 16px}.google-login{min-height:62px;margin-top:32px}.google-login>div:first-of-type{display:flex;justify-content:flex-start}.google-placeholder{width:320px;height:44px;background:#f2f4f2;border-radius:99px;animation:pulse 1.2s infinite}.setup-notice{display:flex;flex-direction:column;gap:7px;background:#fff8e7;border:1px solid #ecd69b;padding:17px;border-radius:12px;margin-top:32px;color:#604a16}.setup-notice span{font-size:13px;line-height:1.55}.domain-note{display:flex;gap:12px;align-items:center;margin-top:24px;padding:14px;background:#f3f7f4;border-radius:12px}.domain-note>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--forest);color:white}.domain-note p{margin:0}.domain-note b,.domain-note small{display:block;font-size:13px}.domain-note small{margin-top:3px;color:#7c8882}.fine-print{font-size:11px;color:#939c97;margin-top:24px;line-height:1.6}@keyframes pulse{50%{opacity:.5}}

/* terms */
.terms-page{min-height:100vh;background:linear-gradient(145deg,#eef5f0,#fbfaf6 40%);padding:42px 24px}.terms-shell{max-width:820px;margin:auto}.terms-head{padding:60px 0 28px}.step-badge{display:inline-block;background:var(--coral);color:#fff;padding:7px 11px;border-radius:99px;font-size:12px;font-weight:800}.terms-head h1{font:700 clamp(34px,5vw,50px)/1.2 Georgia,"Noto Serif KR",serif;margin:18px 0}.terms-head p{color:#738079}.terms-doc{background:#fff;border:1px solid var(--line);border-radius:20px;padding:35px;box-shadow:0 18px 50px rgba(36,51,45,.07)}.terms-doc section+section{border-top:1px solid var(--line);padding-top:26px;margin-top:26px}.terms-doc h2{font:700 22px Georgia,"Noto Serif KR",serif}.terms-doc li{margin:10px 0;line-height:1.65}.terms-doc dl div{display:grid;grid-template-columns:110px 1fr;padding:12px 0;border-bottom:1px solid #edf0ed}.terms-doc dt{font-weight:800}.terms-doc dd{margin:0;color:#66716c;line-height:1.6}.terms-actions{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px}.check-row{display:flex;gap:13px;padding:13px 0;align-items:flex-start}.check-row input{width:20px;height:20px;accent-color:var(--forest)}.check-row span{display:flex;flex-direction:column;gap:5px}.check-row small{color:#7b8781}.terms-actions .primary-button{margin-top:17px}.terms-version{text-align:center;color:#9aa29e;font-size:11px}

/* student notebook */
.reading-page{min-height:100vh;background:#eef4f0;background-image:radial-gradient(#c6d4cd 1px,transparent 1px);background-size:24px 24px}.reading-hero{background:linear-gradient(120deg,#1e4939,#2b6c53 65%,#245e68);color:white;border-radius:0 0 34px 34px;box-shadow:0 16px 38px rgba(36,51,45,.18)}.reading-hero-inner{max-width:1000px;margin:auto;padding:28px 24px 50px}.back-link{display:inline-block;margin-bottom:28px;color:rgba(255,255,255,.7);text-decoration:none;font-size:13px}.reading-book-head{display:flex;gap:25px;align-items:center}.mini-cover{width:96px;height:132px;display:grid;place-items:center;flex:0 0 auto;background:#f1c55b;color:#26372f;border-radius:4px 11px 11px 4px;box-shadow:7px 10px 20px rgba(0,0,0,.25);padding:12px;text-align:center;font:700 16px Georgia,"Noto Serif KR",serif;overflow:hidden}.mini-cover img{width:100%;height:100%;object-fit:cover}.reading-book-head h1{font:700 clamp(31px,5vw,48px) Georgia,"Noto Serif KR",serif;margin:12px 0 5px}.reading-book-head p{color:rgba(255,255,255,.65);margin:0}.category.inverse{background:rgba(255,255,255,.16);color:#fff}.reading-progress{margin-top:24px;width:min(520px,70vw)}.reading-progress div{display:flex;justify-content:space-between;font-size:12px}.reading-progress i{display:block;height:8px;background:rgba(255,255,255,.15);border-radius:99px;margin-top:7px;overflow:hidden}.reading-progress i span{display:block;height:100%;background:#f3c65b}.reading-shell{max-width:1000px;margin:auto;padding:34px 24px 80px}.chapter-tabs{display:flex;gap:9px;overflow-x:auto;padding:2px 0 20px}.chapter-tabs button{white-space:nowrap;border:1px solid #bad0c3;background:white;color:var(--forest);border-radius:99px;padding:10px 15px;font-weight:800}.chapter-tabs button.active{background:var(--forest);color:white;border-color:var(--forest)}.chapter-tabs small{margin-left:8px;opacity:.65}.range-card{background:#fffef8;border:1px solid #e7dfc8;border-radius:20px;overflow:hidden;box-shadow:0 14px 35px rgba(36,51,45,.09);margin-bottom:22px}.range-card>header{display:flex;align-items:center;gap:13px;padding:17px 20px;background:linear-gradient(90deg,#e7f1eb,#f4f7f4);border-bottom:1px solid #d6e3db}.range-number{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--forest);color:white;font:700 20px Georgia,serif}.range-card header h2{font-size:19px;margin:0}.range-card header p{font-size:12px;color:#758079;margin:3px 0 0}.saved-badge{margin-left:auto;background:#dff2e5;color:#23704e;padding:6px 9px;border-radius:99px;font-size:11px;font-weight:800}.notebook-body{position:relative;padding:26px 28px 30px 54px;background-image:repeating-linear-gradient(transparent,transparent 35px,rgba(86,132,161,.12) 36px)}.notebook-body:before{content:"";position:absolute;top:0;bottom:0;left:34px;width:1px;background:#eda7a0}.record-form{display:flex;flex-direction:column;gap:10px}.field-label{display:grid;grid-template-columns:38px auto 1fr;align-items:center;gap:5px;margin-top:10px}.field-label span{color:var(--coral);font:700 14px Georgia,serif}.field-label b{font-size:15px}.field-label small{color:#849089;text-align:right}.record-form textarea,.record-form input,.chapter-box textarea,.chapter-box input,.final-writing textarea,.final-writing input,.quiz-section input,.teacher-form input,.inline-editor input,.quiz-editor :is(input,textarea,select),.report-filters :is(input,select),.member-filters :is(input,select){width:100%;border:1px solid #cfd8d2;border-radius:9px;background:rgba(255,255,255,.9);padding:11px 12px;outline:none}.record-form :is(textarea,input):focus,.chapter-box :is(textarea,input):focus,.final-writing :is(textarea,input):focus{border-color:#6f9b82;box-shadow:0 0 0 3px rgba(40,90,71,.1)}.counter{text-align:right;font-size:11px;color:#849089}.keyword-list{display:flex;flex-wrap:wrap;gap:6px}.keyword-list span{background:#fff1bd;border:1px solid #efd170;border-radius:99px;padding:4px 8px;font-size:12px}.form-end{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:8px}.quiz-section{margin-top:30px;border:1px dashed #a9b9af;border-radius:14px;background:rgba(255,255,255,.84);padding:20px}.quiz-heading>span{font-size:10px;font-weight:900;letter-spacing:.15em;color:var(--coral)}.quiz-heading h3{margin:5px 0 3px}.quiz-heading p{margin:0 0 14px;color:#78837d;font-size:12px}.quiz-item{padding:14px 0;border-top:1px solid #e6ebe7}.quiz-item>b{display:block;margin-bottom:10px}.ox-options{display:flex;gap:9px}.ox-options label{display:flex;justify-content:center;gap:8px;flex:1;border:1px solid var(--line);border-radius:9px;padding:10px}.quiz-result{display:flex;flex-direction:column;gap:5px;border-radius:10px;padding:12px}.quiz-result.correct{background:#e4f5e9;color:#1d6e4a}.quiz-result.wrong{background:#fff0ed;color:#9e3c31}.quiz-result span,.quiz-result p{font-size:12px;margin:0}.chapter-box{margin-top:25px;padding:22px;border-radius:15px;border:2px solid #e4b95a;background:linear-gradient(135deg,#fff8e9,#fbfaf1);display:flex;flex-direction:column;gap:9px}.chapter-box h3{margin:0 0 9px;font:700 20px Georgia,"Noto Serif KR",serif}.chapter-box label{font-weight:800;font-size:13px}.chapter-box label small{font-weight:400;color:#8a8270}.final-writing{background:linear-gradient(135deg,#f7f1ff,#edf5ff);border:2px solid #bca6de;border-radius:20px;padding:28px;margin-top:30px}.final-writing h2{font:700 29px Georgia,"Noto Serif KR",serif;margin:5px 0 8px}.final-writing>p{color:#727b82}.locked-note{background:rgba(255,255,255,.7);border-radius:11px;padding:16px;color:#71767c}.final-writing form{display:flex;flex-direction:column;gap:9px}.final-writing label{font-weight:800;margin-top:8px}.final-writing label small{font-weight:400;color:#74777c}.center-state{min-height:100vh;display:grid;place-content:center;text-align:center;background:var(--paper)}.loader{width:36px;height:36px;border:3px solid #dbe5df;border-top-color:var(--forest);border-radius:50%;margin:auto;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}

/* teacher and admin */
.admin-shell{min-height:100vh;background:linear-gradient(135deg,#f2f5f2,#fbfaf6 45%,#eef5f3)}.admin-hero{max-width:1200px;margin:auto;padding:55px 28px 40px}.admin-hero h1{font:700 clamp(36px,5vw,56px) Georgia,"Noto Serif KR",serif;letter-spacing:-.04em;margin:6px 0}.admin-hero>p:last-child{color:#718078}.teacher-page,.members-page{max-width:1200px;margin:auto;padding:0 28px 80px}.teacher-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);margin-bottom:22px;overflow-x:auto}.teacher-tabs button{white-space:nowrap;border:0;background:transparent;padding:13px 16px;color:#718078;font-weight:800;border-bottom:3px solid transparent}.teacher-tabs button.active{color:var(--forest);border-color:var(--forest)}.manage-grid{display:grid;grid-template-columns:280px 1fr;gap:20px;align-items:start}.teacher-panel{background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px rgba(36,51,45,.06);padding:22px}.book-sidebar{position:sticky;top:15px}.panel-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:18px}.panel-title h2{font:700 22px Georgia,"Noto Serif KR",serif;margin:2px 0}.panel-title p:not(.eyebrow){color:#7d8882;font-size:12px;margin:4px 0}.teacher-book-list{display:flex;flex-direction:column;gap:7px}.teacher-book-list>button{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);background:#fff;padding:9px;border-radius:11px}.teacher-book-list>button.active{border-color:#82ad94;background:#f0f6f2}.teacher-book-list button>span:last-child{display:flex;flex-direction:column;min-width:0}.teacher-book-list b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-book-list small{font-size:11px;color:#849089;margin-top:3px}.tiny-cover{display:grid;place-items:center;width:42px;height:55px;flex:0 0 auto;background:#e9b85d;border-radius:3px 6px 6px 3px;overflow:hidden;font-weight:800}.tiny-cover img{width:100%;height:100%;object-fit:cover}.editor-panel{margin-bottom:20px}.danger-tools{display:flex;gap:7px}.danger-tools button{border:1px solid var(--line);background:white;border-radius:8px;padding:7px 9px;font-size:12px}.danger-tools button.danger{border-color:#e7b2aa;color:#a93f33}.teacher-form{display:grid;grid-template-columns:2fr 1.2fr 1fr;gap:13px}.teacher-form label{display:flex;flex-direction:column;gap:6px}.teacher-form label>span{font-size:12px;font-weight:800}.teacher-form .full{grid-column:1/-1}.range-panel{position:relative}.outline-add{width:100%;border:1px dashed #88ac96;background:#f2f8f4;color:var(--forest);padding:12px;border-radius:11px;font-weight:800;margin-bottom:13px}.inline-editor{border:1px solid #bdd0c3;background:#f5f9f6;border-radius:12px;padding:15px;margin-bottom:14px}.inline-editor>div:first-child{display:grid;grid-template-columns:1fr 1fr 2fr;gap:8px}.inline-editor label{font-size:11px;font-weight:800}.compact-check{display:flex!important;align-items:center;gap:7px;margin:11px 0}.compact-check input{width:auto!important}.inline-editor>div:last-child{display:flex;justify-content:flex-end;gap:8px}.teacher-range{border:1px solid var(--line);border-radius:13px;overflow:hidden;margin-top:10px}.teacher-range>header{display:flex;align-items:center;gap:11px;padding:13px;background:#f2f6f3}.teacher-range>header>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--forest);color:#fff;font-weight:800}.teacher-range header h3{font-size:15px;margin:0}.teacher-range header p{font-size:11px;color:#7f8984;margin:2px 0}.teacher-range header .text-button{margin-left:auto;font-size:11px}.quiz-manage{padding:5px 14px 12px}.quiz-manage-row{display:grid;grid-template-columns:43px 1fr auto;gap:9px;align-items:start;padding:12px 0;border-bottom:1px dashed var(--line)}.quiz-manage-row>span{background:#e9f1ec;color:var(--forest);border-radius:6px;padding:5px;text-align:center;font-size:10px;font-weight:900}.quiz-manage-row div{display:flex;flex-direction:column}.quiz-manage-row b{font-size:13px}.quiz-manage-row small{color:#7c8781;margin-top:4px}.add-quiz{color:var(--forest);font-weight:800;font-size:12px;margin-top:9px}.quiz-editor{display:grid;gap:8px;padding:12px 0}.toast-note{position:fixed;right:25px;bottom:25px;background:#213c31;color:white;border-radius:10px;padding:12px 17px;box-shadow:0 8px 24px rgba(0,0,0,.18);font-size:13px}.report-panel,.insight-panel{min-height:380px}.report-filters{display:grid;grid-template-columns:1fr 1.5fr auto;gap:9px;margin-bottom:18px}.table-wrap{overflow-x:auto}.table-wrap table{width:100%;border-collapse:collapse}.table-wrap th{background:#f2f5f3;text-align:left;padding:12px;font-size:12px}.table-wrap td{border-bottom:1px solid var(--line);padding:13px;font-size:13px}.table-wrap td b,.table-wrap td small{display:block}.table-wrap td small{font-size:10px;color:#87908c;margin-top:3px}.table-empty{text-align:center!important;color:#87908c;padding:35px!important}.report-detail{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.detail-card{background:#f4f7f5;border-radius:10px;padding:12px;margin:7px 0}.detail-card pre{white-space:pre-wrap;font:12px/1.6 system-ui;color:#59655f}.insight-board{display:grid;gap:12px}.insight-board article{border:1px solid #bdd2c4;background:linear-gradient(145deg,#fbfaf6,#f0f6f2);border-radius:14px;padding:18px}.insight-board h3{font:700 20px Georgia,"Noto Serif KR",serif;border-bottom:1px solid var(--line);padding-bottom:10px}.insight-board h4{font-size:12px;color:#78837d;margin:16px 0 8px}.insight-keywords{display:flex;gap:7px;flex-wrap:wrap}.insight-keywords>span{background:#ffe8a9;color:#614813;border:1px solid #edc861;border-radius:99px;padding:6px 10px;font-weight:800}.insight-keywords small,.insight-board li small{margin-left:5px;opacity:.65}.insight-board li{margin:8px 0;line-height:1.5}.empty-mini{color:#849089;font-size:12px;text-align:center}.empty-mini.boxed{border:1px dashed #bdc9c2;border-radius:11px;padding:30px}.member-hero{padding-bottom:28px}.member-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.member-stats article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;justify-content:space-between;align-items:center}.member-stats span{color:#77827d;font-size:13px}.member-stats b{font:700 28px Georgia,serif;color:var(--forest)}.member-filters{display:flex;justify-content:space-between;gap:10px;margin-bottom:16px}.member-filters form{display:flex;gap:8px;flex:1}.member-filters select{width:180px}.member-list>article{display:grid;grid-template-columns:44px 1.4fr 80px 1fr auto;gap:12px;align-items:center;padding:14px 5px;border-top:1px solid var(--line)}.member-list article.suspended{opacity:.48}.member-list>article>img,.member-list>article>.avatar-fallback{width:42px;height:42px;border-radius:50%;object-fit:cover}.member-name,.join-info{display:flex;flex-direction:column}.member-name small,.join-info small{color:#87908c;font-size:11px;margin-top:3px}.role-badge{text-align:center;border-radius:99px;padding:5px 8px;font-size:11px;font-weight:800}.role-badge.student{background:#eef1ef;color:#66716c}.role-badge.teacher{background:#e8f2eb;color:#276046}.role-badge.admin{background:#fff0d1;color:#755212}.member-actions{display:flex;align-items:center;gap:8px}.member-actions button{font-size:11px;padding:8px 10px}

@media(max-width:900px){.main-nav{order:3;width:100%;justify-content:center;margin:0}.app-topbar{height:auto;min-height:84px;flex-wrap:wrap;padding-top:14px;padding-bottom:8px}.account-menu .text-button{display:none}.auth-page{grid-template-columns:1fr}.auth-story{min-height:420px}.auth-panel{padding:60px 25px}.manage-grid{grid-template-columns:1fr}.book-sidebar{position:static}.teacher-form{grid-template-columns:1fr 1fr}.teacher-form label:first-child{grid-column:1/-1}.member-list>article{grid-template-columns:44px 1fr 80px}.join-info{display:none}.member-actions{grid-column:2/-1}.book-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.app-topbar .account-menu div,.account-menu .text-button{display:none}.main-nav{justify-content:flex-start;overflow-x:auto}.auth-story{padding:34px 25px;min-height:430px}.thread-art span{width:58px;height:58px;font-size:12px}.login-card h2{font-size:30px}.terms-doc,.terms-actions{padding:20px}.terms-doc dl div{grid-template-columns:1fr;gap:5px}.reading-book-head{align-items:flex-start}.mini-cover{width:76px;height:104px}.reading-progress{width:calc(100vw - 145px)}.reading-shell{padding-left:14px;padding-right:14px}.notebook-body{padding:20px 16px 22px 32px}.notebook-body:before{left:20px}.field-label{grid-template-columns:34px 1fr}.field-label small{grid-column:2;text-align:left}.form-end{align-items:stretch;flex-direction:column}.form-end .primary-button,.form-end .secondary-button{width:100%}.teacher-page,.members-page{padding-left:14px;padding-right:14px}.admin-hero{padding-left:18px;padding-right:18px}.teacher-form{grid-template-columns:1fr}.teacher-form label:first-child{grid-column:auto}.teacher-form .full{grid-column:auto}.inline-editor>div:first-child{grid-template-columns:1fr 1fr}.inline-editor>div:first-child label:last-child{grid-column:1/-1}.report-filters{grid-template-columns:1fr}.member-stats{grid-template-columns:1fr}.member-filters{flex-direction:column}.member-filters form{flex-direction:column}.member-filters select{width:100%}.member-list>article{grid-template-columns:40px 1fr 65px}.member-actions{flex-wrap:wrap}.book-grid{grid-template-columns:1fr}}

/* Standalone PHP additions */
.teacher-tabs a{white-space:nowrap;border:0;background:transparent;padding:13px 16px;color:#718078;font-weight:800;border-bottom:3px solid transparent;text-decoration:none}.teacher-tabs a.active{color:var(--forest);border-color:var(--forest)}
.all-records-panel{min-height:380px}.record-result-count{flex:0 0 auto;border-radius:999px;background:#e8f2eb;color:#276046;padding:8px 13px}.record-filter-error{margin-bottom:15px;border:1px solid #e7b2aa;border-radius:10px;background:#fff0ed;color:#9e3c31;padding:11px 13px;font-size:13px;font-weight:700}.all-record-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:22px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#f8faf8}.all-record-filters label{display:flex;flex-direction:column;gap:6px}.all-record-filters label>span{font-size:12px;font-weight:800}.all-record-filters :is(input,select){width:100%;box-sizing:border-box;border:1px solid #cfd8d2;border-radius:9px;background:#fff;padding:10px 11px;outline:none}.all-record-filters :is(input,select):focus{border-color:#6f9b82;box-shadow:0 0 0 3px rgba(40,90,71,.1)}.record-chapter-filter{grid-column:1/-1}.record-chapter-filter select{min-height:120px}.record-chapter-filter small{color:#7d8882;font-size:11px}.record-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.record-filter-actions a{text-decoration:none}.all-records-table-wrap td{vertical-align:top;min-width:110px}.all-records-table-wrap td:first-child{white-space:nowrap}.record-type-badge,.record-submit-state{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;white-space:nowrap}.record-type-badge.range{background:#e8f2eb;color:#276046}.record-type-badge.chapter{background:#fff0d1;color:#755212}.record-type-badge.final{background:#f0eafa;color:#62428b}.record-submit-state.submitted{background:#dff2e5;color:#23704e}.record-submit-state.draft{background:#eef1ef;color:#66716c}.all-record-detail summary{cursor:pointer;color:var(--forest);font-weight:800;white-space:nowrap}.all-record-detail>div{width:min(520px,65vw);margin-top:9px}.all-record-detail section{border-top:1px solid var(--line);padding:10px 0}.all-record-detail section:first-child{border-top:0}.all-record-detail section>b{color:#425149}.all-record-detail p{white-space:normal;line-height:1.6;margin:5px 0;color:#59655f}.all-record-detail em{font-style:normal;font-weight:800}.all-record-detail em.correct{color:#23704e}.all-record-detail em.wrong{color:#a93f33}@media(max-width:760px){.all-record-filters{grid-template-columns:1fr}.record-chapter-filter,.record-filter-actions{grid-column:auto}.record-filter-actions{flex-direction:column}.record-filter-actions :is(button,a){width:100%;box-sizing:border-box;text-align:center}}
.teacher-book-list>a{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);background:#fff;padding:9px;border-radius:11px;text-decoration:none}.teacher-book-list>a.active{border-color:#82ad94;background:#f0f6f2}.teacher-book-list>a>span:last-child{display:flex;flex-direction:column;min-width:0}
.account-menu form{margin:0}.inline-editor summary,.compact-editor summary{cursor:pointer;color:var(--forest);font-weight:800;font-size:12px}.inline-editor>summary{padding:4px 0 12px}.inline-editor form>div:first-of-type{display:grid;grid-template-columns:1fr 1fr 2fr 2fr;gap:8px}.inline-editor form label{font-size:11px;font-weight:800}.compact-editor{margin:10px 0;padding:9px;border-radius:9px;background:#f5f8f6}.compact-editor form{display:grid;gap:7px;margin-top:9px}.compact-editor :is(input,textarea,select),.inline-editor :is(input,textarea,select){width:100%;border:1px solid #cfd8d2;border-radius:8px;padding:9px;background:#fff}.mini-grid{display:grid;grid-template-columns:1fr 1fr 2fr 2fr;gap:7px}.member-filters>div{display:flex;gap:8px;flex:1}.member-filters>div input{flex:1}.setup-page{min-height:100vh;background:linear-gradient(145deg,#eef5f0,#fbfaf6 45%);padding:44px 24px}.setup-shell{max-width:720px;margin:auto}.setup-card{margin-top:55px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:0 18px 50px rgba(36,51,45,.08)}.setup-card h1{font:700 34px Georgia,"Noto Serif KR",serif}.setup-card li{margin:10px 0;line-height:1.6}.setup-card form{display:flex;flex-direction:column;gap:12px}.setup-card label{display:flex;flex-direction:column;gap:7px;font-weight:800}.setup-card input{border:1px solid var(--line);border-radius:9px;padding:11px}.notice{padding:14px;border-radius:10px;margin:18px 0}.notice.success{background:#e5f5ea;color:#246849}.notice.error{background:#fff0ed;color:#9b4136}.setup-card code{background:#edf2ee;padding:2px 5px;border-radius:4px}
@media(max-width:620px){.mini-grid,.inline-editor form>div:first-of-type{grid-template-columns:1fr}.member-filters>div{flex-direction:column}}
.site-footer{display:flex;justify-content:space-between;gap:16px;max-width:1200px;margin:36px auto 0;padding:20px 24px;color:#718078;font-size:13px;border-top:1px solid #e8ece9}.site-footer a{color:#52665c}body.auth-page>.site-footer{grid-column:1/-1;width:100%;max-width:none;box-sizing:border-box;margin:0}.policy-shell{max-width:860px;margin:0 auto;padding:40px 20px 72px}.policy-brand{display:inline-flex;margin-bottom:24px}.policy-card{background:#fff;border:1px solid #e1e8e3;border-radius:20px;padding:28px 32px;margin-bottom:20px;box-shadow:0 10px 35px rgba(27,55,41,.06)}.policy-card h1{margin-top:0}.policy-card h2{font-size:17px;margin:28px 0 8px}.policy-card p{line-height:1.75}.policy-card a{color:#237653}
@media(max-width:620px){.site-footer{flex-direction:column}.policy-card{padding:22px 20px}}

/* Weekly lesson content and choice answers */
.lesson-activity{margin:0 0 24px;border:1px solid #c7d9cc;border-radius:16px;background:linear-gradient(145deg,#f8fbf8,#eef6f1);padding:22px}.lesson-activity-heading{display:flex;justify-content:space-between;align-items:end;gap:12px;border-bottom:1px solid #d7e4db;padding-bottom:12px;margin-bottom:16px}.lesson-activity-heading h3{font:700 22px Georgia,"Noto Serif KR",serif;margin:0}.lesson-body{white-space:pre-wrap;line-height:1.9;color:#34443c}.lesson-image-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.lesson-image-gallery img{width:100%;height:210px;object-fit:cover;border-radius:11px;border:1px solid #d3ddd7;background:#fff}.lesson-answer-form{margin-top:22px;padding-top:18px;border-top:1px dashed #bdcfc2;display:grid;gap:13px}.lesson-answer-form h4{margin:0;font-size:15px}.lesson-question-choices{display:grid;gap:8px}.lesson-question-choice{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid #d6e1d9;border-radius:11px;padding:12px;cursor:pointer}.lesson-question-choice:has(input:checked){border-color:#4f8969;background:#f0f7f2;box-shadow:0 0 0 2px rgba(79,137,105,.12)}.lesson-question-choice input{width:auto;margin-top:3px}.lesson-question-choice span{display:flex;gap:8px;line-height:1.55}.lesson-question-choice b{color:var(--forest);white-space:nowrap}.lesson-subtabs{display:flex;gap:8px;margin:-5px 0 18px}.lesson-subtabs a{border:1px solid var(--line);border-radius:99px;background:#fff;color:#6c7a72;text-decoration:none;padding:9px 14px;font-size:12px;font-weight:800}.lesson-subtabs a.active{background:var(--forest);border-color:var(--forest);color:#fff}.lesson-filter-panel{padding-bottom:4px;margin-bottom:18px}.lesson-editor-panel,.lesson-question-panel,.lesson-answers-panel{margin-bottom:18px}.lesson-content-form{display:grid;gap:14px}.lesson-content-form>label,.lesson-image-fields label,.lesson-question-add label{display:grid;gap:7px;font-size:12px;font-weight:800}.lesson-content-form textarea,.lesson-content-form input,.lesson-question-list textarea,.lesson-question-add textarea{width:100%;box-sizing:border-box}.lesson-image-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.lesson-question-list{display:grid;gap:9px;margin-bottom:16px}.lesson-question-list>article{display:grid;grid-template-columns:45px 1fr auto;gap:10px;align-items:start;border:1px solid var(--line);border-radius:12px;background:#f8faf8;padding:12px}.lesson-question-list>article>span{background:var(--forest);color:#fff;border-radius:7px;padding:7px;text-align:center;font-size:11px;font-weight:900}.lesson-question-list form{display:grid;gap:7px}.lesson-question-add{border:1px dashed #a8c2b1;border-radius:12px;background:#f4f9f5;padding:15px}.lesson-answer-groups{display:grid;gap:15px}.lesson-answer-group{border:1px solid #cddbd1;border-radius:14px;overflow:hidden}.lesson-answer-group>header{position:relative;background:#eef5f0;padding:17px 95px 17px 18px}.lesson-answer-group header small{color:#76837c}.lesson-answer-group header h3{font:700 18px/1.5 Georgia,"Noto Serif KR",serif;margin:5px 0 0}.lesson-answer-group header>span{position:absolute;right:16px;top:18px;background:#fff;border:1px solid #ccd9d0;border-radius:99px;padding:6px 9px;font-size:11px;font-weight:800}.lesson-answer-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:14px}.lesson-answer-cards>div{border:1px solid var(--line);border-radius:11px;background:#fff;padding:14px}.lesson-answer-cards b,.lesson-answer-cards small{display:block}.lesson-answer-cards small{color:#839089;font-size:10px;margin-top:3px}.lesson-answer-cards p{white-space:normal;line-height:1.7;margin:13px 0 0;color:#3e4d45}.lesson-answer-group>.empty-mini{padding:24px}
@media(max-width:760px){.lesson-image-gallery,.lesson-image-fields,.lesson-answer-cards{grid-template-columns:1fr}.lesson-image-gallery img{height:auto;max-height:360px}.lesson-question-list>article{grid-template-columns:38px 1fr}.lesson-question-list>article>.danger-text{grid-column:2;justify-self:end}.lesson-answer-group>header{padding-right:18px}.lesson-answer-group header>span{position:static;display:inline-block;margin-top:10px}.lesson-activity{padding:17px 14px}.lesson-activity-heading{align-items:flex-start;flex-direction:column}}

/* Legacy data migration */
.migration-hero{padding-bottom:28px}.migration-page{display:grid;gap:16px}.migration-warning code{background:#eef2ef;border-radius:5px;padding:2px 5px}.migration-upload-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.migration-upload-form label{display:grid;gap:5px;border:1px dashed #adc1b3;border-radius:12px;background:#f7faf8;padding:13px}.migration-upload-form label span{font-size:13px;font-weight:800}.migration-upload-form label small{color:#7e8b84}.migration-upload-form input[type=file]{padding:8px;background:#fff;border:1px solid var(--line);border-radius:8px}.migration-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:5px 0 18px}.migration-stats article{border:1px solid var(--line);border-radius:13px;background:linear-gradient(145deg,#fff,#f3f7f4);padding:16px;display:grid;gap:4px}.migration-stats span{font-size:11px;color:#738078;font-weight:800}.migration-stats b{font:700 30px Georgia,"Noto Serif KR",serif;color:var(--forest)}.migration-stats small{color:#8a938e}.migration-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:18px}.migration-type-grid>div{display:flex;justify-content:space-between;border-radius:9px;background:#eef4f0;padding:10px 12px;font-size:12px}.migration-type-grid b{color:var(--forest)}.migration-missing{border:1px solid #e1c783;background:#fff9e8;border-radius:12px;padding:15px;margin:16px 0}.migration-missing h3{font-size:15px;margin:0 0 4px}.migration-missing p{font-size:12px;color:#7b6e4a}.migration-missing>div{display:flex;gap:6px;flex-wrap:wrap;max-height:160px;overflow:auto}.migration-missing span{background:#fff;border:1px solid #ead9a9;border-radius:99px;padding:5px 8px;font-size:10px}.migration-execute-form{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:flex-end;align-items:end;gap:10px}.migration-execute-form label{display:grid;gap:6px;font-size:12px}.migration-execute-form input{width:220px}.migration-result-panel{border-color:#8db69d}.migration-result-note{background:#eef5f0;border-radius:9px;padding:12px;text-align:center;color:#496354}.migration-result-panel .form-end a{text-decoration:none}.migration-page>.notice{margin:0}
@media(max-width:800px){.migration-upload-form{grid-template-columns:1fr}.migration-stats,.migration-type-grid{grid-template-columns:1fr 1fr}.migration-execute-form{align-items:stretch;flex-direction:column}.migration-execute-form label,.migration-execute-form input,.migration-execute-form button{width:100%}}
@media(max-width:480px){.migration-stats,.migration-type-grid{grid-template-columns:1fr}}

/* Game-style fact-check reward board */
.quiz-reward-card{margin-top:13px;border:2px solid #314a40;border-radius:17px;background:linear-gradient(145deg,#f7fbf8,#fff9df);padding:15px;box-shadow:0 5px 0 #c9d7ce}.quiz-reward-hero{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:10px}.quiz-reward-hero>span{display:grid;place-items:center;width:44px;height:44px;border:2px solid #314a40;border-radius:14px;background:#fff;font-size:25px;transform:rotate(-3deg)}.quiz-reward-hero div{display:grid;gap:2px}.quiz-reward-hero small{color:#7a877f;font-size:10px;font-weight:900}.quiz-reward-hero b{color:#29483b;font-size:16px}.quiz-reward-hero>strong{color:#dd6235;font:950 28px Georgia,serif}.quiz-score-breakdown{display:flex;justify-content:space-between;gap:10px;margin:13px 0 9px;border-radius:10px;background:rgba(255,255,255,.82);padding:9px 11px;color:#68776f;font-size:11px}.quiz-score-breakdown b{color:#253f35}.quiz-accuracy-meter i{display:block;height:13px;border:2px solid #2d473c;border-radius:99px;background:#fff;padding:2px;overflow:hidden}.quiz-accuracy-meter i span{display:block;height:100%;border-radius:99px;background:repeating-linear-gradient(135deg,#ffca3a 0 10px,#ff914d 10px 20px)}.quiz-accuracy-meter small{display:block;margin-top:5px;text-align:right;color:#82651b;font-size:10px;font-weight:900}.quiz-reward-ladder{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.quiz-reward-ladder>div{display:grid;gap:3px;border:1px solid #d6ded9;border-radius:11px;background:#f1f4f2;padding:9px;text-align:center;opacity:.62}.quiz-reward-ladder>div.current{border:2px solid #e1a829;background:#fff2ae;box-shadow:0 3px 0 #d5aa39;opacity:1;transform:translateY(-2px)}.quiz-reward-ladder small{color:#76827b;font-size:9px}.quiz-reward-ladder b{color:#344b41;font-size:10px}.quiz-reward-ladder strong{color:#d55e31;font-size:14px}.quiz-cheer{margin:13px 0 0!important;border-radius:9px;background:#e8f5ec;padding:9px 11px;text-align:center;color:#386149!important;font-weight:800}.quiz-reward-card.tier-2{background:linear-gradient(145deg,#fff8c9,#fff,#ffe8ad);box-shadow:0 5px 0 #e5b636}.quiz-reward-card.tier-2 .quiz-reward-hero>span{animation:quiz-bounce 1.3s ease-in-out infinite}.quiz-reward-card.tier-2 .quiz-accuracy-meter i span{background:repeating-linear-gradient(135deg,#ffd431 0 9px,#ff7d47 9px 18px)}@keyframes quiz-bounce{50%{transform:rotate(3deg) translateY(-3px)}}
@media(max-width:560px){.quiz-score-breakdown{flex-direction:column}.quiz-reward-ladder{grid-template-columns:1fr}.quiz-reward-ladder>div.current{transform:none}.quiz-reward-hero{grid-template-columns:42px 1fr}.quiz-reward-hero>strong{grid-column:1/-1;text-align:right;margin-top:-8px}}

/* Teacher insights and readable student record viewer */
.final-insights{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}.final-insights-heading h3{font:700 24px Georgia,"Noto Serif KR",serif;margin:3px 0}.final-insights-heading>p:last-child{color:#7a8780;font-size:12px}.final-insight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.final-insight-card{border:1px solid #c9d9ce;border-radius:14px;background:linear-gradient(145deg,#fffdf7,#f0f6f2);padding:18px}.final-insight-card>header{display:flex;justify-content:space-between;gap:12px;padding-bottom:11px;border-bottom:1px solid var(--line)}.final-insight-card header div{display:flex;flex-direction:column}.final-insight-card header small,.final-insight-card time{font-size:10px;color:#849089}.final-insight-card h4{font:700 19px Georgia,"Noto Serif KR",serif;color:var(--forest);margin:16px 0 8px}.final-insight-card>p{white-space:pre-wrap;line-height:1.75;color:#45554d;margin:0}.modal-open{overflow:hidden}.record-view-overlay{position:fixed;inset:0;z-index:1000;background:rgba(22,38,31,.72);display:grid;place-items:center;padding:24px}.record-view-shell{width:min(920px,100%);max-height:calc(100vh - 48px);overflow:hidden;background:#f5f3ec;border-radius:20px;box-shadow:0 25px 80px rgba(0,0,0,.32);display:flex;flex-direction:column}.record-view-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;background:var(--forest);color:#fff;padding:24px 28px}.record-view-top h2{font:700 28px Georgia,"Noto Serif KR",serif;margin:4px 0}.record-view-top p:last-child{margin:0;color:#dce9e0}.record-view-close{border:1px solid rgba(255,255,255,.35);border-radius:99px;background:rgba(255,255,255,.12);color:#fff;padding:8px 12px;cursor:pointer}.record-view-body{overflow:auto;padding:24px;display:grid;gap:16px}.record-view-card{border:1px solid #d4ddd7;border-radius:15px;background:#fff;padding:20px}.record-view-card.final{background:linear-gradient(145deg,#fffdf7,#eef5f0);border-color:#b9d0c0}.record-view-card>header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:11px;margin-bottom:14px}.record-view-card>header>span{font:700 19px Georgia,"Noto Serif KR",serif}.record-view-card>header>small{color:#87928c}.record-view-field{margin-top:14px}.record-view-field>b{display:block;font-size:11px;color:#75837b;margin-bottom:6px}.record-view-field>p{white-space:pre-wrap;line-height:1.75;margin:0;color:#3f5047}.record-view-field ol{margin:7px 0 0;padding-left:21px}.record-view-field li{margin:7px 0;line-height:1.6}.record-view-keywords{display:flex;gap:7px;flex-wrap:wrap}.record-view-keywords span{background:#ffe8a9;color:#614813;border:1px solid #edc861;border-radius:99px;padding:6px 10px;font-size:12px;font-weight:800}.record-view-button{white-space:nowrap}
@media(max-width:720px){.final-insight-grid{grid-template-columns:1fr}.record-view-overlay{padding:0}.record-view-shell{height:100vh;max-height:none;border-radius:0}.record-view-top{padding:20px}.record-view-top h2{font-size:23px}.record-view-body{padding:14px}.record-view-card{padding:16px}}
.record-view-card.final.empty{border-style:dashed;opacity:.78}

/* Fact check unlock flow and high-contrast O/X choices */
.range-card:not(:has(.saved-badge)) .quiz-section{display:none}.quiz-locked-note{margin-top:18px;border:1px dashed #9fb9aa;border-radius:12px;background:#f1f6f3;color:#456153;padding:14px 16px;text-align:center;font-size:13px;font-weight:800}.quiz-locked-note:before{content:"🔒";margin-right:7px}.ox-options{display:flex;gap:12px}.ox-options label{position:relative;display:grid;place-items:center;flex:1;min-height:96px;border:0;border-radius:14px;padding:16px;color:#fff;font-size:42px;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 8px 18px rgba(36,51,45,.13);transition:transform .15s,filter .15s,box-shadow .15s}.ox-options label:first-child{background:#2563eb}.ox-options label:last-child{background:#dc2626}.ox-options label:hover{filter:brightness(1.08);transform:translateY(-2px)}.ox-options label:focus-within{outline:4px solid #f4c95d;outline-offset:3px}.ox-options label:has(input:checked){transform:translateY(-2px) scale(1.015);box-shadow:0 0 0 4px #fff,0 0 0 8px #24332d,0 12px 24px rgba(36,51,45,.22)}.ox-options label:has(input:checked):after{content:"선택됨 ✓";position:absolute;right:10px;top:9px;border-radius:99px;background:rgba(255,255,255,.2);padding:5px 7px;font-size:10px;line-height:1}.ox-options input[type="radio"]{position:absolute;width:1px!important;height:1px;margin:0;opacity:0;pointer-events:none}
@media(max-width:620px){.ox-options label{min-height:78px;font-size:34px}.ox-options label:has(input:checked){box-shadow:0 0 0 3px #fff,0 0 0 6px #24332d,0 9px 18px rgba(36,51,45,.2)}}

/* 2026 free access and subscription plans */
.free-access-banner{display:flex;align-items:center;justify-content:center;gap:34px;background:#fff1bd;border-bottom:1px solid #e7cd78;padding:10px 20px;color:#5a4613}.free-access-banner div{display:flex;align-items:center;gap:12px}.free-access-banner b{font-size:13px}.free-access-banner span{font-size:12px;color:#74632f}.free-access-banner a{color:#285a47;font-size:12px;font-weight:900;text-decoration:none}.subscription-page{min-height:100vh;background:radial-gradient(circle at 85% 5%,#e2efe6 0,transparent 27%),#fbfaf6}.subscription-shell{max-width:1100px;margin:auto;padding:54px 26px 90px}.subscription-hero{display:grid;grid-template-columns:1fr 280px;gap:40px;align-items:end;padding:32px 0 48px}.subscription-hero>p{grid-column:1/-1}.subscription-hero h1{font:700 clamp(40px,6vw,64px)/1.1 Georgia,"Noto Serif KR",serif;letter-spacing:-.045em;margin:0}.subscription-hero h1 em{font-style:normal;color:var(--forest)}.subscription-hero>div>p{color:#6e7b74;line-height:1.8}.subscription-hero aside{border:1px solid #c8d9ce;border-radius:18px;background:linear-gradient(145deg,#fff,#eef6f1);padding:22px;box-shadow:0 14px 35px rgba(36,51,45,.08)}.subscription-hero aside span,.subscription-hero aside small{display:block;color:#7b8881;font-size:11px}.subscription-hero aside b{display:block;color:var(--forest);font:700 25px Georgia,"Noto Serif KR",serif;margin:8px 0}.pricing-section{padding:30px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.88);box-shadow:0 15px 45px rgba(36,51,45,.07)}.free-year-chip{border-radius:99px;background:#fff0b8;color:#6e5310;padding:8px 12px;font-size:12px;font-weight:900}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.pricing-card{position:relative;border:1px solid #dce4df;border-radius:16px;padding:22px;background:#fff}.pricing-card.current{border:2px solid var(--forest);background:linear-gradient(145deg,#fff,#eef6f1)}.current-plan{position:absolute;right:13px;top:13px;border-radius:99px;background:var(--forest);color:#fff;padding:5px 8px;font-size:10px;font-weight:900}.pricing-card>p:first-of-type{margin:0;color:#6f7d75;font-size:13px;font-weight:900}.pricing-card h3{margin:15px 0;font-size:15px}.pricing-card h3 b{font:700 35px Georgia,serif;color:var(--forest)}.pricing-card h3 small{color:#859089;font-weight:500}.pricing-card>p:nth-of-type(2){min-height:68px;color:#68766f;font-size:12px;line-height:1.65}.plan-access{border-radius:10px;background:#fff5cf;color:#674f13;padding:10px;text-align:center;font-size:11px;font-weight:900}.subscription-note{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:22px;border-radius:18px;background:var(--forest);color:#fff;padding:26px 30px}.subscription-note h2{font:700 24px Georgia,"Noto Serif KR",serif;margin:4px 0}.subscription-note>div>p:last-child{margin:8px 0 0;color:#cee0d5;font-size:12px;line-height:1.65}.subscription-note .primary-button{background:#fff;color:var(--forest);white-space:nowrap}
@media(max-width:760px){.free-access-banner{align-items:flex-start;gap:7px;flex-direction:column}.free-access-banner div{align-items:flex-start;gap:3px;flex-direction:column}.subscription-shell{padding:34px 16px 70px}.subscription-hero{grid-template-columns:1fr;gap:20px}.subscription-hero>p{grid-column:auto}.pricing-section{padding:20px 15px}.pricing-grid{grid-template-columns:1fr}.pricing-card>p:nth-of-type(2){min-height:0}.subscription-note{align-items:stretch;flex-direction:column}.subscription-note .primary-button{width:100%}}
.login-free-notice{display:grid;gap:4px;margin:22px 0 14px;border:1px solid #ead17d;border-radius:13px;background:#fff6d5;padding:15px 17px;color:#5d4917}.login-free-notice b{font-size:14px}.login-free-notice span{font-size:12px}.login-free-notice small{color:#806d3c;font-size:10px}

/* Saved notes shown while writing chapter and final reflections */
.chapter-source-notes,.final-source-notes{margin:10px 0 16px;border:1px solid #d6cda9;border-radius:13px;background:rgba(255,255,255,.82);padding:17px}.chapter-source-notes>.eyebrow,.final-source-notes>.eyebrow{margin-bottom:5px}.chapter-source-notes>h4,.final-source-notes>h4{font:700 17px Georgia,"Noto Serif KR",serif;margin:0 0 12px;color:#3e594c}.source-note-list{display:grid;gap:9px}.source-note-list article{border-left:4px solid #e4b95a;border-radius:0 9px 9px 0;background:#fffaf0;padding:10px 12px}.source-note-list span{display:block;color:#826b35;font-size:10px;font-weight:900}.source-note-list p{white-space:pre-wrap;margin:5px 0 0;color:#3f4d46;font-size:13px;line-height:1.65}.final-source-notes{border-color:#c9b9df;background:rgba(255,255,255,.72)}.final-source-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.final-source-list article{border:1px solid #ddd3ea;border-radius:11px;background:#fff;padding:14px}.final-source-list h5{font:700 15px Georgia,"Noto Serif KR",serif;color:#604c7b;margin:0 0 11px;padding-bottom:8px;border-bottom:1px solid #eee8f4}.final-source-list article>div+div{margin-top:10px}.final-source-list b{display:block;color:#88789a;font-size:10px;margin-bottom:4px}.final-source-list p{white-space:pre-wrap;margin:0;color:#40494f;font-size:12px;line-height:1.65}
@media(max-width:680px){.final-source-list{grid-template-columns:1fr}.chapter-source-notes,.final-source-notes{padding:14px}}

/* Classmates' saved range records */
.peer-record-entry{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;border:1px solid #bfd3c6;border-radius:14px;background:linear-gradient(135deg,#f7fbf8,#eaf4ee);padding:15px 17px}.peer-record-entry>div{display:grid;gap:3px}.peer-record-entry b{font-size:13px}.peer-record-entry small{color:#74827a;font-size:11px}.peer-record-entry.locked{border-style:dashed;background:#f5f6f4;opacity:.75}.peer-record-button{flex:0 0 auto;border:0;border-radius:11px;background:var(--forest);color:#fff;padding:11px 15px;font-weight:900;box-shadow:0 7px 17px rgba(40,90,71,.2)}.peer-record-button:before{content:"👥";margin-right:7px}.peer-record-button:hover:not(:disabled){background:#1e4939;transform:translateY(-1px)}.peer-record-button:disabled{background:#aab4ae;box-shadow:none;cursor:not-allowed}.peer-record-overlay{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;background:rgba(20,37,29,.76);padding:24px}.peer-record-shell{display:flex;flex-direction:column;width:min(980px,100%);max-height:calc(100vh - 48px);overflow:hidden;border-radius:22px;background:#f4f6f2;box-shadow:0 28px 90px rgba(0,0,0,.38)}.peer-record-top{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;background:linear-gradient(120deg,#214e3d,#34755a);color:#fff;padding:25px 28px}.peer-record-top h2{font:700 28px Georgia,"Noto Serif KR",serif;margin:3px 0 6px}.peer-record-top>div>p:last-child{margin:0;color:#d4e5da;font-size:12px}.peer-record-close{border:1px solid rgba(255,255,255,.4);border-radius:99px;background:rgba(255,255,255,.12);color:#fff;padding:8px 12px}.peer-record-body{overflow:auto;padding:22px}.peer-record-loading{display:grid;place-items:center;gap:10px;min-height:280px;color:#75827b}.peer-record-tabs{display:flex;gap:8px;margin-bottom:17px;border-bottom:1px solid #d5ded8}.peer-record-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:#75817b;padding:11px 15px;font-weight:900}.peer-record-tabs button.active{border-color:var(--forest);color:var(--forest)}.peer-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.peer-record-card{border:1px solid #d4dfd7;border-radius:16px;background:#fff;padding:18px;box-shadow:0 8px 22px rgba(36,51,45,.06)}.peer-record-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #e7ece8}.peer-record-identity{display:flex;align-items:center;gap:9px}.peer-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#dcece2;color:var(--forest);font-weight:900}.peer-record-card time{color:#87928c;font-size:10px}.peer-record-field{margin-top:14px}.peer-record-field>strong{display:block;margin-bottom:7px;color:#78857e;font-size:10px}.peer-record-field>p{white-space:pre-wrap;margin:0;color:#3d4d45;font-size:13px;line-height:1.7}.peer-record-field ol{margin:0;padding-left:20px}.peer-record-field li{margin:6px 0;color:#46564e;font-size:12px;line-height:1.55}.peer-keywords{display:flex;flex-wrap:wrap;gap:6px}.peer-keywords span{border:1px solid #edcc6b;border-radius:99px;background:#fff0b9;color:#634b12;padding:5px 8px;font-size:11px;font-weight:900}.peer-record-empty,.peer-record-error{display:grid;place-items:center;min-height:260px;border:1px dashed #bcc9c1;border-radius:15px;background:#fff;color:#7c8882;text-align:center;padding:28px}.peer-record-error{color:#98443a}.peer-record-error p{margin:7px 0 0}.peer-empty-content{color:#87918c;font-size:12px}
@media(max-width:700px){.peer-record-entry{align-items:stretch;flex-direction:column}.peer-record-button{width:100%}.peer-record-overlay{padding:0}.peer-record-shell{width:100%;height:100vh;max-height:none;border-radius:0}.peer-record-top{padding:20px}.peer-record-top h2{font-size:23px}.peer-record-body{padding:14px}.peer-record-grid{grid-template-columns:1fr}}

/* AI question classification */
.peer-ai-overview{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px;border:1px solid #b9cec0;border-radius:15px;background:linear-gradient(135deg,#f1f8f3,#fff9e8);padding:15px 17px}.peer-ai-overview>div:first-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 9px}.peer-ai-overview small{grid-column:2;color:#7c714f;font-size:10px}.peer-ai-overview.stale{border-style:dashed}.ai-spark{grid-row:1/3;display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:linear-gradient(145deg,#285a47,#6c4f9b);color:#fff;font-size:10px;font-weight:950;box-shadow:0 5px 13px rgba(67,66,116,.2)}.peer-ai-categories{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.peer-ai-categories span,.ai-question-tag{border:1px solid #c9b9df;border-radius:99px;background:#f3edfb;color:#624e7c;padding:5px 8px;font-size:10px;font-weight:900}.peer-question-list li{margin-bottom:9px}.peer-question-list li::marker{color:#7b8981;font-weight:800}.peer-question-list p{display:inline;white-space:pre-wrap;margin:0;line-height:1.6}.peer-question-list .ai-question-tag{display:inline-block;margin:0 7px 3px 0;vertical-align:middle}
.ai-question-classification{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}.ai-classification-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:17px}.ai-classification-heading h3{font:700 24px Georgia,"Noto Serif KR",serif;margin:3px 0}.ai-classification-heading>div>p:last-child{max-width:700px;color:#77847d;font-size:12px;line-height:1.65}.ai-range-list{display:grid;gap:15px}.ai-range-card{overflow:hidden;border:1px solid #cbdad0;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(36,51,45,.055)}.ai-range-card>header{display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(90deg,#eef6f1,#faf8ef);padding:16px 18px;border-bottom:1px solid #dfe7e1}.ai-range-card>header h4{margin:0 0 4px;color:var(--forest);font:700 18px Georgia,"Noto Serif KR",serif}.ai-range-card>header small{color:#7c8982}.ai-range-card>header>span{border-radius:99px;padding:6px 9px;font-size:10px;font-weight:900;white-space:nowrap}.ai-range-card>header>span.ready{background:#def2e5;color:#1f714c}.ai-range-card>header>span.stale{background:#fff0bd;color:#765912}.ai-range-card>header>span.waiting{background:#edf0ee;color:#6c7872}.ai-range-result{padding:16px 18px}.ai-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ai-category-card{border:1px solid #e0e6e2;border-radius:12px;background:#fbfcfb;padding:13px}.ai-category-card>header{display:grid;grid-template-columns:29px 1fr;gap:10px}.ai-category-card>header>span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#eee7f7;color:#654e81;font:800 11px Georgia,serif}.ai-category-card h4{margin:0;font-size:14px;color:#3f5449}.ai-category-card header p{margin:3px 0 0;color:#819087;font-size:10px;line-height:1.5}.ai-category-card ul{margin:11px 0 0;padding:10px 0 0 19px;border-top:1px solid #e8ede9}.ai-category-card li{position:relative;margin:6px 0;color:#46564e;font-size:12px;line-height:1.55}.ai-category-card li p{display:inline;margin:0}.ai-category-card li small{display:inline-block;margin-left:5px;border-radius:99px;background:#eaf2ed;color:#547061;padding:2px 5px;font-size:9px;font-weight:900}.ai-range-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;background:#f7f9f7;padding:12px 18px;border-top:1px solid #e5ebe7}.ai-range-actions small{margin-right:auto;color:#86918b}.ai-range-actions .secondary-button,.ai-range-actions .ai-force-button{padding:9px 13px;font-size:12px}.ai-range-actions .ai-force-button{background:linear-gradient(135deg,#654e91,#3e705d);box-shadow:0 4px 12px rgba(83,76,132,.18)}.ai-range-actions :is(.secondary-button,.ai-force-button):disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
@media(max-width:720px){.peer-ai-overview{align-items:flex-start;flex-direction:column}.peer-ai-categories{justify-content:flex-start}.ai-category-grid{grid-template-columns:1fr}.ai-range-actions{align-items:stretch;flex-direction:column}.ai-range-actions small{margin-right:0}.ai-range-actions button{width:100%}}

/* Book-specific reading rules */
.book-rule-settings{grid-column:1/-1;margin:4px 0 2px;border:1px solid #cbd9d0;border-radius:16px;background:linear-gradient(145deg,#f8fbf9,#fffdf7);padding:20px}.book-rule-settings legend{padding:0 9px;color:var(--forest);font:700 18px Georgia,"Noto Serif KR",serif}.book-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.book-rule-grid label,.book-rule-guide{display:grid;gap:7px}.book-rule-grid label span,.book-rule-guide>span{color:#53645b;font-size:12px;font-weight:900}.book-rule-grid input{width:100%}.book-rule-guide{margin-top:15px}.book-rule-guide textarea{width:100%;resize:vertical;white-space:pre-wrap}.book-rule-guide small{color:#7e8983;font-size:10px;line-height:1.55}
.keyword-guide-box{margin:-2px 0 17px;border-left:4px solid #e6b654;border-radius:0 13px 13px 0;background:#fff9e7;padding:14px 16px}.keyword-guide-box strong{display:block;margin-bottom:8px;color:#65521f;font-size:13px}.keyword-guide-box p{margin:0;color:#625f52;font-size:12px;line-height:1.8;white-space:pre-wrap}
.peer-keywords>span{display:inline-flex!important;align-items:center;gap:5px}.ai-keyword-tag{display:inline-block;border-radius:99px;background:#eee8f8;color:#624e7c;padding:2px 6px;font-size:9px;font-weight:900;white-space:nowrap}.peer-final-title{color:var(--forest)!important;font:700 17px Georgia,"Noto Serif KR",serif!important}
.ai-result-group+.ai-result-group{margin-top:20px;padding-top:18px;border-top:1px dashed #d9e1dc}.ai-result-group-heading{display:flex;align-items:baseline;gap:9px;margin-bottom:10px}.ai-result-group-heading span{color:#7a6594;font-size:9px;font-weight:950;letter-spacing:.13em}.ai-result-group-heading h4{margin:0;color:#43564c;font-size:14px}
.ai-range-card>header>span.monitoring{background:#e8e1f5;color:#654c84}.ai-monitor-status{display:flex;align-items:flex-start;gap:12px;margin:14px 18px 0;border:1px solid #dfe6e1;border-radius:13px;background:#f8faf8;padding:13px 15px}.ai-monitor-status.active{border-color:#b8c7dc;background:linear-gradient(135deg,#f0f5fb,#f7f1fc);box-shadow:0 7px 20px rgba(70,75,126,.08)}.ai-monitor-status.finishing{border-style:dashed;border-color:#d8c98f;background:#fffbec}.ai-monitor-icon{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border-radius:11px;background:#e6ece8;color:#68766f;font-size:11px;font-weight:950}.ai-monitor-status.active .ai-monitor-icon{background:linear-gradient(145deg,#285a47,#6c4f9b);color:#fff;box-shadow:0 5px 13px rgba(67,66,116,.2)}.ai-monitor-copy{min-width:0}.ai-monitor-copy b{display:block;margin-bottom:3px;color:#40534a;font-size:12px}.ai-monitor-copy p{margin:0;color:#64736b;font-size:11px;line-height:1.55}.ai-monitor-copy small{display:block;margin-top:5px;color:#858f8a;font-size:10px;line-height:1.5}.ai-monitor-status.active .ai-monitor-copy b{color:#594576}.ai-range-actions .danger-text{padding:8px 4px;font-size:11px}
@media(max-width:760px){.book-rule-grid{grid-template-columns:1fr 1fr}.book-rule-settings{padding:16px 13px}}
@media(max-width:480px){.book-rule-grid{grid-template-columns:1fr}.ai-monitor-status{margin:12px 12px 0}.ai-monitor-copy p{font-size:10px}}

/* Inspiration RPG */
.inspiration-dashboard{position:relative;display:grid;grid-template-columns:220px 1fr 150px;align-items:center;gap:24px;max-width:1120px;margin:-35px auto 45px;padding:22px 28px;border:3px solid #253e35;border-radius:30px;background:linear-gradient(135deg,#fff8ca 0%,#fff 46%,#e9f7ef 100%);box-shadow:0 12px 0 #d5b857,0 22px 50px rgba(35,62,53,.18);overflow:hidden}.inspiration-dashboard:before{content:'✦  ✧  ✦';position:absolute;right:16%;top:10px;color:#e9b832;font-size:19px;letter-spacing:12px;transform:rotate(-5deg)}.rank-character{width:200px;height:160px;border:3px solid #253e35;border-radius:23px;background-image:url('weavus-reader-ranks-stars.png');background-repeat:no-repeat;background-size:500% 100%;background-position:calc(var(--rank-index) * 25%) center;box-shadow:0 7px 0 #253e35;transform:rotate(-2deg)}.rank-copy{min-width:0}.rank-copy>.eyebrow{color:#785a22}.rank-title{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.rank-title h2{margin:3px 0;color:#203c32;font:900 31px Georgia,"Noto Serif KR",serif}.rank-title h2 small{display:inline-grid;place-items:center;min-width:34px;height:30px;border:2px solid #203c32;border-radius:11px;background:#fff;color:#203c32;font:900 15px system-ui}.rank-stars{color:#f6b817;font-size:23px;letter-spacing:2px;text-shadow:0 2px 0 #8b6513}.rank-copy>p:not(.eyebrow){margin:5px 0 14px;color:#617168}.inspiration-meter>div{display:flex;justify-content:space-between;gap:15px;margin-bottom:7px}.inspiration-meter b{color:#dd6b33;font-size:15px}.inspiration-meter span{color:#69766f;font-size:11px;font-weight:800}.inspiration-meter i{display:block;height:18px;border:2px solid #263f36;border-radius:99px;background:#fff;overflow:hidden;padding:2px}.inspiration-meter i span{display:block;height:100%;border-radius:99px;background:repeating-linear-gradient(135deg,#ffcf45 0 12px,#ff9f3c 12px 24px);transition:width .4s}.inspiration-dashboard>aside{display:grid;place-items:center;border:2px dashed #bd8b37;border-radius:20px;background:#fff9df;padding:18px 10px;text-align:center;transform:rotate(2deg)}.inspiration-dashboard>aside span,.inspiration-dashboard>aside small{color:#786b50;font-size:10px;font-weight:800}.inspiration-dashboard>aside strong{margin:5px 0;color:#e36132;font-size:28px}
.inspiration-feedback{margin:18px 0 28px;border:2px solid #253e35;border-radius:20px;background:#fffdf3;box-shadow:0 6px 0 #efd584;overflow:hidden}.inspiration-feedback>header{display:flex;align-items:center;gap:12px;padding:13px 17px;background:linear-gradient(90deg,#f7c846,#ffe991)}.inspiration-feedback>header span{border:2px solid #253e35;border-radius:99px;background:#fff;padding:4px 9px;color:#4e3b0e;font-size:10px;font-weight:950}.inspiration-feedback>header b{color:#263e35;font-size:14px}.inspiration-feedback article{padding:16px 18px}.inspiration-feedback article+article{border-top:1px dashed #cabf91}.feedback-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.feedback-title strong{color:#314c41}.feedback-title>span{border:2px solid #d75e31;border-radius:99px;background:#fff3e8;padding:4px 10px;color:#d75e31;font-size:12px;font-weight:950}.criterion-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.criterion-chips span{border:1px solid #c8d6cd;border-radius:99px;background:#f1f7f3;padding:5px 9px;color:#53675d;font-size:10px}.criterion-chips b{color:#21483a}.inspiration-feedback article>p{margin:9px 0;color:#56665e;font-size:12px;line-height:1.7}.inspiration-feedback article>small{display:block;border-left:3px solid #69a47c;background:#eef8f1;padding:9px 11px;color:#486052;line-height:1.55}.teacher-bonus-note{margin-top:8px;border-left-color:#e1a836!important;background:#fff7dc!important}.submitted-record{position:relative;border:2px dashed #b7c6bd!important;background:#f7faf8!important}.submitted-record:after{content:'최종 제출 완료 🔒';position:absolute;right:12px;top:12px;border-radius:99px;background:#315c4a;color:#fff;padding:5px 9px;font-size:10px;font-weight:900}.submitted-record :disabled{opacity:.72;cursor:not-allowed}.chapter-source-notes,.final-source-notes{-webkit-user-select:none;user-select:none}
.inspiration-dashboard>aside .sparkle-score{display:grid;width:100%;place-items:center;margin-top:12px;border-top:1px dashed #c9a75b;padding-top:12px}.inspiration-dashboard>aside .sparkle-score span{color:#71549d;font-size:11px}.inspiration-dashboard>aside .sparkle-score strong{margin:2px 0;color:#744caf;font-size:27px}.inspiration-dashboard>aside .sparkle-score small{color:#81728f;font-size:9px}
.rpg-role-panel{margin-bottom:24px}.rpg-role-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.rpg-role-toggle{display:grid;gap:12px;border:2px solid #d8dfda;border-radius:18px;background:#f8faf8;padding:16px}.rpg-role-toggle.enabled{border-color:#e3b334;background:linear-gradient(145deg,#fff6c9,#fffdf2);box-shadow:0 5px 0 #ead173}.rpg-role-toggle>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px}.rpg-role-toggle>div>span{grid-row:1/3;font-size:23px}.rpg-role-toggle>div>b{color:#314c41}.rpg-role-toggle>div>small{color:#75827b;font-size:10px}.rpg-role-toggle>label{font-size:11px;font-weight:850}.rpg-member-stats{grid-template-columns:repeat(5,1fr)}.member-role-form{display:flex;align-items:center;gap:6px}.member-role-form select{min-width:90px}.member-role-form .form-message{font-size:9px}.teacher-rpg-evaluation{margin-top:16px;border-top:1px dashed #cad6ce;padding-top:14px}.teacher-bonus-form{display:grid;grid-template-columns:140px 1fr auto;align-items:end;gap:8px;margin-top:10px}.teacher-bonus-form label{display:grid;gap:5px;font-size:11px;font-weight:850}.teacher-bonus-form textarea{min-height:58px;resize:vertical}.teacher-bonus-form .form-message{grid-column:1/-1;color:#476557;font-size:10px}
@media(max-width:850px){.inspiration-dashboard{grid-template-columns:150px 1fr}.rank-character{width:145px;height:145px}.inspiration-dashboard>aside{grid-column:1/-1;display:flex;justify-content:center;gap:10px}.rpg-role-grid{grid-template-columns:1fr 1fr}.rpg-member-stats{grid-template-columns:repeat(3,1fr)}.teacher-bonus-form{grid-template-columns:1fr}}
@media(max-width:560px){.inspiration-dashboard{grid-template-columns:1fr;margin:-20px 14px 35px;padding:19px}.rank-character{width:100%;height:180px}.rank-title h2{font-size:24px}.inspiration-meter>div{align-items:flex-start;flex-direction:column;gap:3px}.rpg-role-grid,.rpg-member-stats{grid-template-columns:1fr 1fr}.member-role-form{flex-wrap:wrap}}
.criterion-evidence{margin:8px 0;border-radius:12px;background:#f6f3e8;padding:9px 12px}.criterion-evidence summary{cursor:pointer;color:#645b41;font-size:10px;font-weight:900}.criterion-evidence ul{display:grid;gap:7px;margin:9px 0 0;padding-left:17px;color:#64645d;font-size:10px;line-height:1.55}.criterion-evidence b{color:#344d43}
.rpg-guide{max-width:1120px;margin:-18px auto 45px;border:2px solid #b8c9bf;border-radius:22px;background:#fff;box-shadow:0 12px 35px rgba(35,62,53,.08);overflow:hidden}.rpg-guide>summary{display:flex;align-items:center;gap:10px;padding:16px 20px;cursor:pointer;list-style:none}.rpg-guide>summary::-webkit-details-marker{display:none}.rpg-guide>summary>span{font-size:22px}.rpg-guide>summary>b{color:#304b40}.rpg-guide>summary>small{margin-left:auto;color:#b46b28;font-weight:850}.rpg-guide-body{padding:0 20px 20px}.rank-roadmap{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.rank-roadmap article{border:1px solid #d8e0db;border-radius:16px;background:#fafcfb;padding:8px;text-align:center}.rank-character.mini{width:100%;height:100px;border-width:2px;border-radius:12px;box-shadow:0 3px 0 #253e35}.rank-roadmap article span{display:block;margin-top:8px;color:#f2b51c;font-size:12px}.rank-roadmap article b{display:block;color:#304b40;font-size:12px}.rank-roadmap article small{color:#75827b;font-size:9px}.rpg-guide table{width:100%;margin-top:18px;border-collapse:collapse;font-size:11px}.rpg-guide th,.rpg-guide td{border-bottom:1px solid #e2e8e4;padding:9px;text-align:left}.rpg-guide th{background:#f2f7f4;color:#3d5a4d}.rpg-guide td:nth-child(n+2){font-weight:800}.rpg-guide-body>p{margin:12px 0 0;border-radius:11px;background:#fff8db;padding:10px 12px;color:#6a6046;font-size:10px;line-height:1.6}
@media(max-width:850px){.rank-roadmap{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){.rpg-guide{margin:-12px 14px 35px}.rpg-guide>summary{align-items:flex-start;flex-wrap:wrap}.rpg-guide>summary>small{width:100%;margin-left:32px}.rank-roadmap{grid-template-columns:1fr 1fr}.rpg-guide-body{overflow-x:auto}.rpg-guide table{min-width:520px}}
.rank-character{width:170px;height:280px;background-color:#fffaf0;background-size:500% auto;background-position:calc(var(--rank-index) * 25%) 54%}.rank-character.mini{width:100%;height:210px}@media(max-width:850px){.rank-character{width:135px;height:230px}}@media(max-width:560px){.rank-character{width:150px;height:245px;margin:auto}.rank-character.mini{width:100%;height:210px}}
.rank-character.personal-reader-photo{background-image:var(--student-photo),var(--student-photo-fallback),url('weavus-reader-ranks-stars.png');background-position:center,center,calc(var(--rank-index) * 25%) 54%;background-size:cover,cover,500% auto;background-repeat:no-repeat}
.rank-character.personal-reader-photo{position:relative}.rank-character.personal-reader-photo:before{content:attr(data-stars);position:absolute;z-index:2;left:50%;top:8px;max-width:calc(100% - 14px);transform:translateX(-50%);border:1px solid rgba(255,226,105,.9);border-radius:99px;background:rgba(34,48,41,.78);padding:4px 8px;color:#ffd84f;font-size:clamp(11px,1.5vw,18px);font-weight:950;letter-spacing:2px;line-height:1;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.55);box-shadow:0 3px 10px rgba(0,0,0,.22);white-space:nowrap;backdrop-filter:blur(4px)}.rank-character.shining-character.personal-reader-photo:before{top:auto;bottom:2px;padding:3px 5px;font-size:9px;letter-spacing:1px}.reading-status-portrait.personal-reader-photo:before{top:auto;bottom:2px;font-size:15px}

/* Single-page range reader and live point panel */
.reading-shell{max-width:1360px}.reading-workspace{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:24px}.reading-range-content{min-width:0}.reading-range-slide[hidden]{display:none!important}.reading-range-slide:not([hidden]){animation:rangePageIn .22s ease-out}@keyframes rangePageIn{from{opacity:.25;transform:translateX(12px)}to{opacity:1;transform:none}}.range-page-toolbar{position:sticky;z-index:25;top:8px;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;align-items:center;gap:12px;margin:0 0 20px;border:2px solid #294d3e;border-radius:18px;background:rgba(255,253,244,.96);padding:10px 12px;box-shadow:0 9px 25px rgba(32,67,51,.12);backdrop-filter:blur(12px)}.range-page-toolbar>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;text-align:center}.range-page-toolbar>div small{grid-column:1/-1;color:#b2763e;font-size:8px;font-weight:950;letter-spacing:.15em}.range-page-toolbar>div strong{overflow:hidden;color:#294b3d;font:800 18px Georgia,"Noto Serif KR",serif;text-overflow:ellipsis;white-space:nowrap}.range-page-toolbar>div span{color:#7d8982;font-size:11px;font-weight:850}.range-arrow{display:grid;width:48px;height:48px;place-items:center;border:2px solid #294d3e;border-radius:15px;background:#2c614b;color:#fff;font-size:25px;font-weight:900;box-shadow:0 4px 0 #193d2e;transition:.15s}.range-arrow:hover:not(:disabled){transform:translateY(-1px);background:#214e3b}.range-arrow:disabled{border-color:#cbd5cf;background:#e9eeeb;color:#a6b0aa;box-shadow:none;cursor:not-allowed}.reading-status-column{position:sticky;top:18px;display:flex;flex-direction:column;gap:10px}
.reading-status-panel{display:grid;gap:13px;border:2px solid #294d3e;border-radius:23px;background:linear-gradient(155deg,#fff8cd,#fff 44%,#eee7fa);padding:17px;box-shadow:0 10px 0 #ccb354,0 20px 45px rgba(40,63,52,.16)}.reading-status-portrait.rank-character{width:100%;height:245px;margin:0;border-radius:18px;transform:none}.reading-status-title{text-align:center}.reading-status-title>small{color:#9a7130;font-size:8px;font-weight:950;letter-spacing:.13em}.reading-status-title h2{margin:4px 0 2px;color:#28483a;font:800 23px Georgia,"Noto Serif KR",serif}.reading-status-title p{margin:0;color:#8f6c12;font-size:11px;font-weight:900}.reading-point-card{display:grid;gap:7px;border:1px solid #ddded4;border-radius:14px;background:rgba(255,255,255,.85);padding:12px}.reading-point-card header{display:flex;align-items:center;justify-content:space-between;gap:8px}.reading-point-card header span{color:#715728;font-size:10px;font-weight:900}.reading-point-card header strong{color:#d36332;font:900 20px Georgia,serif}.reading-point-card i{display:block;height:9px;overflow:hidden;border-radius:99px;background:#eee9da}.reading-point-card i span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#efa13d,#ffd55d)}.reading-point-card small{color:#807968;font-size:8px;font-weight:800;line-height:1.4}.reading-point-card.sparkle header span{color:#684b8c}.reading-point-card.sparkle header strong{color:#714aa1}.reading-point-card.sparkle i span{background:linear-gradient(90deg,#8c64b8,#d5a4ef)}.reading-next-step{border-radius:14px;background:#254c3c;padding:13px 14px;color:#fff}.reading-next-step>b{font-size:11px}.reading-next-step p,.reading-next-step ul{margin:7px 0 0;color:#dcebe3;font-size:9px;line-height:1.65}.reading-next-step ul{display:grid;gap:2px;padding-left:17px}.final-reading-slide .final-writing{margin-top:0}
.reading-range-progress-card{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:14px;border:1px solid #cadbd2;border-radius:17px;background:rgba(255,255,255,.9);padding:13px}.reading-range-pie{position:relative;display:grid;width:88px;aspect-ratio:1;place-items:center;border-radius:50%;background:conic-gradient(#2f7658 calc(var(--range-progress)*1%),#e2ebe6 0);box-shadow:inset 0 0 0 1px rgba(34,84,64,.08)}.reading-range-pie:before{content:"";position:absolute;width:63%;aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 2px 9px rgba(38,70,56,.1)}.reading-range-pie>div{position:relative;z-index:1;display:flex;align-items:baseline;justify-content:center;color:#244d3d}.reading-range-pie strong{font:900 24px Georgia,"Noto Serif KR",serif}.reading-range-pie small{font-size:10px;font-weight:800;color:#78877f}.reading-range-progress-copy{min-width:0}.reading-range-progress-copy>small{display:block;color:#8d7134;font-size:8px;font-weight:950;letter-spacing:.11em}.reading-progress-book-title{display:-webkit-box;margin:4px 0 2px;overflow:hidden;color:#755a24;font:800 11px/1.35 Georgia,"Noto Serif KR",serif;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.reading-range-progress-copy>b{display:block;margin:3px 0;color:#274d3e;font-size:13px}.reading-range-progress-copy>strong{display:block;color:#2f7658;font:900 25px Georgia,serif}.reading-range-progress-copy p{margin:4px 0 0;color:#61736a;font-size:9px;font-weight:750;line-height:1.45}.reading-range-progress-copy p i{display:inline-block;width:7px;height:7px;margin-right:3px;border-radius:50%;background:#2f7658}.reading-range-progress-copy p span{white-space:nowrap}
@media(max-width:1020px){.reading-workspace{grid-template-columns:1fr}.reading-status-column{position:relative;top:auto;order:-1}.reading-status-panel{grid-template-columns:130px 1fr 1fr;align-items:center}.reading-status-portrait.rank-character{grid-row:1/5;width:130px;height:180px}.reading-status-title{text-align:left}.reading-range-progress-card{grid-column:2/4}.reading-next-step{grid-column:2/4}}
@media(max-width:680px){.reading-shell{padding-left:12px;padding-right:12px}.reading-status-panel{grid-template-columns:92px 1fr;padding:12px}.reading-status-portrait.rank-character{grid-row:1/3;width:92px;height:122px}.reading-status-title h2{font-size:19px}.reading-range-progress-card,.reading-point-card{grid-column:1/-1}.reading-next-step{grid-column:1/-1}.range-page-toolbar{grid-template-columns:44px minmax(0,1fr) 44px;padding:8px}.range-arrow{width:40px;height:40px;font-size:20px}.range-page-toolbar>div strong{font-size:14px}.range-page-toolbar>div span{font-size:9px}.chapter-tabs{padding-bottom:12px}}
.reading-workspace.no-status{grid-template-columns:1fr}
.status-panel-toggle{align-self:flex-end;border:1px solid #cbd5cf;border-radius:99px;background:#fff;padding:7px 14px;color:#2c614b;font-size:11px;font-weight:850;cursor:pointer;box-shadow:0 3px 8px rgba(36,51,45,.08);transition:.15s}
.status-panel-toggle:hover{background:var(--mint,#eef4f0);border-color:#9cb6ab}
.status-panel-toggle[aria-pressed="true"]{background:#2c614b;border-color:#2c614b;color:#fff}
.reading-workspace.status-panel-hidden{grid-template-columns:minmax(0,1fr) 0}
.reading-workspace.status-panel-hidden .reading-status-panel{display:none!important}
.reading-workspace.status-panel-hidden .reading-status-column{position:relative;width:0;overflow:visible}
.reading-workspace.status-panel-hidden .status-panel-toggle{position:absolute;top:0;right:0;z-index:30;white-space:nowrap}
.reading-workspace.status-panel-hidden .range-page-toolbar{margin-right:150px}
@media(max-width:1020px){.status-panel-toggle{align-self:flex-start}.reading-workspace.status-panel-hidden{grid-template-columns:1fr}.reading-workspace.status-panel-hidden .reading-status-column{position:static;width:auto}.reading-workspace.status-panel-hidden .status-panel-toggle{position:static}.reading-workspace.status-panel-hidden .range-page-toolbar{margin-right:0}}
.range-setup-complete{display:flex;align-items:flex-start;gap:10px;margin-top:15px;border:2px solid #e2bd58;border-radius:14px;background:#fff9df;padding:13px 15px}.range-setup-complete input{flex:0 0 auto;width:18px!important;height:18px;margin-top:2px}.range-setup-complete span{display:grid;gap:3px}.range-setup-complete b{color:#4f492e;font-size:12px}.range-setup-complete small{color:#776f54;font-size:10px;line-height:1.5}
/* Compact fact-check O/X controls: less than half of the former 96px height. */
.ox-options label{min-height:42px;padding:4px 10px;border-radius:10px;font-size:25px;box-shadow:0 4px 10px rgba(36,51,45,.12)}.ox-options label:hover{transform:translateY(-1px)}.ox-options label:has(input:checked){transform:translateY(-1px) scale(1.008);box-shadow:0 0 0 3px #fff,0 0 0 6px #24332d,0 6px 13px rgba(36,51,45,.18)}.ox-options label:has(input:checked):after{right:6px;top:4px;padding:3px 5px;font-size:8px}@media(max-width:620px){.ox-options label{min-height:38px;padding:3px 8px;font-size:22px}}
.inspiration-score-cell{min-width:160px}.inspiration-score-cell>strong{display:block;color:#dd6531;font-size:17px}.inspiration-score-cell>small{display:block;margin-top:3px;color:#718078;font-size:9px;white-space:nowrap}.inspiration-rank{display:inline-block;margin-top:6px;border:1px solid #e2be57;border-radius:99px;background:#fff8d8;padding:3px 7px;color:#745c17;font-size:9px;font-weight:900;white-space:nowrap}.score-loading{color:#839089;font-size:10px}.score-error{max-width:180px;color:#a5473c!important;white-space:normal!important;line-height:1.45}

/* Reading context bridge and complete teacher feedback */
.insight-panel>.insight-board{display:none}
.reading-book-copy{min-width:0}.reading-hero-motto{display:block;width:max-content;max-width:100%;margin-top:13px;border-left:4px solid #ffd25b;background:rgba(255,255,255,.12);padding:9px 13px;color:#fff7cc;font:800 clamp(16px,2.3vw,22px)/1.45 Georgia,"Noto Serif KR",serif;letter-spacing:-.025em}.memory-first-guide{margin:-1px 0 2px;border:1px solid #ecd37a;border-radius:10px;background:#fff8d7;padding:9px 12px;color:#6c5719;font-size:11px;font-weight:750;line-height:1.6}.context-bridge-copy{border:1px solid #b7d1c0;border-radius:13px;background:linear-gradient(135deg,#eef8f1,#fff);padding:13px 15px}.context-bridge-copy b{display:block;color:#22513e;font-size:14px}.context-bridge-copy p{margin:5px 0 0;color:#53665c;font-size:12px;line-height:1.7}.final-context-copy{margin:16px 0;border-color:#c8b7df;background:linear-gradient(135deg,#f5effd,#fff)}.final-context-copy b{color:#60497d}.chapter-history{margin:1px 0 18px;border:2px solid #759e86;border-radius:18px;background:linear-gradient(135deg,#eff8f2,#fffdf4);padding:20px;box-shadow:0 7px 0 #bfd1c5;-webkit-user-select:none;user-select:none}.chapter-history-heading{display:flex;align-items:center;gap:12px}.chapter-history-heading>span{display:grid;place-items:center;width:43px;height:43px;border:2px solid #2f5c49;border-radius:13px;background:#fff;font-size:23px;transform:rotate(-3deg)}.chapter-history-heading small{color:#55806c;font-size:9px;font-weight:950;letter-spacing:.14em}.chapter-history h2{margin:2px 0;color:#294b3d;font:750 20px Georgia,"Noto Serif KR",serif}.chapter-history>p{margin:11px 0;color:#617169;font-size:12px;line-height:1.65}.chapter-history ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}.chapter-history li{display:grid;grid-template-columns:minmax(100px,150px) 1fr;gap:12px;border-radius:10px;background:#fff;padding:10px 12px}.chapter-history li b{color:#5e7d6c;font-size:10px}.chapter-history li span{color:#3f5048;font-size:12px;line-height:1.6}.chapter-context-groups{display:grid;gap:12px}.chapter-context-groups>section{border-top:1px dashed #d8cda4;padding-top:11px}.chapter-context-groups>section:first-child{border-top:0;padding-top:0}.chapter-context-groups h5{margin:0 0 8px;color:#755e27;font-size:11px}.context-keywords{display:flex;flex-wrap:wrap;gap:6px}.context-keywords span{border:1px solid #eccb62;border-radius:99px;background:#fff0b6;padding:5px 9px;color:#634a12;font-size:11px;font-weight:850}.context-text-list,.context-question-list{display:grid;gap:7px;margin:0;padding-left:20px}.context-text-list li,.context-question-list li{color:#44534b;font-size:12px;line-height:1.6}.context-text-list b{display:block;color:#806d3d;font-size:9px}.context-text-list p{margin:2px 0 0;white-space:pre-wrap}.context-empty{margin:0;color:#8b8c82;font-size:11px}.final-writing-guide{margin:16px 0 20px;border-radius:15px;background:rgba(255,255,255,.72);padding:16px}.final-writing-guide h3{margin:0 0 12px;color:#5c4875;font-size:15px}.final-writing-guide>div{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.final-writing-guide article{position:relative;display:grid;gap:5px;border:1px solid #d9cce8;border-radius:12px;background:#fff;padding:13px 12px 13px 42px}.final-writing-guide article>span{position:absolute;left:11px;top:13px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#765d94;color:#fff;font-size:11px;font-weight:900}.final-writing-guide small{color:#8a78a1;font-size:9px;font-weight:900}.final-writing-guide b{color:#493b58;font-size:12px;line-height:1.55}.reading-closing-motto{display:flex;align-items:center;justify-content:center;gap:12px;margin:36px 0 0;border:2px solid #29493d;border-radius:17px;background:linear-gradient(110deg,#fff7c7,#fff,#e8f6ed);padding:20px;text-align:center;box-shadow:0 6px 0 #c9d8ce}.reading-closing-motto span{font-size:25px}.reading-closing-motto b{color:#2c493e;font:800 clamp(14px,2vw,18px)/1.6 Georgia,"Noto Serif KR",serif}.quiz-cheer{white-space:pre-line}
.record-rpg-feedback{margin-top:18px;border:2px solid #d3b955;border-radius:15px;background:#fffdf2;overflow:hidden}.record-rpg-feedback>header{display:flex;align-items:center;gap:10px;background:linear-gradient(90deg,#ffda5e,#ffeaa3);padding:12px 15px}.record-rpg-feedback>header>span{font-size:20px}.record-rpg-feedback>header>div{display:grid}.record-rpg-feedback>header b{color:#413b21;font-size:13px}.record-rpg-feedback>header small{color:#746a42;font-size:9px}.record-feedback-item{padding:15px}.record-feedback-item+.record-feedback-item{border-top:1px dashed #d5c993}.record-feedback-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.record-feedback-title>b{color:#334c41}.record-feedback-title>strong{border:1px solid #db6b3f;border-radius:99px;background:#fff0e9;padding:5px 9px;color:#cf572d;font-size:11px}.record-point-breakdown{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.record-point-breakdown span{border-radius:99px;background:#edf4ef;padding:5px 8px;color:#52675d;font-size:9px;font-weight:850}.record-quiz-score{margin:9px 0 0;color:#5b6d64;font-size:11px}.record-feedback-criteria{display:grid;gap:7px;margin-top:11px}.record-feedback-criteria>div{border-left:3px solid #75a185;border-radius:0 8px 8px 0;background:#f2f7f4;padding:9px 11px}.record-feedback-criteria span{display:flex;justify-content:space-between;gap:10px;color:#3e574c;font-size:10px}.record-feedback-criteria p{margin:5px 0 0;color:#66736c;font-size:10px;line-height:1.55}.record-feedback-copy,.record-feedback-next,.record-feedback-teacher{margin-top:10px;border-radius:9px;background:#fff;padding:10px 11px}.record-feedback-copy>b,.record-feedback-next>b,.record-feedback-teacher>b{display:block;color:#7a713f;font-size:9px}.record-feedback-copy p,.record-feedback-next p,.record-feedback-teacher p{margin:4px 0 0;white-space:pre-wrap;color:#48574f;font-size:11px;line-height:1.65}.record-feedback-next{background:#eaf6ee}.record-feedback-next>b{color:#3c7555}.record-feedback-teacher{background:#fff2c7}.record-feedback-teacher>b{color:#8b6413}.record-question-profile{margin-top:16px;border:1px dashed #9bb9a7;border-radius:12px;background:#f0f7f2;padding:12px}.record-question-profile>b{display:block;color:#476555;font-size:10px}.record-question-profile>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.record-question-profile span{border-radius:99px;background:#fff;padding:5px 8px;color:#587064;font-size:9px;font-weight:850}
@media(max-width:700px){.reading-hero-motto{font-size:15px}.chapter-history li{grid-template-columns:1fr;gap:4px}.final-writing-guide>div{grid-template-columns:1fr}.reading-closing-motto{align-items:flex-start;flex-direction:column}.reading-closing-motto span{align-self:center}.record-feedback-title{align-items:flex-start;flex-direction:column}}

/* Shining Footprints leaderboard */
.shining-page{background:radial-gradient(circle at 12% 12%,#fff1b9 0,transparent 24%),radial-gradient(circle at 88% 26%,#eaddfa 0,transparent 22%),var(--paper)}.shining-hero{padding-bottom:42px}.shining-hero h1{font-size:clamp(42px,5.5vw,70px)}.shining-shell{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;max-width:1400px;margin:auto;padding:0 28px 90px}.shining-board{overflow:hidden;border:2px solid #244a3b;border-radius:25px;background:rgba(255,255,255,.92);box-shadow:0 14px 0 #cfb85d,0 24px 55px rgba(38,61,50,.13)}.shining-board>header{display:flex;align-items:center;gap:15px;border-bottom:2px solid #d9e3dc;background:linear-gradient(135deg,#edf7f0,#fff9df);padding:20px 22px}.sparkle-board{border-color:#624b84;box-shadow:0 14px 0 #c5addf,0 24px 55px rgba(72,53,97,.13)}.sparkle-board>header{background:linear-gradient(135deg,#f3edfb,#fff8dc)}.shining-board>header>span{display:grid;place-items:center;width:48px;height:48px;flex:0 0 auto;border:2px solid currentColor;border-radius:15px;background:#fff;font-size:25px;transform:rotate(-4deg)}.shining-board>header p{margin:0;color:#be713c;font-size:9px;font-weight:950;letter-spacing:.15em}.shining-board>header h2{margin:3px 0;color:#284a3c;font:800 clamp(21px,2.4vw,30px) Georgia,"Noto Serif KR",serif}.sparkle-board>header h2{color:#5a4279}.shining-board>header small{color:#738078;font-size:10px;font-weight:800}.shining-ranking-list{display:grid;gap:10px;margin:0;padding:15px;list-style:none}.shining-rank-card{display:grid;grid-template-columns:48px 82px minmax(0,1fr) 90px;align-items:center;gap:12px;min-height:116px;border:1px solid #dbe4de;border-radius:17px;background:#fbfdfb;padding:12px}.shining-rank-card.rank-1{border:2px solid #e4b72f;background:linear-gradient(120deg,#fff8cb,#fff)}.shining-rank-card.rank-2{border-color:#aebbc3;background:linear-gradient(120deg,#f0f4f6,#fff)}.shining-rank-card.rank-3{border-color:#c8946d;background:linear-gradient(120deg,#fbecdf,#fff)}.shining-place{display:grid;place-items:center;align-content:center}.shining-place span{color:#315646;font:900 25px Georgia,serif}.rank-1 .shining-place span{color:#d09700;font-size:31px}.rank-2 .shining-place span{color:#768993;font-size:28px}.rank-3 .shining-place span{color:#a9663c;font-size:27px}.shining-place small{margin-top:-3px;color:#89938e;font-size:9px;font-weight:900}.rank-character.shining-character{width:82px;height:72px;border-width:2px;border-radius:12px;box-shadow:0 3px 0 #253e35;transform:none}.shining-student{min-width:0}.shining-student-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.shining-student h3{overflow:hidden;margin:0;color:#263f34;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.shining-student-head p{margin:3px 0 0;color:#7b8881;font-size:10px;font-weight:750}.shining-level{flex:0 0 auto;border-radius:99px;background:#e5f0e8;padding:4px 7px;color:#285b44;font-size:10px;font-weight:950}.shining-rank-name{display:block;margin-top:5px;color:#a67b12;font-size:9px;font-weight:900}.shining-books{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:8px}.shining-books b{margin-right:2px;color:#77847d;font-size:8px}.shining-books span{overflow:hidden;max-width:150px;border-radius:99px;background:#eef3ef;padding:3px 6px;color:#4d6257;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.shining-books em{color:#9aa39e;font-size:8px;font-style:normal}.shining-score{display:grid;place-items:end;align-content:center;text-align:right}.shining-score span{color:#ad6a37;font-size:9px;font-weight:900}.shining-score strong{color:#dc6733;font:900 22px Georgia,serif}.shining-score small{color:#8a948f;font-size:8px}.shining-score.sparkle span{color:#71559b}.shining-score.sparkle strong{color:#68479a}.shining-empty{display:grid;min-height:300px;place-items:center;align-content:center;gap:8px;padding:30px;text-align:center}.shining-empty>span{font-size:42px}.shining-empty b{color:#43594e}.shining-empty p{margin:0;color:#819088;font-size:11px}
@media(max-width:1100px){.shining-shell{grid-template-columns:1fr;max-width:760px}.shining-rank-card{grid-template-columns:48px 90px minmax(0,1fr) 100px}.rank-character.shining-character{width:90px;height:78px}}
@media(max-width:760px){.app-topbar{height:auto;min-height:72px;flex-wrap:wrap;gap:8px;padding-top:10px;padding-bottom:10px}.main-nav{order:3;width:100%;margin:0;overflow-x:auto}.main-nav a{flex:0 0 auto;white-space:nowrap}.shining-hero{padding:48px 20px 34px}.shining-shell{padding:0 12px 60px}.shining-board>header{padding:17px}.shining-ranking-list{padding:9px}.shining-rank-card{grid-template-columns:38px 68px minmax(0,1fr);gap:8px;padding:9px}.rank-character.shining-character{width:68px;height:61px}.shining-score{grid-column:3;grid-row:2;display:flex;align-items:baseline;justify-content:flex-end;gap:5px}.shining-score strong{font-size:19px}.shining-books span{max-width:110px}}

/* 학생이 직접 고르는 내 캐릭터와 성장 모습 */
.inspiration-dashboard:has(.avatar-preferences){grid-template-columns:350px minmax(0,1fr) 150px;max-width:1280px;align-items:start;overflow:visible}.reader-avatar-column{display:grid;justify-items:center;gap:14px;min-width:0}.avatar-showcase{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px}.avatar-showcase figure{display:grid;justify-items:center;gap:8px;min-width:0;margin:0}.avatar-showcase .rank-character{width:155px;height:205px;margin:0;transform:none}.avatar-showcase figcaption{border-radius:99px;background:#294e3e;padding:5px 10px;color:#fff;font-size:10px;font-weight:900}.avatar-preferences{display:grid;width:100%;gap:10px}.avatar-preferences fieldset{min-width:0;margin:0;border:1px solid #d7d4bf;border-radius:13px;background:rgba(255,255,255,.88);padding:9px}.avatar-preferences legend{padding:0 4px;color:#344e42;font-size:10px;font-weight:900}.avatar-choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.avatar-choice-row label,.book-avatar-preferences label{cursor:pointer}.avatar-choice-row input,.book-avatar-preferences input[type=radio]{position:absolute;opacity:0;pointer-events:none}.avatar-choice-row span,.book-avatar-preferences label span{display:grid;min-height:34px;place-items:center;border:1px solid #cfd9d2;border-radius:9px;background:#f8faf8;padding:5px;color:#65736b;font-size:8px;font-weight:850;line-height:1.3;text-align:center;transition:.15s}.avatar-choice-row input:checked+span,.book-avatar-preferences input:checked+span{border-color:#2d654d;background:#e5f2e9;color:#24503d;box-shadow:inset 0 0 0 1px #2d654d}.growth-choice-row label:last-child span{border-color:#e3c4ab;background:#fff7ef}.growth-choice-row label:last-child input:checked+span{border-color:#b3512c;background:#ffe6d6;color:#8e3519;box-shadow:inset 0 0 0 1px #b3512c}.avatar-save-message{display:block;min-height:13px;color:#6f7d75;font-size:8px;font-weight:800;text-align:center}.rank-character.growth-style-muscle{position:relative;background-image:url('weavus-reader-muscle-ranks.png');background-position:calc(var(--rank-index) * 25%) var(--muscle-y,54%);background-size:500% auto;background-repeat:no-repeat}.rank-character.growth-style-muscle[data-rank-index="0"]{--muscle-y:70%}.rank-character.growth-style-muscle[data-rank-index="1"]{--muscle-y:60%}.rank-character.growth-style-muscle[data-rank-index="2"]{--muscle-y:52%}.rank-character.growth-style-muscle[data-rank-index="3"]{--muscle-y:41%}.rank-character.growth-style-muscle[data-rank-index="4"]{--muscle-y:28%}.main-growth-preview.growth-style-muscle[data-rank-index="0"]{--muscle-y:84%}.main-growth-preview.growth-style-muscle[data-rank-index="1"]{--muscle-y:72%}.main-growth-preview.growth-style-muscle[data-rank-index="2"]{--muscle-y:60%}.main-growth-preview.growth-style-muscle[data-rank-index="3"]{--muscle-y:40%}.main-growth-preview.growth-style-muscle[data-rank-index="4"]{--muscle-y:18%}.rank-character.growth-style-muscle:before{content:attr(data-stars);position:absolute;z-index:2;left:50%;bottom:2px;max-width:calc(100% - 14px);transform:translateX(-50%);border:1px solid rgba(255,226,105,.9);border-radius:99px;background:rgba(34,48,41,.78);padding:4px 8px;color:#ffd84f;font-size:15px;font-weight:950;letter-spacing:2px;line-height:1;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.55);box-shadow:0 3px 10px rgba(0,0,0,.22);white-space:nowrap;backdrop-filter:blur(4px)}.book-avatar-preferences{display:grid;gap:7px;border:1px solid #d9ddd8;border-radius:13px;background:rgba(255,255,255,.82);padding:10px}.book-avatar-preferences>strong{color:#42574d;font-size:9px;text-align:center}.book-avatar-preferences>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.book-avatar-preferences label span{min-height:31px;font-size:9px}.book-avatar-preferences .avatar-save-message{margin-bottom:-4px}
.avatar-showcase .rank-character:not(.personal-reader-photo):not(.growth-style-muscle){background-position:calc(var(--rank-index) * 25%) 65%}.avatar-showcase .rank-character.personal-reader-photo{background-position:center,center,calc(var(--rank-index) * 25%) 65%}
.avatar-showcase .rank-character{position:relative}.avatar-showcase .rank-character:before{content:attr(data-stars);position:absolute;z-index:2;left:50%;top:auto;bottom:8px;max-width:calc(100% - 14px);transform:translateX(-50%);border:1px solid rgba(255,226,105,.9);border-radius:99px;background:rgba(34,48,41,.78);padding:4px 8px;color:#ffd84f;font-size:clamp(11px,1.5vw,18px);font-weight:950;letter-spacing:2px;line-height:1;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.55);box-shadow:0 3px 10px rgba(0,0,0,.22);white-space:nowrap;backdrop-filter:blur(4px)}
@media(max-width:1020px){.inspiration-dashboard:has(.avatar-preferences){grid-template-columns:320px minmax(0,1fr)}.inspiration-dashboard:has(.avatar-preferences)>aside{grid-column:1/-1}.avatar-showcase .rank-character{width:140px;height:190px}.reading-status-panel .book-avatar-preferences{grid-column:2/4}}
@media(max-width:680px){.reading-status-panel .book-avatar-preferences{grid-column:1/-1}}
@media(max-width:560px){.inspiration-dashboard:has(.avatar-preferences){grid-template-columns:1fr}.reader-avatar-column{width:100%}.avatar-preferences{max-width:340px}.avatar-showcase{max-width:320px}.avatar-showcase .rank-character{width:135px;height:180px}}

/* AI-selected live classroom question activity */
.question-activity-hero{padding-bottom:28px}.question-activity-shell{max-width:1440px}.question-activity-controls{margin-bottom:18px}.question-filter-form{display:grid;grid-template-columns:1.3fr .6fr .6fr .8fr .8fr auto auto auto;gap:10px;align-items:end}.question-filter-form label{display:grid;gap:6px}.question-filter-form label>span{color:#65756c;font-size:11px;font-weight:900}.question-filter-form :is(select,input){width:100%;min-height:44px;border:1px solid #cbd8cf;border-radius:10px;background:#fff;padding:10px 11px;color:var(--ink)}.question-filter-form button{min-height:44px;white-space:nowrap}.ai-question-pick-button{background:linear-gradient(120deg,#285a47,#3b7d61)}
.chapter-multiselect-field{margin:0 0 14px;border:0;padding:0}.chapter-multiselect-field legend{padding:0 0 6px;color:#65756c;font-size:11px;font-weight:900}.chapter-multiselect-field[disabled] .chapter-multiselect{opacity:.6}
.chapter-multiselect{display:flex;flex-wrap:wrap;gap:8px;max-height:150px;overflow:auto;border:1px solid #cbd8cf;border-radius:10px;background:#fff;padding:10px}.chapter-multiselect label{display:flex!important;align-items:center;gap:6px;border:1px solid #c9d6cf;border-radius:99px;background:#f7faf8;padding:7px 12px;color:#3b5c4c;font-size:12px;font-weight:800;cursor:pointer}.chapter-multiselect label:has(input:checked){border-color:#286047;background:#e6f1e9;color:#1c4735}.chapter-multiselect input{width:16px;height:16px;margin:0}.question-criteria-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}.question-criteria-strip>span{display:grid;gap:4px;border:1px solid #d5e0d8;border-radius:11px;background:#f7faf8;padding:11px}.question-criteria-strip b{color:#345747;font-size:11px}.question-criteria-strip small{color:#748279;font-size:9px;line-height:1.55}.question-activity-message{min-height:20px;margin:12px 0 0;color:#327052;font-size:12px;font-weight:800}.question-activity-message.error{color:#a3483d}.question-candidate-board{background:#f2f5f1}.question-board-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.question-board-heading h2{font:750 clamp(25px,3vw,38px) Georgia,"Noto Serif KR",serif;margin:4px 0}.question-board-heading>div>p:last-child{margin:0;color:#6d7c73;font-size:13px}.question-candidate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.question-candidate-grid>.empty-mini{grid-column:1/-1}.question-candidate-card{position:relative;min-height:310px;overflow:hidden;border:2px solid #c8d7cd;border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(33,61,47,.08)}.question-candidate-card.criterion-funny{border-color:#e3bb56}.question-candidate-card.criterion-discussion{border-color:#78a9ce}.question-candidate-card.criterion-popular{border-color:#d08f75}.question-candidate-card.criterion-deep{border-color:#9984bd}.question-candidate-card.selected{border-width:4px;border-color:#235b43;box-shadow:0 0 0 5px #f5d866,0 18px 36px rgba(25,70,50,.2)}.question-candidate-card>header{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e3e9e4;background:linear-gradient(135deg,#f9fbf9,#edf4ef);padding:17px 20px}.question-candidate-card>header>div{min-width:0}.criterion-number{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:var(--forest);color:#fff;font:900 18px Georgia,serif}.question-candidate-card header small{display:block;color:#819087;font-size:8px;font-weight:950;letter-spacing:.13em}.question-candidate-card h3{margin:2px 0 0;color:#294d3e;font-size:clamp(16px,1.8vw,22px)}.selected-question-badge{margin-left:auto;border-radius:99px;background:#ffe06a;padding:7px 10px;color:#5b4810;font-size:11px;white-space:nowrap}.criterion-description{min-height:54px;margin:0;border-bottom:1px dashed #dbe3dd;padding:13px 20px;color:#68786f;font-size:12px;line-height:1.65}.question-candidate-closed{display:grid;place-items:center;gap:10px;padding:27px 20px;text-align:center}.question-candidate-closed>span{display:grid;place-items:center;width:60px;height:60px;border:2px dashed #8fac9a;border-radius:50%;background:#eef5f0;color:#4d765f;font:800 31px Georgia,serif}.question-candidate-closed p{margin:0;color:#7c8982;font-size:12px}.question-candidate-content{display:grid;gap:14px;padding:20px}.question-candidate-content blockquote{margin:0;color:#243e33;font:750 clamp(22px,2.5vw,34px)/1.5 Georgia,"Noto Serif KR",serif;letter-spacing:-.025em}.question-author{display:flex;align-items:center;gap:9px;margin:0}.question-author span{color:#7b8981;font-size:11px}.question-author b{border-radius:99px;background:#e6f1e9;padding:6px 10px;color:#295942;font-size:15px}.question-selection-reason{border-left:4px solid #e2bd55;border-radius:0 10px 10px 0;background:#fff9e5;padding:10px 12px}.question-selection-reason b{color:#75601d;font-size:10px}.question-selection-reason p{margin:4px 0 0;color:#5f5b49;font-size:11px;line-height:1.65}.question-candidate-content>button{justify-self:stretch;min-height:45px}.live-answer-board{margin-top:28px;border-top:5px solid #275943;border-radius:20px;background:#eaf1ec;padding:22px}.live-answer-board>header{display:flex;align-items:center;justify-content:space-between;gap:15px}.live-answer-board>header h2{margin:3px 0;font:750 clamp(28px,4vw,48px) Georgia,"Noto Serif KR",serif}.live-answer-board>header>strong{border-radius:99px;background:#275943;padding:9px 14px;color:#fff;font-size:16px}.live-selected-question{margin:17px 0 20px;border-radius:18px;background:linear-gradient(120deg,#244f3d,#34745a);padding:22px 26px;color:#fff}.live-selected-question>span{color:#ffe178;font-size:12px;font-weight:900}.live-selected-question h3{margin:8px 0;font:800 clamp(28px,4.1vw,52px)/1.35 Georgia,"Noto Serif KR",serif;letter-spacing:-.03em}.live-selected-question p{margin:0;color:#d9e8df;font-size:18px}.live-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.live-answer-card{overflow:hidden;border:1px solid #c9d8ce;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(35,62,49,.08)}.live-answer-card>header{display:flex;align-items:center;gap:10px;background:#f5f8f5;padding:12px 16px}.live-answer-number{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#ffdc62;color:#53430d;font-weight:950}.live-answer-card header b{font-size:clamp(19px,2vw,25px)}.live-answer-card>p{margin:0;padding:17px 19px;white-space:pre-wrap;color:#30443a;font-size:clamp(20px,2.25vw,30px);line-height:1.65}.live-answer-empty{grid-column:1/-1;border:2px dashed #afc1b5;border-radius:15px;background:#f8faf8;padding:36px;text-align:center;color:#718078;font-size:18px}.question-candidate-board:fullscreen{overflow:auto;background:#edf2ee;padding:28px}.question-candidate-board:fullscreen .question-board-heading h2{font-size:42px}.question-candidate-board:fullscreen .question-candidate-content blockquote{font-size:clamp(28px,3vw,46px)}

.question-activity-entry{width:max-content;max-width:100%;margin-top:14px;border:2px solid #ffe27a;border-radius:12px;background:#ffda58;padding:11px 16px;color:#3e3a22;font-size:14px;font-weight:950;box-shadow:0 7px 0 rgba(20,49,37,.28);cursor:pointer}.question-activity-entry:hover{transform:translateY(-1px);background:#ffe475}.question-activity-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;background:rgba(17,34,27,.78);padding:24px}.question-activity-modal{display:flex;flex-direction:column;width:min(900px,100%);max-height:calc(100vh - 48px);overflow:hidden;border-radius:22px;background:#f4f6f2;box-shadow:0 28px 90px rgba(0,0,0,.4)}.question-activity-modal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;background:linear-gradient(120deg,#224e3c,#37775c);padding:24px 28px;color:#fff}.question-activity-modal-top h2{margin:3px 0;font:750 30px Georgia,"Noto Serif KR",serif}.question-activity-modal-top>div>p:last-child{margin:6px 0 0;color:#d7e7dd;font-size:12px}.question-activity-modal-close{border:1px solid rgba(255,255,255,.4);border-radius:99px;background:rgba(255,255,255,.12);padding:8px 12px;color:#fff}.question-activity-modal-body{overflow:auto;padding:24px}.question-activity-loading,.question-activity-empty{display:grid;place-items:center;gap:8px;min-height:290px;text-align:center;color:#738078}.question-activity-empty>span{font-size:45px}.question-activity-empty h3{margin:0;color:#3f584c;font-size:24px}.question-activity-empty p{margin:0}.question-activity-empty.error{color:#9a483e}.student-selected-question{border:2px solid #e2bd55;border-radius:18px;background:linear-gradient(135deg,#fff9df,#fff);padding:22px}.student-selected-question>span{color:#8b6810;font-size:11px;font-weight:950}.student-selected-question h3{margin:9px 0;color:#2d473a;font:780 clamp(25px,4vw,40px)/1.45 Georgia,"Noto Serif KR",serif}.student-selected-question p{margin:0;color:#68776f;font-size:13px}.question-activity-answer-form{display:grid;gap:11px;margin-top:18px}.question-activity-answer-form label{display:grid;gap:7px}.question-activity-answer-form label>b{font-size:16px}.question-activity-answer-form label>small{color:#78867e;font-size:11px}.question-activity-answer-form textarea{width:100%;border:2px solid #bfd0c4;border-radius:14px;background:#fff;padding:16px;color:#2f4138;font:16px/1.7 inherit;resize:vertical}.question-answer-counter{justify-self:end;color:#829088;font-size:10px}.question-activity-answer-form .form-message{min-height:20px;margin:0;color:#337053;font-size:12px;font-weight:800}
@media(max-width:1100px){.question-filter-form{grid-template-columns:1fr 1fr 1fr 1fr}.question-filter-form button{grid-column:span 2}.question-criteria-strip{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.question-filter-form,.question-criteria-strip,.question-candidate-grid,.live-answer-grid{grid-template-columns:1fr}.question-filter-form button{grid-column:auto}.question-board-heading,.live-answer-board>header{align-items:flex-start;flex-direction:column}.question-candidate-card{min-height:0}.question-candidate-content blockquote{font-size:23px}.live-answer-board{padding:14px}.live-selected-question{padding:18px}.live-selected-question h3{font-size:28px}.live-answer-card>p{font-size:20px}.question-activity-overlay{padding:0}.question-activity-modal{width:100%;height:100vh;max-height:none;border-radius:0}.question-activity-modal-top{padding:19px}.question-activity-modal-top h2{font-size:24px}.question-activity-modal-body{padding:14px}}

/* Bulk fact-check question importer */
.bulk-quiz-editor{margin:15px 0 4px;border:2px solid #d7b54e;background:linear-gradient(145deg,#fff9df,#fffdf6);padding:0}.bulk-quiz-editor>summary{padding:13px 15px;color:#66500d;font-size:13px}.bulk-quiz-editor[open]>summary{border-bottom:1px solid #eadba8;background:#fff5c9}.bulk-quiz-intro{margin:13px 15px 0;color:#71694e;font-size:11px;line-height:1.6}.bulk-quiz-form{display:grid!important;grid-template-columns:180px 1fr;gap:12px!important;margin:0!important;padding:14px 15px 16px}.bulk-quiz-form>label{display:grid;align-content:start;gap:7px}.bulk-quiz-form label>span{color:#5b604f;font-size:11px;font-weight:900}.bulk-quiz-form :is(select,textarea){width:100%;border:1px solid #d3c58d;border-radius:10px;background:#fff;padding:10px!important}.bulk-quiz-form textarea{min-height:245px;font:13px/1.7 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;resize:vertical}.bulk-quiz-detected{justify-self:end;color:#7a6a2d;font-size:10px;font-weight:800}.bulk-quiz-guide{grid-column:1/-1;display:grid;gap:5px;border:1px dashed #d1bd73;border-radius:10px;background:#fffdf2;padding:10px 12px}.bulk-quiz-guide b{color:#6e5811;font-size:10px}.bulk-quiz-guide code{white-space:normal;color:#4c5147;font-size:11px}.bulk-quiz-guide small{color:#7c7968;font-size:9px;line-height:1.55}.bulk-quiz-form>.form-end{grid-column:1/-1}.bulk-quiz-form .form-message{max-width:70%;color:#8a3e32;font-size:11px;line-height:1.5}
@media(max-width:700px){.bulk-quiz-form{grid-template-columns:1fr}.bulk-quiz-guide,.bulk-quiz-form>.form-end{grid-column:auto}.bulk-quiz-form .form-message{max-width:none}}
.bulk-quiz-form.mixed-quiz-import{grid-template-columns:1fr}.mixed-quiz-import .bulk-quiz-text,.mixed-quiz-import .bulk-quiz-guide,.mixed-quiz-import>.form-end{grid-column:1}.vocabulary-quiz-group{margin-top:28px;border-top:2px solid #d7b54e;padding-top:24px}.vocabulary-heading>span{color:#7359a4}.vocabulary-quiz-item>blockquote{margin:0 0 12px;border-left:4px solid #8d72b4;border-radius:0 10px 10px 0;background:#f6f1fc;padding:12px 14px;color:#4e4658;font-size:13px;line-height:1.75}.vocabulary-quiz-item>blockquote strong{border-radius:4px;background:#ffe78a;padding:1px 3px;color:#392e14}.vocabulary-answer-label{display:grid;gap:6px}.vocabulary-answer-label>span{color:#6b5b7f;font-size:11px;font-weight:850}.vocabulary-answer-label textarea{width:100%;border:1px solid #cbbce0;border-radius:10px;background:#fff;padding:11px 12px;resize:vertical}.vocabulary-result p{line-height:1.65}.vocabulary-result p b{margin-right:5px}.vocabulary-result.correct{background:#eef7ef;color:#285c3d}.vocabulary-result.wrong{background:#fff8e5;color:#765b15}

/* Larger AI selection reasons for classroom and TV viewing */
.question-selection-reason b{font-size:16px}.question-selection-reason p{margin-top:6px;font-size:22px;line-height:1.65}.question-candidate-board:fullscreen .question-selection-reason b{font-size:18px}.question-candidate-board:fullscreen .question-selection-reason p{font-size:26px}

/* Daily Instagram card builder */
.instagram-builder-shell{max-width:1480px}.instagram-builder-controls{margin-bottom:20px}.instagram-builder-form{display:grid;grid-template-columns:1fr 1.4fr 1.25fr auto;gap:12px;align-items:end}.instagram-builder-form label{display:grid;gap:7px}.instagram-builder-form label>span{color:#617168;font-size:11px;font-weight:900}.instagram-builder-form :is(input,select){width:100%;min-height:46px;border:1px solid #cbd8cf;border-radius:11px;background:#fff;padding:10px 12px;color:var(--ink)}.instagram-builder-form button{min-height:46px;white-space:nowrap}.instagram-privacy-note{display:flex;align-items:flex-start;gap:12px;margin-top:16px;border:1px solid #dfcf8a;border-radius:12px;background:#fff9df;padding:12px 14px}.instagram-privacy-note b{flex:0 0 auto;color:#755d12;font-size:11px}.instagram-privacy-note p{margin:0;color:#6c6756;font-size:11px;line-height:1.6}.instagram-result-panel{background:#edf2ee}.instagram-result-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.instagram-result-heading h2{margin:4px 0;font:750 clamp(26px,3vw,38px) Georgia,"Noto Serif KR",serif}.instagram-result-heading p:last-child{margin:0;color:#68776f;font-size:12px}.instagram-slide-grid{display:grid;gap:22px}.instagram-slide-editor{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:22px;border:1px solid #cbd8cf;border-radius:20px;background:#fff;padding:18px;box-shadow:0 12px 30px rgba(28,59,44,.08)}.instagram-card-canvas-wrap{align-self:start;overflow:hidden;border-radius:14px;background:#173f31;box-shadow:0 12px 28px rgba(26,50,39,.2)}.instagram-card-canvas-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:4/5}.instagram-slide-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}.instagram-slide-field{display:grid;gap:6px}.instagram-slide-field:nth-child(3),.instagram-slide-field:nth-child(5),.instagram-ai-reason,.instagram-slide-fields>button{grid-column:1/-1}.instagram-slide-field>span{color:#64746b;font-size:10px;font-weight:900}.instagram-slide-field :is(input,textarea){width:100%;border:1px solid #cad7ce;border-radius:10px;background:#fbfdfb;padding:10px 11px;color:#2f4138;font:13px/1.6 inherit;resize:vertical}.instagram-ai-reason{border-left:4px solid #e0bd52;background:#fff9e4;padding:9px 11px;color:#706240;font-size:11px;line-height:1.6}.instagram-caption-panel{display:grid;grid-template-columns:220px 1fr auto;gap:14px;align-items:start;margin-top:24px;border-radius:18px;background:#fff;padding:20px}.instagram-caption-panel h3{margin:4px 0;font-size:20px}.instagram-caption-panel textarea{width:100%;border:1px solid #cbd8cf;border-radius:12px;padding:13px;font:13px/1.7 inherit;resize:vertical}.instagram-caption-panel button{align-self:end}.instagram-result-panel[hidden]{display:none}
@media(max-width:1050px){.instagram-builder-form{grid-template-columns:1fr 1fr}.instagram-builder-form button{grid-column:1/-1}.instagram-caption-panel{grid-template-columns:1fr}.instagram-caption-panel button{justify-self:start}.instagram-slide-editor{grid-template-columns:300px 1fr}}
@media(max-width:720px){.instagram-builder-form,.instagram-slide-editor,.instagram-slide-fields{grid-template-columns:1fr}.instagram-slide-field:nth-child(3),.instagram-slide-field:nth-child(5),.instagram-ai-reason,.instagram-slide-fields>button{grid-column:auto}.instagram-card-canvas-wrap{width:min(100%,360px);justify-self:center}.instagram-result-heading{align-items:flex-start;flex-direction:column}}

/* ChatGPT image prompt builder */
.instagram-prompt-form{display:grid;grid-template-columns:.9fr 1.25fr 1.2fr 1.25fr auto;gap:10px;align-items:end}.instagram-prompt-form label{display:grid;gap:7px}.instagram-prompt-form label>span,.instagram-prompt-editor label>span{color:#617168;font-size:11px;font-weight:900}.instagram-prompt-form :is(input,select){width:100%;min-height:46px;border:1px solid #cbd8cf;border-radius:11px;background:#fff;padding:10px 12px;color:var(--ink)}.instagram-prompt-form button{min-height:46px;white-space:nowrap}.instagram-prompt-result{background:#edf2ee}.instagram-prompt-result[hidden]{display:none}.instagram-prompt-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:20px}.instagram-prompt-editor{display:grid;gap:12px}.instagram-prompt-editor label{display:grid;gap:7px}.instagram-prompt-editor textarea{width:100%;min-height:720px;border:2px solid #9db5a6;border-radius:16px;background:#fff;padding:20px;color:#263d32;font:14px/1.75 ui-monospace,SFMono-Regular,Consolas,"Malgun Gothic",monospace;resize:vertical}.instagram-prompt-editor button{justify-self:start}.instagram-prompt-insight{align-self:start;position:sticky;top:16px;border:1px solid #d6c576;border-radius:18px;background:linear-gradient(145deg,#fff9de,#fff);padding:20px}.instagram-prompt-insight h3{margin:6px 0 10px;color:#244c3a;font:750 clamp(24px,3vw,34px)/1.35 Georgia,"Noto Serif KR",serif}.instagram-prompt-insight>p:not(.eyebrow){margin:0;color:#5f6f66;font-size:14px;line-height:1.7}.instagram-prompt-insight dl{display:grid;gap:12px;margin:18px 0}.instagram-prompt-insight dl>div{border-top:1px solid #e7dfbd;padding-top:10px}.instagram-prompt-insight dt{color:#8a7121;font-size:10px;font-weight:900}.instagram-prompt-insight dd{margin:5px 0 0;color:#3d5047;font-size:12px;line-height:1.65}.instagram-prompt-insight details{border-top:1px solid #e7dfbd;padding-top:12px}.instagram-prompt-insight summary{cursor:pointer;color:#496559;font-size:11px;font-weight:900}.instagram-prompt-insight details small{display:block;margin-top:10px;color:#7a877f;font-size:10px}.instagram-prompt-insight details p{max-height:260px;overflow:auto;white-space:pre-wrap;color:#44564d;font-size:12px;line-height:1.7}.instagram-prompt-result .instagram-caption-panel{margin-top:20px}
.instagram-image-prompt-list{display:grid;gap:14px;margin-top:8px}.instagram-image-prompt-list article{display:grid;gap:9px;border:1px solid #cbd8cf;border-radius:15px;background:#f8fbf9;padding:14px}.instagram-image-prompt-list h4{margin:0;color:#315342;font-size:16px}.instagram-image-prompt-list textarea{width:100%;min-height:260px;border:1px solid #b9cbbf;border-radius:11px;background:#fff;padding:14px;color:#34493e;font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,"Malgun Gothic",monospace;resize:vertical}.instagram-image-prompt-list button{justify-self:start}.instagram-source-list{display:grid;gap:12px;margin-top:12px}.instagram-source-list article{border:1px solid #e4d9a9;border-radius:12px;background:#fffdf4;padding:12px}.instagram-source-list b{display:block;color:#6e5811;font-size:12px}.instagram-source-list blockquote{margin:8px 0;white-space:pre-wrap;color:#2f4c3e;font:700 15px/1.55 Georgia,"Noto Serif KR",serif}.instagram-source-list .instagram-source-question{border-left:4px solid #d7ad32;background:#fff8d9;padding:9px 11px}.instagram-source-list .instagram-source-answer{border-left:4px solid #4e8b6d;background:#edf7f1;padding:9px 11px}.instagram-source-list small{display:block;color:#7a877f;font-size:9px}.instagram-source-list p{max-height:180px!important;margin:7px 0 0;color:#526259!important;font-size:11px!important;line-height:1.65!important}
@media(max-width:1200px){.instagram-prompt-form{grid-template-columns:1fr 1fr}.instagram-prompt-form button{grid-column:1/-1}.instagram-prompt-layout{grid-template-columns:1fr}.instagram-prompt-insight{position:static}.instagram-prompt-editor textarea{min-height:560px}}
@media(max-width:700px){.instagram-prompt-form{grid-template-columns:1fr}.instagram-prompt-form button{grid-column:auto}.instagram-prompt-editor textarea{min-height:480px;padding:14px;font-size:12px}}

/* Instagram story prompt: selectable image count */
.instagram-prompt-form{grid-template-columns:.9fr 1.2fr .65fr 1.15fr 1.2fr auto}
@media(max-width:1200px){.instagram-prompt-form{grid-template-columns:1fr 1fr}.instagram-prompt-form button{grid-column:1/-1}}
@media(max-width:700px){.instagram-prompt-form{grid-template-columns:1fr}.instagram-prompt-form button{grid-column:auto}}

/* Google Sheets reading-range importer */
.bulk-range-editor{margin:0 0 18px;border:2px solid #82ad94;border-radius:13px;background:linear-gradient(145deg,#f0f7f2,#fffdf7);overflow:hidden}.bulk-range-editor>summary{cursor:pointer;padding:14px 16px;color:var(--forest);font-size:13px;font-weight:900}.bulk-range-editor[open]>summary{border-bottom:1px solid #c7d9cd;background:#e8f3ec}.bulk-range-intro{margin:14px 16px 10px;color:#617168;font-size:11px;line-height:1.65}.bulk-range-columns{display:grid;grid-template-columns:1.6fr .7fr .7fr 1.1fr 1.5fr;gap:1px;margin:0 16px;background:#cbd8cf;border:1px solid #cbd8cf;border-radius:9px;overflow:hidden}.bulk-range-columns>span{display:flex;flex-direction:column;justify-content:center;min-width:0;background:#f7faf8;padding:9px 8px;color:#3d5549;font-size:10px;font-weight:900}.bulk-range-columns small{margin-top:3px;color:#809087;font-size:8px;font-weight:700}.bulk-range-form{display:grid;gap:11px;padding:14px 16px 17px}.bulk-range-text{display:grid;gap:7px}.bulk-range-text>span{color:#4c6257;font-size:11px;font-weight:900}.bulk-range-text textarea{width:100%;min-height:220px;border:1px solid #aebfb4;border-radius:10px;background:#fff;padding:12px;color:#33483d;font:13px/1.7 ui-monospace,SFMono-Regular,Consolas,"Malgun Gothic",monospace;resize:vertical;tab-size:4}.bulk-range-detected{justify-self:end;color:#337052;font-size:10px;font-weight:900}.bulk-range-detected.error{color:#a3483b}.bulk-range-guide{display:grid;gap:5px;border:1px dashed #9eb9a8;border-radius:10px;background:#f9fcfa;padding:10px 12px}.bulk-range-guide b{color:#356149;font-size:10px}.bulk-range-guide code{white-space:normal;color:#44564d;font-size:11px}.bulk-range-guide small{color:#76837c;font-size:9px;line-height:1.6}.bulk-range-preview{display:grid;gap:4px}.bulk-range-preview:empty{display:none}.bulk-range-preview-row{display:grid;grid-template-columns:1.6fr .8fr .9fr 1.5fr;gap:8px;align-items:center;border:1px solid #d9e3dc;border-radius:8px;background:#fff;padding:8px 10px;color:#46584f;font-size:10px}.bulk-range-preview-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulk-range-preview-row span:nth-child(3){justify-self:start;border-radius:99px;background:#edf1ee;padding:3px 7px}.bulk-range-preview-row span.ending{background:#fff0bd;color:#705510;font-weight:900}.bulk-range-preview-row small{overflow:hidden;color:#7b8780;text-overflow:ellipsis;white-space:nowrap}.bulk-range-preview>p{margin:3px 0 0;text-align:right;color:#728078;font-size:9px}.bulk-range-form .form-message{max-width:72%;white-space:pre-line;color:#914438;font-size:10px;line-height:1.55}
@media(max-width:700px){.bulk-range-columns{grid-template-columns:1.5fr .65fr .65fr 1fr 1.4fr;overflow-x:auto}.bulk-range-columns>span{min-width:82px}.bulk-range-preview-row{grid-template-columns:1fr 1fr}.bulk-range-preview-row small{grid-column:1/-1}.bulk-range-form .form-message{max-width:none}}

/* Student character identity across live question and answer screens */
.student-character-avatar{display:block;width:44px;height:44px;flex:0 0 44px;border:2px solid rgba(255,255,255,.92);border-radius:14px;background:#e7efe9;color:#285a47;object-fit:cover;box-shadow:0 3px 10px rgba(23,49,38,.18)}
.student-character-avatar.avatar-initial{display:grid;place-items:center;font-size:17px;font-weight:950}
.question-author .student-character-avatar{width:48px;height:48px;flex-basis:48px}
.live-selected-author,.student-selected-question-author,.question-answer-student,.together-question-author{display:flex;min-width:0;align-items:center;gap:10px}
.live-selected-author p,.student-selected-question-author p{margin:0!important}
.live-answer-card .student-character-avatar{width:46px;height:46px;flex-basis:46px}
.question-answer-student{border:1px solid #d8e4dc;border-radius:13px;background:#f7fbf8;padding:10px 12px;color:#345747}
.question-answer-student b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.together-question-author{gap:7px}
.together-question-author .student-character-avatar{width:36px;height:36px;flex-basis:36px;border-radius:10px}
.together-live-question footer .together-question-author b{overflow:hidden;padding:4px 7px;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){.student-character-avatar{width:38px;height:38px;flex-basis:38px}.together-question-author .student-character-avatar{width:32px;height:32px;flex-basis:32px}.together-live-question footer{align-items:flex-end}.together-question-author{min-width:0}}

/* The muscle artwork is a five-stage sprite: keep each face centered at about one third of the portrait. */
.rank-character.growth-style-muscle{background-position:var(--muscle-x,50%) var(--muscle-y,50%)}
.rank-character.growth-style-muscle[data-rank-index="0"]{--muscle-x:-1.5%;--muscle-y:72%}
.rank-character.growth-style-muscle[data-rank-index="1"]{--muscle-x:18.5%;--muscle-y:49%}
.rank-character.growth-style-muscle[data-rank-index="2"]{--muscle-x:39.3%;--muscle-y:37%}
.rank-character.growth-style-muscle[data-rank-index="3"]{--muscle-x:63%;--muscle-y:31%}
.rank-character.growth-style-muscle[data-rank-index="4"]{--muscle-x:92.8%;--muscle-y:22%}
.main-growth-preview.growth-style-muscle[data-rank-index="0"]{--muscle-y:77%}
.main-growth-preview.growth-style-muscle[data-rank-index="1"]{--muscle-y:49%}
.main-growth-preview.growth-style-muscle[data-rank-index="2"]{--muscle-y:35%}
.main-growth-preview.growth-style-muscle[data-rank-index="3"]{--muscle-y:27%}
.main-growth-preview.growth-style-muscle[data-rank-index="4"]{--muscle-y:16%}
.main-growth-preview.growth-style-muscle:before{top:8px;bottom:auto}

/* A stamped completion mark follows the active reading page. */
.range-page-toolbar.is-complete .range-page-info{padding-right:68px}
.range-complete-stamp{position:absolute;z-index:2;right:76px;top:50%;display:grid;width:58px;height:50px;place-content:center;border:3px double #bd4037;border-radius:50%;background:rgba(255,249,235,.9);color:#b7352e;line-height:1;text-align:center;box-shadow:inset 0 0 0 2px rgba(189,64,55,.13),0 2px 5px rgba(97,38,31,.13);transform:translateY(-50%) rotate(-8deg);pointer-events:none}
.range-complete-stamp[hidden]{display:none}
.range-complete-stamp small{font-size:9px;font-weight:900;letter-spacing:.12em}
.range-complete-stamp b{margin-top:2px;font-size:15px;font-weight:950;letter-spacing:.08em}
.student-status-filter-submit{min-height:42px}
.student-status-table-wrap th:first-child,.student-status-table-wrap td:first-child{position:sticky;left:0}
.student-status-table-wrap th:first-child{z-index:5;background:#eef4f0;box-shadow:7px 0 12px -10px rgba(28,56,43,.8)}
.student-status-table-wrap td:first-child{z-index:3;background:#fff;box-shadow:7px 0 12px -10px rgba(28,56,43,.8)}
.student-status-table-wrap tbody tr:hover td:first-child{background:#fbfdfb}
@media(max-width:680px){.range-page-toolbar.is-complete .range-page-info{padding-right:48px}.range-complete-stamp{right:58px;width:48px;height:42px;border-width:2px}.range-complete-stamp small{font-size:7px}.range-complete-stamp b{font-size:12px}}

/* 책 전체 읽기 범위에서 현재 범위가 놓인 위치 */
.range-page-toolbar>.range-page-info{display:grid;grid-template-columns:1fr;gap:8px;text-align:left}
.range-position{display:grid;grid-template-columns:minmax(90px,1fr) auto;align-items:center;gap:12px}
.range-position-track{position:relative;height:7px;border-radius:99px;background:#d8e2dc;box-shadow:inset 0 1px 2px rgba(31,66,50,.13)}
.range-position-track:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--range-position,0%);border-radius:inherit;background:linear-gradient(90deg,#6b9e84,#2c614b)}
.range-position-track i{position:absolute;z-index:1;left:var(--range-position,0%);top:50%;width:17px;height:17px;border:3px solid #fff;border-radius:50%;background:#2c614b;box-shadow:0 1px 0 #193d2e,0 2px 7px rgba(30,65,49,.28);transform:translate(-50%,-50%);transition:left .22s ease}
.range-position-count{display:flex;align-items:baseline;gap:3px;white-space:nowrap}
.range-page-toolbar>div .range-position-count b{color:#2c614b;font-size:13px}
.range-page-toolbar>div .range-position-count small{color:#7d8982;font-size:9px;font-weight:800;letter-spacing:0}
@media(max-width:680px){.range-position{gap:8px}.range-position-track i{width:14px;height:14px;border-width:2px}.range-page-toolbar>div .range-position-count small{display:none}}

/* Enlarged student identity for classroom question and answer activities */
.together-question-author .student-character-avatar{width:72px;height:72px;flex-basis:72px;border-radius:18px}
.together-live-question footer .together-question-author b{font-size:22px}
.question-author .student-character-avatar{width:96px;height:96px;flex-basis:96px;border-radius:22px}
.question-author b{font-size:30px}
.live-selected-author .student-character-avatar,.student-selected-question-author .student-character-avatar,.question-answer-student .student-character-avatar{width:88px;height:88px;flex-basis:88px;border-radius:24px}
.live-selected-question .live-selected-author p{font-size:36px}
.student-selected-question .student-selected-question-author p{font-size:26px}
.live-answer-card .student-character-avatar{width:92px;height:92px;flex-basis:92px;border-radius:22px}
.live-answer-card header b{font-size:clamp(38px,4vw,50px)}
.question-answer-student b{font-size:32px}
@media(max-width:700px){.together-question-author .student-character-avatar{width:64px;height:64px;flex-basis:64px}.live-selected-author .student-character-avatar,.student-selected-question-author .student-character-avatar,.question-answer-student .student-character-avatar{width:76px;height:76px;flex-basis:76px}.live-selected-question .live-selected-author p{font-size:36px}.student-selected-question .student-selected-question-author p{font-size:26px}.question-answer-student b{font-size:32px}}

/* Chapter-based AI question rankings and separate answer rounds */
.question-candidate-grid{align-items:start}
.question-criterion-group{overflow:hidden;border:2px solid #c8d7cd;border-radius:21px;background:#fff;box-shadow:0 12px 30px rgba(33,61,47,.08)}
.question-criterion-group.criterion-funny{border-color:#e3bb56}.question-criterion-group.criterion-discussion{border-color:#78a9ce}.question-criterion-group.criterion-popular{border-color:#d08f75}.question-criterion-group.criterion-deep{border-color:#9984bd}.question-criterion-group.criterion-debate{border-color:#c26b8f}
.question-criterion-group>header{display:flex;align-items:center;gap:12px;border-bottom:1px solid #dce5df;background:linear-gradient(135deg,#f9fbf9,#edf4ef);padding:17px 20px}
.question-criterion-group>header>div{min-width:0}.question-criterion-group>header small{display:block;color:#819087;font-size:8px;font-weight:950;letter-spacing:.13em}.question-criterion-group>header h3{margin:2px 0;color:#294d3e;font-size:clamp(18px,2vw,25px)}.question-criterion-group>header p{margin:3px 0 0;color:#6d7c73;font-size:10px;line-height:1.5}
.question-ranked-list{display:grid;gap:12px;padding:14px}.question-ranked-candidate{display:grid;gap:12px;border:1px solid #d8e2dc;border-radius:16px;background:#fbfdfb;padding:15px}.question-ranked-candidate.selected{border:3px solid #286047;background:#f1faf4;box-shadow:0 0 0 4px #f5d866}.question-ranked-candidate.used:not(.selected){border-color:#bea8dc;background:#faf7ff}
.question-ranked-candidate>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.candidate-rank-badge{border:2px solid #9e7614;border-radius:99px;background:#ffdf68;padding:6px 11px;color:#59450d;font-size:16px}.rank-1 .candidate-rank-badge{background:#ffd33f;font-size:20px}.candidate-state{border-radius:99px;background:#edf1ee;padding:5px 8px;color:#718078;font-size:10px;font-weight:900}.candidate-state.current{background:#286047;color:#fff}.candidate-state.used{background:#eee7f8;color:#674b8d}
.question-stance-prompt{margin:0;border-left:4px solid #5f8dc4;border-radius:0 10px 10px 0;background:#eef5fb;padding:10px 12px}.question-stance-prompt b{color:#2c4f74;font-size:10px}.question-stance-prompt p{margin:4px 0 0;color:#233f5c;font-size:13px;font-weight:800;line-height:1.6}
.live-selected-question .question-stance-prompt{background:rgba(255,255,255,.14);border-left-color:#8fc4ff}.live-selected-question .question-stance-prompt b{color:#bfe0ff}.live-selected-question .question-stance-prompt p{color:#fff;font-size:17px}
.ranked-question-cover{display:grid;min-height:76px;place-items:center;margin:0;border:1px dashed #b7c8bd;border-radius:12px;background:#f2f6f3;color:#78867e;text-align:center}.question-ranked-candidate blockquote{margin:0;color:#243e33;font:750 clamp(21px,2.2vw,31px)/1.5 Georgia,"Noto Serif KR",serif;letter-spacing:-.02em}.question-ranked-candidate .question-author{margin:0}.ranked-candidate-actions{display:flex;flex-wrap:wrap;gap:8px}.ranked-candidate-actions button{flex:1 1 190px}
.question-round-tabs{display:flex;gap:8px;overflow-x:auto;margin:16px 0 12px;padding:4px 2px 10px}.question-round-tabs[hidden]{display:none}.question-round-tabs button{flex:0 0 auto;border:1px solid #8ba99a;border-radius:99px;background:#fff;padding:9px 13px;color:#3b5c4c;font-size:12px;font-weight:900}.question-round-tabs button.active{border-color:#f0cb58;background:#244f3d;color:#fff;box-shadow:0 0 0 3px #f0cb58}
.teacher-question-compose{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.5fr);gap:20px;margin-top:18px;border:2px solid #b9d0c1;border-radius:18px;background:linear-gradient(135deg,#f0f7f2,#fffdf5);padding:20px}.teacher-question-compose h3{margin:3px 0 6px;color:#274f3e;font:750 24px Georgia,"Noto Serif KR",serif}.teacher-question-compose p{margin:0;color:#65766d;font-size:12px;line-height:1.6}.teacher-question-compose>div>strong{display:block;margin-top:10px;color:#856a18;font-size:12px}.teacher-question-compose form{display:grid;gap:10px}.teacher-question-compose label{display:grid;gap:6px}.teacher-question-compose label>span{font-size:12px;font-weight:900}.teacher-question-compose textarea{width:100%;border:2px solid #bad0c1;border-radius:13px;background:#fff;padding:13px 15px;color:var(--ink);font:15px/1.65 inherit;resize:vertical}.teacher-question-compose label>small{justify-self:end;color:#7b8981;font-size:10px}.teacher-question-compose button{justify-self:end}.question-criterion-group.criterion-teacher{grid-column:1/-1;border-color:#4e896c}.question-criterion-group.criterion-teacher>header{background:linear-gradient(135deg,#e9f5ed,#fff8dc)}.question-criterion-group.criterion-teacher .criterion-number{background:#e8bd43;color:#4f3d0a}.question-criterion-group.criterion-teacher .candidate-rank-badge{border-color:#367052;background:#e3f2e8;color:#285640}.live-answer-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.live-answer-actions>strong{border-radius:99px;background:#275943;padding:9px 14px;color:#fff;font-size:16px}.live-answer-actions button{min-height:42px}.question-answer-analysis{display:grid;gap:18px;margin-top:24px;border-top:3px solid #d1dfd5;padding-top:24px}.analysis-empty{border:2px dashed #a9beb1;border-radius:16px;background:#f8fbf9;padding:28px;text-align:center;color:#64776d;font-size:14px}.analysis-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.analysis-heading h2{margin:4px 0;font:800 clamp(26px,3vw,39px) Georgia,"Noto Serif KR",serif}.analysis-heading>div>p:last-child{margin:0;color:#718178;font-size:11px}.analysis-stale{border-radius:99px;background:#fff0c0;padding:8px 12px;color:#785d0c;font-size:11px}.analysis-topic-card{overflow:hidden;border:1px solid #c8d8ce;border-radius:19px;background:#fff;box-shadow:0 10px 28px rgba(31,64,48,.08)}.analysis-topic-card>header{display:flex;align-items:center;gap:12px;background:linear-gradient(120deg,#244f3d,#37745a);padding:17px 20px;color:#fff}.analysis-topic-number{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:#ffdc62;color:#523f08;font:900 19px Georgia,serif}.analysis-topic-card>header h3{margin:0;font-size:20px}.analysis-topic-card>header p{margin:3px 0 0;color:#d6e6dc;font-size:10px}.analysis-lead,.analysis-observation,.analysis-rationale{margin:0;padding:18px 20px;color:#344b3f;font-size:15px;line-height:1.75}.analysis-landscape-groups,.analysis-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 20px 20px}.analysis-landscape-group,.analysis-type-card{border:1px solid #d8e3dc;border-radius:14px;background:#f8fbf9;padding:14px}.analysis-landscape-group>div:first-child,.analysis-type-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.analysis-landscape-group b,.analysis-type-card h4{margin:0;color:#285640;font-size:16px}.analysis-landscape-group strong,.analysis-type-card strong{border-radius:99px;background:#e4f1e8;padding:5px 9px;color:#286047;font-size:11px}.analysis-landscape-group>p,.analysis-type-card>p{margin:9px 0;color:#596c62;font-size:12px;line-height:1.6}.analysis-meter{display:block;height:8px;margin-top:10px;overflow:hidden;border-radius:99px;background:#e4ebe6}.analysis-meter>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3f8564,#e6be48)}.analysis-members{display:grid;gap:6px;margin-top:10px}.analysis-member{border-top:1px dashed #d6e1da;padding-top:7px}.analysis-member b{color:#385d4b;font-size:10px}.analysis-member p{margin:3px 0 0;color:#5d6d65;font-size:10px;line-height:1.5}.analysis-vote-graph{display:grid;gap:12px;padding:0 20px 20px}.analysis-vote-bar{display:flex;height:34px;overflow:hidden;border-radius:99px;background:#e4ebe6}.analysis-vote-fill{display:flex;align-items:center;justify-content:center;min-width:0;height:100%;color:#fff;font-weight:900;font-size:13px;transition:width .3s}.analysis-vote-fill.agree{background:linear-gradient(90deg,#2c7a52,#3f9c6c)}.analysis-vote-fill.disagree{background:linear-gradient(90deg,#b1503f,#d0715e)}.analysis-vote-fill b{white-space:nowrap}.analysis-vote-sides{display:grid;grid-template-columns:1fr 1fr;gap:12px}.analysis-vote-side{border:2px solid #d8e3dc;border-radius:14px;background:#f8fbf9;padding:14px}.analysis-vote-side.agree{border-color:#8fc4a4;background:#f2faf5}.analysis-vote-side.disagree{border-color:#e2b3a4;background:#fdf5f2}.analysis-vote-side>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.analysis-vote-side b{margin:0;color:#285640;font-size:16px}.analysis-vote-side.disagree b{color:#9a4735}.analysis-vote-side strong{border-radius:99px;background:#e4f1e8;padding:5px 9px;color:#286047;font-size:11px}.analysis-vote-side.disagree strong{background:#f6e3dd;color:#9a4735}.analysis-vote-side>p{margin:9px 0;color:#596c62;font-size:12px;line-height:1.6}
.analysis-vote-avatars{display:flex;flex-wrap:wrap;gap:9px;margin-top:11px}.analysis-vote-avatar-item{display:flex;flex-direction:column;align-items:center;gap:4px;width:64px;border:0;background:none;padding:0;color:#3c534a;font:inherit;cursor:pointer}.analysis-vote-avatar-item:hover,.analysis-vote-avatar-item:focus-visible{outline:none}.analysis-vote-avatar-item:hover .student-character-avatar,.analysis-vote-avatar-item:focus-visible .student-character-avatar{box-shadow:0 0 0 3px #f0cb58,0 3px 10px rgba(23,49,38,.18)}.analysis-vote-avatar-item .student-character-avatar{width:56px;height:56px;flex-basis:56px}.analysis-vote-avatar-item span{overflow:hidden;max-width:100%;font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.answer-popup-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:rgba(15,30,23,.72);padding:24px}
.answer-popup-card{position:relative;width:min(560px,100%);max-height:min(680px,90vh);overflow:auto;border-radius:22px;background:#fff;padding:32px;box-shadow:0 24px 60px rgba(10,25,18,.35)}
.answer-popup-close{position:absolute;top:14px;right:14px;border:1px solid #cdd9d2;border-radius:99px;background:#f4f7f5;padding:8px 13px;color:#3c534a;font-weight:800;font-size:12px;cursor:pointer}.answer-popup-close:hover{background:#e7eee9}
.answer-popup-head{display:flex;align-items:center;gap:16px;margin:0 0 20px;padding-right:70px}.answer-popup-head .student-character-avatar{width:88px;height:88px;flex-basis:88px;border-radius:22px}.answer-popup-head h2{margin:0;color:#213f31;font:800 clamp(22px,3vw,30px) Georgia,"Noto Serif KR",serif}
.answer-popup-text{margin:0;color:#2c3f36;font-size:18px;line-height:1.8;white-space:pre-wrap}
.analysis-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #e0e8e2;padding:18px 20px}.analysis-compare section{border-radius:13px;background:#f4f7f5;padding:14px}.analysis-compare b{color:#315b47;font-size:12px}.analysis-compare p{margin:6px 0 0;color:#586b61;font-size:12px;line-height:1.65}.analysis-debate-sides{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 20px 20px}.analysis-debate-sides>section{border:2px solid #8db3ce;border-radius:16px;background:#f1f8fc;padding:17px}.analysis-debate-sides>section.side-b{border-color:#dda78e;background:#fff6f1}.analysis-debate-sides small{font-weight:950;color:#507c9a}.analysis-debate-sides .side-b small{color:#a2674c}.analysis-debate-sides h4{margin:6px 0;font-size:19px}.analysis-debate-sides>section>p{color:#52665b;font-size:13px;line-height:1.65}.analysis-debate-mission{display:grid;gap:6px;border-top:1px solid #e0e8e2;background:#fffbea;padding:18px 20px}.analysis-debate-mission b{color:#7b6218;font-size:12px}.analysis-debate-mission p{margin:0 0 9px;color:#4e5044;font-size:15px;line-height:1.7}.analysis-next-question{margin:0 20px;border-left:6px solid #e5bc45;border-radius:0 14px 14px 0;background:#fff8da;padding:20px;color:#29493a;font:800 clamp(21px,2.4vw,31px)/1.55 Georgia,"Noto Serif KR",serif}.analysis-rationale{color:#68776f;font-size:12px}
.question-activity-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
@media(max-width:760px){.question-candidate-grid,.teacher-question-compose,.analysis-landscape-groups,.analysis-type-grid,.analysis-compare,.analysis-debate-sides,.analysis-vote-sides{grid-template-columns:1fr}.teacher-question-compose button{justify-self:stretch}.question-ranked-list{padding:10px}.question-ranked-candidate{padding:12px}.question-ranked-candidate blockquote{font-size:22px}.ranked-candidate-actions{display:grid}.question-round-tabs button{font-size:11px}.live-answer-actions,.analysis-heading{align-items:flex-start;flex-direction:column}.analysis-next-question{margin:0 14px}}

/* Together reading live TV board */
.together-reading-page{background:#edf3ef}.together-reading-hero{padding-bottom:28px}.together-reading-shell{max-width:1540px}.together-reading-controls{margin-bottom:18px}.together-reading-controls form{display:grid;grid-template-columns:minmax(260px,1fr) auto 1fr;gap:12px;align-items:end}.together-reading-controls label{display:grid;gap:7px}.together-reading-controls label>span{color:#62736a;font-size:11px;font-weight:900}.together-reading-controls select{width:100%;min-height:46px;border:1px solid #c7d5cc;border-radius:11px;background:#fff;padding:10px 12px;color:var(--ink)}.together-reading-controls button{min-height:46px}.together-reading-controls p{align-self:center;margin:0;color:#64756c;font-size:11px}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#35a76f;box-shadow:0 0 0 5px rgba(53,167,111,.13);animation:togetherPulse 1.8s infinite}@keyframes togetherPulse{50%{box-shadow:0 0 0 10px rgba(53,167,111,0)}}.together-live-board{overflow:hidden;border-radius:24px;background:#172d25;color:#f7fbf8;box-shadow:0 24px 70px rgba(21,48,37,.22)}.together-board-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:26px 30px;background:linear-gradient(120deg,#16392b,#245c45 65%,#235565)}.together-board-header .eyebrow{color:#f3cf66}.together-board-header h2{margin:5px 0 4px;color:#fff;font:800 clamp(30px,4vw,52px) Georgia,"Noto Serif KR",serif;letter-spacing:-.04em}.together-board-header>div>p:last-child{margin:0;color:#c7ded2;font-size:13px}.together-board-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.together-board-tools>span{color:#bfe9d2;font-size:10px;font-weight:800}.together-board-tools>span.error{color:#ffb6aa}.together-board-tools time{min-width:82px;color:#fff;font:800 20px ui-monospace,Consolas,monospace}.together-board-tools button{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.12);color:#fff}.together-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#355046}.together-stats article{display:flex;align-items:baseline;gap:7px;background:#213c32;padding:17px 22px}.together-stats span{margin-right:auto;color:#abc5b8;font-size:11px;font-weight:800}.together-stats strong{color:#ffe174;font:900 31px Georgia,serif}.together-stats small{color:#b9cdc3;font-size:11px}.together-stats .latest-time{font:900 22px system-ui,sans-serif}.together-range-progress{padding:22px 26px 20px;border-bottom:1px solid #355046}.together-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.together-section-title .eyebrow{color:#ebc95e}.together-section-title h3{margin:4px 0 0;color:#f7fbf8;font:800 clamp(20px,2.2vw,29px) Georgia,"Noto Serif KR",serif}.together-section-title>small,.together-section-title>strong{color:#9fb9ac;font-size:11px}.together-range-rail{display:flex;gap:9px;overflow-x:auto;padding:15px 2px 3px;scrollbar-color:#5a786a transparent}.together-range-step{display:grid;grid-template-columns:32px minmax(130px,1fr);grid-template-rows:auto auto;gap:2px 8px;flex:0 0 230px;border:1px solid #3b5549;border-radius:13px;background:#21362e;padding:11px 12px;color:#789084}.together-range-step>span{display:grid;place-items:center;grid-row:1/3;width:31px;height:31px;border-radius:50%;background:#334b41;color:#90a99d;font-weight:900}.together-range-step b{overflow:hidden;color:#9eb4aa;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.together-range-step small{color:#70877c;font-size:9px}.together-range-step.active{border-color:#dfbf59;background:linear-gradient(135deg,#2b5945,#274538);box-shadow:0 0 0 2px rgba(223,191,89,.1)}.together-range-step.active>span{background:#f1ce60;color:#493a0b}.together-range-step.active b{color:#fff}.together-range-step.active small{color:#c7ddcf}.together-board-layout{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(280px,.8fr);gap:1px;background:#355046}.together-question-section,.together-student-section{min-width:0;background:#172d25;padding:25px 26px 34px}.together-student-section{background:#1c342b}.together-question-ranges{display:grid;gap:19px;margin-top:18px}.together-question-range{overflow:hidden;border:1px solid #3c5a4d;border-radius:18px;background:#203a30}.together-question-range>header{display:flex;align-items:center;gap:12px;padding:14px 17px;background:linear-gradient(100deg,#294e3e,#254435)}.together-range-number{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:#f2ce5e;color:#4e3e0c;font:900 18px Georgia,serif}.together-question-range header>div{min-width:0}.together-question-range h4{overflow:hidden;margin:0;color:#fff;font-size:clamp(17px,1.8vw,24px);text-overflow:ellipsis;white-space:nowrap}.together-question-range header p{margin:3px 0 0;color:#a9c0b5;font-size:10px}.together-question-range header strong{margin-left:auto;border-radius:99px;background:#17352a;padding:7px 10px;color:#cfe2d8;font-size:10px;white-space:nowrap}.together-live-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.together-live-question{display:flex;flex-direction:column;justify-content:space-between;min-height:145px;margin:0;border:1px solid #d8e2dc;border-radius:14px;background:#fffef8;padding:16px 17px;color:#253d33;box-shadow:0 8px 22px rgba(0,0,0,.12)}.together-live-question>p{margin:0;font:750 clamp(17px,1.7vw,24px)/1.5 Georgia,"Noto Serif KR",serif;word-break:keep-all}.together-live-question footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;border-top:1px dashed #d9dfdb;padding-top:10px}.together-live-question footer b{border-radius:99px;background:#e5f1e9;padding:5px 9px;color:#285d45;font-size:11px}.together-live-question footer time{color:#819087;font-size:9px}.together-student-list{display:grid;gap:8px;margin-top:18px}.together-student-progress-card{border:1px solid #3c5b4e;border-radius:13px;background:#233e33;padding:12px 13px}.together-student-progress-card header{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px}.together-student-progress-card header span{color:#e8c75e;font:800 10px ui-monospace,monospace}.together-student-progress-card header b{font-size:15px}.together-student-progress-card header time{color:#9db5a9;font-size:9px}.together-student-progress-card p{overflow:hidden;margin:9px 0 4px;color:#dceae3;font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.together-student-progress-card small{color:#8da79a;font-size:9px}.together-empty{grid-column:1/-1;border:1px dashed #49665a;border-radius:14px;padding:27px;text-align:center;color:#9db2a8;font-size:12px}.together-question-empty{display:grid;place-items:center;gap:8px;padding:55px 25px}.together-question-empty>span{font-size:38px}.together-question-empty b{color:#e2eee8;font-size:18px}.together-question-empty p{margin:0;color:#90a99d}.together-live-board:fullscreen{overflow:auto;border-radius:0;background:#172d25}.together-live-board:fullscreen .together-board-header{position:sticky;z-index:10;top:0}.together-live-board:fullscreen .together-live-question>p{font-size:clamp(22px,2vw,34px)}
@media(max-width:1050px){.together-reading-controls form{grid-template-columns:1fr auto}.together-reading-controls p{grid-column:1/-1}.together-board-layout{grid-template-columns:1fr}.together-student-section{border-top:1px solid #355046}.together-student-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.together-reading-controls form{grid-template-columns:1fr}.together-reading-controls button{width:100%}.together-board-header{flex-direction:column;padding:21px 18px}.together-board-tools{justify-content:flex-start}.together-stats{grid-template-columns:1fr 1fr}.together-stats article{padding:13px 15px}.together-range-progress,.together-question-section,.together-student-section{padding-left:15px;padding-right:15px}.together-live-question-grid,.together-student-list{grid-template-columns:1fr}.together-range-step{flex-basis:205px}.together-live-question{min-height:120px}}

/* Together reading: range-independent latest questions */
.together-question-section{min-width:0;background:#172d25;padding:20px 26px 26px}.together-live-board .together-question-grid{display:flex!important;width:100%;flex-wrap:wrap!important;justify-content:space-between!important;align-content:flex-start;gap:0!important;margin-top:16px}.together-live-board .together-question-grid>.together-live-question{flex:0 0 calc((100% - 20px)/3)!important;width:calc((100% - 20px)/3)!important;max-width:calc((100% - 20px)/3)!important;min-width:0;min-height:145px;margin-bottom:10px;padding:13px 15px}.together-question-range-label{display:block;overflow:hidden;margin-bottom:7px;color:#72877c;font-size:9px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.together-question-grid .together-live-question>p{display:-webkit-box;overflow:hidden;font-size:clamp(15px,1.35vw,21px);-webkit-box-orient:vertical;-webkit-line-clamp:5}.together-question-grid .together-live-question footer{margin-top:9px;padding-top:8px}.together-range-tools{display:flex;align-items:center;gap:7px}.together-range-tools small{margin-right:4px;color:#9fb9ac;font-size:11px}.together-range-tools button{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid #668477;border-radius:9px;background:#29483c;color:#ffe174;font-size:24px;line-height:1}.together-range-rail{overflow-x:scroll!important;padding-bottom:12px;scrollbar-width:auto;scrollbar-color:#f1ce60 #29483c}.together-range-rail::-webkit-scrollbar{height:12px}.together-range-rail::-webkit-scrollbar-track{border-radius:99px;background:#29483c}.together-range-rail::-webkit-scrollbar-thumb{border:2px solid #29483c;border-radius:99px;background:#f1ce60}.together-live-board:fullscreen{display:flex!important;height:100vh;flex-direction:column;overflow:hidden}.together-live-board:fullscreen .together-board-header,.together-live-board:fullscreen .together-range-progress{flex:0 0 auto}.together-live-board:fullscreen .together-board-header{position:static}.together-live-board:fullscreen .together-range-progress{padding-top:14px;padding-bottom:8px}.together-live-board:fullscreen .together-question-section{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;padding-top:12px;padding-bottom:12px}.together-live-board:fullscreen .together-question-grid{min-height:0;flex:1 1 auto;overflow:hidden}.together-live-board:fullscreen .together-question-grid .together-live-question{height:calc((100% - 20px)/3)!important;min-height:0;overflow:hidden}.together-live-board:fullscreen .together-question-grid .together-live-question:nth-child(n+7){margin-bottom:0}.together-live-board:fullscreen .together-live-question>p{font-size:clamp(15px,1.35vw,21px)}

/* Together reading: TV text scale */
.together-live-board .together-range-step b{font-size:22px!important}.together-live-board .together-range-step small{font-size:18px!important}.together-live-board .together-question-grid .together-live-question>p{font-size:clamp(22.5px,2.025vw,31.5px)!important;-webkit-line-clamp:3}
.together-live-board:fullscreen .together-board-header{display:none}.together-live-board:fullscreen .together-range-progress{padding-top:18px;padding-bottom:10px}.together-live-board:fullscreen .together-question-section{padding-top:14px;padding-bottom:14px}.together-live-board:fullscreen .together-question-grid .together-live-question>p{display:block!important;min-height:0;overflow:visible!important;overflow-wrap:anywhere;word-break:break-word;font-size:clamp(30px,2.4vw,42px)!important;-webkit-box-orient:initial!important;-webkit-line-clamp:unset!important;line-clamp:unset!important}

/* Shared activity role labels */
.peer-role-badge{border-radius:99px;background:#edf1ee;padding:3px 7px;color:#64756c;font-size:9px;font-weight:900}.together-live-question footer b{white-space:nowrap}.together-student-progress-card header b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Keyword summary AI coaching */
.keyword-summary-coaching{display:grid;gap:10px;margin:14px 0;padding:14px;border:1px solid #dce9e1;border-radius:14px;background:#f6fbf7}.keyword-group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.keyword-group-grid>div{padding:10px;border-radius:10px;background:#fff}.keyword-group-grid strong{display:block;color:#315a48}.keyword-group-grid p{margin:4px 0;font-weight:800}.keyword-group-grid small{display:block;color:#66776e;line-height:1.5}.summary-context-guide{padding:11px;border-left:4px solid #e7b847;border-radius:8px;background:#fff8dd}.summary-context-guide p{margin:5px 0 0;line-height:1.65}

/* AI-connected chapter summary */
.chapter-ai-connected-summary{margin:16px 0;padding:18px;border:1px solid #c9e2d3;border-radius:18px;background:linear-gradient(135deg,#f5fff8,#fffbea);box-shadow:0 10px 26px rgba(39,82,60,.08)}.chapter-ai-connected-summary header{display:flex;align-items:center;gap:10px}.chapter-ai-connected-summary header>span{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:#315f49;color:#fff;font-size:11px;font-weight:900}.chapter-ai-connected-summary header div{display:grid;gap:2px}.chapter-ai-connected-summary header small{color:#718179;font-size:10px;font-weight:800}.chapter-ai-connected-summary header b{color:#234b38}.chapter-ai-connected-summary>p{margin:13px 0 8px;color:#243e31;font-size:16px;font-weight:750;line-height:1.75;white-space:pre-line}.chapter-ai-connected-summary>small{color:#718179;line-height:1.5}.chapter-ai-connected-summary.compact{margin:12px 0;padding:14px}.chapter-ai-connected-summary.compact>p{font-size:14px}

/* Teacher insight period filter */
.insight-panel>.insight-board{display:none}.report-filters.insight-filters{grid-template-columns:minmax(180px,1.2fr) minmax(170px,1fr) minmax(150px,.8fr) auto}.ai-result-group+.ai-result-group{margin-top:22px}.ai-category-card li .ai-question-authors{display:block;width:max-content;margin:5px 0 0;padding:2px 7px;border-radius:999px;background:#fff0bd;color:#6f5410;font-size:10px;font-weight:800}html[data-teacher-question-authors="real-name"] .ai-question-authors::before{content:"작성: "}@media(max-width:760px){.report-filters.insight-filters{grid-template-columns:1fr}.report-filters.insight-filters button{width:100%}}

/* Teacher student status table */
.student-status-panel{min-height:420px}.student-status-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.student-status-summary article{display:flex;align-items:center;justify-content:space-between;border:1px solid #d7e3db;border-radius:14px;background:linear-gradient(145deg,#f7fbf8,#fffdf5);padding:15px 17px}.student-status-summary span{color:#6e7d75;font-size:12px;font-weight:800}.student-status-summary strong{color:#285a47;font:900 24px Georgia,"Noto Serif KR",serif}.student-status-guide{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.student-status-guide span{border-radius:99px;background:#edf4ef;padding:6px 10px;color:#52675c;font-size:10px;font-weight:800}.student-status-table-wrap{border:1px solid #dfe5df;border-radius:14px}.student-status-table-wrap table{min-width:1400px}
.student-last-range-cell{min-width:190px;max-width:260px}.student-last-range-cell strong{display:block;color:#264b39;font-size:12px;line-height:1.4}.student-last-range-cell small{display:block;margin-top:2px;color:#7a877f;font-size:10px;line-height:1.35}.student-status-table-wrap th{position:sticky;z-index:2;top:0;padding:0}.student-status-table-wrap th button{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;gap:7px;border:0;background:#eef4f0;padding:11px 12px;color:#43584d;font:850 11px/1.3 system-ui,sans-serif;text-align:left;cursor:pointer;white-space:nowrap}.student-status-table-wrap th button:hover,.student-status-table-wrap th[aria-sort]:not([aria-sort="none"]) button{background:#dfece4;color:#214b38}.student-sort-indicator{color:#c08a13;font-size:14px}.student-status-table-wrap tbody tr:hover{background:#fbfdfb}.student-status-name{min-width:185px}.student-status-name em{display:inline-block;margin-top:5px;border-radius:99px;background:#f1e7e4;padding:2px 6px;color:#9b4b3e;font-size:9px;font-style:normal;font-weight:900}.student-rank-badge{display:grid;min-width:130px;gap:3px;color:#3d574b;font-size:11px;font-weight:900}.student-rank-badge b{color:#e7ab13;font-size:11px;letter-spacing:1px}.student-level-cell strong{color:#2d6149;font-size:15px;white-space:nowrap}.student-points-cell strong{color:#dc6733;font-size:17px;white-space:nowrap}.student-number-cell{text-align:center;font-size:15px!important}.student-number-cell strong{color:#285a47;font-size:17px}.student-score-cell,.student-ai-points-cell{min-width:145px}.student-score-cell strong{color:#28634a;font-size:18px;white-space:nowrap}.student-score-cell.ai strong{color:#7155a3}.student-ai-points-cell strong{color:#6c5592;font-size:14px;white-space:nowrap}.student-status-table-wrap td small{white-space:nowrap}@media(max-width:700px){.student-status-summary{grid-template-columns:1fr}.student-status-summary article{padding:12px 14px}.student-status-guide{display:grid}.student-status-panel{padding-left:14px;padding-right:14px}}

/* Student roster management and class filters */
.student-status-filters{display:flex;align-items:end;gap:9px;margin:0 0 14px;border:1px solid #d8e4dc;border-radius:14px;background:#f6faf7;padding:12px}.student-status-filters label{display:grid;min-width:150px;gap:5px}.student-status-filters label>span{color:#52675c;font-size:10px;font-weight:900}.student-status-filters select{min-height:42px;border:1px solid #c9d8ce;border-radius:9px;background:#fff;padding:9px 11px}.student-status-filters>a{min-height:42px;display:inline-flex;align-items:center}.student-status-table-wrap table{min-width:1420px}.student-school-cell{min-width:74px;color:#3f5b4c;font-weight:850;white-space:nowrap}.student-school-cell small{display:inline-block!important;margin:0 0 0 5px!important;border-radius:99px;background:#edf1ee;padding:2px 5px}.member-name em{margin-top:4px;color:#37634d;font-size:10px;font-style:normal;font-weight:900}.student-profile-form{grid-column:2/-1;display:grid;grid-template-columns:95px minmax(120px,1fr) 95px 105px minmax(80px,1fr) auto;align-items:end;gap:7px;border:1px solid #d9e5dd;border-radius:11px;background:#f7faf8;padding:10px}.student-profile-form label{display:grid;gap:4px;color:#5d7066;font-size:9px;font-weight:900}.student-profile-form :is(input,select){width:100%;min-height:36px;border:1px solid #c9d7ce;border-radius:8px;background:#fff;padding:7px 8px}.student-profile-form .form-message{align-self:center;color:#3f6b54;font-size:9px}.student-profile-form button{min-height:36px;white-space:nowrap}.members-panel>.panel-title>.secondary-button{white-space:nowrap}@media(max-width:900px){.student-profile-form{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.student-profile-form .form-message{grid-column:1/4}}@media(max-width:620px){.student-status-filters{align-items:stretch;flex-direction:column}.student-status-filters label{min-width:0}.student-profile-form{grid-template-columns:1fr 1fr}.student-profile-form .form-message{grid-column:1/-1}.members-panel>.panel-title{flex-direction:column}}
.reading-continue-button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;margin:0 0 16px;padding:16px 20px;border:1px solid #bcd4c8;border-radius:16px;background:#eef7f2;color:#194f3c;text-align:left;cursor:pointer;box-shadow:0 5px 16px rgba(28,75,57,.08)}.reading-continue-button:hover,.reading-continue-button:focus-visible{border-color:#34755b;background:#e1f1e8;outline:3px solid rgba(52,117,91,.16)}.reading-continue-button span{display:flex;flex-direction:column;gap:3px}.reading-continue-button small{font-weight:700;color:#5a7c6e}.reading-continue-button b{font-size:17px}.reading-continue-button strong{overflow-wrap:anywhere;text-align:right}@media(max-width:640px){.reading-continue-button{align-items:flex-start;flex-direction:column;gap:8px}.reading-continue-button strong{text-align:left}}
.record-quiz-reopen{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:14px;padding:12px 14px;border:1px solid #d7e5dd;border-radius:14px;background:#f5faf7}.record-quiz-reopen>div{flex:1 1 240px;display:flex;flex-direction:column;gap:3px}.record-quiz-reopen small{color:#5a7c6e;line-height:1.5}.record-quiz-reopen .form-message{flex-basis:100%}
/* TV 화면 수업용: AI 분석 1~3번 주제(공통점·차이점, 생각 유형, 토론 설계) 글씨 대형 표시 */
.analysis-topic-card:not(:last-child)>header{gap:24px;padding:30px 36px}
.analysis-topic-card:not(:last-child)>header h3{font-size:45px}
.analysis-topic-card:not(:last-child)>header p{font-size:22px}
.analysis-topic-card:not(:last-child) .analysis-topic-number{flex-basis:76px;width:76px;height:76px;border-radius:22px;font-size:42px}
.analysis-topic-card:not(:last-child) .analysis-lead{padding:30px 36px;font-size:33px;line-height:1.6}
.analysis-topic-card:not(:last-child) .analysis-landscape-group b,.analysis-topic-card:not(:last-child) .analysis-type-card h4{font-size:36px}
.analysis-topic-card:not(:last-child) .analysis-landscape-group strong,.analysis-topic-card:not(:last-child) .analysis-type-card strong{padding:8px 18px;font-size:25px}
.analysis-topic-card:not(:last-child) .analysis-landscape-group>p,.analysis-topic-card:not(:last-child) .analysis-type-card>p{font-size:27px;line-height:1.55}
.analysis-topic-card:not(:last-child) .analysis-vote-bar{height:56px}
.analysis-topic-card:not(:last-child) .analysis-vote-fill{font-size:24px}
.analysis-topic-card:not(:last-child) .analysis-vote-side b{font-size:36px}
.analysis-topic-card:not(:last-child) .analysis-vote-side strong{padding:8px 18px;font-size:25px}
.analysis-topic-card:not(:last-child) .analysis-vote-side>p{font-size:27px;line-height:1.55}
.analysis-topic-card:not(:last-child) .analysis-vote-avatar-item{width:104px;gap:7px}
.analysis-topic-card:not(:last-child) .analysis-vote-avatar-item .student-character-avatar{width:92px;height:92px;flex-basis:92px}
.analysis-topic-card:not(:last-child) .analysis-vote-avatar-item span{font-size:18px}
.analysis-topic-card:not(:last-child) .analysis-member b{font-size:22px}
.analysis-topic-card:not(:last-child) .analysis-member p{font-size:22px;line-height:1.5}
.analysis-topic-card:not(:last-child) .analysis-compare b{font-size:27px}
.analysis-topic-card:not(:last-child) .analysis-compare p{font-size:27px;line-height:1.6}
.analysis-topic-card:not(:last-child) .analysis-debate-sides small{font-size:25px}
.analysis-topic-card:not(:last-child) .analysis-debate-sides h4{font-size:42px}
.analysis-topic-card:not(:last-child) .analysis-debate-sides>section>p{font-size:30px;line-height:1.55}
.analysis-topic-card:not(:last-child) .analysis-debate-mission b{font-size:27px}
.analysis-topic-card:not(:last-child) .analysis-debate-mission p{font-size:33px;line-height:1.6}
/* AI 분석 전체화면 슬라이드 (TV 수업용): 한 화면에 한 주제, 글자 크기는 JS가 내용에 맞춰 최대로 조정 */
.analysis-fullscreen-button{margin-left:auto;border:0;border-radius:12px;background:#ffdc62;padding:12px 18px;color:#3d3005;font-weight:900;font-size:16px;font-family:inherit;cursor:pointer;box-shadow:0 6px 16px rgba(61,48,5,.18)}.analysis-fullscreen-button:hover,.analysis-fullscreen-button:focus-visible{background:#ffd23a;outline:3px solid rgba(255,210,58,.45)}
.fs-slides{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;background:#0f2a20;color:#f4fbf6}
.fs-stage{position:relative;flex:1;min-height:0}
.fs-slide{position:absolute;inset:0;display:none;flex-direction:column;box-sizing:border-box;padding:2vh 3vw 1vh;line-height:1.3;overflow:hidden}
.fs-slide.active{display:flex}
.fs-head{display:flex;align-items:center;gap:.5em;flex:none;margin-bottom:.35em}
.fs-head h2{margin:0;font-size:1.2em;line-height:1.15;color:#fff}
.fs-head p{margin:.1em 0 0;font-size:.55em;color:#b9d8c7}
.fs-num{display:grid;place-items:center;flex:none;width:1.5em;height:1.5em;border-radius:.3em;background:#ffdc62;color:#523f08;font:900 1em Georgia,serif}
.fs-slide-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:.4em}
.fs-lead{margin:0;font-size:.8em;line-height:1.35;color:#e7f5ec}
.fs-cards{display:grid;grid-template-columns:repeat(var(--cols,2),minmax(0,1fr));gap:.4em}
.fs-compare,.fs-sides{display:grid;grid-template-columns:1fr 1fr;gap:.4em}
.fs-card{border-radius:.4em;background:#f6fbf7;padding:.35em .5em;color:#173328}
.fs-card-top{display:flex;align-items:center;justify-content:space-between;gap:.4em}
.fs-card b{font-size:.85em;color:#1e4c37}
.fs-card strong{flex:none;border-radius:99px;background:#dcefe3;padding:.05em .5em;font-size:.6em;color:#215a40}
.fs-card-text{margin:.15em 0 0;font-size:.7em;line-height:1.35;color:#334f42}
.fs-meter{display:block;height:.25em;margin:.25em 0;border-radius:99px;background:#dcefe3;overflow:hidden}.fs-meter span{display:block;height:100%;background:#3b8f68}
.fs-members{margin-top:.25em}
.fs-member{margin:.15em 0 0;border-top:1px dashed #c9dccf;padding-top:.15em;font-size:.55em;line-height:1.35;color:#3f5a4c}.fs-member b{font-size:1em;color:#1e4c37}
.fs-chips{display:flex;flex-wrap:wrap;gap:.2em;margin-top:.25em}.fs-chip{border-radius:99px;background:#e4f1e8;padding:.05em .45em;font-size:.55em;color:#285640}
.fs-a{background:#eaf5fc}.fs-a b{color:#1f5878}.fs-b{background:#fff3ec}.fs-b b{color:#8a4a2f}.fs-sides small{display:block;font-size:.55em;font-weight:900;color:#507c9a}.fs-b small{color:#a2674c}
.fs-vote-graph{display:flex;flex-direction:column;gap:.5em}
.fs-vote-bar{display:flex;height:1.4em;overflow:hidden;border-radius:99px;background:#1c3a2e}
.fs-vote-fill{display:flex;align-items:center;justify-content:center;height:100%;color:#fff;font-weight:900;font-size:.6em}
.fs-vote-fill.agree{background:linear-gradient(90deg,#2c7a52,#3f9c6c)}
.fs-vote-fill.disagree{background:linear-gradient(90deg,#b1503f,#d0715e)}
.fs-vote-sides{display:grid;grid-template-columns:1fr 1fr;gap:.4em}
.fs-vote-agree{background:#eaf7ef}.fs-vote-agree b{color:#1e5c3d}
.fs-vote-disagree{background:#fdf0ec}.fs-vote-disagree b{color:#8a3f2c}
.fs-vote-avatars{display:flex;flex-wrap:wrap;gap:.3em;margin-top:.3em}
.fs-vote-avatar-item{display:flex;flex-direction:column;align-items:center;gap:.1em;width:2.6em;border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer}
.fs-vote-avatar-item:hover .student-character-avatar,.fs-vote-avatar-item:focus-visible .student-character-avatar{box-shadow:0 0 0 .1em #f0cb58,0 3px 10px rgba(23,49,38,.18)}
.fs-vote-avatar-item .student-character-avatar{width:2.2em;height:2.2em;flex-basis:2.2em;border-radius:.35em}
.fs-vote-avatar-item span{overflow:hidden;max-width:100%;font-size:.5em;font-weight:800;text-overflow:ellipsis;white-space:nowrap;color:#173328}
.fs-mission{border-radius:.4em;background:#fff5cc;padding:.35em .5em;color:#4a3d08}.fs-mission b{display:block;font-size:.6em;color:#7b6218}.fs-mission p{margin:.05em 0 .25em;font-size:.8em;line-height:1.3}
.fs-next{gap:.6em}.fs-quote{margin:0;border-left:.15em solid #ffdc62;border-radius:.2em;background:rgba(255,255,255,.08);padding:.4em .6em;font-size:1.3em;font-weight:900;line-height:1.3;color:#fff6cf}.fs-rationale{margin:0;font-size:.6em;color:#b9d8c7}
.fs-nav{flex:none;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:8px 14px;background:rgba(0,0,0,.4);font-size:15px}
.fs-nav button{border:1px solid rgba(255,255,255,.35);border-radius:10px;background:rgba(255,255,255,.1);padding:7px 14px;color:#fff;font-weight:800;font-size:15px;font-family:inherit;cursor:pointer}.fs-nav button:disabled{opacity:.35;cursor:default}.fs-nav button:hover:not(:disabled),.fs-nav button:focus-visible{background:rgba(255,255,255,.25)}
.fs-dots{display:flex;gap:6px}.fs-dots button{padding:7px 12px}.fs-dots button.active{border-color:#ffdc62;background:#ffdc62;color:#3d3005}
.fs-close{margin-left:16px}
@media(max-width:760px){.fs-compare,.fs-sides,.fs-vote-sides{grid-template-columns:1fr}}
/* 빛나는 발자국: 학생 Lv. 수만큼 별을 사진 위 배지에 크게 표시 (6개 이상은 두 줄) */
.rank-character.shining-character{position:relative}
.rank-character.shining-character:before,.rank-character.shining-character.personal-reader-photo:before{content:attr(data-stars);position:absolute;z-index:2;left:50%;top:auto;bottom:3px;transform:translateX(-50%);box-sizing:border-box;max-width:calc(100% - 4px);border:1px solid rgba(255,226,105,.9);border-radius:10px;background:rgba(34,48,41,.84);padding:3px 4px;color:#ffd84f;font-size:13px;font-weight:950;letter-spacing:0;line-height:1.1;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.55);box-shadow:0 3px 10px rgba(0,0,0,.22);white-space:pre}
@media(max-width:760px){.rank-character.shining-character:before,.rank-character.shining-character.personal-reader-photo:before{font-size:10px;padding:2px 3px}}

/* 나의 독서카드: 책장 스타일 목록 카드 보강 */
.reading-cards-summary{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px}
.reading-cards-summary span{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#78837e}
.reading-cards-summary b{font-family:Georgia,"Noto Serif KR",serif;font-size:24px;color:var(--forest)}
.reading-card-tile{position:relative}
.reading-card-ribbon{position:absolute;top:10px;right:-6px;border-radius:99px 0 0 99px;background:#ffdc62;color:#523f08;font-size:11px;font-weight:900;padding:5px 10px 5px 12px;box-shadow:0 3px 8px rgba(0,0,0,.2)}
.reading-card-badges{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.reading-card-badges span{border-radius:99px;background:#eef4f0;color:#3c5a4a;font-size:11px;font-weight:750;padding:4px 9px}
.reading-card-badges span.done{background:#fff0c0;color:#785d0c}

/* 나의 독서카드 뷰어: 상단 메뉴 아래를 스크롤 없이 슬라이드로 채움 */
body.reading-card-viewer{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
body.reading-card-viewer .site-footer{display:none}
.rc-shell{flex:1;min-height:0;display:flex;flex-direction:column;background:linear-gradient(180deg,#f3f8f4,var(--paper))}
.rc-stage{position:relative;flex:1;min-height:0}
.rc-slide{position:absolute;inset:0;display:none;box-sizing:border-box;padding:2.2vh 4vw;overflow:hidden}
.rc-slide.active{display:flex;align-items:center;justify-content:center}
.rc-slide-body{width:100%;max-height:100%;overflow:hidden;line-height:1.35}
.rc-head{display:flex;align-items:center;gap:.6em;margin-bottom:.7em}
.rc-head small{display:block;color:#7c8b81;font-size:.5em;font-weight:800;letter-spacing:.06em}
.rc-head h2{margin:.1em 0 0;font-family:Georgia,"Noto Serif KR",serif;font-size:1em;line-height:1.2;color:var(--forest)}

.rc-cover .rc-slide-body{display:flex;align-items:center;justify-content:center;gap:1.6em;max-width:52em;margin:0 auto}
.rc-cover-art{flex:none;width:14em;aspect-ratio:3/4.2;border-radius:.3em 1em 1em .3em;box-shadow:.4em .6em 1.2em rgba(36,51,45,.28);display:flex;flex-direction:column;padding:1em;color:#23352e;position:relative;overflow:hidden}
.rc-cover-copy{flex:1 1 24em;min-width:0;max-width:26em}
.rc-cover-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rc-cover-art span{font-size:.5em;letter-spacing:.12em}
.rc-cover-art strong{font-family:Georgia,"Noto Serif KR",serif;font-size:1.3em;line-height:1.2;margin:auto 0}
.rc-cover-copy .eyebrow{color:var(--coral)}
.rc-cover-copy h1{margin:.15em 0;font-family:Georgia,"Noto Serif KR",serif;font-size:2em;line-height:1.15;color:var(--forest)}
.rc-cover-author{margin:0 0 .6em;color:#748079;font-size:.85em}
.rc-cover-owner{display:flex;align-items:center;gap:.5em;margin-bottom:1em;font-size:.75em;color:#4a5a51}
.rc-cover-owner img,.rc-cover-owner span{width:1.9em;height:1.9em;border-radius:50%;object-fit:cover;background:var(--mint);display:grid;place-items:center;font-weight:800;color:var(--forest);flex:none}
.rc-cover-badges{display:flex;flex-wrap:wrap;gap:.7em;margin-bottom:.9em}
.rc-cover-badges>div{border-radius:.7em;background:#fff;border:1px solid var(--line);box-shadow:0 .3em .8em rgba(36,51,45,.06);padding:.5em .9em;text-align:center;min-width:4.6em}
.rc-cover-badges strong{display:block;font-family:Georgia,"Noto Serif KR",serif;font-size:1.15em;color:var(--forest)}
.rc-cover-badges small{font-size:.6em;color:#78837e}
.rc-cover-badges .done{background:#fff5cc;border-color:#f0dfa0}
.rc-cover-period{margin:0;color:#8a978f;font-size:.65em}

.rc-range .rc-slide-body{max-width:64em;margin:0 auto}
.rc-question-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(15em,1fr));gap:.7em}
.rc-question-set{display:flex;align-items:flex-start;gap:.6em;border-radius:.9em;background:#fff9ec;border:1px solid #f0e2bc;padding:.7em .9em;box-shadow:0 .3em .7em rgba(120,93,12,.08)}
.rc-question-set span{flex:none;display:grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;background:#ffdc62;color:#523f08;font-weight:900;font-size:.7em}
.rc-question-set p{margin:0;padding-top:.15em;font-size:.85em;line-height:1.45;color:#3a3120;font-weight:600}

.rc-chapter .rc-slide-body{max-width:52em;margin:0 auto}
.rc-chapter-summary{margin:0 0 1em;font-size:1em;line-height:1.6;color:#3a4a41;white-space:pre-line}
.rc-thought{border-radius:1em;background:linear-gradient(135deg,#fff7e0,#fffdf5);border:1px solid #f0dfa0;padding:1em 1.2em}
.rc-thought b{display:block;margin-bottom:.35em;font-size:.7em;color:#7b6218}
.rc-thought p{margin:0;font-family:Georgia,"Noto Serif KR",serif;font-size:1.15em;line-height:1.5;color:#4e4021}

.rc-final .rc-slide-body{max-width:46em;margin:0 auto;text-align:center}
.rc-final .eyebrow{color:var(--coral)}
.rc-final-title{margin:.2em 0 .7em;font-family:Georgia,"Noto Serif KR",serif;font-size:1.9em;line-height:1.2;color:var(--forest)}
.rc-final-outline{margin:0 0 1em;font-size:1.05em;line-height:1.75;color:#3a4a41;text-align:left;white-space:pre-line}
.rc-final-signature{margin:0;color:#8a978f;font-size:.75em;font-style:italic}

.rc-owner-avatar{position:relative;flex:none;width:2.3em;height:2.3em}
.rc-owner-avatar .rank-character{position:absolute;inset:0;width:100%;height:100%;margin:0;border-radius:50%;border-width:2px;box-shadow:0 .1em 0 #253e35;transform:none}
.rc-owner-avatar .rank-character:not(.personal-reader-photo):not(.growth-style-muscle){background-position:calc(var(--rank-index) * 25%) 65%}
.rc-owner-avatar .rank-character.personal-reader-photo{background-position:center,center,calc(var(--rank-index) * 25%) 65%}
.rc-owner-avatar .rank-character:before{content:attr(data-stars);position:absolute;z-index:2;top:auto;left:50%;bottom:.05em;transform:translateX(-50%);max-width:calc(100% - .2em);width:max-content;height:auto;border:1px solid rgba(255,226,105,.9);border-radius:99px;background:rgba(34,48,41,.9);padding:.03em .22em;color:#ffd84f;font-size:.3em;font-weight:950;letter-spacing:0;line-height:1.4;text-align:center;white-space:nowrap;box-shadow:0 .08em .2em rgba(0,0,0,.28)}
.rc-head .rc-owner-avatar{order:-1}
.rc-final .rc-owner-avatar{width:3.6em;height:3.6em;margin:0 auto .8em}

.rc-outro-links{display:flex;justify-content:center;gap:.6em;margin-top:1.3em;flex-wrap:wrap}

.rc-nav{flex:none;display:flex;align-items:center;gap:14px;padding:12px 20px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:rgba(255,255,255,.85);backdrop-filter:blur(6px)}
.rc-nav button{border:1px solid var(--line);border-radius:10px;background:#fff;padding:9px 16px;font-weight:800;font-size:14px;color:var(--forest);cursor:pointer}
.rc-nav button:disabled{opacity:.35;cursor:default}
.rc-nav button:hover:not(:disabled){background:var(--mint)}
.rc-nav button.rc-nav-exit{border-color:var(--forest);background:var(--forest);color:#fff}
.rc-nav button.rc-nav-exit:hover{background:#1f4636}
.rc-nav-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;align-items:center}
.rc-nav-info>span{font-size:12px;color:#78837e;display:flex;gap:.3em}
.rc-nav-info b{color:var(--forest)}
.rc-nav-info>b{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.rc-progress{display:block;width:min(320px,60vw);height:6px;border-radius:99px;background:var(--mint);overflow:hidden}
.rc-progress span{display:block;height:100%;background:var(--coral);transition:width .25s}

@media(max-width:760px){
  .rc-cover .rc-slide-body{flex-direction:column;text-align:center}
  .rc-cover-art{width:9em}
  .rc-cover-copy{max-width:100%}
  .rc-cover-owner,.rc-cover-badges{justify-content:center}
  .rc-question-groups{grid-template-columns:1fr}
  .rc-owner-avatar{width:1.9em;height:1.9em}
  .rc-final .rc-owner-avatar{width:2.8em;height:2.8em}
  .rc-nav{padding:10px 12px}
  .rc-nav button{padding:8px 11px;font-size:13px}
  .rc-nav-info>span{font-size:11px}
}
.rc-slide-body.rc-overflow-safe{overflow-y:auto}
/* 학생 전체 질문 보기 */
.all-questions-panel{margin-bottom:18px;border:2px solid #b9d0c1}.all-questions-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.all-questions-heading h2{margin:3px 0;font:750 clamp(22px,2.4vw,30px) Georgia,"Noto Serif KR",serif;color:#274f3e}.all-questions-heading p:last-child{margin:0;color:#65766d;font-size:12px}
.all-questions-group{margin-top:16px}.all-questions-group>h3{display:flex;align-items:center;gap:10px;margin:0 0 8px;padding:9px 13px;border-radius:11px;background:#e7f1ea;color:#244f3d;font-size:15px}.all-questions-group>h3 span{border-radius:99px;background:#fff;padding:2px 9px;color:#4d6c5d;font-size:11px}
.all-questions-list{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:q}.all-questions-item{position:relative;counter-increment:q;border:1px solid #d9e4dd;border-radius:12px;background:#fff;padding:12px 14px 12px 46px}.all-questions-item:before{content:counter(q);position:absolute;left:13px;top:12px;display:grid;width:24px;height:24px;place-items:center;border-radius:8px;background:#ffdc62;color:#53430d;font-size:12px;font-weight:900}.all-questions-text{margin:0 0 5px;color:#243e33;font-size:17px;font-weight:700;line-height:1.55;overflow-wrap:anywhere}.all-questions-item small{color:#7b8981;font-size:11px}

/* 학생별 현황표: 화면 폭 100%를 사용하고 가로 스크롤 없이 표를 맞춘다 */
.teacher-page.teacher-page-wide{max-width:none;width:100%;box-sizing:border-box;padding-left:clamp(10px,1.6vw,28px);padding-right:clamp(10px,1.6vw,28px)}
.teacher-page-wide .student-status-table-wrap{overflow-x:visible}
.teacher-page-wide .student-status-table-wrap table{width:100%;min-width:0}
.teacher-page-wide .student-status-table-wrap th button{padding:10px 6px;white-space:normal;word-break:keep-all;font-size:clamp(10px,.8vw,11px)}
.teacher-page-wide .student-status-table-wrap td{padding:8px 6px;font-size:clamp(10.5px,.85vw,12px)}
.teacher-page-wide .student-status-name{min-width:0;word-break:break-all}
.teacher-page-wide .student-last-range-cell{min-width:0;max-width:none;word-break:keep-all;overflow-wrap:anywhere}
.teacher-page-wide .student-rank-badge{min-width:0}
.teacher-page-wide .student-score-cell,.teacher-page-wide .student-ai-points-cell{min-width:0}
.teacher-page-wide .student-status-table-wrap td small{white-space:normal}
