.hero-section{text-align:center;padding:24px 0 48px}.hero-inner{max-width:800px;margin:0 auto}.hero-title{color:var(--color-navy);letter-spacing:-.01em;margin-bottom:24px;font-size:3.5rem}.hero-subtitle{color:var(--color-grey-dark);font-size:1.25rem;font-style:italic;font-family:var(--font-sans);opacity:.8;max-width:600px;margin:0 auto}
.upload-zone{border:2px dashed var(--color-border);background:var(--color-surface);justify-content:center;align-items:stretch;width:100%;max-width:900px;min-height:180px;margin:64px auto 48px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.upload-zone:hover,.upload-zone.drag-active{border-color:var(--color-coral);background:#e85d4a05;transform:scale(1.01)}.upload-zone.has-file{border-style:solid;border-color:var(--color-emerald);background:#10b98105}.file-input{display:none}.upload-label{cursor:pointer;align-items:center;gap:32px;width:100%;padding:0 40px;display:flex}.upload-icon-container{color:var(--color-grey-mid);flex-shrink:0;transition:color .3s}.upload-zone:hover .upload-icon-container{color:var(--color-coral)}.upload-zone.has-file .upload-icon-container{color:var(--color-emerald)}.upload-text{text-align:left;flex-grow:1}.main-text{color:var(--color-navy);font-size:1.1rem;font-family:var(--font-serif);margin-bottom:4px}.file-name{font-size:1.5rem;font-family:var(--font-serif);color:var(--color-navy);line-height:1.2}.sub-text{color:var(--color-coral);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:700}@media (max-width:600px){.upload-label{text-align:center;flex-direction:column;gap:16px}.upload-text{text-align:center}}
.intent-selector-container{width:100%;max-width:900px;margin:0 auto;padding-bottom:60px}.intent-grid{grid-template-columns:1fr 1fr;gap:32px;margin-bottom:48px;display:grid}@media (max-width:768px){.intent-grid{grid-template-columns:1fr}}.intent-card{text-align:left;cursor:pointer;background:#fff;border-radius:16px;flex-direction:column;gap:20px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 2px 4px #00000005,0 10px 30px #0000000a;padding:32px!important}.intent-card:hover{border-color:var(--color-coral);transform:translateY(-4px)}.intent-card.selected{border-color:var(--color-coral);background:#e85d4a08;box-shadow:0 15px 45px #00000014,0 5px 15px #e85d4a0d}.intent-icon-header{align-items:center;gap:16px;display:flex}.intent-desc{color:var(--color-grey-mid);flex-grow:1;font-size:1rem;line-height:1.6}.intent-metadata{color:var(--color-navy);border-top:1px solid var(--color-border);align-items:center;gap:12px;padding-top:20px;font-size:.8rem;font-weight:600;display:flex}.divider{color:var(--color-border)}.button-container{justify-content:center;margin-top:24px;display:flex}.cta-button{justify-content:center;min-width:280px;height:60px;font-size:1.1rem;box-shadow:0 10px 30px #e85d4a33}.cta-button.disabled{opacity:.4;cursor:not-allowed;box-shadow:none;background:#ccc;transform:none!important}.text-coral{color:var(--color-coral)}
.curriculum-selector-container{width:100%;max-width:900px;margin:0 auto 3rem;padding:0}.curriculum-grid{grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:2rem;display:grid}.curriculum-card{text-align:center;cursor:pointer;background:#fff;border:1px solid #e85d4a1a;flex-direction:column;align-items:center;padding:1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.curriculum-card:hover{border-color:var(--color-coral);transform:translateY(-4px);box-shadow:0 8px 24px #e85d4a1a}.curriculum-card.selected{border-color:var(--color-coral);background:var(--color-navy);color:#fff}.curriculum-card.selected .curriculum-icon-wrapper{background:var(--color-coral);color:#fff}.curriculum-card.selected .text-coral{color:#fff}.curriculum-card.selected .curriculum-subtitle{color:#ffffffb3}.curriculum-icon-wrapper{width:48px;height:48px;color:var(--color-coral);background:#e85d4a0d;border-radius:12px;justify-content:center;align-items:center;margin-bottom:1rem;transition:all .3s;display:flex}.curriculum-title{margin-bottom:.5rem;font-family:inherit;font-size:.95rem;font-weight:700}.curriculum-subtitle{color:var(--color-grey-mid);font-size:.75rem;line-height:1.4}@media (max-width:900px){.curriculum-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:600px){.curriculum-grid{grid-template-columns:repeat(1,1fr)}}
.loading-overlay{background:var(--color-parchment);z-index:1000;justify-content:center;align-items:center;width:100%;height:100%;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}.loading-content{text-align:center;items-center:center;flex-direction:column;gap:2rem;display:flex}.pulse-logo{background:var(--color-navy);width:80px;height:80px;color:var(--color-parchment);font-family:var(--font-serif);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:2.5rem;animation:2s ease-in-out infinite logoPulse;display:flex}.loading-text{color:var(--color-navy);font-size:2rem}.loading-bar-container{background:#0000000d;border-radius:2px;width:300px;height:4px;margin:0 auto;overflow:hidden}.loading-bar-logic{background:var(--color-coral);width:50%;height:100%;animation:1.5s ease-in-out infinite slideLoading}.loading-subtext{color:var(--color-grey-mid);font-size:.875rem;font-style:italic}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes logoPulse{0%{transform:scale(1);box-shadow:0 0 #1a202c66}70%{transform:scale(1.05);box-shadow:0 0 0 20px #1a202c00}to{transform:scale(1);box-shadow:0 0 #1a202c00}}@keyframes slideLoading{0%{transform:translate(-100%)}to{transform:translate(200%)}}
