:root{--color-primary: #1F7A63;--color-primary-light: #2FA78A;--color-primary-lighter: #E6F7F3;--color-primary-dark: #1B5E55;--color-sidebar: #1B5E55;--color-bg: #ffffff;--color-bg-subtle: #F8F9FA;--color-border: rgba(31, 122, 99, .12);--color-border-gray: #E5E7EB;--color-text: #1a1a1a;--color-text-muted: #6B7280;--color-destructive: #EF4444;--font-family: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius: 12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-family);font-size:16px;color:var(--color-text);background:var(--color-bg)}body{margin:0;min-height:100vh;background:var(--color-bg-subtle)}button,input,textarea{font:inherit}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1f7a63,#1b5e55);padding:24px}.auth-panel{width:min(420px,100%);background:#fff;border-radius:20px;padding:40px 32px;box-shadow:0 25px 50px #00000040}.auth-panel .login-header{text-align:center;margin-bottom:32px}.auth-panel .login-header .strongturtle-logo{justify-content:center;margin:0 auto 16px}.auth-panel .login-header h1{font-size:1.25rem;font-weight:600;color:var(--color-text)}.auth-panel .login-header p{font-size:.875rem;color:var(--color-text-muted);margin-top:4px}.auth-panel .stack{display:flex;flex-direction:column;gap:12px}.auth-panel input{width:100%;padding:10px 14px;border:1px solid var(--color-border-gray);border-radius:10px;font-size:.875rem;color:var(--color-text);background:#fff;transition:border-color .15s,box-shadow .15s}.auth-panel input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-lighter)}.auth-panel input::placeholder{color:#9ca3af}.auth-panel button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;border:0;background:var(--color-primary);color:#fff;width:100%;transition:background .15s}.auth-panel button[type=submit]:hover{background:var(--color-primary-light)}.auth-panel .hint{text-align:center;font-size:.75rem;color:var(--color-text-muted);margin-top:16px}.auth-panel .error{text-align:center;font-size:.8rem;color:var(--color-destructive);margin-top:8px}.app-shell{display:flex;min-height:100vh}.app-layout{display:flex;width:100%}.sidebar{position:fixed;top:0;left:0;width:260px;height:100vh;background:var(--color-sidebar);display:flex;flex-direction:column;z-index:50;overflow:hidden}.sidebar .strongturtle-logo{padding:20px 20px 16px;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;width:170px;margin:0 auto}.sidebar .strongturtle-logo__icon{width:32px}.sidebar .strongturtle-logo__wordmark{width:112px}.sidebar-header{padding:14px}.new-chat-btn{width:100%;padding:10px;border-radius:10px;background:#ffffff1a;color:#ffffffe6;border:1px solid rgba(255,255,255,.15);font-weight:600;cursor:pointer;font-size:.875rem;font-family:inherit;transition:background .15s}.new-chat-btn:hover{background:#fff3}.workout-nav-btn{width:100%;padding:10px;border-radius:10px;background:#ffffffeb;color:var(--color-primary-dark);border:0;font-weight:700;cursor:pointer;font-size:.875rem}.workout-nav-btn:hover{background:#fff}.session-list{flex:1;overflow-y:auto;padding:0 8px 8px}.session-folder{margin-bottom:10px}.folder-title{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 10px 6px;border:0;background:transparent;color:#ffffff94;font-size:.75rem;font-weight:800;letter-spacing:.04em;cursor:pointer;font-family:inherit}.folder-title:hover{color:#ffffffd1}.folder-leading{display:flex;align-items:center;gap:7px;min-width:0}.folder-caret{width:10px;color:#ffffff6b;font-size:.7rem}.folder-icon{position:relative;width:16px;height:12px;border-radius:3px;background:#ffffff52;flex:0 0 auto}.folder-icon:before{content:"";position:absolute;left:1px;top:-4px;width:8px;height:5px;border-radius:3px 3px 0 0;background:#ffffff52}.folder-title:hover .folder-icon,.folder-title:hover .folder-icon:before,.folder-collapsed .folder-icon,.folder-collapsed .folder-icon:before{background:#ffffff8a}.folder-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-title small{color:#ffffff61;font-size:.7rem}.session-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:10px;cursor:pointer;margin-bottom:2px;font-size:.875rem;color:#ffffffd9;transition:background .15s}.session-item:hover{background:#278a73}.session-item[draggable=true]{-webkit-user-select:none;user-select:none}.session-dragging{opacity:.45;outline:1px dashed rgba(255,255,255,.42)}.session-active{background:#2fa78a!important;color:#fff;font-weight:600}.session-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.session-edit,.session-delete{background:transparent;border:0;color:#fff6;cursor:pointer;padding:2px 6px;font-size:1.1rem;border-radius:6px;opacity:0;flex-shrink:0;font-family:inherit}.session-item:hover .session-edit,.session-item:hover .session-delete{opacity:1}.session-edit:hover{background:#ffffff24;color:#fff}.session-delete:hover{background:#ff646440;color:#ff6b6b}.session-rename-form,.folder-rename-form{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.session-rename-form input,.folder-rename-form input{flex:1;min-width:0;border:1px solid rgba(255,255,255,.32);border-radius:7px;padding:5px 7px;background:#ffffff1f;color:#fff;outline:none;font-size:.8125rem}.session-rename-form input:focus,.folder-rename-form input:focus{border-color:#ffffffb8}.session-rename-form button,.folder-rename-form button{border:0;border-radius:6px;width:24px;height:24px;background:#ffffff24;color:#fff;cursor:pointer;flex:0 0 auto}.session-rename-form button:hover,.folder-rename-form button:hover{background:#ffffff3d}.folder-rename-form{padding:4px 2px 6px}.context-menu{position:fixed;z-index:200;min-width:140px;padding:6px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#174438;box-shadow:0 14px 34px #00000047}.context-menu button{display:block;width:100%;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:#ffffffe6;cursor:pointer;font:inherit;text-align:left}.context-menu button:hover{background:#ffffff1f}.context-menu .danger{color:#ffb4b4}.context-menu .danger:hover{background:#ff64642e}.context-submenu{margin:3px 0 4px 8px;padding-left:6px;border-left:1px solid rgba(255,255,255,.14)}.context-submenu button{font-size:.8125rem;color:#ffffffc7}.context-submenu span{display:block;padding:7px 10px;color:#ffffff6b;font-size:.8125rem}.sidebar-footer{padding:12px 16px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-create-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.sidebar-create-actions button{border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:9px 8px;background:#ffffff1a;color:#ffffffe6;cursor:pointer;font-size:.8125rem;font-weight:800;font-family:inherit}.sidebar-create-actions button:hover{background:#ffffff2e;color:#fff}.sidebar-user{margin-bottom:8px}.sidebar-user strong{display:block;font-size:.875rem;font-weight:600;color:#fff}.sidebar-user span{display:block;font-size:.75rem;color:#ffffff80;margin-top:2px}.sidebar-version{margin-bottom:8px;font-size:.6875rem;color:#fff6;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.logout-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff1a;border:none;border-radius:8px;color:#ffffffe6;font-size:.875rem;font-family:inherit;cursor:pointer;width:100%;transition:background .15s}.logout-btn:hover{background:#fff3}.chat-layout{flex:1;min-width:0;margin-left:260px;min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.header-panel{padding:16px 24px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--color-border-gray);background:#fff}.menu-btn{background:transparent;border:0;color:var(--color-text-muted);font-size:1.3rem;cursor:pointer;padding:4px 8px;border-radius:8px;flex-shrink:0;display:none}.header-panel h1{margin:0;font-size:1.05rem;font-weight:600}.header-title-row{display:flex;align-items:center;gap:8px}.header-edit{border:0;border-radius:8px;width:28px;height:28px;background:transparent;color:var(--color-text-muted);cursor:pointer}.header-edit:hover{background:var(--color-bg-subtle);color:var(--color-primary)}.header-rename-form{display:flex;align-items:center;gap:6px}.header-rename-form input{min-width:min(420px,55vw);border:1px solid var(--color-border-gray);border-radius:9px;padding:7px 10px;color:var(--color-text);outline:none;font-size:1rem;font-weight:600}.header-rename-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-lighter)}.header-rename-form button{border:0;border-radius:8px;width:30px;height:30px;background:var(--color-bg-subtle);color:var(--color-text-muted);cursor:pointer}.header-rename-form button:hover{color:var(--color-primary);background:var(--color-primary-lighter)}.header-panel p{margin:2px 0 0;color:var(--color-text-muted);font-size:.8rem}.messages-scroll{flex:1;overflow-y:auto;padding:24px}.session-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;text-align:center}.session-empty-state h2{margin:0;color:var(--color-text-muted);font-size:1rem;font-weight:600}.session-empty-state button{border:0;border-radius:10px;padding:10px 18px;background:var(--color-primary);color:#fff;font-family:inherit;font-size:.875rem;font-weight:700;cursor:pointer}.session-empty-state button:hover{background:var(--color-primary-dark)}.messages-thread{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.exchange{display:flex;flex-direction:column;gap:12px}.bubble-row{display:flex}.bubble-row-user{justify-content:flex-end}.bubble{max-width:75%;border-radius:18px;padding:12px 16px;line-height:1.5;font-size:.9375rem}.bubble-user{background:var(--color-primary);color:#fff;border-bottom-right-radius:6px}.bubble-user p{margin:0;white-space:pre-wrap}.sent-attachments{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.sent-attachment{display:flex;flex-direction:column;gap:5px;max-width:180px;border-radius:12px;padding:6px;background:#ffffff29}.sent-attachment img{display:block;width:160px;max-height:160px;object-fit:cover;border-radius:9px;background:#ffffff1f}.sent-image-button{display:block;border:0;padding:0;margin:0;border-radius:9px;background:transparent;cursor:zoom-in}.sent-image-button:focus-visible{outline:2px solid #fff;outline-offset:2px}.sent-attachment span{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem}.image-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#050e14c7}.image-modal-content{position:relative;max-width:min(92vw,1100px);max-height:92vh;padding:46px 18px 16px;border-radius:18px;background:#fff;box-shadow:0 24px 80px #00000059}.image-modal-content img{display:block;max-width:calc(92vw - 36px);max-height:calc(92vh - 110px);object-fit:contain;border-radius:12px}.image-modal-content p{margin:10px 4px 0;color:var(--color-text-muted);font-size:.85rem;text-align:center}.image-modal-close{position:absolute;top:12px;right:12px;border:0;border-radius:999px;padding:8px 14px;background:var(--color-primary);color:#fff;font-weight:700;cursor:pointer}.assistant-response{padding:0}.assistant-answer{background:var(--color-bg-subtle);border:1px solid var(--color-border-gray);border-radius:18px 18px 18px 6px;padding:16px 20px;color:var(--color-text);line-height:1.65;font-size:.9375rem}.feedback-panel{margin-top:8px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.feedback-toggle{border:1px solid var(--color-border-gray);border-radius:999px;padding:5px 10px;background:#fff;color:var(--color-text-muted);cursor:pointer;font-size:.75rem}.feedback-toggle:hover{color:var(--color-primary);border-color:var(--color-primary)}.feedback-saved{color:var(--color-primary);font-size:.75rem;font-weight:600}.feedback-form{flex-basis:100%;border:1px solid var(--color-border-gray);border-radius:14px;padding:12px;background:#fff}.feedback-form label{display:block;margin-bottom:8px;color:var(--color-text-muted);font-size:.8125rem}.feedback-form textarea{width:100%;min-height:84px;resize:vertical;border:1px solid var(--color-border-gray);border-radius:10px;padding:10px;outline:none}.feedback-form textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-lighter)}.feedback-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.feedback-actions button{border:0;border-radius:8px;padding:6px 12px;cursor:pointer;font-size:.8125rem}.feedback-actions button:first-child{background:var(--color-bg-subtle);color:var(--color-text-muted)}.feedback-actions button:last-child{background:var(--color-primary);color:#fff}.answer>:first-child{margin-top:0}.answer>:last-child{margin-bottom:0}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body pre,.markdown-body blockquote,.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:0 0 12px}.markdown-body :last-child{margin-bottom:0}.markdown-body ul,.markdown-body ol{padding-left:20px}.markdown-body code{background:#1f7a6314;border-radius:6px;padding:.15em .4em;font-size:.85em}.markdown-body pre{background:#f3f4f6;border-radius:12px;padding:14px;overflow:auto;border:1px solid var(--color-border-gray)}.markdown-body pre code{background:transparent;padding:0}.markdown-body blockquote{border-left:3px solid var(--color-primary);margin-left:0;padding-left:12px;color:var(--color-text-muted)}.markdown-body table{border-collapse:collapse;width:100%;font-size:.875rem}.markdown-body th,.markdown-body td{border:1px solid var(--color-border-gray);padding:8px 12px;text-align:left}.markdown-body th{background:var(--color-bg-subtle);font-weight:600}.composer-wrapper{position:relative;padding:16px 24px 24px;background:var(--color-bg)}.drop-hint{max-width:800px;margin:0 auto 8px;border:1px dashed var(--color-primary);border-radius:14px;padding:12px;text-align:center;color:var(--color-primary);background:var(--color-primary-lighter);font-size:.875rem;font-weight:600}.composer{max-width:800px;margin:0 auto;display:flex;gap:8px;align-items:end;padding:12px 16px;border:1px solid var(--color-border-gray);border-radius:16px;background:var(--color-bg);box-shadow:0 2px 12px #0000000f}.file-input{display:none}.attach-btn{width:36px;height:36px;border:0;border-radius:10px;background:var(--color-bg-subtle);color:var(--color-primary);cursor:pointer;flex-shrink:0}.attach-btn:hover:not(:disabled){background:var(--color-primary-lighter)}.attach-btn:disabled{opacity:.6;cursor:not-allowed}.composer-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.attachment-list{display:flex;flex-wrap:wrap;gap:6px}.attachment-chip{display:inline-flex;align-items:center;gap:6px;max-width:240px;border-radius:999px;padding:4px 8px;background:var(--color-primary-lighter);color:var(--color-primary-dark);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-chip button{border:0;background:transparent;color:var(--color-primary-dark);cursor:pointer;font-size:1rem;line-height:1}.composer textarea{width:100%;flex:none;border:0;background:transparent;color:var(--color-text);font-size:.9375rem;resize:none;min-height:24px;max-height:200px;line-height:1.5;outline:none;font-family:inherit}.composer textarea::placeholder{color:#9ca3af}.composer button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 20px;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;border:0;background:var(--color-primary);color:#fff;white-space:nowrap;transition:background .15s;flex-shrink:0;height:fit-content}.composer button[type=submit]:hover:not(:disabled){background:var(--color-primary-light)}.composer button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.strongturtle-logo{display:inline-flex;align-items:center;gap:10px;line-height:0}.strongturtle-logo__icon{width:38px;height:auto;flex:0 0 auto}.strongturtle-logo__wordmark{width:133px;height:auto;flex:0 0 auto}.error{text-align:center;font-size:.8rem;color:var(--color-destructive);padding:8px 24px}.workout-shell{min-height:100vh;display:grid;grid-template-columns:300px 1fr;background:#f6f7f8}.workout-sidebar{height:100vh;overflow:hidden;display:flex;flex-direction:column;gap:12px;padding:18px;background:#1b5e55;color:#fff}.workout-back,.workout-import{border:0;border-radius:10px;padding:10px 12px;cursor:pointer;font-weight:700}.workout-back{background:#ffffff1f;color:#fff}.workout-import{background:#fff;color:var(--color-primary-dark)}.workout-sidebar h2{font-size:1.05rem}.exercise-page-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.exercise-page-tabs button{border:1px solid rgba(255,255,255,.22);background:#ffffff14;color:#fffc;border-radius:12px;padding:10px;cursor:pointer;font-weight:800}.exercise-page-tabs button.active{background:#fff;color:var(--color-primary)}.workout-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.workout-tabs button{border:1px solid rgba(255,255,255,.18);border-radius:9px;padding:8px;background:transparent;color:#ffffffbd;cursor:pointer}.workout-tabs .active{background:#2fa78a;color:#fff;border-color:transparent;font-weight:700}.workout-list{overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:2px}.workout-list button{border:0;border-radius:10px;padding:10px;background:#ffffff14;color:#fff;text-align:left;cursor:pointer}.workout-list button.selected,.workout-list button:hover{background:#2fa78a}.workout-list button.untouched{background:#c684263d;box-shadow:inset 0 0 0 1px #ffb84d57}.workout-list button.untouched.selected,.workout-list button.untouched:hover{background:#9b6420}.workout-list span,.workout-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workout-list small{margin-top:3px;color:#ffffffad}.workout-list small em,.untouched-badge{display:inline-flex;align-items:center;margin-left:6px;border-radius:999px;padding:2px 6px;background:#ffb84d33;color:#ffd89a;font-size:11px;font-style:normal;font-weight:700}.untouched-badge{vertical-align:middle}.workout-category-list section+section{margin-top:12px}.workout-category-list h4{margin:4px 0 6px;color:#ffffffad;font-size:12px;letter-spacing:.02em}.workout-category-list section{display:flex;flex-direction:column;gap:6px}.workout-main{min-width:0;height:100vh;overflow-y:auto;padding:24px}.workout-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.workout-header p{color:var(--color-text-muted);font-size:.8125rem}.workout-header h1{font-size:1.6rem}.workout-header-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.workout-header button,.prompt-editor button,.lesson-actions button,.workout-editor-card>button,.workout-modal button:last-child{border:0;border-radius:10px;padding:10px 14px;background:var(--color-primary);color:#fff;cursor:pointer;font-weight:700}.lesson-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.workout-grid{display:grid;grid-template-columns:minmax(320px,440px) minmax(420px,1fr);gap:18px;align-items:start}.workout-editor-card,.lesson-preview-card,.prompt-editor{border:1px solid var(--color-border-gray);border-radius:18px;background:#fff;padding:18px;box-shadow:0 8px 24px #0000000d}.workout-editor-card h3,.lesson-preview-card h3{margin-bottom:12px}.workout-editor-card label,.prompt-editor label{display:block;margin:12px 0 6px;color:var(--color-text-muted);font-size:.8125rem;font-weight:700}.workout-editor-card input,.workout-editor-card textarea,.prompt-editor input,.prompt-editor textarea{width:100%;border:1px solid var(--color-border-gray);border-radius:10px;padding:10px;outline:none}.workout-editor-card textarea,.prompt-editor textarea{min-height:92px;resize:vertical;line-height:1.5}.workout-image-editor{margin:16px 0;border:1px solid var(--color-border-gray);border-radius:14px;padding:14px;background:#f8fbfb}.workout-image-editor h4{margin:0 0 6px;font-size:.95rem}.workout-image-editor p{margin:0 0 10px;color:var(--color-text-muted);font-size:.8125rem;line-height:1.45}.workout-image-editor input[type=file]{margin-top:6px;padding:8px;background:#fff}.workout-image-editor .swap-images-button{width:100%;margin-top:12px;border:1px solid rgba(47,167,138,.35);border-radius:10px;padding:10px 12px;background:#fff;color:var(--color-primary-dark);cursor:pointer;font-weight:800}.workout-image-editor .swap-images-button:hover:not(:disabled){background:#2fa78a14}.workout-image-editor .swap-images-button:disabled{cursor:not-allowed;opacity:.55}.prompt-editor textarea{min-height:160px;font-size:.8125rem}.prompt-guide,.prompt-test-panel,.prompt-test-result{border:1px solid var(--color-border-gray);border-radius:14px;padding:14px;background:#f8fbfb}.prompt-guide p,.prompt-test-panel p,.prompt-test-result p{color:var(--color-text-muted);line-height:1.55}.prompt-test-panel{margin-top:18px}.prompt-test-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.prompt-test-result{margin-top:14px;background:#fff}.prompt-test-result h4{margin-bottom:10px}.prompt-test-result strong{display:block;margin-top:12px;color:var(--color-text)}.prompt-test-result ol{margin:6px 0 0 20px;color:var(--color-text-muted);line-height:1.55}.workout-error,.workout-status{border-radius:10px;padding:10px 12px;margin-bottom:12px;font-size:.875rem}.workout-error{background:#fef2f2;color:#b91c1c}.workout-status{background:var(--color-primary-lighter);color:var(--color-primary-dark)}.lesson-create{border:1px dashed var(--color-primary)!important;background:var(--color-primary-lighter)!important;color:var(--color-primary-dark)!important;font-weight:800}.lesson-create-actions,.lesson-empty-actions{display:grid;gap:8px}.lesson-create.ai,.lesson-empty-actions button:first-child{border-style:solid!important;background:var(--color-primary)!important;color:#fff!important}.lesson-builder{display:grid;grid-template-columns:260px 300px minmax(520px,1fr);gap:16px;align-items:start;height:calc(100vh - 132px);overflow:hidden}.lesson-order-panel,.lesson-available-panel,.lesson-preview-panel{border:1px solid var(--color-border-gray);border-radius:18px;background:#fff;padding:16px;box-shadow:0 8px 24px #0000000d;height:100%;min-height:0;overflow-y:auto}.lesson-order-panel,.lesson-available-panel{align-self:start}.lesson-order-panel h3,.lesson-available-panel h3,.lesson-preview-panel h3{margin-bottom:12px}.lesson-empty{border-radius:12px;padding:18px;background:#f8fbfb;color:var(--color-text-muted);line-height:1.5}.lesson-main-empty{display:grid;place-items:center;min-height:420px;border:1px solid var(--color-border-gray);border-radius:18px;padding:32px;background:#fff;text-align:center;box-shadow:0 8px 24px #0000000d}.lesson-main-empty h3{margin-bottom:8px;font-size:1.4rem}.lesson-main-empty p{margin-bottom:16px;color:var(--color-text-muted)}.lesson-main-empty button{border:0;border-radius:10px;padding:10px 14px;background:var(--color-primary);color:#fff;cursor:pointer;font-weight:700}.lesson-insert-line{position:relative;height:10px;margin:2px 0}.lesson-insert-line:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;border-radius:999px;background:transparent;transform:translateY(-50%)}.lesson-insert-line.active:before{background:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-lighter)}.lesson-empty-drop{display:grid;place-items:center;min-height:180px;border:1px dashed #c9d8d8;border-radius:14px;background:#fbfdfd;color:var(--color-text-muted);font-size:.875rem;text-align:center}.lesson-empty-drop.active{border-color:var(--color-primary);background:var(--color-primary-lighter);color:var(--color-primary-dark)}.lesson-order-item{display:grid;grid-template-columns:28px 1fr 28px;gap:8px;align-items:center;border:1px solid var(--color-border-gray);border-radius:12px;padding:10px;background:#fff;cursor:grab}.lesson-order-item>span{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:.8rem;font-weight:800}.lesson-order-item strong,.lesson-category-list button span{display:block;color:var(--color-text);font-size:.9rem}.lesson-order-item small,.lesson-category-list button small{display:block;margin-top:3px;color:var(--color-text-muted);font-size:.75rem}.lesson-order-item button{border:0;border-radius:999px;width:26px;height:26px;background:#f3f4f6;color:var(--color-text-muted);cursor:pointer}.lesson-available-panel input{width:100%;border:1px solid var(--color-border-gray);border-radius:10px;padding:10px;margin-bottom:12px;outline:none}.lesson-category-list section+section{margin-top:14px}.lesson-category-list h4{position:sticky;top:-16px;z-index:1;margin:0 0 8px;padding:8px 0;background:#fff;color:var(--color-primary-dark);font-size:.82rem}.lesson-category-list button{width:100%;border:1px solid var(--color-border-gray);border-radius:12px;padding:10px;margin-bottom:8px;background:#fff;text-align:left;cursor:grab}.lesson-category-list button:hover{border-color:var(--color-primary);background:#f8fbfb}.lesson-print-pages{display:grid;gap:18px}.lesson-page{position:relative;width:min(100%,842px);aspect-ratio:842 / 595;margin:0 auto;overflow:hidden;container-type:inline-size;background:linear-gradient(180deg,#fff 83%,#fffefb);color:#262627;box-shadow:0 18px 48px #00000029}.lesson-category-pill{position:absolute;left:2.85%;top:4.03%;width:42%;color:#dd590c;font-size:clamp(.5rem,1.43cqw,.75rem);font-weight:600;line-height:1.35;letter-spacing:-.02em;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-page h2{position:absolute;left:2.85%;top:7.23%;width:45.37%;margin:0;color:#1b1c23;font-family:SUITE,Pretendard,sans-serif;font-size:clamp(.95rem,2.85cqw,1.5rem);font-weight:600;line-height:1.35;letter-spacing:-.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-image{position:absolute;top:14.62%;width:22.45%;height:42.35%;object-fit:fill;background:#f1f1f1}.lesson-image-prepare{left:2.85%}.lesson-image-inprogress{left:26.5%}.lesson-image-label{position:absolute;top:58.32%;width:6.41%;height:3.36%;display:grid;place-items:center;border-radius:999px;color:#fcfcfc;font-size:clamp(.5rem,1.43cqw,.75rem);font-weight:600;line-height:1.35;letter-spacing:-.05em}.lesson-image-label-prepare{left:10.93%;background:#793f1e}.lesson-image-label-inprogress{left:34.44%;background:#fb5f04}.lesson-queue-card{position:absolute;left:2.85%;top:65.71%;width:45.96%;height:11.26%;display:grid;grid-template-columns:4px 1fr;background:#fff8ed}.lesson-queue-card div{background:#793f1e}.lesson-queue-card p{margin:0;padding:1.13% 3.02%;display:flex;align-items:center;justify-content:flex-start;color:#000;font-family:SUITE,Pretendard,sans-serif;font-size:clamp(.58rem,1.78cqw,.9375rem);font-weight:700;line-height:1.6;letter-spacing:-.01em;text-align:left;white-space:pre-wrap}.lesson-analogy{position:absolute}.lesson-right-column{position:absolute;left:51.2%;top:7.56%;width:45.96%;max-height:75%;overflow:hidden}.lesson-right-column section+section{margin-top:3.36%}.lesson-page h3{margin:0;color:#793f1e;font-size:clamp(.65rem,1.9cqw,1rem);font-weight:700;line-height:1.35;letter-spacing:-.01em}.lesson-page section p,.lesson-page section li{color:#262627;font-size:clamp(.48rem,1.43cqw,.75rem);font-weight:400;line-height:1.79;letter-spacing:-.01em;white-space:pre-wrap}.lesson-benefits p,.lesson-analogy p{margin:.67% 0 0}.lesson-analogy{left:3.09%;top:83.19%;width:45.96%}.lesson-instructions header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.lesson-instructions header p{margin:0;color:#793f1e;font-size:clamp(.5rem,1.43cqw,.75rem);font-weight:600;line-height:1.35;text-align:right}.lesson-instructions ol{margin:.85% 0 0;padding-left:0;list-style-position:inside}.lesson-important p,.lesson-caution p{margin:.85% 0 0}.lesson-embed-frame{width:100%;max-width:720px;margin:0 auto}.preview-open{display:inline-block;margin-top:12px;color:var(--color-primary);font-weight:700}.workout-modal-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:20px;background:#00000073}.workout-modal{width:min(560px,100%);border-radius:18px;padding:22px;background:#fff}.workout-modal p{margin:6px 0 12px;color:var(--color-text-muted)}.workout-modal textarea{width:100%;min-height:160px;border:1px solid var(--color-border-gray);border-radius:12px;padding:12px;resize:vertical}.lesson-generate-count{display:grid;grid-template-columns:1fr 96px;align-items:center;gap:12px;margin-top:12px;color:var(--color-text-muted);font-size:.875rem;font-weight:700}.lesson-generate-count input{width:100%;border:1px solid var(--color-border-gray);border-radius:10px;padding:10px}.workout-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.bulk-progress{display:grid;gap:4px;margin-top:14px;border-radius:12px;padding:12px;background:#f6faf9;color:var(--color-text)}.bulk-progress strong{color:var(--color-primary-dark);font-size:1.1rem}.bulk-progress span,.bulk-progress small{color:var(--color-text-muted);font-size:.85rem}.workout-modal button:first-child{border:0;border-radius:10px;padding:10px 14px;background:var(--color-bg-subtle);color:var(--color-text-muted);cursor:pointer}.workout-preview-shell{min-height:100vh;display:grid;place-items:center;padding:32px;background:#191919}@media(max-width:768px){.menu-btn{display:block}.sidebar{transform:translate(-100%);transition:transform .2s ease}.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;inset:0;background:#0006;z-index:49}.chat-layout{margin-left:0}.header-panel{padding:12px 16px}.messages-scroll{padding:16px}.composer-wrapper{padding:12px 16px 16px}.bubble{max-width:90%}.workout-page{padding:16px}.workout-header,.prompt-test-row{grid-template-columns:1fr}.workout-header,.workout-grid{display:block}.workout-list,.workout-editor-card,.lesson-preview-card,.lesson-order-panel,.lesson-available-panel,.lesson-preview-panel{margin-top:14px}.lesson-builder{display:block}.lesson-actions{justify-content:flex-start;margin-top:12px}}@media print{html,body{width:842px;min-width:842px;margin:0;background:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}body *{visibility:hidden}.lesson-print-pages,.lesson-print-pages *{visibility:visible}.lesson-print-pages{position:absolute;inset:0;display:block;background:#fff}.lesson-print-pages .lesson-page{width:842px;height:595px;max-width:none;margin:0;overflow:hidden;background:linear-gradient(180deg,#fff 83%,#fffefb)!important;box-shadow:none;break-after:page;page-break-after:always;-webkit-print-color-adjust:exact;print-color-adjust:exact}.lesson-image-label-prepare{background:#793f1e!important;color:#fcfcfc!important}.lesson-image-label-inprogress{background:#fb5f04!important;color:#fcfcfc!important}.lesson-queue-card{background:#fff8ed!important}.lesson-queue-card div{background:#793f1e!important}@page{size:842px 595px;margin:0}}
