.tutor-page{display:flex;flex-direction:column;height:calc(100vh - 72px);max-width:760px;margin:0 auto;padding:0}.tutor-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--border);flex-shrink:0;gap:12px}.tutor-header-left{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.tutor-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.tutor-balance{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;font-weight:600;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:4px 10px;white-space:nowrap}.tutor-balance[hidden]{display:none}.tutor-balance b{color:var(--text);font-weight:700}.tutor-balance.is-low{border-color:var(--chau-hong);color:var(--chau-hong)}.tutor-balance.is-low b{color:var(--chau-hong)}.tutor-personas{display:flex;gap:8px;padding:12px 20px 4px;flex-shrink:0;overflow-x:auto;scrollbar-width:none}.tutor-personas::-webkit-scrollbar{display:none}.tutor-personas.is-locked{opacity:.6;pointer-events:none}.tutor-persona{display:flex;align-items:center;gap:9px;flex:1 1 0;min-width:0;padding:9px 12px;border:1.5px solid var(--border);border-radius:14px;background:var(--bg-card);cursor:pointer;text-align:left;transition:border-color .15s,background .15s,transform .1s}.tutor-persona:hover{border-color:var(--p-accent)}.tutor-persona:active{transform:scale(.98)}.tutor-persona.is-active{border-color:var(--p-accent);background:var(--p-soft)}.tutor-persona-emoji{font-size:1.5rem;line-height:1;flex-shrink:0}.tutor-persona-meta{display:flex;flex-direction:column;min-width:0}.tutor-persona-name{font-size:.9rem;font-weight:700;color:var(--text);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tutor-persona.is-active .tutor-persona-name{color:var(--p-accent)}.tutor-persona-tag{font-size:.72rem;color:var(--text-muted);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tutor-title{font-size:1.25rem;font-weight:700;color:var(--text);margin:0;line-height:1.3}.tutor-cost-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:600;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:2px 8px;white-space:nowrap}.tutor-clear-btn{font-size:.8rem;color:var(--text-muted);background:transparent;border:1px solid var(--border);border-radius:8px;padding:5px 12px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s;flex-shrink:0}.tutor-clear-btn:hover{background:var(--bg-hover);color:var(--text)}.tutor-messages{flex:1 1 0;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}.tutor-msg{display:flex;max-width:82%;animation:tutor-fadein .2s ease}@keyframes tutor-fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tutor-msg--ai{align-self:flex-start}.tutor-msg--user{align-self:flex-end}.tutor-msg-bubble{padding:10px 14px;border-radius:16px;font-size:.93rem;line-height:1.6;word-break:break-word}.tutor-msg--ai .tutor-msg-bubble{background:var(--bg-card);border:1px solid var(--border);border-bottom-left-radius:4px;color:var(--text)}.tutor-msg--user .tutor-msg-bubble{background:var(--tutor-accent, var(--primary));color:var(--on-accent);border-bottom-right-radius:4px}.tutor-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:4px 20px 8px;flex-shrink:0}.tutor-chip{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:6px 14px;font-size:.82rem;color:var(--text-secondary);cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.tutor-chip:hover{background:var(--tutor-accent-soft, var(--primary-light, rgba(220,38,38,.08)));border-color:var(--tutor-accent, var(--primary));color:var(--tutor-accent, var(--primary))}.tutor-typing{display:none;align-items:center;gap:6px;padding:0 20px 6px;flex-shrink:0}.tutor-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--tutor-accent, var(--primary));animation:tutor-bounce 1.2s infinite ease-in-out}.tutor-typing-dot:nth-child(2){animation-delay:.2s}.tutor-typing-dot:nth-child(3){animation-delay:.4s}@keyframes tutor-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.tutor-typing-label{font-size:.78rem;color:var(--text-muted);margin-left:4px}.tutor-compose{border-top:1px solid var(--border);padding:12px 16px 14px;flex-shrink:0}.tutor-compose-row{display:flex;gap:8px;align-items:flex-end}.tutor-input{flex:1;resize:none;border:1px solid var(--border);border-radius:12px;padding:10px 14px;font-size:.93rem;line-height:1.5;background:var(--bg-input, var(--bg-card));color:var(--text);outline:none;transition:border-color .15s;font-family:inherit;min-height:44px;max-height:120px;overflow-y:auto}.tutor-input:focus{border-color:var(--primary)}.tutor-input::placeholder{color:var(--text-muted)}.tutor-input:disabled{opacity:.5}.tutor-send-btn{width:42px;height:42px;border-radius:12px;background:var(--tutor-accent, var(--primary));border:none;color:var(--on-accent);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,opacity .15s}.tutor-send-btn:hover:not(:disabled){filter:brightness(.92)}.tutor-send-btn:disabled{opacity:.4;cursor:default}.tutor-compose-hint{font-size:.72rem;color:var(--text-muted);margin-top:6px;text-align:right}@media(max-width:767px){.tutor-page{height:calc(100vh - 56px)}.tutor-header{padding:12px 14px 10px}.tutor-messages{padding:12px 14px}.tutor-suggestions{padding:4px 14px 8px}.tutor-compose{padding:10px 12px 12px}.tutor-typing{padding:0 14px 4px}.tutor-msg{max-width:90%}.tutor-chip{font-size:.78rem;padding:5px 12px}.tutor-personas{padding:10px 14px 4px;gap:6px}.tutor-persona{padding:8px 10px;gap:7px}.tutor-persona-emoji{font-size:1.3rem}.tutor-persona-tag{display:none}.tutor-balance{font-size:.72rem;padding:3px 8px}}
