@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.app{width:100%;min-height:100vh}.btn{font-family:inherit;font-weight:500;border:none;border-radius:clamp(.375rem,.5rem,.625rem);cursor:pointer;transition:all .2s ease-in-out;display:inline-flex;align-items:center;justify-content:center;gap:clamp(.375rem,.5rem,.75rem);white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.btn:disabled{cursor:not-allowed;opacity:.6}.btn--primary{background:linear-gradient(135deg,#7c3aed,#a78bfa,#ec4899);background-size:200% 200%;color:#fff;box-shadow:0 4px 14px #7c3aed66,inset 0 1px #fff3;position:relative;overflow:hidden}.btn--primary:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn--primary:hover:not(:disabled){background-position:right center;box-shadow:0 8px 20px #7c3aed80,inset 0 1px #fff3}@media (hover: hover) and (pointer: fine){.btn--primary:hover:not(:disabled){transform:translateY(-2px)}.btn--primary:hover:not(:disabled):before{width:300px;height:300px}}@media (hover: none) and (pointer: coarse){.btn--primary:active:not(:disabled){transform:scale(.98)}}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn--secondary{background:var(--bg-overlay);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:all .2s ease-in-out}.btn--secondary:hover:not(:disabled){background:var(--bg-card);border-color:var(--border-color)}.btn--ghost{background:transparent;color:#6b7280}.btn--ghost:hover:not(:disabled){background:#f3f4f6;color:#374151}.btn--sm{padding:clamp(.5rem,.625rem,.75rem) clamp(.875rem,1rem,1.25rem);font-size:var(--font-size-sm);min-height:36px}.btn--md{padding:clamp(.625rem,.75rem,.875rem) clamp(1.25rem,1.5rem,2rem);font-size:var(--font-size-base);min-height:44px}.btn--lg{padding:clamp(.875rem,1rem,1.25rem) clamp(1.5rem,2rem,2.5rem);font-size:var(--font-size-lg);min-height:52px}.btn--full-width{width:100%}.icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon svg{width:100%;height:100%}.icon--sm{width:16px;height:16px}.icon--md{width:20px;height:20px}.icon--lg{width:24px;height:24px}.icon--spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon--primary{color:#7c3aed}.icon--success{color:#10b981}.icon--error{color:#ef4444}.icon--neutral{color:#6b7280}.theme-toggle{background:transparent;border:1px solid #E5E7EB;border-radius:clamp(.375rem,.5rem,.625rem);padding:clamp(.5rem,.625rem,.75rem);min-width:44px;min-height:44px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out;color:#6b7280;touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (hover: hover) and (pointer: fine){.theme-toggle:hover{background:#f3f4f6;border-color:#d1d5db;color:#374151;transform:rotate(15deg)}}@media (hover: none) and (pointer: coarse){.theme-toggle:active{background:#f3f4f6;transform:scale(.95)}}.dark .theme-toggle{border-color:#374151;color:#9ca3af}.dark .theme-toggle:hover{background:#374151;border-color:#4b5563;color:#f3f4f6}.theme-toggle .icon{transition:transform .3s ease-in-out}.theme-toggle:hover .icon{transform:scale(1.1)}.menu__backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:998;background:transparent}.menu{position:absolute;top:calc(100% + .5rem);right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.75rem;box-shadow:var(--shadow-lg);min-width:200px;z-index:999;overflow:hidden;animation:menuSlideIn .2s ease-out}.dark .menu{background:#1e293bf2;border-color:#33415580}@keyframes menuSlideIn{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.menu__item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1rem;background:none;border:none;cursor:pointer;transition:background .2s ease;text-align:left;color:var(--text-primary);font-size:.9375rem}.menu__item:hover{background:var(--bg-explanation)}.menu__item:first-child{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.menu__item:last-child{border-bottom-left-radius:.75rem;border-bottom-right-radius:.75rem}.menu__item-text{font-weight:500}.header{background:var(--bg-header);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);padding:max(1rem,env(safe-area-inset-top)) 0 max(1rem,env(safe-area-inset-bottom)) 0;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm);transition:transform .3s ease,opacity .3s ease,visibility .3s ease;transform:translateY(0);opacity:1;visibility:visible}.header--hidden{transform:translateY(-100%);opacity:0;visibility:hidden;pointer-events:none}.header__content{max-width:1200px;margin:0 auto;padding:0 clamp(1rem,1.5rem,2rem);display:flex;align-items:center;justify-content:space-between;gap:clamp(.75rem,1rem,1.5rem)}.header__actions{display:flex;align-items:center;gap:.75rem}.header__menu-wrapper{position:relative}.header__brand{display:flex;align-items:center;gap:1rem;background:none;border:none;padding:0;cursor:pointer;text-align:left;transition:opacity .2s ease}.header__brand:hover{opacity:.8}.header__brand:active{opacity:.6}.header__logo{width:clamp(44px,52px,56px);height:clamp(44px,52px,56px);background:linear-gradient(135deg,#7c3aed,#a78bfa,#ec4899);border-radius:clamp(.75rem,1rem,1.25rem);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 14px #7c3aed66,inset 0 1px #fff3;transition:transform .3s;touch-action:manipulation}.header__logo .icon{color:#fff}.header__floating-logo{position:fixed;top:max(1rem,env(safe-area-inset-top));left:clamp(1rem,1.5rem,2rem);width:clamp(44px,52px,56px);height:clamp(44px,52px,56px);background:linear-gradient(135deg,#7c3aed,#a78bfa,#ec4899);border-radius:clamp(.75rem,1rem,1.25rem);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #7c3aed66,inset 0 1px #fff3;border:none;cursor:pointer;padding:0;z-index:1;opacity:0;visibility:hidden;transform:translateY(-20px) scale(.8);transition:opacity .3s ease,visibility .3s ease,transform .3s ease;touch-action:manipulation}@media (min-width: 1024px){.header__floating-logo{z-index:101}}.header__floating-logo--visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.header__floating-logo:focus{outline:2px solid var(--color-primary);outline-offset:2px}.header__floating-logo .icon{color:#fff}@media (hover: hover) and (pointer: fine){.header__floating-logo--visible:hover{transform:translateY(0) rotate(5deg) scale(1.05)}}.header__text{display:flex;flex-direction:column;gap:.25rem}.header__title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin:0;line-height:var(--line-height-tight);letter-spacing:-.02em;transition:color .3s ease}.header__tagline{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:var(--line-height-tight);transition:color .3s ease}@media (min-width: 640px){.header__tagline{font-size:var(--font-size-base)}}@media (min-width: 1024px){.header__title{font-size:var(--font-size-3xl)}}.feed-layout{min-height:100vh;display:flex;flex-direction:column;transition:filter .3s ease-in-out}.feed-layout--blurred{filter:blur(4px);pointer-events:none;-webkit-user-select:none;user-select:none}.feed-layout__content{flex:1;padding:clamp(1rem,1.5rem,2rem) 0;padding-bottom:max(clamp(1rem,1.5rem,2rem),env(safe-area-inset-bottom));background:transparent;position:relative;z-index:10}.feed-layout__container{max-width:700px;margin:0 auto;padding:0 clamp(1rem,1.5rem,2rem)}@media (min-width: 640px){.feed-layout__content{padding:clamp(1.5rem,2rem,2.5rem) 0}}@media (min-width: 1024px){.feed-layout__container{max-width:750px}}.chip{display:inline-flex;align-items:center;padding:clamp(.25rem,.375rem,.5rem) clamp(.625rem,.75rem,1rem);border-radius:9999px;font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;transition:all .2s ease-in-out;line-height:1.2}.chip--default{background-color:#f3f4f6;color:#374151}.chip--subdomain{background:linear-gradient(135deg,#059669,#10b981,#34d399);background-size:200% 200%;color:#fff;font-weight:600;box-shadow:0 2px 8px #0596694d;transition:all .3s ease-in-out}@media (hover: hover) and (pointer: fine){.chip--subdomain:hover{background-position:right center;transform:translateY(-1px);box-shadow:0 4px 12px #05966966}}.chip--topic{background:linear-gradient(135deg,#7c3aed,#a78bfa,#ec4899);background-size:200% 200%;color:#fff;font-weight:600;box-shadow:0 2px 8px #7c3aed4d;transition:all .3s ease-in-out}@media (hover: hover) and (pointer: fine){.chip--topic:hover{background-position:right center;transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed66}}.chip--question-number{background-color:#e5e7eb;color:#6b7280;font-weight:600}.question-header{display:flex;align-items:center;gap:clamp(.375rem,.5rem,.75rem);flex-wrap:wrap;margin-bottom:clamp(.5rem,.75rem,1rem)}.option-card{display:flex;align-items:center;gap:clamp(.75rem,.875rem,1rem);padding:clamp(.75rem,.875rem,1rem) clamp(.875rem,1rem,1.25rem);background:var(--bg-option);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:2px solid transparent;border-radius:clamp(.75rem,1rem,1.25rem);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:clamp(52px,60px,68px);position:relative;overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.option-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#7c3aed,#a78bfa);transform:scaleY(0);transition:transform .3s}.option-card:hover:not(.option-card--disabled){border-color:#a78bfa;background:var(--bg-overlay);box-shadow:0 4px 12px #7c3aed26}@media (hover: hover) and (pointer: fine){.option-card:hover:not(.option-card--disabled){transform:translate(4px)}.option-card:hover:not(.option-card--disabled):before{transform:scaleY(1)}}@media (hover: none) and (pointer: coarse){.option-card:active:not(.option-card--disabled){transform:scale(.98);background:var(--bg-overlay)}.option-card:active:not(.option-card--disabled):before{transform:scaleY(1)}}.option-card--selected{border-color:#7c3aed;background:linear-gradient(135deg,#7c3aed1a,#a78bfa0d);box-shadow:0 4px 12px #7c3aed33}.option-card--selected:before{transform:scaleY(1)}.option-card--correct{border-color:#10b981;background:linear-gradient(135deg,#10b9811a,#34d3990d);animation:successPulse .6s ease-out}.option-card--incorrect{border-color:#ef4444;background:linear-gradient(135deg,#ef44441a,#f871710d);animation:errorShake .5s ease-out}.option-card--disabled{cursor:default;opacity:.6}.option-card__input-wrapper{display:flex;align-items:center;justify-content:center;flex-shrink:0}.option-card__checkbox,.option-card__radio{width:clamp(24px,28px,32px);height:clamp(24px,28px,32px);border:2px solid #D1D5DB;border-radius:.375rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out;flex-shrink:0}.option-card__radio{border-radius:50%}.option-card--selected .option-card__checkbox,.option-card--selected .option-card__radio{border-color:#7c3aed;background:#7c3aed}.option-card--correct .option-card__checkbox,.option-card--correct .option-card__radio{border-color:#10b981;background:#10b981}.option-card--incorrect .option-card__checkbox,.option-card--incorrect .option-card__radio{border-color:#ef4444;background:#ef4444}.option-card__radio-dot{width:10px;height:10px;border-radius:50%;background:#fff}.option-card__radio-dot--correct,.option-card__radio-dot--incorrect{background:#fff}.option-card__content{flex:1;font-size:var(--font-size-base);color:var(--text-primary);line-height:var(--line-height-normal);word-break:break-word}.option-card__status-icon{flex-shrink:0}.explanation-section{margin-top:clamp(.75rem,1rem,1.25rem);border-radius:.75rem;overflow:hidden;transition:all .3s ease-in-out}.explanation-section__chevron{transition:transform .3s ease-in-out}.explanation-section--expanded .explanation-section__chevron{transform:rotate(180deg)}.explanation-section__toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:clamp(.5rem,.75rem,1rem);padding:clamp(.75rem,.875rem,1rem) clamp(.875rem,1rem,1.25rem);background:var(--bg-explanation);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:none;cursor:pointer;transition:all .2s ease-in-out;font-family:inherit;font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);border-radius:clamp(.5rem,.75rem,1rem);min-height:44px;touch-action:manipulation}@media (hover: hover) and (pointer: fine){.explanation-section__toggle:hover{background:var(--bg-overlay);transform:translateY(-1px)}}@media (hover: none) and (pointer: coarse){.explanation-section__toggle:active{background:var(--bg-overlay);transform:scale(.98)}}.explanation-section__status{display:flex;align-items:center;gap:.5rem;font-weight:600}.explanation-section__text{flex:1;text-align:left;color:var(--text-secondary);transition:color .3s ease}.explanation-section__content-wrapper{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease-out .1s;opacity:0}.explanation-section.explanation-section--expanded .explanation-section__content-wrapper{max-height:1000px;opacity:1;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease-out}.explanation-section__content{padding:clamp(.875rem,1rem,1.25rem) clamp(1rem,1.25rem,1.5rem);background:var(--bg-explanation-content);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid rgba(59,130,246,.2);border-radius:0 0 clamp(.5rem,.75rem,1rem) clamp(.5rem,.75rem,1rem);transition:background .3s ease}.explanation-section__content p{margin:0;color:#3b82f6;line-height:var(--line-height-relaxed);font-size:var(--font-size-base);font-weight:500}.dark .explanation-section__content p{color:#93c5fd}.question-card{background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:clamp(1rem,1.25rem,1.5rem);padding:clamp(1rem,1.25rem,1.5rem);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,inset 0 1px 0 0 var(--border-light);margin-bottom:clamp(1.25rem,1.5rem,2rem);transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-light);position:relative;overflow:hidden;touch-action:manipulation}.question-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#7c3aed,#a78bfa,#ec4899);opacity:0;transition:opacity .3s}.question-card:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 20px 25px -5px #7c3aed1a,0 10px 10px -5px #7c3aed0a,inset 0 1px #ffffff1a}.question-card:hover:before{opacity:1}.question-card__title{font-size:var(--font-size-lg);font-weight:500;color:var(--text-primary);margin-bottom:clamp(.75rem,1rem,1.25rem);line-height:var(--line-height-relaxed);letter-spacing:-.01em;font-feature-settings:"kern" 1,"liga" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.question-card__options{display:flex;flex-direction:column;gap:clamp(.125rem,.25rem,.375rem);margin-bottom:clamp(.75rem,1rem,1.25rem)}.question-card__actions{margin-top:clamp(.5rem,.75rem,1rem)}@media (max-width: 639px){.question-card{margin-bottom:1.25rem}.question-card:hover{transform:none}}@media (min-width: 640px){.question-card__options{gap:.25rem}}@media (min-width: 1024px){.question-card:hover{transform:translateY(-4px) scale(1.01)}}.skeleton{background:linear-gradient(90deg,var(--skeleton-base) 0%,var(--skeleton-highlight) 50%,var(--skeleton-base) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:.5rem}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}:root{--skeleton-base: rgba(229, 231, 235, .5);--skeleton-highlight: rgba(255, 255, 255, .8)}.dark{--skeleton-base: rgba(51, 65, 85, .5);--skeleton-highlight: rgba(71, 85, 105, .8)}.question-card-skeleton{background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:clamp(1rem,1.25rem,1.5rem);padding:clamp(1.25rem,1.5rem,2rem);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,inset 0 1px 0 0 var(--border-light);margin-bottom:clamp(1.5rem,2rem,2.5rem);border:1px solid var(--border-light);transition:background .3s ease,border-color .3s ease}.question-card-skeleton__header{display:flex;align-items:center;gap:.75rem;margin-bottom:clamp(1rem,1.25rem,1.5rem)}.question-card-skeleton__title{margin-bottom:.5rem}.question-card-skeleton__title-short{width:60%;margin-bottom:clamp(1rem,1.25rem,1.5rem)}.question-card-skeleton__options{display:flex;flex-direction:column;gap:clamp(.5rem,.75rem,1rem);margin-bottom:clamp(1rem,1.25rem,1.5rem)}.question-card-skeleton__button{margin-top:clamp(.75rem,1rem,1.25rem)}.profile-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:clamp(.5rem,1rem,1.5rem);padding-top:max(clamp(.5rem,1rem,1.5rem),env(safe-area-inset-top));padding-bottom:max(clamp(.5rem,1rem,1.5rem),env(safe-area-inset-bottom));animation:fadeIn .3s ease-out;overscroll-behavior:contain}.profile-modal__backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.profile-modal__content{position:relative;background:var(--bg-modal);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-light);border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000040,inset 0 1px 0 var(--border-light);max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease-out;transition:background .3s ease,border-color .3s ease}.profile-modal__header{padding:clamp(1.25rem,1.5rem,2rem) clamp(1.25rem,1.5rem,2rem) clamp(1rem,1.25rem,1.5rem);border-bottom:1px solid var(--border-color);display:flex;align-items:flex-start;justify-content:space-between;gap:clamp(.75rem,1rem,1.5rem)}.profile-modal__title-section{flex:1}.profile-modal__title{font-size:var(--font-size-3xl);font-weight:700;color:var(--text-primary);margin:0 0 clamp(.375rem,.5rem,.75rem) 0;line-height:var(--line-height-tight);transition:color .3s ease}.profile-modal__description{font-size:var(--font-size-base);color:var(--text-secondary);margin:0;line-height:var(--line-height-normal);transition:color .3s ease}.profile-modal__close{background:transparent;border:none;cursor:pointer;padding:clamp(.5rem,.625rem,.75rem);min-width:44px;min-height:44px;border-radius:clamp(.375rem,.5rem,.625rem);display:flex;align-items:center;justify-content:center;transition:background .2s ease-in-out;flex-shrink:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (hover: hover) and (pointer: fine){.profile-modal__close:hover{background:var(--bg-hover)}}@media (hover: none) and (pointer: coarse){.profile-modal__close:active{background:var(--bg-hover);transform:scale(.95)}}.profile-modal__body{padding:clamp(1rem,1.5rem,2rem) clamp(1rem,1.5rem,2rem);overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.profile-modal__section{margin-bottom:clamp(1.25rem,1.5rem,2rem)}.profile-modal__section:last-of-type{margin-bottom:0}.profile-modal__section-title{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin:0 0 clamp(.5rem,.75rem,1rem) 0;line-height:var(--line-height-tight)}.profile-modal__section-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 clamp(1rem,1.5rem,2rem) 0;line-height:var(--line-height-normal)}.profile-modal__feedback{background:transparent;border:1px solid var(--border-color);cursor:pointer;padding:clamp(.75rem,1rem,1.25rem);display:flex;align-items:center;justify-content:center;gap:clamp(.5rem,.75rem,1rem);color:var(--text-primary);font-size:var(--font-size-base);border-radius:clamp(.5rem,.625rem,.75rem);transition:background .2s ease-in-out,border-color .2s ease-in-out,color .2s ease-in-out;min-height:44px;width:100%;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.profile-modal__feedback span{font-weight:500}@media (hover: hover) and (pointer: fine){.profile-modal__feedback:hover{background:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary)}}@media (hover: none) and (pointer: coarse){.profile-modal__feedback:active{background:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary);transform:scale(.98)}}.profile-modal__topics-grid{display:grid;grid-template-columns:1fr;gap:clamp(.75rem,1rem,1.25rem)}@media (min-width: 640px){.profile-modal__topics-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.profile-modal__topics-grid{grid-template-columns:repeat(3,1fr)}}.profile-modal__footer{padding:clamp(1rem,1.5rem,2rem) clamp(1rem,1.5rem,2rem) clamp(1.25rem,1.5rem,2rem);border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:clamp(.75rem,1rem,1.25rem)}.profile-modal__logout{background:transparent;border:none;cursor:pointer;padding:clamp(.5rem,.75rem,1rem);display:flex;align-items:center;justify-content:center;gap:clamp(.375rem,.5rem,.75rem);color:var(--text-secondary);font-size:var(--font-size-sm);border-radius:clamp(.375rem,.5rem,.625rem);transition:background .2s ease-in-out,color .2s ease-in-out;min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.profile-modal__logout span{font-weight:500}@media (hover: hover) and (pointer: fine){.profile-modal__logout:hover{background:var(--bg-hover);color:var(--text-primary)}}@media (hover: none) and (pointer: coarse){.profile-modal__logout:active{background:var(--bg-hover);color:var(--text-primary);transform:scale(.98)}}@media (max-width: 639px){.profile-modal{padding:0;padding-top:max(0,env(safe-area-inset-top));padding-bottom:max(0,env(safe-area-inset-bottom));align-items:flex-end}.profile-modal__content{border-radius:clamp(1rem,1.25rem,1.5rem) clamp(1rem,1.25rem,1.5rem) 0 0;max-height:95vh;max-height:calc(95vh - env(safe-area-inset-bottom))}.profile-modal__title{font-size:var(--font-size-2xl)}.profile-modal__description{font-size:var(--font-size-sm)}}.feedback-button{display:flex;align-items:center;justify-content:center;padding:clamp(.75rem,1rem,1.25rem);width:clamp(44px,52px,56px);height:clamp(44px,52px,56px);background:linear-gradient(135deg,#7c3aed,#a78bfa,#ec4899);background-size:200% 200%;color:#fff;border:none;border-radius:clamp(.75rem,1rem,1.25rem);box-shadow:0 8px 16px #7c3aed66,0 4px 8px #7c3aed33,inset 0 1px #fff3;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-shrink:0}.feedback-button:hover{background-position:right center;transform:translateY(-2px) scale(1.05);box-shadow:0 12px 24px #7c3aed80,0 6px 12px #7c3aed4d,inset 0 1px #fff3}.feedback-button:active{transform:translateY(0) scale(.95)}.feedback-button .icon{color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}@media (hover: none) and (pointer: coarse){.feedback-button:hover{transform:none}.feedback-button:active{transform:scale(.9)}}.about-us{display:flex;align-items:center}.about-us__link{display:flex;flex-direction:column;gap:.25rem;padding:0;background:transparent;border:none;box-shadow:none;transition:none;min-width:fit-content;text-decoration:none}.about-us__label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;transition:color .2s ease}.about-us__link:hover .about-us__label{color:var(--color-primary)}.about-us__link:active .about-us__label{color:var(--color-primary-dark)}@media (max-width: 639px){.about-us__label{font-size:clamp(.625rem,.75rem,.875rem)}}.report-issue{display:flex;align-items:center}.report-issue__content{display:flex;flex-direction:column;gap:.25rem;padding:0;background:transparent;border:none;box-shadow:none;transition:none;min-width:fit-content}.report-issue__label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.report-issue__email{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);text-decoration:none;transition:color .2s ease;word-break:break-word;touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (hover: hover) and (pointer: fine){.report-issue__email:hover{color:#7c3aed;text-decoration:underline}}@media (hover: none) and (pointer: coarse){.report-issue__email:active{color:#7c3aed;transform:scale(.98)}}@media (max-width: 639px){.report-issue__label{font-size:clamp(.625rem,.75rem,.875rem)}.report-issue__email{font-size:clamp(.75rem,.875rem,1rem)}}.footer{width:100%;margin-top:clamp(2rem,3rem,4rem);padding:clamp(1.5rem,2rem,3rem) 0;padding-bottom:max(clamp(1.5rem,2rem,3rem),env(safe-area-inset-bottom));padding-top:max(clamp(1.5rem,2rem,3rem),env(safe-area-inset-top));border-top:1px solid var(--border-color);background:var(--bg-primary);transition:background .3s ease,border-color .3s ease}.footer__content{width:100%;max-width:1200px;margin:0 auto;padding:0 clamp(1rem,1.5rem,2rem);padding-left:max(clamp(1rem,1.5rem,2rem),env(safe-area-inset-left));padding-right:max(clamp(1rem,1.5rem,2rem),env(safe-area-inset-right));display:flex;align-items:center;justify-content:space-between;gap:clamp(1rem,2rem,3rem);flex-wrap:wrap}.footer__left{display:flex;align-items:center}.footer__links{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.footer__right{display:flex;align-items:center}@media (max-width: 639px){.footer__content{flex-direction:column;align-items:flex-start;gap:1.5rem}.footer__right{width:100%;justify-content:flex-end}}.feedback-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1001;display:flex;align-items:center;justify-content:center;padding:clamp(.5rem,1rem,1.5rem);padding-top:max(clamp(.5rem,1rem,1.5rem),env(safe-area-inset-top));padding-bottom:max(clamp(.5rem,1rem,1.5rem),env(safe-area-inset-bottom));animation:fadeIn .3s ease-out;overscroll-behavior:contain}.feedback-modal__backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.feedback-modal__content{position:relative;background:var(--bg-modal);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-light);border-radius:clamp(1rem,1.5rem,2rem);box-shadow:0 25px 50px -12px #00000040,inset 0 1px 0 var(--border-light);max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease-out;transition:background .3s ease,border-color .3s ease}.feedback-modal__header{padding:clamp(1.25rem,1.5rem,2rem) clamp(1.25rem,1.5rem,2rem) clamp(1rem,1.25rem,1.5rem);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:1rem}.feedback-modal__title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin:0;line-height:var(--line-height-tight);transition:color .3s ease}.feedback-modal__close{background:transparent;border:none;cursor:pointer;padding:clamp(.5rem,.625rem,.75rem);min-width:44px;min-height:44px;border-radius:clamp(.375rem,.5rem,.625rem);display:flex;align-items:center;justify-content:center;transition:background .2s ease-in-out;flex-shrink:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (hover: hover) and (pointer: fine){.feedback-modal__close:hover{background:var(--bg-explanation)}}@media (hover: none) and (pointer: coarse){.feedback-modal__close:active{background:var(--bg-explanation);transform:scale(.95)}}.feedback-modal__body{padding:clamp(1rem,1.5rem,2rem);overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.feedback-modal__section{margin-bottom:clamp(1.25rem,1.5rem,2rem)}.feedback-modal__section:last-of-type{margin-bottom:0}.feedback-modal__label{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem;font-weight:600;color:var(--text-primary);font-size:var(--font-size-base)}.feedback-modal__label-hint{font-weight:400;font-size:var(--font-size-sm);color:var(--text-secondary)}.feedback-modal__rating{display:flex;align-items:center;gap:clamp(.25rem,.5rem,.75rem);flex-wrap:wrap}.feedback-modal__rating-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-left:.5rem}.feedback-modal__star{background:transparent;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out;touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-width:40px;min-height:40px}.feedback-modal__star:hover{transform:scale(1.1)}.feedback-modal__star:active{transform:scale(.95)}.feedback-modal__star--active .icon,.feedback-modal__star-icon--active{color:#fbbf24!important;filter:drop-shadow(0 2px 4px rgba(251,191,36,.3))}.feedback-modal__star--active svg,.feedback-modal__star-icon--active svg{fill:#fbbf24;stroke:#fbbf24}.feedback-modal__input{width:100%;padding:clamp(.75rem,1rem,1.25rem);border:2px solid var(--border-color);border-radius:clamp(.5rem,.5rem,.75rem);background:var(--bg-card);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-base);line-height:var(--line-height-normal);transition:all .2s ease-in-out;margin-top:.5rem}.feedback-modal__input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.feedback-modal__textarea{width:100%;padding:clamp(.75rem,1rem,1.25rem);border:2px solid var(--border-color);border-radius:clamp(.5,.5rem,.75rem);background:var(--bg-card);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-base);line-height:var(--line-height-normal);resize:vertical;min-height:100px;transition:all .2s ease-in-out;margin-top:.5rem}.feedback-modal__textarea:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.feedback-modal__char-count{text-align:right;font-size:var(--font-size-xs);color:var(--text-muted);margin-top:.5rem}.feedback-modal__footer{padding:clamp(1rem,1.5rem,2rem);border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:flex-end;gap:.75rem}@media (max-width: 639px){.feedback-modal{padding:0;padding-top:max(0,env(safe-area-inset-top));padding-bottom:max(0,env(safe-area-inset-bottom));align-items:flex-end}.feedback-modal__content{border-radius:clamp(1rem,1.25rem,1.5rem) clamp(1rem,1.25rem,1.5rem) 0 0;max-height:95vh;max-height:calc(95vh - env(safe-area-inset-bottom))}.feedback-modal__footer{flex-direction:column-reverse}.feedback-modal__footer .btn{width:100%}}.home-page{width:100%}.home-page__loading,.home-page__error,.home-page__empty{text-align:center;padding:clamp(2rem,3rem,4rem) clamp(1rem,1.5rem,2rem);color:var(--text-secondary);font-size:var(--font-size-base)}.home-page__error{color:var(--color-error)}.feed-layout__container:has(.about-us-page){max-width:1200px}@media (min-width: 1024px){.feed-layout__container:has(.about-us-page){max-width:1200px}}.about-us-page{width:100%;padding:clamp(2rem,4rem,6rem) 0;position:relative;overflow-x:hidden}.about-us-page__container{width:100%;max-width:100%;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:clamp(3rem,5rem,7rem);position:relative;z-index:1}.about-us-page__hero{position:relative;padding:clamp(3rem,5rem,7rem) 0;text-align:center;overflow:hidden}.about-us-page__hero-content{position:relative;z-index:2}.about-us-page__title{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.about-us-page__title-main{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:700;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 50%,#3B82F6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:var(--line-height-tight);letter-spacing:-.02em;animation:fadeIn .6s ease-out}.about-us-page__title-subtitle{font-size:clamp(1.25rem,2.5vw,2rem);font-weight:600;color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;margin-top:.5rem;animation:fadeIn .8s ease-out}.about-us-page__tagline{font-size:clamp(1rem,1.5vw,1.25rem);color:var(--text-secondary);font-weight:500;max-width:600px;margin:0 auto;animation:fadeIn 1s ease-out}.about-us-page__hero-decoration{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;pointer-events:none}.about-us-page__decoration-circle{position:absolute;border-radius:50%;opacity:.1;filter:blur(60px);animation:pulse 4s ease-in-out infinite}.about-us-page__decoration-circle--1{width:300px;height:300px;background:var(--color-primary);top:-100px;left:10%;animation-delay:0s}.about-us-page__decoration-circle--2{width:400px;height:400px;background:#3b82f6;top:50%;right:-100px;animation-delay:1s}.about-us-page__decoration-circle--3{width:250px;height:250px;background:var(--color-primary-light);bottom:-50px;left:50%;animation-delay:2s}.about-us-page__section{display:flex;flex-direction:column;gap:2rem;animation:fadeIn .6s ease-out}.about-us-page__section-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.about-us-page__section-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--text-primary);line-height:var(--line-height-tight)}.about-us-page__mission-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:1.5rem;padding:clamp(2rem,3rem,4rem);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .3s ease,box-shadow .3s ease}.about-us-page__mission-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.about-us-page__mission-text{font-size:clamp(1.125rem,1.5vw,1.375rem);line-height:var(--line-height-relaxed);color:var(--text-primary)}.about-us-page__mission-text strong{color:var(--color-primary);font-weight:600}.about-us-page__content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:1rem}.about-us-page__feature-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:1.25rem;padding:2rem;display:flex;flex-direction:column;gap:1rem;transition:all .3s ease;position:relative;overflow:hidden}.about-us-page__feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.about-us-page__feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-light)}.about-us-page__feature-card:hover:before{transform:scaleX(1)}.about-us-page__feature-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#7c3aed1a,#a78bfa1a);border-radius:12px;margin-bottom:.5rem}.about-us-page__feature-title{font-size:clamp(1.25rem,1.5vw,1.5rem);font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.about-us-page__feature-text{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-secondary)}.about-us-page__feature-text strong{color:var(--text-primary);font-weight:600}.about-us-page__philosophy-card{background:linear-gradient(135deg,#7c3aed0d,#3b82f60d);border:1px solid var(--border-color);border-radius:1.5rem;padding:clamp(2.5rem,4rem,5rem);position:relative;overflow:hidden}.about-us-page__philosophy-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(124,58,237,.1) 0%,transparent 70%);animation:pulse 6s ease-in-out infinite}.about-us-page__philosophy-content{position:relative;z-index:1}.about-us-page__philosophy-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;line-height:var(--line-height-tight)}.about-us-page__philosophy-text{font-size:clamp(1rem,1.25vw,1.125rem);line-height:var(--line-height-relaxed);color:var(--text-secondary);margin-bottom:1.25rem}.about-us-page__philosophy-text:last-of-type{margin-bottom:0}.about-us-page__philosophy-text strong{color:var(--color-primary);font-weight:600}.about-us-page__cta{display:flex;justify-content:center;padding:2rem 0 0;animation:fadeIn .8s ease-out}.about-us-page__cta-button{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;font-size:var(--font-size-base);font-weight:600;text-decoration:none;border-radius:.75rem;transition:all .3s ease;box-shadow:0 4px 12px #7c3aed4d;transform:rotate(0)}.about-us-page__cta-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #7c3aed66}.about-us-page__cta-button:active{transform:translateY(0) scale(.98)}.about-us-page__cta-button .icon{transform:rotate(-90deg);transition:transform .3s ease}.about-us-page__cta-button:hover .icon{transform:rotate(-90deg) translate(4px)}@media (max-width: 768px){.about-us-page{padding:clamp(1.5rem,2rem,3rem) 0}.about-us-page__container{gap:clamp(2rem,3rem,4rem)}.about-us-page__hero{padding:clamp(2rem,3rem,4rem) 0}.about-us-page__content-grid{grid-template-columns:1fr;gap:1.5rem}.about-us-page__mission-card,.about-us-page__philosophy-card{padding:1.5rem}.about-us-page__section-header{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (max-width: 480px){.about-us-page__title-main{font-size:2rem}.about-us-page__title-subtitle{font-size:1rem}.about-us-page__cta-button{width:100%;justify-content:center}}.about-us-page__footer{width:100%;margin-top:0;padding:clamp(1.5rem,2rem,3rem) 0;padding-bottom:max(clamp(1.5rem,2rem,3rem),env(safe-area-inset-bottom));padding-top:max(clamp(1.5rem,2rem,3rem),env(safe-area-inset-top));border-top:1px solid var(--border-color);background:var(--bg-primary);transition:background .3s ease,border-color .3s ease}.about-us-page__footer-content{width:100%;max-width:1200px;margin:0 auto;padding:0 clamp(1rem,1.5rem,2rem);padding-left:max(clamp(1rem,1.5rem,2rem),env(safe-area-inset-left));padding-right:max(clamp(1rem,1.5rem,2rem),env(safe-area-inset-right));display:flex;align-items:center;justify-content:flex-start}.about-us-page__footer-contact{font-size:var(--font-size-sm);color:var(--text-primary);text-decoration:none;transition:color .2s ease;font-weight:500}.about-us-page__footer-contact:hover{color:var(--color-primary);text-decoration:underline}@media (max-width: 639px){.about-us-page__footer-content{flex-direction:column;align-items:flex-start}.about-us-page__footer-contact{font-size:var(--font-size-xs)}}.dark .about-us-page__mission-card,.dark .about-us-page__feature-card{background:var(--bg-card)}.dark .about-us-page__philosophy-card{background:linear-gradient(135deg,#7c3aed1a,#3b82f61a)}.dark .about-us-page__decoration-circle{opacity:.15}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;background:var(--bg-primary);position:relative;overflow:hidden}.auth-page__hero{background:linear-gradient(135deg,#1a1a2ef2,#16213efa);color:#fff;padding:4rem;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-page__hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 15% 50%,rgba(124,58,237,.15) 0%,transparent 25%),radial-gradient(circle at 85% 30%,rgba(59,130,246,.15) 0%,transparent 25%);pointer-events:none}.auth-page__brand{position:absolute;top:2rem;left:2rem;font-size:1.75rem;font-weight:800;letter-spacing:-.03em;background:linear-gradient(to right,#fff,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent;z-index:10}.auth-page__hero-content{max-width:600px;position:relative;z-index:1;animation:fadeIn .8s ease-out}.auth-page__headline{font-size:clamp(2.5rem,5vw,4rem);font-weight:800;line-height:1.1;margin-bottom:1.5rem;letter-spacing:-.03em}.text-highlight{background:linear-gradient(to right,#c4b5fd,#818cf8);-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;display:inline-block}.text-highlight:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:.2em;background:#7c3aed33;z-index:-1;transform:skew(-10deg)}.auth-page__subtext{font-size:clamp(1.1rem,2vw,1.25rem);line-height:1.6;color:#ffffffe6;margin-bottom:3rem;max-width:500px;font-weight:400}.auth-page__features{display:flex;gap:1rem;flex-wrap:wrap}.feature-pill{background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:.75rem 1.25rem;border-radius:2rem;font-size:.95rem;font-weight:600;border:1px solid rgba(255,255,255,.15);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:default;box-shadow:0 4px 6px -1px #0000001a}.feature-pill:hover{transform:translateY(-4px) scale(1.05);background:#fff3;border-color:#ffffff4d;box-shadow:0 10px 15px -3px #0003}.auth-page__form-section{display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;z-index:1}.auth-page__container{width:100%;max-width:440px;padding:0;transition:all .5s cubic-bezier(.34,1.56,.64,1);animation:slideUp .6s ease-out .2s backwards;position:relative;z-index:1}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-page__mobile-header{display:none;margin-bottom:2rem;text-align:center}.auth-page__theme-toggle{position:absolute;top:2rem;right:2rem;z-index:10}.auth-page__form{display:flex;flex-direction:column;gap:1.5rem;animation:liquid-fade-in .5s cubic-bezier(.34,1.56,.64,1)}@keyframes liquid-fade-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-page__field{display:flex;flex-direction:column;gap:.5rem}.auth-page__label{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-left:.25rem}.auth-page__input{width:100%;padding:1rem 1.25rem;font-size:1.05rem;border:2px solid transparent;border-radius:1rem;background:var(--bg-card);color:var(--text-primary);box-shadow:0 2px 4px #0000000d,inset 0 0 0 1px var(--border-color);transition:all .3s cubic-bezier(.4,0,.2,1)}.auth-page__input:not(:focus):not(:disabled){animation:input-breathe 4s infinite ease-in-out}@keyframes input-breathe{0%,to{box-shadow:0 2px 4px #0000000d,inset 0 0 0 1px var(--border-color);border-color:transparent}50%{box-shadow:0 4px 12px #7c3aed14,inset 0 0 0 1px #7c3aed4d;border-color:#7c3aed1a}}.auth-page__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #7c3aed26;background:var(--bg-primary);transform:translateY(-1px) scale(1.01)}.auth-page__input:disabled{opacity:.7;cursor:not-allowed;transform:none;animation:none}.auth-page__input--pin{text-align:center;font-size:1.75rem;letter-spacing:.75rem;font-weight:700;padding:1rem;font-family:monospace}.auth-page__button{margin-top:.5rem;height:3.5rem;font-weight:700;font-size:1.1rem;border-radius:1rem;transition:all .3s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);box-shadow:0 4px 6px -1px #7c3aed4d;position:relative;overflow:hidden}.auth-page__button:after{content:"";position:absolute;top:50%;left:50%;width:120%;height:0;padding-bottom:120%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 60%);border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0;transition:transform .5s ease,opacity .3s ease}.auth-page__button:hover:not(:disabled):after{transform:translate(-50%,-50%) scale(1);opacity:1}.auth-page__button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 12px -1px #7c3aed66;filter:brightness(1.1)}.auth-page__button:active:not(:disabled){transform:translateY(1px) scale(.98)}.auth-page__message{background:#7c3aed0d;border:1px solid rgba(124,58,237,.1);border-radius:1rem;padding:1.25rem;margin-bottom:2rem;text-align:center;animation:liquid-fade-in .4s ease-out}.auth-page__message p{margin:0;font-size:.95rem;color:var(--text-primary);line-height:1.5}.auth-page__message p:first-child{margin-bottom:.5rem}.auth-page__message strong{color:var(--color-primary);font-weight:700}.auth-page__message-hint{color:var(--text-secondary);font-size:.85rem}.auth-page__spam-notice{margin:1rem 0 0;font-size:.85rem;color:var(--text-secondary);text-align:center;line-height:1.5;background:var(--bg-neutral-50);padding:.75rem;border-radius:.75rem;animation:fadeIn .5s ease-out .2s backwards}.auth-page__spam-notice strong{color:var(--text-primary);font-weight:600}.auth-page__back-link{background:none;border:none;color:var(--text-secondary);font-size:.9rem;cursor:pointer;padding:.75rem;margin-top:1rem;transition:all .2s ease;width:100%;text-align:center;font-weight:500}.auth-page__back-link:hover:not(:disabled){color:var(--color-primary);text-decoration:none;transform:translateY(-1px)}@media (max-width: 900px){.auth-page{display:flex;flex-direction:column;padding:0;min-height:100vh}.auth-page__hero{padding:3rem 1.5rem 4rem;min-height:45vh;border-bottom-right-radius:3rem;border-bottom-left-radius:3rem;align-items:center;text-align:center;box-shadow:0 10px 30px -10px #0000004d}.auth-page__brand{position:relative;top:auto;left:auto;margin-bottom:2rem;font-size:1.5rem}.auth-page__hero-content{display:flex;flex-direction:column;align-items:center}.auth-page__headline{font-size:2.25rem;margin-bottom:1rem}.auth-page__subtext{font-size:1rem;margin-bottom:2rem;opacity:.9}.auth-page__features{justify-content:center;gap:.75rem}.feature-pill{padding:.5rem 1rem;font-size:.85rem;background:#ffffff26}.auth-page__form-section{flex:1;padding:2rem 1.5rem;margin-top:-3rem;background:transparent;pointer-events:none}.auth-page__container{background:var(--bg-card);padding:2rem;border-radius:2rem;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;pointer-events:auto;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5)}:global(.dark) .auth-page__container{border:1px solid rgba(255,255,255,.1)}.auth-page__theme-toggle{top:1.5rem;right:1.5rem;color:#fff;background:#ffffff1a;padding:.5rem;border-radius:50%;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.auth-page__theme-toggle .icon{color:#fff!important}}@media (max-width: 480px){.auth-page__hero{min-height:auto;padding-bottom:5rem;border-bottom-right-radius:2.5rem;border-bottom-left-radius:2.5rem}.auth-page__headline{font-size:2rem}.auth-page__form-section{padding:1rem;margin-top:-4rem}.auth-page__container{padding:1.5rem;border-radius:1.5rem}.feature-pill{padding:.4rem .8rem;font-size:.8rem}}.subdomain-item{border-radius:.875rem;overflow:hidden;border:1px solid #e2e8f0;background:#f8fafc80;transition:all .2s ease}.subdomain-item:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.dark .subdomain-item{background:#33415580;border-color:#475569}.dark .subdomain-item:hover{border-color:#64748b}.subdomain-item__header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem}.subdomain-item__checkbox{flex-shrink:0;cursor:pointer;transition:transform .2s ease;background:none;border:none;padding:0;display:flex;align-items:center;justify-content:center}.subdomain-item__checkbox:hover{transform:scale(1.1)}.subdomain-item__checkbox:active{transform:scale(.95)}.subdomain-item__info{flex:1;display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-width:0;background:none;border:none;padding:0;cursor:pointer;text-align:left}.subdomain-item__info-content{flex:1;min-width:0}.subdomain-item__name{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subdomain-item__meta{font-size:.75rem;color:var(--text-secondary);margin:.125rem 0 0}.subdomain-item__selected-count{color:var(--color-success);font-weight:500}.subdomain-item__expand{flex-shrink:0;padding:.25rem;border-radius:.375rem;transition:background .2s ease}.subdomain-item__expand:hover{background:#e2e8f080}.dark .subdomain-item__expand:hover{background:#47556980}.subdomain-item__topics{padding:.5rem .75rem .75rem 3rem;display:flex;flex-direction:column;gap:.25rem}.subdomain-item__topic{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:.625rem;border:1px solid #e2e8f0;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.subdomain-item__topic:hover{border-color:#cbd5e1;box-shadow:var(--shadow-sm)}.subdomain-item__topic--selected{background:#ecfdf5;border-color:#a7f3d0;box-shadow:0 1px 2px #10b9811a}.dark .subdomain-item__topic{background:#334155;border-color:#475569}.dark .subdomain-item__topic:hover{border-color:#64748b}.dark .subdomain-item__topic.subdomain-item__topic--selected{background:#10b98133;border-color:#10b98166}.subdomain-item__topic-name{font-size:.875rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.domain-card{border-radius:1rem;overflow:hidden;border:1px solid #e2e8f0;background:#fff;transition:all .2s ease;box-shadow:var(--shadow-sm)}.domain-card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.dark .domain-card{background:#1e293b;border-color:#334155}.dark .domain-card:hover{border-color:#475569}.domain-card__header{background:linear-gradient(to right,#eef2ff,#eff6ff);border-bottom:1px solid #e2e8f0}.dark .domain-card__header{background:#1e293bcc;border-bottom-color:#334155}.domain-card__header-content{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem}.domain-card__checkbox{flex-shrink:0;cursor:pointer;transition:transform .2s ease;background:none;border:none;padding:0;display:flex;align-items:center;justify-content:center}.domain-card__checkbox:hover{transform:scale(1.1)}.domain-card__checkbox:active{transform:scale(.95)}.domain-card__info{flex:1;display:flex;align-items:center;gap:.75rem;min-width:0;background:none;border:none;padding:0;cursor:pointer;text-align:left}.domain-card__icon{font-size:1.5rem;flex-shrink:0;line-height:1}.domain-card__info-content{flex:1;min-width:0}.domain-card__name{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.domain-card__meta{font-size:.75rem;color:var(--text-secondary);margin:.25rem 0 0}.domain-card__selected-count{color:var(--color-success);font-weight:500}.domain-card__expand{flex-shrink:0;padding:.25rem;border-radius:.375rem;transition:background .2s ease;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.domain-card__expand:hover{background:#6366f11a}.dark .domain-card__expand:hover{background:#33415580}.domain-card__subdomains{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.5rem}.selection-summary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:1rem;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 1px 2px #0000000d}.selection-summary:hover{transform:scale(1.05);background:var(--color-surface-hover)}.selection-summary:active{transform:scale(.95)}.selection-summary--dark{background:var(--color-surface-dark);border-color:var(--color-border-dark);color:var(--color-text-secondary-dark)}.selection-summary--dark:hover{background:var(--color-surface-hover-dark)}.selection-summary__text{font-size:.875rem}.topic-selection-page{min-height:100vh;padding:2rem 1rem;background:var(--bg-primary);transition:background .3s ease,color .3s ease}.topic-selection-page--loading{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--text-secondary)}.topic-selection-page__container{max-width:56rem;margin:0 auto}.topic-selection-page__header{text-align:center;margin-bottom:2rem}.topic-selection-page__header-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:9999px;margin-bottom:1rem;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);font-size:.875rem;color:var(--text-secondary)}.topic-selection-page__title{font-size:var(--font-size-3xl);font-weight:700;color:var(--text-primary);margin:0 0 .5rem;line-height:var(--line-height-tight)}.topic-selection-page__description{max-width:32rem;margin:0 auto;color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.topic-selection-page__search{display:flex;gap:.75rem;align-items:center;margin-bottom:1.5rem}.topic-selection-page__search-input-wrapper{position:relative;flex:1;display:flex;align-items:center}.topic-selection-page__search-input-wrapper .icon{position:absolute;left:1rem;pointer-events:none;color:var(--text-secondary)}.topic-selection-page__search-input{width:100%;padding:.875rem 1rem .875rem 3rem;border-radius:1rem;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-size-base);transition:all .2s ease;box-shadow:var(--shadow-sm)}.topic-selection-page__search-input::placeholder{color:var(--text-secondary)}.topic-selection-page__search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #7c3aed1a}.topic-selection-page__domains{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.topic-selection-page__empty{text-align:center;padding:3rem 1rem;border-radius:1rem;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary)}.topic-selection-page__continue{position:sticky;bottom:1rem;margin-top:2rem}.topic-selection-page__continue button{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;border-radius:1rem;font-weight:600;color:#fff;background:linear-gradient(to right,#059669,#0d9488);border:none;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transition:all .2s ease;cursor:pointer}.topic-selection-page__continue button:hover{transform:scale(1.02);background:linear-gradient(to right,#047857,#0f766e);box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.topic-selection-page__continue button:active{transform:scale(.98)}.topic-selection-page__continue button:disabled{opacity:.6;cursor:not-allowed;transform:none}.dark .topic-selection-page__continue button{background:linear-gradient(to right,#10b981,#14b8a6);box-shadow:0 10px 15px -3px #0000004d,0 4px 6px -4px #0000004d}.dark .topic-selection-page__continue button:hover{background:linear-gradient(to right,#059669,#0d9488);box-shadow:0 20px 25px -5px #0006,0 8px 10px -6px #0006}@media (min-width: 768px){.topic-selection-page{padding:3rem 1.5rem}.topic-selection-page__header{margin-bottom:3rem}.topic-selection-page__search{margin-bottom:2rem}.topic-selection-page__domains{gap:1rem}.topic-selection-page__continue{bottom:2rem}}:root{--color-primary: #7C3AED;--color-primary-light: #A78BFA;--color-primary-dark: #6D28D9;--color-success: #10B981;--color-error: #EF4444;--color-neutral-50: #F9FAFB;--color-neutral-100: #F3F4F6;--color-neutral-200: #E5E7EB;--color-neutral-300: #D1D5DB;--color-neutral-400: #9CA3AF;--color-neutral-500: #6B7280;--color-neutral-600: #4B5563;--color-neutral-700: #374151;--color-neutral-800: #1F2937;--color-neutral-900: #111827;--font-size-xs: clamp(.75rem, .7rem + .25vw, .875rem);--font-size-sm: clamp(.875rem, .8rem + .375vw, 1rem);--font-size-base: clamp(1rem, .95rem + .25vw, 1.125rem);--font-size-lg: clamp(1.125rem, 1rem + .625vw, 1.25rem);--font-size-xl: clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--font-size-2xl: clamp(1.5rem, 1.3rem + 1vw, 1.75rem);--font-size-3xl: clamp(1.75rem, 1.5rem + 1.25vw, 2rem);--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--bg-primary: linear-gradient(to bottom right, #f8fafc 0%, #eff6ff 50%, #eef2ff 100%);--bg-overlay: rgba(255, 255, 255, .95);--bg-card: rgba(255, 255, 255, .95);--bg-option: rgba(255, 255, 255, .8);--bg-header: rgba(255, 255, 255, .8);--bg-modal: rgba(255, 255, 255, .95);--bg-explanation: rgba(243, 244, 246, .8);--bg-explanation-content: linear-gradient(135deg, rgba(59, 130, 246, .1) 0%, rgba(147, 197, 253, .05) 100%);--text-primary: #111827;--text-secondary: #6B7280;--text-muted: #9CA3AF;--border-color: rgba(229, 231, 235, .5);--border-light: rgba(255, 255, 255, .2);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--color-surface: rgba(255, 255, 255, .95);--color-surface-hover: rgba(243, 244, 246, .8);--color-border: rgba(229, 231, 235, .5);--color-text-secondary: #6B7280}.dark{--bg-primary: linear-gradient(to bottom right, #0f172a 0%, #1e293b 50%, #0f172a 100%);--bg-overlay: rgba(15, 23, 42, .95);--bg-card: rgba(30, 41, 59, .95);--bg-option: rgba(30, 41, 59, .8);--bg-header: rgba(15, 23, 42, .8);--bg-modal: rgba(15, 23, 42, .95);--bg-explanation: rgba(30, 41, 59, .8);--bg-explanation-content: linear-gradient(135deg, rgba(59, 130, 246, .15) 0%, rgba(147, 197, 253, .1) 100%);--text-primary: #F9FAFB;--text-secondary: #D1D5DB;--text-muted: #9CA3AF;--border-color: rgba(51, 65, 85, .5);--border-light: rgba(255, 255, 255, .1);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--color-surface-dark: rgba(30, 41, 59, .8);--color-surface-hover-dark: rgba(51, 65, 85, .5);--color-border-dark: rgba(51, 65, 85, .5);--color-text-secondary-dark: #D1D5DB}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:rgba(124,58,237,.2)}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:.25rem}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);position:relative;min-height:100vh;transition:background .3s ease,color .3s ease;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(124,58,237,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(59,130,246,.08) 0%,transparent 50%);pointer-events:none;z-index:0;transition:opacity .3s ease}.dark body:before{background:radial-gradient(circle at 20% 50%,rgba(124,58,237,.15) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(59,130,246,.15) 0%,transparent 50%)}#root{width:100%;min-height:100vh;position:relative;z-index:1}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}@media (max-width: 768px){html{-webkit-text-size-adjust:100%;text-size-adjust:100%}}::-webkit-scrollbar{width:clamp(6px,8px,10px)}::-webkit-scrollbar-track{background:var(--color-neutral-100)}.dark ::-webkit-scrollbar-track{background:var(--color-neutral-800)}::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:4px}.dark ::-webkit-scrollbar-thumb{background:var(--color-neutral-600)}::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-400)}.dark ::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-500)}@media (hover: none) and (pointer: coarse){button,a,[role=button]{-webkit-tap-highlight-color:rgba(124,58,237,.3)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:500px;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes errorShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.fade-in{animation:fadeIn .3s ease-out}.slide-down{animation:slideDown .3s ease-out}
