.turbo-page .hw-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.turbo-page .hw-week-card{background:#0a0a0f;border:1px solid #1c1c22;border-radius:12px;padding:16px;transition:border-color .3s,transform .2s;position:relative}.turbo-page .hw-week-card:hover{border-color:#27272a;transform:translateY(-2px)}.turbo-page .hw-week-card.completed{background:#22c55e05;border-color:#22c55e33}.turbo-page .hw-week-card.selected{background:#06b6d408;border-color:#06b6d466}.turbo-page .hw-week-card.milestone{border-width:2px}.turbo-page .hw-progress-bar{background:#18181b;border-radius:3px;height:6px;overflow:hidden}.turbo-page .hw-progress-fill{background:linear-gradient(90deg,#06b6d4,#8b5cf6);border-radius:3px;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1)}.turbo-page .hw-badge-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.turbo-page .hw-badge-card{text-align:center;background:#0a0a0f;border:1px solid #1c1c22;border-radius:12px;padding:20px;transition:border-color .3s}.turbo-page .hw-badge-card.earned{background:#22c55e08;border-color:#22c55e4d}.turbo-page .hw-phase-header{align-items:center;gap:10px;margin-bottom:12px;padding-top:24px;display:flex}.ai-terminal-toggle{z-index:100;cursor:pointer;background:#0a0a0f;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .2s,box-shadow .3s;display:flex;position:fixed;bottom:24px;right:24px}.ai-terminal-toggle:hover{transform:scale(1.08)}.ai-terminal-panel{z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#060608f2;border:1px solid;border-radius:16px;flex-direction:column;width:400px;height:520px;display:flex;position:fixed;bottom:24px;right:24px;overflow:hidden;box-shadow:0 8px 40px #00000080}.ai-terminal-header{border-bottom:1px solid;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.ai-terminal-messages{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.ai-terminal-messages::-webkit-scrollbar{width:4px}.ai-terminal-messages::-webkit-scrollbar-track{background:0 0}.ai-terminal-messages::-webkit-scrollbar-thumb{background:#27272a;border-radius:2px}.ai-terminal-message{border-radius:10px;max-width:92%;padding:8px 12px}.ai-terminal-message.user{background:#06b6d40f;border:1px solid #06b6d41f;align-self:flex-end}.ai-terminal-message.assistant{background:#27272a4d;border:1px solid #1c1c22;align-self:flex-start}.ai-terminal-message-label{letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-family:Syne,sans-serif;font-size:9px;font-weight:700}.ai-terminal-message-content{color:#d4d4d8;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5}.ai-terminal-input{border-top:1px solid;flex-shrink:0;gap:8px;padding:12px;display:flex}.ai-terminal-input input{color:#d4d4d8;background:#0a0a0f;border:1px solid;border-radius:8px;outline:none;flex:1;padding:8px 12px;font-family:inherit;font-size:13px}.ai-terminal-input input::placeholder{color:#3f3f46}.ai-terminal-input input:focus{border-color:#3f3f46}.ai-terminal-input button{cursor:pointer;border:1px solid;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:opacity .2s;display:flex}.ai-terminal-input button:disabled{opacity:.5;cursor:not-allowed}.ai-terminal-cursor{color:#06b6d4;animation:1s step-end infinite terminalBlink}@keyframes terminalBlink{0%,to{opacity:1}50%{opacity:0}}.ai-terminal-submit-btn{cursor:pointer;background:#22c55e14;border:1px solid #22c55e4d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s,border-color .2s;display:flex}.ai-terminal-submit-btn:hover{background:#22c55e26;border-color:#22c55e80}.ai-terminal-submit-btn:disabled{opacity:.4;cursor:not-allowed}.ai-terminal-submit-area{z-index:10;background:#060608fa;flex-direction:column;gap:8px;padding:12px;display:flex;position:absolute;inset:48px 0 62px}.ai-terminal-submit-header{justify-content:space-between;align-items:center;display:flex}.ai-terminal-submit-close{cursor:pointer;color:#52525b;background:0 0;border:none;align-items:center;padding:4px;display:flex}.ai-terminal-submit-close:hover{color:#a1a1aa}.ai-terminal-submit-file{background:#06b6d40a;border:1px solid;border-radius:6px;padding:6px 10px;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px}.ai-terminal-submit-textarea{color:#d4d4d8;resize:none;background:#0a0a0f;border:1px solid;border-radius:8px;outline:none;flex:1;padding:10px 12px;font-family:JetBrains Mono,Fira Code,monospace;font-size:12px;line-height:1.6}.ai-terminal-submit-textarea::placeholder{color:#3f3f46}.ai-terminal-submit-textarea:focus{border-color:#3f3f46}.ai-terminal-submit-confirm{letter-spacing:.06em;color:#000;cursor:pointer;border:1px solid;border-radius:8px;width:100%;padding:8px;font-family:Syne,sans-serif;font-size:12px;font-weight:700;transition:opacity .2s}.ai-terminal-submit-confirm:disabled{opacity:.5;cursor:not-allowed;color:#52525b}.ai-terminal-submit-success{color:#22c55e;background:#22c55e14;border:1px solid #22c55e33;border-radius:6px;padding:8px 10px;font-size:12px}.ai-terminal-submit-success a{color:#4ade80;text-decoration:underline}.ai-terminal-submit-error{color:#ef4444;background:#ef444414;border:1px solid #ef444433;border-radius:6px;padding:8px 10px;font-size:12px}.ai-terminal-relink{color:#f59e0b;background:#f59e0b14;border:1px solid #f59e0b33;border-radius:6px;flex-direction:column;gap:6px;padding:8px 10px;font-size:12px;display:flex}.ai-terminal-relink-btn{color:#f59e0b;text-align:center;cursor:pointer;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:6px;padding:4px 12px;font-family:inherit;font-size:11px;font-weight:700;text-decoration:none;transition:background .2s;display:inline-block}.ai-terminal-relink-btn:hover{background:#f59e0b40}@media (max-width:480px){.ai-terminal-panel{width:calc(100vw - 16px);height:calc(100vh - 100px);bottom:8px;right:8px}.ai-terminal-toggle{bottom:16px;right:16px}}
