body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{scroll-behavior:smooth}.App{background-color:#f8f9ff;min-height:100vh;padding:1rem}.navbar{justify-content:space-between;margin:0 auto;max-width:1200px;padding:1rem 2rem}.logo,.navbar{align-items:center;display:flex}.logo{color:#0056b3;font-size:1.5rem;font-weight:700;gap:.5rem}.logo img{height:32px}.nav-right{gap:1.5rem}.linkedin-link,.nav-right{align-items:center;display:flex}.linkedin-link{color:#0056b3;font-weight:500;gap:.5rem;text-decoration:none;transition:color .2s}.linkedin-link:hover{color:#004494}.get-in-touch,.join-waitlist{background-color:#0056b3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-block;font-weight:600;padding:.75rem 1.5rem;text-decoration:none;transition:background-color .2s}.get-in-touch:hover,.join-waitlist:hover{background-color:#004494}.signup-button{background:linear-gradient(135deg,#007aff,#0056b3);border:none;border-radius:12px;box-shadow:0 4px 12px #007aff4d;color:#fff;cursor:pointer;display:inline-block;font-size:.875rem;font-weight:700;letter-spacing:.5px;padding:.875rem 1.75rem;text-decoration:none;text-transform:uppercase;transition:all .3s ease}.signup-button:hover{background:linear-gradient(135deg,#0056b3,#004494);box-shadow:0 6px 20px #007aff66;transform:translateY(-2px)}.signup-button-hero{background:linear-gradient(135deg,#007aff,#0056b3);border:none;border-radius:16px;box-shadow:0 8px 24px #007aff4d;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:700;letter-spacing:.5px;overflow:hidden;padding:1rem 2.5rem;position:relative;text-decoration:none;transition:all .3s ease}.signup-button-hero:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.signup-button-hero:hover:before{left:100%}.signup-button-hero:hover{background:linear-gradient(135deg,#0056b3,#004494);box-shadow:0 12px 32px #007aff66;transform:translateY(-3px)}.hero{align-items:center;display:flex;gap:4rem;justify-content:space-between;margin:4rem auto;max-width:1200px;padding:0 2rem}.content{flex:1 1}.content h1{color:#1a1a1a;font-size:3.5rem;font-weight:700;margin-bottom:1.5rem}.content p{color:#4a4a4a;font-size:1.25rem;line-height:1.6}.signup-form{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:.75rem;padding:1.25rem;width:320px}#mc_embed_signup{max-width:320px;width:320px}#mc_embed_signup form{margin:0;padding:0}#mc_embed_signup form,#mc_embed_signup_scroll{display:flex;flex-direction:column;gap:.75rem;width:100%}#mc_embed_signup .mc-field-group{box-sizing:border-box;margin:0;min-height:auto;padding:0;width:100%}#mc_embed_signup .mc-field-group input{border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box;font-size:.9rem;height:40px;margin:0;padding:.75rem;width:100%}#mc_embed_signup #mc-embedded-subscribe{height:auto;margin:0;width:100%}#mc_embed_signup div#mce-responses{margin:0;padding:0;width:100%}#mc_embed_signup div.response{font-weight:400;margin:0;padding:.5rem;text-align:center;width:100%}#mc_embed_signup #mce-error-response{color:#f44}#mc_embed_signup #mce-success-response{color:#00c851}.signup-form input{border:1px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:1rem}.signup-form input:focus{border-color:#0056b3;outline:none}.disclaimer{color:#666;font-size:.875rem}.features{margin:6rem auto;max-width:1200px;padding:0 2rem;text-align:center}.features h2{color:#1a1a1a;font-size:2.5rem;margin-bottom:3rem}.feature-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:2rem}.feature-card{padding:2rem;transition:transform .2s}.feature-card:hover{transform:translateY(-5px)}.feature-icon{font-size:2.5rem;margin-bottom:1rem}.feature-card h3{color:#1a1a1a;font-size:1.25rem;margin-bottom:.5rem}.feature-card p{color:#4a4a4a;line-height:1.5}.coming-soon{background:#ebf5ff;border-radius:20px;color:#0056b3;display:inline-block;font-size:.875rem;font-weight:600;margin-bottom:1rem;padding:.5rem 1rem}.early-access-badge{background:#fff3e0;border-radius:6px;color:#ff9800;font-size:.9rem;font-weight:600;margin-bottom:.25rem;padding:.5rem .75rem;text-align:center}.thank-you-message{animation:fadeIn .5s ease-in;padding:1rem 0;text-align:center}.thank-you-icon{animation:bounce 1s ease;font-size:2rem;margin-bottom:.5rem}.thank-you-message h3{color:#0056b3;font-size:1.2rem;margin:.5rem 0}.thank-you-message p{color:#666;font-size:.9rem;line-height:1.4;margin:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.spots-left{color:#ff5722;font-size:.875rem;margin-top:.5rem;text-align:center}.early-access{background:#ebf5ff;margin-top:4rem;padding:4rem 2rem}.early-access-content{margin:0 auto;max-width:800px;text-align:center}.early-access h2{color:#1a1a1a;font-size:2rem;margin-bottom:2rem}.benefits{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.benefit{align-items:center;color:#4a4a4a;display:flex;font-size:1.1rem;gap:.5rem;justify-content:center}.benefit span{font-size:1.25rem}.join-waitlist.secondary{background-color:#fff;border:2px solid #0056b3;color:#0056b3}.join-waitlist.secondary:hover{background-color:#0056b3;color:#fff}@media (max-width:768px){.hero{flex-direction:column;gap:2rem;margin:2rem auto;text-align:center}.content h1{font-size:2.5rem}.signup-form{max-width:320px;width:100%}.navbar{padding:1rem}.get-in-touch{font-size:.875rem;padding:.5rem 1rem}.features{margin:3rem auto}.features h2{font-size:2rem}.feature-grid{grid-template-columns:1fr;margin:2rem auto 0;max-width:400px}.early-access{padding:3rem 1rem}}@media (max-width:480px){.content h1{font-size:2rem}.content p{font-size:1.1rem}.navbar{padding:.5rem}.logo span{display:none}.nav-right{gap:1rem}.linkedin-link{font-size:.875rem}.early-access h2,.features h2{font-size:1.75rem}.benefit{font-size:1rem}}.contact-page{margin:2rem auto;max-width:1200px;padding:0 2rem}.contact-page h1{color:#1a1a1a;font-size:2.5rem;margin-bottom:2rem;text-align:center}.contact-content{grid-gap:4rem;align-items:start;display:grid;gap:4rem;grid-template-columns:1fr 1fr}.contact-info{color:#4a4a4a}.contact-info p{font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.contact-methods{display:flex;flex-direction:column;gap:2rem}.contact-method h3{color:#1a1a1a;font-size:1.2rem;margin-bottom:.5rem}.contact-method a{color:#0056b3;text-decoration:none}.contact-method a:hover{text-decoration:underline}.social-links{display:flex;gap:1rem}.contact-form{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#1a1a1a;font-weight:500}.form-group input,.form-group textarea{border:1px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:.75rem;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#0056b3;outline:none}.submit-button{background-color:#0056b3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:background-color .2s;width:100%}.submit-button:hover{background-color:#004494}@media (max-width:768px){.contact-content{gap:2rem;grid-template-columns:1fr}.contact-info{text-align:center}.social-links{justify-content:center}}.nav-link-btn{background:none;border:none;color:#0056b3;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;text-decoration:none;transition:color .2s}.nav-link-btn:hover{color:#004494}.hero-new{margin:4rem auto;max-width:1200px;padding:3rem 2rem;text-align:center}.hero-content{margin:0 auto;max-width:800px}.hero-badge{align-items:center;background:linear-gradient(135deg,#e3f2ff,#f0f7ff);border:1px solid #cce5ff;border-radius:20px;color:#0056b3;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem}.hero-title{color:#1a1a1a;font-size:4rem;font-weight:800;line-height:1.1;margin-bottom:1.5rem}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007aff,#0056b3);-webkit-background-clip:text;background-clip:text}.hero-description{color:#666;font-size:1.25rem;line-height:1.6;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:600px}.hero-cta{display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.cta-primary{align-items:center;background:linear-gradient(135deg,#007aff,#0056b3);border:none;border-radius:12px;box-shadow:0 4px 20px #007aff4d;color:#fff;cursor:pointer;display:inline-flex;font-size:1.125rem;font-weight:700;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.cta-primary:hover{box-shadow:0 6px 30px #007aff66;transform:translateY(-2px)}.cta-secondary{background:#fff;border:2px solid #0056b3;border-radius:12px;color:#0056b3;cursor:pointer;font-size:1.125rem;font-weight:700;padding:1rem 2rem;transition:all .3s ease}.cta-secondary:hover{background:#f8f9ff;transform:translateY(-2px)}.hero-subtext{color:#888;font-size:.875rem;margin-top:1rem}.features-new{margin:6rem auto;max-width:1200px;padding:0 2rem}.section-header{margin-bottom:3rem;text-align:center}.section-header h2{color:#1a1a1a;font-size:2.5rem;font-weight:800;margin-bottom:1rem}.section-header p{color:#666;font-size:1.125rem}.feature-grid-new{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.feature-card-new{background:#fff;border-radius:16px;box-shadow:0 2px 10px #0000000d;padding:2rem;transition:all .3s ease}.feature-card-new:hover{box-shadow:0 8px 30px #0000001a;transform:translateY(-5px)}.feature-icon-new{align-items:center;background:linear-gradient(135deg,#e3f2ff,#f0f7ff);border-radius:12px;color:#0056b3;display:flex;height:50px;justify-content:center;margin-bottom:1rem;width:50px}.feature-card-new h3{color:#1a1a1a;font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.feature-card-new p{color:#666;line-height:1.6}.pricing-section{background:linear-gradient(135deg,#f8f9ff,#fff);border-radius:24px;margin:6rem auto;max-width:1200px;padding:4rem 2rem}.pricing-cards{grid-gap:2rem;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto}.pricing-card{border-radius:16px;box-shadow:0 2px 20px #00000014;padding:2.5rem;transition:all .3s ease}.pricing-card:hover{box-shadow:0 8px 40px #0000001f;transform:translateY(-5px)}.pricing-card-pro{border:2px solid #007aff}.pricing-badge{align-items:center;background:linear-gradient(135deg,#007aff,#0056b3);border-radius:20px;color:#fff;display:flex;font-size:.75rem;font-weight:700;gap:.25rem;left:50%;letter-spacing:.5px;padding:.5rem 1rem;position:absolute;text-transform:uppercase;top:-12px;transform:translateX(-50%)}.pricing-header{border-bottom:2px solid #f0f0f0;margin-bottom:2rem;padding-bottom:1.5rem}.pricing-header h3{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.plan-description{font-size:.95rem;margin-top:1rem;padding:0 1rem;text-align:center}.price{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center;margin-bottom:.5rem}.price-main{align-items:baseline;display:flex;gap:.25rem}.price-amount{color:#0056b3;font-size:3rem}.price-period{color:#888}.original-price{gap:.5rem}.crossed-price{color:#999;font-size:1rem}.discount-badge{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border-radius:6px;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:.25rem .5rem}.trial-subtext{color:#888;font-size:.875rem;margin-top:.5rem;text-align:center}.pricing-features{list-style:none;margin:0 0 2rem;padding:0}.pricing-features li{align-items:center;color:#444;display:flex;font-size:.95rem;gap:.75rem;padding:.75rem 0}.pricing-features svg{color:#0056b3;flex-shrink:0}.pricing-button-free,.pricing-button-pro{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:700;padding:1rem;transition:all .3s ease;width:100%}.pricing-button-free{background:#fff;border:2px solid #0056b3;color:#0056b3}.pricing-button-free:hover{background:#f8f9ff;transform:translateY(-2px)}.pricing-button-pro{background:linear-gradient(135deg,#007aff,#0056b3);box-shadow:0 4px 20px #007aff4d;color:#fff}.pricing-button-pro:hover{box-shadow:0 6px 30px #007aff66;transform:translateY(-2px)}.pricing-card-enterprise{border:2px solid #666}.pricing-button-enterprise{background:linear-gradient(135deg,#333,#666);border:none;border-radius:12px;box-shadow:0 4px 20px #0003;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:1rem;transition:all .3s ease;width:100%}.pricing-button-enterprise:hover{box-shadow:0 6px 30px #0000004d;transform:translateY(-2px)}.cta-section{background:linear-gradient(135deg,#007aff,#0056b3);border-radius:24px;margin:6rem auto 4rem;max-width:1200px;padding:4rem 2rem;text-align:center}.cta-content h2{color:#fff;font-weight:800}.cta-content p{color:#ffffffe6}.cta-final{align-items:center;background:#fff;border:none;border-radius:12px;color:#0056b3;cursor:pointer;display:inline-flex;font-size:1.125rem;font-weight:700;gap:.5rem;padding:1rem 2.5rem;transition:all .3s ease}.cta-final:hover{box-shadow:0 8px 30px #0003;transform:translateY(-2px)}.footer{border-top:2px solid #e0e0e0;margin:4rem auto 2rem;max-width:1200px;padding:3rem 2rem 1rem}.footer-content{grid-gap:4rem;display:grid;gap:4rem;grid-template-columns:2fr 1fr;margin-bottom:2rem}.footer-brand p{color:#666;margin-top:1rem;max-width:300px}.footer-links{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr)}.footer-column h4{color:#1a1a1a;font-size:.875rem;font-weight:700;letter-spacing:.5px;margin-bottom:1rem;text-transform:uppercase}.footer-column a,.footer-column button{background:none;border:none;color:#666;cursor:pointer;display:block;font-family:inherit;font-size:1rem;margin-bottom:.75rem;padding:0;text-align:left;text-decoration:none;transition:color .2s}.footer-column a:hover,.footer-column button:hover{color:#0056b3}.footer-bottom{border-top:1px solid #e0e0e0;padding-top:2rem;text-align:center}.footer-bottom p{color:#888;font-size:.875rem}@media (max-width:768px){.hero-title{font-size:2.5rem}.hero-description{font-size:1rem}.hero-cta{flex-direction:column}.feature-grid-new,.pricing-cards{grid-template-columns:1fr}.cta-content h2,.section-header h2{font-size:2rem}.footer-content{gap:2rem}.footer-content,.footer-links{grid-template-columns:1fr}}@media (max-width:480px){.content h1{font-size:2rem}.content p{font-size:1.1rem}.navbar{padding:.5rem}.logo span{display:none}.contact-page{padding:0 1rem}.contact-page h1,.hero-title{font-size:2rem}.nav-right{gap:.5rem}.nav-link-btn{font-size:.875rem}.signup-button{font-size:.75rem;padding:.625rem 1rem}}.pricing-container{background-color:#f8f9fe;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:4rem 2rem}.pricing-header{margin-bottom:4rem;text-align:center}.pricing-header-content{margin:0 auto;max-width:600px}.pricing-title{color:#1a1a1a;font-size:3.5rem;font-weight:700;line-height:1.2;margin:0 0 1rem}.pricing-subtitle{color:#666;font-size:1.25rem;line-height:1.6;margin-bottom:3rem}.billing-toggle{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:50px;box-shadow:0 4px 20px #0000000d;display:flex;gap:1rem;justify-content:center;margin:0 auto;max-width:300px;padding:.5rem}.billing-toggle span{color:#666;font-size:.875rem;font-weight:500;position:relative;transition:color .2s ease}.billing-toggle span.active{color:#007aff}.save-badge{background:#34d399;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;margin-left:.5rem;padding:.25rem .5rem}.toggle-switch{background:#e5e7eb;border:none;border-radius:15px;cursor:pointer;height:30px;position:relative;transition:background .2s ease;width:60px}.toggle-slider{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;height:26px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:26px}.toggle-slider.annual{transform:translateX(30px)}.toggle-switch:focus{box-shadow:0 0 0 3px #007aff1a;outline:none}.pricing-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:4rem;margin-left:auto;margin-right:auto;max-width:1200px}.pricing-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 8px 32px #00000014;height:-webkit-fit-content;height:fit-content;overflow:hidden;padding:1.5rem;position:relative;transition:transform .2s ease,box-shadow .2s ease}.pricing-card:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-4px)}.pricing-card.popular{border-color:#007aff;border-width:2px;transform:scale(1.02)}.pricing-card.popular:hover{transform:scale(1.02) translateY(-4px)}.popular-badge{background:#007aff;color:#fff;display:flex;left:50%;position:absolute;top:-12px;transform:translateX(-50%)}.plan-badge,.popular-badge{align-items:center;border-radius:50px;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem}.plan-badge{display:inline-flex;margin-bottom:1rem}.free-badge{background:#f3f4f6;color:#374151}.pro-badge{background:#dbeafe;color:#1e40af}.enterprise-badge{background:#f3e8ff;color:#7c3aed}.card-header{flex-direction:column;justify-content:space-between;margin-bottom:2rem;min-height:200px;text-align:center}.card-header h3{font-size:1.5rem;font-weight:700;margin:.5rem 0 1rem}.price{margin:1.5rem 0}.price-container{align-items:baseline;display:flex;gap:.25rem;justify-content:center}.price-amount{color:#1a1a1a;font-size:2.5rem;font-weight:800}.price-period{color:#666;font-size:1rem;font-weight:500}.original-price{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-top:.5rem}.crossed-price{color:#9ca3af;font-size:1.125rem;text-decoration:line-through}.discount-badge{background:#ef4444;border-radius:20px;color:#fff;font-size:.875rem;font-weight:600;padding:.25rem .75rem}.plan-description{color:#666;font-size:1rem;line-height:1.5;margin:0}.features-list{list-style:none;margin:0 0 2rem;min-height:300px;padding:0}.feature-item{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;font-size:.875rem;gap:.75rem;line-height:1.5;padding:.75rem 0}.feature-item:last-child{border-bottom:none}.feature-item.disabled{opacity:.5}.feature-icon{color:#22c55e;flex-shrink:0;margin-top:.125rem}.feature-icon.disabled{color:#ef4444}.pricing-btn{border:none;border-radius:12px;box-sizing:border-box;cursor:pointer;display:block;font-size:.875rem;font-weight:600;padding:.875rem 1rem;text-align:center;text-decoration:none;transition:all .2s ease;width:100%}.free-btn{background:#f3f4f6;color:#374151}.free-btn:hover{background:#e5e7eb;transform:translateY(-1px)}.pro-btn{background:#007aff;color:#fff}.pro-btn:hover{background:#0056b3;transform:translateY(-1px)}.enterprise-btn{background:#7c3aed;color:#fff}.enterprise-btn:hover{background:#5b21b6;transform:translateY(-1px)}.trial-text{color:#666;font-size:.875rem;margin:.75rem 0 0;text-align:center}.features-section{margin:4rem 0;text-align:center}.features-section h2{color:#1a1a1a;font-size:2.5rem;font-weight:700;margin-bottom:3rem}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1000px}.feature-highlight{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 20px #0000000d;padding:2rem}.feature-highlight-icon{color:#007aff;margin-bottom:1rem}.feature-highlight h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.feature-highlight p{color:#666;line-height:1.6;margin:0}.faq-section{margin:4rem 0}.faq-section h2{color:#1a1a1a;font-size:2.5rem;font-weight:700;margin-bottom:3rem;text-align:center}.faq-grid{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1000px}.faq-item{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 20px #0000000d;padding:2rem}.faq-item h4{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.faq-item p{color:#666;line-height:1.6;margin:0}.pricing-cta{background:linear-gradient(135deg,#007aff,#5856d6);border-radius:24px;color:#fff;margin:4rem 0;padding:4rem 2rem;text-align:center}.cta-content h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.cta-content p{font-size:1.25rem;margin-bottom:2rem;opacity:.9}.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.cta-btn{border-radius:12px;font-size:1rem;font-weight:600;min-width:150px;padding:1rem 2rem;text-decoration:none;transition:all .2s ease}.cta-btn.primary{background:#fff;color:#007aff}.cta-btn.primary:hover{background:#f8f9fa;transform:translateY(-2px)}.cta-btn.secondary{background:#0000;border:2px solid #fff;color:#fff}.cta-btn.secondary:hover{background:#fff;color:#007aff;transform:translateY(-2px)}@media (max-width:1024px){.pricing-cards{gap:1rem;grid-template-columns:repeat(3,1fr)}.pricing-card{padding:1.25rem}.card-header{min-height:180px}.features-list{min-height:250px}}@media (max-width:768px){.pricing-container{padding:2rem 1rem}.pricing-title{font-size:2.5rem}.pricing-cards{gap:1.5rem;grid-template-columns:1fr}.pricing-card.popular{border-width:2px;transform:none}.pricing-card.popular:hover{transform:translateY(-4px)}.card-header,.features-list{min-height:auto}.faq-grid,.features-grid{grid-template-columns:1fr;grid-template-rows:auto}.cta-buttons{align-items:center;flex-direction:column}.billing-toggle{flex-direction:column;gap:.5rem;max-width:none;padding:1rem}}@media (max-width:480px){.pricing-title{font-size:2rem}.pricing-subtitle{font-size:1rem}.price-amount{font-size:2.5rem}.cta-content h2,.faq-section h2,.features-section h2{font-size:2rem}.pricing-cta{padding:2rem 1rem}}.app-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;isolation:isolate;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem;position:relative}.app-container,body{background-color:#f8f9fe}body{padding:0}.app-header{align-items:center;background-color:#fff;border:1px solid #fffc;border-radius:16px;box-shadow:0 8px 32px #0000000d;display:flex;justify-content:space-between;margin-bottom:2rem;padding:.875rem 2rem;position:-webkit-sticky;position:sticky;text-align:center;top:1rem;z-index:100}@media (max-width:1000px){.app-header{padding:.875rem 1rem}.header-actions{gap:1rem}}.logo-link,.logo-section{align-items:center;display:flex}.logo-link{gap:.75rem;text-decoration:none}.logo-text{color:#0056b3;font-size:1.25rem;font-weight:700}.syllabi-logo{height:32px;width:auto}.welcome-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1a1a1a,#4a4a4a);background-clip:text;-webkit-background-clip:text;font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin:0}.sidebar{background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000014;padding:1.5rem}@media (min-width:1024px){.sidebar{height:calc(100vh - 4rem);overflow-y:auto;padding-right:1.5rem;position:-webkit-sticky;position:sticky;top:2rem}}.quick-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr;margin:2rem 0}.stat-card{box-shadow:0 4px 20px #0000000d;height:40px;justify-content:space-between;transition:transform .2s ease}.stat-icon{background:#007aff15;color:#007aff;font-size:1.5rem}.stat-content{align-items:center;display:flex;flex:1 1}.stat-card h3{color:#666;font-size:.875rem;margin:0}.stat-card .stat-content h3{color:#1f2937!important;font-size:2rem!important;font-weight:700!important;margin:0!important}.stat-card .stat-content p{color:#6b7280!important;font-size:.875rem!important;margin:.75rem 0 0 1rem!important}.stat-number{align-items:center;color:#333;display:flex;font-size:1.75rem;font-weight:700;margin:0;min-width:40px;text-align:right}.info-icon{margin-right:.5rem;vertical-align:middle}.course-navigation{margin-top:2rem}.course-navigation h3{color:#666;font-size:.875rem;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.nav-course-item{border-radius:12px;cursor:pointer;display:flex;flex-direction:column;margin-bottom:.75rem;padding:1rem;transition:all .2s ease}.nav-course-item:hover{transform:translateX(4px)}.nav-course-item .course-code{color:#333;font-size:1rem;font-weight:600;margin-bottom:.25rem}.nav-course-item .course-name{color:#666;font-size:.875rem}.header-actions{align-items:center;flex:1 1;gap:1.5rem;justify-content:flex-end}.nav-links{align-items:center;display:flex;gap:1rem}.hamburger-menu{align-items:center;background:none;border:none;cursor:pointer;display:none;flex-direction:column;height:32px;justify-content:center;padding:0;position:relative;width:32px}.upload-syllabus-button{margin-left:1rem;order:2}.hamburger-line{background-color:#333;border-radius:2px;height:2px;position:absolute;transition:all .3s ease;width:24px}.hamburger-line:first-child{transform:translateY(-6px)}.hamburger-line:nth-child(3){transform:translateY(6px)}@media (max-width:1000px){.header-actions{flex-direction:row;justify-content:flex-end;position:relative}.hamburger-menu{display:flex;margin-left:1rem;order:2;z-index:102}.hamburger-menu.active .hamburger-line:first-child{transform:rotate(45deg)}.hamburger-menu.active .hamburger-line:nth-child(2){opacity:0;transform:scale(0)}.hamburger-menu.active .hamburger-line:nth-child(3){transform:rotate(-45deg)}.nav-links{background-color:#fff;bottom:0;box-shadow:-4px 0 16px #0000001a;display:none;flex-direction:column;gap:1.5rem;padding:5rem 1.5rem 2rem;position:fixed;right:0;top:0;width:250px;z-index:101}.nav-links.active{display:flex}.nav-link{padding:.75rem;text-align:left;width:100%}}.nav-link{border-radius:8px;color:#666;font-size:.875rem;font-weight:500;padding:.5rem .75rem;text-decoration:none;transition:all .2s ease}.nav-link:hover{background-color:#007aff14;color:#007aff}.nav-link.active{background-color:#007aff1f;color:#007aff;font-weight:600}.upload-syllabus-button{align-items:center;-webkit-appearance:none;appearance:none;background-color:#007aff;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.75rem 1.25rem;text-decoration:none;-webkit-text-decoration:none;-webkit-text-decoration-color:#0000;text-decoration-color:#0000;-webkit-text-decoration-line:none;text-decoration-line:none;-webkit-text-decoration-style:none;text-decoration-style:none;transition:all .2s ease}a .upload-syllabus-button{text-decoration:none}a:has(.upload-syllabus-button){text-decoration:none}.upload-button-link{border:none;outline:none}.upload-button-link,.upload-button-link:active,.upload-button-link:focus,.upload-button-link:hover,.upload-button-link:visited{text-decoration:none!important}.upload-syllabus-button:hover{background-color:#0056b3}.upload-icon{font-size:1.25rem}.courses-grid{grid-gap:1.5rem;background:#f8f9fe;display:grid;gap:1.5rem;grid-template-columns:1fr;padding:.5rem 0;position:relative;z-index:2}@media (min-width:640px){.courses-grid{gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:1rem 0}}@media (max-width:1024px){.course-navigation{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:1rem}.nav-course-item{margin-bottom:0}}.course-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fff;border:1px solid #fffc;border-radius:16px;box-shadow:0 8px 32px #00000014;cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease;z-index:1}.modal-content{align-items:center;border-radius:16px;display:flex;flex-direction:column;margin:0 auto;max-width:600px;overflow-y:auto;width:100%}.modal-header{color:#fff;padding:1.5rem}.modal-header h2{font-size:1.75rem}.modal-header h3{font-size:1.1rem;font-weight:500;margin:.5rem 0 0;opacity:.9}.info-section{margin-bottom:2rem}.info-section h4{align-items:center;color:#666;display:flex;font-size:.875rem;letter-spacing:.5px;text-transform:uppercase}.form-section{margin-bottom:2rem}.form-group{margin-bottom:1rem}.form-group label{color:#666;display:block}.form-group input{border:1px solid #e0e0e0;border-radius:8px;font-size:.875rem;padding:.75rem;transition:all .2s ease;width:100%}.form-group input:focus{border-color:#007aff;box-shadow:0 0 0 2px #007aff1a;outline:none}.modal-actions{gap:1rem}.button-primary{display:flex}.button-primary,.button-secondary{border-radius:8px;padding:.75rem 1.5rem;transition:all .2s ease}.button-icon{font-size:1.1em}.course-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.course-card:hover{border-color:#fff;box-shadow:0 8px 30px #0000001a;transform:translateY(-4px)}.course-card.highlight{animation:highlight 1s ease}@keyframes highlight{0%{box-shadow:0 8px 30px #0000001a;transform:scale(1)}50%{box-shadow:0 12px 40px #007aff33;transform:scale(1.02)}to{box-shadow:0 8px 30px #0000001a;transform:scale(1)}}.course-header{border-radius:16px 16px 0 0;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:120px;overflow:hidden;padding:1.5rem;position:relative}.course-header:before{background:linear-gradient(45deg,#ffffff26,#0000);border-radius:16px 16px 0 0;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.course-header h2{font-size:2.25rem;font-weight:700;margin:0;position:relative;text-shadow:0 2px 4px #0000001a;z-index:2}.course-header h3{font-size:1.5rem;font-weight:500;margin:.25rem 0 0;opacity:.95;position:relative;text-shadow:0 1px 2px #0000001a;z-index:2}.course-content{padding:1.25rem}.professor-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.professor-info h4{align-items:center;color:#666;display:inline-flex;font-size:.75rem;gap:.5rem;letter-spacing:.5px;margin:0;text-transform:uppercase}.professor-name{color:#333;font-size:1rem;font-weight:500;margin:0}.professor-email{align-items:center;color:#007aff;display:inline-flex;font-size:.875rem;gap:.25rem;text-decoration:none}.professor-email:hover{text-decoration:underline}.course-details{margin:1.5rem 0}.detail-row{border-bottom:1px solid #eee;padding:.75rem 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#666}.detail-value{color:#333;font-size:.875rem}.course-progress{border-top:1px solid #eee;margin-top:1.5rem;padding-top:1.5rem}.progress-bar{background:#eee}.icon-button{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:50%;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background-color .2s;width:40px}.icon-button:hover{background-color:#f5f5f5}.user-avatar{align-items:center;background-color:#ff4081;border-radius:50%;color:#fff;display:flex;font-weight:600;height:40px;justify-content:center;width:40px}.upload-section{margin-bottom:3rem}.upload-box{background:#f8f9fa;border:2px dashed #ccc;border-radius:8px;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease}.upload-box:hover{background:#f0f7ff;border-color:#007aff}.upload-icon{font-size:3rem;margin-bottom:1rem}.upload-button{background:#007aff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.75rem 1.5rem;transition:background .3s ease}.upload-button:hover{background:#0056b3}.dashboard-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr;padding:1rem;position:relative}@media (min-width:1024px){.dashboard-content{gap:3rem;grid-template-columns:280px 1fr;padding:2rem}}.main-content{display:flex;flex:1 1;flex-direction:column;gap:2rem}.upcoming-sections{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;margin-bottom:1.5rem}@media (min-width:640px){.upcoming-sections{gap:2rem;grid-template-columns:repeat(2,1fr);margin-bottom:2rem}}@media (min-width:1200px){.upcoming-sections{grid-template-columns:repeat(3,1fr)}}.upcoming-section{background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000014;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.upcoming-section:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-2px)}.section-title{color:#333;font-size:1.25rem;font-weight:600;margin:0 0 1.25rem}.section-icon{color:#007aff;font-size:1.5rem}.upcoming-list{display:flex;flex-direction:column;gap:1rem}.upcoming-item{background:#f8f9fa;border-radius:12px;padding:1rem;transition:all .2s ease}.upcoming-item:hover{background:#f0f7ff;transform:translateX(4px)}.item-header{align-items:flex-start;justify-content:space-between;margin-bottom:.5rem}.upcoming-item h3{color:#333;font-size:1rem;font-weight:600;margin:0}.item-type{background:#e3f2fd;border-radius:12px;color:#1976d2;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.item-type.important{background:#fef2f2;color:#dc2626}.upcoming-item p{align-items:center;color:#666;display:flex;font-size:.875rem;gap:.5rem;margin:0}.upcoming-item .course-name{font-weight:500;margin-bottom:.25rem}.info-icon{color:#007aff}.no-items{background:#f8f9fa;border-radius:12px;color:#666;font-size:.875rem;padding:1rem;text-align:center}@media (max-width:1200px){.upcoming-sections{grid-template-columns:repeat(2,1fr)}}@media (max-width:1000px){.dashboard-content,.upcoming-sections{grid-template-columns:1fr}}.course-progress-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;grid-column:1/-1;padding:1.5rem}.section-header h2{font-size:1.5rem}.add-button{background:#f0f7ff;color:#4285f4;font-size:1.25rem;height:32px;width:32px}.progress-tabs{display:flex;gap:1rem;margin-bottom:1.5rem}.tab-button{background:none;border:none;border-radius:20px;color:#666;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s}.tab-button.active{background:#4285f4;color:#fff}.courses-overview{display:flex;flex-direction:column;gap:1rem}.course-row{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:1rem;padding:.75rem}.course-info{gap:.5rem;min-width:100px}.course-dot{border-radius:50%;height:10px;width:10px}.course-progress-bar{background:#e9ecef;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.progress-text{color:#666;font-size:.875rem;min-width:60px}.points-section{display:flex;flex-direction:column;gap:1.5rem}.points-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;text-align:center}.points-display{align-items:center;display:flex;gap:.5rem;justify-content:center;margin:1rem 0}.points-number{color:#4285f4;font-size:2.5rem;font-weight:700}.points-icon{font-size:2rem}.badge-button{background:#fff;border:1px solid #4285f4;border-radius:8px;color:#4285f4;cursor:pointer;font-weight:500;padding:.75rem;transition:all .2s;width:100%}.badge-button:hover{background:#f0f7ff}.assignments-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;grid-column:1/-1;padding:1.5rem}.assignment-actions{display:flex;gap:1rem}.action-button{background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s}.action-button:hover{background:#f5f5f5}.assignments-toolbar{align-items:center;display:flex;justify-content:space-between;margin:1.5rem 0}.search-bar{align-items:center;background:#f5f5f5;border-radius:8px;display:flex;flex:1 1;gap:.5rem;max-width:300px;padding:.5rem 1rem}.search-input{background:none;border:none;font-size:.875rem;outline:none;width:100%}.toolbar-actions{align-items:center;display:flex;gap:1rem}.show-completed{align-items:center;color:#666;display:flex;gap:.5rem}.assignments-table{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.table-header{background:#f8f9fa;color:#666;font-weight:600}.table-header,.table-row{display:grid;grid-template-columns:1fr 1fr 2fr 1fr 1fr 100px;padding:1rem}.table-row{align-items:center;border-top:1px solid #e0e0e0}.table-row:hover{background:#f8f9fa}.cell{align-items:center;display:flex;gap:.5rem}.status-dot{background:#666;border-radius:50%;height:8px;width:8px}.course-tag{border-radius:4px;color:#fff;font-size:.875rem;padding:.25rem .5rem}.actions{display:flex;gap:.5rem}.action-icon{background:none;border:none;border-radius:4px;cursor:pointer;padding:.25rem;transition:all .2s}.action-icon:hover{background:#f0f7ff}.upcoming-exams{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.exam-list{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.exam-item{background:#f8f9fa;justify-content:space-between;padding:.75rem}.exam-info,.exam-item{align-items:center;display:flex}.exam-info{gap:.5rem}.exam-course{color:#666;font-size:.875rem}@media (max-width:1024px){.dashboard-content{grid-template-columns:1fr}.assignments-section,.course-progress-section{grid-column:auto}.table-header,.table-row{grid-template-columns:1fr 1fr 2fr 1fr 80px}.cell:nth-child(5),.header-cell:nth-child(5){display:none}}@media (max-width:1000px){.app-container{padding:1rem}.header-actions{gap:.5rem}.assignment-actions,.upload-button span:not(.icon){display:none}.table-header,.table-row{grid-template-columns:1fr 2fr 80px}.cell:nth-child(2),.cell:nth-child(4),.header-cell:nth-child(2),.header-cell:nth-child(4){display:none}}.page-wrapper{max-width:1200px;padding:1rem}@media (min-width:1000px){.page-wrapper{padding:2rem}}.page-header{gap:1rem;margin-bottom:1.5rem}@media (min-width:640px){.page-header{align-items:center;flex-direction:row;justify-content:space-between;margin-bottom:2rem}}.page-header h1{font-size:1.75rem;margin:0}@media (min-width:1000px){.page-header h1{font-size:2rem}}.header-actions{display:flex;gap:1rem;height:42px;width:100%}.filter-select{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:.875rem;outline:none;padding:.5rem 1rem;transition:all .2s ease}.filter-select:hover{border-color:#007aff}.add-button{border-radius:12px;box-shadow:0 2px 4px #007aff1a;height:100%;justify-content:center;padding:0 1.5rem;transition:all .3s ease;white-space:nowrap;width:100%}@media (min-width:640px){.add-button{width:auto}}.add-button:hover{box-shadow:0 4px 8px #007aff33}.add-button:active{box-shadow:0 2px 4px #007aff1a;transform:translateY(0)}.assignments-grid{grid-template-columns:1fr}@media (min-width:640px){.assignments-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.assignment-card{border-radius:12px;box-shadow:0 2px 8px #0000000d;transition:all .2s ease}.assignment-card:hover{box-shadow:0 4px 12px #0000001a}.assignment-header{background:#ffffffe6;border-left:4px solid;padding:1.25rem}.assignment-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.assignment-title h3{color:#333;font-size:1.125rem;font-weight:600;margin:0}.course-tag{border-radius:12px;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.assignment-content{padding:1.25rem}.assignment-description{color:#666;margin:0 0 1rem}.assignment-meta{grid-gap:1rem;display:grid;grid-template-columns:1fr 1fr}.meta-item{flex-direction:column;gap:.25rem}.meta-label{color:#666;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.meta-value{color:#333;font-size:.875rem;font-weight:500}.exams-grid{grid-template-columns:1fr}@media (min-width:640px){.exams-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.exam-card{box-shadow:0 2px 8px #0000000d;transition:all .2s ease}.exam-card:hover{box-shadow:0 4px 12px #0000001a}.exam-header:before{background:linear-gradient(45deg,#ffffff26,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.exam-title{position:relative;z-index:2}.exam-type{letter-spacing:1px;opacity:.9}.exam-title h3{font-weight:600;margin:.25rem 0}.course-name{font-size:.875rem}.exam-meta{grid-gap:1rem;display:grid;gap:1rem}.exam-topics h4{color:#666;font-size:.875rem;letter-spacing:.5px;text-transform:uppercase}.exam-topics ul{color:#333;font-size:.875rem;padding-left:1.25rem}.exam-topics li{margin-bottom:.25rem}.deadlines-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.deadlines-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1a1a1a,#4a4a4a);background-clip:text;-webkit-background-clip:text;font-size:2rem;font-weight:700;margin:0}.view-select{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:.875rem;outline:none;padding:.5rem 1rem;transition:all .2s ease}.view-select:hover{border-color:#007aff}.timeline{display:flex;flex-direction:column;gap:1rem}.deadline-card{background:#ffffffe6;border:1px solid #0000000d;border-radius:16px;box-shadow:0 2px 8px #0000000d;display:flex;overflow:hidden;transition:all .2s ease}.deadline-card:hover{box-shadow:0 4px 12px #00000014;transform:translateX(4px)}.deadline-indicator{min-height:100%;width:4px}.deadline-content{padding:1.25rem}.deadline-header{margin-bottom:.5rem}.deadline-course{color:#666;font-size:.875rem}.deadline-type{border-radius:12px;font-size:.75rem}.deadline-title{color:#333;font-size:1.125rem;font-weight:600;margin:0 0 1rem}.deadline-footer{align-items:center;display:flex;justify-content:space-between}.deadline-date{gap:.5rem}.status-badge.upcoming{background-color:#e3f2fd;color:#1976d2}.status-badge.pending{background-color:#fff3e0;color:#f57c00}.status-badge.not-started{background-color:#f5f5f5;color:#616161}.deadline-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.deadline-type{background:#007aff1a;border-radius:20px;color:#007aff;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.deadline-date{color:#666;font-size:.875rem}.deadline-course{font-size:1.25rem;margin:0 0 .5rem}.deadline-task{font-size:1rem;margin:0}.course-card{background:#f8f9fa;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.course-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.course-header{border-bottom:2px solid #e9ecef;margin-bottom:1.5rem;padding-bottom:1rem}.course-header h4{color:#007aff;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.course-header h5{color:#343a40;font-size:1rem;font-weight:500;margin:0}.course-info{gap:.75rem}.info-row{align-items:flex-start;display:flex;font-size:.9rem;justify-content:space-between;line-height:1.4}.info-label{font-weight:500;min-width:100px}.info-row a{color:#007aff;text-decoration:none}.info-row a:hover{text-decoration:underline}.empty-state{padding:2rem 0}.dashboard-card h3{color:#333;font-size:1.25rem;margin-bottom:1.5rem;margin-top:0}.dashboard-card table{border-collapse:collapse;margin-bottom:1rem;width:100%}.dashboard-card th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#333;font-weight:600;padding:12px;text-align:left}.dashboard-card td{border-bottom:1px solid #e9ecef;color:#444;padding:12px}.dashboard-card tr:hover{background:#f8f9fa}.status-badge{border-radius:12px;font-size:.875rem;padding:4px 8px}.status-processed{background:#e6f3ff;color:#007aff}.status-pending{background:#fff3e6;color:orange}.deadline-item{align-items:center;background:#f8f9fa;border-radius:6px;justify-content:space-between;margin-bottom:8px;padding:12px;position:relative}.deadline-item:hover{background:#f0f7ff;transform:translateY(-1px)}.delete-deadline-btn{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;margin-left:8px;opacity:0;padding:8px;transition:all .2s ease}.delete-deadline-btn:hover{background:#fee2e2;color:#dc2626}.deadline-item:hover .delete-deadline-btn{opacity:1}.deadline-info{display:flex;flex-direction:column}.deadline-course{color:#333;font-weight:600}.deadline-task{color:#666;font-size:.875rem;margin-top:2px}.deadline-date{color:#007aff;font-weight:500}@media (max-width:1000px){.app-dashboard{padding:1rem}.dashboard-content{grid-template-columns:1fr}.dashboard-card{overflow-x:auto}.deadline-item{align-items:flex-start;flex-direction:column}.deadline-date{margin-top:8px}}.dashboard-container{background-color:#f8f9fe;margin:0 auto;max-width:1400px;min-height:100vh;padding:0}.dashboard-header{align-items:center;display:flex;justify-content:flex-start;margin-bottom:2rem;padding:0 .5rem}.header-content h1.dashboard-title{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.header-content .dashboard-subtitle{color:#6b7280;font-size:1rem;margin:.25rem 0 0}.stats-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{align-items:center;background:#fff;border:1px solid #fffc;border-radius:16px;box-shadow:0 4px 20px #0000000f;display:flex;gap:1rem;padding:1.5rem;transition:all .2s ease}.stat-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.stat-icon{align-items:center;border-radius:12px;color:#fff;display:flex;height:48px;justify-content:center;width:48px}.stat-icon.courses{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.stat-icon.deadlines{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-icon.today{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.progress{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-content h3{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.stat-content p{color:#6b7280;font-size:.875rem;margin:.5rem 0 0}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:3rem}@media (max-width:1000px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-section{background:#fff;border:1px solid #fffc;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:1.5rem}.section-header{border-bottom:1px solid #f3f4f6;margin-bottom:1.25rem}.section-header h2{color:#1f2937}.section-header svg{color:#6b7280}.today-classes{display:flex;flex-direction:column;gap:1rem}.class-item{align-items:flex-start;background:#f9fafb;border-left:4px solid;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:1rem;transition:all .2s ease}.class-item:hover{background:#f3f4f6;box-shadow:0 2px 8px #0000001a;transform:translateX(4px)}.class-time{align-items:center;color:#6b7280;display:flex;flex-shrink:0;font-size:.875rem;font-weight:500;gap:.5rem;min-width:120px;text-align:right}.class-details{display:flex;flex:1 1;flex-direction:column;justify-content:center}.class-details h4{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .25rem}.class-details p{color:#6b7280;font-size:.875rem;margin:0 0 .5rem}.class-location{align-items:center;color:#9ca3af;display:flex;font-size:.75rem;gap:.25rem}.deadlines-list{display:flex;flex-direction:column;gap:1rem}.deadline-item{background:#f9fafb;border-radius:12px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.deadline-item:hover{background:#f3f4f6;transform:translateX(4px)}.deadline-indicator{align-items:center;border-radius:10px;color:#fff;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.deadline-content{flex:1 1}.deadline-content h4{color:#1f2937;font-size:.875rem;font-weight:600;margin:0 0 .25rem}.deadline-content p{color:#6b7280;font-size:.75rem;margin:0 0 .5rem}.deadline-date{align-items:center;color:#9ca3af;display:flex;font-size:.75rem;gap:.25rem}.empty-state{color:#9ca3af;padding:3rem 1rem}.empty-state svg{opacity:.5}.courses-section{margin-bottom:2rem}.modern-course-card{background:#fff;border:1px solid #fffc;border-radius:20px;box-shadow:0 8px 32px #00000014;cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.modern-course-card:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-8px)}.course-card-header{align-items:center;color:#fff;display:flex;justify-content:space-between;padding:1.5rem;position:relative}.course-card-header:before{background:linear-gradient(135deg,#ffffff1a,#fff0);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.course-code{font-size:1.5rem;position:relative;z-index:1}.course-credits{font-size:.875rem;font-weight:500;opacity:.9;position:relative;z-index:1}.course-card-body{padding:1.5rem}.course-title{color:#1f2937;font-size:1.25rem;line-height:1.3;margin:0 0 .5rem}.course-semester{color:#6b7280;font-size:.875rem;margin:0 0 1.5rem}.course-location,.course-schedule,.instructor-info{align-items:center;color:#4b5563;display:flex;font-size:.875rem;gap:.75rem;margin-bottom:1rem}.course-location svg,.course-schedule svg,.instructor-info svg{color:#9ca3af;flex-shrink:0}.course-progress{margin:1.5rem 0 1rem}.progress-header{align-items:center;color:#374151;display:flex;font-size:.875rem;font-weight:500;justify-content:space-between;margin-bottom:.5rem}.progress-bar{background-color:#e5e7eb;height:8px;margin-bottom:.5rem;overflow:hidden;width:100%}.progress-fill{border-radius:4px;height:100%;transition:width .3s ease}.progress-text{color:#6b7280;font-size:.75rem}.course-deadlines{border-top:1px solid #f3f4f6;margin-top:1.5rem;padding-top:1rem}.course-deadlines h4{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 .75rem}.next-deadline{align-items:center;display:flex;font-size:.75rem;justify-content:space-between}.next-deadline span:first-child{color:#4b5563;font-weight:500}.next-deadline .deadline-date{color:#ef4444;font-weight:600}@media (max-width:1200px){.dashboard-container{padding:0 1rem}}@media (max-width:1000px){.dashboard-header{align-items:stretch;flex-direction:column;gap:1rem}.header-content{text-align:center}.stats-grid{grid-template-columns:repeat(2,1fr)}.courses-grid{grid-template-columns:1fr}.upload-syllabus-button{font-size:.75rem!important;gap:.5rem!important;padding:.5rem .75rem!important}.upload-icon{font-size:1rem!important}.today-classes .class-item{align-items:flex-start!important;flex-direction:column!important;gap:.5rem!important;text-align:left!important}.today-classes .class-item .class-details{align-items:flex-start!important;justify-content:flex-start!important;margin:0;order:1!important;padding:0!important;text-align:left!important;width:100%!important}.today-classes .class-item .class-details h4,.today-classes .class-item .class-details p{align-self:flex-start!important;margin:0 0 .25rem;text-align:left!important}.today-classes .class-item .class-location{align-items:center!important;justify-content:flex-start!important;text-align:left!important}.today-classes .class-item .class-time{align-self:flex-start!important;justify-content:flex-start!important;min-width:auto!important;order:2!important;text-align:left!important;width:100%!important}.deadlines-list .deadline-item,.deadlines-list .deadline-item .deadline-content{align-items:flex-start!important;text-align:left!important}.deadlines-list .deadline-item .deadline-content{justify-content:flex-start!important;padding:0!important}.deadlines-list .deadline-item .deadline-content h4,.deadlines-list .deadline-item .deadline-content p{align-self:flex-start!important;text-align:left!important}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.class-item,.deadline-item{align-items:flex-start!important;flex-direction:column;gap:.75rem;padding:1rem!important;text-align:left!important}.class-time{align-self:flex-start!important;justify-content:flex-start!important;min-width:auto;order:2;text-align:left!important}.today-classes .class-item,.today-classes .class-item .class-details{align-items:flex-start!important;text-align:left!important}.today-classes .class-item .class-details{justify-content:flex-start!important;order:1;padding:0!important;width:100%}.today-classes .class-item .class-details h4,.today-classes .class-item .class-details p{align-self:flex-start!important;margin:0 0 .25rem;text-align:left!important;width:100%}.today-classes .class-item .class-location{justify-content:flex-start!important;margin:0;text-align:left!important;width:100%}.deadlines-list .deadline-item,.deadlines-list .deadline-item .deadline-content{align-items:flex-start!important;text-align:left!important}.deadlines-list .deadline-item .deadline-content{justify-content:flex-start!important;padding:0!important;width:100%}.deadlines-list .deadline-item .deadline-content h4,.deadlines-list .deadline-item .deadline-content p{align-self:flex-start!important;text-align:left!important;width:100%}.upload-syllabus-button{font-size:.7rem!important;gap:.4rem!important;padding:.4rem .6rem!important}}.modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fff;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 25px 50px -12px #00000040;margin:0;max-height:90vh;max-width:1000px;overflow:hidden;padding:0;position:relative;width:95%}.modal-header{align-items:flex-start;border-radius:20px 20px 0 0;box-sizing:border-box;color:#fff!important;margin:0;min-height:120px;padding:2rem;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:1}.header-content{padding-right:1rem}.modal-header h2{color:#fff!important;font-size:2.25rem;font-weight:700;letter-spacing:-.025em;line-height:1.1;margin:0}.modal-header h3{color:#fff!important;font-size:1.25rem;font-weight:400;line-height:1.3;margin:.75rem 0 0;opacity:.95}.modal-close{background:#fff3;border:none;height:32px;width:32px}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-body{border-radius:0 0 20px 20px;max-height:calc(90vh - 140px);overflow-y:auto;padding:1.5rem}.modal-grid{grid-gap:2rem;display:grid;gap:2rem}.info-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem}.info-section h4{border-bottom:2px solid #dee2e6;color:#495057;font-size:1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{color:#6c757d;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-value{color:#212529;font-size:.95rem;line-height:1.4}.info-value a{color:#007bff;text-decoration:none;transition:color .2s ease}.info-value a:hover{color:#0056b3;text-decoration:underline}.description-section{border-top:1px solid #dee2e6;margin-top:1rem;padding-top:1rem}.description-text{color:#495057;font-size:.95rem;line-height:1.6;margin:.5rem 0 0}.ta-info{background:#fff;border:1px solid #dee2e6;border-radius:8px;margin-bottom:1rem;padding:1rem}.ta-info:last-child{margin-bottom:0}.grading-scale{margin-bottom:1rem}.grade-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:.5rem}.grade-item{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;justify-content:space-between;padding:.5rem .75rem}.grade-letter{color:#495057;font-weight:700}.grade-range{color:#6c757d;font-size:.875rem}.policies-grid{grid-gap:1rem;gap:1rem}.policy-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem}.policy-label{color:#495057;display:block;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.policy-text{color:#495057;font-size:.9rem;line-height:1.5;margin:0}.materials-grid{grid-gap:1rem;display:grid;gap:1rem}.material-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem}.material-label{color:#495057;display:block;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.material-text{color:#495057;font-size:.9rem;line-height:1.5;margin:0}.exams-grid{grid-gap:1rem;gap:1rem}.exam-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem}.exam-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.5rem}.exam-header input{background-color:#fff!important;color:#333!important;opacity:1!important;pointer-events:auto!important}.exam-name{color:#495057;font-size:1rem;font-weight:600}.exam-weight{background:#e3f2fd;border-radius:4px;color:#1976d2;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.exam-details{flex-wrap:wrap;gap:1rem;margin-bottom:.5rem}.exam-date,.exam-location,.exam-time{color:#6c757d;font-size:.875rem}.exam-type{background:#f8f9fa;border-radius:4px;color:#495057;font-size:.8rem;padding:.25rem .5rem;text-transform:capitalize}.assignments-grid{grid-gap:1rem;gap:1rem}.assignment-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem}.assignment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.assignment-name{color:#495057;font-size:1rem;font-weight:600}.assignment-weight{background:#e8f5e8;border-radius:4px;color:#2e7d2e;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.assignment-details{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem}.assignment-due,.assignment-time{color:#6c757d;font-size:.875rem}.assignment-type{background:#f8f9fa;border-radius:4px;color:#495057;font-size:.8rem;padding:.25rem .5rem;text-transform:capitalize}.assignment-description{color:#6c757d;font-size:.875rem;line-height:1.4;margin:.5rem 0 0}.dates-grid{grid-gap:1rem;display:grid;gap:1rem}.date-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.date-name{color:#495057;font-weight:600}.date-description,.date-value{color:#6c757d;font-size:.875rem}.date-description{line-height:1.4;margin:0}.emergency-text{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;color:#495057;font-size:.95rem;line-height:1.6;margin:0;padding:1rem}.modal-controls{align-items:flex-start;display:flex;flex-shrink:0;gap:.75rem;margin-top:.25rem}.modal-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.modal-close:hover{background:#ffffff40;border-color:#ffffff4d;transform:scale(1.05)}.cancel-button,.edit-button,.save-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;letter-spacing:.5px;padding:.75rem 1.25rem;text-transform:uppercase;transition:all .2s ease}.cancel-button:hover,.edit-button:hover,.save-button:hover{background:#ffffff40;border-color:#ffffff4d;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.save-button{background:#22c55e33;border-color:#22c55e4d}.save-button:hover{background:#22c55e4d;border-color:#22c55e66}.cancel-button{background:#ef444433;border-color:#ef44444d}.cancel-button:hover{background:#ef44444d;border-color:#ef444466}.edit-actions{display:flex;gap:.75rem}.edit-input{border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box;color:#333;font-size:.875rem;margin:.5rem 0;max-width:100%;padding:.75rem;transition:all .2s ease;width:100%}.edit-input:focus{border-color:#007aff;box-shadow:0 0 0 2px #007aff1a;outline:none}.edit-input::placeholder{color:#999}.edit-textarea{border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box;color:#333;font-family:inherit;font-size:.875rem;margin:.5rem 0;padding:.75rem;resize:vertical;transition:all .2s ease;width:100%}.edit-textarea:focus{border-color:#007aff;box-shadow:0 0 0 2px #007aff1a;outline:none}.edit-select{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-sizing:border-box;color:#333;font-size:.875rem;margin:.5rem 0;padding:.75rem;transition:all .2s ease;width:100%}.edit-select:focus{border-color:#007aff;box-shadow:0 0 0 2px #007aff1a;outline:none}.edit-header-input{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;box-sizing:border-box;color:#fff;font-size:inherit;font-weight:inherit;margin:.25rem 0;padding:.75rem;width:100%}.edit-header-input::placeholder{color:#ffffffb3}.edit-header-input:focus{background:#ffffff40;border-color:#ffffff80;outline:none}.array-item{background:#fff;border:1px solid #dee2e6;border-radius:8px;margin-bottom:1rem;padding:1rem;position:relative}.remove-item-btn{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;line-height:1;position:absolute;right:.5rem;top:.5rem;transition:all .2s ease;width:24px}.remove-item-btn:hover{background:#c82333;transform:scale(1.1)}.add-item-btn{align-items:center;background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-top:1rem;padding:.75rem 1.5rem;transition:all .2s ease}.add-item-btn:hover{background:#0056b3;box-shadow:0 2px 8px #007bff33;transform:translateY(-1px)}.add-item-btn:before{content:"+";font-size:1.1rem;font-weight:700}@media (max-width:768px){.modal-content{border-radius:16px;max-height:95vh;width:95%}.modal-header{border-radius:16px 16px 0 0;min-height:100px;padding:1.5rem}.modal-header h2{font-size:1.75rem}.modal-close,.modal-header h3{font-size:1.1rem}.modal-close{height:36px;width:36px}.cancel-button,.edit-button,.save-button{font-size:.8rem;padding:.625rem 1rem}.modal-body{padding:1rem}.info-grid{grid-template-columns:1fr}.grade-grid{grid-template-columns:repeat(2,1fr)}.assignment-header,.exam-header{align-items:flex-start;flex-direction:column;gap:.5rem}.modal-controls{align-items:flex-end}.edit-actions,.modal-controls{flex-direction:column;gap:.5rem}.edit-actions{width:100%}.cancel-button,.edit-button,.save-button{justify-content:center;width:100%}}.assignments-page,.exams-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;margin:0 auto;max-width:1400px;padding:2rem}.page-header{align-items:flex-end;border-bottom:1px solid #00000014;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem;position:relative}.header-content{align-items:center;display:flex;flex:1 1;flex-direction:column;text-align:center}.header-content h1{align-items:center;color:#1a1a1a;display:flex;font-size:2.25rem;font-weight:700;gap:.75rem;justify-content:center;margin:0 0 .5rem}.header-icon{color:#007aff}.page-subtitle{font-size:1rem;font-weight:400;margin:0}.page-header h1{color:#1a1a1a;font-size:2rem;font-weight:600}.add-button{background-color:#007aff;box-shadow:0 2px 8px #007aff4d;font-weight:600;padding:.75rem 1.25rem}.add-button:hover{background-color:#0056b3;box-shadow:0 4px 12px #007aff66}.add-button.primary{background:linear-gradient(135deg,#007aff,#0056b3)}.page-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.search-section{flex:1 1;min-width:280px}.search-box{align-items:center;background:#fff;border:1px solid #00000026;border-radius:10px;display:flex;gap:.75rem;padding:.875rem 1rem;position:relative;transition:all .2s ease}.search-box:focus-within{border-color:#007aff;box-shadow:0 0 0 3px #007aff1a}.search-box svg{color:#666;flex-shrink:0}.search-box input{background:#0000;border:none;font-size:.9rem;outline:none;width:100%}.search-box input::placeholder{color:#999}.filter-section{display:flex;flex-wrap:wrap;gap:1rem}.filter-group{align-items:center;background:#fff;border:1px solid #00000026;border-radius:8px;display:flex;gap:.5rem;padding:.625rem .875rem;transition:all .2s ease}.filter-group:focus-within{border-color:#007aff;box-shadow:0 0 0 3px #007aff1a}.filter-group svg{color:#666;flex-shrink:0}.filter-group select{background:#0000;border:none;color:#333;cursor:pointer;font-size:.875rem;outline:none}.assignments-modern-grid,.exams-modern-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.assignment-modern-card{min-height:180px}.assignment-modern-card,.exam-modern-card{background:#fff;border:1px solid #0000000f;border-radius:16px;box-shadow:0 4px 16px #00000014;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s ease}.exam-modern-card{min-height:240px}.assignment-modern-card:hover,.exam-modern-card:hover{box-shadow:0 8px 32px #0000001f;transform:translateY(-4px)}.card-accent{height:4px;left:0;position:absolute;top:0;width:100%;z-index:1}.card-header{align-items:center;box-sizing:border-box;display:flex;justify-content:center;padding:1.25rem 1.25rem .75rem;width:100%}.assignment-title,.exam-title-section{align-items:center;display:flex;flex-direction:column;text-align:center;width:100%}.assignment-title h3,.exam-title-section h3{word-wrap:break-word;color:#1a1a1a;font-size:1.125rem;font-weight:700;line-height:1.3;margin:0 0 .375rem;text-align:center}.course-info{align-items:center;display:flex;flex-direction:column;gap:.125rem;margin-top:0;text-align:center;width:100%}.course-code{font-size:.9rem;font-weight:700;letter-spacing:.5px;margin-bottom:.125rem;text-align:center;text-transform:uppercase}.course-title{word-wrap:break-word;color:#666;font-size:1rem;font-weight:600;line-height:1.4;text-align:center;white-space:normal}.status-badge{align-self:flex-start;flex-shrink:0;height:-webkit-fit-content;height:fit-content;padding:.5rem .875rem;white-space:nowrap}.exam-type-badge,.status-badge{font-weight:600;letter-spacing:.5px;text-transform:uppercase}.exam-type-badge{align-items:center;border-radius:16px;display:inline-flex;font-size:.75rem;margin-bottom:.75rem;padding:.375rem .75rem;width:-webkit-fit-content;width:fit-content}.card-content{padding:0 1.25rem}.assignment-meta,.card-content{align-items:center;box-sizing:border-box;width:100%}.assignment-meta{flex-direction:row;gap:1rem;justify-content:space-between;padding:.75rem}.assignment-meta,.exam-details{background:#f8f9fe99;border-radius:8px;display:flex;margin:.5rem 0}.exam-details{flex-direction:column;gap:.75rem;padding:1rem;width:100%}.meta-item{font-size:.875rem;gap:.5rem}.detail-item,.meta-item{align-items:center;color:#666;display:flex;font-weight:500}.detail-item{border-bottom:1px solid #0000000d;font-size:.9rem;gap:.75rem;padding:.5rem 0}.detail-item:last-child{border-bottom:none}.meta-item svg{color:#999;flex-shrink:0}.detail-item svg{color:#007aff;flex-shrink:0;height:16px;width:16px}.weight-badge{background:#f8f9fe;border:1px solid #007aff33;border-radius:16px;color:#007aff;flex-shrink:0;font-size:.8rem;font-weight:700;max-width:-webkit-fit-content;max-width:fit-content;min-width:50px;padding:.375rem .75rem;text-align:center}.topics-section{margin-top:.5rem}.topics-section h4{align-items:center;color:#333;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin:0 0 .75rem}.topics-list{display:flex;flex-wrap:wrap;gap:.5rem}.topic-tag{background:#f8f9fe;border:1px solid #00000014;border-radius:16px;color:#666;font-size:.75rem;font-weight:500;padding:.375rem .75rem}.assignments-section{margin-bottom:3rem}.section-header{border-bottom:2px solid #f0f4f8;justify-content:space-between;padding-bottom:.75rem}.section-title{color:#1a1a1a;display:flex;font-size:1.5rem;gap:.75rem;margin:0}.section-count,.section-title{align-items:center;font-weight:700}.section-count{background:#e3f2fd;border-radius:50%;color:#007aff;display:inline-flex;font-size:.75rem;height:28px;justify-content:center;min-width:28px;padding:0 .5rem}.card-footer{align-items:center;border-top:1px solid #0000000f;box-sizing:border-box;display:flex;gap:1rem;justify-content:space-between;padding:.75rem 1.25rem 1.25rem;width:100%}.countdown,.due-info{flex-direction:column;gap:.25rem}.countdown,.due-date,.due-info{align-items:center;display:flex}.due-date{color:#333;font-size:.875rem;gap:.5rem}.days-until{font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.countdown{align-items:center;display:flex;flex-direction:row;font-size:.875rem;font-weight:600;gap:.5rem}.card-actions{display:flex;gap:.75rem}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.8rem;font-weight:600;gap:.5rem;padding:.625rem 1rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.action-btn.secondary{background:#fff;border:1px solid #00000026;color:#666}.action-btn.secondary:hover{background:#f5f5f5;border-color:#0003;color:#333}.action-btn.primary{background:#007aff;color:#fff}.action-btn.primary:hover{background:#0056b3;transform:translateY(-1px)}.empty-state{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.empty-state svg{color:#ccc;margin-bottom:1rem}.empty-state h3{color:#333;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.empty-state p{font-size:.9rem;margin:0}.assignments-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.assignment-card{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;min-height:250px;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.assignment-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.card-content{display:flex;flex:1 1;flex-direction:column;padding:1.5rem}.card-header{margin-bottom:1rem}.card-header h3{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.meta-line{align-items:center;display:flex;font-size:.875rem;gap:.5rem;line-height:1}.meta-line svg{font-size:1rem}.meta-line span{font-weight:500}.card-description{color:#4a4a4a;font-size:.875rem;line-height:1.5;margin:1rem 0}.card-footer{margin-top:auto;padding-top:.5rem}.exams-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.exam-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.exam-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.exam-header{color:#fff;padding:1.5rem;position:relative}.exam-title{text-align:center}.exam-type{background:#fff3;border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;margin-bottom:.5rem;padding:.25rem .75rem;text-transform:uppercase}.exam-title h3{font-size:1.25rem;font-weight:700;margin:.5rem 0}.course-name{font-size:.9rem;opacity:.9}.exam-content{padding:1.5rem}.exam-meta{margin-bottom:1.5rem}.exam-meta p{align-items:center;color:#555;display:flex;font-size:.9rem;gap:.5rem;margin:.5rem 0}.info-icon{color:#666;font-size:1rem}.exam-topics h4{color:#333;font-size:1rem;font-weight:600;margin:0 0 .75rem}.exam-topics ul{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.exam-topics li{background:#f8f9fe;border:1px solid #00000014;border-radius:16px;color:#666;font-size:.8rem;font-weight:500;padding:.375rem .75rem}@media (max-width:1024px){.assignments-modern-grid,.exams-modern-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.page-controls{align-items:stretch;flex-direction:column}.search-section{width:100%}.filter-section{justify-content:flex-start}}@media (max-width:1000px){.assignments-page,.exams-page{padding:1rem}.page-header{align-items:flex-start;flex-direction:column;gap:1rem}.assignments-modern-grid,.exams-modern-grid{grid-template-columns:1fr}.card-header{align-items:center;flex-direction:column;gap:1rem;min-height:auto;padding:1.25rem 1.25rem 1rem}.assignment-title,.exam-title-section{align-items:center;text-align:center;width:100%}.assignment-title h3,.exam-title-section h3{font-size:1.125rem;margin-bottom:.75rem;text-align:center}.course-info{align-items:center;margin-top:.25rem;text-align:center}.status-badge{align-self:flex-start}.card-footer{align-items:stretch;flex-direction:column;gap:1rem}.card-actions{justify-content:center}.filter-section{flex-direction:column;gap:.75rem}.filter-group{justify-content:space-between}}@media (max-width:480px){.assignments-page,.exams-page{padding:1rem .5rem}.header-content h1{font-size:1.75rem}.card-content{padding:0 1rem 1rem}.card-header{padding:1rem 1rem .5rem}.card-footer{padding:1rem}.action-btn{flex:1 1;justify-content:center}.topics-list{gap:.375rem}.topic-tag{font-size:.7rem;padding:.25rem .5rem}}.assignment-modal{background:#fff;border:1px solid #fff3;border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:90vh;max-width:600px;overflow-y:auto;position:relative;width:100%}.assignment-form{padding:1.5rem 2rem 2rem}@media (max-width:768px){.modal-overlay{padding:.5rem}.assignment-modal{max-height:95vh}.modal-header{padding:1rem 1.5rem .75rem}.modal-title{font-size:1.25rem}.assignment-form{padding:1rem 1.5rem 1.5rem}.form-row{flex-direction:column;gap:0}.form-group,.form-row{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.modal-actions{flex-direction:column-reverse;gap:.5rem}.btn-primary,.btn-secondary{justify-content:center;width:100%}}@media (max-width:480px){.modal-overlay{padding:0}.assignment-modal{border-radius:0;height:100vh;max-height:100vh}.assignment-form,.modal-header{padding:1rem}}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.exam-modal{background:#fff;border:1px solid #fff3;border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:90vh;max-width:600px;overflow-y:auto;position:relative;width:100%}.modal-header{border-bottom:1px solid #00000014;justify-content:space-between;padding:1.5rem 2rem 1rem}.modal-header,.modal-title{align-items:center;display:flex}.modal-title{color:#1a1a1a;font-size:1.5rem;font-weight:700;gap:.75rem;margin:0}.modal-close-btn{align-items:center;background:#0000000d;border:none;border-radius:8px;color:#666;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.modal-close-btn:hover{background:#0000001a;color:#333}.exam-form{padding:1.5rem 2rem 2rem}.form-row{display:flex;gap:1rem;margin-bottom:1.5rem}.form-row:last-child{margin-bottom:0}.form-group{flex:1 1}.form-label{align-items:center;color:#333;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-bottom:.5rem}.form-input,.form-select{background:#fff;border:2px solid #e8ebf7;border-radius:8px;font-family:inherit;font-size:.875rem;padding:.75rem 1rem;transition:all .2s ease}.time-input-row{align-items:center;display:flex;gap:.5rem}.time-select{flex:1 1;min-width:60px}.time-separator{font-size:1rem;font-weight:700}.form-input:focus,.form-select:focus{border-color:#007aff;box-shadow:0 0 0 3px #007aff1a;outline:none}.form-input.error,.form-select.error{border-color:#ff4757;box-shadow:0 0 0 3px #ff47571a}.error-message{color:#ff4757;font-size:.75rem;font-weight:500;margin-top:.375rem}.modal-actions{border-top:1px solid #00000014;display:flex;gap:.75rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s ease}.btn-primary{background:#007aff;box-shadow:0 2px 8px #007aff4d}.btn-primary:hover:not(:disabled){background:#0056b3;box-shadow:0 4px 12px #007aff66;transform:translateY(-1px)}.btn-primary:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{border:2px solid #e8ebf7;color:#666}.btn-secondary:hover:not(:disabled){background:#f8f9fe;border-color:#d1d9e8;color:#333}.btn-secondary:disabled{background:#f5f5f5;color:#ccc;cursor:not-allowed}.spinner{border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.modal-overlay{padding:.5rem}.exam-modal{max-height:95vh}.modal-header{padding:1rem 1.5rem .75rem}.modal-title{font-size:1.25rem}.exam-form{padding:1rem 1.5rem 1.5rem}.form-row{flex-direction:column;gap:0}.form-group,.form-row{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.time-input-row{flex-wrap:wrap;gap:.25rem}.time-select{min-width:50px}.modal-actions{flex-direction:column-reverse;gap:.5rem}.btn-primary,.btn-secondary{justify-content:center;width:100%}}@media (max-width:480px){.modal-overlay{padding:0}.exam-modal{border-radius:0;height:100vh;max-height:100vh}.exam-form,.modal-header{padding:1rem}}.settings-page{background:#f8fafc;min-height:100vh;padding:2rem 0}.settings-container{display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:800px;padding:0 1.5rem}.message{animation:slideIn .3s ease;border-radius:8px;font-weight:500;padding:1rem 1.5rem}.message.success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.message.error{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.spinner{animation:spin 1s linear infinite}.settings-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.section-header{border-bottom:1px solid #e2e8f0;margin-bottom:1.5rem}.section-header h2{align-items:center;color:#1e293b;display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin:0}.subscription-overview{display:flex;flex-direction:column;gap:1.5rem}.subscription-card{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;color:#fff;overflow:hidden;padding:1.5rem;position:relative}.subscription-card.inactive{background:linear-gradient(135deg,#64748b,#475569)}.subscription-card:before{background:#ffffff1a;border-radius:50%;content:"";height:100px;position:absolute;right:0;top:0;transform:translate(50%,-50%);width:100px}.free-plan-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;margin:1.5rem 0;padding:1rem}.free-plan-info p{font-weight:500;margin:0 0 .75rem}.free-plan-info ul{list-style:none;margin:0;padding-left:1.5rem}.free-plan-info li{margin-bottom:.5rem;padding-left:.5rem;position:relative}.free-plan-info li:before{color:#86efac;content:"✓";font-weight:700;left:-1rem;position:absolute}.subscription-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.plan-info{display:flex;flex-direction:column;gap:.75rem}.plan-name{align-items:center;display:flex;font-size:1.125rem;font-weight:600;gap:.5rem}.crown-icon{color:#fbbf24}.status-badge{align-items:center;border-radius:20px;display:flex;font-size:.75rem;font-weight:500;gap:.5rem;padding:.25rem .75rem;width:-webkit-fit-content;width:fit-content}.status-badge.active{background:#22c55e33;color:#22c55e}.status-badge.inactive{background:#fbbf2433;color:#fbbf24}.subscription-amount{font-size:1.5rem;font-weight:700}.subscription-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.detail-row{justify-content:space-between}.detail-label,.detail-row{align-items:center;display:flex}.detail-label{color:#ffffffe6;font-size:.875rem;gap:.5rem}.detail-value{color:#fff;font-weight:500}.detail-value.enabled{color:#86efac}.detail-value.disabled{color:#fca5a5}.subscription-actions{display:flex;flex-wrap:wrap;gap:.75rem}.cancel-button,.manage-billing-button,.resume-button,.subscribe-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.subscribe-button{background:#fbbf244d;border-color:#fbbf2480;flex:1 1;justify-content:center}.subscribe-button:hover:not(:disabled){background:#fbbf2466;box-shadow:0 4px 12px #fbbf244d;transform:translateY(-2px)}.cancel-button:hover:not(:disabled){background:#ef444433;border-color:#ef44444d}.resume-button:hover:not(:disabled){background:#22c55e33;border-color:#22c55e4d}.manage-billing-button:hover:not(:disabled){background:#fff3}.manage-billing-button:disabled,.subscribe-button:disabled{cursor:not-allowed;opacity:.6}.billing-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.billing-info h3{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 1rem}.payment-method{align-items:center;display:flex;gap:.75rem}.payment-method span{color:#64748b;flex:1 1;font-family:monospace}.update-payment-button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.update-payment-button:hover{background:#2563eb}.settings-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.setting-item{display:flex;flex-direction:column;gap:.5rem}.setting-item label{color:#374151;font-size:.875rem;font-weight:500}.setting-item input,.setting-item select{border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;padding:.75rem;transition:all .2s ease}.setting-item input:focus,.setting-item select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.password-form{display:flex;flex-direction:column;gap:1.5rem}.password-input{align-items:center;display:flex;position:relative}.password-input input{flex:1 1;padding-right:3rem}.password-toggle{background:none;border-radius:4px;color:#64748b;padding:.25rem;right:.75rem;transition:all .2s ease}.password-toggle:hover{background:#f1f5f9;color:#374151}.update-password-button{align-items:center;align-self:flex-start;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.update-password-button:hover{background:#2563eb}.account-actions{display:flex;flex-direction:column;gap:1rem}.action-description{color:#64748b;font-size:.95rem;margin:0}.sign-out-button{align-items:center;align-self:flex-start;background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.sign-out-button:hover{background:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.sign-out-button:active{transform:translateY(0)}@media (max-width:768px){.settings-container{padding:0 1rem}.settings-grid{grid-template-columns:1fr}.subscription-header{align-items:flex-start;gap:1rem}.subscription-actions,.subscription-header{flex-direction:column}.cancel-button,.manage-billing-button,.resume-button{text-align:center}}@media (max-width:480px){.settings-page{padding:1rem 0}.settings-section,.subscription-card{padding:1rem}.page-header{align-items:flex-start;flex-direction:column;gap:1rem}}:root{--primary:#0b63d6;--muted:#556172;--bg:#f6f8fb;--card:#fff;--text:#081228;--muted-2:#6b7280;--error:#b91c1c}#root,body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f8fb;background:var(--bg);color:#081228;color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial;margin:0}.auth-wrap{align-items:center;box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;padding:28px}.auth-container{background:#fff;background:var(--card);border:1px solid #0f172a08;border-radius:12px;box-shadow:0 10px 40px #0b16260f;box-sizing:border-box;max-width:440px;padding:22px;transition:transform .12s ease;width:100%}.auth-brand{align-items:flex-start;display:flex;gap:12px;margin-bottom:8px}.auth-brand img{flex-shrink:0;height:34px;margin-top:4px;object-fit:contain;width:34px}.auth-brand>div{display:flex;flex-direction:column;line-height:1.2}.auth-title{font-size:20px;font-weight:700;margin:0}.auth-sub{color:#556172;color:var(--muted);font-size:13px;margin:6px 0 18px}.auth-field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.auth-field label{color:#283544;font-size:13px;margin-left:2px}.auth-input{background:#fff;border:1px solid #e6e9ef;border-radius:8px;box-sizing:border-box;font-size:14px;height:44px;outline:none;padding:10px 46px 10px 12px;transition:box-shadow .12s ease,border-color .12s ease;width:100%}.auth-input:focus{border-color:#0b63d6;border-color:var(--primary);box-shadow:0 6px 18px #0b63d614}.input-row{display:block;position:relative}.password-toggle{align-items:center;background:#0b63d60d;border:none;border-radius:6px;box-shadow:none;color:#0b63d6;color:var(--primary);cursor:pointer;display:flex;font-size:12px;height:30px;justify-content:center;line-height:1;padding:6px 8px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.password-toggle:focus,.password-toggle:hover{background:#0b63d61f;outline:none}.auth-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.btn-primary{background:#0b63d6;background:var(--primary);border:none;border-radius:8px;box-shadow:0 6px 18px #0b63d61f;color:#fff;cursor:pointer;font-weight:600;padding:10px 16px}.btn-primary:disabled,.btn-primary[aria-disabled=true]{box-shadow:none;cursor:default;opacity:.6}.btn-secondary{background:#fff;border:1px solid #e6e9ef;border-radius:8px;color:#24303f;cursor:pointer;padding:9px 14px}.auth-footer{align-items:center;color:#556172;color:var(--muted);display:flex;font-size:13px;justify-content:space-between;margin-top:14px}.small-link{color:#0b63d6;color:var(--primary);font-weight:600;text-decoration:none}.auth-error{color:#b91c1c;color:var(--error)}.auth-error,.auth-success{font-size:13px;margin-top:12px}.auth-success{background:#ecfdf5;border:1px solid #bbf7d0;border-radius:8px;color:#059669;padding:10px 12px}.pw-hints{color:#6b7280;color:var(--muted-2);font-size:12px;margin-top:6px}.pw-hints ul{color:#b91c1c;color:var(--error);margin:6px 0 0;padding-left:18px}@media (max-width:480px){.auth-container{border-radius:10px;margin:8px;padding:16px;width:calc(100% - 16px)}.auth-input{height:42px;padding-right:42px}.auth-brand img{height:28px;width:28px}.auth-title{font-size:18px}.password-toggle{font-size:11px;height:28px;padding:5px 6px;right:8px}}.auth-container:hover{transform:translateY(-2px)}.review-form-container{background:#fff;border:1px solid #00000014;border-radius:16px;box-shadow:0 8px 32px #00000014;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;margin:0 auto;max-width:1000px;overflow:hidden;width:100%}.review-form-container *{box-sizing:border-box}.review-form-container input,.review-form-container select,.review-form-container textarea{margin:0;padding:0}.review-header{background:linear-gradient(135deg,#f8f9fe,#e3f2fd);border-bottom:1px solid #00000014;padding:2rem;position:relative}.back-button{align-items:center;background:#fff;border:1px solid #0000001a;border-radius:8px;color:#666;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;text-decoration:none;transition:all .2s ease}.back-button:hover{background:#f5f5f5;border-color:#00000026;color:#333}.header-content h2{color:#1a1a1a;font-size:1.875rem;font-weight:700;line-height:1.2;margin:0 0 .5rem}.header-content p{color:#666;font-size:1rem;line-height:1.5;margin:0}.review-tabs{-webkit-overflow-scrolling:touch;background:#f8f9fe;border-bottom:1px solid #00000014;display:flex;overflow-x:auto}.review-tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;flex-shrink:0;font-size:.875rem;font-weight:500;gap:.75rem;padding:1rem 1.5rem;transition:all .2s ease;white-space:nowrap}.review-tab:hover{background:#007aff0d;color:#333}.review-tab.active{background:#fff;border-bottom-color:#007aff;color:#007aff}.tab-label{font-weight:600}.review-content{max-height:60vh;min-height:400px;overflow-y:auto;padding:0}.content-section{box-sizing:border-box;margin:0 auto;max-width:100%;padding:2rem}.section-header{align-items:center;border-bottom:1px solid #00000014;box-sizing:border-box;display:flex;gap:.75rem;margin-bottom:2rem;padding-bottom:1rem;width:100%}.section-header h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin:0}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:2rem}.form-grid,.form-group{box-sizing:border-box;width:100%}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group label{align-items:center;box-sizing:border-box;color:#333;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-bottom:.5rem;width:100%}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #00000026;border-radius:8px;box-sizing:border-box;font-size:.9rem;margin:0;padding:.875rem;transition:all .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007aff;box-shadow:0 0 0 3px #007aff1a;outline:none}.form-group textarea{font-family:inherit;line-height:1.5;resize:vertical}.schedule-section{box-sizing:border-box;margin-bottom:2rem;width:100%}.schedule-section h4{color:#333;font-size:1rem;font-weight:600;margin:0 0 1rem}.meeting-times-grid{background:#f8f9fe;border:1px solid #0000000d;border-radius:12px;display:flex;flex-direction:column;gap:.75rem;padding:1.5rem}.day-time-row{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:120px 1fr}.day-checkbox{align-items:center;display:flex;gap:.5rem}.day-checkbox input[type=checkbox]{accent-color:#007aff;height:16px;width:16px}.day-label{color:#333;cursor:pointer;font-size:.875rem;font-weight:500}.time-inputs{align-items:center;display:flex;gap:.75rem}.time-input{border:1px solid #00000026;border-radius:6px;box-sizing:border-box;flex:1 1;font-size:.875rem;margin:0;padding:.5rem;width:100%}.time-input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.time-separator{color:#666;font-size:.875rem;font-weight:500}.assignments-section{box-sizing:border-box;display:flex;flex-direction:column;gap:2rem;width:100%}.subsection{background:#f8f9fe;border:1px solid #00000014;border-radius:12px;padding:1.5rem}.subsection-header{align-items:center;border-bottom:1px solid #00000014;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.subsection-header h4{color:#333;font-size:1.125rem;font-weight:600;margin:0}.add-button{align-items:center;background:#007aff;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease}.add-button:hover{background:#0056b3;transform:translateY(-1px)}.item-card{background:#fff;border:1px solid #00000014;border-radius:8px;margin-bottom:1rem;padding:1rem;transition:all .2s ease}.item-card:hover{box-shadow:0 2px 8px #00000014}.item-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.item-title-input{border:1px solid #00000026;border-radius:6px;box-sizing:border-box;flex:1 1;font-size:.9rem;font-weight:500;margin:0;padding:.75rem;width:100%}.remove-button{align-items:center;background:#fee2e2;border:none;border-radius:6px;color:#dc2626;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .2s ease;width:32px}.remove-button:hover{background:#fecaca}.item-details{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.item-details input,.item-details select{border:1px solid #00000026;border-radius:6px;box-sizing:border-box;font-size:.875rem;margin:0;padding:.625rem;width:100%}.policies-grid{grid-gap:1.5rem;box-sizing:border-box;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));width:100%}.review-footer{background:#f8f9fe;border-top:1px solid #00000014;gap:1rem;justify-content:space-between;padding:1.5rem 2rem}.footer-button,.review-footer{align-items:center;display:flex}.footer-button{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;min-width:140px;padding:.875rem 1.5rem;transition:all .2s ease}.footer-button.secondary{background:#fff;border:1px solid #00000026;color:#666}.footer-button.secondary:hover{background:#f5f5f5;color:#333}.footer-button.primary{background:#007aff;box-shadow:0 2px 8px #007aff4d;color:#fff}.footer-button.primary:hover:not(:disabled){background:#0056b3;box-shadow:0 4px 12px #007aff66;transform:translateY(-1px)}.footer-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:16px;width:16px}@media (max-width:1024px){.review-form-container{border-radius:0;margin:0;max-width:100%}.form-grid{grid-template-columns:1fr}.day-time-row{grid-template-columns:100px 1fr}}@media (max-width:768px){.review-header{padding:1.5rem}.header-content h2{font-size:1.5rem}.header-content p{font-size:.9rem}.review-tabs{padding:0}.review-tab{font-size:.8rem;gap:.5rem;padding:.875rem 1rem}.content-section{padding:1.5rem}.section-header{margin-bottom:1.5rem}.section-header h3{font-size:1.125rem}.form-grid{gap:1rem}.meeting-times-grid{padding:1rem}.day-time-row{gap:.5rem;grid-template-columns:1fr}.time-inputs{gap:.5rem}.subsection{padding:1rem}.subsection-header{align-items:flex-start;flex-direction:column;gap:1rem}.add-button{align-self:stretch;justify-content:center}.item-header{align-items:stretch;flex-direction:column;gap:.75rem}.remove-button{align-self:flex-end}.item-details,.policies-grid{grid-template-columns:1fr}.policies-grid{gap:1rem}.review-footer{flex-direction:column;padding:1rem 1.5rem}.footer-button{width:100%}}@media (max-width:480px){.review-header{padding:1rem}.header-content h2{font-size:1.375rem;line-height:1.3}.back-button{font-size:.8rem;margin-bottom:1rem;padding:.625rem .875rem}.review-tab{font-size:.75rem;padding:.75rem .875rem}.content-section{padding:1rem}.section-header h3{font-size:1rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:.75rem}.item-card,.meeting-times-grid,.subsection{padding:.75rem}.review-footer{padding:1rem}.footer-button{font-size:.875rem;padding:1rem}}.add-button:focus,.day-checkbox input[type=checkbox]:focus,.footer-button:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.remove-button:focus,.review-tab:focus{outline:2px solid #007aff;outline-offset:2px}@media print{.review-footer,.review-header,.review-tabs{display:none}.review-form-container{border:none;box-shadow:none}.content-section{padding:0}}.page-wrapper{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;margin:0 auto;max-width:800px;padding:2rem;width:100%}.page-header{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:3rem;text-align:center}.page-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1a1a1a,#4a4a4a);background-clip:text;-webkit-background-clip:text;font-size:2.5rem;font-weight:700;letter-spacing:-.5px}.page-header h1,.page-subtitle{margin:0 0 1rem;text-align:center;width:100%}.page-subtitle{color:#666;font-size:1.125rem;line-height:1.5;max-width:600px}.upload-limit-badge{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #dee2e6;border-radius:12px;color:#495057;display:inline-flex;font-size:.9rem;font-weight:600;gap:.75rem;margin-top:.5rem;padding:.75rem 1.25rem}.upload-limit-badge svg{flex-shrink:0}.upgrade-link{align-items:center;background:linear-gradient(135deg,gold,#ffed4e);border-radius:8px;color:#000;display:inline-flex;font-size:.85rem;font-weight:700;gap:.375rem;margin-left:.5rem;padding:.375rem .75rem;text-decoration:none;transition:all .2s ease}.upgrade-link:hover{box-shadow:0 4px 12px #ffd70066;transform:translateY(-2px)}.upgrade-link svg{flex-shrink:0}.upload-main-card{background:#fff;border:1px solid #fffc;border-radius:16px;box-shadow:0 8px 32px #00000014;margin-bottom:2rem;overflow:hidden}.upload-zone{background:#f8f9fe;border:2px dashed #e0e7ff;border-radius:16px;cursor:pointer;margin:2rem;padding:3rem 2rem;text-align:center;transition:all .3s ease}.upload-zone-active,.upload-zone:hover{background:#f0f7ff;border-color:#007aff;transform:translateY(-2px)}.upload-icon-wrapper{align-items:center;background:#e3f2fd;border-radius:50%;display:inline-flex;height:64px;justify-content:center;margin-bottom:1.5rem;width:64px}.upload-icon{color:#007aff;height:32px;width:32px}.upload-title{color:#333;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.upload-subtitle{color:#666;font-size:1rem;margin:0 0 2rem}.upload-file-button{cursor:pointer;display:inline-block}.upload-file-input{display:none}.upload-button-text{background:#007aff;border-radius:12px;box-shadow:0 4px 12px #007aff4d;color:#fff;display:inline-block;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .3s ease}.upload-button-text:hover{background:#0056b3;box-shadow:0 6px 16px #007aff66;transform:translateY(-1px)}.upload-info{color:#666;font-size:.875rem;margin:1.5rem 0 0}.upload-status{padding:3rem 2rem;text-align:center}.upload-status.processing{background:#f8f9fe}.upload-status.complete{background:#f0f9ff}.upload-status.error{background:#fef2f2}.status-icon-wrapper{align-items:center;border-radius:50%;display:inline-flex;height:80px;justify-content:center;margin-bottom:1.5rem;width:80px}.status-icon-wrapper.success{background:#dcfce7}.status-icon{height:40px;width:40px}.upload-status.processing .status-icon{color:#007aff}.upload-status.complete .status-icon{color:#16a34a}.status-title{color:#333;font-size:1.75rem;font-weight:600;margin:0 0 .75rem}.status-subtitle{color:#666;font-size:1rem;line-height:1.5;margin:0 0 .5rem}.status-info{color:#666;font-size:.875rem;margin:0 0 2rem}.file-name{color:#333;font-weight:600}.success-actions{display:flex;gap:1rem;justify-content:center;margin-top:1rem}.progress-bar-container{background:#e0e7ff;border-radius:4px;height:8px;margin:2rem auto 0;max-width:300px;overflow:hidden;width:100%}.progress-bar{animation:progress-pulse 2s ease-in-out infinite;background:linear-gradient(90deg,#007aff,#0056b3);border-radius:4px;height:100%;width:75%}@keyframes progress-pulse{0%,to{opacity:.8}50%{opacity:1}}.error-content{align-items:flex-start;display:flex;gap:1rem;margin:0 auto;max-width:500px;text-align:left}.error-icon{color:#dc2626;flex-shrink:0;height:24px;margin-top:.25rem;width:24px}.error-text{flex:1 1}.error-title{color:#dc2626;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.error-message{color:#7f1d1d;font-size:1rem;line-height:1.5;margin:0 0 1.5rem}.button-primary{align-items:center;background:#007aff;border:none;border-radius:12px;box-shadow:0 4px 12px #007aff4d;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.875rem 1.5rem;transition:all .3s ease}.button-primary:hover{background:#0056b3;box-shadow:0 6px 16px #007aff66;transform:translateY(-1px)}.button-secondary{align-items:center;background:#f5f5f5;border:none;border-radius:12px;color:#666;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.875rem 1.5rem;transition:all .3s ease}.button-secondary:hover{background:#e0e0e0;color:#333}.feature-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-top:2rem}.feature-card{background:#fff;border:1px solid #fffc;border-radius:16px;box-shadow:0 4px 20px #0000000d;padding:1.5rem;text-align:center;transition:all .3s ease}.feature-card:hover{box-shadow:0 8px 30px #0000001a;transform:translateY(-2px)}.feature-icon{font-size:2rem;margin-bottom:.75rem}.feature-title{color:#333;font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.feature-subtitle{color:#666;font-size:.875rem}@media (max-width:1024px){.page-wrapper{max-width:700px}.feature-cards{gap:1rem;grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.page-wrapper{padding:1rem}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;line-height:1.2}.page-subtitle{font-size:1rem;padding:0 1rem}.upload-zone{margin:1rem;padding:2rem 1rem}.upload-title{font-size:1.25rem;line-height:1.3}.upload-subtitle{font-size:.9rem}.feature-cards{gap:.75rem;grid-template-columns:1fr}.error-content{flex-direction:column}.error-content,.error-text{text-align:center}.upload-status{padding:2rem 1rem}.status-title{font-size:1.5rem;line-height:1.3}.status-subtitle{font-size:.9rem}}@media (max-width:480px){.page-wrapper{padding:.75rem}.page-header{margin-bottom:1.5rem}.page-header h1{font-size:1.75rem;line-height:1.2;margin-bottom:.75rem}.page-subtitle{font-size:.95rem;line-height:1.4;padding:0 .5rem}.upload-main-card{margin-bottom:1.5rem}.upload-zone{margin:.75rem;padding:1.5rem 1rem}.upload-icon-wrapper{height:48px;margin-bottom:1rem;width:48px}.upload-icon{height:24px;width:24px}.upload-title{font-size:1.125rem;line-height:1.3;margin-bottom:.5rem}.upload-subtitle{font-size:.875rem;margin-bottom:1.5rem}.upload-button-text{font-size:.9rem;padding:.75rem 1.5rem}.upload-info{font-size:.8rem;margin-top:1rem}.upload-status{padding:1.5rem 1rem}.status-icon-wrapper{height:64px;margin-bottom:1rem;width:64px}.status-icon{height:32px;width:32px}.status-title{font-size:1.375rem;line-height:1.3;margin-bottom:.5rem}.status-subtitle{font-size:.875rem;line-height:1.4}.feature-cards{gap:.5rem;margin-top:1.5rem}.feature-card{padding:1rem}.feature-icon{font-size:1.5rem;margin-bottom:.5rem}.feature-title{font-size:1rem;margin-bottom:.25rem}.feature-subtitle{font-size:.8rem}.success-actions{flex-direction:column;gap:.75rem}.success-actions .button-primary,.success-actions .button-secondary{justify-content:center;width:100%}}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.page-wrapper{max-width:100%;padding:1rem}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;line-height:1.2}.page-subtitle{font-size:1rem;padding:0 1rem}.upload-main-card{border-radius:12px;margin-bottom:1.5rem}.upload-zone{padding:2rem 1rem}.upload-title{font-size:1.25rem}.upload-subtitle{font-size:.875rem}.upload-file-button{font-size:.875rem;padding:.75rem 1.5rem}.upload-info{font-size:.75rem;margin-top:1rem}.status-title{font-size:1.25rem}.status-subtitle{font-size:.875rem}.status-info{font-size:.75rem}.success-actions{flex-direction:column;gap:.75rem}.button-primary,.button-secondary{font-size:.875rem;justify-content:center;padding:1rem;width:100%}.feature-cards{gap:1rem;grid-template-columns:1fr}.feature-card{padding:1rem}.feature-icon{font-size:1.5rem}.feature-title{font-size:.875rem}.feature-subtitle{font-size:.75rem}}@media (max-width:480px){.page-wrapper{padding:.75rem}.page-header h1{font-size:1.75rem}.page-subtitle{font-size:.875rem}.upload-zone{padding:1.5rem .75rem}.upload-title{font-size:1.125rem}.upload-icon-wrapper{margin-bottom:1rem}.upload-icon{height:48px;width:48px}}.upload-divider{border-top:1px solid #e0e7ff;margin:1.5rem 2rem;position:relative;text-align:center}.divider-text{background:#fff;color:#666;font-size:.875rem;font-weight:500;left:50%;padding:0 1rem;position:absolute;top:-12px;transform:translateX(-50%)}.manual-upload-section{background:#fafbff;border:1px solid #e8ebf7;border-radius:12px;margin:0 2rem 2rem;padding:2rem;text-align:center}.manual-upload-content{align-items:center;display:flex;flex-direction:column}.manual-icon-wrapper{align-items:center;background:#e8f4fd;border-radius:50%;display:inline-flex;height:56px;justify-content:center;margin-bottom:1rem;width:56px}.manual-icon{color:#007aff;height:28px;width:28px}.manual-title{color:#333;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.manual-subtitle{color:#666;font-size:.95rem;margin:0 0 1.5rem}.manual-upload-button{align-items:center;background:#fff;border:2px solid #007aff;border-radius:12px;box-shadow:0 2px 8px #007aff26;color:#007aff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.manual-upload-button:hover{background:#007aff;box-shadow:0 4px 12px #007aff40;color:#fff;transform:translateY(-1px)}@media (max-width:768px) and (orientation:landscape){.page-header{margin-bottom:1.5rem}.page-header h1{font-size:1.75rem}.upload-zone{padding:1.5rem 1rem}.manual-upload-section{margin:0 1rem 1rem;padding:1.5rem}}
/*# sourceMappingURL=main.ff1a99f9.css.map*/