*{box-sizing:border-box}body{margin:0;background:#f5f7fb;color:#172033;font-family:Arial,"Noto Sans KR",sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.topbar{height:68px;display:flex;align-items:center;gap:28px;padding:0 28px;background:#fff;border-bottom:1px solid #dfe5ef;position:sticky;top:0;z-index:10}.brand{display:flex;flex-direction:column;line-height:1.15;min-width:150px}.brand strong,.brand-block strong{font-size:18px;letter-spacing:0}.brand span,.brand-block span{font-size:12px;color:#6b7280}.topbar nav{display:flex;gap:14px;flex:1}.topbar nav a{font-weight:700;color:#334155}.userbar{display:flex;align-items:center;gap:10px;color:#334155}.userbar form{margin:0}.userbar button{border:1px solid #cbd5e1;background:#fff;border-radius:6px;padding:7px 10px;cursor:pointer}.pill{display:inline-flex;align-items:center;border-radius:999px;background:#e8eef8;color:#27415f;padding:4px 9px;font-size:12px;font-weight:700}.pill.muted{background:#eef2f7;color:#526071}.page{max-width:1180px;margin:0 auto;padding:32px 24px 64px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.eyebrow{margin:0 0 8px;color:#3563a6;font-weight:700;font-size:13px}.page h1{margin:0;font-size:32px;letter-spacing:0}.page-head p:last-child{margin:8px 0 0;color:#607086}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric,.panel,.course-card,.form-panel{background:#fff;border:1px solid #dfe5ef;border-radius:8px}.metric{padding:18px}.metric span{display:block;color:#64748b;font-size:13px}.metric strong{display:block;margin-top:8px;font-size:30px}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.panel{padding:20px;margin-bottom:18px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel h2{margin:0;font-size:18px}.status-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.status-row span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px;color:#64748b}.status-row strong{display:block;color:#172033;font-size:22px;margin-top:4px}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #edf1f7;padding:11px 8px;font-size:14px}th{color:#64748b;font-size:12px}.empty-cell,.empty-state{color:#64748b;text-align:center;padding:28px}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.course-card{padding:16px}.thumb{height:120px;border-radius:6px;background:linear-gradient(135deg,#d8e3f7,#edf2f7);margin-bottom:14px}.course-card h2{font-size:20px;margin:12px 0 8px}.course-card p{color:#607086;min-height:44px}.progress{height:8px;background:#e5eaf2;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:#2f6ecb}.meta{display:flex;justify-content:space-between;color:#64748b;font-size:13px;margin-top:10px}.login-page{background:#eef3f8}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr)}.login-hero{padding:72px;display:flex;flex-direction:column;justify-content:center;background:#152238;color:#fff}.brand-block{display:flex;flex-direction:column;margin-bottom:44px}.login-hero h1{font-size:40px;letter-spacing:0;margin:0 0 16px}.login-hero p{font-size:17px;color:#c7d2e5;max-width:560px}.login-points{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}.login-points span{border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:8px 12px;color:#e2e8f0}.login-panel{display:flex;align-items:center;justify-content:center;padding:32px}.form-panel{width:100%;max-width:420px;padding:28px}.form-panel h2{margin:0 0 20px}.form-panel label{display:block;margin-bottom:14px}.form-panel label span{display:block;margin-bottom:6px;font-weight:700;color:#334155}.form-panel input{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:12px;background:#fff}.primary{width:100%;border:0;border-radius:6px;background:#245eb8;color:#fff;padding:13px;font-weight:700;cursor:pointer}.switch-link{display:block;margin-top:14px;color:#3563a6;text-align:center}.alert{background:#fff1f2;color:#be123c;border:1px solid #fecdd3;border-radius:6px;padding:10px;margin-bottom:14px}@media(max-width:800px){.login-shell{grid-template-columns:1fr}.login-hero{padding:36px}.metric-grid,.split-grid{grid-template-columns:1fr}.topbar{height:auto;align-items:flex-start;flex-direction:column;padding:16px}.userbar{flex-wrap:wrap}.page{padding:24px 16px}.login-hero h1{font-size:30px}}

.text-link{color:#245eb8;font-weight:700}.button-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd5e1;background:#fff;border-radius:6px;padding:9px 12px;font-weight:700;color:#334155}.primary-small{background:#245eb8;border-color:#245eb8;color:#fff}.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stack-list{display:grid;gap:12px}.stack-list.compact{gap:8px}.list-card{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid #dfe5ef;border-radius:8px;padding:16px}.list-card h2,.list-card h3{margin:8px 0 5px}.list-card h2{font-size:20px}.list-card h3{font-size:17px}.list-card p{margin:0;color:#64748b}.page-row{align-items:center}.progress-panel{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:20px}.progress-panel span{display:block;color:#64748b}.progress-panel strong{display:block;font-size:28px;margin-top:4px}.pagination-wrap{margin-top:18px;color:#64748b}.learning-page{max-width:1120px;margin:0 auto;padding:28px 24px 80px}.learning-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}.learning-head h1{margin:0;font-size:30px}.learning-head p{margin:8px 0 0;color:#64748b}.notice{background:#ecfdf5;border:1px solid #bbf7d0;color:#047857;border-radius:8px;padding:12px 14px;margin-bottom:16px}.learning-surface{background:#fff;border:1px solid #dfe5ef;border-radius:8px;padding:20px;margin-bottom:18px}.media-box{background:#0f172a;border-radius:8px;overflow:hidden}.media-box video{display:block;width:100%;max-height:620px}.package-box,.content-box{min-height:280px;padding:24px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.learning-actions{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(245,247,251,.94);border-top:1px solid #dfe5ef;padding:14px 0;margin-top:20px}.learning-actions>div{display:flex;gap:10px}.learning-actions form{margin:0}@media(max-width:800px){.metric-grid.three,.progress-panel{grid-template-columns:1fr}.learning-head,.learning-actions,.list-card{align-items:stretch;flex-direction:column}.learning-actions>div{flex-direction:column}}

.card-action{margin-top:14px;width:100%}

.event-card.is-completed{border-color:#86efac;background:#f0fdf4}.event-card.is-completed .event-status{background:#dcfce7;color:#166534}.event-submit:disabled{opacity:.75;cursor:default}

.filter-form{display:flex;gap:10px;margin-bottom:16px}.filter-form input,.form-stack input,.form-stack select{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:10px;background:#fff}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.form-stack{display:grid;gap:14px}.form-stack h2{margin:0}.form-stack label span{display:block;margin-bottom:6px;font-weight:700;color:#334155}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:900px){.form-grid,.two-col{grid-template-columns:1fr}.filter-form{flex-direction:column}}

.filter-form.wide{grid-template-columns:minmax(180px,1.5fr) minmax(180px,1.3fr) 160px auto}.filter-form.wide{display:grid}.inline-form{margin:0}.inline-form select{border:1px solid #cbd5e1;border-radius:6px;padding:7px;background:#fff}.danger-link{border:0;background:transparent;color:#be123c;font-weight:700;cursor:pointer}.subtle{color:#64748b;font-size:12px}@media(max-width:900px){.filter-form.wide{display:flex}}

.head-actions,.row-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row-actions form{margin:0}.form-stack textarea{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:10px;background:#fff;resize:vertical}.three-col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.check-row{display:flex!important;align-items:center;gap:8px}.check-row input{width:auto!important}@media(max-width:900px){.three-col{grid-template-columns:1fr}.head-actions{align-items:stretch;flex-direction:column}}

.nested-list{display:grid;gap:8px;margin-top:12px}.nested-item,.nested-event{display:flex;justify-content:space-between;gap:12px;border:1px solid #e2e8f0;border-radius:6px;padding:10px;background:#f8fafc}.nested-item span,.nested-event span{display:block;color:#64748b;font-size:12px;margin-top:4px}.nested-event{margin-left:20px;background:#fff}.compact-actions{gap:6px}.compact-actions .button-link,.compact-actions .danger-link{font-size:12px;padding:6px 8px}.check-stack{display:grid;align-content:end;gap:8px}@media(max-width:900px){.nested-item,.nested-event{flex-direction:column}.nested-event{margin-left:0}}

.answer-json{max-width:260px;max-height:120px;overflow:auto;white-space:pre-wrap;margin:0;font-size:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px}.selected-row{background:#f0f7ff}.wide{max-width:1360px}

.package-page{max-width:1440px;margin:0 auto;padding:24px}.package-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.package-head h1{margin:0;font-size:28px}.package-runner-frame{height:calc(100vh - 170px);min-height:620px;background:#fff;border:1px solid #dfe5ef;border-radius:8px;overflow:hidden}.package-frame{display:block;width:100%;height:100%;border:0;background:#fff}@media(max-width:800px){.package-page{padding:16px}.package-head{align-items:stretch;flex-direction:column}.package-runner-frame{height:calc(100vh - 220px);min-height:520px}}

.home-page{background:#eef3f8}.home-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 24px}.home-hero{width:100%;max-width:1120px;background:#152238;color:#fff;border-radius:8px;padding:56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:48px;align-items:center}.home-copy h1{margin:0 0 18px;font-size:40px;letter-spacing:0;line-height:1.2}.home-copy p{margin:0;color:#c7d2e5;font-size:17px;line-height:1.65}.home-copy .eyebrow{color:#93c5fd;margin-bottom:12px}.home-actions{display:grid;gap:14px}.home-card{display:block;background:#fff;color:#172033;border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:22px;transition:transform .15s ease,border-color .15s ease}.home-card:hover{transform:translateY(-2px);border-color:#93c5fd}.home-card span{display:block;color:#3563a6;font-size:13px;font-weight:700;margin-bottom:8px}.home-card strong{display:block;font-size:22px;margin-bottom:8px}.home-card small{display:block;color:#64748b;line-height:1.45}.home-card.primary-card{background:#245eb8;color:#fff;border-color:#5b8ee0}.home-card.primary-card span,.home-card.primary-card small{color:#dbeafe}@media(max-width:800px){.home-shell{align-items:stretch;padding:0}.home-hero{border-radius:0;grid-template-columns:1fr;padding:36px 24px;gap:32px}.home-copy h1{font-size:30px}.home-card:hover{transform:none}}

.public-home{background:linear-gradient(180deg,#fcfcff 0%,#f6f7fb 100%);color:#121826}.public-wrap{width:min(calc(100% - 40px),1180px);margin:0 auto}.public-announce{background:#151c48;color:#dbe3ff;border-bottom:1px solid rgba(255,255,255,.08)}.public-announce-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;font-weight:700}.public-announce strong{color:#fff}.public-top{position:sticky;top:0;z-index:30;background:rgba(252,252,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid #dfe5ef}.public-top-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.public-brand{display:inline-flex;align-items:center;gap:14px;text-decoration:none}.public-brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(135deg,#5b48ff 0%,#2e5bff 100%);color:#fff;font-weight:900}.public-brand-copy strong{display:block;font-size:17px;line-height:1.1}.public-brand-copy span{display:block;margin-top:4px;color:#596277;font-size:12px;font-weight:700}.public-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.public-nav a{height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border-radius:999px;color:#596277;font-size:14px;font-weight:800}.public-nav a:hover{background:#ece8ff;color:#4533e0}.public-nav a.primary{background:linear-gradient(135deg,#5b48ff 0%,#2e5bff 100%);color:#fff}.public-hero{padding:34px 0 0}.public-hero-shell{width:min(calc(100% - 40px),1240px);margin:0 auto;padding:34px;border-radius:8px;background:linear-gradient(135deg,#171d46 0%,#1f275a 58%,#273379 100%);color:#f7f8ff;box-shadow:0 20px 60px rgba(18,24,38,.08)}.public-hero-inner{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:32px;align-items:stretch}.public-hero-copy{padding:20px 4px 10px}.public-eyebrow{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);color:#dce3ff;font-size:13px;font-weight:900}.public-hero-copy h1{margin:22px 0 0;font-size:54px;line-height:1.08;letter-spacing:0;font-weight:900}.public-hero-copy p{max-width:680px;margin:22px 0 0;color:#dbe3ff;font-size:18px;line-height:1.72}.public-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.public-btn{min-width:148px;height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 22px;border-radius:999px;font-size:15px;font-weight:900}.public-btn.primary{background:#fff;color:#1b2250}.public-btn.secondary{background:rgba(255,255,255,.08);color:#f7f8ff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}.public-chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.public-chips span{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.08);color:#dde4ff;font-size:13px;font-weight:800}.public-preview{display:grid;gap:16px;align-content:start}.public-panel{border-radius:8px;background:rgba(255,255,255,.97);color:#121826;box-shadow:0 10px 30px rgba(27,39,94,.08)}.public-preview-card{padding:18px}.public-preview-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.public-preview-head strong{display:block;font-size:18px;font-weight:900}.public-preview-head span{display:block;margin-top:4px;color:#596277;font-size:13px;font-weight:800}.public-tag,.public-signal-row>span,.public-stat-card>span,.public-feature-grid article>span,.public-journey-grid article>span{display:inline-flex;align-items:center;border-radius:999px;background:#ece8ff;color:#4533e0;font-size:12px;font-weight:900}.public-tag{height:34px;padding:0 12px;white-space:nowrap}.public-shot{aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:#d9e0ef}.public-shot img,.public-course-thumb img{width:100%;height:100%;object-fit:cover;display:block}.public-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.public-mini-grid div{padding:14px 12px;border-radius:8px;background:#f3f0ff}.public-mini-grid strong{display:block;font-size:18px}.public-mini-grid span{display:block;margin-top:5px;color:#596277;font-size:12px;font-weight:800}.public-signal-card{display:grid;gap:12px;padding:18px}.public-signal-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px 16px;border-radius:8px;background:#f8f9fc;border:1px solid #e5e9f4}.public-signal-row strong{display:block;font-size:15px}.public-signal-row div span{display:block;margin-top:4px;color:#596277;font-size:12px;font-weight:700}.public-signal-row>span{height:34px;padding:0 12px}.public-section{width:min(calc(100% - 40px),1180px);margin:0 auto;padding:88px 0 0}.public-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.public-section-head h2{margin:0;font-size:40px;line-height:1.1;letter-spacing:0}.public-section-head p{max-width:680px;margin:12px 0 0;color:#596277;font-size:16px;line-height:1.7}.public-section-link{color:#4533e0;font-size:14px;font-weight:900;white-space:nowrap}.public-stats-grid,.public-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.public-stat-card,.public-course-card,.public-feature-grid article,.public-journey-grid article{background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.08)}.public-stat-card{padding:28px}.public-stat-card>span{height:30px;padding:0 12px}.public-stat-card strong{display:block;margin-top:16px;font-size:42px;line-height:1;color:#1b2351}.public-stat-card p{margin:10px 0 0;color:#596277;font-size:15px;font-weight:800}.public-course-card{overflow:hidden}.public-course-thumb{aspect-ratio:16/10;background:#dae2f1}.public-course-body{padding:20px}.public-course-body>span{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:999px;background:#eef4ff;color:#2e5bff;font-size:12px;font-weight:900}.public-course-body h3{min-height:64px;margin:14px 0 8px;font-size:24px;line-height:1.3;letter-spacing:0}.public-course-body p{min-height:78px;margin:0;color:#596277;font-size:15px;line-height:1.7}.public-course-body div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;color:#2f3b61;font-size:14px;font-weight:900}.public-course-body a{color:#4533e0}.public-feature-grid,.public-journey-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.public-feature-grid article,.public-journey-grid article{padding:24px}.public-feature-grid article>span{width:42px;height:42px;justify-content:center;border-radius:8px}.public-feature-grid h3{margin:16px 0 10px;font-size:22px;line-height:1.3;letter-spacing:0}.public-feature-grid p,.public-journey-grid p{margin:0;color:#596277;font-size:15px;line-height:1.7}.public-journey-grid article{position:relative;background:linear-gradient(180deg,#fff 0%,#f8faff 100%)}.public-journey-grid article:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;border-radius:8px 8px 0 0;background:linear-gradient(90deg,#5b48ff 0%,#2e5bff 100%)}.public-journey-grid article>span{height:30px;padding:0 12px}.public-journey-grid strong{display:block;margin-top:18px;font-size:21px;line-height:1.3}.public-empty{padding:24px;border-radius:8px;background:#fff;border:1px dashed #cfd7ea;color:#596277;font-weight:800}.public-footer{padding:88px 0 34px}.public-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 0;border-top:1px solid #e5e9f4;color:#596277;font-size:13px;font-weight:700}.public-footer a{color:inherit}@media(max-width:1120px){.public-hero-inner,.public-course-grid,.public-feature-grid,.public-journey-grid{grid-template-columns:1fr 1fr}.public-stats-grid{grid-template-columns:1fr}}@media(max-width:820px){.public-wrap,.public-section,.public-hero-shell{width:min(calc(100% - 28px),1180px)}.public-announce-inner,.public-top-inner,.public-section-head,.public-footer-inner{display:block}.public-top-inner{padding:14px 0}.public-nav{margin-top:14px}.public-nav a{flex:1 1 auto}.public-hero-shell{padding:22px}.public-hero-inner,.public-course-grid,.public-feature-grid,.public-journey-grid,.public-mini-grid{grid-template-columns:1fr}.public-hero-copy h1{font-size:34px}.public-section{padding-top:64px}.public-section-head h2{font-size:30px}.public-course-body h3,.public-course-body p{min-height:0}.public-announce-inner div+div{margin-top:8px}}

.static-top{position:relative}.public-page-main{min-height:calc(100vh - 82px)}.first-section{padding-top:56px}.public-page-title{margin:0;font-size:44px;line-height:1.1;letter-spacing:0}.sample-card-body{min-height:260px;display:flex;flex-direction:column}.sample-card-body div{margin-top:auto}.public-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.public-info-grid article,.public-support-panel{background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.08)}.public-info-grid article{padding:24px}.public-info-grid strong,.public-support-panel strong{display:block;font-size:20px;margin-bottom:10px}.public-info-grid p,.public-support-panel p{margin:0;color:#596277;line-height:1.7}.public-support-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px}.support-btn{background:#245eb8!important;color:#fff!important}.sample-page{max-width:1440px;margin:0 auto;padding:24px}.sample-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.sample-head h1{margin:0;font-size:30px;letter-spacing:0}.sample-head p:last-child{margin:8px 0 0;color:#64748b}.sample-surface{background:#fff;border:1px solid #dfe5ef;border-radius:8px;overflow:hidden;min-height:620px}.sample-frame{display:block;width:100%;height:calc(100vh - 190px);min-height:620px;border:0;background:#fff}@media(max-width:900px){.public-info-grid{grid-template-columns:1fr}.public-support-panel,.sample-head{align-items:stretch;flex-direction:column}.sample-page{padding:16px}.sample-frame{height:calc(100vh - 260px);min-height:520px}.public-page-title{font-size:34px}}

.public-nav a.is-active{background:#ece8ff;color:#4533e0}.public-menu-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.public-menu-grid a{display:block;background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.08);padding:22px}.public-menu-grid strong{display:block;font-size:20px;margin-bottom:10px}.public-menu-grid span{display:block;color:#596277;line-height:1.55}@media(max-width:1120px){.public-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.public-menu-grid{grid-template-columns:1fr}}

.public-nav a.primary{height:40px;padding:0 18px;border-radius:999px;font-size:14px;box-shadow:0 10px 22px rgba(91,72,255,.18)}.public-hero .public-actions .public-btn{min-width:132px}.public-hero .public-actions .public-btn.secondary{background:rgba(255,255,255,.08);color:#f7f8ff}

.public-top .public-nav a.primary{width:auto!important;min-width:112px!important;max-width:150px!important;flex:0 0 auto!important;height:40px!important;padding:0 18px!important;border-radius:999px!important;font-size:14px!important;line-height:40px!important;white-space:nowrap!important}.public-top .public-nav{flex:0 1 auto!important;justify-content:flex-end!important}.public-top .public-top-inner{align-items:center!important}.public-top .public-brand{flex:0 0 auto!important}

.value-section{padding-top:72px}.value-flow{display:grid;grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr) 52px minmax(0,1fr);align-items:center;gap:14px}.value-node{min-height:260px;background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.08);padding:26px;position:relative;overflow:hidden}.value-node:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,#5b48ff 0%,#2e5bff 100%)}.value-node>span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;background:#ece8ff;color:#4533e0;font-size:14px;font-weight:900}.value-node strong{display:block;margin-top:18px;font-size:24px;line-height:1.25}.value-node p{margin:12px 0 0;color:#596277;line-height:1.7}.node-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.node-tags em{font-style:normal;border-radius:999px;background:#eef4ff;color:#2e5bff;padding:7px 10px;font-size:12px;font-weight:900}.value-arrow{display:grid;place-items:center;width:52px;height:52px;border-radius:999px;background:#151c48;color:#fff;font-size:24px;font-weight:900}.value-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.value-points div{background:#f8f9fc;border:1px solid #e5e9f4;border-radius:8px;padding:18px}.value-points strong{display:block;font-size:17px;margin-bottom:8px}.value-points span{display:block;color:#596277;line-height:1.55}@media(max-width:1000px){.value-flow{grid-template-columns:1fr}.value-arrow{width:100%;height:42px;border-radius:8px;transform:rotate(90deg)}.value-points{grid-template-columns:1fr}.value-node{min-height:auto}}

.learner-dashboard-page{background:#f6f7fb}.learner-shell{width:min(calc(100% - 40px),1180px);margin:0 auto;padding:34px 0 72px}.learner-hero-panel{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;padding:30px;border-radius:8px;background:#fff;border:1px solid #e5e9f4;box-shadow:0 10px 30px rgba(27,39,94,.06)}.learner-hero-panel h1{margin:0;font-size:36px;letter-spacing:0}.learner-hero-panel p:last-child{max-width:720px;margin:10px 0 0;color:#596277;line-height:1.7}.learner-summary{min-width:130px;border-radius:8px;background:#f3f0ff;padding:18px;text-align:center}.learner-summary span{display:block;color:#596277;font-size:13px;font-weight:800}.learner-summary strong{display:block;margin-top:6px;font-size:34px;color:#1b2351}.learner-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.learner-course-card{overflow:hidden;background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.08)}.learner-thumb{aspect-ratio:16/10;background:#dae2f1;overflow:hidden}.learner-thumb img{display:block;width:100%;height:100%;object-fit:cover}.learner-course-body{padding:20px}.learner-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.status-pill{background:#eef4ff;color:#2e5bff}.learner-percent{color:#4533e0;font-size:13px;font-weight:900}.learner-course-card h2{min-height:58px;margin:0 0 10px;font-size:22px;line-height:1.32;letter-spacing:0}.learner-course-card p{min-height:78px;margin:0;color:#596277;font-size:15px;line-height:1.7}.learner-progress{margin-top:16px}.learner-course-card .button-link.primary-small{width:100%;height:44px;margin-top:16px;border-radius:6px;background:#245eb8;border-color:#245eb8;color:#fff}.topbar .brand{cursor:pointer}@media(max-width:1000px){.learner-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.learner-shell{width:min(calc(100% - 28px),1180px);padding-top:20px}.learner-hero-panel{align-items:stretch;flex-direction:column;padding:22px}.learner-course-grid{grid-template-columns:1fr}.learner-course-card h2,.learner-course-card p{min-height:0}}

.package-popup-open{cursor:pointer}.package-box{display:grid;gap:14px;align-content:start}.package-launcher{width:min(calc(100% - 40px),760px);margin:0 auto;padding:48px 0}.package-launcher-panel{padding:30px}.package-launcher-panel h1{margin:0 0 12px;font-size:30px;letter-spacing:0}.package-launcher-panel p{color:#596277;line-height:1.7}.package-launcher-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.package-launcher-actions .primary{width:auto;min-width:180px}.package-runner-frame,.package-frame{display:none!important}

.learner-study-page{background:#f6f7fb}.study-shell{width:min(calc(100% - 40px),1120px);margin:0 auto;padding:34px 0 72px}.study-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.study-head h1{margin:0;font-size:34px;letter-spacing:0}.study-head p:last-child{margin:8px 0 0;color:#596277}.study-overview-card{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr);gap:0;background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.08);overflow:hidden}.study-thumb{min-height:360px;background:#dae2f1}.study-thumb img{display:block;width:100%;height:100%;object-fit:cover}.study-summary{padding:30px;display:flex;flex-direction:column;justify-content:center}.study-summary h2{margin:16px 0 12px;font-size:30px;line-height:1.25;letter-spacing:0}.study-summary p{margin:0;color:#596277;line-height:1.75}.study-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0}.study-meta-grid div{border-radius:8px;background:#f3f0ff;padding:14px}.study-meta-grid strong{display:block;font-size:22px;color:#1b2351}.study-meta-grid span{display:block;margin-top:4px;color:#596277;font-size:12px;font-weight:800}.study-primary-action{width:auto!important;min-width:156px;align-self:flex-start;border:0;border-radius:6px;background:#245eb8;color:#fff;padding:12px 22px;font-weight:900;cursor:pointer}.study-content-surface{margin-top:18px}.study-activity-panel{margin-top:18px;background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.05);padding:22px}.study-activity-panel .panel-head span{color:#596277;font-size:13px;font-weight:800}.study-activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.study-activity-list article{border:1px solid #e5e9f4;border-radius:8px;background:#f8f9fc;padding:16px}.study-activity-list article>span{display:inline-flex;border-radius:999px;background:#eef4ff;color:#2e5bff;padding:5px 9px;font-size:12px;font-weight:900}.study-activity-list strong{display:block;margin-top:10px;font-size:17px}.study-activity-list p{margin:6px 0 0;color:#596277}.study-nav-actions{display:flex;justify-content:flex-end;margin-top:18px}.study-nav-actions>div{display:flex;gap:10px;flex-wrap:wrap}.study-nav-actions .primary-small{background:#245eb8;border-color:#245eb8;color:#fff}@media(max-width:900px){.study-head{align-items:stretch;flex-direction:column}.study-overview-card{grid-template-columns:1fr}.study-thumb{min-height:220px}.study-activity-list,.study-meta-grid{grid-template-columns:1fr}.study-summary{padding:22px}.study-summary h2{font-size:24px}}

.learner-course-map-page{background:#f6f7fb}.course-map-shell{width:min(calc(100% - 40px),1180px);margin:0 auto;padding:34px 0 72px}.course-map-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px;padding:28px;background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.06)}.course-map-hero h1{margin:0;font-size:34px;letter-spacing:0}.course-map-hero p:last-child{max-width:760px;margin:10px 0 0;color:#596277;line-height:1.7}.course-progress-summary{display:grid;grid-template-columns:180px 180px 1fr;gap:14px;align-items:center;margin-bottom:18px}.course-progress-summary>div{background:#fff;border:1px solid #e5e9f4;border-radius:8px;padding:18px;box-shadow:0 10px 30px rgba(27,39,94,.05)}.course-progress-summary span{display:block;color:#596277;font-size:13px;font-weight:800}.course-progress-summary strong{display:block;margin-top:6px;font-size:26px;color:#1b2351}.summary-progress{height:74px;position:relative;background:#fff!important}.summary-progress:before{content:"";position:absolute;left:18px;right:18px;top:50%;height:10px;border-radius:999px;background:#e5e9f4;transform:translateY(-50%)}.summary-progress>span{position:absolute;left:18px;top:50%;height:10px;border-radius:999px;background:#245eb8;transform:translateY(-50%)}.course-page-map{background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.06);padding:24px}.course-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.course-map-head h2{margin:0;font-size:24px}.course-map-head p{margin:6px 0 0;color:#596277}.course-page-card{display:grid;grid-template-columns:minmax(0,1.4fr) 150px minmax(280px,1fr) 120px;gap:16px;align-items:center;border:1px solid #e5e9f4;border-radius:8px;background:#f8f9fc;padding:16px;margin-bottom:12px}.course-page-card.is-extra-page{display:none}.page-card-main{display:flex;gap:14px;align-items:center;min-width:0}.page-index{width:42px;height:42px;border-radius:8px;background:#151c48;color:#fff;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.page-card-copy{min-width:0}.page-card-copy h3{margin:8px 0 4px;font-size:19px;line-height:1.3}.page-card-copy p{margin:0;color:#596277}.page-progress-graph{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:center}.ring{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#245eb8 calc(var(--value) * 1%),#e5e9f4 0)}.ring span{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:12px;font-weight:900;color:#1b2351}.mini-progress{height:8px;border-radius:999px;background:#e5e9f4;overflow:hidden}.mini-progress span{display:block;height:100%;background:#245eb8}.page-event-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.event-chip{display:inline-flex;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;background:#eef2f7;color:#526071;padding:6px 9px;font-size:12px;font-weight:800}.event-chip.is-done{background:#dcfce7;color:#166534}.event-chip.is-empty{background:#f8fafc;color:#94a3b8}.event-more{border:0;border-radius:999px;background:#ece8ff;color:#4533e0;padding:6px 10px;font-size:12px;font-weight:900;cursor:pointer}.event-hidden-list{display:contents}.page-card-action .button-link{width:100%;justify-content:center}.page-list-more-wrap{display:flex;justify-content:center;margin-top:18px}@media(max-width:1050px){.course-page-card{grid-template-columns:1fr}.page-progress-graph{grid-template-columns:64px minmax(0,1fr)}.page-card-action .button-link{width:auto}.course-progress-summary{grid-template-columns:1fr}.course-map-hero,.course-map-head{align-items:stretch;flex-direction:column}}@media(max-width:700px){.course-map-shell{width:min(calc(100% - 28px),1180px);padding-top:20px}.course-page-map,.course-map-hero{padding:18px}.page-card-main{align-items:flex-start}.page-event-row{display:block}.event-chip,.event-more{margin:3px 3px 3px 0}.event-hidden-list{display:inline}}

.course-visual-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:stretch;margin-bottom:18px;background:#fff;border:1px solid #e5e9f4;border-radius:8px;box-shadow:0 10px 30px rgba(27,39,94,.06);overflow:hidden}.course-visual-copy{padding:30px}.course-visual-copy h1{margin:0;font-size:34px;letter-spacing:0}.course-visual-copy p{max-width:780px;margin:12px 0 0;color:#596277;line-height:1.7}.course-visual-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.course-visual-stats div{min-width:150px;border-radius:8px;background:#f3f0ff;padding:16px}.course-visual-stats strong{display:block;font-size:26px;color:#1b2351}.course-visual-stats span{display:block;margin-top:5px;color:#596277;font-size:12px;font-weight:800}.course-visual-thumb{min-height:250px;background:#dae2f1}.course-visual-thumb img{display:block;width:100%;height:100%;object-fit:cover}.course-back-link{position:absolute;right:24px;bottom:24px;background:#fff}.compact-map{padding:22px}.compact-page-card{grid-template-columns:minmax(0,1.1fr) 84px minmax(0,1.35fr) 112px;background:#fff}.compact-ring{display:block}.compact-ring .ring{width:62px;height:62px}.compact-ring .ring span{width:44px;height:44px}.compact-events{align-items:flex-start}.event-dot{display:inline-flex;align-items:center;gap:6px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#526071;font-size:12px;font-weight:800}.event-dot i{width:8px;height:8px;border-radius:50%;background:#cbd5e1;flex:0 0 auto}.event-dot.is-done{color:#166534}.event-dot.is-done i{background:#22c55e}.event-dot.is-empty{color:#94a3b8}.event-dot.is-empty i{background:#e2e8f0}.compact-page-card .page-card-action .button-link{height:44px}.compact-page-card .mini-progress{display:none!important}@media(max-width:1050px){.course-visual-hero{grid-template-columns:1fr}.course-visual-thumb{min-height:220px;order:-1}.course-back-link{position:static;margin:0 30px 30px;justify-self:start}.compact-page-card{grid-template-columns:1fr}.compact-ring{justify-self:start}.compact-events{display:flex}.compact-page-card .page-card-action .button-link{width:auto}}

.course-study-cta{display:flex!important;align-items:center;justify-content:center;background:transparent!important;padding:0!important}.study-primary-action.as-link{display:inline-flex;text-decoration:none}.course-visual-stats .course-study-cta .study-primary-action{min-width:150px;height:48px;align-items:center;justify-content:center}.page-card-action button.button-link{cursor:pointer;border:1px solid #245eb8}.page-card-action button.primary-small{background:#245eb8;color:#fff}

.course-visual-stats .course-study-cta {
  min-width: 170px;
  align-self: stretch;
}
.course-visual-stats .course-study-cta .study-primary-action {
  display: inline-flex;
  border: 1px solid #245eb8;
  border-radius: 6px;
  background: #245eb8;
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  text-decoration: none;
  padding: 0 18px;
  box-shadow: 0 8px 18px rgba(36, 94, 184, .18);
}
.course-visual-stats .course-study-cta .study-primary-action:hover,
.page-card-action .page-popup-open:hover {
  background: #1d4fa3;
  border-color: #1d4fa3;
}
.page-card-action .page-popup-open {
  font-family: inherit;
  font-size: 14px;
}

.userbar{position:relative;margin-left:auto}.user-menu{position:relative}.user-menu summary{list-style:none;display:flex;align-items:center;gap:10px;border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:7px 10px 7px 14px;cursor:pointer;font-weight:800;color:#334155}.user-menu summary::-webkit-details-marker{display:none}.user-menu summary:after{content:"";width:7px;height:7px;border-right:2px solid #64748b;border-bottom:2px solid #64748b;transform:rotate(45deg) translateY(-2px);margin-left:2px}.user-menu[open] summary{border-color:#245eb8;box-shadow:0 0 0 3px rgba(36,94,184,.12)}.user-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-panel{position:absolute;right:0;top:calc(100% + 10px);width:190px;display:grid;gap:4px;padding:8px;background:#fff;border:1px solid #dfe5ef;border-radius:8px;box-shadow:0 14px 38px rgba(27,39,94,.16);z-index:40}.user-menu-panel a,.user-menu-panel button{width:100%;display:flex;align-items:center;justify-content:flex-start;border:0;background:#fff;border-radius:6px;padding:10px 11px;color:#334155;font-weight:800;cursor:pointer}.user-menu-panel a:hover,.user-menu-panel button:hover{background:#f3f6fb;color:#245eb8}.user-menu-panel form{margin:0}.account-profile-card{display:grid;grid-template-columns:96px 1fr;gap:22px;align-items:start}.account-avatar{width:96px;height:96px;border-radius:24px;background:#151c48;color:#fff;display:grid;place-items:center;font-size:38px;font-weight:900}.account-profile-main h2{margin:0;font-size:28px}.account-profile-main>p{margin:8px 0 0;color:#596277}.account-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.account-meta-grid div{border:1px solid #e5e9f4;background:#f8f9fc;border-radius:8px;padding:14px}.account-meta-grid span{display:block;color:#64748b;font-size:12px;font-weight:800}.account-meta-grid strong{display:block;margin-top:6px;color:#172033;font-size:15px}.account-actions{display:flex;gap:10px;margin-top:18px}@media(max-width:800px){.account-profile-card{grid-template-columns:1fr}.account-meta-grid{grid-template-columns:1fr}.user-menu-panel{left:0;right:auto}.user-name{max-width:180px}}

.learning-popup-body{margin:0;background:#0f172a;color:#172033;font-family:Arial,"Noto Sans KR",sans-serif}.learning-popup-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:#0f172a}.learning-popup-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;background:#fff;border-bottom:1px solid #dfe5ef}.learning-popup-head h1{margin:4px 0 0;font-size:22px;letter-spacing:0}.learning-popup-video{display:grid;place-items:center;min-height:0;padding:18px;background:#0f172a}.learning-popup-video video{width:100%;height:100%;max-height:calc(100vh - 168px);object-fit:contain;background:#000;border-radius:8px}.learning-popup-content{overflow:auto;margin:18px;background:#fff;border-radius:8px;padding:24px}.learning-popup-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px;background:#fff;border-top:1px solid #dfe5ef}.learning-popup-foot strong{display:block;font-size:13px}.learning-popup-foot span{color:#596277;font-size:13px;font-weight:800}.popup-event-strip{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.popup-event-strip span{border-radius:999px;background:#eef4ff;color:#2e5bff;padding:6px 9px;font-size:12px;font-weight:900}@media(max-width:760px){.learning-popup-head,.learning-popup-foot{align-items:stretch;flex-direction:column}.learning-popup-video video{max-height:calc(100vh - 230px)}}

.written-response-panel .panel-head{align-items:flex-start}.written-response-panel .subtle{margin:6px 0 0;color:#64748b}.written-response-list{display:grid;gap:12px}.written-response-card{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(160px,.7fr) minmax(0,1.4fr);gap:14px;align-items:start;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;padding:14px}.written-response-meta,.written-response-user{display:grid;gap:5px}.written-response-meta strong,.written-response-user strong{font-size:15px;color:#172033}.written-response-meta span:not(.pill),.written-response-user span{color:#64748b;font-size:12px;font-weight:700}.written-response-card pre{margin:0;white-space:pre-wrap;word-break:break-word;border:1px solid #dfe5ef;border-radius:6px;background:#fff;padding:12px;color:#334155;font-family:Arial,"Noto Sans KR",sans-serif;font-size:13px;line-height:1.55}@media(max-width:900px){.written-response-card{grid-template-columns:1fr}}

/* Admin desktop tool style: compact, explicit, Qt-inspired controls. */
body.admin-app{background:#e9edf3;color:#1f2933;font-size:13px}.admin-app .topbar{height:52px;gap:18px;padding:0 18px;background:#f7f8fa;border-bottom:1px solid #aeb7c2;box-shadow:0 1px 0 #fff inset;position:sticky;top:0}.admin-app .brand{min-width:158px}.admin-app .brand strong{font-size:16px}.admin-app .brand span{font-size:11px;color:#5d6673}.admin-app .topbar nav{gap:3px;align-items:center}.admin-app .topbar nav a{height:32px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid transparent;border-radius:4px;color:#1f2933;font-size:13px;font-weight:700}.admin-app .topbar nav a:hover{background:#e2e7ee;border-color:#b8c0ca}.admin-app .user-menu summary{height:32px;border-radius:4px;border-color:#aeb7c2;background:linear-gradient(#fff,#e9edf3);box-shadow:0 1px 0 #fff inset;padding:0 9px}.admin-app .user-menu[open] summary{border-color:#7f95b1;box-shadow:0 0 0 2px rgba(77,111,151,.14)}.admin-app .user-menu-panel{top:calc(100% + 6px);border-color:#aeb7c2;border-radius:4px;box-shadow:0 8px 22px rgba(31,41,51,.18)}.admin-app .user-menu-panel a,.admin-app .user-menu-panel button{border-radius:3px;font-size:13px}.admin-app .page,.admin-app .page.wide{width:min(calc(100% - 28px),1440px);max-width:1440px;padding:18px 0 44px}.admin-app .page-head{align-items:center;min-height:56px;margin:0 0 10px;padding:10px 12px;border:1px solid #b8c0ca;background:#f7f8fa;border-radius:4px;box-shadow:0 1px 0 #fff inset}.admin-app .page-head h1{font-size:22px;font-weight:800;line-height:1.2}.admin-app .page-head p:last-child{margin-top:4px;color:#5d6673;font-size:12px}.admin-app .eyebrow{margin:0 0 3px;color:#4f6580;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0}.admin-app .head-actions,.admin-app .row-actions{gap:6px}.admin-app .metric-grid{gap:8px;margin-bottom:10px}.admin-app .metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-app .metric,.admin-app .panel,.admin-app .list-card,.admin-app .form-panel{border-color:#b8c0ca;border-radius:4px;background:#f7f8fa;box-shadow:0 1px 0 #fff inset}.admin-app .metric{padding:10px 12px}.admin-app .metric span{color:#5d6673;font-size:11px;font-weight:800;text-transform:uppercase}.admin-app .metric strong{margin-top:4px;font-size:22px;line-height:1.1;color:#172033}.admin-app .panel{padding:12px;margin-bottom:10px}.admin-app .panel-head{min-height:32px;margin:-12px -12px 10px;padding:7px 10px;background:#dfe5ec;border-bottom:1px solid #b8c0ca;border-radius:4px 4px 0 0}.admin-app .panel h2{font-size:15px;font-weight:800}.admin-app .split-grid{gap:10px;margin-bottom:10px}.admin-app .status-row{gap:6px}.admin-app .status-row span{border-color:#c4ccd6;border-radius:3px;background:#eef2f6;padding:8px 10px;font-size:12px}.admin-app .status-row strong{font-size:20px}.admin-app table{background:#fff;border:1px solid #b8c0ca;border-collapse:collapse}.admin-app th,.admin-app td{border:1px solid #d2d8df;padding:7px 8px;font-size:12px;vertical-align:middle}.admin-app th{background:#e4e9ef;color:#344052;font-weight:800;white-space:nowrap}.admin-app tbody tr:nth-child(even){background:#fafbfc}.admin-app tbody tr:hover{background:#eef5ff}.admin-app .text-link{color:#174f8f;font-weight:800;text-decoration:none}.admin-app .text-link:hover{text-decoration:underline}.admin-app .button-link,.admin-app .primary,.admin-app .danger-link{min-height:30px;border-radius:4px;font-size:12px;font-weight:800}.admin-app .button-link{border-color:#aeb7c2;background:linear-gradient(#fff,#e7ebf0);color:#1f2933;padding:6px 10px;box-shadow:0 1px 0 #fff inset}.admin-app .button-link:hover{border-color:#7f95b1;background:linear-gradient(#fff,#dfe7f0)}.admin-app .primary,.admin-app .primary-small{border:1px solid #3e638f;background:linear-gradient(#5c81ae,#3f638e);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.25) inset}.admin-app .danger-link{border:1px solid transparent;background:transparent;color:#b91c1c;padding:6px 8px}.admin-app .danger-link:hover{background:#fee2e2;border-color:#fecaca}.admin-app .pill{border-radius:3px;border:1px solid #aeb7c2;background:#eef2f6;color:#344052;padding:3px 6px;font-size:11px}.admin-app .pill.muted{background:#eef2f6;color:#4b5563}.admin-app .filter-form{gap:6px;margin-bottom:10px}.admin-app .filter-form input,.admin-app .filter-form select,.admin-app .form-stack input,.admin-app .form-stack select,.admin-app .form-stack textarea,.admin-app .inline-form select{border-color:#aeb7c2;border-radius:3px;background:#fff;padding:7px 8px;font-size:12px}.admin-app .form-stack{gap:10px}.admin-app .form-stack label span{margin-bottom:4px;color:#344052;font-size:12px}.admin-app .two-col,.admin-app .three-col{gap:8px}.admin-app .check-row{gap:6px}.admin-app .notice,.admin-app .alert{border-radius:4px;padding:9px 10px;margin-bottom:10px}.admin-app .notice{background:#edf7ed;border-color:#a7d7a7;color:#166534}.admin-app .alert{background:#fff0f0;border-color:#efb4b4;color:#a51616}.admin-app .empty-cell,.admin-app .empty-state{background:#f7f8fa;color:#6b7280;padding:18px}.admin-app .stack-list{gap:8px}.admin-app .list-card{padding:10px 12px}.admin-app .list-card h3{font-size:15px;margin:6px 0 4px}.admin-app .list-card p{font-size:12px}.admin-app .nested-list{gap:6px;margin-top:8px}.admin-app .nested-item,.admin-app .nested-event{border-color:#cbd3dc;border-radius:3px;background:#eef2f6;padding:8px}.admin-app .nested-event{background:#fff;margin-left:14px}.admin-app .compact-actions .button-link,.admin-app .compact-actions .danger-link{font-size:11px;padding:5px 7px;min-height:26px}.admin-app .answer-json,.admin-app .written-response-card pre{border-color:#cbd3dc;border-radius:3px;background:#fff;font-family:Consolas,"Noto Sans KR",monospace}.admin-app .written-response-card{border-color:#cbd3dc;border-radius:4px;background:#eef2f6;padding:10px}.admin-app .written-response-panel .subtle,.admin-app .subtle{color:#5d6673;font-size:11px}@media(max-width:900px){body.admin-app{font-size:13px}.admin-app .topbar{height:auto;align-items:stretch;flex-direction:column;padding:10px 12px}.admin-app .topbar nav{flex-wrap:wrap}.admin-app .page,.admin-app .page.wide{width:min(calc(100% - 20px),1440px);padding-top:10px}.admin-app .page-head{align-items:stretch;flex-direction:column}.admin-app .metric-grid,.admin-app .metric-grid.three,.admin-app .split-grid{grid-template-columns:1fr}.admin-app .list-card{align-items:stretch;flex-direction:column}.admin-app .nested-event{margin-left:0}}
body.admin-popup{background:#e9edf3}.admin-popup .page{width:min(calc(100% - 20px),980px);padding:10px 0 24px}.admin-popup .page-head{position:sticky;top:0;z-index:2}.admin-popup .event-response-table th:nth-child(1){width:180px}.admin-popup .event-response-table th:nth-child(2){width:120px}.admin-popup .event-response-table th:nth-child(3){width:70px}.admin-popup .event-response-text{max-height:180px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:0;padding:8px;border:1px solid #cbd3dc;border-radius:3px;background:#fff;font-family:Consolas,"Noto Sans KR",monospace;font-size:12px;line-height:1.55}
.admin-app .event-row-shell{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:8px;align-items:stretch;margin-left:14px}.admin-app .event-row-shell .nested-event{margin-left:0}.admin-app .event-activity-link{display:grid;place-items:center;align-content:center;gap:2px;min-height:40px;border:1px solid #9fb2c8;border-radius:3px;background:linear-gradient(#f8fbff,#e4ecf5);color:#174f8f;box-shadow:0 1px 0 #fff inset;font-weight:900}.admin-app .event-activity-link span{font-size:10px;color:#4f6580}.admin-app .event-activity-link strong{font-size:16px;line-height:1}.admin-app .event-activity-link:hover{border-color:#6f8aaa;background:linear-gradient(#fff,#dbe8f6)}@media(max-width:900px){.admin-app .event-row-shell{grid-template-columns:1fr;margin-left:0}.admin-app .event-activity-link{min-height:34px}}
.lesson-block{border:1px solid #e5e9f4;border-radius:8px;background:#f8f9fc;padding:16px;margin:0 0 16px}.lesson-block .course-page-card{margin-bottom:10px}.lesson-block .course-page-card:last-child{margin-bottom:0}.lesson-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.lesson-head h3{margin:8px 0 0;font-size:22px;letter-spacing:0}.lesson-head strong{min-width:66px;text-align:center;border-radius:8px;background:#151c48;color:#fff;padding:10px 12px}.lesson-block .compact-page-card{background:#fff}@media(max-width:700px){.lesson-head{align-items:flex-start;flex-direction:column}.lesson-head strong{text-align:left}}

.learning-popup-package{min-height:0;padding:18px;background:#0f172a}.learning-popup-package iframe{display:block;width:100%;height:calc(100vh - 178px);min-height:520px;border:0;border-radius:8px;background:#fff}.popup-progress-info{min-width:145px}.popup-page-dots{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.popup-page-dots span{width:26px;height:26px;display:grid;place-items:center;border-radius:999px;background:#e5e9f4;color:#596277;font-size:12px;font-weight:900}.popup-page-dots span.is-completed{background:#dcfce7;color:#166534}.popup-page-dots span.is-current{box-shadow:0 0 0 2px #245eb8 inset;color:#1b2351}.popup-page-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.popup-next-page.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.learning-popup-foot{flex-wrap:wrap}.learning-popup-foot .popup-event-strip{margin-left:auto}@media(max-width:760px){.learning-popup-package iframe{height:calc(100vh - 282px);min-height:420px}.popup-page-actions{width:100%;margin-left:0}.popup-page-actions .button-link{flex:1}.learning-popup-foot .popup-event-strip{justify-content:flex-start;margin-left:0}}
