/* 자유입력, 학생별 임시저장과 알리고 엑셀 기능의 화면 확장 */
.topbar-right{gap:12px;min-width:0}.home-link{font-size:.8125rem;text-decoration:none;color:var(--muted);padding:12px 8px;white-space:nowrap}.home-link:hover{color:var(--accent)}.topbar-right>.button{white-space:nowrap}.topbar-right #draft-count{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;border-radius:7px;background:var(--accent-soft);color:var(--accent);font-size:.72rem;padding:0 5px}.profile-grid{grid-template-columns:minmax(0,1fr) minmax(80px,.65fr) minmax(0,1.2fr)}#save-status{max-width:210px;line-height:1.6;text-align:right}.save-error{color:#9c3b32!important}
.writing-mode-panel,.free-panel,.student-panel{padding:24px}.writing-mode-panel .section-heading{margin-bottom:18px}.mode-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:5px;border:1px solid var(--border);border-radius:12px;background:#f8f7fb}.mode-options button{border:1px solid transparent;border-radius:8px;background:transparent;min-height:46px;padding:10px 9px;font-size:.84rem;font-weight:600;line-height:1.55;color:var(--muted);word-break:keep-all;transition:background .15s,color .15s,border-color .15s}.mode-options button:hover{background:#f0eaf8;color:var(--accent)}.mode-options button.active{background:#fff;border-color:#d9c8ec;color:var(--accent-dark);box-shadow:0 2px 7px #4d356a0b}.writing-mode-panel #mode-hint{margin-top:13px;min-height:26px;word-break:keep-all}.free-panel{background:linear-gradient(145deg,#fff 60%,#fcfaff)}.free-field{display:grid;gap:9px;font-size:.84rem;font-weight:600;line-height:1.6}.free-field+.free-field{margin-top:20px}.free-field textarea{font-weight:400;min-height:114px;line-height:1.85}.student-panel{border-color:#ddd0ed;background:#fff}.student-panel>.field{max-width:360px}.student-actions{display:flex;align-items:center;gap:16px;margin-top:18px}.student-actions>.button{flex-shrink:0}.student-actions>p{font-size:.77rem;line-height:1.75;color:var(--muted);word-break:keep-all}
.preview-bottom>p.byte-status{margin-top:10px;margin-bottom:14px;font-size:.76rem;font-weight:600;padding:9px 11px;background:#f0eafb;border-radius:8px;color:var(--accent-dark);overflow-wrap:anywhere}.preview-bottom>p.byte-status.over-limit{background:#fff1ec;color:#9c3b32}.preview-bottom>p.export-hint{text-align:center;font-size:.75rem;line-height:1.8;margin:11px 0 8px;word-break:keep-all}.preview-bottom .secondary-actions{gap:3px;justify-content:space-between;margin-top:4px;flex-wrap:wrap}.preview-bottom .secondary-actions .button{padding:9px 6px;min-height:42px;font-size:.75rem;font-weight:500}.quick-save{width:100%;margin-top:7px;font-size:.8rem;background:#fff}.preview-bottom{padding-bottom:18px}.preview-top .eyebrow{letter-spacing:.13em}
.drafts-dialog{width:720px;max-height:min(86vh,850px);padding:27px;overflow-y:auto;overscroll-behavior:contain}.draft-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.draft-dialog-header h2{margin-top:8px;font-size:1.25rem;letter-spacing:-.035em}.draft-dialog-header .icon-button{width:40px;height:40px;font-size:1.5rem;border:1px solid var(--border);border-radius:10px}.drafts-dialog .draft-description{font-size:.82rem;line-height:1.8;margin-top:16px;word-break:keep-all}.draft-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 17px;padding-bottom:16px;border-bottom:1px solid var(--border)}.draft-toolbar>label{display:flex;align-items:center;gap:7px;font-size:.8125rem;white-space:nowrap;min-height:42px;cursor:pointer}.draft-toolbar input,.draft-select input{width:18px;height:18px;margin:0;flex-shrink:0}.draft-toolbar>.button{font-size:.8rem}.draft-row{border:1px solid var(--border);border-radius:13px;padding:17px;margin-bottom:12px;background:#fff}.draft-select{display:flex;align-items:center;gap:12px;cursor:pointer}.draft-select>span{display:grid;gap:6px;min-width:0}.draft-select strong{font-size:.96rem;line-height:1.5;overflow-wrap:anywhere}.draft-select>span>span{font-size:.75rem;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}.drafts-dialog .draft-state{font-size:.74rem;line-height:1.7;color:var(--green);padding-left:30px;margin:12px 0 0;overflow-wrap:anywhere}.drafts-dialog .draft-state.needs-edit{color:#9b5425}.draft-actions{display:flex;justify-content:flex-end;gap:5px;margin-top:12px}.draft-actions .button{font-size:.78rem;min-height:40px;padding:9px 13px}.drafts-dialog .draft-local-note{font-size:.73rem;line-height:1.8;margin:16px 2px 0;padding-top:15px;border-top:1px solid var(--border);word-break:keep-all}.drafts-dialog .empty-results{padding:42px 12px}.drafts-dialog .empty-results p{margin:0}
@media(max-width:1180px){.topbar{padding-left:24px;padding-right:24px}.topbar-right{gap:6px}.topbar-right>.button{padding:10px 11px;font-size:.8rem}.writing-mode-panel,.free-panel,.student-panel{padding:20px}.profile-grid{grid-template-columns:minmax(0,1fr) minmax(80px,.7fr)}.profile-grid>.field:last-child{grid-column:1/-1}.mode-options{gap:4px}.mode-options button{font-size:.8rem;padding:9px 6px}.student-actions{align-items:flex-start;flex-direction:column;gap:10px}.profile-panel #save-status{display:block;font-size:.73rem;max-width:165px}.preview-bottom .secondary-actions{justify-content:center;column-gap:3px}.preview-bottom .secondary-actions .button{padding-left:5px;padding-right:5px;font-size:.72rem}}
@media(max-width:1000px){.profile-grid{grid-template-columns:minmax(0,1.1fr) minmax(100px,.7fr) minmax(0,1.2fr)}.profile-grid>.field:last-child{grid-column:auto}.student-actions{flex-direction:row;align-items:center;gap:16px}.mode-options button{font-size:.87rem}.preview-bottom .secondary-actions{justify-content:center;gap:15px}.preview-bottom .secondary-actions .button{font-size:.8125rem;padding:10px 12px}.quick-save{max-width:340px;display:flex;margin:8px auto 0}.preview-bottom>p.byte-status{max-width:520px;margin-left:auto;margin-right:auto;text-align:center}}
@media(max-width:640px){.topbar{height:auto;min-height:106px;flex-wrap:wrap;gap:8px;padding:13px 17px 8px}.brand{gap:9px}.brand strong{font-size:.96rem}.topbar-right{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:7px;width:100%}.topbar-right>.button{padding:9px 6px;min-height:42px;font-size:.75rem;gap:6px}.topbar-right>.home-link{font-size:.74rem;padding:10px 4px}.topbar-right #draft-count{font-size:.67rem;min-width:19px;height:19px}.topbar-right #reset-button>span{display:none}.profile-grid{grid-template-columns:minmax(0,1fr) minmax(80px,.65fr);gap:15px 12px}.profile-grid>.field:last-child{grid-column:1/-1}.profile-panel .section-heading{flex-wrap:wrap;gap:10px}.profile-panel #save-status{font-size:.7rem;text-align:left;max-width:none}.writing-mode-panel,.free-panel,.student-panel{padding:20px 17px}.writing-mode-panel .section-heading{margin-bottom:15px}.mode-options{gap:3px;padding:4px;border-radius:10px}.mode-options button{font-size:.75rem;padding:9px 4px;min-height:50px;line-height:1.6}.writing-mode-panel #mode-hint{font-size:.76rem}.free-field{font-size:.82rem}.free-field textarea{font-size:1rem!important;padding:12px!important;min-height:135px}.free-field+.free-field{margin-top:17px}.student-panel .field{max-width:none}.student-actions{align-items:flex-start;flex-direction:column;gap:11px;margin-top:16px}.student-actions>.button{width:100%}.student-actions>p{font-size:.75rem}.preview-bottom .secondary-actions{gap:1px;justify-content:space-between}.preview-bottom .secondary-actions .button{font-size:.74rem;padding:9px 7px}.preview-bottom>p.byte-status{font-size:.72rem;text-align:left;line-height:1.75}.quick-save{max-width:none}.drafts-dialog{padding:21px 17px;border-radius:17px;max-width:calc(100vw - 22px);max-height:88vh}.draft-dialog-header h2{font-size:1.16rem}.draft-dialog-header .eyebrow{font-size:.61rem}.draft-dialog-header .icon-button{width:37px;height:37px}.draft-toolbar{gap:8px;flex-wrap:wrap;margin-top:16px}.draft-toolbar>label{font-size:.78rem}.draft-toolbar>.button{font-size:.73rem;padding:10px 11px;flex:1;max-width:215px}.draft-row{padding:14px 12px}.draft-select strong{font-size:.9rem}.draft-select>span>span{font-size:.7rem}.drafts-dialog .draft-state{font-size:.71rem}.drafts-dialog .draft-description{font-size:.78rem}.drafts-dialog .draft-local-note{font-size:.7rem}.draft-actions .button{min-height:42px}.page-footer{overflow-wrap:anywhere}.toast{font-size:.81rem}}
@media(max-width:360px){.topbar{padding-left:13px;padding-right:13px}.topbar-right{gap:3px}.topbar-right>.button{font-size:.7rem;gap:4px;padding-left:3px;padding-right:3px}.topbar-right>.home-link{font-size:.7rem}.mode-options button{font-size:.7rem}.preview-bottom .secondary-actions .button{font-size:.7rem;padding-left:5px;padding-right:5px}}

/* 네 개의 큰 영역과 두 칸의 선생님 정보로 작성 화면을 간단하게 유지합니다. */
.profile-grid{grid-template-columns:minmax(0,1.5fr) minmax(100px,.7fr)}.profile-grid>.field:last-child{grid-column:auto}.choice-layout{display:block}.category-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:16px 20px;background:#fbfaff;border-right:0;border-bottom:1px solid var(--border);overflow:visible}.category-button{justify-content:center;gap:9px;width:100%;margin:0;min-height:45px;padding:10px 12px;border:1px solid var(--border);background:#fff;font-size:.84rem;text-align:center}.category-button.active{border-color:#ceb9e8;background:#eee8f8}.category-total{display:inline;font-size:.7rem;margin-left:0;color:#756585}.choices-main{padding:20px}.choices-toolbar{gap:12px}.facet-label{font-size:.7rem}.results-heading{margin-top:18px}
@media(max-width:1180px){.profile-grid{grid-template-columns:minmax(0,1.3fr) minmax(100px,.7fr)}.profile-grid>.field:last-child{grid-column:auto}.category-nav{padding:14px 18px;gap:7px}.category-button{font-size:.8rem;padding:10px 7px;gap:6px}.category-total{display:inline}.choices-main{padding:18px}}
@media(max-width:640px){.profile-grid{grid-template-columns:minmax(0,1.2fr) minmax(90px,.8fr);gap:14px 12px}.profile-grid>.field:last-child{grid-column:auto}.category-nav{grid-template-columns:repeat(4,minmax(0,1fr));padding:13px 14px;gap:6px;overflow:visible}.category-button{width:100%;min-height:43px;padding:9px 4px;gap:0;font-size:.78rem;border-radius:8px}.category-total{display:none}.choices-main{padding:17px 14px}.facet-label{font-size:.68rem}}
@media(max-width:360px){.category-nav{gap:4px;padding:12px}.category-button{font-size:.74rem;padding-left:2px;padding-right:2px}}
