*{box-sizing:border-box}html{color-scheme:light}body{margin:0;font-family:Arial,"Noto Sans KR","Malgun Gothic",sans-serif;color:#101828;background:#f7f9fc;line-height:1.55}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}.row{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar{background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:30}.topbar .wrap{height:70px}.logo{font-weight:900;font-size:21px}.logo span{color:#1d4ed8}.logo small{font-size:11px;color:#667085;margin-left:8px}.page{padding:46px 0 80px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.page h1,.auth-card h1{letter-spacing:-1px}.eyebrow{font-size:12px;color:#1d4ed8;font-weight:900;letter-spacing:.6px}.muted{color:#667085}.tiny{font-size:12px;color:#667085}.auth-bg{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef4ff,#f8fafc)}.auth-card{width:min(460px,calc(100% - 28px));background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:32px;box-shadow:0 20px 60px rgba(15,23,42,.09)}.install-card{width:min(720px,calc(100% - 28px))}label{display:block;font-size:13px;font-weight:800;margin:13px 0 6px}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;font:inherit}textarea{min-height:82px;resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}hr{border:0;border-top:1px solid #eef0f3;margin:22px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border:0;border-radius:10px;font-weight:800;cursor:pointer}.btn.primary{background:#1d4ed8;color:#fff}.btn.full{width:100%;margin-top:16px}.alert{padding:13px 14px;border-radius:10px;margin:15px 0;font-size:14px}.alert.error{background:#fff1f1;color:#a11}.alert.success{background:#ecfdf3;color:#176b3a}.empty{background:#fff;border:1px dashed #cbd5e1;border-radius:16px;padding:24px;color:#667085}.empty.small{padding:14px}.course-block{margin-top:32px}.course-block h2{margin-bottom:4px}.lecture-list{display:grid;gap:10px;margin-top:16px}.lecture-row{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px}.lecture-row:hover{border-color:#b9c8ff}.lecture-row strong{display:block}.lecture-row span{display:block;color:#667085;font-size:13px;margin-top:4px}.progress-side{width:190px;text-align:right}.progress{height:7px;background:#e9eef8;border-radius:999px;overflow:hidden;margin-bottom:6px}.progress i{display:block;height:100%;background:#1d4ed8}.video-shell{position:relative;padding-bottom:56.25%;height:0;background:#0f172a;border-radius:20px;overflow:hidden;margin-top:24px}.video-shell>div,.video-shell iframe{position:absolute!important;inset:0;width:100%!important;height:100%!important}.watch-info{display:flex;justify-content:space-between;gap:16px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px 16px;margin-top:14px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:22px}.panel.wide{grid-column:1/-1}.panel h2{margin-top:0;font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.span2{grid-column:1/-1}.align-end{display:flex;align-items:end}.mini-table{margin-top:18px;border-top:1px solid #eef0f3}.mini-table>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #eef0f3;font-size:13px}.inline{display:flex;gap:5px}.inline input{width:135px;padding:7px}.inline button,.danger{border:0;background:#fff1f1;color:#b42318;border-radius:7px;padding:7px 9px;cursor:pointer}.table-wrap{overflow:auto;margin-top:18px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:10px;border-bottom:1px solid #eef0f3;white-space:nowrap}th{color:#475467;background:#f8fafc}code{font-size:12px}.watch-page{max-width:980px}@media(max-width:800px){.admin-grid,.two,.form-grid{grid-template-columns:1fr}.panel.wide,.span2{grid-column:auto}.lecture-row{align-items:flex-start;flex-direction:column}.progress-side{width:100%}.watch-info{flex-direction:column}}