@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";body{margin:0;padding:0}:root{--bg-color:#f8fafc;--card-bg:#fff;--primary:#6366f1;--primary-hover:#4f46e5;--secondary:#64748b;--danger:#ef4444;--text-main:#0f172a;--text-muted:#64748b;--border-color:#e2e8f0;--nav-bg:#ffffffd9;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d}[data-theme=dark]{--bg-color:#0f172a;--card-bg:#1e293b;--primary:#818cf8;--primary-hover:#6366f1;--secondary:#94a3b8;--text-main:#f8fafc;--text-muted:#94a3b8;--border-color:#334155;--nav-bg:#0f172ae6;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -1px #0000004d;--shadow-lg:0 10px 15px -3px #00000080, 0 4px 6px -2px #0006}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-container{flex-direction:column;min-height:100vh;display:flex}.landing-page{background-color:var(--bg-color);flex-direction:column;display:flex;overflow-x:hidden}.landing-nav{background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);z-index:1000;border-bottom:1px solid #0000000d;align-items:center;height:80px;padding:0;display:flex;position:sticky;top:0;box-shadow:0 4px 30px #00000008}.nav-container{justify-content:space-between;align-items:center;width:100%;max-width:1300px;margin:0 auto;padding:0 8%;display:flex}.logo{color:var(--text-main);letter-spacing:-1px;align-items:center;gap:12px;font-size:1.6rem;font-weight:900;text-decoration:none;display:flex}.logo span{color:var(--primary);background:linear-gradient(135deg,#6366f1 0%,#a855f7 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.mobile-menu-btn{color:var(--text-main);cursor:pointer;z-index:1100;background:0 0;border:none;border-radius:8px;padding:8px;transition:background .2s;display:none}.mobile-menu-btn:hover{background:#0000000d}.nav-links{align-items:center;gap:3rem;margin-left:auto;display:flex}@media (width<=768px){.desktop-toggle{display:none!important}.mobile-actions{display:flex!important}}.nav-links a{color:var(--text-main);opacity:.7;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-links a:not(.btn-primary):hover{color:var(--primary);opacity:1;transform:translateY(-1px)}.nav-cta{color:#fff!important;opacity:1!important;border-radius:12px!important;padding:.8rem 1.8rem!important;box-shadow:0 10px 15px -3px #6366f133!important}.hero{background:radial-gradient(circle at 10% 20%, #6366f10d 0%, transparent 40%), radial-gradient(circle at 90% 80%, #10b9810d 0%, transparent 40%), linear-gradient(180deg, var(--bg-color) 0%, var(--card-bg) 100%);padding:140px 8% 100px;position:relative}.hero-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;max-width:1300px;margin:0 auto;display:grid}@media (width<=1024px){.hero-grid{text-align:center;grid-template-columns:1fr}}.hero-content{text-align:left;z-index:1}@media (width<=1024px){.hero-content{text-align:center}}.badge{color:var(--primary);text-transform:uppercase;letter-spacing:1px;background:#6366f11a;border-radius:100px;margin-bottom:2rem;padding:6px 16px;font-size:.85rem;font-weight:700;display:inline-block}.hero h2{color:var(--text-main);letter-spacing:-1.5px;margin-bottom:1.8rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:900;line-height:1.1}.hero h2 span{background:linear-gradient(135deg,#4f46e5 0%,#10b981 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;display:block}.hero p{color:var(--text-muted);max-width:600px;margin-bottom:2.5rem;font-size:1.2rem;line-height:1.6}@media (width<=1024px){.hero p{margin-left:auto;margin-right:auto}}.hero-btns{gap:1.25rem;display:flex}@media (width<=1024px){.hero-btns{justify-content:center}}.hero-image{width:100%;max-width:600px;animation:6s ease-in-out infinite float;position:relative}.hero-image img{border-radius:30px;width:100%;box-shadow:0 20px 50px #00000026}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-20px)}to{transform:translateY(0)}}.btn-lg{border-radius:14px;align-items:center;gap:10px;padding:1rem 2.5rem;font-size:1.1rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex}.btn-lg:hover{transform:translateY(-4px)scale(1.02);box-shadow:0 15px 30px #6366f133}.features{background:var(--card-bg);padding:100px 5%}.section-head{text-align:center;margin-bottom:4rem}.section-head h3{margin-bottom:1rem;font-size:2.2rem;font-weight:700}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto;display:grid}.feature-item{background:var(--bg-color);border:1px solid var(--border-color);border-radius:20px;padding:2.5rem;transition:transform .3s,box-shadow .3s}.feature-item:hover{box-shadow:var(--shadow-lg);border-color:var(--primary);transform:translateY(-5px)}.feature-icon{width:50px;height:50px;color:var(--primary);background:#6366f11a;border-radius:12px;justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.feature-item h4{margin-bottom:1rem;font-size:1.25rem}.faq{max-width:900px;margin:0 auto;padding:100px 5%}.faq-list{flex-direction:column;gap:1rem;display:flex}.faq-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.faq-item h5{color:var(--text-main);margin-bottom:.5rem;font-size:1.1rem}.faq-item p{color:var(--text-muted);font-size:.95rem}.main-footer{color:#f1f5f9;background:#0f172a;padding:80px 5% 40px}.footer-content{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4rem;max-width:1200px;margin:0 auto 60px;display:grid}.footer-col h4{margin-bottom:1.5rem;font-size:1.1rem}.footer-col ul{list-style:none}.footer-col ul li{margin-bottom:.75rem}.footer-col ul li a{color:#94a3b8;align-items:center;gap:12px;text-decoration:none;transition:all .2s;display:flex}.footer-col ul li a:hover{color:var(--primary)}.footer-bottom{text-align:center;color:#64748b;border-top:1px solid #1e293b;padding-top:40px;font-size:.9rem}.generator-main-layout{background-color:var(--bg-color);flex-direction:column;min-height:100vh;display:flex}.generator-toolbar{background:var(--card-bg);border-bottom:1px solid var(--border-color);z-index:900;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:.75rem 5%;display:flex;position:sticky;top:0}.toolbar-left h2{color:var(--text-main);align-items:center;gap:10px;margin:0;font-size:1.1rem;font-weight:700;display:flex}.toolbar-actions{align-items:center;gap:1rem;display:flex}.action-divider{background-color:var(--border-color);width:1px;height:24px}.generator-content{grid-template-columns:480px 1fr;gap:0;height:calc(100vh - 125px);display:grid;overflow:hidden}@media (width<=1100px){.generator-content{grid-template-columns:1fr;height:auto;overflow:visible}}.form-column{background:var(--card-bg);border-right:1px solid var(--border-color);padding:1.5rem 5% 3rem;overflow-y:auto}.preview-column{background:var(--bg-color);flex-direction:column;align-items:center;padding:2rem;display:flex;overflow-y:auto}.column-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;min-height:48px;margin-bottom:2rem;padding-bottom:1rem;display:flex}.column-header h3{text-transform:uppercase;letter-spacing:.8px;color:#64748b;margin:0;font-size:.85rem;font-weight:800}.student-count{color:#2563eb;background:#eff6ff;border-radius:100px;padding:4px 10px;font-size:.75rem;font-weight:700}.student-card-modern{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;margin-bottom:1.5rem;padding:1.5rem;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 6px -1px #0000000d}.student-card-modern:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #00000014}.preview-shadow-container{box-shadow:none;background:0 0;border-radius:0;flex-direction:column;gap:60px;padding:0;display:flex}.btn-success{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:.8rem;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 4px 12px #10b98133}.btn-success:hover{background:linear-gradient(135deg,#059669 0%,#047857 100%);transform:translateY(-2px);box-shadow:0 8px 20px #10b9814d}.form-group{margin-bottom:1.25rem}.form-group label{color:#475569;text-transform:uppercase;letter-spacing:.3px;margin-bottom:.5rem;font-size:.75rem;font-weight:700;display:block}.form-control{border:1.5px solid var(--border-color);background:var(--bg-color);width:100%;color:var(--text-main);border-radius:10px;padding:.75rem 1rem;font-size:.95rem;transition:all .2s}.form-control:focus{border-color:var(--primary);outline:0;box-shadow:0 0 0 4px #6366f114}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);box-shadow:0 4px 12px #6366f133}.btn-primary:hover{background:linear-gradient(135deg,#4f46e5 0%,#4338ca 100%);transform:translateY(-2px);box-shadow:0 8px 20px #6366f14d}.btn-secondary{background:var(--bg-color);color:var(--text-muted);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--border-color);color:var(--text-main);transform:translateY(-2px)}.student-form-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.student-form-header h3{color:var(--text-main);font-size:1.1rem;font-weight:700;margin:0!important}.btn-icon-danger{color:#e11d48;cursor:pointer;background:#fff1f2;border:1px solid #ffe4e6;border-radius:12px;justify-content:center;align-items:center;padding:10px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.btn-icon-danger:hover{color:#fff;background:#e11d48;transform:translateY(-2px);box-shadow:0 4px 12px #e11d4833}.file-upload-wrapper{width:100%}.file-upload-input{display:none}.file-upload-btn{background:var(--bg-color);cursor:pointer;color:#64748b;text-transform:uppercase;letter-spacing:.05em;border:2px dashed #cbd5e1;border-radius:12px;width:100%;margin:0 auto;font-size:.85rem;font-weight:700;transition:all .2s ease-in-out;justify-content:center!important;align-items:center!important;gap:.75rem!important;padding:1.5rem!important;display:flex!important}.file-upload-btn:hover{border-color:var(--primary);color:var(--primary);box-shadow:var(--shadow-md);background:#fff}.file-upload-btn svg{flex-shrink:0}.schedule-section h4{color:var(--secondary);border-left:3px solid var(--primary);margin:1.5rem 0 1rem;padding-left:.75rem;font-size:.9rem}.schedule-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-bottom:.75rem;padding:.75rem}.schedule-card h5{color:var(--primary);margin-bottom:.5rem;font-size:.8rem}.preview-panel{background:var(--card-bg);box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;height:calc(100vh - 120px);display:flex}.preview-container-wrapper{background:#cbd5e1;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:40px;display:flex;overflow:auto}.preview-content-list{flex-direction:column;justify-content:center;align-items:center;gap:30px;min-height:min-content;margin:auto;display:flex}.page-a4{width:210mm;min-height:297mm;box-shadow:var(--shadow-lg);transform-origin:top;background:#fff;flex-direction:column;margin-bottom:60px;display:flex;position:relative;transform:scale(.8)}.document-a4{color:#000;box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;padding:8mm 10mm;font-family:Times New Roman,Times,serif;display:flex;position:relative}.cut-line{z-index:10;border-top:2px dashed #94a3b8;width:100%;height:0;position:relative}@media (width<=1400px){.page-a4{margin-bottom:-100px;transform:scale(.65)}}@media (width<=1200px){.page-a4{margin-bottom:-150px;transform:scale(.5)}}.doc-top-section{min-height:45mm;margin-bottom:0;position:relative}.doc-top-left{align-items:flex-end;gap:0;font-size:16px;display:flex;position:absolute;top:0;left:0}.bold-label{font-weight:700}.ml-30{margin-left:20px}.doc-input-line{text-align:center;border-bottom:1.5px solid #000;padding:0 5px;line-height:1.2;display:inline-block}.short-line{min-width:50px}.long-line{min-width:150px}.doc-photo{background-color:#f8fafc;border:1.5px solid #f97316;justify-content:center;align-items:center;width:30mm;height:40mm;display:flex;position:absolute;top:0;right:0;overflow:hidden}.doc-photo img{object-fit:cover;width:100%;height:100%}.doc-titles{text-align:center;margin:5px 35mm;padding-top:35px}.doc-subtitle{margin-bottom:5px;font-size:16px;font-weight:700}.doc-main-title{letter-spacing:1px;margin-bottom:5px;font-size:26px;font-weight:700}.doc-class{font-size:20px;font-weight:700}.doc-table{border-collapse:collapse;text-align:center;table-layout:fixed;width:100%;margin-bottom:10px;font-size:14px}.doc-table th,.doc-table td{vertical-align:middle;word-break:break-word;border:1.5px solid #000;padding:8px 4px;overflow:hidden}.doc-table th:first-child,.doc-table td:first-child{width:20%}.doc-table th{padding:6px 2px;font-weight:400}.doc-table .row-title{min-height:40px;font-size:16px}.doc-name-cell{min-height:50px;font-weight:400;position:relative;padding:12px 4px!important}.name-text{text-transform:uppercase;font-weight:700}.doc-phone{text-align:left;margin-top:5px;margin-bottom:10px;font-size:16px;font-weight:700}.doc-footer{justify-content:space-around;margin-top:10px;font-size:18px;display:flex}@media print{body{background:#fff}.generator-toolbar,.form-column,.column-header,.main-footer,.btn-primary,.btn-secondary,.btn-success,footer{display:none!important}.app-container{min-height:auto}.main-content{margin:0;padding:0;display:block}.preview-panel{height:auto;box-shadow:none;background:0 0;padding:0}.preview-container-wrapper{background:0 0;padding:0}.page-a4{page-break-after:always;flex-direction:column;display:flex;box-shadow:none!important;width:210mm!important;height:297mm!important;margin:0!important;transform:none!important}.page-a4:last-child{page-break-after:auto}.document-a4{height:148.5mm!important;box-shadow:none!important;border:none!important;flex:1!important;padding:10mm!important;transform:none!important}.cut-line{border-top:2px dashed #000!important;display:block!important}@page{size:portrait;margin:0}}@media (width<=768px){.mobile-menu-btn{display:block}.nav-container{padding:0 5%}.nav-links{background:var(--card-bg);width:80%;height:100vh;box-shadow:-10px 0 30px var(--shadow-md);z-index:1000;flex-direction:column;justify-content:center;gap:2rem;margin-left:0;transition:all .4s cubic-bezier(.77,0,.175,1);position:fixed;top:0;right:-100%}.nav-links.active{right:0}.nav-links a{text-align:center;width:100%;padding:1rem;font-size:1.2rem}.nav-cta{justify-content:center;width:80%;margin:0 auto}.hero{padding:100px 5% 60px!important}.hero h2{letter-spacing:-1px!important;font-size:2.2rem!important}.hero p{margin-bottom:2rem!important;font-size:1rem!important}.generator-toolbar{flex-direction:column!important;gap:1rem!important;height:auto!important;padding:1rem 5%!important}.toolbar-actions{justify-content:space-between!important;gap:.5rem!important;width:100%!important}.toolbar-actions button{flex:1!important;padding:.5rem .75rem!important;font-size:.8rem!important}.action-divider{display:none!important}.generator-content{grid-template-columns:1fr!important;height:auto!important;overflow:visible!important}.form-column{border-bottom:1px solid #e2e8f0!important;border-right:none!important;padding:2rem 5%!important}.preview-column{padding:1.5rem 5%!important}.form-row{grid-template-columns:1fr!important;gap:0!important}.page-a4{margin-bottom:-380px!important;transform:scale(.35)!important}.preview-shadow-container{gap:0!important}}@media (width<=480px){.hero h2{font-size:1.8rem!important}.hero-btns{flex-direction:column!important;width:100%!important}.btn-lg{justify-content:center!important;width:100%!important}.page-a4{margin-bottom:-450px!important;transform:scale(.25)!important}.footer-content{text-align:center!important;grid-template-columns:1fr!important;gap:2rem!important}.footer-col ul li a{justify-content:center!important}}@media (width<=320px){.hero h2{font-size:1.5rem!important}.hero p{font-size:.9rem!important}.landing-nav{padding:1rem 2%!important}.nav-links{gap:.75rem!important}.toolbar-left h2{font-size:.9rem!important}.toolbar-actions button{padding:.4rem .5rem!important;font-size:.7rem!important}.page-a4{margin-bottom:-480px!important;transform:scale(.2)!important}.form-column,.preview-column{padding:1rem 3%!important}}@media (width<=768px){.generator-toolbar .btn-text{display:none}.generator-toolbar button{border-radius:12px;justify-content:center;min-width:44px;padding:10px!important}}.loading-overlay{-webkit-backdrop-filter:blur(8px);z-index:9999;color:#fff;background:#0f172ab3;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;width:100%;height:100%;animation:.3s ease-out fadeIn;display:flex;position:fixed;top:0;left:0}.spinner-container{justify-content:center;align-items:center;width:80px;height:80px;display:flex;position:relative}.spinner{border:4px solid #ffffff1a;border-left-color:var(--primary);border-radius:50%;width:60px;height:60px;animation:1s cubic-bezier(.4,0,.2,1) infinite spin}.spinner-inner{border:3px solid #ffffff0d;border-right-color:#10b981;border-radius:50%;width:30px;height:30px;animation:1.5s cubic-bezier(.4,0,.2,1) infinite reverse spin;position:absolute}.loading-text{letter-spacing:.5px;text-align:center;text-shadow:0 2px 4px #0003;font-size:1.25rem;font-weight:600}.loading-subtext{color:#ffffffb3;margin-top:-1rem;font-size:.9rem;font-weight:400}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}button:disabled{opacity:.6!important;cursor:not-allowed!important;box-shadow:none!important;transform:none!important}
