:root{--color-primary: #007AFF;--color-primary-bg: #EAF4FF;--color-primary-border: #BBDFFF;--color-primary-dark: #005BB5;--color-success: #16A34A;--color-success-bg: #ECFDF3;--color-success-border: #ABEFC6;--color-warning: #D97706;--color-warning-bg: #FFFAEB;--color-warning-border: #FEDF89;--color-purple-bg: #F4F3FF;--color-purple-border: #D9D6FE;--color-orange-bg: #FFF6ED;--color-orange-border: #FDDCAB;--color-bg-dark: #1e1e1e;--color-text-light: #d4d4d4;--color-bg-elevated: #F5F5F7;--color-bg: #F5F5F7;--color-surface: #FFFFFF;--color-border: #D2D2D7;--color-border-subtle: #E8E8ED;--color-text: #1D1D1F;--color-text-secondary: #6E6E73;--color-text-tertiary: #86868B;--elevation-low: 0 1px 2px rgba(0,0,0,.04);--elevation-med: 0 8px 24px rgba(0,0,0,.07);--elevation-high: 0 18px 52px rgba(0,0,0,.12)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;letter-spacing:0;text-rendering:optimizeLegibility;background:var(--color-bg);color:var(--color-text);line-height:1.65;line-break:strict;word-break:keep-all;overflow-wrap:anywhere;-webkit-tap-highlight-color:transparent}[role=button],button,[onclick],.ant-card[style*="cursor: pointer"],.ant-collapse-header,.ant-checkbox-wrapper{user-select:none;-webkit-user-select:none;cursor:pointer}[style*="cursor: pointer"]{user-select:none;-webkit-user-select:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#00000040}*{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent}.skip-link{position:absolute;top:0;left:0;transform:translateY(-120%);background:var(--color-primary);color:#fff;padding:8px 16px;z-index:9999;transition:transform .15s;border-radius:0 0 8px}.skip-link:focus{transform:translateY(0)}button:focus-visible,a:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-primary, #1677ff);outline-offset:2px;border-radius:4px}.ant-btn:focus-visible,.ant-menu-item:focus-visible,.ant-tabs-tab:focus-visible,.ant-card:focus-visible,.ant-tag:focus-visible{outline:2px solid var(--color-primary, #1677ff);outline-offset:2px}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideInBack{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes bounce{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.15)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes dotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.7}}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 3px rgba(var(--pulse-color, 22, 119, 255),.2)}50%{box-shadow:0 0 0 6px rgba(var(--pulse-color, 22, 119, 255),.1)}}@keyframes gradientSweep{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.anim-fade-slide-in{animation:fadeSlideIn .42s cubic-bezier(.22,1,.36,1)}.anim-fade-slide-in-fill{animation:fadeSlideIn .42s cubic-bezier(.22,1,.36,1) both}.anim-fade-slide-in-back{animation:fadeSlideInBack .22s ease-out}.step-card-rise-enter,.step-card-rise-appear{opacity:0;transform:translateY(24px) scale(.985);transform-origin:center center}.step-card-rise-enter-active,.step-card-rise-appear-active{animation:stepCardRiseIn .36s cubic-bezier(.22,1,.36,1) forwards}.step-card-rise-leave{opacity:1;transform:translateY(0) scale(1)}.step-card-rise-leave-active{animation:stepCardRiseOut .2s cubic-bezier(.4,0,1,1) forwards}@keyframes stepCardRiseIn{0%{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes stepCardRiseOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(16px) scale(.99)}}.step-card-fade-enter,.step-card-fade-appear{opacity:0}.step-card-fade-enter-active,.step-card-fade-appear-active{animation:stepCardFadeIn .28s ease-out forwards}.step-card-fade-leave{opacity:1}.step-card-fade-leave-active{animation:stepCardFadeOut .2s ease-in forwards}@keyframes stepCardFadeIn{0%{opacity:0}to{opacity:1}}@keyframes stepCardFadeOut{0%{opacity:1}to{opacity:0}}.anim-fade-in{animation:fadeIn .25s ease-out}.anim-scale-in{animation:scaleIn .4s cubic-bezier(.34,1.56,.64,1)}.anim-slide-in-right{animation:slideInRight .25s ease-out}.hero-gradient-blue{background:var(--color-primary-dark);border:none;overflow:hidden}.hero-gradient-dark{background:#1e293b;border:none;overflow:hidden}.chat-bubble-ai{background:#f8f9fa;border:1px solid #e8eaed;border-radius:4px 16px 16px}.chat-bubble-user{background:var(--color-primary-bg);border:1px solid var(--color-primary-border);border-radius:16px 4px 16px 16px}.chat-code-block{margin:8px 0;border-radius:6px;overflow:hidden;border:1px solid #333}.chat-code-content{margin:0;padding:12px;background:var(--color-bg-dark);color:var(--color-text-light);font-family:Fira Code,Cascadia Code,Menlo,monospace;font-size:12px;line-height:1.6;overflow-x:auto;white-space:pre}.code-editor-dark{font-family:Fira Code,Cascadia Code,Menlo,monospace;font-size:13px;line-height:1.6;border:none;border-radius:0;resize:none;background:var(--color-bg-dark);color:var(--color-text-light);padding:12px}.terminal-dark{padding:12px;margin:0;font-family:Fira Code,Menlo,monospace;font-size:12px;background:var(--color-bg-dark);color:var(--color-text-light);height:100%;overflow:auto;white-space:pre-wrap}@keyframes terminalBlink{0%,49%{opacity:1}50%,to{opacity:0}}.terminal-cursor{display:inline-block;width:8px;height:14px;background:var(--color-text-light);animation:terminalBlink 1s step-end infinite;vertical-align:text-bottom;margin-left:1px}@keyframes vscodeHighlightPulse{0%,to{stroke-opacity:1}50%{stroke-opacity:.5}}.vscode-highlight{animation:vscodeHighlightPulse 2s ease-in-out infinite}.vscode-tooltip{animation:fadeSlideIn .25s ease-out}.dot-pulse-indicator{display:inline-block;width:6px;height:6px;background:var(--color-success);border-radius:50%;animation:dotPulse 1.4s ease-in-out infinite}.chat-stage-select .ant-select-selector{background:#ffffff8a!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:999px!important;box-shadow:inset 0 1px #ffffff9e!important}.chat-stage-select .ant-select-selection-placeholder,.chat-stage-select .ant-select-selection-item{color:#1d1d1fbd!important;font-size:11px!important}.chat-stage-select .ant-select-arrow,.chat-stage-select .ant-select-clear{color:#1d1d1f8a!important}.unread-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.icon-circle-sm{width:28px;height:28px;border-radius:8px;background:#ffffff1f;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px}.icon-circle-md{width:64px;height:64px;border-radius:8px;background:#ffffff26;display:flex;align-items:center;justify-content:center;font-size:28px}.legend-dot{width:10px;height:10px;border-radius:2px}.text-2xs{font-size:11px}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.text-3xl{font-size:28px}.text-4xl{font-size:32px}.text-5xl{font-size:40px}.text-emoji{font-size:48px}.text-emoji-lg{font-size:64px}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-black{font-weight:900}.leading-none{line-height:1}.leading-tight{line-height:1.3}.leading-snug{line-height:1.5}.leading-relaxed{line-height:1.7}.leading-loose{line-height:1.8}.tabular-nums{font-variant-numeric:tabular-nums}.whitespace-pre-wrap{white-space:pre-wrap}.content-container-md{max-width:800px;margin-left:auto;margin-right:auto}.content-container-lg{max-width:1120px;margin-left:auto;margin-right:auto}.text-white{color:#fff}.text-white-muted{color:#fffc}.text-white-dim,.text-white-faint{color:#ffffffb3}.text-white-ghost{color:#fff9}.ant-typography h1,.ant-typography h2,.ant-typography h3,.ant-typography h4,.ant-typography h5{font-weight:600!important;letter-spacing:-.014em;color:var(--color-text)}h1.ant-typography{font-weight:700!important;letter-spacing:-.02em}h2.ant-typography{font-weight:700!important;letter-spacing:-.018em}.ant-descriptions-item-label{font-weight:600!important;color:var(--color-text-secondary)!important}.ant-steps .ant-steps-item-title,.ant-alert-message{font-weight:600!important}.ant-card{transition:box-shadow .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1),border-color .22s ease;border-radius:14px;border-color:var(--color-border);box-shadow:var(--elevation-low)}.ant-card-hoverable:hover{box-shadow:var(--elevation-med);border-color:var(--color-primary-border);transform:translateY(-2px)}.app-surface-scope{position:relative;isolation:isolate;background:linear-gradient(180deg,#fbfbfd,#f5f5f7 48% 100%),#f5f5f7!important}.app-surface-scope:before{display:none}.app-surface-scope>.anim-fade-slide-in{width:100%}.app-surface-scope .content-container-md,.app-surface-scope .content-container-lg{padding-bottom:48px}.app-surface-scope .ant-card{position:relative;overflow:hidden;border-radius:18px!important;border-color:#d2d2d7!important;box-shadow:none!important;background:#ffffffe0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.app-surface-scope .ant-card:before{display:none}.app-surface-scope .ant-card>.ant-card-head,.app-surface-scope .ant-card>.ant-card-body,.app-surface-scope .ant-card>.ant-card-actions,.app-surface-scope .ant-card .ant-card-cover{position:relative;z-index:1}.app-surface-scope .ant-card>.ant-card-head{border-bottom-color:#e8e8ed!important;background:#ffffffb8;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.app-surface-scope .ant-card>.ant-card-body{background:transparent}.app-surface-scope .ant-card-hoverable:hover{transform:translateY(-1px);border-color:#b9b9c0!important;box-shadow:0 8px 24px #0000000f!important}.app-surface-scope .ant-btn-primary{background:var(--color-primary)!important;border-color:var(--color-primary)!important;box-shadow:none!important}.app-surface-scope .ant-btn-primary:not(:disabled):hover{background:var(--color-primary-dark)!important;border-color:var(--color-primary-dark)!important}.app-surface-scope .ant-btn{border-radius:999px;font-weight:600}.app-surface-scope .ant-tag{border-radius:999px}.app-surface-scope .ant-segmented{background:#fff;border:1px solid #e8e8ed;border-radius:999px;padding:3px}.app-surface-scope .ant-segmented-item{border-radius:999px}.app-surface-scope .ant-input,.app-surface-scope .ant-input-affix-wrapper,.app-surface-scope .ant-select-selector{border-color:#d2d2d7!important;border-radius:12px!important;box-shadow:none!important;background:#ffffffd6!important}.app-surface-scope .ant-alert{border-radius:16px}.app-surface-scope .ant-typography-secondary,.app-surface-scope .ant-card .ant-typography-secondary{line-height:1.55}.app-surface-scope .ant-card .ant-typography-secondary:not(.no-clamp),.app-surface-scope .ant-card p:not(.no-clamp){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.app-surface-scope .hero-gradient-blue,.app-surface-scope .hero-gradient-dark{background:#fff!important;color:#1d1d1f!important;border:1px solid #d2d2d7!important;box-shadow:none!important}.app-surface-scope--apple-learning{background:linear-gradient(180deg,#fbfbfd,#f5f5f7 42% 100%)!important}.app-surface-scope--apple-learning .ant-card{border-radius:22px!important;border-color:#d2d2d7!important;background:#ffffffe6!important;box-shadow:none!important}.app-surface-scope--apple-learning .ant-card[style*=radial-gradient],.app-surface-scope--apple-learning .ant-card[style*=linear-gradient]{background:#ffffffe6!important}.app-surface-scope--apple-learning .ant-card>.ant-card-body[style*=radial-gradient],.app-surface-scope--apple-learning .ant-card>.ant-card-body[style*=linear-gradient]{background:transparent!important}.app-surface-scope--apple-learning [aria-hidden=true][style*=radial-gradient]{display:none!important}.app-surface-scope--apple-learning .ant-card-hoverable:hover,.app-surface-scope--apple-learning [role=button]:hover{transform:translateY(-1px)}.app-surface-scope--apple-learning .ant-btn-primary:not(:disabled){background:#007aff!important;border-color:#007aff!important}.app-surface-scope--apple-learning .ant-btn-primary:not(:disabled):hover{background:#005bb5!important;border-color:#005bb5!important}.app-surface-scope--apple-learning .ant-table,.app-surface-scope--apple-learning .ant-table-container{border-radius:18px!important}.app-surface-scope--apple-learning .ant-table-thead>tr>th{background:#fbfbfd!important;color:#6e6e73!important}.app-surface-scope--apple-learning .ant-tabs-nav:before,.app-surface-scope--apple-learning .ant-divider{border-color:#d2d2d7!important}.app-surface-scope--admin{background:linear-gradient(180deg,#fbfbfd,#f5f5f7 54% 100%)!important}.app-surface-scope--admin:before{display:none}.app-surface-scope--admin .ant-card{border-radius:18px!important;border-color:#d2d2d7!important;background:#ffffffe0;box-shadow:none!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.app-surface-scope--admin .ant-card:before{display:none}.app-surface-scope--admin .ant-card>.ant-card-head{background:#ffffffb8;border-bottom-color:#e8e8ed!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.app-surface-scope--admin .ant-card-hoverable:hover{border-color:#b9b9c0!important;box-shadow:0 8px 24px #0000000f!important}.app-surface-scope--admin .ant-btn-primary{background:var(--color-primary)!important;border-color:var(--color-primary)!important}.app-surface-scope--admin .ant-btn-primary:not(:disabled):hover{background:var(--color-primary-dark)!important;border-color:var(--color-primary-dark)!important;box-shadow:none!important}.app-surface-scope--admin .ant-input,.app-surface-scope--admin .ant-input-affix-wrapper,.app-surface-scope--admin .ant-select-selector{border-color:#d2d2d7!important;background:#ffffffd6!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.app-surface-scope--admin .ant-table-wrapper .ant-table,.app-surface-scope--admin .ant-table-wrapper .ant-table-container{background:#ffffffd6}.app-surface-scope--admin .ant-table-thead>tr>th{background:#fbfbfdeb!important;color:#6e6e73!important;border-bottom-color:#e8e8ed!important}.app-surface-scope--admin .ant-table-tbody>tr>td{border-bottom-color:#e8e8ed!important}.app-surface-scope--admin .ant-table-tbody>tr.ant-table-row:hover>td{background:#f5f5f7!important}.app-surface-scope--admin .ant-tag{border-color:#d2d2d7;background:#ffffffd6}.admin-page-header{position:relative;overflow:hidden;border-radius:24px;background:#fcfcfb;color:#111;min-height:260px;padding:0;margin-bottom:20px;border:1px solid #e7e7e4;box-shadow:0 32px 64px -42px #1f23283d;display:flex;flex-direction:column;justify-content:flex-end;font-family:Geist,-apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif}.admin-page-header:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffffb8,#f5f5f700);opacity:.72;pointer-events:none;transition:opacity .5s ease}.admin-page-header:hover:before{opacity:.6}.admin-page-header__content{position:relative;z-index:1;width:100%;padding:24px;background:#ffffff57;border-top:1px solid rgba(255,255,255,.52);border-bottom-left-radius:24px;border-bottom-right-radius:24px;box-shadow:0 32px 64px -34px #1f23282e;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.admin-page-header__top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.admin-page-header__copy{min-width:0;flex:1}.admin-page-header__eyebrow{display:inline-block;padding:8px 14px;border-radius:999px;background:#fdf8f8b8;border:1px solid rgba(231,231,228,.78);font-size:11px;font-weight:600;letter-spacing:0;color:#111;margin-bottom:8px}.admin-page-header__title{margin:0;font-size:clamp(22px,4vw,28px);font-weight:650;letter-spacing:0;line-height:1.2;color:#111;word-break:break-word}.admin-page-header__subtitle{margin:8px 0 0;font-size:14px;color:#111111a8;max-width:640px;line-height:1.5;word-break:break-word}.admin-page-header__extra{flex-shrink:0}.admin-page-header__kpis{display:grid;gap:1px;margin-top:24px;border-radius:10px;overflow:hidden;background:#ffffff57;border:1px solid rgba(255,255,255,.52)}.admin-page-header__kpi{background:#ffffff47;padding:16px 18px}.admin-page-header__kpi-label{display:block;font-size:11px;font-weight:600;letter-spacing:0;color:#1111118f;margin-bottom:6px}.admin-page-header__kpi-value{display:flex;align-items:baseline;gap:4px;font-size:26px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1;color:#111}.admin-page-header__kpi-value--warn{color:#a15c00}.admin-page-header__kpi-suffix{font-size:14px;font-weight:600;color:#11111185}.admin-page-header__extra .ant-btn{color:#111;background:#ffffff8a;border-color:#e7e7e4e6;box-shadow:none}.admin-page-header__extra .ant-btn:hover{color:#111!important;background:#ffffffc2!important;border-color:#d2d2d7f5!important}@media(max-width:599px){.admin-page-header{min-height:300px}.admin-page-header__extra{width:100%}}.app-surface-scope--admin{background:linear-gradient(180deg,#fff,#f5f5f7 180px 100%)!important}.app-surface-scope--admin>.anim-fade-slide-in{max-width:1240px;margin:0 auto}.app-surface-scope--admin .ant-space{max-width:100%}.app-surface-scope--admin .ant-card{border-radius:20px!important;border-color:#d2d2d7eb!important;background:#fffffff0!important;box-shadow:none!important}.app-surface-scope--admin .ant-card>.ant-card-head{min-height:52px;padding-inline:18px;background:#ffffffdb!important}.app-surface-scope--admin .ant-card>.ant-card-head .ant-card-head-title{font-size:15px;font-weight:650;color:#1d1d1f}.app-surface-scope--admin .ant-card>.ant-card-body{padding:18px}.app-surface-scope--admin .ant-card-hoverable:hover,.app-surface-scope--admin [role=button]:hover{transform:translateY(-1px);border-color:#007aff57!important;box-shadow:0 10px 30px #0000000e!important}.app-surface-scope--admin .ant-table-wrapper{border:1px solid #e8e8ed;border-radius:20px;overflow:hidden;background:#fffffff0}.app-surface-scope--admin .ant-card .ant-table-wrapper{border:0;border-radius:14px}.app-surface-scope--admin .ant-table-wrapper .ant-table,.app-surface-scope--admin .ant-table-wrapper .ant-table-container{background:transparent!important}.app-surface-scope--admin .ant-table-thead>tr>th{height:44px;background:#fbfbfd!important;color:#6e6e73!important;font-size:12px;font-weight:650!important;letter-spacing:0}.app-surface-scope--admin .ant-table-tbody>tr>td{padding-block:13px;color:#1d1d1f}.app-surface-scope--admin .ant-table-tbody>tr.ant-table-row:hover>td{background:#f5f9ff!important}.app-surface-scope--admin .ant-statistic-title{margin-bottom:8px;color:#6e6e73!important;font-size:12px!important;font-weight:650}.app-surface-scope--admin .ant-statistic-content{color:#1d1d1f!important;font-weight:650;font-variant-numeric:tabular-nums}.app-surface-scope--admin .ant-tabs-nav:before,.app-surface-scope--admin .ant-divider{border-color:#e8e8ed!important}.app-surface-scope--admin .ant-alert{border-radius:16px!important;border-color:#d2d2d7!important;background:#ffffffeb!important}.app-surface-scope--admin .ant-input,.app-surface-scope--admin .ant-input-affix-wrapper,.app-surface-scope--admin .ant-select-selector,.app-surface-scope--admin .ant-picker{min-height:38px;border-radius:14px!important;border-color:#d2d2d7!important;background:#fff!important}.app-surface-scope--admin .ant-btn{min-height:36px}.app-surface-scope--admin .ant-btn-default:not(:disabled):hover{color:#007aff!important;border-color:#007aff6b!important;background:#f5f9ff!important}.app-surface-scope--admin .ant-tag{min-height:24px;display:inline-flex;align-items:center;border-radius:999px!important;font-size:12px;font-weight:600}.app-surface-scope--admin .ant-card .ant-typography-secondary:not(.no-clamp),.app-surface-scope--admin .ant-card p:not(.no-clamp){display:block;-webkit-line-clamp:unset;overflow:visible}.admin-page-header{min-height:0;margin-bottom:20px;border-radius:24px;border-color:#d2d2d7eb;background:#fffffff0;box-shadow:none;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,Yu Gothic,Meiryo,sans-serif}.admin-page-header:before{display:none}.admin-page-header__content{padding:24px;border:0;border-radius:24px;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.admin-page-header__top{align-items:center;gap:20px}.admin-page-header__eyebrow{padding:0;border:0;border-radius:0;background:transparent;color:#6e6e73;font-size:12px;font-weight:650;letter-spacing:0;margin-bottom:6px}.admin-page-header__title{color:#1d1d1f;font-size:clamp(24px,3.4vw,34px);font-weight:700;letter-spacing:0;line-height:1.12}.admin-page-header__subtitle{max-width:760px;color:#6e6e73;font-size:14px;line-height:1.65}.admin-page-header__kpis{gap:10px;margin-top:20px;border:0;border-radius:0;background:transparent;overflow:visible}.admin-page-header__kpi{min-width:0;padding:16px;border:1px solid #e8e8ed;border-radius:16px;background:#fbfbfd}.admin-page-header__kpi-label{color:#6e6e73;letter-spacing:0}.admin-page-header__kpi-value{color:#1d1d1f;font-weight:700}.admin-page-header__kpi-value--warn{color:#bf5b00}.admin-page-header__kpi-suffix{color:#86868b}.admin-page-header__extra{display:flex;justify-content:flex-end;gap:8px}.admin-page-header__extra .ant-btn{color:#1d1d1f;background:#fff;border-color:#d2d2d7}.admin-page-header__extra .ant-btn-primary{color:#fff!important}.admin-overview{color:#1d1d1f}.admin-overview__hero{flex-direction:row;box-shadow:0 1px #1d1d1f05}.admin-overview__back{width:44px;height:44px;color:#1d1d1f!important;border-radius:999px!important}.admin-overview__back:hover{background:#f2f2f7!important}.admin-overview__hero-meta{justify-content:flex-end}.admin-overview__hero-meta .ant-select-selector{border-radius:999px!important}.admin-overview__kpi-card.ant-card{border-radius:18px!important;background:#fff!important}.admin-overview__kpi-card.ant-card:hover{border-color:#c7c7cc!important}.admin-overview__kpi-card .ant-statistic-content{line-height:1.1}.admin-overview__kpi-card .ant-statistic-content-value{font-size:25px;font-weight:750}.admin-overview__progress-row .ant-card-extra .ant-segmented{min-height:42px;border:1px solid #d2d2d7;border-radius:999px;background:#f2f2f7;padding:4px}.admin-overview__progress-row .ant-card-extra .ant-segmented-item{min-width:68px;min-height:32px;border-radius:999px;color:#6e6e73;font-weight:700;line-height:32px}.admin-overview__progress-row .ant-card-extra .ant-segmented-thumb,.admin-overview__progress-row .ant-card-extra .ant-segmented-item-selected{border-radius:999px!important;background:#1d1d1f!important;box-shadow:none!important}.admin-overview__progress-row .ant-card-extra .ant-segmented-item-selected{color:#fff!important}.admin-overview__course-card.ant-card{height:100%;border-radius:18px!important;background:#fff!important}.admin-overview__course-card.ant-card:hover{border-color:#c7c7cc!important;box-shadow:0 8px 22px #0000000b!important}.admin-overview__course-card h4.ant-typography{font-size:21px;font-weight:750!important;letter-spacing:0}.admin-overview__mini-stat{min-height:58px;padding:10px;border:1px solid #ececf0;border-radius:12px;background:#f8f8fa;display:flex;flex-direction:column;justify-content:center}.admin-overview__mini-stat strong{color:#1d1d1f;font-size:21px;line-height:1;font-variant-numeric:tabular-nums}.admin-overview__mini-stat span{margin-top:4px;color:#6e6e73;font-size:12px;font-weight:650}@media(max-width:599px){.app-surface-scope--admin>.anim-fade-slide-in{max-width:none}.admin-page-header{min-height:0;border-radius:20px}.admin-page-header__content{padding:18px;border-radius:20px}.admin-page-header__top{align-items:stretch}.admin-page-header__extra,.admin-page-header__extra .ant-btn{width:100%}.admin-overview__hero{flex-direction:column;align-items:stretch!important}.admin-overview__hero-main{align-items:flex-start!important}.admin-overview__hero-meta{justify-content:flex-start}.admin-overview .ant-card-head-wrapper{flex-wrap:wrap;align-items:flex-start;gap:10px}.admin-overview .ant-card-head-title{flex:1 0 100%;padding-bottom:0}.admin-overview .ant-card-extra{width:100%;margin-left:0}.admin-overview__progress-row .ant-card-extra{width:100%;margin-top:12px}.admin-overview__progress-row .ant-card-extra .ant-segmented{width:100%}.admin-overview__progress-row .ant-card-extra .ant-segmented-group{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-overview__progress-row .ant-card-extra .ant-segmented-item{min-width:0;font-size:12px}}.hint-card-blue{background:var(--color-primary-bg);border:1px solid var(--color-primary-border)}.hint-card-yellow{background:var(--color-orange-bg);border:1px solid var(--color-orange-border)}.hint-card-purple{background:var(--color-purple-bg);border:1px solid var(--color-purple-border)}.hint-card-green{background:var(--color-success-bg);border:1px solid var(--color-success-border)}.tip-card{border-style:dashed;background:var(--color-warning-bg);border-color:var(--color-warning-border)}.member-row-highlight td{background:var(--color-purple-bg);font-weight:600}.member-row-gold td{background:var(--color-warning-bg)}.member-row-silver td{background:#f5f5f5}.member-row-bronze td{background:var(--color-orange-bg)}@keyframes arrowSlide{0%{opacity:.5;transform:translate(-3px)}50%{opacity:1;transform:translate(3px)}to{opacity:.5;transform:translate(-3px)}}@keyframes arrowSlideDown{0%{opacity:.5;transform:translateY(-3px)}50%{opacity:1;transform:translateY(3px)}to{opacity:.5;transform:translateY(-3px)}}.git-arrow-pulse{animation:arrowSlide 1.5s ease-in-out infinite}.git-arrow-pulse[style*="flex-direction: column"]{animation:arrowSlideDown 1.5s ease-in-out infinite}.ant-btn{font-weight:600;border-radius:10px;transition:all .18s cubic-bezier(.22,1,.36,1)}.ant-btn-primary{font-weight:600}.ant-btn-primary:not(:disabled):hover{box-shadow:0 4px 12px #4338ca38}.ant-btn-lg{font-weight:600;font-size:16px;border-radius:12px}.ant-tag{font-weight:500;border-radius:8px;padding:2px 10px}.ant-statistic .ant-statistic-content-value{font-weight:600!important;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.ant-statistic .ant-statistic-title{font-weight:500;color:var(--color-text-secondary)}.ant-progress .ant-progress-text{font-weight:600;font-variant-numeric:tabular-nums}.ant-menu-inline .ant-menu-item-group-title{padding-left:16px!important;font-size:11px}.ant-menu-inline .ant-menu-submenu-title{font-weight:500}.app-sidebar{box-shadow:none!important}.app-sidebar__nav{padding:10px 8px;scrollbar-width:thin;scrollbar-color:#d2d2d7 transparent}.app-sidebar__nav::-webkit-scrollbar{width:6px}.app-sidebar__nav::-webkit-scrollbar-thumb{background:#d2d2d7;border-radius:999px}.app-sidebar__menu{background:transparent!important;color:#1d1d1f;font-size:14px}.app-sidebar__menu.ant-menu-inline,.app-sidebar__menu .ant-menu{background:transparent!important}.app-sidebar__menu.ant-menu-inline .ant-menu-item,.app-sidebar__menu.ant-menu-inline .ant-menu-submenu-title{width:100%;height:38px;line-height:38px;margin:2px 0;padding-inline:12px!important;border-radius:11px;color:#3a3a3c;transition:background-color .16s ease,color .16s ease}.app-sidebar__menu.ant-menu-inline .ant-menu-item .anticon,.app-sidebar__menu.ant-menu-inline .ant-menu-submenu-title .anticon{color:#6e6e73;font-size:15px}.app-sidebar__menu.ant-menu-inline .ant-menu-item:hover,.app-sidebar__menu.ant-menu-inline .ant-menu-submenu-title:hover{background:#007aff14;color:#1d1d1f}.app-sidebar__menu.ant-menu-inline .ant-menu-item-selected{background:#eaf4ff!important;color:#007aff!important;font-weight:700}.app-sidebar__menu.ant-menu-inline .ant-menu-item-selected:after{display:none}.app-sidebar__menu.ant-menu-inline .ant-menu-item-selected .anticon{color:#007aff}.app-sidebar__menu.ant-menu-inline .ant-menu-submenu-selected>.ant-menu-submenu-title{color:#1d1d1f;font-weight:700}.app-sidebar__menu.ant-menu-inline .ant-menu-sub{padding:2px 0 6px 10px}.app-sidebar__menu.ant-menu-inline .ant-menu-sub .ant-menu-item{height:34px;line-height:34px;margin:1px 0;color:#6e6e73;font-size:13px}.app-sidebar__menu .ant-menu-title-content{min-width:0;overflow:hidden;text-overflow:ellipsis}.app-sidebar__course-tag{border-radius:999px;line-height:20px}@media(max-width:575px){#main-content{padding:12px}.ant-card .ant-card-body{padding:16px}.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-inline-start:4px}.ant-descriptions{overflow-x:auto}.ant-tabs-nav{flex-wrap:nowrap}.ant-collapse>.ant-collapse-item>.ant-collapse-header{padding:10px 12px}}@media(max-height:500px)and (orientation:landscape){#main-content{padding:8px 16px}}.benchmark-img-no-gray .ant-image-mask{background:transparent!important;opacity:1!important}.benchmark-img-no-gray .ant-image-mask:hover{background:#00000026!important}.row-pending-review>td{background:#fffbe6!important}.row-pending-review:hover>td{background:#fff7cc!important}@media(max-width:1023px){.admin-hero-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(max-width:599px){.admin-hero-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}.tutorial-modal-root,.tutorial-modal-root .ant-modal-root,.tutorial-modal-root .ant-modal-wrap,.tutorial-modal-fullscreen{inset:0!important;padding:0!important;margin:0!important;width:100vw!important;max-width:none!important;overflow:hidden!important}.tutorial-modal-root .ant-modal-mask{display:none!important}.tutorial-modal-root .tutorial-modal-fullscreen{padding:0!important}.tutorial-modal-fullscreen .ant-modal{top:0!important;left:0!important;margin:0!important;padding:0!important;max-width:none!important;width:100vw!important;height:100vh!important}.tutorial-modal-fullscreen .ant-modal-content{width:100vw!important;height:100vh!important;padding:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}.tutorial-modal-fullscreen .ant-modal-body{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;padding:0!important;overflow:hidden!important}@media(max-width:768px){.slide-mascot-zone{display:none!important}}#dtn-launcher,#dtn-pill,#dtn-panel,#dtn-toast,#dtn-selbox,#dtn-tip,#dtn-guide-v,#dtn-guide-h{display:none!important}@media(max-width:640px){#tour-ai-chat,#dtn-launcher,#dtn-pill,#dtn-panel,#dtn-toast,#dtn-selbox,#dtn-tip,#dtn-guide-v,#dtn-guide-h,.dev-sandbox-toggle,.dev-sandbox-panel,.tutorial-top-close{display:none!important}.tutorial-footer-nav{display:grid!important;grid-template-columns:56px minmax(0,1fr) 56px;gap:8px!important;padding:10px 16px 16px!important;width:100vw;box-sizing:border-box}.tutorial-footer-side{width:56px!important;min-width:0!important}.tutorial-footer-side-right{justify-content:flex-end!important}.tutorial-nav-button{width:56px!important;min-width:56px!important;max-width:56px!important;padding:0!important}.tutorial-slide-card{width:calc(100vw - 24px)!important;height:calc(100vh - 210px)!important;aspect-ratio:auto!important;max-width:none!important}.tutorial-slide-content{padding:32px 24px 96px!important}.tutorial-slide-mascot{right:16px!important;bottom:14px!important;opacity:.28;transform:scale(.78);transform-origin:bottom right}.tutorial-nav-label{display:none!important}.tutorial-modal-fullscreen .tutorial-progress-seg{min-width:4px;height:11px}.tutorial-modal-fullscreen .tutorial-topbar-scale{height:13px!important}}.tutorial-modal-fullscreen .tutorial-footer-nav{position:absolute!important;top:max(8px,env(safe-area-inset-top))!important;left:0!important;right:0!important;padding:0 clamp(12px,2vw,22px)!important;z-index:8!important}.tutorial-modal-fullscreen .tutorial-bottom-nav{position:absolute!important;left:0!important;right:0!important;bottom:max(8px,env(safe-area-inset-bottom))!important;padding:0 clamp(12px,2vw,28px)!important;z-index:8!important}.tutorial-modal-fullscreen .tutorial-modal-body{position:absolute!important;inset:0!important;padding:0!important}.tutorial-modal-fullscreen .tutorial-slide-card{width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;aspect-ratio:auto!important;box-shadow:none!important}.tutorial-modal-fullscreen .tutorial-slide-content{padding-top:clamp(58px,9vh,86px)!important;padding-bottom:clamp(76px,11vh,104px)!important;padding-left:clamp(28px,7vw,104px)!important;padding-right:clamp(28px,7vw,104px)!important}.tutorial-modal-fullscreen .tutorial-slide-title{font-size:clamp(26px,1.6vw + 2.4vh,42px)!important;line-height:1.16!important}.tutorial-slide-scroll{scrollbar-width:thin;scrollbar-color:rgba(40,48,68,.38) transparent}.tutorial-slide-scroll>*{flex-shrink:0}.tutorial-slide-reference-urls{flex-shrink:0;width:100%;z-index:3}.tutorial-slide-scroll::-webkit-scrollbar{width:10px}.tutorial-slide-scroll::-webkit-scrollbar-thumb{background:#28304452;border-radius:8px}.tutorial-modal-fullscreen .tutorial-top-close{background:#ffffffd1!important;color:#283044!important;border:1px solid rgba(40,48,68,.12)!important;box-shadow:0 10px 26px #0f172a1f!important}.tutorial-modal-fullscreen .tutorial-nav-button-back{background:#ffffffe0!important;color:#283044!important;border:1px solid rgba(40,48,68,.14)!important;box-shadow:0 10px 26px #0f172a1f!important}.tutorial-modal-fullscreen .tutorial-nav-button-next{background:#6c63ff!important;box-shadow:0 12px 28px #6c63ff52!important}.tutorial-modal-fullscreen .tutorial-progress-seg{position:relative;flex:1 1 0;min-width:8px;height:16px;padding:0;border:none;border-radius:999px;background:#28304424;overflow:hidden;cursor:pointer;transition:box-shadow .18s ease}.tutorial-modal-fullscreen .tutorial-progress-seg.is-current{cursor:default}.tutorial-modal-fullscreen .tutorial-progress-seg-fill{position:absolute;top:0;bottom:0;left:0;border-radius:inherit;transition:width .55s cubic-bezier(.22,1,.36,1)}.tutorial-modal-fullscreen .tutorial-progress-seg.is-current .tutorial-progress-seg-fill:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 32%,rgba(255,255,255,.6) 50%,transparent 68%);background-size:220% 100%;animation:tutorial-seg-shine 1.8s ease-in-out infinite}@keyframes tutorial-seg-shine{0%{background-position:170% 0}to{background-position:-70% 0}}.tutorial-modal-fullscreen .tutorial-slide-mascot{right:clamp(16px,3vw,42px)!important;bottom:clamp(62px,10vh,90px)!important;transform:scale(.86);transform-origin:bottom right;opacity:.62!important;filter:drop-shadow(0 10px 18px rgba(108,99,255,.24))}@media(max-width:640px){.tutorial-modal-fullscreen .tutorial-slide-title{font-size:clamp(24px,1.6vw + 2.4vh,30px)!important;line-height:1.16!important}.tutorial-modal-fullscreen .tutorial-slide-mascot{display:none!important}}.submission-upload-zone .ant-upload-wrapper .ant-upload-select,.submission-upload-zone .ant-upload-wrapper .ant-upload-select:hover{background:transparent!important;box-shadow:none!important}.app-surface-scope .submission-surface .ant-btn-primary:not(:disabled){background:var(--color-primary)!important;border-color:var(--color-primary)!important;color:#fff!important;box-shadow:0 4px 14px #4338ca47!important}.app-surface-scope .submission-surface .ant-btn-primary:not(:disabled):hover{background:var(--color-primary-dark)!important;border-color:var(--color-primary-dark)!important}.app-surface-scope .submission-surface .ant-btn-primary:disabled{background:#4338ca59!important;border-color:transparent!important;color:#ffffffe0!important;box-shadow:none!important}
