.gsf-field{display:grid;gap:8px;margin:0 0 14px;font-weight:700}.gsf-field input,.gsf-field select,.gsf-admin-top input,.gsf-admin-filters input,.gsf-admin-filters select{width:100%;min-height:48px;border:1px solid var(--gsf-silver-2);border-radius:10px;padding:0 12px;background:#fff;color:var(--gsf-text);font:inherit}.gsf-check{display:flex;align-items:center;gap:8px;margin:0 0 16px}.gsf-error{color:var(--gsf-danger);font-weight:700}.gsf-sheet{border-radius:16px 16px 0 0;border:1px solid var(--gsf-silver-1);padding:18px;background:#fff}.gsf-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--gsf-text);color:#fff;border-radius:10px;padding:12px 16px}.gsf-avatar{width:42px;height:42px;border-radius:999px;background:var(--gsf-primary-soft);color:var(--gsf-primary-text);display:inline-grid;place-items:center;font-weight:800}.gsf-progress{height:10px;border-radius:999px;background:var(--gsf-silver-1);overflow:hidden}.gsf-progress span{display:block;height:100%;background:var(--gsf-primary)}.gsf-skeleton{height:72px;border-radius:8px;background:linear-gradient(90deg,var(--gsf-silver-1),#fff,var(--gsf-silver-1));background-size:200% 100%;animation:gsf-skeleton 1.4s infinite}@keyframes gsf-skeleton{to{background-position:-200% 0}}.gsf-list-item{display:grid;gap:4px;padding:12px;border:1px solid var(--gsf-silver-1);border-radius:8px;text-decoration:none;color:var(--gsf-text);background:#fff}.gsf-list-item span{color:var(--gsf-text-sub);font-size:14px}.gsf-admin-shell{height:100dvh;display:grid;grid-template-columns:230px 1fr;background:var(--gsf-bg);overflow:hidden}.gsf-admin-sidebar{background:#fff;border-right:1px solid var(--gsf-silver-1);padding:18px;overflow-y:auto}.gsf-admin-brand{display:block;margin-bottom:18px;font-size:20px;font-weight:900;color:var(--gsf-primary-text);text-decoration:none}.gsf-admin-sidebar nav{display:grid;gap:6px}.gsf-admin-sidebar a{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 10px;border-radius:8px;text-decoration:none;color:var(--gsf-text);font-weight:700}.gsf-admin-sidebar a:hover{background:var(--gsf-primary-soft)}.gsf-admin-sidebar a.is-locked{color:var(--gsf-text-sub);background:transparent}.gsf-admin-sidebar small{font-size:11px;color:var(--gsf-text-sub)}.gsf-admin-main{min-width:0;display:flex;flex-direction:column}.gsf-admin-top{height:64px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border-bottom:1px solid var(--gsf-silver-1);padding:0 18px}.gsf-admin-top form{width:min(420px,50vw)}.gsf-admin-content{flex:1;overflow:auto;padding:22px}.gsf-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.gsf-admin-metric{font-size:34px;font-weight:900;margin:8px 0}.gsf-admin-filters{display:grid;grid-template-columns:1fr 180px auto;gap:10px;margin:0 0 16px}.gsf-admin-table-wrap{overflow:auto;background:#fff;border:1px solid var(--gsf-silver-1);border-radius:8px}.gsf-admin-table{width:100%;border-collapse:collapse;min-width:860px}.gsf-admin-table th,.gsf-admin-table td{padding:12px;border-bottom:1px solid var(--gsf-silver-1);text-align:left;vertical-align:middle}.gsf-admin-table th{background:#fafafa}.gsf-admin-table form{display:flex;gap:8px;align-items:center}.gsf-admin-table select{min-height:40px;border:1px solid var(--gsf-silver-2);border-radius:8px}@media (max-width:900px){.gsf-admin-shell{grid-template-columns:1fr}.gsf-admin-sidebar{display:none}.gsf-admin-grid{grid-template-columns:1fr}.gsf-admin-filters{grid-template-columns:1fr}.gsf-admin-top form{width:100%}}

/* ---- LMS 콘솔 통합 과정 빌더 (/gsf-admin/lms/course) ---- */
.gsf-lms-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.gsf-lms-cat-choices{display:flex;flex-wrap:wrap;gap:4px 18px}
.gsf-lms-cat-choices .gsf-check{margin:4px 0}
.gsf-lms-thumb-preview{max-width:240px;height:auto;border-radius:8px;display:block;margin:6px 0}
.gsf-lms-lesson{border:1px solid var(--gsf-silver-1);border-radius:8px;margin:10px 0;background:var(--gsf-surface)}
.gsf-lms-lesson>summary{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;list-style:none}
.gsf-lms-lesson>summary::-webkit-details-marker{display:none}
.gsf-lms-lesson>summary:hover{background:var(--gsf-primary-soft)}
.gsf-lms-lesson[open]>summary{border-bottom:1px solid var(--gsf-silver-1)}
.gsf-lms-lesson-title{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.gsf-lms-video-thumb{border-radius:6px;flex:none;object-fit:cover}
.gsf-lms-lesson-body{padding:14px}
.gsf-lms-lesson-tools{display:flex;gap:10px;align-items:center;margin-top:14px;padding-top:12px;border-top:1px dashed var(--gsf-silver-1)}
.gsf-lms-lesson-new>summary{color:var(--gsf-primary-text)}
.gsf-lms-quiz-item{border:1px dashed var(--gsf-silver-2);border-radius:8px;padding:12px;margin:10px 0}
.gsf-lms-quiz-opt{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin:6px 0}
.gsf-lms-quiz-opt .gsf-check{margin:0;white-space:nowrap}
.gsf-lms-quiz-opt input[data-name="opt"]{min-height:44px;border:1px solid var(--gsf-silver-2);border-radius:8px;padding:8px 12px;font-size:1rem}
.gsf-lms-danger{color:var(--gsf-danger)}
.gsf-lms-move-cell{white-space:nowrap}
.gsf-lms-move-cell form{display:inline-flex}
.gsf-lms-move-cell button:disabled,.gsf-lms-danger:disabled{opacity:.35;cursor:not-allowed}
