*{box-sizing:border-box;margin:0;padding:0}:root{font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;--color-main-green: #203C2E;--color-dark-gray: #282828;--color-brown: #96773D;--color-pale-green: #C7D8B7;--color-beige: #E3D9BD;--color-pale-yellow: #FBF7BE;--color-chart-up: #DC0000;--color-chart-down: #0046B4;--color-quiz-yellow: #FADB13;--color-white: #FFFFFF;--color-black: #000000;--color-background: #F8F8F8;--spacing-0: 0px;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-7: 28px;--spacing-8: 32px;--spacing-10: 40px;--spacing-12: 48px;--spacing-16: 64px;--spacing-20: 80px;--font-size-2xs: 11px;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 28px;--font-size-4xl: 32px;--font-size-5xl: 40px;--font-size-6xl: 48px;--font-size-7xl: 56px;--font-size-8xl: 64px;--font-size-9xl: 72px;--font-size-10xl: 96px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--z-content: 10;--z-dropdown: 20;--z-page-overlay: 30;--z-floating: 40;--z-header: 100;--z-header-menu: 110;--z-overlay: 200;--z-modal: 210;--z-toast: 300;--layout-header-height: 60px;--mobile-tabbar-height: 0px}@media(max-width:768px){:root{--layout-header-height: 50px;--mobile-tabbar-height: calc(60px + env(safe-area-inset-bottom)) }}@media(max-width:480px){:root{--mobile-tabbar-height: calc(56px + env(safe-area-inset-bottom)) }}@media(max-width:380px){:root{--mobile-tabbar-height: calc(54px + env(safe-area-inset-bottom)) }}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--color-background);color:var(--color-dark-gray)}#root{width:100%;min-height:100vh}.app-route-loading{min-height:50vh;display:flex;align-items:center;justify-content:center;gap:10px;color:#6b7684;font-size:var(--font-size-sm)}.app-route-loading-spinner{width:18px;height:18px;border:2px solid #DDE3DF;border-top-color:var(--color-main-green);border-radius:50%;animation:app-route-loading-spin .7s linear infinite}@keyframes app-route-loading-spin{to{transform:rotate(360deg)}}.container-content{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-4)}html{overflow-y:scroll}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:var(--color-brown);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-dark-gray)}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}img{max-width:100%;height:auto}@media(prefers-reduced-motion:reduce){.app-route-loading-spinner{animation:none}}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);font-family:inherit;font-weight:var(--font-weight-medium);border:none;border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap}.button:focus-visible{outline:2px solid var(--color-main-green);outline-offset:2px}.button:disabled{cursor:not-allowed;opacity:.5}.button-primary{background-color:var(--color-main-green);color:var(--color-white)}.button-primary:hover:not(:disabled){background-color:var(--color-brown)}.button-primary:active:not(:disabled){background-color:var(--color-dark-gray)}.button-secondary{background-color:var(--color-white);color:var(--color-main-green);border:1px solid var(--color-main-green)}.button-secondary:hover:not(:disabled){background-color:var(--color-pale-green)}.button-secondary:active:not(:disabled){background-color:var(--color-beige)}.button-danger{background-color:var(--color-chart-up);color:var(--color-white)}.button-danger:hover:not(:disabled){background-color:#b00000}.button-danger:active:not(:disabled){background-color:#8a0000}.button-small{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-sm)}.button-medium{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-base)}.button-large{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-lg)}.button-full-width{width:100%}.button-loading{position:relative;color:transparent}.button-spinner{position:absolute;width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:button-spin .6s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}.text{font-family:inherit}.text-size-2xs{font-size:var(--font-size-2xs)}.text-size-xs{font-size:var(--font-size-xs)}.text-size-sm{font-size:var(--font-size-sm)}.text-size-base{font-size:var(--font-size-base)}.text-size-lg{font-size:var(--font-size-lg)}.text-size-xl{font-size:var(--font-size-xl)}.text-size-2xl{font-size:var(--font-size-2xl)}.text-size-3xl{font-size:var(--font-size-3xl)}.text-size-4xl{font-size:var(--font-size-4xl)}.text-size-5xl{font-size:var(--font-size-5xl)}.text-size-6xl{font-size:var(--font-size-6xl)}.text-size-7xl{font-size:var(--font-size-7xl)}.text-size-8xl{font-size:var(--font-size-8xl)}.text-size-9xl{font-size:var(--font-size-9xl)}.text-size-10xl{font-size:var(--font-size-10xl)}.text-weight-normal{font-weight:var(--font-weight-normal)}.text-weight-medium{font-weight:var(--font-weight-medium)}.text-weight-semibold{font-weight:var(--font-weight-semibold)}.text-weight-bold{font-weight:var(--font-weight-bold)}.text-lh-tight{line-height:var(--line-height-tight)}.text-lh-normal{line-height:var(--line-height-normal)}.text-lh-relaxed{line-height:var(--line-height-relaxed)}.text-align-left{text-align:left}.text-align-center{text-align:center}.text-align-right{text-align:right}.text-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}.input-wrapper{display:flex;flex-direction:column;gap:var(--spacing-1)}.input-full-width{width:100%}.input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-dark-gray)}.input{width:100%;padding:var(--spacing-2) var(--spacing-3);font-family:inherit;font-size:var(--font-size-base);color:var(--color-dark-gray);background-color:var(--color-white);border:1px solid #d1d5db;border-radius:4px;transition:all .2s}.input::placeholder{color:#9ca3af}.input:hover:not(:disabled){border-color:var(--color-main-green)}.input:focus{outline:none;border-color:var(--color-main-green);box-shadow:0 0 0 3px #203c2e1a}.input:disabled{background-color:var(--color-background);cursor:not-allowed;opacity:.6}.input-adornment-wrapper{position:relative;display:flex}.input-adornment-wrapper .input{padding-right:52px}.input-adornment{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-xs);color:#9ca3af;pointer-events:none}.input-adornment>*{pointer-events:auto}.input-error{border-color:var(--color-chart-up)}.input-error:focus{border-color:var(--color-chart-up);box-shadow:0 0 0 3px #dc00001a}.input-error-message{font-size:var(--font-size-sm);color:var(--color-chart-up)}:root{--input-message-height: calc(var(--font-size-sm) * 1.4)}.input-message-slot{display:block;font-size:var(--font-size-sm);line-height:1.4}.input-message-slot.reserved{min-height:var(--input-message-height)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.input-password-wrapper{position:relative}.input-password-toggle{position:absolute;right:var(--spacing-2);top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:var(--spacing-1);color:var(--color-dark-gray)}.input-password-toggle:hover{color:var(--color-main-green)}.card{background-color:var(--color-white);border:1px solid #e5e5e5;border-radius:8px;transition:all .2s}.card-padding-small{padding:var(--spacing-3)}.card-padding-medium{padding:var(--spacing-4)}.card-padding-large{padding:var(--spacing-6)}.card-hoverable{cursor:default}.card-hoverable:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.card-clickable{cursor:pointer}.card-clickable:hover{border-color:var(--color-main-green)}.card-clickable:active{transform:scale(.98)}.card-hoverable.card-clickable:hover{box-shadow:0 6px 16px #00000026;border-color:var(--color-main-green)}@media(max-width:768px){.card-padding-medium{padding:var(--spacing-3)}.card-padding-large{padding:var(--spacing-4)}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);animation:modal-fade-in .2s ease-out}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-content{background-color:var(--color-white);border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:modal-slide-up .2s ease-out}.modal-content--overflow{overflow:visible}@keyframes modal-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid #e5e5e5}.modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-dark-gray);margin:0}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;font-size:var(--font-size-2xl);color:var(--color-dark-gray);border-radius:4px;transition:background-color .2s}.modal-close:hover{background-color:var(--color-background)}.modal-body{padding:var(--spacing-5)}.modal-body--overflow{overflow:visible}@media(max-width:768px){.modal-content{width:95%;max-width:none}.modal-header{padding:var(--spacing-3) var(--spacing-4)}.modal-body{padding:var(--spacing-4)}}.loading-fullscreen{position:fixed;top:var(--layout-header-height);left:0;right:0;bottom:0;background-color:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:var(--z-page-overlay)}.loading-spinner{border-radius:50%;border-style:solid;border-color:var(--color-pale-green) var(--color-pale-green) var(--color-pale-green) var(--color-main-green);animation:loading-spin .8s linear infinite}.loading-spinner-small{width:20px;height:20px;border-width:2px}.loading-spinner-medium{width:40px;height:40px;border-width:4px}.loading-spinner-large{width:60px;height:60px;border-width:6px}@keyframes loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.skeleton{display:block;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:8px;flex-shrink:0}.skeleton--on-dark{background:linear-gradient(90deg,#ffffff1a 25%,#ffffff38,#ffffff1a 75%);background-size:200% 100%}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.common-toast{position:fixed;top:80px;right:20px;display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:var(--z-toast);animation:common-toast-slide-in .3s ease-out;min-width:250px;max-width:400px}@keyframes common-toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.common-toast-icon{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.common-toast-message{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);flex:1}.common-toast-success{background-color:#10b981;color:var(--color-white)}.common-toast-success .common-toast-icon{color:var(--color-white)}.common-toast-error{background-color:var(--color-chart-up);color:var(--color-white)}.common-toast-error .common-toast-icon{color:var(--color-white)}.common-toast-warning{background-color:#f59e0b;color:var(--color-white)}.common-toast-warning .common-toast-icon{color:var(--color-white)}.common-toast-info{background-color:var(--color-chart-down);color:var(--color-white)}.common-toast-info .common-toast-icon{color:var(--color-white)}@media(max-width:768px){.common-toast{top:70px;right:10px;left:10px;max-width:none}}.dropdown{position:relative;width:100%}.dropdown-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-white);border:1px solid #d1d5db;border-radius:4px;font-size:var(--font-size-base);color:var(--color-dark-gray);cursor:pointer;transition:all .2s}.dropdown-button:hover:not(:disabled){border-color:var(--color-main-green)}.dropdown-button:focus{outline:none;border-color:var(--color-main-green);box-shadow:0 0 0 3px #203c2e1a}.dropdown-button:disabled{background-color:var(--color-background);cursor:not-allowed;opacity:.6}.dropdown-button-text{flex:1;text-align:left}.dropdown-arrow{font-size:var(--font-size-xs);transition:transform .2s}.dropdown-arrow-open{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background-color:var(--color-white);border:1px solid #d1d5db;border-radius:4px;box-shadow:0 4px 12px #0000001a;max-height:240px;overflow-y:auto;z-index:var(--z-dropdown);animation:dropdown-slide-down .2s ease-out}@keyframes dropdown-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{width:100%;padding:var(--spacing-2) var(--spacing-3);background:none;border:none;text-align:left;font-size:var(--font-size-base);color:var(--color-dark-gray);cursor:pointer;transition:background-color .2s}.dropdown-item:hover{background-color:var(--color-pale-green)}.dropdown-item-selected{background-color:var(--color-beige);font-weight:var(--font-weight-medium);color:var(--color-main-green)}.dropdown-disabled{opacity:.6;pointer-events:none}.animated-number{display:inline-block;position:relative;overflow:hidden;vertical-align:baseline}.animated-number__value{display:inline-block;transition:transform var(--animation-duration, .3s) cubic-bezier(.4,0,.2,1),opacity var(--animation-duration, .3s) ease}.animated-number__value--up{animation:slideUp var(--animation-duration, .3s) cubic-bezier(.4,0,.2,1)}.animated-number__value--down{animation:slideDown var(--animation-duration, .3s) cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{transform:translateY(0);opacity:1}50%{transform:translateY(-100%);opacity:0}51%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}50%{transform:translateY(100%);opacity:0}51%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.animated-number--highlight-up{color:var(--color-chart-up)}.animated-number--highlight-down{color:var(--color-chart-down)}.animated-number--animating{animation:pulse-highlight var(--animation-duration, .3s) ease}@keyframes pulse-highlight{0%,to{filter:brightness(1)}50%{filter:brightness(1.2)}}.animated-cell{display:inline-block;transition:background-color .3s ease,color .3s ease;border-radius:4px;padding:0 2px;margin:0 -2px}.animated-cell--flash{animation:cellFlash .6s ease}.animated-cell--flash-up{animation:cellFlashUp .6s ease}.animated-cell--flash-down{animation:cellFlashDown .6s ease}@keyframes cellFlash{0%{background-color:#203c2e33}to{background-color:transparent}}@keyframes cellFlashUp{0%{background-color:#e74c3c40}50%{background-color:#e74c3c26}to{background-color:transparent}}@keyframes cellFlashDown{0%{background-color:#3498db40}50%{background-color:#3498db26}to{background-color:transparent}}.flip-text{display:inline-flex;align-items:center}.flip-text__container{display:inline-grid;position:relative;overflow:hidden;vertical-align:bottom}.flip-text__value{grid-area:1 / 1;display:inline-block;padding:2px 4px;border-radius:4px;white-space:nowrap}.flip-text__value--out{animation:slideOutUp .3s ease-out forwards}.flip-text__value--in{animation:slideInUp .3s ease-out forwards}@keyframes slideOutUp{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.container{width:100%;max-width:1920px;margin:0 auto}.container-content{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}@media(max-width:768px){.container-content{padding:0 16px}}.header-desktop{position:fixed;top:0;left:0;right:0;height:var(--layout-header-height);background-color:#fff;border-bottom:1px solid #F0F0F0;z-index:var(--z-header)}.header-content{max-width:1200px;height:100%;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;overflow:visible}.header-logo{display:flex;align-items:center;gap:8px;text-decoration:none;flex-shrink:0}.header-logo-img{width:40px;height:40px;padding-block:10px;padding-inline:5px;object-fit:contain}.header-logo-text{height:24px;width:auto;object-fit:contain}.header-nav{position:relative;display:flex;align-items:center;gap:40px;height:100%;padding-bottom:3px}.header-nav-link{position:relative;display:flex;align-items:center;height:100%;font-size:var(--font-size-base);font-weight:500;color:#8b8b8b;text-decoration:none;padding:0 4px;transition:color .2s ease;white-space:nowrap}.header-nav-link:hover{color:#1a1a1a}.header-nav-link.active{font-weight:700;color:#203c2e}.header-nav-indicator{position:absolute;bottom:0;left:0;height:3px;background:linear-gradient(90deg,#203c2e,#3d6b4f);border-radius:3px 3px 0 0;transition:transform .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1),opacity .2s ease;box-shadow:0 0 8px #203c2e4d;pointer-events:none}.header-profile-area{position:relative}.header-profile-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;background:transparent;border:none;cursor:pointer;border-radius:8px;transition:background-color .2s ease}.header-profile-btn:hover{background-color:#f5f5f5}.header-profile-avatar{width:32px;height:32px;border-radius:50%;background-color:#c7d8b7;display:flex;align-items:center;justify-content:center}.header-profile-avatar span{font-size:var(--font-size-sm);font-weight:700;color:#203c2e}.header-profile-name{font-weight:600;color:#1a1a1a}.header-profile-arrow{color:#8b8b8b;transition:transform .2s ease}.header-profile-arrow.open{transform:rotate(180deg)}.header-profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:200px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001f;padding:8px 0;z-index:var(--z-header-menu)}.profile-dropdown-header{padding:12px 16px;display:flex;flex-direction:column;gap:4px}.profile-dropdown-name{font-weight:700;color:#1a1a1a}.profile-dropdown-divider{height:1px;background-color:#f0f0f0;margin:4px 0}.profile-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;background:transparent;border:none;font-size:var(--font-size-sm);color:#4b5563;cursor:pointer;transition:background-color .2s ease;text-align:left}.profile-dropdown-item:hover{background-color:#f5f5f5}.profile-dropdown-item.logout{color:#dc0000}.profile-dropdown-item svg{flex-shrink:0}.profile-dropdown-title{color:#6b7280}.header-auth-buttons{display:flex;align-items:center;gap:12px}.header-login-btn{padding:8px 16px;background-color:transparent;color:#1a1a1a;font-size:var(--font-size-sm);font-weight:500;border-radius:8px;text-decoration:none;border:1px solid rgba(0,0,0,.15);transition:all .2s ease}.header-login-btn:hover{background-color:#00000008;border-color:#0000004d}.header-signup-btn{padding:8px 16px;background-color:#10b981;color:#fff;font-size:var(--font-size-sm);font-weight:600;border-radius:8px;text-decoration:none;transition:all .2s ease}.header-signup-btn:hover{background-color:#059669}.header-profile-skeleton{width:100px;height:32px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:8px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.mobile-tabbar{display:none;position:fixed;bottom:0;left:0;right:0;height:var(--mobile-tabbar-height, 60px);padding-bottom:env(safe-area-inset-bottom);background-color:#fff;border-top:1px solid #F0F0F0;z-index:var(--z-header)}.tabbar-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:#9ca3af;transition:color .2s ease;min-width:0;padding:6px 4px}.tabbar-item.active{color:#203c2e}.tabbar-icon{display:flex;align-items:center;justify-content:center}.tabbar-icon svg{width:22px;height:22px}.tabbar-label{font-size:var(--font-size-2xs);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center}.tabbar-item.active .tabbar-label{font-weight:700}@media(max-width:768px){.header-nav,.header-profile-name,.header-profile-arrow{display:none}.header-profile-btn{padding:4px}.header-logo-text{height:21px}.header-logo-img{width:36px;height:36px}.header-auth-buttons{gap:8px}.header-login-btn,.header-signup-btn{padding:6px 12px;font-size:var(--font-size-sm)}.mobile-tabbar{display:flex}}@media(max-width:480px){.header-content{padding:0 16px}.header-auth-buttons{gap:6px}.header-login-btn,.header-signup-btn{padding:6px 10px;font-size:var(--font-size-xs)}.tabbar-label{font-size:var(--font-size-2xs)}.tabbar-icon svg{width:20px;height:20px}.tabbar-item{padding:5px 3px;gap:2px}}@media(max-width:380px){.tabbar-label{font-size:var(--font-size-2xs)}.tabbar-icon svg{width:18px;height:18px}.tabbar-item{padding:4px 2px;gap:1px}}.footer{width:100%;height:32px;background-color:#fafafa;border-top:1px solid #F0F0F0;display:flex;align-items:center;justify-content:center}.footer-copyright{color:#9ca3af}@media(max-width:768px){.footer{height:28px}}.floating-chat-container{position:fixed;bottom:32px;right:32px;z-index:var(--z-floating);transform-origin:bottom right}.floating-chat-btn{width:50px;height:50px;border-radius:15px;border:1px solid rgba(255,255,255,.18);background:#203c2e;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px #ffffff52,inset 0 -1px #0a2b1d1f,0 4px 10px #142f2224,0 12px 26px #142f2229;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease;position:relative;will-change:transform,box-shadow}.floating-chat-btn:hover{border-color:#ffffff47;background:#294d3a;transform:translateY(-2px);box-shadow:inset 0 1px #ffffff24,0 4px 8px #142f222b,0 12px 24px #142f2233}.floating-chat-btn:active{background:#162b20;transform:translateY(1px) scale(.97);box-shadow:inset 0 2px 4px #0619103d,0 2px 5px #142f2229}.floating-chat-btn:focus-visible{outline:3px solid rgba(32,60,46,.22);outline-offset:4px}.floating-chat-btn--bounce{animation:floatingBounce .6s ease}@keyframes floatingBounce{0%,to{transform:scale(1)}20%{transform:scale(1.15)}40%{transform:scale(.95)}60%{transform:scale(1.08)}80%{transform:scale(.98)}}.floating-chat-icon-wrap{position:absolute;inset:0;margin:auto;z-index:1;width:28px;height:22px;display:grid;place-items:center;line-height:0}.floating-chat-icon{display:block;width:27px;height:22px;color:#fff;fill:none;filter:drop-shadow(0 1px 1px rgba(6,25,16,.16))}.floating-chat-badge{position:absolute;top:-4px;right:-4px;background:#dc0000;color:#fff;border-radius:12px;min-width:22px;height:22px;font-size:var(--font-size-2xs);font-weight:700;font-family:inherit;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid white;box-sizing:border-box;line-height:1;z-index:2;box-shadow:0 3px 8px #76000047;animation:badgeAppear .3s ease}@keyframes badgeAppear{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.floating-chat-tooltip{position:absolute;bottom:calc(100% + 12px);right:0;background:#282828;color:#fff;padding:6px 16px;border-radius:4px;white-space:nowrap;font-weight:700;font-family:inherit;border:1px solid rgba(255,255,255,.08);box-shadow:0 6px 16px #0000002e;pointer-events:none}.floating-chat-tooltip-text{display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis}.floating-chat-tooltip-arrow{position:absolute;bottom:-5px;right:20px;width:10px;height:10px;background:#282828;transform:rotate(45deg)}@media(max-width:768px){.floating-chat-container{bottom:calc(var(--mobile-tabbar-height, 60px) + 12px);right:16px}.floating-chat-btn{width:48px;min-width:48px;height:48px;padding:0;border-radius:14px}.floating-chat-icon-wrap{width:28px;height:22px}.floating-chat-icon{width:27px;height:22px}.floating-chat-badge{min-width:20px;height:20px;font-size:var(--font-size-2xs)}.floating-chat-tooltip{display:none}}@media(prefers-reduced-motion:reduce){.floating-chat-btn,.floating-chat-badge{animation:none;transition:none}}.layout{min-height:100vh;display:flex;flex-direction:column}.layout--with-tabbar{padding-bottom:var(--mobile-tabbar-height)}.layout-main{flex:1;margin-top:var(--layout-header-height)}
