:root{color:#352a24;background:#f3eee6;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;background:#f3eee6}button,input,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #7a5a4a;outline-offset:2px}.app-shell{width:min(100%,680px);margin:0 auto;padding:24px 20px 48px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid #d4c5b8}.brand-button{min-height:44px;padding:0;border:0;background:transparent;color:#352a24;cursor:pointer;font-weight:800}.main-nav{display:flex;gap:4px}.nav-button{min-height:44px;padding:8px 12px;border:0;border-radius:12px;background:transparent;color:#4a372d;cursor:pointer;font-size:.9rem}.nav-button.active,.nav-button:hover{background:#e6d8cc;color:#4a372d}.preview-badge,.eyebrow{color:#63534a;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.lesson-header{margin:18px 0}.lesson-header p{margin:0;color:#63534a}.lesson-card,.setting-card,.conversation-card,.home-hero,.home-summary,.page-card{margin-top:18px;padding:24px;border:1px solid #e1d6ca;border-radius:22px;background:#fffdf8;box-shadow:0 10px 30px #4c372a1a}.home-hero h1,.page-card h1{margin:8px 0 12px;font-size:1.85rem;line-height:1.25}.home-hero>p:not(.eyebrow),.page-card>.intro{line-height:1.7;color:#63534a}.home-summary{display:grid;grid-template-columns:1fr 1fr;gap:14px}.home-summary div{display:grid;gap:4px}.summary-label{color:#63534a;font-size:.8rem}.daily-limit-note{margin:18px 0 0;padding:12px 14px;border-radius:16px;background:#e6d8cc;color:#4a372d;text-align:center}.lesson-toolbar{display:flex;align-items:center;justify-content:flex-end;margin-top:18px}.history-list{display:grid;gap:8px;padding:0;list-style:none}.history-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;width:100%;min-height:52px;gap:12px;padding:14px;border:1px solid #d4c5b8;border-radius:16px;background:#fffdf8;color:#352a24;cursor:pointer;text-align:left}.history-item:hover{border-color:#8a6d5c;background:#fbf6ef}.history-item span:first-child{color:#63534a}.empty-state{padding:24px 0;color:#63534a}.settings-message{color:#3f5b49}.history-search{display:grid;gap:8px;margin:18px 0;color:#4a372d;font-weight:650}.history-search input,.topic-editor input{min-width:0;min-height:44px;padding:11px 12px;border:1px solid #cbb9a9;border-radius:14px;background:#fffdf8;color:#352a24}.history-search input::placeholder,.topic-editor input::placeholder,.resource-input::placeholder,.conversation-input textarea::placeholder{color:#63534a;opacity:1}.history-search .secondary-button,.topic-editor .secondary-button{margin-top:0}.history-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0 14px;padding:4px;border-radius:16px;background:#e6d8cc}.mode-button{min-height:42px;border:0;border-radius:12px;background:transparent;color:#4a372d;cursor:pointer;font-weight:700}.mode-button.active{background:#fffdf8;box-shadow:0 2px 8px #4c372a1f}.history-topic-list{display:grid;gap:8px;padding:0;list-style:none}.history-topic-item{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:64px;gap:12px;padding:14px;border:1px solid #d4c5b8;border-radius:16px;background:#fffdf8;color:#352a24;cursor:pointer;text-align:left}.history-topic-item:hover{border-color:#8a6d5c;background:#fbf6ef}.history-topic-item span:first-child{display:grid;gap:4px}.history-topic-item small{color:#63534a;font-size:.82rem;font-weight:500}.history-back{margin:4px 0 8px;padding:0;border:0;background:transparent;color:#6b5143;cursor:pointer;font-weight:700}.topic-editor{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:14px}.rotation-list{display:grid;gap:10px}.rotation-row{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:12px}.rotation-row span{color:#4a372d;font-weight:650}.rotation-row select{min-height:44px;padding:8px 12px;border:1px solid #cbb9a9;border-radius:14px;background:#fffdf8;color:#352a24}.field-help{color:#63534a;line-height:1.5}.resource-input{width:100%;min-height:112px;resize:vertical;padding:12px;border:1px solid #cbb9a9;border-radius:14px;background:#fffdf8;color:#352a24}.field-label{display:grid;gap:8px;font-weight:650}.field-label input{min-height:48px;padding:12px;border:1px solid #cbb9a9;border-radius:14px;background:#fffdf8;color:#352a24}.pairing-code{margin:12px 0;padding:14px;overflow-wrap:anywhere;border:1px dashed #7a5a4a;border-radius:14px;background:#f3e8de;color:#352a24;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:15px}.lesson-card p{line-height:1.8}.pause{padding:14px 0;font-weight:650}.reveal{margin-top:24px;border-top:1px solid #e1d6ca}.fork-heading{margin-top:22px}.primary-button,.secondary-button,.text-button,.icon-button{border:0;cursor:pointer}.primary-button{width:100%;min-height:48px;padding:14px 16px;border-radius:16px;background:#6b5143;color:#fffdf8;font-weight:700}.primary-button:hover{background:#4a372d}.primary-button:disabled{cursor:not-allowed;opacity:.55}.secondary-button{width:100%;min-height:46px;margin-top:18px;padding:12px 14px;border-radius:16px;color:#4a372d;background:#e6d8cc;font-weight:700}.secondary-button:hover{background:#d9c8ba}.text-button{display:block;min-height:44px;margin:14px auto 0;padding:8px 12px;color:#4a372d;background:transparent;text-decoration:underline}.fork-list,.conversation-context{display:grid;gap:10px;margin:0;padding:0;list-style:none}.fork-list li,.conversation-context li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;line-height:1.6}.fork-number{color:#4a372d;font-weight:800;text-align:right}.fork-copy{display:grid;gap:3px;min-width:0}.fork-operator-label{width:fit-content;color:#63534a;font-size:.76rem;font-weight:700;letter-spacing:.02em}.fork-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.fork-heading-row .fork-heading{margin-bottom:0}.conversation-status{display:inline-flex;align-items:center;width:fit-content;padding:5px 10px;border-radius:999px;color:#4a372d;background:#e6d8cc;font-size:.82rem;font-weight:700;line-height:1.3}.conversation-status.initial_feedback{background:#eadfbd}.conversation-status.derived_discussion{background:#d8e3d4}.intro{line-height:1.7;color:#63534a}.conversation-card{border-color:#cbb9a9}.conversation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.conversation-heading h2{margin:4px 0 12px;font-size:1.25rem}.icon-button{width:44px;height:44px;border-radius:50%;color:#4a372d;background:#e6d8cc;font-size:1.4rem;line-height:1}.conversation-input{display:grid;gap:8px;margin:20px 0 12px;font-weight:650}.conversation-input textarea{min-height:180px;resize:vertical;padding:14px;border:1px solid #cbb9a9;border-radius:14px;background:#fffdf8;color:#352a24;line-height:1.6}.conversation-note{color:#63534a;line-height:1.6}.share-platform{display:grid;gap:8px;margin-top:18px;color:#4a372d;font-weight:650}.share-platform select{min-height:44px;padding:8px 12px;border:1px solid #cbb9a9;border-radius:14px;background:#fffdf8;color:#352a24}.share-output{display:grid;gap:16px;margin-top:20px}.share-output section{padding:14px;border:1px solid #e1d6ca;border-radius:14px;background:#fffaf3}.share-output-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.share-output h3{margin:0;font-size:1rem}.share-output pre{margin:12px 0 0;overflow-wrap:anywhere;white-space:pre-wrap;font:inherit;line-height:1.7}.copy-button{min-height:40px;padding:8px 12px;border:1px solid #cbb9a9;border-radius:12px;background:#fffdf8;color:#4a372d;cursor:pointer;font-weight:700}.conversation-history{display:grid;gap:10px;margin:16px 0}.conversation-message{min-width:0;margin:0;padding:14px 16px;border-radius:12px;line-height:1.7;overflow-wrap:anywhere}.conversation-message strong{display:block;margin-bottom:4px}.conversation-message.user{background:#f0e6dc}.conversation-message.assistant{background:#fffdf8;border:1px solid #e1d6ca}.conversation-message-body{display:grid;gap:10px}.conversation-message-body p{margin:0;white-space:pre-wrap}.conversation-message-body h3{margin:0;font-size:1rem;line-height:1.45}.conversation-message-body ol,.conversation-message-body ul{margin:0;padding-left:24px}.conversation-message-body li{padding-left:4px}.diagnostic-card{margin-top:18px}.diagnostic-options{display:grid;gap:10px;margin:18px 0}.diagnostic-option{display:flex;align-items:center;gap:10px;min-height:48px;padding:12px 14px;border:1px solid #cbb9a9;border-radius:14px;color:#352a24;cursor:pointer}.diagnostic-options button{width:100%;background:#fffdf8;text-align:left;font-weight:500}.diagnostic-option.selected{border-color:#6b5143;background:#f3e8de}.diagnostic-progress{color:#63534a;font-size:.88rem}.diagnostic-option:has(input:checked){border-color:#6b5143;background:#f3e8de}.diagnostic-option input{accent-color:#6b5143}.settings-message{margin:16px 0}.lesson-toolbar .preview-badge{margin:0}.switch-row,.time-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.switch-row small{display:block;margin-top:5px;color:#63534a;line-height:1.45}.time-row{margin-top:18px}.time-row input{min-height:44px;padding:8px;border:1px solid #cbb9a9;border-radius:12px;background:#fffdf8;color:#352a24}.topic-list{display:flex;flex-wrap:wrap;gap:8px}.topic{min-height:44px;border:0;cursor:pointer;padding:8px 14px;border-radius:999px;background:#e6d8cc;color:#4a372d}.topic.selected{background:#6b5143;color:#fffdf8}.topic-list span{padding:8px 10px;border-radius:999px;background:#e6d8cc;color:#4a372d}.error-message{color:#8a3d35;line-height:1.5}.generation-status{margin:14px 0;padding:12px 14px;border:1px solid #d9c5a7;border-radius:12px;color:#60492f;background:#fff6e7;line-height:1.5}@media (max-width: 480px){.app-shell{padding:20px 16px 40px}.app-header{align-items:flex-start;flex-direction:column}.main-nav{width:100%}.nav-button{flex:1}.home-summary{grid-template-columns:1fr}.history-item{grid-template-columns:1fr auto}.history-item span:last-child{display:none}.conversation-card{padding:18px 14px;border-radius:18px}.conversation-heading{gap:8px}.conversation-heading h2{font-size:1.1rem}.fork-heading-row{align-items:flex-start}.conversation-message{padding:12px 13px;font-size:.98rem;line-height:1.75}.conversation-input textarea{min-height:220px;width:100%;font-size:16px}.share-output-heading{align-items:flex-start}}
