:root{--bb-accent:#fa4515;--bb-accent-text:#c93a10;--bb-accent-soft:#fff0ea;--bb-bg:#fdfcfa;--bb-card:#fff;--bb-ink:#1c1917;--bb-sub:#6f655c;--bb-muted:#968a80;--bb-line:#eee7e0;--bb-line-strong:#dfd5cc;--bb-lock:#a89f93;--bb-success:#2e7d32;--bb-success-soft:#e8f3e8;--bb-warning:#946c00;--bb-warning-soft:#fdf3d7;--bb-danger:#b42318;--bb-danger-soft:#fff0ef;--sidebar-width:236px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--shadow-sm:0 2px 10px #3d2f250f;--shadow-md:0 12px 32px #3d2f2517;--shadow-lg:0 22px 60px #3d2f251f;--transition-fast:.15s ease;--bg-primary:var(--bb-bg);--bg-card:var(--bb-card);--bg-input:#f8f4f0;--text-primary:var(--bb-ink);--text-secondary:var(--bb-sub);--text-muted:var(--bb-muted);--ink:var(--bb-ink);--border-color:var(--bb-line);--border-light:var(--bb-line);--accent-primary:var(--bb-accent);--accent-success:var(--bb-success);--accent-warning:var(--bb-warning);--accent-danger:var(--bb-danger);--cobalt-soft:var(--bb-accent-soft)}*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--bb-bg);scroll-behavior:smooth}body{background:var(--bb-bg);min-height:100vh;color:var(--bb-ink);font-family:var(--font-pretendard), Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;letter-spacing:-.012em;word-break:keep-all;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;margin:0;font-size:14.5px;line-height:1.65}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:var(--bb-accent-text)}h1,h2,h3,h4,p,ul,ol{margin-top:0}img,video,iframe{max-width:100%}::selection{background:var(--bb-accent-soft);color:var(--bb-ink)}:focus-visible{outline-offset:3px;outline:3px solid #c93a1047}.app-layout{min-height:100vh}.main-content{min-height:100vh;margin-left:var(--sidebar-width);padding:38px 42px 64px}.sidebar{z-index:1000;width:var(--sidebar-width);background:var(--bb-card);border-right:1px solid var(--bb-line);flex-direction:column;padding:24px 18px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-topline{justify-content:space-between;align-items:center;display:flex}.sidebar-logo,.mobile-logo{color:var(--bb-ink);letter-spacing:-.02em;font-weight:900;text-decoration:none}.sidebar-logo{flex-direction:column;font-size:19px;line-height:1.08;display:flex}.sidebar-logo em,.mobile-logo em{color:var(--bb-accent);font-style:normal}.sidebar-tagline{color:var(--bb-sub);margin:13px 0 26px;font-size:12px;font-weight:650}.sidebar-close{cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:none}.sidebar-nav{flex-direction:column;gap:5px;display:flex}.nav-link{min-height:44px;color:var(--bb-sub);transition:color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);border-radius:11px;align-items:center;gap:11px;padding:10px 12px;font-size:14px;font-weight:720;text-decoration:none;display:flex}.nav-link:hover{color:var(--bb-ink);background:#f8f4f0}.nav-link.active{color:var(--bb-accent-text);background:var(--bb-accent-soft)}.nav-link:active{transform:scale(.985)}.nav-icon{justify-content:center;align-items:center;width:21px;display:inline-flex}.sidebar-admin-shortcut{border-top:1px solid var(--bb-line);margin-top:16px;padding-top:16px}.sidebar-spacer{flex:1;min-height:20px}.sidebar-legal{flex-wrap:wrap;gap:5px 10px;margin:0 4px 14px;display:flex}.sidebar-legal a,.sidebar-legal button{color:var(--bb-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:10.5px;text-decoration:none}.sidebar-legal a:hover,.sidebar-legal button:hover{color:var(--bb-accent-text)}.sidebar-user{border:1px solid var(--bb-line);background:#fffdfa;border-radius:13px;align-items:center;gap:10px;padding:12px;display:flex}.user-avatar,.mobile-avatar{background:var(--bb-accent-soft);color:var(--bb-accent-text);border-radius:999px;flex:none;justify-content:center;align-items:center;font-weight:850;display:flex}.user-avatar{width:34px;height:34px;font-size:13px}.user-info{flex:1;min-width:0}.user-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.user-role{color:var(--bb-muted);font-size:11px}.logout-btn{width:32px;height:32px;color:var(--bb-sub);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.logout-btn:hover{background:var(--bb-accent-soft);color:var(--bb-accent-text)}.mobile-header,.sidebar-overlay{display:none}.page-container,.home-shell,.admin-shell{width:min(100%,1080px);margin:0 auto}.page-header{margin-bottom:24px}.page-header h1,.page-header h2,.page-title{letter-spacing:-.025em;margin:0 0 6px;font-size:clamp(24px,4vw,32px);font-weight:900;line-height:1.25}.page-header p,.page-subtitle{color:var(--bb-sub);margin:0;font-size:14px}.bb-kicker{color:var(--bb-accent-text);letter-spacing:.08em;margin-bottom:8px;font-size:12px;font-weight:850}.section-heading-row{justify-content:space-between;align-items:baseline;gap:16px;margin:28px 0 13px;display:flex}.section-heading-row h2,.section-heading-row h3,.section-heading{margin:0;font-size:17px;font-weight:850;line-height:1.35}.section-heading-row a{color:var(--bb-accent-text);flex:none;font-size:12.5px;font-weight:750;text-decoration:none}.hint{color:var(--bb-sub);font-size:12px}.card{border:1px solid var(--bb-line);background:var(--bb-card);box-shadow:var(--shadow-sm);border-radius:14px;padding:20px}.card-title{margin:0;font-size:16px;font-weight:850}.btn{text-align:center;cursor:pointer;min-height:42px;transition:transform var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:10px 16px;font-weight:800;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn-primary{background:var(--bb-accent);color:#fff;box-shadow:0 7px 18px color-mix(in srgb, var(--bb-accent) 18%, transparent)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--bb-accent) 90%, #000)}.btn-secondary{border-color:var(--bb-line-strong);background:var(--bb-card);color:var(--bb-ink)}.btn-secondary:hover:not(:disabled){background:#fcf8f5;border-color:#cfc2b7}.btn-success{background:var(--bb-success-soft);color:var(--bb-success);border-color:#cae2cb}.btn-warning{background:var(--bb-warning-soft);color:var(--bb-warning);border-color:#eadcae}.btn-danger,.btn-error{background:var(--bb-danger-soft);color:var(--bb-danger);border-color:#f0ccc8}.btn-sm{border-radius:8px;min-height:34px;padding:7px 12px;font-size:12.5px}.btn-lg{min-height:50px;padding:14px 20px;font-size:15px}.btn:disabled{cursor:not-allowed;opacity:.48;box-shadow:none;transform:none}.w-full{width:100%}.badge,.badge-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:22px;padding:2px 8px;font-size:11px;font-weight:820;line-height:1.4;display:inline-flex}.badge-free,.badge-success{background:var(--bb-success-soft);color:var(--bb-success)}.badge-paid,.badge-info,.badge-purple{background:var(--bb-accent-soft);color:var(--bb-accent-text)}.badge-locked{color:var(--bb-lock);background:#f1ece7}.badge-waiting,.badge-warning{background:var(--bb-warning-soft);color:var(--bb-warning)}.badge-danger{background:var(--bb-danger-soft);color:var(--bb-danger)}.badge-pill{border:1px solid var(--bb-line);color:var(--bb-sub);background:#faf7f4}.home-shell{border:1px solid var(--bb-line);background:var(--bb-card);box-shadow:var(--shadow-md);border-radius:20px;overflow:hidden}.home-hero{background:linear-gradient(180deg, #fff 0%, var(--bb-bg) 100%);padding:clamp(34px,6vw,68px) clamp(22px,6vw,72px) 34px}.home-hero h1{letter-spacing:-.035em;max-width:680px;margin:0 0 12px;font-size:clamp(31px,6vw,54px);font-weight:920;line-height:1.2}.home-hero h1 em{color:var(--bb-accent);font-style:normal}.home-hero>p{max-width:620px;color:var(--bb-sub);margin-bottom:22px;font-size:clamp(14px,2vw,16px)}.home-hero .btn{min-width:min(100%,290px)}.notice-line{border:1px solid var(--bb-line);background:var(--bb-card);max-width:720px;color:var(--bb-sub);border-radius:10px;align-items:flex-start;gap:9px;margin-top:16px;padding:11px 13px;font-size:12.5px;display:flex}.notice-line strong{color:var(--bb-accent-text);flex:none}.home-section{padding:8px clamp(20px,5vw,56px) 34px}.home-divider{background:#f6f1ec;height:8px}.member-welcome{border-bottom:1px solid var(--bb-line);background:linear-gradient(145deg,#fff 0%,#fff8f4 100%);padding:clamp(28px,5vw,54px)}.member-welcome h1{margin:0 0 8px;font-size:clamp(28px,5vw,42px);font-weight:900;line-height:1.25}.member-welcome p{color:var(--bb-sub);margin:0}.shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.shortcut-card{border:1px solid var(--bb-line);background:var(--bb-card);min-height:124px;color:var(--bb-ink);box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:18px;text-decoration:none;display:flex}.shortcut-card svg{color:var(--bb-accent-text)}.shortcut-card strong{margin-bottom:2px;font-size:15px;display:block}.shortcut-card span{color:var(--bb-sub);font-size:12.5px}.resource-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:12px;display:grid}.resource-card{border:1px solid var(--bb-line);background:var(--bb-card);min-height:158px;color:var(--bb-ink);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);border-radius:14px;flex-direction:column;align-items:flex-start;padding:17px;text-decoration:none;display:flex;position:relative}a.resource-card:hover{border-color:var(--bb-line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.resource-card-icon{background:var(--bb-accent-soft);min-width:40px;height:40px;color:var(--bb-accent-text);border-radius:10px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:850;display:inline-flex}.resource-card-copy{flex:1;margin-top:12px}.resource-card-title{align-items:flex-start;gap:7px;display:flex}.resource-card h3{flex:1;margin:0;font-size:15px;font-weight:850;line-height:1.4}.resource-card p{color:var(--bb-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:5px 0 0;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.resource-card-arrow{color:var(--bb-accent-text);margin-top:12px;font-size:12.5px;font-weight:750}.access-gate{border:1.5px dashed var(--bb-accent);background:var(--bb-card);text-align:center;border-radius:14px;flex-direction:column;align-items:center;padding:22px 20px;display:flex}.access-gate.compact{padding:18px}.gate-icon{background:var(--bb-accent-soft);width:38px;height:38px;color:var(--bb-accent-text);border-radius:10px;justify-content:center;align-items:center;margin-bottom:9px;display:inline-flex}.access-gate h3{margin:0 0 5px;font-size:15px;font-weight:850}.access-gate p{max-width:520px;color:var(--bb-sub);white-space:pre-line;margin:0;font-size:12.5px}.gate-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.program-banner{border:1px solid var(--bb-accent);background:var(--bb-card);box-shadow:var(--shadow-sm);border-radius:14px;padding:20px}.program-banner-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.program-banner h3{margin:0 0 5px;font-size:17px;font-weight:900}.program-banner p{color:var(--bb-sub);margin:0;font-size:13px}.program-banner-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.course-stack{flex-direction:column;gap:16px;display:flex}.course-card{border:1px solid var(--bb-line);background:var(--bb-card);box-shadow:var(--shadow-sm);border-radius:16px;overflow:hidden}.course-summary{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:18px;width:100%;padding:20px;display:flex}.course-summary h2{margin:3px 0 5px;font-size:19px;font-weight:900;line-height:1.35}.course-summary p{color:var(--bb-sub);margin:0;font-size:13px}.course-summary-meta{flex-wrap:wrap;gap:7px;margin-bottom:4px;display:flex}.course-progress-label{color:var(--bb-sub);flex:none;font-size:12px;font-weight:750}.course-detail{border-top:1px solid var(--bb-line);padding:0 20px 20px}.course-detail-intro{color:var(--bb-sub);margin:16px 0 12px;font-size:13px}.lesson-list{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.lesson-row{border:1px solid var(--bb-line);background:var(--bb-card);min-height:58px;color:var(--bb-ink);transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);border-radius:12px;align-items:center;gap:12px;padding:11px 13px;text-decoration:none;display:flex}.lesson-row:hover{border-color:var(--bb-line-strong);transform:translateY(-1px)}.lesson-row.active{border-color:var(--bb-accent);background:#fffaf7}.lesson-row.locked{color:var(--bb-lock)}.lesson-index{background:var(--bb-accent-soft);width:28px;height:28px;color:var(--bb-accent-text);border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:850;display:inline-flex}.lesson-index.done{background:var(--bb-success-soft);color:var(--bb-success)}.lesson-index.locked{color:var(--bb-lock);background:#f1ece7}.lesson-copy{flex:1;min-width:0}.lesson-copy strong,.lesson-copy small{display:block}.lesson-copy strong{font-size:14px;font-weight:760;line-height:1.4}.lesson-copy small{color:var(--bb-sub);margin-top:2px;font-size:11.5px;font-weight:500}.progress-track,.progress-bar{background:var(--bb-line);border-radius:999px;height:7px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--bb-accent);height:100%;transition:width .24s;display:block}.lesson-page-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}.player-card{border:1px solid var(--bb-line);background:var(--bb-card);box-shadow:var(--shadow-sm);border-radius:16px;overflow:hidden}.player-shell{aspect-ratio:16/9;background:#151311;position:relative;overflow:hidden}.player-shell iframe,.player-shell video{border:0;width:100%;height:100%}.player-empty{color:#a79e96;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;font-size:13px;display:flex}.player-empty-icon{background:var(--bb-accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:54px;height:54px;display:flex}.player-info{padding:20px}.player-info h1{margin:0 0 10px;font-size:clamp(20px,4vw,28px);font-weight:900;line-height:1.35}.player-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.course-toc{border:1px solid var(--bb-line);background:var(--bb-card);box-shadow:var(--shadow-sm);border-radius:16px;padding:18px;position:sticky;top:24px}.course-toc h2{margin:0 0 12px;font-size:16px;font-weight:850}.media-document{border:1px solid var(--bb-line);background:var(--bb-card);border-radius:14px;margin-top:16px;padding:18px}.media-document iframe{border:0;width:100%;min-height:70vh}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:46px 20px;display:flex}.empty-icon{background:var(--bb-accent-soft);width:48px;height:48px;color:var(--bb-accent-text);border-radius:12px;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.empty-state h3,.empty-state h4{margin:0 0 5px;font-size:16px;font-weight:850}.empty-state p{color:var(--bb-sub);margin:0;font-size:13px}.empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:15px;display:flex}.auth-page{justify-content:center;align-items:center;min-height:calc(100vh - 78px);padding:24px;display:flex}.auth-card{border:1px solid var(--bb-line);background:var(--bb-card);width:min(100%,460px);box-shadow:var(--shadow-md);border-radius:18px;padding:30px}.auth-title{text-align:center;margin-bottom:24px}.auth-title .logo{background:var(--bb-accent-soft);min-width:44px;height:44px;color:var(--bb-accent-text);border-radius:12px;justify-content:center;align-items:center;margin-bottom:12px;padding:0 11px;font-size:14px;font-weight:900;display:inline-flex}.auth-title h1,.auth-title h2{margin:0 0 4px;font-size:23px;font-weight:900}.auth-title p{color:var(--bb-sub);margin:0;font-size:13px}.auth-footer{color:var(--bb-sub);text-align:center;margin-top:20px;font-size:13px}.auth-footer a{font-weight:750}.form-group{margin-bottom:16px}.form-label{color:var(--bb-ink);margin-bottom:6px;font-size:12.5px;font-weight:750;display:block}.form-input{border:1px solid var(--bb-line-strong);width:100%;min-height:44px;color:var(--bb-ink);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;border-radius:10px;outline:none;padding:10px 12px}textarea.form-input{resize:vertical}.form-input:focus{border-color:var(--bb-accent-text);box-shadow:0 0 0 3px var(--bb-accent-soft)}.form-input::placeholder{color:#b1a79e}.alert{border:1px solid var(--bb-line);border-radius:10px;align-items:flex-start;gap:8px;margin-bottom:16px;padding:11px 13px;font-size:13px;display:flex}.alert-error{background:var(--bb-danger-soft);color:var(--bb-danger);border-color:#f0ccc8}.alert-success{background:var(--bb-success-soft);color:var(--bb-success);border-color:#cae2cb}.alert-info{background:var(--bb-accent-soft);color:var(--bb-accent-text);border-color:#f1c7b9}.consent-panel{border:1px solid var(--bb-line);background:#fffcfa;border-radius:12px;margin:20px 0;overflow:hidden}.consent-all,.consent-row>label,.cookie-choice{align-items:flex-start;gap:9px;display:flex}.consent-all{border-bottom:1px solid var(--bb-line);padding:13px 14px;font-weight:800}.consent-list{padding:5px 14px}.consent-row{color:var(--bb-sub);padding:10px 0;font-size:12.5px;position:relative}.consent-row+.consent-row{border-top:1px solid var(--bb-line)}.consent-row input,.consent-all input,.cookie-choice input{width:16px;height:16px;accent-color:var(--bb-accent);margin:2px 0 0}.consent-row p{color:var(--bb-muted);margin:4px 0 0 25px;font-size:11.5px}.consent-link{font-size:11px;position:absolute;top:10px;right:0}.modal-backdrop{z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1c19177a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{border:1px solid var(--bb-line);background:var(--bb-card);width:min(100%,420px);box-shadow:var(--shadow-lg);text-align:center;border-radius:17px;padding:30px;position:relative}.modal-close{width:34px;height:34px;color:var(--bb-sub);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;right:12px}.modal-icon{background:var(--bb-accent-soft);width:48px;height:48px;color:var(--bb-accent-text);border-radius:13px;justify-content:center;align-items:center;margin-bottom:12px;display:inline-flex}.modal-card h2{margin:0 0 7px;font-size:19px;font-weight:900}.modal-card p{color:var(--bb-sub);margin:0;font-size:13px}.modal-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;display:grid}.spinner{border:2px solid var(--bb-line);border-top-color:var(--bb-accent);border-radius:999px;width:22px;height:22px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-stats,.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.admin-stat,.stat-card{border:1px solid var(--bb-line);background:var(--bb-card);box-shadow:var(--shadow-sm);border-radius:12px;padding:15px 16px}.admin-stat strong,.stat-value{font-size:22px;font-weight:900;line-height:1.2;display:block}.admin-stat span,.stat-label{color:var(--bb-sub);font-size:12px}.admin-menu-card{min-height:112px;color:var(--bb-ink);grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:14px;text-decoration:none;display:grid}.admin-menu-icon{background:var(--bb-accent-soft);width:42px;height:42px;color:var(--bb-accent-text);border-radius:11px;justify-content:center;align-items:center;display:flex}.admin-menu-copy strong,.admin-menu-copy small{display:block}.admin-menu-copy strong{margin-bottom:4px;font-size:15px}.admin-menu-copy small{color:var(--bb-sub);font-size:12px;line-height:1.55}.onboarding-header-actions{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.onboarding-help-button{border:1px solid var(--bb-line-strong);background:var(--bb-card);min-height:30px;color:var(--bb-sub);cursor:pointer;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:5px;padding:5px 8px;font-size:11.5px;font-weight:760;line-height:1;display:inline-flex}.onboarding-help-button:hover{border-color:var(--bb-accent);background:var(--bb-accent-soft);color:var(--bb-accent-text)}.onboarding-help-button:focus-visible,.onboarding-card button:focus-visible{outline:3px solid color-mix(in srgb, var(--bb-accent) 32%, transparent);outline-offset:2px}.onboarding-setup-card{margin-bottom:24px}.onboarding-setup-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:13px;display:flex}.onboarding-setup-heading p{color:var(--bb-sub);margin:4px 0 0;font-size:12.5px}.onboarding-setup-heading>strong{color:var(--bb-accent-text);flex:none;font-size:14px}.onboarding-setup-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.onboarding-setup-item{border:1px solid var(--bb-line);min-width:0;color:var(--bb-ink);border-radius:10px;grid-template-columns:18px minmax(0,1fr) 17px;align-items:center;gap:9px;padding:10px;text-decoration:none;display:grid}.onboarding-setup-item:hover{border-color:var(--bb-line-strong);background:#fcf8f5}.onboarding-setup-item>svg:first-child{color:var(--bb-muted)}.onboarding-setup-item>span{min-width:0}.onboarding-setup-item strong,.onboarding-setup-item small{display:block}.onboarding-setup-item strong{font-size:12.5px;line-height:1.35}.onboarding-setup-item small{color:var(--bb-sub);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;line-height:1.35;overflow:hidden}.onboarding-setup-item>svg:last-child{color:var(--bb-muted)}.onboarding-setup-item--complete{background:var(--bb-success-soft);border-color:#cae2cb}.onboarding-setup-item--complete>svg:first-child{color:var(--bb-success)}.onboarding-setup-status{color:var(--bb-sub);margin:11px 0 0;font-size:11.5px}.onboarding-layer{z-index:12000;pointer-events:auto;visibility:hidden;opacity:0;transition:opacity var(--transition-fast), visibility var(--transition-fast);position:fixed;inset:0}.onboarding-layer--ready{visibility:visible;opacity:1}.onboarding-dim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1c19178f;position:absolute;inset:0}.onboarding-highlight{z-index:1;border:2px solid var(--bb-accent);pointer-events:none;background:0 0;position:absolute;box-shadow:0 0 0 9999px #1c19178f}.onboarding-card{z-index:2;border:1px solid var(--bb-line);background:var(--bb-card);width:min(440px,100vw - 32px);box-shadow:var(--shadow-lg);border-radius:16px;padding:22px;position:absolute}.onboarding-welcome{top:50%;left:50%;transform:translate(-50%,-50%)}.onboarding-tooltip{width:min(360px,100vw - 32px)}.onboarding-card.onboarding-tooltip--sheet{width:100%;padding:20px max(20px, env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0;position:fixed;inset:auto 0 0;box-shadow:0 -12px 32px #1c191738}.onboarding-step-meta{color:var(--bb-sub);justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:11.5px;font-weight:800;display:flex}.onboarding-step-dots{align-items:center;gap:4px;display:flex}.onboarding-step-dots span{background:var(--bb-line-strong);border-radius:999px;width:5px;height:5px}.onboarding-step-dots .onboarding-step-dot--active{background:var(--bb-accent);width:16px}.onboarding-card h2{color:var(--bb-ink);letter-spacing:-.02em;margin:0 0 8px;font-size:18px;font-weight:900;line-height:1.35}.onboarding-card p{color:var(--bb-sub);white-space:pre-line;margin:0;font-size:13px;line-height:1.65}.onboarding-actions{justify-content:flex-end;align-items:center;gap:6px;margin-top:20px;display:flex}.onboarding-text-button{min-height:34px;color:var(--bb-sub);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:7px 8px;font-size:12px;font-weight:760}.onboarding-text-button:hover{background:var(--bb-accent-soft);color:var(--bb-accent-text)}.admin-member-panel{padding:18px}.admin-member-tools{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.admin-member-tools .filter-tabs{margin-bottom:0}.admin-member-search{border:1px solid var(--bb-line);min-width:min(100%,260px);min-height:36px;color:var(--bb-muted);background:#fff;border-radius:10px;align-items:center;gap:7px;padding:0 10px;display:flex}.admin-member-search:focus-within{border-color:var(--bb-accent-text);box-shadow:0 0 0 3px var(--bb-accent-soft)}.admin-member-search input{min-width:0;color:var(--bb-ink);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:12.5px}.admin-member-list{border-top:1px solid var(--bb-line)}.admin-member-row{border-bottom:1px solid var(--bb-line);justify-content:space-between;align-items:center;gap:18px;padding:15px 0;display:flex}.admin-member-row:last-child{border-bottom:0}.admin-member-main{min-width:0}.admin-member-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.admin-member-name strong{font-size:14px}.admin-member-main p,.admin-member-main small{overflow-wrap:anywhere;color:var(--bb-sub);font-size:11.5px;display:block}.admin-member-main p{margin:4px 0 2px}.filter-tabs{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.filter-tab{border:1px solid var(--bb-line);background:var(--bb-card);min-height:34px;color:var(--bb-sub);cursor:pointer;border-radius:999px;padding:7px 13px;font-size:12.5px;font-weight:750}.filter-tab.active{border-color:var(--bb-ink);background:var(--bb-ink);color:#fff}.table-container{width:100%;overflow-x:auto}.data-table,.admin-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th,.admin-table th{border-bottom:1.5px solid var(--bb-line);color:var(--bb-sub);letter-spacing:.03em;text-align:left;white-space:nowrap;padding:10px 12px;font-size:11.5px;font-weight:750}.data-table td,.admin-table td{border-bottom:1px solid var(--bb-line);vertical-align:middle;padding:11px 12px}.data-table tr:last-child td,.admin-table tr:last-child td{border-bottom:0}.admin-actions{flex-wrap:wrap;gap:6px;display:flex}.admin-lesson-row{border-bottom:1px solid var(--bb-line);justify-content:space-between;align-items:flex-start;gap:14px;padding:12px 0;display:flex}.admin-lesson-info{flex:1;min-width:0}.admin-lesson-title{font-size:14px;font-weight:750}.admin-lesson-url,.admin-lesson-url-text{color:var(--bb-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.admin-lesson-actions{flex-wrap:wrap;gap:6px;display:flex}.profile-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.profile-meta{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.profile-progress-list{flex-direction:column;gap:12px;display:flex}.profile-progress-row{border:1px solid var(--bb-line);border-radius:12px;padding:14px}.profile-progress-head{justify-content:space-between;gap:12px;margin-bottom:8px;display:flex}.notion-page-content{max-width:820px;color:var(--bb-ink);margin:0 auto;line-height:1.8}.notion-page-content .np-p,.notion-page-content p{margin:0 0 14px}.notion-page-content .np-h1,.notion-page-content h1{margin:30px 0 14px;font-size:28px;line-height:1.3}.notion-page-content .np-h2,.notion-page-content h2{margin:26px 0 12px;font-size:22px;line-height:1.35}.notion-page-content .np-h3,.notion-page-content h3{margin:22px 0 10px;font-size:18px}.notion-page-content .np-ul,.notion-page-content .np-ol,.notion-page-content ul,.notion-page-content ol{margin:0 0 16px;padding-left:24px}.notion-page-content li{margin-bottom:5px}.notion-page-content a{color:var(--bb-accent-text);font-weight:650}.notion-page-content .np-callout{border:1px solid var(--bb-line);background:#fff8f4;border-radius:12px;gap:10px;margin:18px 0;padding:15px;display:flex}.notion-page-content .np-quote{border-left:3px solid var(--bb-accent);color:var(--bb-sub);margin:18px 0;padding-left:15px}.notion-page-content .np-divider{background:var(--bb-line);border:0;height:1px;margin:26px 0}.notion-page-content .np-img,.notion-page-content img{border-radius:12px;height:auto}.notion-page-content .np-video-wrapper{aspect-ratio:16/9;background:#151311;border-radius:12px;position:relative;overflow:hidden}.notion-page-content .np-video-wrapper iframe,.notion-page-content .np-video-wrapper video{border:0;width:100%;height:100%}.notion-page-content .np-code,.notion-page-content pre{color:#f7f2ed;background:#26211e;border-radius:10px;padding:14px;font-size:13px;overflow-x:auto}.notion-page-content .np-inline-code,.notion-page-content code{color:var(--bb-accent-text);background:#f3ede8;border-radius:5px;padding:2px 5px}.notion-page-content .np-table,.notion-page-content table{border-collapse:collapse;width:100%;margin:18px 0}.notion-page-content th,.notion-page-content td{border:1px solid var(--bb-line);text-align:left;padding:9px 10px}.legal-page{width:min(100%,920px);margin:0 auto}.legal-hero{border:1px solid var(--bb-line);background:var(--bb-card);box-shadow:var(--shadow-sm);border-radius:18px;margin-bottom:20px;padding:28px}.legal-eyebrow{color:var(--bb-accent-text);letter-spacing:.09em;margin-bottom:7px;font-size:11px;font-weight:850;display:block}.legal-hero h1{margin:0 0 8px;font-size:clamp(26px,5vw,38px)}.legal-hero>p,.legal-meta{color:var(--bb-sub)}.legal-meta{margin-top:14px;font-size:12px}.legal-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px;display:grid}.legal-summary-item{border:1px solid var(--bb-line);background:var(--bb-card);border-radius:12px;padding:16px}.legal-summary-item>span{color:var(--bb-accent-text);margin-bottom:4px;font-size:11px;font-weight:800;display:block}.legal-summary-item strong{font-size:14px;display:block}.legal-summary-item p{color:var(--bb-sub);margin:5px 0 0;font-size:11.5px}.legal-article{border:1px solid var(--bb-line);background:var(--bb-card);border-radius:18px;padding:28px}.legal-article section+section{border-top:1px solid var(--bb-line);margin-top:30px;padding-top:26px}.legal-article h2{margin:0 0 11px;font-size:18px}.legal-article p,.legal-article li{color:var(--bb-sub);font-size:13px;line-height:1.8}.legal-table-wrap{margin:16px 0;overflow-x:auto}.legal-table-wrap table{border-collapse:collapse;width:100%;min-width:600px}.legal-table-wrap th,.legal-table-wrap td{border:1px solid var(--bb-line);color:var(--bb-sub);text-align:left;vertical-align:top;padding:10px;font-size:12px}.legal-contact-card{background:#faf6f2;border-radius:12px;padding:16px}.legal-page-footer{color:var(--bb-sub);text-align:center;padding:22px 0 0;font-size:12px}.cookie-banner{bottom:18px;right:18px;left:calc(var(--sidebar-width) + 18px);z-index:9000;position:fixed}.cookie-banner-inner{border:1px solid var(--bb-line);background:var(--bb-card);width:min(100%,760px);box-shadow:var(--shadow-lg);border-radius:15px;margin:0 auto;padding:16px}.cookie-heading{align-items:flex-start;gap:10px;display:flex}.cookie-heading h2{margin:0 0 3px;font-size:14px}.cookie-heading p{color:var(--bb-sub);margin:0;font-size:11.5px}.cookie-icon{color:var(--bb-accent-text);display:inline-flex}.cookie-close{cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;margin-left:auto;display:inline-flex}.cookie-settings{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.cookie-choice{border:1px solid var(--bb-line);border-radius:10px;padding:10px;font-size:12px}.cookie-choice strong,.cookie-choice small{display:block}.cookie-choice small{color:var(--bb-sub);margin-top:2px;font-size:10.5px}.cookie-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;margin-top:13px;display:flex}.flex{display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.mb-24{margin-bottom:24px}.mt-8{margin-top:8px}@media (max-width:980px){.lesson-page-grid{grid-template-columns:1fr}.course-toc{position:static}.admin-stats,.stats-grid,.grid-3,.legal-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){body{font-size:14px}.mobile-header{z-index:950;border-bottom:1px solid var(--bb-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;grid-template-columns:36px 1fr 34px;align-items:center;gap:10px;height:56px;padding:0 14px;display:grid;position:fixed;inset:0 0 auto}.mobile-menu-btn{cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}.mobile-logo{justify-self:center;font-size:16px}.mobile-avatar{width:30px;height:30px;font-size:11px}.sidebar{width:min(84vw,300px);box-shadow:var(--shadow-lg);padding-top:18px;transition:transform .22s;transform:translate(-102%)}.sidebar.open{transform:translate(0)}.sidebar-close{display:inline-flex}.sidebar-overlay{z-index:990;opacity:0;pointer-events:none;background:#1c191761;border:0;transition:opacity .2s;display:block;position:fixed;inset:0}.sidebar-overlay.open{opacity:1;pointer-events:auto}.main-content{margin-left:0;padding:76px 18px 42px}.home-shell{box-shadow:none;border-width:0;border-radius:0;margin:-20px -18px -42px}.home-hero{padding:34px 20px 26px}.home-hero h1{font-size:30px}.home-hero>p{font-size:14px}.home-hero .btn{width:100%}.home-section{padding:8px 18px 28px}.resource-grid{grid-template-columns:1fr}.resource-card{min-height:148px}.shortcut-grid,.profile-grid,.grid-2,.grid-3,.legal-summary-grid,.cookie-settings,.onboarding-setup-list{grid-template-columns:1fr}.onboarding-tooltip{width:100%;max-height:calc(100dvh - 24px);padding:20px max(18px, env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));border-bottom:0;border-left:0;border-right:0;border-radius:20px 20px 0 0;overflow-y:auto;inset:auto 0 0!important}.lesson-row{gap:10px;padding:11px 12px}.course-summary,.course-detail,.player-info,.course-toc{padding-left:16px;padding-right:16px}.course-summary{flex-direction:column;gap:8px}.course-progress-label{align-self:flex-end}.auth-page{min-height:calc(100vh - 76px);padding:0}.auth-card{border-radius:15px;padding:24px 20px}.admin-stats,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-actions{min-width:240px}.admin-member-tools,.admin-member-row{flex-direction:column;align-items:stretch}.admin-member-search{width:100%}.admin-member-row .admin-actions{min-width:0}.legal-hero,.legal-article{padding:20px}.cookie-banner{bottom:10px;left:10px;right:10px}}@media (max-width:420px){.main-content{padding-left:14px;padding-right:14px}.home-shell{margin-left:-14px;margin-right:-14px}.home-hero{padding-left:18px;padding-right:18px}.home-hero h1{font-size:28px}.home-section{padding-left:16px;padding-right:16px}.modal-actions,.stats-grid{grid-template-columns:1fr}.onboarding-card{padding:20px}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-member-panel{padding:14px}.admin-member-row .btn:not(.btn-danger){flex:1}.program-banner-head,.profile-progress-head{flex-direction:column}.gate-actions,.gate-actions .btn,.program-banner-actions,.program-banner-actions .btn{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@font-face{font-family:pretendard;src:url(../media/PretendardVariable-s.p.0a.~5ku~863u1.woff2)format("woff2");font-display:swap;font-weight:45 920}@font-face{font-family:pretendard Fallback;src:local(Arial);ascent-override:93.76%;descent-override:23.75%;line-gap-override:0.0%;size-adjust:101.55%}.pretendard_a274243e-module__AHrzrW__className{font-family:pretendard,pretendard Fallback}.pretendard_a274243e-module__AHrzrW__variable{--font-pretendard:"pretendard", "pretendard Fallback"}
