.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-full);font-weight:600;font-family:var(--font-poppins);cursor:pointer;transition:background-color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),opacity var(--duration-fast) var(--ease);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn:not(:disabled):active{transform:translateY(0)}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.btn--md{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-lg)}.btn--primary{background-color:var(--brand-main);color:var(--text-inverse)}.btn--primary:not(:disabled):hover{background-color:var(--brand-color);box-shadow:var(--shadow-md)}.btn--secondary{background-color:var(--brand-secondary);color:var(--text-primary)}.btn--secondary:not(:disabled):hover{background-color:#f5be5d;box-shadow:var(--shadow-md)}.btn--ghost{background-color:transparent;color:var(--text-primary);border-color:var(--text-fade)}.btn--ghost:not(:disabled):hover{background-color:#0000000a;border-color:var(--text-primary)}.btn--danger{background-color:var(--brand-heart);color:var(--text-inverse)}.btn--danger:not(:disabled):hover{background-color:#c84545}.btn--link{background-color:transparent;color:var(--text-primary);padding-inline:0;text-decoration:underline;border-radius:0}.btn--link:not(:disabled):hover{transform:none;opacity:.7}.btn--full{width:100%}.btn--loading{position:relative;color:transparent!important}.btn--loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;color:var(--text-inverse);animation:btn-spin .7s linear infinite}.btn--ghost.btn--loading:after,.btn--link.btn--loading:after{color:var(--text-primary)}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn__icon{display:inline-flex;align-items:center}.btn__icon svg,.btn__icon img{width:1em;height:1em}.card{background-color:var(--text-inverse);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--duration-base) var(--ease),box-shadow var(--duration-base) var(--ease)}.card--p-none{padding:0}.card--p-sm{padding:var(--space-4)}.card--p-md{padding:var(--space-6)}.card--p-lg{padding:var(--space-8)}.card--hoverable{cursor:pointer}.card--hoverable:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.form-field{position:relative;margin-top:var(--space-6)}.form-field input,.form-field select{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--text-fade);background:transparent;border-radius:var(--radius-sm);font-size:var(--text-base);font-family:inherit;color:var(--text-primary);transition:border-color var(--duration-fast) var(--ease)}.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--text-primary)}.form-field input::placeholder{color:transparent}.form-field label{position:absolute;left:12px;top:var(--space-3);padding:0 var(--space-1);font-size:var(--text-base);color:var(--text-fade);background-color:var(--text-inverse);pointer-events:none;transition:all var(--duration-fast) var(--ease)}.form-field input:focus+label,.form-field input:not(:placeholder-shown)+label,.form-field select:focus+label,.form-field select:not([value=""]):not(:invalid)+label{top:-8px;font-size:var(--text-xs);color:var(--text-primary)}.form-field--error input,.form-field--error select{border-color:var(--brand-heart)}.form-field__eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:var(--space-1)}.form-field__eye img{width:20px;height:20px;display:block}.form-field__hint{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:var(--space-1);margin-left:var(--space-2)}.form-field__error{font-size:var(--text-xs);color:var(--brand-heart);margin-top:var(--space-1);margin-left:var(--space-2)}.form-group{display:flex;flex-direction:column}nav{display:flex;align-items:center;justify-content:space-between;background-color:var(--brand-main);padding:12px 30px;width:100%;height:10vh;position:sticky;top:0;z-index:9999;box-shadow:0 2px 8px #0000001a}nav .logo-link{display:flex;align-items:center}nav .logo-link img{width:140px;height:auto}nav .separator{display:flex;flex:1;align-items:center;justify-content:space-between}nav .nav-links{display:flex;align-items:center;gap:10px;flex:1;justify-content:center;margin-right:10px}nav .nav-links a{color:var(--text-inverse);text-decoration:none;font-size:14px;font-weight:500;padding:8px 12px;border-radius:6px;transition:all .3s ease}nav .nav-links a:hover{background-color:#ffffff1a}nav .nav-icons{display:flex;align-items:center;gap:15px}.icon-btn{display:flex;align-items:center;background:none;border:none;cursor:pointer;padding:8px;border-radius:50%;color:var(--text-inverse)}.icon-btn:hover{background-color:#ffffff1a}.profile-btn{position:relative;padding:4px}.profile-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:var(--text-inverse);font-size:14px;font-weight:600;border:2px solid var(--text-inverse)}.burger{display:none;background:none;border:none;cursor:pointer;color:var(--text-inverse);padding:8px;border-radius:var(--radius-sm);transition:background-color var(--duration-fast) var(--ease)}.burger:hover{background-color:#ffffff1a}.burger svg{display:block;width:24px;height:24px}.profile-menu-container{position:relative}.profile-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--brand-main);border-radius:12px;box-shadow:0 8px 25px #0000004d;min-width:280px;z-index:1000;padding:0;border:1px solid #3a3d4a}.profile-menu-header{padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center}.profile-menu-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:600;margin-bottom:12px;border:3px solid #ffffff}.profile-menu-info h3{color:#fff;font-size:14px;font-weight:600;margin:0}.profile-menu-divider{border:none;height:1px;background:#3a3d4a;margin:0}.profile-menu-items{padding:8px 0}.profile-menu-item{display:flex;align-items:center;padding:12px 20px;color:#fff;text-decoration:none;font-size:14px;font-weight:500;border:none;background:none;width:100%;cursor:pointer;text-align:left}.profile-menu-item:hover{background-color:#ffffff14}.logout-item:hover{background-color:#ef44441a}@media (max-width: 900px){nav{padding:12px 20px}nav .separator{justify-content:flex-end;gap:8px}nav .burger{display:block;order:2}nav .nav-icons{order:1}nav .nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--brand-main);padding:20px;box-shadow:0 4px 20px #0003;gap:15px;width:100%}nav .nav-links.active{display:flex}nav .nav-links a{padding:12px 16px;border-radius:8px;width:100%}}footer{height:auto;background-color:#1c1d28;padding:2vw 3vw;color:var(--text-inverse)}footer img{width:200px}footer .contact{display:flex;align-items:center;font-size:10px}footer .contact img{margin-right:10px;width:2vw;height:2vw;min-width:20px;min-height:20px}footer .license{width:100%;text-align:center;font-size:10px}footer .license-dark{width:100%;text-align:center;color:var(--text-inverse);font-weight:100;margin-top:3px;font-size:8px}footer .license a{color:var(--text-inverse);text-decoration:none;font-weight:700}footer .license a:hover{text-decoration:underline}footer>*{margin-top:1vw}.section-title{margin-bottom:var(--space-10)}.section-title--left{text-align:left}.section-title--center{text-align:center}.section-title__eyebrow{font-family:var(--font-bebas-neue);letter-spacing:.05em;color:var(--text-tertiary);text-transform:uppercase;margin-bottom:var(--space-2)}.section-title__title{font-family:var(--font-bebas-neue);font-weight:400;letter-spacing:.02em;text-transform:uppercase;line-height:1.05;color:var(--text-primary)}.section-title--sm .section-title__eyebrow{font-size:var(--text-base)}.section-title--sm .section-title__title{font-size:var(--text-2xl)}.section-title--md .section-title__eyebrow{font-size:var(--text-xl)}.section-title--md .section-title__title{font-size:var(--text-4xl)}.section-title--lg .section-title__eyebrow{font-size:var(--text-2xl)}.section-title--lg .section-title__title{font-size:var(--text-5xl)}@media (max-width: 640px){.section-title{margin-bottom:var(--space-8)}.section-title--md .section-title__title{font-size:var(--text-3xl)}.section-title--lg .section-title__title{font-size:var(--text-4xl)}}.feedback{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);gap:var(--space-4);text-align:center}.feedback--full{min-height:60vh}.feedback__spinner{width:40px;height:40px;border:3px solid var(--text-fade);border-top-color:var(--brand-secondary);border-radius:50%;animation:feedback-spin .8s linear infinite}.feedback__text{color:var(--text-tertiary);font-size:var(--text-base)}@keyframes feedback-spin{to{transform:rotate(360deg)}}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-12) var(--space-6);gap:var(--space-3)}.empty-state__icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--radius-full);background-color:var(--background-secondary);color:var(--text-tertiary);margin-bottom:var(--space-2)}.empty-state__icon svg{width:32px;height:32px}.empty-state__title{font-size:var(--text-xl);font-weight:600;color:var(--text-primary)}.empty-state__desc{color:var(--text-tertiary);max-width:480px}.empty-state__action{margin-top:var(--space-3)}.details{width:100%;max-width:460px;height:75%;z-index:2}.details .text{display:flex;flex-direction:column;justify-content:space-between;margin-top:100px}.details .text>*{margin:20px 0}.details img{width:70%}.details .text h1{font-size:39px;line-height:46.9px;font-weight:700;font-family:var(--font-zen-kaku-gothic-antique)!important}.details .text p{font-size:16px;font-weight:100;line-height:28.2px;font-family:var(--font-zen-kaku-gothic-antique)!important}.carousel-indicators{display:flex;gap:20px;align-items:center}.carousel-indicators .indicator{width:40px;height:1px;border:solid var(--text-inverse-secondary) 1px;transition:width .5s ease,border .5s ease}.carousel-indicators .indicator.active{width:50px;border:solid var(--text-inverse) 3px}@media (max-width: 900px){.details{display:none}}.auth-page{display:flex;justify-content:center;align-items:stretch;min-height:100vh;background-color:#1c1d28;background-size:cover;background-repeat:no-repeat;background-position:center;color:var(--text-inverse);position:relative;padding:var(--space-6);gap:var(--space-10)}.auth-page--login{background-image:url(/assets/Login-Background-CmMEyxo0.png)}.auth-page--register{background-image:url(/assets/Registration-Background-CKoqtcDr.png)}.auth-page:after{position:absolute;content:"";inset:0;background:linear-gradient(to top right,#212121d6 60%,#4242423d);opacity:.7;pointer-events:none;z-index:1}.auth-page>*{position:relative;z-index:2;margin-top:auto}.auth-container{width:100%;max-width:460px;padding:var(--space-8);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-lg);background-color:var(--text-inverse);color:var(--text-primary)}.auth-container h1{font-weight:500;font-size:var(--text-2xl);margin-top:var(--space-2)}.auth-container>p:first-child{font-size:var(--text-xs);letter-spacing:.1em;color:var(--text-tertiary);text-transform:uppercase}.auth-container form{display:flex;flex-direction:column}.auth-container .auth-actions{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.auth-container .auth-meta{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-4);font-size:var(--text-sm)}.auth-container .auth-meta a{color:var(--text-primary);font-weight:500}.auth-container .auth-meta a:hover{text-decoration:underline}.auth-container .auth-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-8) 0 var(--space-4);color:var(--text-tertiary);font-size:var(--text-sm)}.auth-container .auth-divider:before,.auth-container .auth-divider:after{content:"";flex:1;height:1px;background-color:var(--text-fade)}.auth-container .auth-footer{text-align:center;font-size:var(--text-sm);display:flex;justify-content:center;align-items:center;gap:var(--space-1)}.auth-container .auth-footer a{color:var(--text-primary);font-weight:700}@media (max-width: 900px){.auth-page{padding:0;gap:0;flex-direction:column;justify-content:flex-end}.auth-container{max-width:100%;margin:0}}@media (max-width: 480px){.auth-container{padding:var(--space-6)}}.qr-scanner-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:var(--z-modal);backdrop-filter:blur(2px);padding:var(--space-4)}.qr-scanner{background:var(--text-inverse);border-radius:var(--radius-lg);width:100%;max-width:480px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-xl)}.qr-scanner__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid #eee}.qr-scanner__header h2{margin:0;font-size:var(--text-xl);font-weight:600;color:var(--text-primary)}.qr-scanner__close{background:none;border:none;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-full);color:var(--text-tertiary);display:flex}.qr-scanner__close:hover{background:#f5f5f5;color:var(--text-primary)}.qr-scanner__tabs{display:flex;border-bottom:1px solid #eee}.qr-scanner__tab{flex:1;background:none;border:none;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:600;color:var(--text-tertiary);cursor:pointer;border-bottom:2px solid transparent;transition:all var(--duration-fast) var(--ease)}.qr-scanner__tab.is-active{color:var(--text-primary);border-bottom-color:var(--brand-secondary)}.qr-scanner__tab:hover{color:var(--text-primary)}.qr-scanner__body{padding:var(--space-5) var(--space-6);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-4);align-items:center}.qr-scanner__region{width:100%;max-width:320px;aspect-ratio:1 / 1;background:#000;border-radius:var(--radius-md);overflow:hidden;display:flex;align-items:center;justify-content:center}.qr-scanner__region video{width:100%!important;height:100%!important;object-fit:cover}.qr-scanner__hint{font-size:var(--text-sm);color:var(--text-tertiary);text-align:center;max-width:320px}.qr-scanner__upload{display:flex;flex-direction:column;gap:var(--space-3);align-items:center}.qr-scanner__upload-label{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);background:var(--brand-main);color:var(--text-inverse);border-radius:var(--radius-full);font-weight:600;cursor:pointer;font-size:var(--text-sm)}.qr-scanner__upload-label:hover{background:var(--brand-color)}.qr-scanner__error{width:100%;padding:var(--space-3) var(--space-4);background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:var(--radius-md);font-size:var(--text-sm)}.qr-scanner__footer{padding:var(--space-4) var(--space-6);display:flex;justify-content:flex-end;border-top:1px solid #eee}.receipt-doc{position:relative;background:var(--text-inverse);border:1px solid #e8e4d3;border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6) var(--space-4);max-width:560px;width:100%;margin-inline:auto;box-shadow:var(--shadow-sm);font-family:var(--font-poppins);color:var(--text-primary)}.receipt-doc--compact{border:none;box-shadow:none;padding:0;max-width:none}.receipt-doc__qr{position:absolute;top:var(--space-5);right:var(--space-5);background:var(--text-inverse);padding:4px;border:1px solid #eee;border-radius:var(--radius-sm)}.receipt-doc__qr canvas{display:block}.receipt-doc__header{padding-right:calc(140px + var(--space-4));margin-bottom:var(--space-5)}.receipt-doc__logo{font-family:var(--font-bebas-neue);font-size:var(--text-5xl);letter-spacing:.06em;color:var(--brand-main);line-height:.95;margin:0}.receipt-doc__tagline{font-size:var(--text-sm);color:var(--text-tertiary);letter-spacing:.02em;margin-top:var(--space-1)}.receipt-doc__amount-block{margin-bottom:var(--space-3)}.receipt-doc__amount{font-size:clamp(var(--text-3xl),5vw,var(--text-4xl));font-weight:800;letter-spacing:-.02em;color:var(--brand-main);line-height:1;margin-bottom:var(--space-1)}.receipt-doc__lead{font-size:var(--text-base);color:var(--text-secondary);line-height:1.4}.receipt-doc__lead strong{color:var(--text-primary);font-weight:600}.receipt-doc__date{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:2px}.receipt-doc__divider{border:none;border-top:1px solid #eee;margin:var(--space-3) 0}.receipt-doc__meta{display:flex;flex-direction:column;gap:var(--space-2)}.receipt-doc__meta-row{display:grid;grid-template-columns:90px 1fr;align-items:baseline;gap:var(--space-3)}.receipt-doc__meta-row dt{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary)}.receipt-doc__meta-row dd{font-size:var(--text-sm);color:var(--text-primary);margin:0;word-break:break-all;line-height:1.4}.receipt-doc__mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.receipt-doc__copyable{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.receipt-doc__copy{background:none;border:1px solid var(--text-fade);color:var(--text-tertiary);font-size:9px;padding:1px 6px;border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;letter-spacing:.04em;text-transform:uppercase;line-height:1.4}.receipt-doc__copy:hover{background:var(--brand-main);color:var(--text-inverse);border-color:var(--brand-main)}.receipt-doc__proof-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:none;padding:var(--space-1) 0;cursor:pointer;font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.receipt-doc__chevron{font-size:10px;color:var(--text-tertiary);transition:transform var(--duration-fast) var(--ease)}.receipt-doc__proof-body{margin-top:var(--space-2);padding:var(--space-3);background:#faf6ec;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:var(--space-2)}.receipt-doc__proof-row{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:var(--space-2);align-items:center}.receipt-doc__proof-label{grid-row:1;grid-column:1 / -1;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:2px}.receipt-doc__proof-value{grid-row:2;grid-column:1;word-break:break-all;font-size:10px;line-height:1.4}.receipt-doc__proof-row .receipt-doc__copy{grid-row:2;grid-column:2;align-self:start}.receipt-doc--capturing .receipt-doc__no-capture,.receipt-doc--capturing .receipt-doc__chevron{display:none!important}.receipt-doc--capturing .receipt-doc__proof-toggle{cursor:default;padding:0}.receipt-doc__actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid #eee}@media (max-width: 720px){.receipt-doc__qr canvas{width:108px!important;height:108px!important}.receipt-doc__header{padding-right:calc(108px + var(--space-3))}.receipt-doc__logo{font-size:var(--text-4xl)}}@media (max-width: 500px){.receipt-doc{padding:var(--space-5) var(--space-4)}.receipt-doc__qr{position:static;margin-bottom:var(--space-4);display:inline-block;align-self:flex-start}.receipt-doc__qr canvas{width:120px!important;height:120px!important}.receipt-doc__header{padding-right:0}.receipt-doc__logo{font-size:var(--text-4xl)}.receipt-doc__meta-row{grid-template-columns:1fr;gap:0}.receipt-doc__meta-row dt{font-size:9px}.receipt-doc__amount{font-size:var(--text-3xl)}.receipt-doc__actions{flex-direction:column;align-items:stretch}}.payment-success{padding:var(--space-12) 0;min-height:70vh;background-color:var(--background-main)}.payment-success__banner{display:flex;align-items:center;gap:var(--space-4);background:var(--text-inverse);border:1px solid #e8e4d3;border-left:4px solid var(--brand-secondary);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6);max-width:640px;margin-inline:auto}.payment-success__check{width:32px;height:32px;flex-shrink:0}.payment-success__title{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin:0}.payment-success__subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0}.payment-success__nav{display:flex;justify-content:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap}@media (max-width: 600px){.payment-success{padding:var(--space-8) 0}}.leaderboard-page{padding:var(--space-12) 0 var(--space-16);background-image:url(/assets/world-map-draw-BkcPpLjf.png);background-size:cover;background-position:center;background-repeat:no-repeat;min-height:80vh}.podium-wrap{margin:var(--space-20) auto var(--space-10);max-width:800px}.podium{display:flex;justify-content:center;align-items:flex-end;border-bottom:2px solid var(--text-primary)}.podium-item{display:flex;flex-direction:column;align-items:center;position:relative;flex:1;max-width:240px}.podium-crown{position:absolute;top:-130px;color:var(--brand-secondary);filter:drop-shadow(0 4px 8px rgba(0,0,0,.25));display:inline-flex}.podium-crown svg{width:48px;height:48px}.podium-base{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:var(--space-4);position:relative;color:var(--text-inverse)}.podium-base--first{background:var(--brand-secondary);height:300px;border-radius:var(--space-12) var(--space-12) 0 0}.podium-base--first .podium-score{color:var(--text-primary)}.podium-base--second{background:var(--brand-main);height:200px;border-radius:var(--space-5) 0 0 0}.podium-base--third{background:var(--brand-main);height:200px;border-radius:0 var(--space-5) 0 0}.podium-avatar-wrap{position:absolute;top:-50%}.podium-avatar{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;font-size:var(--text-2xl);font-weight:700;color:var(--text-inverse);border:4px solid var(--text-inverse);box-shadow:var(--shadow-lg)}.podium-avatar--winner{width:130px;height:130px;font-size:var(--text-3xl);background:linear-gradient(135deg,#fbbf24,#f59e0b)}.podium-base--first .podium-avatar-wrap{top:-38%}.podium-info{text-align:center;margin-top:auto}.podium-info h3{font-size:var(--text-base);font-weight:600}.podium-score{font-size:var(--text-2xl);font-weight:800;font-family:var(--font-bebas-neue);margin-top:var(--space-1)}.podium-username{font-size:var(--text-xs);opacity:.7}.podium-position{position:absolute;bottom:var(--space-2);font-size:var(--text-3xl);font-weight:800;color:var(--text-inverse);text-shadow:0 2px 4px rgba(0,0,0,.3)}.ranking-list{list-style:none;padding:var(--space-8);background:var(--brand-main);border-radius:var(--radius-xl);max-width:800px;margin:0 auto;box-shadow:var(--shadow-lg)}.rank-row{display:flex;align-items:center;padding:var(--space-2);gap:var(--space-3);color:var(--text-inverse);border-radius:var(--radius-md);transition:background-color var(--duration-fast) var(--ease)}.rank-row:hover{background-color:#ffffff0d}.rank-row__num{width:64px;text-align:center;font-size:var(--text-3xl);font-weight:700;font-family:var(--font-bebas-neue);flex-shrink:0}.rank-row__main{display:flex;align-items:center;gap:var(--space-3);flex:1;padding:var(--space-3)}.rank-row__avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--text-sm);flex-shrink:0;border:2px solid var(--text-inverse)}.rank-row__info{flex:1;min-width:0}.rank-row__info h4{font-size:var(--text-base);font-weight:600}.rank-row__info p{font-size:var(--text-sm);opacity:.7}.rank-row__score{font-weight:700;font-size:var(--text-base)}.rank-row__meta{font-size:var(--text-xs);opacity:.6;text-align:right;min-width:80px}.leaderboard-cta{display:flex;justify-content:center;margin-top:var(--space-12)}@media (max-width: 768px){.podium{flex-direction:column;align-items:stretch;gap:var(--space-3);border-bottom:none}.podium-item{max-width:100%}.podium-item--first{order:1}.podium-item--second{order:2}.podium-item--third{order:3}.podium-base--first,.podium-base--second,.podium-base--third{height:180px;border-radius:var(--radius-lg)}.podium-avatar-wrap,.podium-base--first .podium-avatar-wrap{top:-50%}.podium-avatar,.podium-avatar--winner{width:100px;height:100px;font-size:var(--text-2xl)}.podium-wrap{margin-top:var(--space-12)}.podium-crown{top:-160px}}@media (max-width: 480px){.rank-row__main{padding:var(--space-2);flex-wrap:wrap}.rank-row__meta{display:none}}.event-card{width:100%;max-width:1100px;height:360px;background-color:var(--text-inverse);color:var(--text-secondary);border-radius:30px;overflow:hidden;display:flex;text-align:left;margin:40px 0;transition:transform .3s ease,box-shadow .3s ease}.event-card .details{width:40%;padding:30px;position:relative}.event-card .details .header{display:flex;justify-content:space-between}.event-card .details .header .title h2{font-size:20px;font-weight:700}.event-card .details .header .title .status{color:var(--text-tertiary);text-transform:uppercase;font-size:14px}.event-card .details .header .date{text-align:center}.event-card .details .description{margin-top:10px;font-size:14px}.event-card .details .infos{display:flex;align-items:center;font-size:14px;font-weight:500;margin-top:10px}.event-card .details .infos img{width:30px;height:30px;margin-right:10px}.event-card .details .engagement-section{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.event-card .details .engagement-section img.like{width:20px;cursor:pointer}.event-card .details .engagement-section button.view-details{width:130px;padding:10px;background-color:var(--brand-secondary);border:none;border-radius:20px;font-weight:700;font-size:.9rem}.event-card img{width:60%;height:100%;max-width:100%;object-fit:cover}.event-card:hover{transform:translateY(-10px);box-shadow:0 10px 20px #00000026}@media screen and (max-width: 1024px){.event-card{flex-direction:column-reverse;height:auto}.event-card img{width:100%;height:200px}.event-card .details{width:100%;padding:20px}}.list-page{padding:var(--space-12) 0 var(--space-16);background-color:var(--background-main);min-height:70vh}.list-page__lead{text-align:center;color:var(--text-tertiary);margin-top:calc(-1 * var(--space-6));margin-bottom:var(--space-10);font-size:var(--text-base)}.filter-bar{display:flex;flex-direction:column;gap:var(--space-5);align-items:center;margin-bottom:var(--space-10)}.search-input{display:flex;align-items:center;gap:var(--space-3);background-color:var(--text-inverse);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);width:100%;max-width:500px;box-shadow:var(--shadow-sm)}.search-input img{width:18px;height:18px;opacity:.6}.search-input input{flex:1;border:none;outline:none;background:transparent;font-size:var(--text-sm);font-family:inherit}.chip-row{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center;max-width:800px}.chip{background-color:var(--text-inverse);border:1px solid var(--text-fade);border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);cursor:pointer;font-family:inherit;color:var(--text-primary);transition:all var(--duration-fast) var(--ease)}.chip:hover{border-color:var(--text-primary)}.chip--active{background-color:var(--brand-secondary);border-color:var(--brand-secondary);font-weight:600}.event-list{display:flex;flex-direction:column;gap:var(--space-6);align-items:center;max-width:1100px;margin-inline:auto}@media (max-width: 640px){.list-page{padding:var(--space-8) 0 var(--space-12)}.filter-bar{margin-bottom:var(--space-8)}}.dashboard{padding:var(--space-12) 0 var(--space-16);background-color:var(--background-main);min-height:70vh}.dashboard__header{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-6);flex-wrap:wrap;margin-bottom:var(--space-10)}.dashboard__header h1{font-family:var(--font-bebas-neue);font-size:var(--text-4xl);letter-spacing:.02em}.dashboard__header p{color:var(--text-tertiary);margin-top:var(--space-1)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-5);margin-bottom:var(--space-12)}.stat-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.stat-value{font-size:var(--text-3xl);font-weight:700;margin-top:var(--space-2)}.dashboard__section-title{font-family:var(--font-bebas-neue);font-size:var(--text-3xl);margin-bottom:var(--space-5)}.donation-list{display:flex;flex-direction:column;gap:var(--space-3)}.donation-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.donation-row__amount{text-align:right}.donation-row__money{font-weight:700;font-size:var(--text-lg)}.donation-row__sub{font-size:var(--text-xs);color:var(--text-tertiary)}@media (max-width: 640px){.dashboard{padding:var(--space-8) 0 var(--space-12)}.dashboard__header{flex-direction:column;align-items:stretch}.donation-row{flex-direction:column;align-items:flex-start}.donation-row__amount{text-align:left}}.donation-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:10000;backdrop-filter:blur(2px)}.donation-modal{background:#fff;border-radius:20px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 15px 50px #0003}.donation-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 0;border-bottom:1px solid #e5e5e5;margin-bottom:24px}.donation-modal .modal-header h2{font-size:24px;font-weight:600;color:var(--text-primary)}.donation-modal .close-btn{background:none;border:none;font-size:28px;color:#666;cursor:pointer;width:32px;height:32px;border-radius:50%}.donation-modal .modal-content{padding:0 24px 24px}.donation-modal .donation-target{text-align:center;margin-bottom:24px;padding:16px;background-color:var(--brand-secondary);border-radius:12px}.donation-modal .donation-target h3{font-size:18px;font-weight:600;color:var(--text-primary)}.donation-modal .donation-target p{font-size:14px;color:var(--text-secondary);margin-top:8px}.donation-modal .message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.donation-modal .message.success{background:#d4edda;color:#155724}.donation-modal .message.error{background:#f8d7da;color:#721c24}.donation-modal .amount-section{margin-bottom:24px}.donation-modal .amount-section label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary)}.donation-modal .amount-section input{width:100%;padding:12px 16px;border:2px solid #e5e5e5;border-radius:8px;font-size:16px;margin-bottom:16px}.donation-modal .amount-section input:focus{outline:none;border-color:var(--brand-main)}.donation-modal .quick-amounts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.donation-modal .quick-amounts button{padding:12px 16px;border:2px solid var(--brand-main);background:#fff;color:var(--brand-main);border-radius:8px;font-weight:600}.donation-modal .quick-amounts button:hover{background:var(--brand-main);color:#fff}.donation-modal .payment-methods{margin-bottom:24px}.donation-modal .payment-methods h4{margin-bottom:12px;color:var(--text-primary);font-size:16px;font-weight:600}.donation-modal .payment-options{display:flex;gap:8px;flex-wrap:wrap}.donation-modal .payment-method{padding:6px 12px;background:#f8f9fa;border:1px solid #e5e5e5;border-radius:20px;font-size:12px;color:var(--text-secondary)}.donation-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end}.donation-modal .cancel-btn{padding:12px 24px;border:2px solid #e5e5e5;background:#fff;color:var(--text-secondary);border-radius:8px;font-weight:600}.donation-modal .donate-btn{padding:12px 24px;border:none;background:var(--brand-main);color:#fff;border-radius:8px;font-weight:600;min-width:120px}.donation-modal .donate-btn:disabled{opacity:.6;cursor:not-allowed}.donation-modal .guest-banner{background:#fef9e7;border:1px solid var(--brand-secondary);border-radius:var(--radius-md);padding:10px 14px;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:20px}.donation-modal .guest-banner__link{background:none;border:none;padding:0;color:var(--brand-main);font-weight:600;text-decoration:underline;cursor:pointer}.donation-modal .guest-fields{margin-bottom:24px;padding:16px;background:#faf6ec;border-radius:var(--radius-md)}.donation-modal .anonymous-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:600;font-size:var(--text-sm)}.donation-modal .anonymous-toggle input[type=checkbox]{width:18px;height:18px}.donation-modal .guest-fields__hint{font-size:var(--text-xs);color:var(--text-tertiary);margin:6px 0 14px}.donation-modal .form-row{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.donation-modal .form-row label{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.donation-modal .form-row input{width:100%;padding:10px 12px;border:2px solid #e5e5e5;border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:inherit}.donation-modal .form-row input:focus{outline:none;border-color:var(--brand-main)}.charity-card{width:100%;max-width:400px;height:580px;position:relative;overflow:hidden;border-radius:15px;transition:transform .3s ease,box-shadow .3s ease;color:var(--text-primary);background-color:var(--text-inverse);display:flex;flex-direction:column}.charity-card:hover{transform:translateY(-10px);box-shadow:0 10px 20px #00000026}.charity-card .background{width:100%;height:266px;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative}.charity-card .background:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:100%;background-color:#000;opacity:.4;z-index:0}.charity-card .background .categories{position:absolute;bottom:16px;left:0;right:0;text-align:left;z-index:1;padding:0 1.6vw}.charity-card .background .categories p{display:inline-block;margin:2px;font-size:10px;border:solid var(--brand-secondary) 1px;border-radius:105px;padding:1.15px 10.51px;color:var(--text-inverse);background-color:var(--text-fade)}.charity-card .description{text-align:left;margin:24px 20px;flex:1;display:flex;flex-direction:column}.charity-card .description .text-wrapper{display:flex;justify-content:space-between}.charity-card .description .text-wrapper h3{font-weight:600;font-size:22px}.charity-card .description .text-wrapper img{width:24px;height:24px}.charity-card .description p.charity-description{font-size:14px;color:var(--text-secondary);margin-bottom:12px}.charity-card .description .contribution{display:flex;gap:5px;align-items:center;color:var(--text-primary);font-size:14px}.charity-card .description .contribution img{width:26px;height:26px}.charity-card .description .engagements{margin-top:auto;display:flex;justify-content:space-between;align-items:center}.charity-card .description .engagements img.like{width:26px;height:24px;cursor:pointer}.charity-card .description .engagements .buttons{display:flex;gap:5px}.charity-card .description .engagements .buttons button{background-color:var(--brand-secondary);padding:10px 20px;border:none;display:flex;justify-content:center;align-items:center}.charity-card .description .engagements .buttons .donate{border-radius:50%;width:50px;height:50px;padding:0}.charity-card .description .engagements .buttons .donate img{width:25px}.charity-card .description .engagements .buttons .volunteer{border-radius:23px;font-weight:500;text-decoration:underline;font-size:13px}.home .section{padding:var(--space-16) 0}.home .section__cta{display:flex;justify-content:center;margin-top:var(--space-10)}.home .hero{min-height:80vh;color:var(--text-inverse);background-color:#1c1d28;background-image:linear-gradient(to bottom,#1c1d2873,#1c1d28a6),url(/assets/hanna-morris-Eu_jjK6Z67Q-unsplash-scaled-C0M07Lge.png);background-size:cover;background-repeat:no-repeat;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center}.home .hero__inner{max-width:720px;padding:var(--space-12) var(--space-6)}.home .hero h1{font-family:var(--font-bebas-neue);font-size:clamp(3rem,10vw,var(--text-display));letter-spacing:.04em;line-height:1}.home .hero p{font-size:clamp(var(--text-base),2vw,var(--text-xl));margin-top:var(--space-4);opacity:.92}.home .hero__cta{display:flex;justify-content:center;gap:var(--space-3);margin-top:var(--space-8);flex-wrap:wrap}.home .hero__cta .btn--ghost{color:var(--text-inverse);border-color:#ffffff4d}.home .hero__cta .btn--ghost:hover{background-color:#ffffff1a;border-color:#fff9}.section--world{background-image:url(/assets/world-map-draw-BkcPpLjf.png);background-size:cover;background-position:center}.value-prop{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center}.value-prop__images{position:relative;aspect-ratio:4 / 5}.value-prop__img{border-radius:var(--radius-lg);object-fit:cover}.value-prop__img--main{position:absolute;top:0;left:0;width:85%;height:80%}.value-prop__img--overlay{position:absolute;bottom:0;right:0;width:55%;height:55%;box-shadow:var(--shadow-lg)}.floating-btn{position:absolute;background-color:var(--brand-secondary);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:transform var(--duration-base) var(--ease)}.floating-btn:hover{transform:scale(1.1)}.floating-btn img{width:60%;height:60%}.floating-btn--top{width:70px;height:70px;top:60px;left:-10px}.floating-btn--mid{width:50px;height:50px;top:20px;left:60px}.value-prop__copy{text-align:left}.value-prop__eyebrow{color:var(--text-tertiary);font-size:var(--text-lg);margin-bottom:var(--space-2)}.value-prop__title{font-size:var(--text-4xl);line-height:1.15;font-weight:500}.value-prop__copy hr{width:60px;border:2px solid var(--text-tertiary);border-radius:var(--radius-full);margin:var(--space-4) 0}.value-prop__body{color:var(--text-tertiary);line-height:1.6}.value-prop__list{list-style:none;margin:var(--space-6) 0;padding:0}.value-prop__list li{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-3) 0;font-weight:600}.value-prop__list img{width:18px;height:18px}.section--spotlight{padding-block:0}.spotlight{position:relative;min-height:50vh;background-image:url(/assets/spotlightCauses-rJMKf9nd.png);background-size:cover;background-position:center;background-color:var(--brand-color);border-radius:var(--radius-lg);overflow:hidden}.spotlight__details{position:absolute;bottom:0;right:0;max-width:min(560px,80vw);padding:var(--space-8);background-color:var(--brand-secondary-light);border-top-left-radius:43px;border-bottom:25px solid var(--brand-secondary)}.spotlight__details h3{font-weight:600;font-size:var(--text-2xl);margin-bottom:var(--space-3)}.spotlight__details p{font-size:var(--text-base);color:var(--text-secondary)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-8);justify-items:center}.event-list{display:flex;flex-direction:column;gap:var(--space-6);align-items:center}@media (max-width: 900px){.home .section{padding:var(--space-12) 0}.value-prop{grid-template-columns:1fr;gap:var(--space-8)}.value-prop__images{aspect-ratio:16 / 11;max-width:100%}.spotlight__details{max-width:100%;padding:var(--space-6)}}@media (max-width: 640px){.home .hero{min-height:70vh}.floating-btn--top{width:50px;height:50px}.floating-btn--mid{width:36px;height:36px;top:6px;left:46px}.value-prop__title{font-size:var(--text-3xl)}}.detail-page{background-color:var(--background-main);min-height:80vh}.detail-page__cover{width:100%;height:320px;background-size:cover;background-position:center;background-color:var(--brand-color);position:relative}.detail-page__overlay{position:absolute;inset:0;background:linear-gradient(180deg,#0000001a,#00000080)}.detail-page__body{background:var(--text-inverse);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-10) var(--space-8) var(--space-12);margin-top:-60px;position:relative;z-index:2;box-shadow:var(--shadow-lg)}.detail-page__title{font-family:var(--font-bebas-neue);font-size:clamp(var(--text-3xl),5vw,var(--text-5xl));letter-spacing:.02em;line-height:1.05}.detail-page__meta{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);color:var(--text-tertiary);font-size:var(--text-sm);margin:var(--space-3) 0;padding:0}.detail-page__chips{display:flex;gap:var(--space-2);flex-wrap:wrap;margin:var(--space-4) 0}.detail-page__chip{font-size:var(--text-xs);background:var(--brand-secondary);border-radius:var(--radius-full);padding:var(--space-1) var(--space-3);font-weight:600}.detail-page__description{color:var(--text-secondary);line-height:1.7;margin:var(--space-5) 0;font-size:var(--text-base)}.detail-page__actions{display:flex;gap:var(--space-3);flex-wrap:wrap;margin:var(--space-6) 0 var(--space-10)}.detail-page__section-title{margin-top:var(--space-10);margin-bottom:var(--space-5);font-family:var(--font-bebas-neue);font-size:var(--text-3xl);letter-spacing:.02em}.detail-page__empty{color:var(--text-tertiary);padding:var(--space-6) 0}@media (max-width: 640px){.detail-page__cover{height:220px}.detail-page__body{padding:var(--space-6) var(--space-4) var(--space-10)}}:root{--background-main: #FAF3DD;--background-secondary: #E4DDC7;--brand-main: #1C1D28;--brand-color: #2B303B;--brand-secondary: #FCD384;--brand-secondary-light: rgba(255, 245, 235, .9);--brand-heart: #E25656;--text-primary: #131313;--text-secondary: #2A2A2A;--text-tertiary: #615858;--text-fade: rgba(87, 81, 74, .55);--text-inverse: #FEFFF6;--text-inverse-secondary: #D9D9D9;--success: #22C55E;--warning: #F59E0B;--error: #EF4444;--info: #3B82F6;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--radius-card: 15px;--radius-button: 23px;--radius-pill: 105px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-card: 0 4px 15px rgba(0, 0, 0, .1);--shadow-card-hover: 0 10px 30px rgba(0, 0, 0, .15);--transition-fast: .1s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 100;--z-sticky: 500;--z-modal-backdrop: 900;--z-modal: 1000;--z-nav: 9999;--z-toast: 10000;--z-tooltip: 10001;--font-poppins: "Poppins", system-ui, -apple-system, sans-serif;--font-bebas-neue: "Bebas Neue", sans-serif;--font-kadwa: "Kadwa", serif;--font-outfit: "Outfit", sans-serif;--font-zen: "Zen Kaku Gothic Antique", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-hero: 100px;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--navbar-height: 10vh;--container-max: 1200px;--card-max-width: 400px;--card-height: 580px;--event-card-max-width: 1100px;--event-card-height: 360px}[data-theme=dark]{--background-main: #1C1D28;--background-secondary: #2A2B38;--text-primary: #FEFFF6;--text-secondary: #B0B0B0;--text-inverse: #131313}:root{--background-main: #FAF3DD;--background-secondary: #E4DDC7;--brand-main: #1C1D28;--brand-color: #2B303B;--brand-secondary: #FCD384;--brand-secondary-light: rgba(255, 245, 235, .9);--brand-heart: #E25656;--text-primary: #131313;--text-secondary: #2A2A2A;--text-tertiary: #615858;--text-fade: rgba(87, 81, 74, .55);--text-inverse: #FEFFF6;--text-inverse-secondary: #D9D9D9;--font-poppins: "Poppins", system-ui, -apple-system, sans-serif;--font-bebas-neue: "Bebas Neue", "Poppins", sans-serif;--font-kadwa: "Kadwa", serif;--font-zen-kaku-gothic-antique: "Zen Kaku Gothic Antique", serif;--font-outfit: "Outfit", sans-serif}*{margin:0;padding:0;box-sizing:border-box;font-family:var(--font-poppins);scroll-behavior:smooth}body,html,#root{background-color:var(--background-main);min-height:100%;width:100%}button:hover{filter:brightness(.9);cursor:pointer}a{text-decoration:none;color:inherit}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-display: 4rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 30px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 10px 24px rgba(0,0,0,.12);--shadow-xl: 0 20px 40px rgba(0,0,0,.16);--container-max: 1200px;--container-narrow: 720px;--container-wide: 1400px;--z-base: 1;--z-sticky: 100;--z-nav: 1000;--z-modal: 10000;--z-toast: 11000;--ease: cubic-bezier(.4, 0, .2, 1);--duration-fast: .15s;--duration-base: .25s;--duration-slow: .4s}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-6)}.container--narrow{max-width:var(--container-narrow)}.container--wide{max-width:var(--container-wide)}@media (max-width: 640px){.container{padding-inline:var(--space-4)}}.stack>*+*{margin-top:var(--stack-gap, var(--space-4))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*:focus-visible{outline:2px solid var(--brand-secondary);outline-offset:2px}@tailwind base;@tailwind components;@tailwind utilities;*{margin:0;padding:0;box-sizing:border-box;scroll-behavior:smooth}html{font-size:16px}body{font-family:var(--font-sans);background-color:var(--background-main);color:var(--text-primary);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;line-height:var(--leading-tight)}@layer utilities{.font-display{font-family:var(--font-display)}.font-serif{font-family:var(--font-serif)}.text-hero{font-size:var(--text-hero)}.card-hover{transition:transform var(--transition-slow),box-shadow var(--transition-slow)}.card-hover:hover{transform:translateY(-10px);box-shadow:var(--shadow-card-hover)}.btn-hover:hover{filter:brightness(.9)}.img-overlay{position:relative}.img-overlay:after{content:"";position:absolute;inset:0;background-color:#0006;filter:contrast(.3)}.truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.truncate-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.container-main{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-lg)}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-track{background:var(--background-secondary);border-radius:var(--radius-full)}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--brand-main);border-radius:var(--radius-full)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}}@layer components{.btn-primary{@apply px-6 py-3 rounded-lg font-medium transition-all duration-200;background-color:var(--brand-secondary);color:var(--brand-main)}.btn-primary:hover{filter:brightness(.9)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{@apply px-6 py-3 rounded-lg font-medium transition-all duration-200;background-color:var(--brand-main);color:var(--text-inverse)}.btn-secondary:hover{filter:brightness(1.1)}.btn-outline{@apply px-6 py-3 rounded-lg font-medium transition-all duration-200 border-2;border-color:var(--brand-main);color:var(--brand-main);background:transparent}.btn-outline:hover{background-color:var(--brand-main);color:var(--text-inverse)}.input-field{@apply w-full px-4 py-3 rounded-lg border transition-all duration-200;border-color:var(--background-secondary);background-color:#fff}.input-field:focus{outline:none;border-color:var(--brand-secondary);box-shadow:0 0 0 3px #fcd38433}.card{@apply rounded-xl overflow-hidden;background-color:#fff;box-shadow:var(--shadow-md)}.badge{@apply inline-flex items-center px-3 py-1 rounded-full text-sm font-medium;}.badge-primary{background-color:var(--brand-secondary);color:var(--brand-main)}.badge-outline{border:1px solid var(--brand-secondary);color:var(--brand-main);background:transparent}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 500px){:root{--text-hero: 15vw;--navbar-height: 8vh}body{font-size:14px}}
