:root{--bg-dark:#0b0d12;--bg-card:#13151c;--bg-elevated:#1a1d26;--bg-hover:#1e2129;--border-subtle:#ffffff0f;--primary-purple:#a855f7;--primary-pink:#ec4899;--primary-cyan:#06b6d4;--primary-orange:#f59e0b;--primary-green:#10b981;--text-primary:#fff;--text-secondary:#9ca3af;--text-tertiary:#6b7280}.noise-bg{z-index:0;pointer-events:none;background:radial-gradient(80% 50% at 50% -20%,#a855f714,#0000),radial-gradient(60% 50% at 80%,#06b6d40d,#0000);position:fixed;inset:0}.noise-bg:before{content:"";opacity:.5;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.03'/%3E%3C/svg%3E");position:absolute;inset:0}.container{z-index:1;max-width:1200px;min-height:100vh;margin:0 auto;padding:7rem 2rem 4rem;position:relative}.page-header{margin-bottom:3rem;animation:.6s cubic-bezier(.16,1,.3,1) fadeInUp}.header-top{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.page-title{letter-spacing:-.02em;margin-bottom:.5rem;font-family:Syne,sans-serif;font-size:2.5rem;font-weight:800}.page-subtitle{color:var(--text-secondary);font-size:1.125rem}.btn-back{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;border-radius:12px;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:600;text-decoration:none;transition:all .2s}.btn-back:hover{background:var(--bg-hover);color:var(--text-primary);border-color:#ffffff1f}.options-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;margin-bottom:3rem;display:grid}.option-card{border:1px solid var(--border-subtle);text-align:center;cursor:pointer;background:linear-gradient(135deg,#1a1d2699,#13151ccc);border-radius:20px;padding:3rem 2rem;transition:all .4s cubic-bezier(.34,1.56,.64,1);animation:.6s cubic-bezier(.16,1,.3,1) .1s both fadeInUp}.option-card:hover{border-color:var(--primary-cyan);transform:translateY(-8px);box-shadow:0 20px 60px -12px #06b6d44d,inset 0 0 0 1px #06b6d41a}.option-icon{background:linear-gradient(135deg,#06b6d433,#a855f733);border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1.5rem;font-size:2.5rem;transition:transform .3s;display:flex}.option-card:hover .option-icon{transform:scale(1.1)rotate(-5deg)}.option-title{margin-bottom:.75rem;font-family:Syne,sans-serif;font-size:1.5rem;font-weight:700}.option-description{color:var(--text-secondary);font-size:1rem;line-height:1.6}.recording-interface{max-width:800px;margin:0 auto;animation:.6s cubic-bezier(.16,1,.3,1) fadeInUp}.recording-card{border:1px solid var(--border-subtle);text-align:center;background:linear-gradient(135deg,#1a1d2699,#13151ccc);border-radius:20px;padding:3rem}.recording-visualizer{width:200px;height:200px;margin:0 auto 2rem;position:relative}.recording-circle{background:linear-gradient(135deg,#ef444433,#ef44441a);border:3px solid #ef4444;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:4rem;animation:2s ease-in-out infinite recordPulse;display:flex}@keyframes recordPulse{0%,to{transform:scale(1);box-shadow:0 0 #ef444466}50%{transform:scale(1.05);box-shadow:0 0 0 20px #ef444400}}.recording-time{color:#ef4444;margin-bottom:2rem;font-family:Syne,sans-serif;font-size:2rem;font-weight:700}.recording-controls{justify-content:center;gap:1rem;display:flex}.btn-stop-recording{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:14px;padding:1rem 3rem;font-size:1.125rem;font-weight:700;transition:all .3s;box-shadow:0 8px 24px -8px #ef444480}.btn-stop-recording:hover{transform:translateY(-2px);box-shadow:0 12px 32px -8px #ef444499}.text-interface{max-width:1200px;margin:0 auto;animation:.6s cubic-bezier(.16,1,.3,1) fadeInUp}.text-card{border:1px solid var(--border-subtle);background:linear-gradient(135deg,#1a1d2699,#13151ccc);border-radius:20px;padding:2rem;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.text-card:hover{border-color:#06b6d44d;transform:translateY(-2px);box-shadow:0 8px 24px -8px #06b6d433}.textarea-wrapper{position:relative}.notes-textarea{background:var(--bg-elevated);border:1px solid var(--border-subtle);width:100%;min-height:500px;color:var(--text-primary);resize:vertical;border-radius:16px;padding:2rem;font-family:Inter,sans-serif;font-size:1.0625rem;line-height:1.8;transition:all .3s}.notes-textarea::placeholder{color:var(--text-tertiary)}.notes-textarea:focus{border-color:var(--primary-cyan);background:#06b6d408;outline:none;box-shadow:0 0 0 4px #06b6d41a}.char-count{color:var(--text-tertiary);pointer-events:none;background:#0b0d12e6;border-radius:8px;padding:.375rem .75rem;font-size:.875rem;position:absolute;bottom:1rem;right:1rem}.btn-polish{background:linear-gradient(135deg,var(--primary-cyan),var(--primary-purple));color:#fff;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.75rem;width:100%;min-height:56px;max-height:70px;margin-top:1.5rem;padding:1.125rem 2rem;font-size:1.0625rem;font-weight:700;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 8px 24px -8px #06b6d480}.btn-polish svg{flex-shrink:0;width:20px!important;height:20px!important}.btn-polish:hover{transform:translateY(-3px);box-shadow:0 0 0 4px #06b6d426,0 16px 40px -8px #06b6d499}.btn-polish:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-polish.loading span{opacity:.7}.ask-lecture-cta{flex-direction:column;gap:.5rem;margin-bottom:2rem;display:flex}.btn-ask-lecture{width:100%;color:var(--text-primary);letter-spacing:-.01em;cursor:pointer;background:linear-gradient(135deg,#a855f733,#06b6d440);border:1px solid #06b6d459;border-radius:18px;padding:1.5rem 2rem;font-size:1.125rem;font-weight:700;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 14px 36px -12px #06b6d466}.btn-ask-lecture:hover{border-color:#06b6d480;transform:translateY(-2px);box-shadow:0 18px 44px -12px #06b6d480}.btn-ask-lecture:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.ask-lecture-subtitle{color:var(--text-tertiary);font-size:.95rem}.qa-panel{border:1px solid var(--border-subtle);background:linear-gradient(135deg,#1a1d26b3,#13151cd9);border-radius:20px;flex-direction:column;gap:1.5rem;min-height:400px;margin-bottom:2.5rem;padding:2rem;display:flex}.qa-messages{flex-direction:column;flex:1;gap:.875rem;max-height:450px;padding-right:.5rem;display:flex;overflow-y:auto}.qa-empty{color:var(--text-tertiary);font-size:.95rem}.qa-message{border-radius:14px;padding:1rem 1.25rem;font-size:.98rem;line-height:1.6}.qa-message.user{background:#a855f733;border:1px solid #a855f759;align-self:flex-end}.qa-message.assistant{background:#06b6d41f;border:1px solid #06b6d440;align-self:flex-start}.qa-input-row{align-items:flex-end;gap:1rem;display:flex}.qa-input{background:var(--bg-elevated);border:1px solid var(--border-subtle);min-height:100px;max-height:200px;color:var(--text-primary);resize:vertical;border-radius:14px;flex:1;padding:1rem 1.25rem;font-family:Inter,sans-serif;font-size:1rem;line-height:1.6}.qa-input:focus{border-color:#06b6d499;outline:none;box-shadow:0 0 0 3px #06b6d41f}.qa-send{background:linear-gradient(135deg,var(--primary-cyan),var(--primary-purple));color:#fff;cursor:pointer;border:none;border-radius:14px;align-self:flex-end;min-width:110px;min-height:100px;padding:1rem 2rem;font-size:1rem;font-weight:700;transition:all .3s}.qa-send:hover{transform:translateY(-2px)}.qa-send:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spinner}@keyframes spinner{to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.container{padding:6rem 1.5rem 3rem}.page-title{font-size:2rem}.options-grid{grid-template-columns:1fr;gap:1.5rem}.option-card{padding:2.5rem 1.5rem}.recording-card,.text-card{padding:2rem 1.5rem}.notes-textarea{min-height:300px}}
