/* MAXIMA TRY CHECK / Speech Self-Study: one screen, two historic data formats.
 * This stylesheet affects only this page and keeps the existing shared staff header.
 */
#speechOnePage{--one-ink:#173e34;--one-green:#174d3b;--one-blue:#163b65;--one-line:#d8e5df;--one-muted:#637a73;max-width:1300px;margin:0 auto 65px;padding:30px 24px;color:#263c39}
#speechOnePage *{box-sizing:border-box}
#speechOnePage h1{font-size:clamp(24px,2.7vw,32px);font-weight:800;color:#174d3b;margin:4px 0 11px}
#speechOnePage .one-intro{color:#71847d;font-size:14px;margin:0 0 14px;line-height:1.6}
#speechOnePage .one-home{display:inline-block;margin:3px 0 20px;color:#174d3b;font-size:13px;font-weight:750;text-underline-offset:4px}
#speechOnePage button,#speechOnePage select,#speechOnePage input{font:inherit}
#speechOnePage button{cursor:pointer}
#speechOnePage button:disabled{cursor:default;opacity:.5}
#speechOnePage :is(button,select,input):focus-visible{outline:3px solid #288c72;outline-offset:2px}
#speechOnePage .one-board{border:1px solid #dbe6ee;border-radius:20px;background:#f8fafc;padding:20px;min-width:0}
#speechOnePage .one-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:15px}
#speechOnePage .one-filters label{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--one-ink);font-weight:750;min-width:0}
#speechOnePage .one-filters :is(select,input){min-width:175px;max-width:100%;min-height:46px;padding:9px 12px;border-radius:11px;background:white;border:1px solid #c3d7cd;font-size:14px;color:#244d3c}
#speechOnePage .one-filters button{min-height:46px;border:0;border-radius:11px;background:#087c5d;color:white;padding:11px 19px;font-size:14px;font-weight:800}
#speechOnePage .one-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:14px;align-items:center}
#speechOnePage .one-tabs button{font-size:14px;font-weight:800;min-height:47px;padding:11px 20px;background:#fff;border:1px solid #cbd8e3;border-radius:12px;color:#334c63}
#speechOnePage .one-tabs button.selected{background:#15365e;border-color:#15365e;color:white}
#speechOnePage .one-tabs .one-ppt-launch{margin-left:auto;background:#15365e;color:white}
#speechOnePage .one-tabs .one-ppt-launch:disabled{background:#8a9db2;color:white}
#speechOnePage .one-stages{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 12px}
#speechOnePage .one-stages button{font-size:13px;font-weight:750;padding:10px 13px;min-height:43px;border:1px solid #cad8e4;border-radius:10px;background:white;color:#1b435d}
#speechOnePage .one-stages button.selected{background:#17496c;border-color:#17496c;color:white}
#speechOnePage .one-status{font-size:13px;line-height:1.65;color:#5e7180;min-height:19px;margin:10px 0}
#speechOnePage .one-status.is-error{color:#a83c33;font-weight:750}
#speechOnePage .one-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0}
#speechOnePage .one-count{background:white;border:1px solid #dce6eb;border-radius:12px;padding:12px;display:grid;gap:4px}
#speechOnePage .one-count strong{font-size:24px;color:#1a4061}
#speechOnePage .one-count span{font-size:12px;color:#6d7e8c}
#speechOnePage .one-warning{border:1px solid #efccbb;color:#983d29;background:#fff3eb;border-radius:10px;padding:12px;font-size:13px;margin:8px 0 15px}
#speechOnePage .one-stage-section{background:#fff;border:1px solid #dbe4ed;border-radius:14px;padding:16px;margin:14px 0}
#speechOnePage .one-section-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px;margin-bottom:12px}
#speechOnePage .one-section-head h3{color:#1a4a63;font-size:17px;margin:0;font-weight:800}
#speechOnePage .one-section-head small{font-size:12px;color:#546c7e}
#speechOnePage .one-issue{padding:11px 0;border-bottom:1px solid #edf0f2;display:grid;gap:7px}
#speechOnePage .one-issue:last-child{border-bottom:0}
#speechOnePage .one-issue strong{font-size:15px;color:#193c58;overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.55}
#speechOnePage .one-issue>small{font-size:12px;color:#5d7083}
#speechOnePage .one-persons{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
#speechOnePage .one-person-link{background:#eff9f5;border:1px solid #b7d8c8;color:#175341;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:750}
#speechOnePage .one-muted{color:#6c8190;font-size:12px;line-height:1.65;margin:5px 0}
#speechOnePage .one-roster{border-top:1px solid #e7ebf0;margin-top:12px;padding-top:11px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}
#speechOnePage .one-roster h4{font-size:13px;color:#385d75;flex:1 1 100%;margin:0 0 4px}
#speechOnePage .one-student{background:white;border:1px solid #d8e6df;border-radius:12px;overflow:hidden;margin:10px 0}
#speechOnePage .one-student summary{font-size:14px;cursor:pointer;font-weight:800;color:#174d3b;padding:15px}
#speechOnePage .one-student[open] summary{background:#f0f7f3;border-bottom:1px solid #dce8e0}
#speechOnePage .one-student-body{padding:12px;display:grid;gap:12px}
#speechOnePage .one-history-btn{background:#fff;border:1px solid #b2d4c2;color:#165e48;padding:10px 15px;border-radius:9px;font-size:13px;font-weight:700;justify-self:start}
#speechOnePage .one-history-output,#speechOnePage .one-student-recent{display:grid;gap:11px}
#speechOnePage .one-record{padding:16px;border:1px solid #d8e6df;border-radius:12px;background:#fff}
#speechOnePage .one-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
#speechOnePage .one-record-head h3{color:#174e42;font-size:16px;margin:0}
#speechOnePage .one-badges{display:flex;gap:6px;flex-wrap:wrap}
#speechOnePage .one-badge{font-size:11px;font-weight:800;border-radius:8px;border:1px solid #9fbdd8;background:#eaf3ff;color:#18558c;padding:5px 9px}
#speechOnePage .one-badge.older{background:#f5f7f9;color:#566d7b;border-color:#d9e1e7}
#speechOnePage .one-badge.ongoing{background:#e9f7ee;color:#176548;border-color:#a8d5bc}
#speechOnePage .one-badge.partial{background:#fff4eb;color:#94612d;border-color:#ecc8a7}
#speechOnePage .one-stage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:13px 0}
#speechOnePage .one-stage{display:flex;flex-direction:column;gap:5px;border:1px solid #dae7df;background:#f8fbf8;border-radius:10px;padding:10px;min-width:0}
#speechOnePage .one-stage strong{font-size:12px;color:#234e42;line-height:1.45}
#speechOnePage .one-stage small{font-size:11px;color:#647b71;line-height:1.45}
#speechOnePage .one-stage.completed{background:#f1f6fd;border-color:#a0c1de}
#speechOnePage .one-stage.completed strong{color:#1a5c90}
#speechOnePage .one-stage.active{background:#eef8f1;border-color:#7fc4a4}
#speechOnePage .one-progress{height:6px;border-radius:7px;background:#e0ece4;overflow:hidden}
#speechOnePage .one-progress span{display:block;background:#198764;height:100%;max-width:100%}
#speechOnePage .one-review{background:#f8fcfa;border:1px solid #dfece5;border-radius:10px;padding:12px;margin:12px 0}
#speechOnePage .one-review h4{font-size:14px;color:#175742;margin:0 0 9px}
#speechOnePage .one-review p{font-size:13px;line-height:1.6;margin:6px 0;overflow-wrap:anywhere}
#speechOnePage .one-chips{display:flex;gap:6px;flex-wrap:wrap}
#speechOnePage .one-chips span{font-size:12px;border-radius:7px;border:1px solid #bdd8c9;background:#eff8f2;padding:5px 8px}
#speechOnePage .one-wrong{display:grid;gap:6px;margin:12px 0}
#speechOnePage .one-wrong div{border:1px solid #ebcdbb;background:#fff8f3;border-radius:9px;padding:9px;font-size:12px;color:#8c4e2b}
#speechOnePage .one-wrong small{display:block;font-weight:500;line-height:1.5;margin:5px 0 0}
#speechOnePage .one-empty{padding:20px;text-align:center;color:#647c74;font-size:13px}
#onePptDialog{position:fixed;inset:0;z-index:2147483000;background:#f9fcfa;overflow-y:auto;color:#143d31}
#onePptDialog[hidden]{display:none!important}
body.one-ppt-open{overflow:hidden}
#onePptDialog .one-ppt-layout{min-height:100dvh;display:flex;flex-direction:column;gap:21px;justify-content:space-between;padding:clamp(16px,3vw,50px) clamp(15px,4vw,68px)}
#onePptDialog .one-ppt-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #dce9e1;padding-bottom:14px;font-size:clamp(15px,1.5vw,24px);font-weight:800}
#onePptDialog .one-ppt-header span:first-child{background:#e8f4ec;padding:9px 14px;border-radius:40px}
#onePptDialog .one-ppt-question{flex:1;min-height:24vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;text-align:center}
#onePptDialog .one-ppt-lesson{color:#778b7e;font-weight:800;font-size:clamp(15px,1.6vw,23px)}
#onePptDialog .one-ppt-instruction,#onePptDialog .one-ppt-sentence,#onePptDialog .one-ppt-finished{font-size:clamp(30px,4.7vw,72px);color:#174d3b;font-weight:850;line-height:1.4;max-width:1400px;overflow-wrap:anywhere;margin:0}
#onePptDialog .one-ppt-answer{border:1px solid #b8dbc9;border-radius:22px;background:#eef8f0;padding:clamp(16px,2.5vw,35px);max-width:1450px;align-self:center;width:100%}
#onePptDialog .one-ppt-answer[hidden]{display:none!important}
#onePptDialog .one-ppt-answer h3{font-size:clamp(20px,2vw,30px);margin:0 0 14px}
#onePptDialog .one-ppt-answerline{font-size:clamp(27px,3.6vw,54px);line-height:1.4;font-weight:800;overflow-wrap:anywhere}
#onePptDialog .one-ppt-private{padding-top:10px;border-top:1px solid #cadfd1}
#onePptDialog .one-ppt-private p{font-size:14px;color:#426f57}
#onePptDialog .one-ppt-names{border:1px solid #95c6a9;border-radius:10px;background:white;color:#19543f;font-weight:700;padding:12px 18px;cursor:pointer}
#onePptDialog .one-ppt-person{padding:7px 0;border-bottom:1px solid #d6e5dd;font-size:16px;color:#193f34}
#onePptDialog .one-ppt-controls{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
#onePptDialog .one-ppt-controls button{min-height:46px;min-width:110px;padding:9px 16px;font-size:16px;border-radius:10px;border:1px solid #b5d2c3;background:#fff;color:#174c3a;font-weight:800;cursor:pointer}
#onePptDialog .one-ppt-controls .one-ppt-reveal{background:#174d3b;color:white}
#onePptDialog .one-ppt-controls button:disabled{opacity:.5;cursor:default}
#onePptDialog .one-ppt-tip{color:#789086;text-align:center;font-size:12px}
@media(max-width:900px){#speechOnePage .one-stage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:670px){#speechOnePage{padding:18px 12px;margin-bottom:30px}#speechOnePage .one-board{padding:12px}#speechOnePage .one-filters label{flex:1 1 100%}#speechOnePage .one-filters :is(select,input){min-width:0;flex:1;max-width:none}#speechOnePage .one-filters button{width:100%}#speechOnePage .one-tabs button{flex:1 1 auto}#speechOnePage .one-tabs .one-ppt-launch{margin-left:0;flex:1 1 100%}#speechOnePage .one-stages button{flex:1 1 43%;font-size:12px}#speechOnePage .one-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#speechOnePage .one-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#speechOnePage .one-record{padding:11px}#onePptDialog .one-ppt-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#onePptDialog .one-ppt-controls button{min-width:0}}
/* Keep the existing MAXIMA shared staff header. Only small-screen overflow guard. */
@media(max-width:620px){.staff-topbar{overflow:hidden}.staff-topbar-inner{min-width:0;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:6px;padding:8px}.staff-brand{min-width:0;display:flex;align-items:center;gap:5px}.staff-brand .staff-workspace{display:none}.staff-brand .staff-wordmark{font-size:15px;white-space:nowrap}.staff-right{display:flex;flex:0 0 auto;align-items:center;gap:5px}.staff-account{min-width:0;display:flex;align-items:center;gap:5px}.staff-avatar{display:none}.staff-account-copy{max-width:85px;min-width:0}.staff-account-copy strong{font-size:11px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.staff-account-copy small{display:none}.staff-top-action{min-height:32px;padding:6px 8px;font-size:11px}}

/* Grammar TRY-style student-name popup. Only the "연습한 학생" summary becomes clickable. */
#speechOnePage button.one-count.one-practiced-trigger{font:inherit;text-align:left;appearance:none;color:inherit;cursor:pointer;min-width:0}
#speechOnePage button.one-count.one-practiced-trigger:hover{border-color:#47866d;background:#f4faf6}
#speechOnePage button.one-count.one-practiced-trigger:focus-visible{outline:3px solid #9abdab;outline-offset:2px}
#onePracticedNames.one-practiced-modal{position:fixed;box-sizing:border-box;z-index:2147482900;
 border:1px solid #d5e5da;border-radius:19px;padding:22px;
 width:min(calc(100vw - 32px),380px);max-width:calc(100vw - 32px);
 max-height:min(80vh,560px);overflow:auto;margin:auto;color:#243b2e;
 background:#fff;box-shadow:0 20px 60px rgba(19,52,37,.2)}
#onePracticedNames.one-practiced-modal::backdrop{background:rgba(16,38,27,.42)}
#onePracticedNames .one-practiced-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 13px}
#onePracticedNames .one-practiced-head h3{font-size:19px;color:#174d3b;margin:0;font-weight:900}
#onePracticedNames .one-practiced-head button{margin:0;min-height:35px;padding:7px 12px;border:1px solid #d5e5da;background:white;color:#174d3b;border-radius:10px;font-size:12px;font-weight:750;cursor:pointer}
#onePracticedNames .one-practiced-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
#onePracticedNames .one-practiced-list li{border:1px solid #e0eae3;background:#f7faf8;border-radius:10px;padding:11px 13px;font-size:16px;font-weight:750;overflow-wrap:anywhere}
