.navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border);z-index:1000}.navbar-container{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-xl);height:100%;display:flex;align-items:center;justify-content:space-between}.navbar-logo{display:flex;align-items:center}.navbar-logo-img{height:75px;width:auto;filter:brightness(0) invert(1)}.navbar-logo:hover .navbar-logo-img{opacity:.8}.navbar-menu{display:flex;list-style:none;gap:var(--spacing-sm);margin:0;padding:0;position:relative}.navbar-indicator{position:absolute;top:50%;transform:translateY(-50%);height:32px;background:#ffffff1a;border-radius:var(--radius-md);transition:left .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1),opacity .2s ease;pointer-events:none}.navbar-link{display:block;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);color:#ffffffb3;border-radius:var(--radius-md);transition:color .2s ease,letter-spacing .2s ease;text-decoration:none;position:relative;z-index:1;letter-spacing:.01em}.navbar-link:hover{color:#fff;background:transparent;letter-spacing:.06em}.navbar-link.active{color:#fff;background:transparent;letter-spacing:.04em;text-shadow:0 0 12px rgba(255,255,255,.4)}.navbar-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--spacing-sm)}.hamburger{display:block;width:24px;height:2px;background:#fff;position:relative;transition:background var(--transition-fast)}.hamburger:before,.hamburger:after{content:"";position:absolute;left:0;width:100%;height:2px;background:#fff;transition:transform var(--transition-fast)}.hamburger:before{top:-8px}.hamburger:after{top:8px}.hamburger.open{background:transparent}.hamburger.open:before{transform:translateY(8px) rotate(45deg)}.hamburger.open:after{transform:translateY(-8px) rotate(-45deg)}.navbar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e1e1e99;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;animation:overlayFadeIn .25s ease forwards}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 1024px){.navbar-toggle{display:block}.navbar-menu{position:fixed;top:var(--navbar-height);left:0;right:0;height:calc(100vh - var(--navbar-height));flex-direction:column;justify-content:flex-start;align-items:stretch;background:#0a0a0ab3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transform:translate(100%);transition:transform .3s ease-in-out;overflow-y:auto;padding:0;margin:0}.navbar-menu.open{transform:translate(0)}.navbar-item{width:100%;border-bottom:1px solid rgba(255,255,255,.06)}.navbar-item:last-child{border-bottom:none}.navbar-indicator{display:none}.navbar-link{display:block;width:100%;box-sizing:border-box;padding:1.2rem var(--spacing-xl);font-size:1.1rem;border-radius:0;letter-spacing:.01em;transition:color .2s ease}.navbar-link:hover,.navbar-link.active{letter-spacing:.01em}}.footer{background-color:#f3f4f6;color:#111;border-top:1px solid #e5e7eb;margin-top:auto;font-family:inherit}.footer-container{max-width:1200px;margin:0 auto;padding:1.5rem 1.5rem 1rem}.footer-main{display:flex;justify-content:space-between;gap:1.5rem;margin-bottom:1.2rem}.footer-info{max-width:300px}.footer-logo-img{height:60px;width:auto;margin-bottom:.75rem;filter:brightness(0);opacity:.8}.footer-description{font-size:.85rem;color:#111;line-height:1.5;margin:0;opacity:.8}.footer-links{display:flex;gap:2.5rem}.footer-column h4{font-size:.9rem;font-weight:600;margin-top:0;margin-bottom:.75rem;color:#111;text-transform:uppercase;letter-spacing:.05em}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-bottom:.4rem}.footer-column a,.footer-column li{font-size:.85rem;color:#111;text-decoration:none;transition:opacity .2s ease-in-out;opacity:.8}.footer-column a:hover{opacity:1}.contact-column li{line-height:1.4}.footer-bottom{padding-top:1rem;border-top:1px solid #e5e7eb;text-align:center}.footer-bottom p{margin:0;font-size:.8rem;color:#111;opacity:.8}@media (max-width: 768px){.footer-container{padding:1.2rem 1rem .8rem}.footer-main{flex-direction:column;gap:1rem;margin-bottom:.8rem}.footer-info{max-width:100%;text-align:center}.footer-logo-img{height:48px;margin:0 auto .5rem;filter:brightness(0);opacity:.8}.footer-description{font-size:.75rem;line-height:1.4}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.footer-column{text-align:center}.footer-column h4{font-size:.85rem;margin-bottom:.5rem}.footer-column li,.footer-column a{font-size:.8rem;margin-bottom:.3rem}.contact-column{grid-column:span 2;border-top:1px solid #e5e7eb;padding-top:.8rem;margin-top:0}.contact-column ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem .6rem}.contact-column li{display:inline-block;line-height:1.2;margin-bottom:0}.footer-bottom{padding-top:.8rem}}.wave-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.scroll-to-top{position:fixed;right:2rem;bottom:2rem;width:48px;height:48px;border-radius:50%;border:none;background:#111;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:999;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .3s ease,transform .3s ease,background .2s ease}.scroll-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}.scroll-to-top:hover{background:#333}.scroll-to-top svg{width:20px;height:20px}@media (max-width: 768px){.scroll-to-top{right:1rem;bottom:1.25rem;width:42px;height:42px}.scroll-to-top svg{width:18px;height:18px}}.chatbot-toggle{position:fixed;bottom:24px;right:24px;z-index:1000;width:56px;height:56px;border-radius:50%;border:none;background:#1e40af;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 4px 16px #1e40af66;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.chatbot-toggle:hover{transform:scale(1.08);box-shadow:0 6px 24px #1e40af80}.chatbot-toggle.open{background:#475569}.chatbot-window{position:fixed;bottom:92px;right:24px;z-index:1000;width:380px;max-height:520px;background:#fff;border-radius:16px;box-shadow:0 8px 40px #00000026;display:flex;flex-direction:column;overflow:hidden;animation:chatbot-slideUp .3s ease}@keyframes chatbot-slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.chatbot-header{background:linear-gradient(135deg,#1e40af,#0f766e);color:#fff;padding:16px;display:flex;align-items:center;gap:12px}.chatbot-header-icon{font-size:28px}.chatbot-header-title{font-weight:600;font-size:15px}.chatbot-header-subtitle{font-size:11px;opacity:.75}.chatbot-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;min-height:200px;max-height:320px}.chatbot-msg{max-width:85%;padding:10px 14px;border-radius:14px;font-size:13.5px;line-height:1.5;word-break:break-word}.chatbot-msg.assistant{align-self:flex-start;background:#f1f5f9;color:#1e293b;border-bottom-left-radius:4px}.chatbot-msg.user{align-self:flex-end;background:#1e40af;color:#fff;border-bottom-right-radius:4px}.chatbot-cursor{display:inline-block;animation:chatbot-blink .6s step-end infinite;color:#94a3b8;margin-left:1px}@keyframes chatbot-blink{50%{opacity:0}}.chatbot-typing{display:inline-flex;gap:4px;padding:4px 0}.chatbot-typing span{width:6px;height:6px;background:#94a3b8;border-radius:50%;animation:chatbot-bounce 1.2s ease-in-out infinite}.chatbot-typing span:nth-child(2){animation-delay:.15s}.chatbot-typing span:nth-child(3){animation-delay:.3s}@keyframes chatbot-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.chatbot-suggestions{padding:0 16px 8px;display:flex;flex-wrap:wrap;gap:6px}.chatbot-suggestion{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;padding:6px 12px;font-size:12px;color:#475569;cursor:pointer;transition:all .2s}.chatbot-suggestion:hover{background:#e2e8f0;color:#1e40af}.chatbot-input-area{padding:12px;border-top:1px solid #e2e8f0;display:flex;gap:8px}.chatbot-input{flex:1;border:1px solid #e2e8f0;border-radius:20px;padding:8px 16px;font-size:13.5px;outline:none;transition:border-color .2s}.chatbot-input:focus{border-color:#1e40af}.chatbot-input:disabled{background:#f8fafc}.chatbot-send{width:36px;height:36px;border-radius:50%;border:none;background:#1e40af;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.chatbot-send:disabled{opacity:.4;cursor:default}.chatbot-send:not(:disabled):hover{background:#1e3a8a}@media (max-width: 480px){.chatbot-window{right:8px;left:8px;bottom:84px;width:auto;max-height:70vh}.chatbot-toggle{bottom:16px;right:16px}}.layout{min-height:100vh;display:flex;flex-direction:column;position:relative}.main-content{flex:1;margin-top:var(--navbar-height);position:relative;z-index:1}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base);height:100%;display:flex;flex-direction:column;min-width:0}.card-hover:hover{transform:translateY(-5px);border-color:var(--color-border-light);box-shadow:0 10px 40px #00000080}.card-image{width:100%;aspect-ratio:16 / 10;overflow:hidden;background:var(--color-bg-tertiary)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.card-hover:hover .card-image img{transform:scale(1.05)}.card-content{padding:var(--spacing-lg);display:flex;flex-direction:column;flex:1}.card-title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text-primary);word-break:break-word;overflow-wrap:anywhere;min-width:0}.card-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;flex:1;word-break:break-word;overflow-wrap:anywhere;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-family:var(--font-family);font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-text-primary);color:var(--color-bg-primary);border-color:var(--color-text-primary)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn-secondary{background:transparent;color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:#ffffff0d;border-color:var(--color-border-light)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){color:var(--color-text-primary);background:#ffffff0d}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm)}.btn-md{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg)}.home-page{min-height:100vh}.glass-card{background:#ffffff0d!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:1px solid rgba(255,255,255,.08)!important}.hero{min-height:calc(100vh - var(--navbar-height));display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-2xl)}.hero-content{max-width:800px}.hero-title{font-size:clamp(3rem,10vw,6rem);font-weight:700;letter-spacing:.1em;margin-bottom:var(--spacing-md);text-transform:uppercase}.hero-letter{display:inline-block;opacity:0;animation:heroLetterDrop .7s cubic-bezier(.16,1,.3,1) forwards;background:linear-gradient(90deg,#111,#111 20%,#007edd 38%,#fe7e01 52%,#111 68%,#111);background-size:300% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:heroLetterDrop .7s cubic-bezier(.16,1,.3,1) 0s 1 forwards,heroGradientShift 1.5s linear 1.8s 1 forwards}.hero-subtitle{font-size:clamp(1rem,3vw,1.5rem);color:var(--color-text-secondary);margin-bottom:var(--spacing-md);letter-spacing:.2em;text-transform:uppercase;animation:heroSubtitleReveal .9s cubic-bezier(.16,1,.3,1) both;animation-delay:.6s}.hero-content:before{content:"";display:block;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);margin:0 auto var(--spacing-md);animation:heroLineExpand .8s cubic-bezier(.16,1,.3,1) both;animation-delay:.5s}.hero-description{font-size:var(--font-size-lg);color:var(--color-text-muted);margin-bottom:var(--spacing-2xl);animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) both;animation-delay:1s}.hero-buttons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap;animation:fadeInUp .7s cubic-bezier(.16,1,.3,1) both;animation-delay:1.3s}.grid>a{display:block;height:100%}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.section-link{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);padding:.45rem 1rem;border-radius:var(--radius-full);text-decoration:none;transition:all var(--transition-fast);letter-spacing:.02em}.section-link:after{content:"→";font-size:.9em}.section-link:hover{background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--radius-full);margin-top:var(--spacing-md);text-transform:uppercase;letter-spacing:.05em;align-self:flex-start}.news-category{display:inline-block;font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--spacing-sm)}.news-date{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--spacing-md)}@media (max-width: 768px){.hero{padding:var(--spacing-xl)}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}.orgs-section{padding:5rem 0 4rem}.orgs-header{text-align:center;margin-bottom:3rem}.orgs-title{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:300;letter-spacing:.3em;color:var(--color-text-primary);margin-bottom:.75rem}.orgs-subtitle{font-size:var(--font-size-base);color:var(--color-text-muted);margin-bottom:1.5rem}.orgs-divider{width:40px;height:2px;background-color:var(--color-text-primary);opacity:.4;margin:0 auto}.orgs-scroll-container{position:relative;display:flex;align-items:center}.orgs-arrow{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid rgba(0,0,0,.15);background:#0000000d;color:#0006;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);z-index:1}.orgs-arrow svg{width:18px;height:18px}.orgs-arrow:hover{background:#0000001a;color:#000000d9;border-color:#0000004d}.orgs-arrow-left{margin-right:.75rem}.orgs-arrow-right{margin-left:.75rem}.orgs-scroll-wrapper{overflow:hidden}.orgs-track{display:flex;align-items:center;gap:4rem;padding:1.5rem 2rem 2.5rem;min-width:max-content;user-select:none;-webkit-user-select:none;will-change:transform}.org-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;flex-shrink:0;width:160px;padding:1.5rem 1rem;border-radius:12px;border:1px solid rgba(0,0,0,.08);background:#fff;text-decoration:none;opacity:.85;box-shadow:0 2px 12px #00000026;transition:opacity var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.org-item:hover{opacity:1;transform:translateY(-4px);box-shadow:0 8px 24px #00000040}.org-logo-wrap{height:48px;display:flex;align-items:center;justify-content:center}.org-logo{height:48px;width:auto;max-width:120px;object-fit:contain;filter:grayscale(20%);transition:filter var(--transition-fast);pointer-events:none}.org-item:hover .org-logo{filter:grayscale(0%)}.org-name{font-size:.75rem;font-weight:500;color:#555;text-align:center;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.org-item:hover .org-name{color:#111}.stats-section{position:relative;z-index:1;background-color:#0000000d;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);color:#111;padding:4rem 0;border-top:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center}.stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center}.stat-icon{width:48px;height:48px;margin-bottom:1rem;fill:var(--color-text-primary)}.stat-number{font-size:3.5rem;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.2}.stat-divider{width:40px;height:2px;background-color:var(--color-text-primary);opacity:.5;margin:1rem 0}.stat-label{font-size:1.1rem;font-weight:600;color:var(--color-text-secondary);opacity:.9;margin:0}@media (max-width: 768px){.hero{padding:var(--spacing-xl);min-height:calc(100vh - var(--navbar-height))}.hero-buttons{flex-direction:column;align-items:center;gap:var(--spacing-sm)}.section.container{padding-top:var(--spacing-2xl);padding-bottom:var(--spacing-2xl)}.stats-section{padding:3rem 0}.stats-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem 1rem}.stat-number{font-size:2.8rem}.stat-label{font-size:.95rem}.stat-icon{width:36px;height:36px}.orgs-section{padding:3rem 0 2.5rem}.orgs-header{margin-bottom:2rem}.orgs-track{gap:1.5rem;padding:1rem 1rem 2rem}.org-item{width:130px;padding:1.1rem .75rem}.org-logo,.org-logo-wrap{height:38px}.org-logo{max-width:100px}.orgs-arrow{display:none}}@media (max-width: 480px){.hero-description{font-size:var(--font-size-base)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:2rem .5rem}.stat-number{font-size:2.2rem}.stat-label{font-size:.85rem}.stat-divider{margin:.6rem 0}.orgs-title{font-size:1.6rem;letter-spacing:.2em}.orgs-track{gap:1rem;padding:.75rem .75rem 1.75rem}.org-item{width:110px;padding:.9rem .5rem;gap:.5rem}.org-logo,.org-logo-wrap{height:32px}.org-logo{max-width:80px}.org-name{font-size:.65rem}}.contact-section{padding:5rem 0;background-color:transparent;color:#111}.contact-container{display:flex;flex-direction:column;gap:3rem}@media (min-width: 992px){.contact-container{flex-direction:row;align-items:stretch}}.contact-info{flex:1}.contact-title{font-size:clamp(2rem,4vw,2.8rem);font-weight:300;letter-spacing:.2em;margin-bottom:1rem}.contact-divider{width:40px;height:2px;background-color:#111;opacity:.4;margin-bottom:2.5rem}.contact-subtitle{font-size:1.5rem;font-weight:500;letter-spacing:.1em;margin-bottom:1.5rem;color:#000c}.contact-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.contact-item{display:flex;align-items:flex-start;gap:1rem}.contact-icon{width:22px;height:22px;flex-shrink:0;margin-top:4px;color:#00000080}.contact-text{font-size:1.05rem;line-height:1.6;color:#000000a6;word-break:keep-all}.contact-map{flex:1;width:100%;min-height:350px;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000004d;background-color:#ffffff0d;position:relative}.contact-map iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}@media (min-width: 992px){.contact-map{min-height:400px}}@media (max-width: 768px){.contact-section{padding:3rem 0}.contact-title{font-size:1.8rem}.contact-text{font-size:.95rem}}.about-page .about-section{margin-bottom:var(--spacing-3xl)}.about-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.about-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl)}.about-card h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md);word-break:break-word;overflow-wrap:anywhere}.about-card p{font-size:var(--font-size-base);line-height:1.8}.research-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.research-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);transition:all var(--transition-base)}.research-card:hover{border-color:var(--color-border-light);transform:translateY(-5px)}.research-card h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm);word-break:break-word;overflow-wrap:anywhere}.research-card p{font-size:var(--font-size-sm);word-break:break-word;overflow-wrap:anywhere}.timeline{position:relative;padding-left:var(--spacing-2xl)}.timeline:before{content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:var(--color-border)}.timeline-item{position:relative;padding-bottom:var(--spacing-xl)}.timeline-item:last-child{padding-bottom:0}.timeline-marker{position:absolute;left:calc(-1 * var(--spacing-2xl) + 2px);top:5px;width:10px;height:10px;border-radius:50%;background:var(--color-text-primary);border:2px solid var(--color-bg-primary)}.timeline-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-lg);min-width:0;word-break:break-word;overflow-wrap:anywhere}.timeline-year{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary)}.timeline-event{font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}@media (max-width: 768px){.about-grid,.research-grid{grid-template-columns:1fr}}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-2xl)}.loading-spinner{position:relative}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-text-primary);border-radius:50%;animation:spin 1s linear infinite}.loading-sm .spinner{width:20px;height:20px}.loading-md .spinner{width:40px;height:40px}.loading-lg .spinner{width:60px;height:60px}.loading-text{font-size:var(--font-size-sm);color:var(--color-text-muted)}@keyframes spin{to{transform:rotate(360deg)}}.word-cloud{display:block}.wordcloud-background .word-cloud,.wordcloud-background-small .word-cloud,.wordcloud-modal .word-cloud{position:absolute;top:0;left:0;pointer-events:none;opacity:.6;z-index:0}.wordcloud-container .word-cloud{position:relative;opacity:1}.members-page{padding-bottom:var(--spacing-3xl)}.members-section{margin-bottom:var(--spacing-3xl)}.section-header-block{text-align:center;margin-bottom:var(--spacing-2xl)}.section-header-title{font-size:var(--font-size-3xl);font-weight:300;letter-spacing:.2em;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.section-header-sub{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-md)}.section-header-line{width:40px;height:2px;background:var(--color-text-muted);margin:0 auto}.members-section-title{font-size:var(--font-size-xl);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.professor-card{display:flex;gap:var(--spacing-2xl);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-xl)}.professor-card:hover{border-color:var(--color-border-light);transform:translateY(-3px);box-shadow:var(--shadow-md)}.professor-photo-wrapper{position:relative;flex-shrink:0}.professor-photo{width:200px;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-tertiary);position:relative;z-index:2}.professor-photo img{width:100%;height:auto;display:block;object-fit:contain}.wordcloud-background{position:absolute;top:-25px;left:-25px;width:250px;height:250px;z-index:1;opacity:.4}.professor-info{display:flex;flex-direction:column;justify-content:center}.professor-name{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-xs)}.professor-name-ko{font-size:var(--font-size-base);font-weight:400;color:var(--color-text-secondary)}.view-more{display:inline-block;margin-top:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-primary);font-weight:500;letter-spacing:.03em;cursor:pointer;transition:opacity .2s}.view-more:hover{opacity:.7}.professor-info .role{font-size:var(--font-size-sm);color:var(--color-text-muted);letter-spacing:.03em;margin-bottom:var(--spacing-md)}.prof-meta{margin:var(--spacing-lg) 0;display:flex;flex-direction:column;gap:var(--spacing-md)}.prof-meta-row{display:flex;flex-direction:column;gap:4px;font-size:var(--font-size-sm)}.prof-meta-row dt{align-self:flex-start;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-primary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:2px 8px;letter-spacing:.03em}.prof-meta-row dd{color:var(--color-text-secondary);margin:0;line-height:1.5;padding-left:4px}.empty-dash{color:var(--color-text-muted);display:block;text-align:center}.view-profile{display:inline-block;margin-top:var(--spacing-md);font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em}.photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-4xl);font-weight:600;color:var(--color-text-muted);background:var(--color-bg-tertiary)}.photo-placeholder.large{font-size:var(--font-size-6xl)}.members-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-xl)}.member-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl) var(--spacing-lg);text-align:center;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.member-card:hover{border-color:var(--color-border-light);transform:translateY(-3px);box-shadow:var(--shadow-md)}.member-photo-wrapper{width:100px;height:100px;margin:0 auto var(--spacing-md)}.member-photo{width:100px;height:100px;border-radius:50%;overflow:hidden;background:var(--color-bg-tertiary)}.member-photo img{width:100%;height:100%;object-fit:cover}.member-name-group,.member-role-group,.member-org-group{margin-bottom:var(--spacing-md)}.member-name{font-size:var(--font-size-base);font-weight:700;margin-bottom:2px}.member-name-ko{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:0}.member-role{font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:.03em;margin-bottom:2px}.member-role-ko{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:0}.member-email{display:block;font-size:.75rem;color:var(--color-text-muted);word-break:break-all;margin-top:0;text-decoration:none}.member-email:hover{color:var(--color-text-primary);text-decoration:underline}.email-link{color:var(--color-text-secondary);text-decoration:none}.email-link:hover{color:var(--color-text-primary);text-decoration:underline}.alumni-org{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.member-modal{position:fixed;top:0;left:0;right:0;overflow-x:hidden;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:flex-start;z-index:2000;padding:calc(var(--navbar-height) + 40px) var(--spacing-xl) 60px;overflow-y:auto}.member-modal-content{position:relative;max-width:800px;width:100%;margin:auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl);animation:modalFadeUp .3s ease-out;box-shadow:var(--shadow-lg)}@keyframes modalFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:15px;right:15px;background:var(--color-bg-tertiary);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;color:var(--color-text-primary);font-size:1.8rem;cursor:pointer;z-index:2010;transition:background .2s}.modal-close:hover{background:var(--color-border)}.modal-header{display:flex;gap:var(--spacing-2xl);margin-bottom:var(--spacing-xl)}.modal-photo{width:150px;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-tertiary);flex-shrink:0;align-self:flex-start}.modal-photo img{width:100%;height:auto;display:block;object-fit:contain}.modal-info{display:flex;flex-direction:column;justify-content:center}.modal-name{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-xs)}.modal-name-ko{font-size:var(--font-size-base);font-weight:400;color:var(--color-text-secondary)}.modal-info .role{font-size:var(--font-size-sm);color:var(--color-text-muted);letter-spacing:.03em;margin-bottom:var(--spacing-sm)}.modal-email{font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.modal-interests{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6}.modal-bio{border-top:1px solid var(--color-border);padding-top:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.modal-bio h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-md)}.modal-bio p{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.8;white-space:pre-line}.modal-publications{border-top:1px solid var(--color-border);padding-top:var(--spacing-xl)}.modal-publications h3{font-size:var(--font-size-xl);margin-bottom:var(--spacing-lg)}.publication-list{list-style:none;padding:0;margin:0}.publication-item{padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-border)}.publication-item:last-child{border-bottom:none}.pub-title-text{display:block;font-size:var(--font-size-base);font-weight:500;margin-bottom:var(--spacing-xs);line-height:1.5}.pub-meta-text{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}.pub-type{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm);font-weight:600}.pub-type-journal,.pub-type-international_journal{background:#3b82f626;color:#2563eb}.pub-type-domestic_journal{background:#22c55e26;color:#16a34a}.pub-type-conference,.pub-type-international_conference{background:#a855f726;color:#9333ea}.pub-type-domestic_conference{background:#ec489926;color:#db2777}.pub-type-international_patent{background:#fb923c26;color:#ea580c}.pub-type-domestic_patent{background:#eab30826;color:#ca8a04}.pub-type-registered_program{background:#14b8a626;color:#0d9488}.no-publications{color:var(--color-text-muted);font-style:italic}@media (max-width: 1024px){.members-grid{grid-template-columns:repeat(3,1fr)}.professor-photo{width:160px}}@media (max-width: 768px){.members-grid{grid-template-columns:repeat(2,1fr)}.professor-card{flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-xl)}.professor-photo-wrapper,.professor-photo{width:160px}.wordcloud-background{display:none}.prof-meta-row{align-items:center}.prof-meta-row dt{align-self:center}.member-modal{padding:calc(var(--navbar-height) + 16px) 12px 48px;align-items:flex-start}.member-modal-content{padding:var(--spacing-2xl) var(--spacing-lg) var(--spacing-xl)}.modal-header{flex-direction:column;align-items:center;text-align:left;gap:var(--spacing-lg)}.modal-photo{width:140px;height:auto;border-radius:var(--radius-lg);align-self:center;flex-shrink:0;overflow:hidden}.modal-photo img{width:100%;height:auto;object-fit:contain;display:block}.modal-info{width:100%;justify-content:flex-start;align-items:flex-start}.modal-name{font-size:var(--font-size-xl);text-align:center;width:100%}.modal-info .role{text-align:center;width:100%;margin-bottom:var(--spacing-md)}.prof-meta{align-items:flex-start;width:100%}.prof-meta-row{align-items:flex-start}.prof-meta-row dt{align-self:flex-start}.prof-meta-row dd{word-break:break-all}}@media (max-width: 480px){.members-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.member-card{padding:var(--spacing-md) var(--spacing-sm)}.member-photo-wrapper,.member-photo{width:72px;height:72px}.member-name{font-size:var(--font-size-sm)}.professor-card{padding:var(--spacing-lg) var(--spacing-md)}.professor-photo-wrapper,.professor-photo{width:130px}.member-modal{padding:calc(var(--navbar-height) + 12px) 8px 40px}.member-modal-content{padding:var(--spacing-xl) var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md)}.modal-photo{width:120px;height:auto}.modal-name{font-size:var(--font-size-lg)}.modal-close{top:10px;right:10px;width:32px;height:32px;font-size:1.5rem}}.research-filters{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-2xl);justify-content:center}.filter-btn{padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.filter-btn:hover{border-color:var(--color-border-light);color:var(--color-text-primary)}.filter-btn.active{background:var(--color-text-primary);border-color:var(--color-text-primary);color:var(--color-bg-primary)}.research-list{display:grid;gap:var(--spacing-xl);min-width:0}.research-card{overflow:hidden;min-width:0}.research-card-title{word-break:break-word;overflow-wrap:anywhere}.research-card-description{word-break:break-word;overflow-wrap:anywhere;white-space:pre-line}.research-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.research-card .card-title{margin-bottom:0}.research-card .card-description{line-height:1.8}.research-card-period{font-size:.85rem;font-weight:600;margin-top:.6rem;margin-bottom:0;letter-spacing:.02em;word-break:break-word;overflow-wrap:anywhere}.period-ongoing{color:#27ae60}.period-completed{color:#999}.status-badge{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.status-ongoing{background:#22c55e33;color:#22c55e}.status-completed{background:#9ca3af33;color:#9ca3af}@media (max-width: 768px){.research-filters{flex-wrap:wrap}.research-header{flex-direction:column}}.research-card.highlighted{outline:2px solid var(--color-primary);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb, 63, 83, 133),.15);transition:outline .3s,box-shadow .3s}.publications-page{padding:6rem 0;min-height:100vh;color:var(--color-text-primary, #111111);overflow-x:hidden}.page-subtitle{font-size:1.2rem;color:#0009;letter-spacing:.05em;margin-bottom:1.5rem}.pub-layout-container{display:flex;gap:3rem;align-items:flex-start;min-width:0;overflow:hidden}.pub-sidebar{flex:0 0 300px;background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;position:sticky;top:calc(var(--navbar-height) + 2rem)}.sidebar-menu-list{display:flex;flex-direction:column}.sidebar-btn{display:flex;align-items:center;gap:1rem;padding:1.2rem 1.5rem;width:100%;background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.07);color:#0000008c;cursor:pointer;transition:all .3s ease;text-align:left}.sidebar-btn:last-child{border-bottom:none}.sidebar-btn:hover{background:#0000000d;color:#000000e6}.sidebar-btn.active{background:#00b4d8;color:#fff;border-bottom-color:transparent;box-shadow:0 4px 15px #00b4d84d}.sidebar-icon{display:flex;align-items:center;justify-content:center}.sidebar-icon svg{width:18px;height:18px}.sidebar-label{font-size:.85rem;font-weight:600;letter-spacing:.05em;line-height:1.4}.pub-main-content{flex:1;min-width:0}.pub-top-filters{display:flex;gap:1rem;margin-bottom:3rem}.search-wrapper{flex:1;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1rem;width:18px;height:18px;color:#0006}.search-input{width:100%;padding:.9rem 1rem .9rem 2.8rem;background:#00000008;border:1px solid rgba(0,0,0,.15);border-radius:8px;color:#111;font-size:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.search-input::placeholder{color:#00000059}.search-input:focus{outline:none;border-color:#00b4d8;background:#0000000d}.year-select{width:180px;padding:.9rem 1rem;background:#00000008;border:1px solid rgba(0,0,0,.15);border-radius:8px;color:#111;font-size:1rem;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 1rem top 50%;background-size:.65rem auto}.year-select:focus{outline:none;border-color:#00b4d8}.year-select option{background:#fff;color:#111}.pub-list{display:flex;flex-direction:column;gap:3.5rem}.pub-year-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem}.pub-year{font-size:2.2rem;font-weight:300;color:#111;margin:0}.pub-year-line{flex:1;height:1px;background:linear-gradient(90deg,#0003,#0000)}.pub-items{display:grid;gap:1.2rem}.pub-item{background:#fff;border:1px solid rgba(0,0,0,.08);border-left:4px solid #00b4d8;border-radius:10px;padding:1.4rem 1.8rem;transition:all .25s ease;box-shadow:0 1px 4px #0000000a}.pub-highlight{background:#00b4d80f;border-color:#00b4d866;box-shadow:0 0 0 3px #00b4d826;transition:all 1.5s ease}.pub-item:hover{background:#f8fdff;border-left-color:#0096c7;transform:translate(4px);box-shadow:0 4px 16px #00b4d81a}.pub-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.9rem;gap:1rem}.pub-pdf-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:6px;color:#dc2626;font-size:.75rem;font-weight:700;text-decoration:none;letter-spacing:.05em;transition:all .2s ease}.pub-pdf-btn svg{width:14px;height:14px}.pub-pdf-btn:hover{background:#dc262633;border-color:#dc262680;color:#b91c1c;transform:translateY(-2px);box-shadow:0 4px 12px #dc262626}.pub-btn-group{display:flex;flex-direction:row;gap:.4rem;align-items:center}.pub-link-btn{background:#3b82f61a;border-color:#3b82f64d;color:#3b82f6}.pub-link-btn:hover{background:#3b82f633;border-color:#3b82f680;color:#1d4ed8;box-shadow:0 4px 12px #3b82f626}.pub-type{display:inline-block;padding:.3rem .75rem;font-size:.73rem;font-weight:700;border-radius:20px;background:#00b4d81a;color:#0096c7;letter-spacing:.06em;white-space:nowrap;flex-shrink:0}.pub-type-international_journal{background:#10b9811a;color:#059669}.pub-type-international_conference{background:#6366f11a;color:#4f46e5}.pub-type-domestic_journal{background:#f59e0b1a;color:#d97706}.pub-type-domestic_conference{background:#ec48991a;color:#db2777}.pub-type-international_patent,.pub-type-domestic_patent{background:#8b5cf61a;color:#7c3aed}.pub-type-registered_program{background:#6b72801a;color:#4b5563}.pub-item-international_journal{border-left-color:#10b981}.pub-item-international_conference{border-left-color:#6366f1}.pub-item-domestic_journal{border-left-color:#f59e0b}.pub-item-domestic_conference{border-left-color:#ec4899}.pub-item-international_patent,.pub-item-domestic_patent{border-left-color:#8b5cf6}.pub-item-registered_program{border-left-color:#6b7280}.pub-citation{font-size:1rem;font-weight:400;line-height:1.85;color:#333;margin:0;word-break:break-word;overflow-wrap:anywhere;letter-spacing:.01em}.pub-citation-number{font-weight:700;color:#0077b6;margin-right:.4em;font-size:.95em}.pub-citation-authors{color:#444}.pub-citation-title{font-weight:600;color:#1a1a2e}.pub-citation-rest{color:#666;font-size:.95em}.no-results{text-align:center;padding:5rem 0;color:#0006;display:flex;flex-direction:column;align-items:center;gap:1rem}.no-results svg{width:48px;height:48px;opacity:.3}.reset-btn{margin-top:1rem;padding:.6rem 1.2rem;background:transparent;border:1px solid rgba(0,0,0,.2);color:#111;border-radius:6px;cursor:pointer;transition:all .2s}.reset-btn:hover{background:#0000000d;border-color:#111}.pub-mobile-dropdown{display:none;position:relative;width:100%}@media (max-width: 992px){.pub-layout-container{flex-direction:column;align-items:stretch;gap:2rem}.pub-sidebar{display:none}.pub-mobile-dropdown{display:block}.pub-mobile-dropdown-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.2rem;background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:var(--font-family);font-weight:500;cursor:pointer;letter-spacing:.03em}.pub-mobile-dropdown-btn svg{width:16px;height:16px;flex-shrink:0;color:var(--color-text-muted)}.pub-mobile-dropdown-list{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;list-style:none;padding:.4rem;margin:0;max-height:320px;overflow-y:auto}.pub-mobile-dropdown-item{width:100%;text-align:left;padding:.75rem 1rem;background:none;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-secondary);cursor:pointer;transition:background .15s;letter-spacing:.03em}.pub-mobile-dropdown-item:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.pub-mobile-dropdown-item.active{background:var(--color-bg-tertiary);color:var(--color-text-primary);font-weight:600}}@media (max-width: 768px){.publications-page{padding:4rem 0}.page-title{font-size:2.2rem}.pub-top-filters{flex-direction:column}.search-wrapper,.year-select{width:100%}.pub-year{font-size:1.8rem}.pub-item{padding:1.2rem 1.4rem}.pub-citation{font-size:.92rem;line-height:1.75}.sidebar-label{font-size:.75rem;white-space:nowrap}}.gallery-filters{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-2xl);justify-content:center;flex-wrap:wrap}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.gallery-item{position:relative;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;background:var(--color-bg-card);border:1px solid var(--color-border);transition:box-shadow .28s,transform .28s}.gallery-item:hover{box-shadow:0 12px 32px #0000001c;transform:translateY(-3px)}.gallery-image{width:100%;aspect-ratio:4 / 3;overflow:hidden;position:relative;background:var(--color-bg-tertiary)}.gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform .38s ease;display:block}.gallery-item:hover .gallery-image img{transform:scale(1.06)}.image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.gallery-category-badge{position:absolute;top:.6rem;left:.6rem;background:#0000007a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .55rem;border-radius:999px}.gallery-count{position:absolute;bottom:.6rem;right:.6rem;background:#0000007a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:var(--font-size-xs);font-weight:600;padding:.2rem .55rem;border-radius:999px;letter-spacing:.02em}.gallery-info{padding:.8rem 1rem .9rem}.gallery-info-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);margin:0 0 .22rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.gallery-info-date{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.gallery-detail{animation:detailFadeIn .3s ease;padding-bottom:4rem}@keyframes detailFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.gallery-back-btn{display:inline-flex;align-items:center;gap:.4rem;background:none;border:1px solid var(--color-border);border-radius:999px;padding:.45rem 1rem .45rem .75rem;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;margin-bottom:2rem;transition:background .2s,color .2s,border-color .2s}.gallery-back-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.gallery-detail-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.gallery-detail-category{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:.6rem}.gallery-detail-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text-primary);margin:0 0 .5rem;line-height:1.25;word-break:break-word;overflow-wrap:anywhere}.gallery-detail-date{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.gallery-detail-photos{display:flex;flex-direction:column;align-items:center;gap:1rem}.gallery-detail-photo{max-width:640px;width:100%;height:auto;border-radius:var(--radius-lg);display:block}.gallery-detail-empty{text-align:center;padding:4rem;color:var(--color-text-muted);font-size:var(--font-size-sm)}.gallery-pagination{display:flex;justify-content:center;align-items:center;gap:.4rem;margin-top:2.5rem}.pagination-btn{min-width:2.2rem;height:2.2rem;padding:0 .5rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);background:none;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.pagination-btn:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary)}.pagination-btn.active{background:var(--color-text-primary);border-color:var(--color-text-primary);color:var(--color-bg-primary)}.pagination-btn:disabled{opacity:.3;cursor:default}@media (max-width: 1024px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.gallery-filters{gap:.4rem;margin-bottom:var(--spacing-xl)}.gallery-detail{padding-bottom:3rem}.gallery-back-btn{margin-bottom:1.25rem;font-size:.8rem}.gallery-detail-header{margin-bottom:1.25rem;padding-bottom:1rem}.gallery-detail-title{font-size:var(--font-size-2xl)}.gallery-detail-photo{max-width:100%}}@media (max-width: 480px){.gallery-grid{grid-template-columns:1fr;gap:.65rem}.gallery-info{padding:.65rem .85rem .75rem}.gallery-detail-title{font-size:var(--font-size-xl)}.gallery-detail-date{font-size:.75rem}.gallery-detail-header{margin-bottom:1rem;padding-bottom:.85rem}.gallery-detail-photos{gap:.65rem}}@media (max-width: 768px){.requirements-grid,.apply-steps{grid-template-columns:1fr}}.news-filters{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-2xl);justify-content:center;flex-wrap:wrap}.news-list{display:grid;gap:var(--spacing-lg)}.news-card{cursor:pointer}.news-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.news-category{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.category-announcement{background:#3b82f633;color:#3b82f6}.category-achievement{background:#22c55e33;color:#22c55e}.category-event{background:#a855f733;color:#a855f7}.news-date{font-size:var(--font-size-sm);color:var(--color-text-muted)}.read-more{display:inline-block;margin-top:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-muted);transition:color var(--transition-fast)}.news-card:hover .read-more{color:var(--color-text-primary)}.news-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:flex-start;justify-content:center;z-index:2000;padding:calc(var(--navbar-height) + 40px) var(--spacing-xl) 60px;overflow-y:auto}.news-modal-content{position:relative;max-width:700px;width:100%;max-height:80vh;overflow-y:auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl)}.modal-close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:none;border:none;color:var(--color-text-muted);font-size:1.5rem;cursor:pointer;line-height:1}.modal-close:hover{color:var(--color-text-primary)}.news-modal-content h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-lg)}.news-modal-content>p{line-height:1.8;margin-bottom:var(--spacing-xl)}.news-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md)}.comment-count{font-size:var(--font-size-sm);color:var(--color-text-muted);display:flex;align-items:center;gap:var(--spacing-xs)}.comment-icon{font-size:var(--font-size-sm)}.comments-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.comments-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg);color:var(--color-text-primary)}.comment-form{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.comment-form input,.comment-form textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);transition:border-color var(--transition-fast)}.comment-form input:focus,.comment-form textarea:focus{outline:none;border-color:var(--color-border-light)}.comment-form textarea{resize:vertical;min-height:80px}.comment-form button{align-self:flex-end;padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-text-primary);color:var(--color-bg-primary);border:none;border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.comment-form button:hover:not(:disabled){opacity:.9}.comment-form button:disabled{opacity:.5;cursor:not-allowed}.reply-indicator{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:#3b82f61a;border-radius:var(--radius-md);font-size:var(--font-size-sm);color:#3b82f6}.reply-indicator button{background:none;border:none;color:#3b82f6;font-size:var(--font-size-lg);cursor:pointer;padding:0;line-height:1}.comments-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.comments-loading,.no-comments{text-align:center;color:var(--color-text-muted);padding:var(--spacing-xl);font-size:var(--font-size-sm)}.comment{padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.comment-reply{margin-left:var(--spacing-lg);background:var(--color-bg-tertiary);border-color:transparent}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.comment-author{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-primary)}.comment-date{font-size:var(--font-size-xs);color:var(--color-text-muted)}.comment-content{font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);white-space:pre-wrap;word-break:break-word}.comment-actions{display:flex;gap:var(--spacing-md)}.comment-action-btn{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-xs);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--spacing-xs)}.comment-action-btn:hover{background:#ffffff1a;color:var(--color-text-primary)}.like-icon{color:#ef4444}.comment-replies{margin-top:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl)}.contact-info h2,.contact-form-container h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xl)}.info-list{display:grid;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.info-item h3{font-size:var(--font-size-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--spacing-xs)}.info-item p{font-size:var(--font-size-base);color:var(--color-text-primary)}.map-container{margin-top:var(--spacing-xl)}.map-placeholder{height:250px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center}.map-placeholder p{color:var(--color-text-muted)}.map-note{font-size:var(--font-size-sm);margin-top:var(--spacing-sm)}.contact-form-container{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--spacing-sm)}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);transition:border-color var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-border-light)}.form-group textarea{resize:vertical;min-height:120px}.form-status{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm)}.form-status.success{background:#22c55e33;color:#22c55e}.form-status.error{background:#ef444433;color:#ef4444}.contact-form .btn{width:100%}.joinus-container{margin-top:var(--spacing-3xl)}.joinus-section{margin-bottom:var(--spacing-3xl)}.intro-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl);text-align:center}.intro-card h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md)}.intro-card p{max-width:700px;margin:0 auto;line-height:1.8}.requirements-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.requirement-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.requirement-card h3{font-size:var(--font-size-xl);margin-bottom:var(--spacing-md)}.requirement-card ul{list-style:none}.requirement-card li{position:relative;padding-left:var(--spacing-lg);margin-bottom:var(--spacing-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.requirement-card li:before{content:"✓";position:absolute;left:0;color:#22c55e}.apply-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl)}.step{text-align:center}.step-number{width:50px;height:50px;margin:0 auto var(--spacing-md);display:flex;align-items:center;justify-content:center;background:var(--color-text-primary);color:var(--color-bg-primary);border-radius:50%;font-size:var(--font-size-xl);font-weight:600}.step-content h3{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.step-content p{font-size:var(--font-size-sm)}.faq-list{display:grid;gap:var(--spacing-md)}.faq-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.faq-question{width:100%;padding:var(--spacing-lg);background:none;border:none;color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.faq-icon{font-size:var(--font-size-xl);color:var(--color-text-muted)}.faq-answer{padding:0 var(--spacing-lg) var(--spacing-lg)}.faq-answer p{line-height:1.8}.joinus-cta{text-align:center;padding:var(--spacing-3xl);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.joinus-cta h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm)}.joinus-cta p{margin-bottom:var(--spacing-xl)}.section-divider{margin:4rem 0;border-top:1px solid var(--color-border)}@media (max-width: 768px){.contact-grid,.requirements-grid,.apply-steps{grid-template-columns:1fr}}.admin-page{min-height:100vh}.admin-login{max-width:400px;margin:100px auto;padding:var(--spacing-2xl);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.admin-login h1{text-align:center;margin-bottom:var(--spacing-xl)}.admin-login .form-group{margin-bottom:var(--spacing-md)}.admin-login label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm)}.admin-login input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-base)}.admin-login .error{color:#ef4444;font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.admin-login .btn{width:100%}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg) 0;border-bottom:1px solid var(--color-border)}.admin-header h1{font-size:var(--font-size-2xl)}.admin-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-md)}.tab-btn{padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.tab-btn:hover{color:var(--color-text-primary)}.tab-btn.active{background:var(--color-bg-card);border-color:var(--color-border);color:var(--color-text-primary)}.admin-toolbar{margin-bottom:var(--spacing-lg)}.edit-form{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.edit-form h3{margin-bottom:var(--spacing-lg)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-border-light)}.form-group input[type=checkbox]{width:auto;margin-right:var(--spacing-sm)}.form-group .member-select{height:auto;min-height:120px}.form-group .member-select option{padding:var(--spacing-xs) var(--spacing-sm)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.admin-table{width:100%;border-collapse:collapse;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.admin-table th,.admin-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.admin-table th{background:var(--color-bg-secondary);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.admin-table td{font-size:var(--font-size-sm)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover{background:#ffffff05}.action-btn{padding:var(--spacing-xs) var(--spacing-sm);margin-right:var(--spacing-xs);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast)}.action-btn.edit{background:#3b82f633;color:#3b82f6}.action-btn.edit:hover{background:#3b82f64d}.action-btn.delete{background:#ef444433;color:#ef4444}.action-btn.delete:hover{background:#ef44444d}.linked-members{color:var(--color-text-muted);font-size:var(--font-size-xs)}.photo-preview{margin-top:var(--spacing-sm);width:100px;height:100px;border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg-tertiary);border:1px solid var(--color-border)}.photo-preview img{width:100%;height:100%;object-fit:cover}.form-group select optgroup{font-weight:600;color:var(--color-text-secondary)}.has-photo{color:#22c55e;font-size:var(--font-size-xs);margin-left:var(--spacing-xs)}.is-alumni{color:#f59e0b;font-size:var(--font-size-xs);margin-left:var(--spacing-xs)}@media (max-width: 768px){.admin-tabs{flex-wrap:wrap}.form-row{grid-template-columns:1fr}.admin-table{font-size:var(--font-size-xs)}.admin-table th,.admin-table td{padding:var(--spacing-sm)}}.courses-page{padding:6rem 0;min-height:100vh;color:var(--color-text-primary, #111111)}.page-header{text-align:center;margin-bottom:3rem}.page-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;letter-spacing:.1em;margin-bottom:1rem;text-transform:uppercase}.header-divider{width:60px;height:3px;background-color:#00000080;margin:0 auto}.courses-loading{text-align:center;padding:4rem;font-size:1.1rem;color:#00000080}.courses-sections{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.course-section{background:#0000000d;border:1px solid rgba(0,0,0,.08);border-radius:12px;overflow:hidden;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.section-title{font-size:1.4rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:1.5rem 2rem;border-bottom:1px solid rgba(0,0,0,.1);margin:0}.no-data{padding:2rem;color:#0006;font-size:.95rem}.course-table{width:100%;border-collapse:collapse}.course-table thead tr{background:#0000000a}.course-table th{padding:.75rem 2rem;text-align:left;font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#00000080;border-bottom:1px solid rgba(0,0,0,.08)}.course-table td{padding:.85rem 2rem;border-bottom:1px solid rgba(0,0,0,.06);vertical-align:middle}.course-table tbody tr:last-child td{border-bottom:none}.course-table tbody tr:hover td{background:#00000005}.year-cell{font-weight:700;font-size:1rem;color:#000000bf;white-space:nowrap;width:6rem;border-right:1px solid rgba(0,0,0,.06)}.course-name-cell{font-size:.95rem;line-height:1.5;word-break:break-word;overflow-wrap:anywhere;min-width:0}.course-name-en{display:block;font-weight:500}.course-name-kr{display:block;font-size:.85rem;color:#00000080;margin-top:.15rem}@media (max-width: 900px){.courses-sections{grid-template-columns:1fr}}@media (max-width: 600px){.course-table th,.course-table td{padding:.75rem 1.25rem}.section-title{padding:1.25rem 1.5rem}}.experiment-page{min-height:100vh;padding-bottom:80px;overflow-x:hidden}.experiment-hero{text-align:center;padding:80px 20px 48px}.experiment-hero h1{font-size:clamp(2.5rem,6vw,4rem);font-weight:700;letter-spacing:.04em;margin-bottom:8px}.experiment-hero .hero-accent{background:linear-gradient(135deg,#1e40af,#0f766e);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.experiment-hero p{font-size:1.1rem;color:#64748b;max-width:600px;margin:0 auto}.exp-identity-bar{max-width:1200px;margin:0 auto 32px;padding:12px 24px;display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;border:1px solid #e2e8f0;overflow:hidden;word-break:break-word}.exp-identity-left{display:flex;align-items:center;gap:8px}.ws-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8}.ws-dot.connected{background:#22c55e;box-shadow:0 0 6px #22c55e66}.ws-dot.connecting{background:#eab308;animation:pulse-dot 1s ease-in-out infinite}.ws-label{font-size:13px;color:#64748b}.exp-identity-right{display:flex;align-items:center;gap:16px}.exp-user-id{font-weight:700;font-size:14px;color:#1e293b;padding:4px 12px;background:#f1f5f9;border-radius:20px}.exp-user-score{font-size:14px;font-weight:600;color:#1e40af}.experiment-section{max-width:1200px;margin:0 auto 32px;padding:0 24px}.section-card{padding:32px}.section-card-header{display:flex;align-items:center;gap:16px;margin-bottom:28px}.section-card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.section-card-icon.ai{background:#1e40af14}.section-card-icon.cloud{background:#0f766e14}.section-card-icon.trophy{background:#eab30814}.section-card-header h2{font-size:1.75rem;font-weight:700;color:#1e293b}.section-card-header p{font-size:.875rem;color:#64748b;margin-top:2px}.exp-subcard{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.exp-subcard h3{font-size:1.1rem;font-weight:700;color:#1e293b;margin-bottom:8px}.exp-subcard>p{font-size:.85rem;color:#64748b;margin-bottom:20px;line-height:1.6}.exp-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;box-shadow:0 1px 4px #0000000a;transition:box-shadow .2s,border-color .2s;min-width:0;overflow:hidden}.exp-card:hover{box-shadow:0 4px 16px #00000014;border-color:#cbd5e1}.exp-card h3{font-size:1.15rem;font-weight:700;color:#1e293b;margin-bottom:8px}.exp-card>p{font-size:.875rem;color:#64748b;margin-bottom:20px;line-height:1.6}.ai-grid{display:grid;gap:24px}.nn-container{display:flex;flex-direction:column;align-items:center}.nn-canvas-wrap{width:100%;max-width:600px;aspect-ratio:3 / 2;margin-bottom:16px}.nn-canvas-wrap canvas{width:100%;height:100%;border-radius:12px;background:#1e293b}.nn-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center}.nn-stats{display:flex;gap:32px;margin-top:16px;justify-content:center}.nn-stat{text-align:center}.nn-stat-label{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.nn-stat-value{font-size:1.25rem;font-weight:700;color:#1e293b;font-variant-numeric:tabular-nums}.nn-predictions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px;width:100%;max-width:500px}.nn-pred-item{text-align:center;padding:10px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0}.nn-pred-input{font-size:11px;color:#94a3b8}.nn-pred-output{font-size:1.1rem;font-weight:700;color:#1e293b;font-variant-numeric:tabular-nums}.nn-pred-target{font-size:11px;color:#94a3b8}.matmul-result{margin-top:20px;padding:20px;border-radius:12px;background:#f0f4ff;border:1px solid #dbeafe}.matmul-result p{font-size:.875rem;line-height:1.8;color:#475569}.matmul-result strong{color:#1e293b}.matmul-result .highlight{color:#1e40af;font-weight:700}.matmul-note{margin-top:8px}.cloud-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:24px;align-items:start}.cloud-grid>.exp-card{min-height:320px;display:flex;flex-direction:column}.cloud-grid>.exp-card .cloud-card-footer{margin-top:auto}.cloud-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;gap:8px;min-width:0}.cloud-card-header h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cloud-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;background:#0f766e14;color:#0f766e;white-space:nowrap}.cloud-badge .dot{width:6px;height:6px;border-radius:50%;background:#0f766e;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:.4}50%{opacity:1}}.cloud-card-desc{font-size:.875rem;color:#64748b;margin-bottom:20px;line-height:1.6}.cloud-stats{display:flex;gap:24px;margin-bottom:16px;min-width:0;overflow:hidden}.cloud-stat{flex:1;min-width:0;overflow:hidden}.cloud-stat-label{font-size:11px;color:#94a3b8;margin-bottom:2px}.cloud-stat-value{font-size:1.1rem;font-weight:700;color:#1e293b;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-bar-wrap{height:6px;background:#f1f5f9;border-radius:20px;overflow:hidden;margin-bottom:16px}.progress-bar-fill{height:100%;border-radius:20px;transition:width .6s ease}.progress-bar-fill.mersenne{background:linear-gradient(90deg,#1e40af,#3b82f6)}.progress-bar-fill.collatz{background:linear-gradient(90deg,#0f766e,#14b8a6)}.progress-bar-fill.pi{background:linear-gradient(90deg,#475569,#94a3b8)}.cloud-extra{font-size:12px;font-weight:600;color:#1e40af;background:#f0f4ff;padding:6px 12px;border-radius:8px;margin-bottom:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cloud-card-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0}.cloud-progress-label{font-size:12px;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.exp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 20px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;color:#1e293b;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.exp-btn:hover{background:#f8fafc;border-color:#cbd5e1}.exp-btn:disabled{opacity:.4;cursor:not-allowed}.exp-btn.primary{background:#1e40af;border-color:#1e40af;color:#fff}.exp-btn.primary:hover{background:#1d4ed8}.exp-btn.active{background:#0f766e;border-color:#0f766e;color:#fff}.exp-btn.active:hover{background:#0d9488}.exp-btn.danger{border-color:#fecaca;color:#ef4444;background:#fff}.exp-btn.danger:hover{background:#fef2f2}.scoreboard{width:100%}.scoreboard-header{display:grid;grid-template-columns:48px 1fr 80px 100px;padding:8px 16px;font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #f1f5f9}.scoreboard-row{display:grid;grid-template-columns:48px 1fr 80px 100px;padding:12px 16px;align-items:center;border-bottom:1px solid #f8fafc;transition:background .15s}.scoreboard-row:hover{background:#f8fafc}.scoreboard-row.me{background:#f0f4ff;box-shadow:inset 3px 0 #1e40af;border-radius:4px}.sb-rank{font-weight:700;font-size:1rem;text-align:center}.sb-name{font-weight:600;color:#1e293b;font-size:.9rem}.sb-jobs{color:#64748b;font-size:.85rem;text-align:center}.sb-score{font-weight:700;color:#1e40af;font-size:.95rem;text-align:right}.scoreboard-empty{text-align:center;padding:48px 0;color:#94a3b8;font-size:.95rem}@media (max-width: 768px){.experiment-section{padding:0 16px}.cloud-grid{grid-template-columns:1fr}.nn-predictions{grid-template-columns:repeat(2,1fr)}.exp-identity-bar{flex-direction:column;gap:8px}.scoreboard-header,.scoreboard-row{grid-template-columns:40px 1fr 60px 80px;font-size:.8rem}.section-card{padding:20px 16px}.section-card-header{flex-direction:column;gap:8px}.section-card-header h2{font-size:1.3rem}.exp-card h3,.cloud-card-desc{word-break:break-word}.nn-controls{gap:6px}.nn-controls .exp-btn{padding:6px 12px;font-size:.8rem}.nn-stats{gap:16px}.matmul-result p{word-break:break-word;overflow-wrap:anywhere}}:root{--color-bg-primary: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-bg-card: #ffffff;--color-text-primary: #111111;--color-text-secondary: #4b5563;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-border-light: #d1d5db;--color-accent: #111111;--color-accent-hover: #374151;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--max-width: 1200px;--navbar-height: 70px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 5px #fff3}50%{box-shadow:0 0 20px #fff6}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes heroLetterDrop{0%{opacity:0;transform:translateY(-55px) scale(1.4);filter:blur(10px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes heroGradientShift{0%{background-position:0% center}40%{background-position:50% center}to{background-position:100% center}}@keyframes heroTitleReveal{0%{opacity:0;transform:translateY(50px);filter:blur(12px);letter-spacing:.04em}to{opacity:1;transform:translateY(0);filter:blur(0);letter-spacing:.1em}}@keyframes heroSubtitleReveal{0%{opacity:0;transform:translateY(24px);letter-spacing:.05em}to{opacity:1;transform:translateY(0);letter-spacing:.2em}}@keyframes heroLineExpand{0%{opacity:0;width:0}to{opacity:1;width:60px}}.animate-fadeIn,.animate-fadeInUp,.animate-fadeInDown,.animate-fadeInLeft,.animate-fadeInRight,.animate-scaleIn{opacity:0}.animate-fadeIn.is-visible{animation:fadeIn .65s cubic-bezier(.16,1,.3,1) both}.animate-fadeInUp.is-visible{animation:fadeInUp .7s cubic-bezier(.16,1,.3,1) both}.animate-fadeInDown.is-visible{animation:fadeInDown .7s cubic-bezier(.16,1,.3,1) both}.animate-fadeInLeft.is-visible{animation:fadeInLeft .7s cubic-bezier(.16,1,.3,1) both}.animate-fadeInRight.is-visible{animation:fadeInRight .7s cubic-bezier(.16,1,.3,1) both}.animate-scaleIn.is-visible{animation:scaleIn .65s cubic-bezier(.16,1,.3,1) both}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.delay-50{animation-delay:50ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-250{animation-delay:.25s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}.transition-all{transition:all var(--transition-base)}.transition-transform{transition:transform var(--transition-base)}.transition-opacity{transition:opacity var(--transition-base)}.hover-lift{transition:transform var(--transition-base)}.hover-lift:hover{transform:translateY(-5px)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:0 0 30px #fff3}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);background-color:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{color:var(--color-text-secondary)}a{color:var(--color-text-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-text-secondary)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-xl);overflow-x:hidden}.page{min-height:calc(100vh - var(--navbar-height));padding-top:var(--spacing-3xl);padding-bottom:var(--spacing-3xl)}.page-header{text-align:center;margin-bottom:var(--spacing-3xl)}.page-title{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-md);animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) both;animation-delay:.1s}.page-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto;animation:fadeInUp .7s cubic-bezier(.16,1,.3,1) both;animation-delay:.3s}.section{padding:var(--spacing-3xl) 0}.section-title{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-xl)}.grid{display:grid;gap:var(--spacing-xl)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.container{padding:0 var(--spacing-md)}.page-title{font-size:var(--font-size-3xl)}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-light)}::selection{background:#3f538599;color:var(--color-text-primary)}
