@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@300;400;500;600;700;800&family=Hind+Siliguri:wght@300;400;500;600;700&family=Noto+Sans+Bengali:wght@300;400;500;600;700&family=Noto+Serif+Bengali:wght@400;500;600;700&display=swap";
.portal-section{background-color:var(--color-bg)}.student-profile-bar{background-color:var(--color-bg-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1.5px solid var(--color-border);align-items:center;margin-bottom:30px;padding:30px}.student-profile-left{align-items:center;gap:20px;display:flex}.student-avatar-large{background-color:var(--color-bg);width:80px;height:80px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:54px;display:flex}.student-name{font-family:var(--font-headings);color:var(--color-text);margin:6px 0 2px;font-size:26px}.student-id-txt{color:var(--color-text-light);font-size:13px;font-weight:600}.student-profile-right{justify-content:flex-end;align-items:center;gap:20px;display:flex}.quick-stat-box{background-color:var(--color-accent-light);border-radius:var(--radius-md);text-align:center;border:1px dashed #2ccca14d;padding:10px 20px}.q-label{color:var(--color-text-light);text-transform:uppercase;font-size:11px;font-weight:750;display:block}.q-val{font-family:var(--font-headings);color:var(--color-accent);font-size:20px;font-weight:700}.logout-portal-btn{font-family:var(--font-headings);color:var(--color-primary);background-color:var(--color-primary-light);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-fast);border:none;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:700;display:flex}.logout-portal-btn:hover{background-color:var(--color-primary);color:#fff}.portal-tabs-row{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.portal-tab-btn{font-family:var(--font-headings);color:var(--color-text-light);background-color:var(--color-bg-white);border:1.5px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-fast);align-items:center;gap:8px;padding:10px 22px;font-size:14px;font-weight:600;display:flex}.portal-tab-btn:hover,.portal-tab-btn.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 4px 10px #ff795433}.portal-tab-content-box{background-color:var(--color-bg-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border);padding:40px}.tab-sec-title{font-family:var(--font-headings);color:var(--color-text);border-bottom:1.5px solid var(--color-border);margin-bottom:20px;padding-bottom:10px;font-size:20px;font-weight:700}.profile-details-card{background-color:var(--color-bg);border-radius:var(--radius-md);border:1.5px solid var(--color-border);padding:30px}.profile-details-list{flex-direction:column;gap:12px;list-style:none;display:flex}.profile-details-list li{border-bottom:1px dashed var(--color-border);justify-content:space-between;padding-bottom:8px;font-size:14px;display:flex}.profile-details-list li:last-child{border-bottom:none;padding-bottom:0}.profile-details-list li strong{font-family:var(--font-headings);color:var(--color-text)}.profile-details-list li span{color:var(--color-text-light);font-weight:700}.teacher-note-p{color:var(--color-text-light);font-size:14px;line-height:1.7}.pie-chart-wrapper{justify-content:center;align-items:center;display:flex}.leave-list{flex-direction:column;gap:16px;list-style:none;display:flex}.leave-item{border-radius:var(--radius-md);background-color:var(--color-bg);border:1px solid var(--color-border);align-items:flex-start;gap:14px;padding:16px;display:flex}.leave-icon{color:var(--color-primary);flex-shrink:0;margin-top:2px}.leave-item strong{font-family:var(--font-headings);font-size:14px}.leave-item p{color:var(--color-text-light);font-size:13px;font-weight:600}.grades-table-wrapper{overflow-x:auto}.grades-table{border-collapse:collapse;width:100%;min-width:600px}.grades-table th{font-family:var(--font-headings);color:var(--color-text);background-color:var(--color-bg);border-bottom:2px solid var(--color-border);padding:14px 18px;font-size:15px;font-weight:700}.grades-table td{color:var(--color-text-light);border-bottom:1px solid var(--color-border);padding:14px 18px;font-size:14px}.grades-table tr:last-child td{border-bottom:none}.grade-badge{font-family:var(--font-headings);background-color:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-full);padding:4px 12px;font-size:14px;font-weight:700}.receipt-list{flex-direction:column;gap:16px;display:flex}.receipt-item-card{background-color:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);align-items:center;padding:24px}.receipt-meta h4{font-family:var(--font-headings);color:var(--color-text);margin-bottom:4px;font-size:16px}.receipt-meta p{color:var(--color-text-light);font-size:12px;font-weight:600}.receipt-actions{justify-content:flex-end;align-items:center;gap:16px;display:flex}.receipt-amount{font-family:var(--font-headings);color:var(--color-text);font-size:18px;font-weight:700}@media (max-width:768px){.student-profile-bar{text-align:center;grid-template-columns:1fr;gap:20px}.student-profile-left{flex-direction:column}.student-meta-details{text-align:center}.student-profile-right{justify-content:center}.student-name{font-size:22px}.portal-tab-btn{padding:8px 16px;font-size:13px}.portal-tab-content-box{padding:24px 16px}}
.programs-detail-list{flex-direction:column;display:flex}.programs-table-section{background-color:var(--color-bg-white)}.table-title{margin-bottom:40px;font-size:30px;font-weight:700}.table-wrapper-responsive{border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow-x:auto}.programs-spec-table{border-collapse:collapse;text-align:left;background-color:var(--color-bg);width:100%}.programs-spec-table th,.programs-spec-table td{border-bottom:1px solid var(--color-border);padding:18px 24px;font-size:15px}.programs-spec-table th{font-family:var(--font-headings);background-color:var(--color-bg-alt);color:var(--color-text);font-weight:700}.programs-spec-table td{color:var(--color-text-light);font-weight:600}.programs-spec-table tr:last-child td{border-bottom:none}.programs-spec-table tr:hover td{background-color:var(--color-bg-white);color:var(--color-text)}@media (max-width:600px){.programs-spec-table th,.programs-spec-table td{padding:12px 14px;font-size:13px}}
.teachers-section{background-color:var(--color-bg)}.teachers-grid-title{margin-bottom:8px;font-size:34px;font-weight:700}.teachers-grid-subtitle{color:var(--color-text-light);margin-bottom:50px;font-size:16px}.teachers-grid{margin-top:20px}.teacher-flip-card{perspective:1000px;cursor:pointer;background-color:#0000;width:100%;height:480px}.teacher-card-inner{text-align:center;width:100%;height:100%;transform-style:preserve-3d;border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.teacher-flip-card.is-flipped .teacher-card-inner{transform:rotateY(180deg)}.teacher-card-front,.teacher-card-back{backface-visibility:hidden;border-radius:var(--radius-md);border:1px solid var(--color-border);flex-direction:column;width:100%;height:100%;display:flex;position:absolute;overflow:hidden}.teacher-card-front{background-color:var(--color-bg-white);border-top:5px solid var(--color-secondary)}.teacher-card-back{background-color:var(--color-bg-white);text-align:left;border-top:5px solid var(--color-primary);align-items:flex-start;padding:30px;transform:rotateY(180deg)}.teacher-image-frame{width:100%;height:280px;overflow:hidden}.teacher-image-frame img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.teacher-flip-card:hover .teacher-image-frame img{transform:scale(1.05)}.teacher-front-details{flex-direction:column;flex-grow:1;align-items:center;padding:24px;display:flex}.teacher-name{font-family:var(--font-headings);color:var(--color-text);margin-bottom:6px;font-size:20px}.teacher-role{color:var(--color-text-light);margin-bottom:12px;font-size:14px;font-weight:700}.teacher-mini-specs{justify-content:center;gap:12px;margin-bottom:auto;display:flex}.teacher-mini-specs .spec-item{color:var(--color-text-light);align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.flip-hint{color:var(--color-primary);align-items:center;gap:6px;margin-top:10px;font-size:12px;font-weight:700;display:inline-flex}.teacher-back-name{font-family:var(--font-headings);color:var(--color-text);margin-bottom:4px;font-size:22px}.teacher-back-role{color:var(--color-primary);margin-bottom:24px;font-size:14px;font-weight:700}.teacher-back-credentials{flex-direction:column;gap:16px;width:100%;margin-bottom:20px;display:flex}.cred-item{align-items:flex-start;gap:12px;display:flex}.cred-icon{color:var(--color-primary);flex-shrink:0;margin-top:3px}.cred-item strong{font-family:var(--font-headings);color:var(--color-text);font-size:13px}.cred-item p{color:var(--color-text-light);font-size:13px;font-weight:600}.phil-text{font-style:italic;color:var(--color-text)!important}.teacher-back-bio{color:var(--color-text-light);margin-bottom:auto;font-size:13px;line-height:1.6}.teacher-contact-info{color:var(--color-text);border-top:1px dashed var(--color-border);align-items:center;gap:8px;width:100%;margin-bottom:12px;padding-top:12px;font-size:13px;font-weight:700;display:flex}.teacher-contact-info a:hover{color:var(--color-primary);text-decoration:underline}.flip-hint-back{color:var(--color-text-light);align-self:center;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.support-staff-section{background-color:var(--color-bg-white)}.support-heading{margin-bottom:40px;font-size:30px;font-weight:700}.support-card{background-color:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;padding:30px;display:flex}.support-card:hover{transform:translateY(-3px)}.support-avatar-circle{background-color:var(--color-bg-white);width:60px;height:60px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:34px;display:flex}.support-card h4{font-family:var(--font-headings);margin-bottom:4px;font-size:18px}.support-card p{color:var(--color-text-light);font-size:13px;font-weight:600}@media (max-width:1024px){.teacher-flip-card{height:440px}.teacher-image-frame{height:240px}}@media (max-width:480px){.teacher-flip-card{height:480px}.teacher-image-frame{height:260px}}
.alumni-stats{background-color:var(--color-bg-white);padding:60px 0}.alumni-stat-card{background-color:var(--color-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), box-shadow var(--transition-normal);padding:30px}.alumni-stat-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-5px)}.alumni-stat-card .stat-icon{background-color:var(--color-bg-white);border-radius:var(--radius-full);margin-bottom:15px;padding:12px;display:inline-flex}.alumni-stat-card h3{color:var(--color-primary);margin-bottom:5px;font-size:32px}.alumni-stat-card p{color:var(--color-text-light);font-weight:500}.alumni-stories{background-color:var(--color-bg-alt)}.story-card{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border-top:4px solid var(--color-accent);padding:35px;position:relative}.story-card .quote-mark{color:var(--color-accent-light);pointer-events:none;font-family:Georgia,serif;font-size:80px;line-height:1;position:absolute;top:-10px;left:20px}.story-quote{color:var(--color-text);z-index:1;margin-bottom:25px;font-size:15px;font-style:italic;position:relative}.story-meta{border-top:1px solid var(--color-border);padding-top:15px}.story-name{color:var(--color-primary);font-size:16px;font-weight:700}.story-role{color:var(--color-text-light);margin-top:2px;font-size:13px;font-weight:500}.alumni-registration{background-color:var(--color-bg-white)}.alumni-registration .reg-info{flex-direction:column;justify-content:center;display:flex}.alumni-registration .reg-info h2{margin-bottom:20px;font-size:36px}.alumni-registration .reg-info p{color:var(--color-text-light);font-size:16px;line-height:1.7}.alumni-registration .reg-form{background-color:var(--color-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:40px}.alumni-registration .reg-form input{font-family:var(--font-body);transition:border-color var(--transition-fast);font-size:15px}.alumni-registration .reg-form input:focus{border-color:var(--color-primary)!important}.alumni-registration .reg-form button:hover{background-color:var(--color-secondary)!important}
:root{--color-primary:#0e2362;--color-primary-light:#edf1fc;--color-secondary:#12a19c;--color-secondary-light:#edfdfc;--color-accent:#f9ab10;--color-accent-light:#fef8eb;--color-tertiary:#1173d4;--color-tertiary-light:#e7f2fd;--color-purple:#6039ac;--color-pink:#e23670;--color-bg:#f9fafb;--color-bg-alt:#edf0f2;--color-bg-white:#fff;--color-text:#0f1729;--color-text-light:#626d84;--color-text-white:#fff;--color-border:#e2e6e9;--shadow-sm:0 1px 3px #0000000d, 0 1px 2px #00000008;--shadow-md:0 4px 10px -1px #0b1e4814, 0 2px 4px -1px #0000000a;--shadow-lg:0 12px 20px -3px #0b1e4814, 0 4px 8px -2px #00000008;--shadow-xl:0 25px 35px -5px #0b1e481a, 0 10px 15px -5px #0000000a;--shadow-hover:0 20px 30px -5px #0b1e4826, 0 10px 15px -5px #0000000a;--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--font-headings:"Outfit", "Inter", sans-serif;--font-body:"Inter", sans-serif;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px;--max-width:1200px;--nav-height:80px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease;--transition-spring:.4s cubic-bezier(.16, 1, .3, 1)}html[lang=bn]{--font-headings:"Noto Serif Bengali", "Noto Sans Bengali", "Hind Siliguri", serif;--font-body:"Noto Sans Bengali", "Hind Siliguri", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-headings);color:var(--color-primary);font-weight:700;line-height:1.25}a{color:inherit;transition:var(--transition-fast);text-decoration:none}img{max-width:100%;height:auto;display:block}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes slow-zoom{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-marquee{white-space:nowrap;animation:30s linear infinite marquee;display:inline-flex}.animate-slow-zoom{animation:20s ease-in-out infinite slow-zoom}.section-angle{z-index:1;position:relative}.section-angle:after{content:"";background:inherit;z-index:-1;height:80px;position:absolute;left:0;right:0}.section-angle-top:after{top:-40px;transform:skewY(-1.5deg)}.section-angle-bottom:after{bottom:-40px;transform:skewY(-1.5deg)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 20px}.section{padding:80px 0;position:relative}.grid-2{grid-template-columns:repeat(2,1fr);gap:40px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.w-full{width:100%}.badge{border-radius:var(--radius-sm);font-family:var(--font-headings);letter-spacing:.8px;text-transform:uppercase;margin-bottom:16px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-block}.badge-primary{background-color:var(--color-primary-light);color:var(--color-primary)}.badge-secondary{background-color:var(--color-secondary-light);color:var(--color-secondary)}.badge-tertiary{background-color:var(--color-tertiary-light);color:var(--color-tertiary)}.badge-accent{background-color:var(--color-accent-light);color:#b3781a}@media (max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;gap:20px}body{font-size:15px}.section{padding:60px 0}}main{flex-direction:column;width:100%;min-height:100vh;display:flex}
