*,:after,:before{box-sizing:border-box}:root{--color-text-primary:#1d1d1f;--color-text-secondary:#86868b;--color-bg-primary:#fff;--color-bg-secondary:#f5f5f7;--color-bg-tertiary:#fbfbfd;--color-accent:#0071e3;--color-accent-hover:#0077ed;--color-border:#d2d2d7;--color-border-light:#f5f5f7;--color-success:#34c759;--color-warning:#ff9500;--color-error:#ff3b30;--font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,"Noto Sans KR",sans-serif;--nav-height:52px;--transition-fast:0.2s ease;--transition-default:0.3s cubic-bezier(0.25,0.1,0.25,1);--transition-slow:0.4s cubic-bezier(0.25,0.1,0.25,1)}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--color-bg-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Arial,Noto Sans KR,sans-serif;font-family:var(--font-family);font-weight:400;letter-spacing:-.022em;line-height:1.47059;margin:0}body,h1,h2,h3,h4,h5,h6{color:#1d1d1f;color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.03em;line-height:1.1;margin:0 0 1rem}h1{font-size:3.5rem}h2{font-size:2.5rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1rem}h6{font-size:.875rem}p{color:#86868b;color:var(--color-text-secondary);margin:0 0 1rem}a{color:#0071e3;color:var(--color-accent);text-decoration:none;transition:opacity .2s ease;transition:opacity var(--transition-fast)}a:hover{opacity:.7}::selection{background-color:#0071e333;color:#1d1d1f;color:var(--color-text-primary)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#c1c1c6;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a1a1a6}:focus{outline:none}:focus-visible{border-radius:4px;outline:2px solid #0071e3;outline:2px solid var(--color-accent);outline-offset:2px}button{font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}img{display:block;height:auto;max-width:100%}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (max-width:1068px){h1{font-size:2.75rem}h2{font-size:2rem}}@media (max-width:768px){h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.language-selector{position:relative}.lang-trigger{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;gap:4px;padding:6px 8px;touch-action:manipulation;transition:background .2s ease}.lang-trigger:hover{background:#f5f5f7}.lang-trigger:active{background:#e8e8ed}.lang-flag{font-size:1.1rem;line-height:1}.lang-arrow{color:#86868b;transition:transform .2s ease}.lang-arrow.open{transform:rotate(180deg)}.lang-dropdown{animation:dropdownFadeIn .2s ease;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:#fffffffa;border-radius:12px;box-shadow:0 4px 20px #0000001f,0 0 0 1px #0000000d;margin-top:8px;min-width:140px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1010}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lang-option{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:10px;padding:12px 14px;text-align:left;touch-action:manipulation;transition:background .15s ease;width:100%}.lang-option:hover{background:#f5f5f7}.lang-option:active{background:#e8e8ed}.lang-option.active{background:#e8f4fd}.lang-option .lang-flag{font-size:1rem}.lang-name{color:#1d1d1f;flex:1 1;font-size:.9rem}.lang-check{color:#0071e3;font-weight:600}@media (max-width:768px){.lang-dropdown{right:-.5rem}}.app-header{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background-color:#fbfbfdcc;border-bottom:1px solid #0000000d;left:0;position:fixed;right:0;top:0;transition:all .3s ease;z-index:1000}.app-header.scrolled{background-color:#fbfbfdf2;box-shadow:0 1px 3px #00000014}.app-header.dropdown-open{background-color:#fbfbfd}.nav-container{align-items:center;display:flex;height:44px;justify-content:space-between;margin:0 auto;max-width:980px;padding:0 22px}.logo{-webkit-tap-highlight-color:transparent;color:#1d1d1f;font-size:1.25rem;font-weight:600;letter-spacing:-.02em;position:relative;text-decoration:none;touch-action:manipulation;transition:opacity .3s ease;z-index:1005}.logo:hover{opacity:.7}.logo:active{opacity:.5}.main-nav{display:flex;flex:1 1;justify-content:center}.nav-menu{display:flex;gap:0;list-style:none;margin:0;padding:0}.nav-item{position:relative}.nav-link{align-items:center;background:none;border:none;color:#1d1d1f;cursor:pointer;display:flex;font-size:12px;font-weight:400;height:44px;line-height:44px;padding:0 12px;text-decoration:none;transition:opacity .3s ease;white-space:nowrap}.nav-link:hover{opacity:.65}.nav-link.active{font-weight:500}.nav-actions{align-items:center;display:flex;gap:16px;position:relative;z-index:1005}.flyout-container{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:#fbfbfdfa;border-bottom:1px solid #0000001a;left:0;max-height:0;opacity:0;overflow:hidden;position:absolute;right:0;top:44px;transition:max-height .4s ease,opacity .3s ease}.flyout-container.visible{max-height:200px;opacity:1}.flyout-panel{display:none;padding:16px 0}.flyout-panel.active{animation:fadeIn .2s ease;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.flyout-content{margin:0 auto;max-width:980px;padding:0 22px}.flyout-section{align-items:center;display:flex;flex-direction:row;gap:16px}.flyout-section-title{display:none}.flyout-links{display:flex;gap:8px}.flyout-link{align-items:center;border-radius:8px;display:flex;gap:10px;padding:10px 16px;text-decoration:none;transition:background .2s ease}.flyout-link:hover{background:#0000000a}.flyout-link-icon{font-size:20px;line-height:1}.flyout-link-text{display:flex;flex-direction:column;gap:1px}.flyout-link-title{color:#1d1d1f;font-size:13px;font-weight:500}.flyout-link-desc{color:#86868b;font-size:11px}.mobile-submenu{display:none}.flyout-backdrop{background:#0000004d;bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;z-index:999}.flyout-backdrop.visible{opacity:1;pointer-events:auto;visibility:visible}.user-menu-dropdown{position:relative}.user-menu-trigger{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:980px;cursor:pointer;display:flex;gap:8px;padding:4px 10px;touch-action:manipulation;transition:all .2s ease}.user-menu-trigger:hover{background:#0000000a}.user-menu-trigger:active{background:#00000014}.user-avatar-small{align-items:center;background:linear-gradient(135deg,#0071e3,#00c7be);border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:28px;justify-content:center;width:28px}.user-name{color:#1d1d1f;font-size:12px;font-weight:500}.dropdown-arrow{transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown-menu{opacity:0;padding-top:8px;pointer-events:none;position:absolute;right:0;top:100%;transform:translateY(10px);transition:all .3s ease;visibility:hidden;z-index:1001}@media (min-width:834px){.user-menu-dropdown:hover .user-dropdown-menu{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}}.user-menu-dropdown.open .user-dropdown-menu{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.user-dropdown-content{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:#fffffffa;border-radius:14px;box-shadow:0 4px 24px #0000001f,0 0 0 1px #0000000d;min-width:280px;padding:8px}.user-dropdown-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#1d1d1f;cursor:pointer;display:flex;font-size:14px;gap:12px;padding:10px 12px;text-decoration:none;transition:background-color .2s ease;width:100%}.user-dropdown-item:hover{background-color:#0000000a}.user-dropdown-item.logout{color:#ff3b30}.user-dropdown-item.logout:hover{background-color:#ff3b301a}.user-dropdown-item .dropdown-icon{font-size:16px;text-align:center;width:24px}.admin-user-info{padding:8px 12px}.user-info-header{gap:12px}.user-avatar,.user-info-header{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#0071e3,#00c7be);border-radius:50%;color:#fff;flex-shrink:0;font-size:18px;font-weight:600;height:44px;justify-content:center;width:44px}.user-details{display:flex;flex-direction:column;gap:2px;min-width:0}.user-name-display{color:#1d1d1f;font-size:14px;font-weight:600}.user-email-display,.user-name-display{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email-display{color:#86868b;font-size:12px}.user-tier-badge{background:#0071e31a;border-radius:980px;color:#0071e3;display:inline-block;font-size:11px;font-weight:500;margin-top:2px;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.dropdown-divider{background:#00000014;height:1px;margin:8px 0}.tier-simulation-section{padding:8px 12px}.tier-simulation-label{color:#86868b;display:block;font-size:11px;font-weight:600;letter-spacing:.02em;margin-bottom:8px;text-transform:uppercase}.tier-buttons{display:flex;flex-direction:column;gap:4px}.tier-btn{background:#0000;border:1px solid #00000014;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:13px;font-weight:400;padding:8px 12px;text-align:left;transition:all .2s ease;width:100%}.tier-btn:hover{background:#0000000a;border-color:#0000001f}.tier-btn.active{background:#0071e3;border-color:#0071e3;color:#fff;font-weight:500}.viewing-as-indicator{animation:pulse 2s infinite;font-size:12px;margin-left:4px}.viewing-as-notice{background:#fff3cd;border-radius:8px;color:#856404;font-size:12px;margin-top:12px;padding:8px 12px;text-align:center}.viewing-as-notice strong{font-weight:600}.login-btn{-webkit-tap-highlight-color:transparent;background-color:#0071e3;border-radius:980px;color:#fff;display:inline-block;font-size:12px;font-weight:500;padding:8px 16px;position:relative;text-decoration:none;touch-action:manipulation;transition:all .3s ease;z-index:1005}.login-btn:hover{background-color:#0077ed}.login-btn:active{background-color:#005bb5;transform:scale(.98)}.mobile-menu-btn,.mobile-nav-panel,.mobile-overlay{display:none}@media (max-width:833px){.app-header{z-index:9999}.nav-container{padding:0 16px}.main-nav{display:none!important}.mobile-overlay{-webkit-tap-highlight-color:transparent;animation:mobileOverlayFadeIn .2s ease;background:#0006;bottom:0;display:block;left:0;position:fixed;right:0;top:44px;z-index:10000}@keyframes mobileOverlayFadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;cursor:pointer;display:flex!important;flex-direction:column;gap:5px;height:44px;justify-content:center;padding:10px;touch-action:manipulation;width:44px}.mobile-menu-btn span{background-color:#1d1d1f;border-radius:1px;display:block;height:2px;transition:all .3s ease;width:20px}.mobile-menu-btn.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:last-child{transform:rotate(-45deg) translate(5px,-5px)}.mobile-nav-panel{-webkit-overflow-scrolling:touch;background:#fff;box-shadow:-4px 0 20px #0000001a;display:block;height:calc(100vh - 44px);height:calc(100dvh - 44px);max-width:80%;overflow-y:auto;pointer-events:none;position:fixed;right:0;top:44px;transform:translateX(100%);transition:transform .3s ease;width:280px;z-index:10001}.mobile-nav-panel.open{pointer-events:auto;transform:translateX(0)}.mobile-nav-panel .nav-menu{display:flex;flex-direction:column;list-style:none;margin:0;padding:8px 0}.mobile-nav-panel .nav-item{border-bottom:none}.mobile-nav-panel .nav-link{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;color:#1d1d1f;cursor:pointer;display:flex;font-size:17px;font-weight:400;height:auto;justify-content:flex-start;line-height:1.3;padding:14px 24px;text-decoration:none;touch-action:manipulation;width:100%}.mobile-nav-panel .nav-link:active,.mobile-nav-panel .nav-link:hover{background:#0000000a;opacity:1}.mobile-nav-panel .nav-link.active{color:#0071e3;font-weight:500}.mobile-nav-panel .nav-item.has-flyout .nav-link:after{border-bottom:2px solid #86868b;border-right:2px solid #86868b;content:"";height:8px;margin-left:auto;transform:rotate(45deg);transition:transform .3s ease;width:8px}.mobile-nav-panel .nav-item.has-flyout.flyout-open .nav-link:after{transform:rotate(-135deg)}.mobile-nav-panel .mobile-submenu{background:#f5f5f7;border-left:3px solid #0071e3;display:none;margin-left:16px;max-height:0;overflow:hidden;transition:max-height .3s ease}.mobile-nav-panel .nav-item.has-flyout.flyout-open .mobile-submenu{display:block;max-height:200px}.mobile-nav-panel .mobile-submenu-link{-webkit-tap-highlight-color:transparent;border-bottom:1px solid #00000014;color:#1d1d1f;display:block;font-size:15px;font-weight:400;padding:12px 24px 12px 20px;text-decoration:none;touch-action:manipulation}.mobile-nav-panel .mobile-submenu-link:last-child{border-bottom:none}.mobile-nav-panel .mobile-submenu-link:active{background:#0000000a}.logo{font-size:18px}.nav-actions{gap:4px}.user-name{display:none}.login-btn{font-size:13px;padding:8px 14px}.user-avatar-small{height:30px;width:30px}.user-menu-trigger{padding:4px 8px}.user-menu-trigger .dropdown-arrow{display:none}.user-dropdown-menu{left:8px;max-width:none;padding-top:8px;position:fixed;right:8px;top:44px;width:auto}.user-dropdown-content{border-radius:12px;max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow-y:auto}.tier-buttons{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.tier-btn{font-size:12px;padding:8px 10px}.language-selector{margin-right:0}}.notification-dropdown{position:relative}.notification-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;position:relative;touch-action:manipulation;transition:all .2s ease;width:36px}.notification-btn:hover{background:#0000000a}.notification-btn:active{background:#00000014}.notification-icon{color:#1d1d1f;transition:color .2s ease}.notification-btn.has-unread .notification-icon{color:#0071e3}.notification-badge{align-items:center;background:#ff3b30;border-radius:8px;color:#fff;display:flex;font-size:10px;font-weight:600;height:16px;justify-content:center;min-width:16px;padding:0 4px;position:absolute;right:4px;top:4px}.notification-panel{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:#fffffffa;border-radius:14px;box-shadow:0 4px 24px #0000001f,0 0 0 1px #0000000d;display:flex;flex-direction:column;max-height:480px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:360px;z-index:1002}.notification-header{align-items:center;border-bottom:1px solid #00000014;display:flex;justify-content:space-between;padding:16px 20px}.notification-header h3{color:#1d1d1f;font-size:14px;font-weight:600;margin:0}.mark-all-read{background:none;border:none;border-radius:6px;color:#0071e3;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px;transition:background .2s ease}.mark-all-read:hover{background:#0071e31a}.notification-list{flex:1 1;max-height:360px;overflow-y:auto}.notification-empty{align-items:center;color:#86868b;display:flex;flex-direction:column;justify-content:center;padding:48px 24px}.notification-empty .empty-icon{font-size:40px;margin-bottom:12px;opacity:.5}.notification-empty p{font-size:14px;margin:0}.notification-item{align-items:flex-start;border-bottom:1px solid #0000000a;cursor:pointer;display:flex;gap:12px;padding:14px 20px;position:relative;transition:background .2s ease}.notification-item:hover{background:#0000000a}.notification-item.unread{background:#0071e30d}.notification-item.unread:hover{background:#0071e31a}.notification-type-icon{align-items:center;background:#0000000a;border-radius:8px;display:flex;flex-shrink:0;font-size:16px;height:32px;justify-content:center;width:32px}.notification-item.unread .notification-type-icon{background:#0071e3;color:#fff}.notification-content{flex:1 1;min-width:0}.notification-title{color:#1d1d1f;font-size:13px;font-weight:500;margin:0 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-message{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6e6e73;display:-webkit-box;font-size:12px;margin:0 0 4px;overflow:hidden}.notification-time{color:#86868b;font-size:11px}.notification-delete{align-items:center;background:#0000;border:none;border-radius:50%;color:#86868b;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;opacity:0;position:absolute;right:12px;top:8px;transition:all .2s ease;width:20px}.notification-item:hover .notification-delete{opacity:1}.notification-delete:hover{background:#0000001a;color:#ff3b30}.notification-footer{border-top:1px solid #00000014;padding:12px 20px;text-align:center}.notification-footer a{color:#0071e3;font-size:13px;font-weight:500;text-decoration:none}.notification-footer a:hover{text-decoration:underline}@media (max-width:833px){.notification-panel{border-radius:0;border-bottom-left-radius:14px;border-bottom-right-radius:14px;left:0;max-height:calc(100vh - 44px);position:fixed;right:0;top:44px;width:100%}.notification-btn{height:32px;width:32px}.notification-badge{font-size:9px;height:14px;min-width:14px}.language-selector{margin-right:4px}}.landing-container{color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:2rem;position:relative;z-index:1}.hero-section{margin-bottom:2rem;padding:4rem 1rem;text-align:center}.hero-section h1{font-size:4rem;font-weight:600;margin-bottom:.5rem}.hero-section .subtitle{color:#666;font-size:1.5rem;font-weight:300}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));text-align:center}.feature-card{background-color:#f9f9f9;border:1px solid #eee;border-radius:12px;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 4px 20px #0000000d;transform:translateY(-5px)}.feature-card h2{font-size:1.75rem;font-weight:500;margin-bottom:1rem}.feature-card p{color:#555;font-size:1rem;line-height:1.6}.about-container{margin:0 auto;max-width:1200px;padding:0 2rem}.about-hero{background:linear-gradient(135deg,#f5f5f7,#fff);margin:-2rem -2rem 0;padding:6rem calc(2rem + 50vw - 600px);text-align:center}.about-hero h1{color:#1d1d1f;font-size:3.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem}.hero-subtitle{color:#666;font-size:1.5rem;line-height:1.6;margin:0 auto;max-width:600px}.about-section{border-bottom:1px solid #e5e5e5;padding:5rem 0}.about-section:last-child{border-bottom:none}.about-section h2{color:#1d1d1f;font-size:2rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.section-content{margin:0 auto;max-width:800px;text-align:center}.section-content p{color:#555;font-size:1.125rem;line-height:1.8}.values-section{background-color:#f9f9f9;margin:0 -2rem;padding-left:2rem;padding-right:2rem}.values-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-left:auto;margin-right:auto;margin-top:3rem;max-width:1000px}.value-card{background-color:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:2.5rem 2rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.value-card:hover{box-shadow:0 8px 30px #0000001a;transform:translateY(-4px)}.value-icon{font-size:3rem;margin-bottom:1rem}.value-card h3{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.value-card p{color:#666;font-size:1rem;line-height:1.6}.ventures-intro{color:#666;font-size:1.125rem;line-height:1.7;margin:0 auto 3rem;max-width:700px;text-align:center}.ventures-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.venture-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:16px;padding:2rem;position:relative;transition:all .3s ease}.venture-card:hover{border-color:#1d1d1f;box-shadow:0 4px 20px #00000014}.venture-card.coming-soon{opacity:.7}.venture-badge{background-color:#1d1d1f;border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;font-weight:500;margin-bottom:1rem;padding:.25rem .75rem}.venture-card.coming-soon .venture-badge{background-color:#666}.venture-card h3{color:#1d1d1f;font-size:1.5rem;font-weight:600;margin-bottom:.75rem}.venture-card p{color:#666;font-size:1rem;line-height:1.6}.contact-section{text-align:center}.contact-section p{color:#666;font-size:1.125rem;margin-bottom:2rem}.contact-info{display:flex;gap:3rem;justify-content:center}.contact-item{display:flex;flex-direction:column;gap:.5rem}.contact-label{color:#999;font-size:.875rem;letter-spacing:.5px;text-transform:uppercase}.contact-value{color:#1d1d1f;font-size:1.125rem;font-weight:500}@media (max-width:768px){.about-hero{margin:-1rem -1rem 0;padding:4rem 1rem}.about-hero h1{font-size:2.5rem}.hero-subtitle{font-size:1.125rem}.about-container{padding:0 1rem}.about-section{padding:3rem 0}.about-section h2{font-size:1.5rem}.values-section{margin:0 -1rem;padding-left:1rem;padding-right:1rem}.values-grid,.ventures-grid{grid-template-columns:1fr}.contact-info{flex-direction:column;gap:1.5rem}}.auth-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 120px);padding:2rem}.auth-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:16px;box-shadow:0 4px 20px #00000014;max-width:400px;padding:3rem;width:100%}.auth-card h1{font-size:2rem;font-weight:600;margin-bottom:.5rem;text-align:center}.auth-subtitle{color:#666;margin-bottom:2rem;text-align:center}.auth-error{background-color:#fee2e2;border-radius:8px;color:#dc2626;font-size:.9rem;margin-bottom:1.5rem;padding:.75rem 1rem;text-align:center}.auth-form{gap:1.25rem}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#333;font-size:.9rem}.form-group input{border:1px solid #e5e5e5;border-radius:8px;font-family:inherit;font-size:1rem;padding:.875rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{border-color:#333;box-shadow:0 0 0 3px #0000000d;outline:none}.form-group input::placeholder{color:#aaa}.auth-button{-webkit-tap-highlight-color:transparent;background-color:#1d1d1f;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:.5rem;padding:.875rem 1.5rem;touch-action:manipulation;transition:background-color .2s ease,transform .1s ease}.auth-button:hover:not(:disabled){background-color:#333}.auth-button:active:not(:disabled){transform:scale(.98)}.auth-button:disabled{background-color:#999;cursor:not-allowed}.auth-switch{color:#666;font-size:.9rem;margin-top:1.5rem;text-align:center}.auth-switch a{color:#1d1d1f;font-weight:500;text-decoration:none}.auth-switch a:hover{text-decoration:underline}.auth-switch a{-webkit-tap-highlight-color:transparent}.social-login-section{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.social-btn{-webkit-tap-highlight-color:transparent;align-items:center;border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.75rem;justify-content:center;padding:.875rem 1rem;touch-action:manipulation;transition:all .2s ease;width:100%}.social-btn:disabled{cursor:not-allowed;opacity:.7}.social-icon{height:20px;width:20px}.kakao-btn{background-color:#fee500;border-color:#fee500;color:#000}.kakao-btn:hover:not(:disabled){background-color:#f5dc00}.kakao-btn .social-icon{color:#000}.google-btn{background-color:#fff;border-color:#e5e5e5;color:#333}.google-btn:hover:not(:disabled){background-color:#f5f5f5;border-color:#d0d0d0}.auth-divider{align-items:center;display:flex;margin:1.5rem 0}.auth-divider:after,.auth-divider:before{background-color:#e5e5e5;content:"";flex:1 1;height:1px}.auth-divider span{color:#999;font-size:.85rem;padding:0 1rem}.pending-notice{text-align:center}.pending-icon{font-size:4rem}.pending-icon,.pending-notice h1{margin-bottom:1rem}.pending-notice p{color:#666;line-height:1.6}.external-browser-prompt{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #90caf9;border-radius:12px;display:flex;gap:12px;margin-bottom:1.5rem;padding:16px}.prompt-icon{flex-shrink:0;font-size:28px}.prompt-content{flex:1 1}.prompt-content strong{color:#1565c0;display:block;font-size:15px;margin-bottom:8px}.prompt-content p{color:#5e35b1;font-size:13px;line-height:1.5;margin:0 0 12px}.prompt-actions{display:flex;gap:8px}.open-browser-btn{background:#1976d2;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 16px;transition:background .2s}.open-browser-btn:hover{background:#1565c0}.copy-url-btn{background:#fff;border:1px solid #1976d2;border-radius:8px;color:#1976d2;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;transition:all .2s}.copy-url-btn:hover{background:#e3f2fd}.profile-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:900px;padding:2rem}.profile-header{margin-bottom:3rem;text-align:center}.profile-header h1{font-size:2.5rem;font-weight:600}.profile-header p{color:#666}.profile-card{background-color:#f9f9f9;border:1px solid #eee;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:2rem;padding:2rem}.profile-card h2{font-size:1.8rem;margin-top:0}.profile-detail{color:#333;margin:.5rem 0}.tier-badge{background-color:#e0f2fe;border-radius:12px;color:#0c598b;display:inline-block;font-size:.9rem;font-weight:500;padding:.25rem .75rem}.profile-section{margin-top:3rem}.profile-section h2{border-bottom:1px solid #eee;font-size:1.8rem;margin-bottom:1rem;padding-bottom:.5rem}.creations-placeholder,.settings-placeholder{background-color:#f9f9f9;border:1px solid #eee;border-radius:8px;color:#777;padding:2rem;text-align:center}.notification-settings{background-color:#fff;border:1px solid #eee;border-radius:12px;padding:1.5rem}.setting-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:1rem 0}.setting-item:last-child{border-bottom:none}.setting-info{display:flex;flex-direction:column;gap:.25rem}.setting-label{color:#1d1d1f;font-size:.95rem;font-weight:500}.setting-description{color:#86868b;font-size:.8rem}.setting-subtitle{color:#86868b;font-size:.85rem;font-weight:600;letter-spacing:.02em;margin:.5rem 0 0;text-transform:uppercase}.setting-divider{background:#e5e5e7;height:1px;margin:1rem 0}.toggle-switch{display:inline-block;height:28px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{-webkit-tap-highlight-color:transparent;background-color:#e5e5e7;border-radius:28px;bottom:0;cursor:pointer;left:0;right:0;top:0}.toggle-slider,.toggle-slider:before{position:absolute;transition:all .3s ease}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #00000026;content:"";height:22px;left:3px;width:22px}.toggle-switch input:checked+.toggle-slider{background-color:#34c759}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(22px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px #34c75933}.clear-notifications-btn{-webkit-tap-highlight-color:transparent;background:#ff3b30;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;margin-top:.5rem;padding:.875rem;touch-action:manipulation;transition:all .2s ease;width:100%}.clear-notifications-btn:hover{background:#e63329;transform:scale(1.01)}@media (max-width:768px){.notification-settings{padding:1rem}.setting-item{padding:.875rem 0}.toggle-switch{height:26px;width:44px}.toggle-slider:before{height:20px;width:20px}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(18px)}}.storyboard-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:2rem}.storyboard-header{margin-bottom:3rem;text-align:center}.storyboard-header h1{font-size:2.5rem;font-weight:600}.storyboard-header p{color:#666}.pipeline{margin-bottom:3rem}.pipeline-step{align-items:flex-start;border-bottom:1px solid #eee;display:flex;margin-bottom:2.5rem;padding-bottom:2.5rem}.pipeline-step:last-child{border-bottom:none;padding-bottom:0}.step-number{color:#ddd;font-size:2rem;font-weight:700;line-height:1;margin-right:2rem}.step-content{flex-grow:1}.step-content h2{font-size:1.8rem;font-weight:500;margin-top:0}.step-content p{color:#555;margin-bottom:1rem}.step-content textarea{border:1px solid #ccc;border-radius:8px;font-family:inherit;font-size:1rem;padding:.75rem;resize:vertical;width:100%}.placeholder-box{background-color:#f9f9f9;border:1px dashed #ccc;border-radius:8px;color:#777;margin:1rem 0;padding:2rem;text-align:center}button{background-color:#007aff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .3s ease}button:hover{background-color:#0056b3}button:disabled{background-color:#ccc;cursor:not-allowed}.options-panel{background-color:#f9f9f9;border:1px solid #eee;border-radius:12px;padding:2rem}.options-panel h3{border-bottom:1px solid #ddd;margin-top:0;padding-bottom:.5rem}.option{margin-top:1rem}.option label{display:block;font-weight:500;margin-bottom:.5rem}.option input[type=checkbox],.option select{border:1px solid #ccc;border-radius:4px;padding:.5rem;width:100%}.option.character-lock{align-items:center;display:flex}.option.character-lock input{margin-right:.5rem;width:auto}.ai-content-tools{margin:0 auto;max-width:1200px;padding:2rem}.ai-content-tools .page-header{margin-bottom:3rem;text-align:center}.ai-content-tools .page-header h1{color:#1d1d1f;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.ai-content-tools .page-header p{color:#86868b;font-size:1.1rem}.tools-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.tool-card{background:#fff;border:1px solid #e5e5e7;border-radius:16px;padding:2rem;position:relative;text-align:center;transition:all .3s ease}.tool-card:hover{border-color:#0071e3;box-shadow:0 4px 20px #0071e31a;transform:translateY(-2px)}.tool-icon{font-size:3rem;margin-bottom:1rem}.tool-card h3{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.tool-card p{color:#6e6e73;font-size:.9rem;line-height:1.5;margin-bottom:1rem}.tool-status{border-radius:20px;display:inline-block;font-size:.75rem;font-weight:600;padding:.375rem .75rem}.tool-status.coming-soon{background:#f5f5f7;color:#86868b}.tool-status.available{background:#e8f5e9;color:#2e7d32}@media (max-width:768px){.ai-content-tools{padding:1rem}.ai-content-tools .page-header h1{font-size:1.75rem}.tools-grid{grid-template-columns:1fr}.tool-card{padding:1.5rem}}.community-container{margin:0 auto;max-width:1100px;padding:2rem}.community-layout{display:flex;gap:2rem}.community-main{flex:1 1;min-width:0;order:2}.community-header{margin-bottom:2rem}.community-header h1{font-size:2rem;font-weight:600;margin-bottom:.5rem}.community-header p{color:#666}.community-message{border-radius:8px;margin-bottom:1.5rem;padding:1rem;text-align:center}.community-message.success{background-color:#d1fae5;color:#065f46}.community-message.error{background-color:#fee2e2;color:#dc2626}.tabs{border-bottom:1px solid #e5e5e5;display:flex;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem}.tab{-webkit-tap-highlight-color:transparent;background:none;border:none;border-radius:8px 8px 0 0;color:#666;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;touch-action:manipulation;transition:all .2s ease}.tab:hover{color:#333}.tab.active,.tab:hover{background-color:#f5f5f5}.tab.active{color:#1d1d1f}.write-btn{-webkit-tap-highlight-color:transparent;background-color:#1d1d1f;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:500;margin-bottom:1.5rem;padding:.75rem 1.5rem;touch-action:manipulation;transition:background-color .2s ease}.write-btn:hover{background-color:#333}.write-form{background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.write-form input,.write-form textarea{border:1px solid #e5e5e5;border-radius:8px;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.875rem 1rem;transition:border-color .2s ease;width:100%}.write-form input:focus,.write-form textarea:focus{border-color:#333;outline:none}.write-form textarea{min-height:120px;resize:vertical}.form-actions{display:flex;gap:.75rem;justify-content:flex-end}.cancel-btn{-webkit-tap-highlight-color:transparent;background-color:initial;border:1px solid #e5e5e5;border-radius:8px;color:#666;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;touch-action:manipulation;transition:all .2s ease}.cancel-btn:hover{background-color:#f5f5f5}.submit-btn{-webkit-tap-highlight-color:transparent;background-color:#1d1d1f;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;touch-action:manipulation;transition:background-color .2s ease}.submit-btn:hover{background-color:#333}.posts-list{display:flex;flex-direction:column;gap:1rem}.no-posts{color:#999;padding:3rem;text-align:center}.post-item{-webkit-tap-highlight-color:transparent;background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;cursor:pointer;padding:1.25rem;transition:all .2s ease}.post-item:hover{border-color:#ccc;box-shadow:0 2px 8px #0000000a}.post-item-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.post-item-header h3{font-size:1.1rem;font-weight:500;margin:0}.post-badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.post-badge.announcement{background-color:#dbeafe;color:#1d4ed8}.post-item-meta{color:#666;display:flex;font-size:.85rem;gap:1rem}.back-btn{align-items:center;color:#666;display:inline-flex;font-size:.95rem;margin-bottom:1.5rem;padding:.5rem 0;transition:color .2s ease}.back-btn:hover{color:#1d1d1f}.post-detail{background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:2rem;padding:2rem}.post-header{border-bottom:1px solid #e5e5e5;margin-bottom:1.5rem;padding-bottom:1rem}.post-header h1{font-size:1.5rem;font-weight:600;margin:.5rem 0}.post-meta{color:#666;display:flex;font-size:.9rem;gap:1rem}.post-content{color:#333;line-height:1.8}.post-content p{margin-bottom:1rem}.delete-btn:hover{background-color:#fecaca}.comments-section{background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:1.5rem}.comments-section h2{font-size:1.1rem;font-weight:600;margin-bottom:1rem}.comment-form{margin-bottom:1.5rem}.comment-form textarea{border:1px solid #e5e5e5;border-radius:8px;font-family:inherit;font-size:.95rem;margin-bottom:.75rem;padding:.875rem 1rem;resize:vertical;transition:border-color .2s ease;width:100%}.comment-form textarea:focus{border-color:#333;outline:none}.comment-form button{background-color:#1d1d1f;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.625rem 1.25rem;transition:background-color .2s ease}.comment-form button:hover:not(:disabled){background-color:#333}.comment-form button:disabled{background-color:#999;cursor:not-allowed}.comments-list{display:flex;flex-direction:column;gap:1rem}.no-comments{color:#999;padding:1rem;text-align:center}.comment-item{background-color:#f9f9f9;border-radius:8px;padding:1rem}.comment-header{display:flex;font-size:.85rem;gap:.75rem;margin-bottom:.5rem}.comment-author{color:#333;font-weight:500}.comment-date{color:#999}.comment-content{color:#555;line-height:1.5;margin:0}.comment-delete-btn{background:none;border:none;color:#dc2626;cursor:pointer;font-size:.8rem;margin-top:.5rem;padding:.25rem .5rem}.comment-delete-btn:hover{text-decoration:underline}.category-sidebar{flex-shrink:0;order:1;width:220px}.category-sidebar h3{color:#666;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:1rem;text-transform:uppercase}.category-list{list-style:none;margin:0;padding:0}.category-item{-webkit-tap-highlight-color:transparent;align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:.25rem;padding:.75rem 1rem;touch-action:manipulation;transition:all .2s ease}.category-item:hover{background-color:#f5f5f5}.category-item.active{background-color:#1d1d1f;color:#fff}.category-item.active .category-count{background-color:#fff3;color:#fff}.category-count{background-color:#e5e5e5;border-radius:10px;color:#666;font-size:.8rem;padding:.2rem .5rem}.category-select{background-color:#fff;border:1px solid #e5e5e5;border-radius:8px;cursor:pointer;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.875rem 1rem;width:100%}.category-select:focus{border-color:#333;outline:none}.post-badges{display:flex;gap:.5rem;margin-bottom:.5rem}.post-badge.category-general{background-color:#e5e5e5;color:#666}.post-badge.category-question{background-color:#fef3c7;color:#b45309}.post-badge.category-discussion{background-color:#dbeafe;color:#1d4ed8}.post-badge.category-showcase{background-color:#d1fae5;color:#065f46}.post-badge.category-tip{background-color:#ede9fe;color:#6d28d9}.report-btn{background-color:#fff7ed;border:none;border-radius:6px;color:#c2410c;cursor:pointer;font-size:.85rem;font-weight:500;margin-left:.5rem;padding:.5rem 1rem;transition:all .2s ease}.report-btn:hover{background-color:#ffedd5}.comment-actions{display:flex;gap:.5rem;margin-top:.5rem}.comment-report-btn{background:none;border:none;color:#c2410c;cursor:pointer;font-size:.8rem;padding:.25rem .5rem}.comment-report-btn:hover{text-decoration:underline}.modal-overlay{background-color:#00000080}.modal-content{background-color:#fff;border-radius:12px;max-width:500px;padding:2rem;width:90%}.modal-content h3{font-size:1.25rem;font-weight:600;margin:0 0 1rem}.modal-content textarea{border:1px solid #e5e5e5;border-radius:8px;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.875rem 1rem;resize:vertical;width:100%}.modal-content textarea:focus{border-color:#333;outline:none}.modal-actions{gap:.75rem;justify-content:flex-end}.post-actions{border-top:1px solid #e5e5e5;display:flex;gap:.5rem;margin-top:1.5rem;padding-top:1rem}@media (max-width:768px){.community-container{padding:1rem}.community-layout{flex-direction:column}.category-sidebar{margin-bottom:1rem;order:-1;width:100%}.category-list{display:flex;flex-wrap:wrap;gap:.5rem}.category-item{margin-bottom:0;padding:.5rem .75rem}.post-detail{padding:1.25rem}.post-item-meta{flex-wrap:wrap;gap:.5rem}}.form-group{margin:1rem 0}.form-group label{margin-bottom:.5rem}.attachments-preview{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.attachment-chip{align-items:center;background-color:#f0f0f0;border-radius:16px;display:flex;font-size:.85rem;padding:.25rem .75rem}.attachment-chip span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip button{background:none;border:none;color:#999;cursor:pointer;font-size:1.25rem;line-height:1;margin-left:.5rem}.attachment-chip button:hover{color:#333}.post-attachments{border-top:1px solid #e5e5e5;margin-top:1.5rem;padding-top:1.5rem}.post-attachments h4{font-weight:600;margin:0 0 1rem}.attachment-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.attachment-preview-image{border-radius:8px;height:100px;object-fit:cover;width:100%}.attachment-file{background-color:#f9f9f9;border-radius:8px;color:#333;display:block;font-size:.9rem;padding:1rem;text-align:center;text-decoration:none;word-break:break-all}.attachment-file:hover{background-color:#f0f0f0}.games-container{margin:0 auto;max-width:1200px;padding:2rem}.games-header{margin-bottom:3rem;text-align:center}.games-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:.5rem}.games-header h1{color:#1d1d1f;font-size:2.5rem;font-weight:600;margin:0}.header-buttons{align-items:center;display:flex;gap:.75rem}.ranking-btn{border:none;border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.ranking-btn.main{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1d1d1f}.ranking-btn.main:hover{box-shadow:0 4px 12px #fbbf2466;transform:scale(1.05)}.fullscreen-toggle{display:none}.games-header p{color:#666;font-size:1.1rem}.games-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.game-card{background:#fff;border:1px solid #e5e5e5;border-radius:16px;cursor:pointer;padding:2rem;text-align:center;transition:all .2s ease}.game-card:hover{border-color:#3b82f6;box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.game-card:active{transform:translateY(-2px)}.game-icon{align-items:center;display:flex;font-size:4rem;height:4.5rem;justify-content:center;line-height:1;margin-bottom:1rem}.game-card h3{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.game-card p{color:#666;font-size:.95rem;line-height:1.5;margin-bottom:.75rem}.game-top-score{background:#fef3c7;border-radius:20px;color:#f59e0b;display:inline-block;font-size:.85rem;font-weight:500;padding:.5rem 1rem}.game-play-area{margin:0 auto;max-width:600px;padding:1rem}.game-header-bar{align-items:center;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.game-header-bar h2{color:#1d1d1f;font-size:1.5rem;font-weight:600;margin:0}.back-btn{background:none;border:none;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:1rem;padding:.5rem;transition:background .2s}.back-btn:hover{background:#f0f7ff}.game-score{background:#f5f5f5;border-radius:20px;color:#666;font-size:.9rem;padding:.5rem 1rem}.header-right{gap:.75rem}.header-right,.sound-toggle{align-items:center;display:flex}.sound-toggle{background:#f5f5f5;border:none;border-radius:50%;cursor:pointer;flex-shrink:0;font-size:1.25rem;height:40px;justify-content:center;transition:all .2s;width:40px}.sound-toggle:hover{background:#e5e5e5;transform:scale(1.05)}.sound-toggle:active{transform:scale(.95)}.sound-toggle.muted{background:#fee2e2}.game-btn{background:#1d1d1f;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.game-btn:hover{background:#333}.game-btn:active{transform:scale(.98)}.game-btn.secondary{background:#f5f5f5;color:#333}.game-btn.secondary:hover{background:#e5e5e5}.game-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.reset-btn{display:block;margin:1.5rem auto 0}.game-complete{background:linear-gradient(135deg,#f0f7ff,#e8f5e9);border-radius:16px;margin-bottom:1.5rem;padding:2rem;text-align:center}.game-complete h3{font-size:1.5rem;margin-bottom:.5rem}.game-complete p{color:#666;margin-bottom:1rem}.memory-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr);margin-bottom:1rem}.memory-card{aspect-ratio:1;cursor:pointer;perspective:1000px}.card-inner{height:100%;position:relative;transform-style:preserve-3d;transition:transform .5s;width:100%}.memory-card.flipped .card-inner{transform:rotateY(180deg)}.card-back,.card-front{align-items:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:12px;display:flex;font-size:2rem;font-weight:600;height:100%;justify-content:center;position:absolute;width:100%}.card-front{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.card-back{background:#fff;border:2px solid #e5e5e5;transform:rotateY(180deg)}.memory-card.matched .card-back{background:#e8f5e9;border-color:#4caf50}.ttt-status{color:#1d1d1f;font-size:1.25rem;font-weight:500;margin-bottom:1.5rem;text-align:center}.ttt-board{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:300px}.ttt-cell{aspect-ratio:1;background:#f5f5f5;border:none;border-radius:12px;cursor:pointer;font-size:2.5rem;font-weight:700;transition:all .2s}.ttt-cell:hover:not(:disabled){background:#e5e5e5}.ttt-cell.X{color:#3b82f6}.ttt-cell.O{color:#ef4444}.ttt-cell.winning{animation:pulse .5s ease-in-out infinite alternate;background:#fef3c7}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.05)}}.sudoku-area{text-align:center}.sudoku-controls{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:1.5rem}.difficulty-select{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border:none;border-radius:12px;color:#0369a1;cursor:pointer;font-size:.95rem;font-weight:500;outline:none;padding:.6rem 1.25rem;transition:all .2s}.difficulty-select:hover{background:linear-gradient(135deg,#bae6fd,#7dd3fc)}.difficulty-select:focus{box-shadow:0 0 0 3px #38bdf84d}.game-btn.small{background:linear-gradient(135deg,#0ea5e9,#0284c7);border-radius:12px;font-size:.9rem;padding:.6rem 1.25rem}.game-btn.small:hover{background:linear-gradient(135deg,#0284c7,#0369a1)}.sudoku-timer{color:#0369a1;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.sudoku-board{background:linear-gradient(145deg,#e0f2fe,#f0f9ff 50%,#e0f2fe);border:3px solid #7dd3fc;border-radius:16px;box-shadow:0 4px 20px #0ea5e926,inset 0 1px 0 #fffc;display:flex;flex-direction:column;margin:0 auto 1.5rem;max-width:380px;padding:6px}.sudoku-row{display:flex}.sudoku-cell{align-items:center;aspect-ratio:1;background:linear-gradient(145deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;color:#1e3a5f;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,sans-serif;font-size:1.35rem;font-weight:600;justify-content:center;transition:all .15s ease;width:11.11111%}.sudoku-cell:hover:not(.initial):not(.selected){background:linear-gradient(145deg,#bae6fd,#7dd3fc)}.sudoku-cell.initial{background:linear-gradient(145deg,#dbeafe,#bfdbfe);color:#1e40af;cursor:default;font-weight:700}.sudoku-cell.selected{background:linear-gradient(145deg,#38bdf8,#0ea5e9);box-shadow:inset 0 2px 4px #0000001a;color:#fff}.sudoku-cell.highlighted{background:linear-gradient(145deg,#bae6fd,#93c5fd)}.sudoku-cell.error{background:linear-gradient(145deg,#fecaca,#fca5a5);color:#dc2626}.sudoku-cell.border-right{border-right:3px solid #38bdf8}.sudoku-cell.border-bottom{border-bottom:3px solid #38bdf8}.sudoku-cell.initial.border-bottom,.sudoku-cell.initial.border-right,.sudoku-row:first-child .sudoku-cell:nth-child(-n+3),.sudoku-row:first-child .sudoku-cell:nth-child(n+7),.sudoku-row:nth-child(2) .sudoku-cell:nth-child(-n+3),.sudoku-row:nth-child(2) .sudoku-cell:nth-child(n+7),.sudoku-row:nth-child(3) .sudoku-cell:nth-child(-n+3),.sudoku-row:nth-child(3) .sudoku-cell:nth-child(n+7),.sudoku-row:nth-child(4) .sudoku-cell:nth-child(n+4):nth-child(-n+6),.sudoku-row:nth-child(5) .sudoku-cell:nth-child(n+4):nth-child(-n+6),.sudoku-row:nth-child(6) .sudoku-cell:nth-child(n+4):nth-child(-n+6),.sudoku-row:nth-child(7) .sudoku-cell:nth-child(-n+3),.sudoku-row:nth-child(7) .sudoku-cell:nth-child(n+7),.sudoku-row:nth-child(8) .sudoku-cell:nth-child(-n+3),.sudoku-row:nth-child(8) .sudoku-cell:nth-child(n+7),.sudoku-row:nth-child(9) .sudoku-cell:nth-child(-n+3),.sudoku-row:nth-child(9) .sudoku-cell:nth-child(n+7){background:linear-gradient(145deg,#dbeafe,#bfdbfe)}.sudoku-numpad{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:0 auto;max-width:380px}.numpad-btn{background:linear-gradient(145deg,#e0f2fe,#bae6fd);border:none;border-radius:12px;box-shadow:0 2px 8px #0ea5e926;color:#0369a1;cursor:pointer;font-size:1.2rem;font-weight:600;height:40px;transition:all .2s;width:40px}.numpad-btn:hover{background:linear-gradient(145deg,#7dd3fc,#38bdf8);box-shadow:0 4px 12px #0ea5e940;color:#fff;transform:translateY(-2px)}.numpad-btn:active{transform:translateY(0)}.numpad-btn.erase{background:linear-gradient(145deg,#fecaca,#fca5a5);color:#dc2626;font-size:1rem;padding:0 1.25rem;width:auto}.numpad-btn.erase:hover{background:linear-gradient(145deg,#f87171,#ef4444);color:#fff}.sudoku-lives{background:#fff;border:1px solid #dc26261a;border-radius:16px;box-shadow:0 2px 12px #0000000f;gap:1rem;justify-content:center;margin-bottom:1.25rem;margin-left:auto;margin-right:auto;max-width:380px;padding:.875rem 1.25rem}.lives-label,.sudoku-lives{align-items:center;display:flex}.lives-label{color:#1d1d1f;font-size:.9rem;font-weight:600;gap:.5rem}.lives-label:before{content:"❤️";font-size:1rem}.lives-hearts{display:flex;flex:1 1;gap:3px;justify-content:center}.lives-hearts .heart{background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;box-shadow:0 1px 3px #dc26264d;height:12px;transition:all .3s cubic-bezier(.4,0,.2,1);width:12px}.lives-hearts .heart.lost{background:#e5e5e5;box-shadow:none;transform:scale(.8)}.lives-count{font-feature-settings:"tnum";color:#dc2626;font-size:1rem;font-variant-numeric:tabular-nums;font-weight:700;min-width:55px;text-align:right}.sudoku-gameover{animation:slideUp .4s ease-out;background:#fff;border:1px solid #dc262633;border-radius:20px;box-shadow:0 8px 32px #dc262626;margin-bottom:1.25rem;margin-left:auto;margin-right:auto;max-width:380px;padding:2rem;text-align:center}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.sudoku-gameover h3{color:#dc2626;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .75rem}.sudoku-gameover p{color:#666;font-size:1rem;line-height:1.5;margin:0 0 1.5rem}.sudoku-gameover .game-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:12px;font-size:1rem;font-weight:600;padding:.875rem 2rem}.sudoku-gameover .game-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:scale(1.02)}.sudoku-board.game-over{filter:grayscale(.3) blur(1px);opacity:.4;pointer-events:none;transition:all .3s ease}.gostop-container{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,sans-serif;margin:0 auto;max-width:800px;padding:1.5rem}.gostop-header{margin-bottom:1.5rem;text-align:center}.gostop-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.gostop-header h1{color:#1d1d1f;font-size:2rem;font-weight:700;letter-spacing:-.03em;margin:0}.header-actions{align-items:center;display:flex;gap:.5rem}.gostop-chips-display{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:980px;box-shadow:0 2px 8px #fbbf2433;display:inline-flex;gap:.5rem;padding:.5rem 1.25rem}.chips-amount,.chips-icon{font-size:1.25rem}.chips-amount{color:#92400e;font-weight:700}.chips-label{color:#a16207;font-size:.85rem;font-weight:500}.gostop-message-bar{background:linear-gradient(135deg,#f5f5f7,#fff);border-radius:16px;box-shadow:0 2px 12px #0000000a;margin-bottom:1.5rem;padding:.875rem 1.25rem}.gostop-message-bar p{color:#1d1d1f;font-size:1rem;font-weight:600;margin:0;text-align:center}.gostop-content{display:flex;flex-direction:column;gap:1.25rem}.section-card{background:#fff;border-radius:24px;box-shadow:0 4px 24px #0000000f;padding:1.5rem}.section-header{margin-bottom:1.25rem;padding-bottom:.875rem}.section-header h2{font-size:1.25rem}.betting-section{display:flex;flex-direction:column;gap:1.25rem}.bet-chips-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.bet-chip{align-items:center;background:#f5f5f7;border:none;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;padding:1.25rem .75rem;transition:all .3s ease}.bet-chip:hover:not(:disabled){background:#e8e8ed;transform:translateY(-2px)}.bet-chip.active{background:linear-gradient(135deg,#0071e3,#00c7be);box-shadow:0 6px 20px #0071e34d}.bet-chip.active .chip-icon,.bet-chip.active .chip-value{color:#fff}.bet-chip:disabled{cursor:not-allowed;opacity:.4}.chip-icon{font-size:1.75rem}.chip-value{color:#1d1d1f;font-size:1.1rem;font-weight:700}.start-game-btn{background:linear-gradient(135deg,#0071e3,#00c7be);border:none;border-radius:980px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.start-game-btn:hover{box-shadow:0 6px 24px #0071e359;transform:scale(1.02)}.rules-card{background:#fbfbfd}.rules-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(2,1fr)}.rule-item{align-items:flex-start;border-radius:12px;box-shadow:0 2px 8px #0000000a;gap:.75rem;padding:.75rem}.rule-icon{flex-shrink:0;font-size:1.5rem}.rule-text strong{color:#1d1d1f;display:block;font-size:.9rem;margin-bottom:.25rem}.rule-text p{color:#86868b;font-size:.8rem;margin:0}.opponent-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.opponent-header{align-items:center;display:flex;gap:1rem;margin-bottom:.75rem}.opponent-avatar{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 8px #00000014;display:flex;font-size:2rem;height:48px;justify-content:center;width:48px}.opponent-info{flex:1 1}.opponent-name{color:#1d1d1f;display:block;font-size:1rem;font-weight:600}.opponent-cards-count{color:#86868b;font-size:.85rem}.opponent-score-display{background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;box-shadow:0 2px 8px #fbbf244d;padding:.5rem 1rem;text-align:center}.score-value{color:#1d1d1f;display:block;font-size:1.25rem;font-weight:700}.score-label{color:#92400e;font-size:.75rem}.collected-cards-bar,.player-collected-bar{background:#00000008;border-radius:12px;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;min-height:40px;padding:.75rem}.collected-chip{border-radius:980px;font-size:.8rem;font-weight:600;padding:.35rem .875rem}.collected-chip.gwang{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 2px 6px #fbbf2466;color:#1d1d1f}.collected-chip.yeol{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 6px #ef444466;color:#fff}.collected-chip.tti{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 6px #3b82f666;color:#fff}.collected-chip.pi{background:#e5e5e5;color:#666}.player-score-chip{background:linear-gradient(135deg,#10b981,#059669);border-radius:980px;box-shadow:0 2px 8px #10b98166;color:#fff;font-size:.9rem;font-weight:700;padding:.35rem 1rem}.field-section{background:linear-gradient(145deg,#0d5c2e,#1a7a40 50%,#0d5c2e);border:3px solid #0a4a24}.field-section .section-header{border-bottom-color:#ffffff26}.field-section .section-header h2{color:#ffffffe6}.field-count{background:#ffffff26;border-radius:980px;color:#fffc;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.field-cards-container{min-height:100px}.empty-field{color:#ffffff80;font-size:.9rem;padding:2rem;text-align:center}.hwatu-cards-grid{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.hand-grid{background:#00000005;border-radius:16px;padding:.5rem}.hwatu-card-new{background:#1a1a1a;border:2px solid #c41e3a;border-radius:6px;box-shadow:0 4px 12px #0000004d,0 1px 3px #0003;cursor:pointer;height:90px;overflow:hidden;position:relative;transition:all .25s ease;width:60px}.hwatu-card-new.small{height:78px;width:52px}.hwatu-card-new.mini{border-radius:4px;border-width:1.5px;cursor:default;height:60px;width:40px}.hwatu-card-inner{height:100%;position:relative;width:100%}.hwatu-image-container{align-items:center;background:linear-gradient(145deg,#fffbeb,#fff7ed);display:flex;height:100%;justify-content:center;width:100%}.hwatu-real-image{display:block;height:100%;object-fit:cover;width:100%}.hwatu-fallback{color:#666;font-size:.8rem;font-weight:600}.hwatu-overlay{background:linear-gradient(#0000,#000000b3);bottom:0;display:flex;justify-content:center;left:0;padding:2px;position:absolute;right:0}.hwatu-card-new.mini .hwatu-overlay{display:none}.collected-cards-display{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.collected-group{background:#fff9;border-left:3px solid #e5e5e5;border-radius:12px;padding:.5rem .75rem}.collected-group.gwang{background:linear-gradient(135deg,#fbbf2426,#f59e0b1a);border-left-color:#f59e0b}.collected-group.yeol{background:linear-gradient(135deg,#ef44441a,#dc26260d);border-left-color:#ef4444}.collected-group.tti{background:linear-gradient(135deg,#3b82f61a,#2563eb0d);border-left-color:#3b82f6}.collected-group.pi{background:#00000008;border-left-color:#9ca3af}.collected-group-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.group-label{border-radius:6px;color:#fff;font-size:.75rem;font-weight:700;padding:.2rem .5rem}.collected-group.gwang .group-label{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1d1d1f}.collected-group.yeol .group-label{background:linear-gradient(135deg,#ef4444,#dc2626)}.collected-group.tti .group-label{background:linear-gradient(135deg,#3b82f6,#2563eb)}.collected-group.pi .group-label{background:#9ca3af}.group-count{color:#86868b;font-size:.7rem;font-weight:600}.collected-cards-row{display:flex;flex-wrap:wrap;gap:4px}.player-collected-section{margin-bottom:.75rem}.player-collected-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.collected-title,.player-collected-header h3{color:#1d1d1f;font-size:.9rem;font-weight:600;margin:0}.no-collected{background:#00000005;border-radius:8px;color:#86868b;font-size:.85rem;padding:1rem;text-align:center}.hwatu-card-new:hover:not(.disabled):not(.mini){box-shadow:0 12px 24px #0003,0 4px 8px #00000026;transform:translateY(-6px) scale(1.02)}.hwatu-card-new.selected{border-color:#3b82f6;box-shadow:0 16px 32px #3b82f64d,0 6px 12px #3b82f633;transform:translateY(-10px) scale(1.05)}.hwatu-card-new.disabled{cursor:default;opacity:.6}.hwatu-card-new.playing{animation:cardPlay .8s ease-out forwards;z-index:100}@keyframes cardPlay{0%{transform:scale(1)}40%{box-shadow:0 25px 50px #0006;transform:scale(1.2) translateY(-25px)}to{box-shadow:0 20px 40px #3b82f666;transform:scale(1.1) translateY(-20px)}}.hwatu-card-new.matched{animation:cardMatch .7s ease-in-out infinite;z-index:50}@keyframes cardMatch{0%,to{box-shadow:0 0 0 0 #fbbf24cc;transform:scale(1)}50%{box-shadow:0 0 30px 12px #fbbf2499;transform:scale(1.12)}}.card-play-effect{animation:playGlow .8s ease-out;background:radial-gradient(circle,#ffffffe6 0,#0000 70%);inset:0;pointer-events:none;position:absolute}@keyframes playGlow{0%{opacity:0;transform:scale(.5)}40%{opacity:1}to{opacity:0;transform:scale(1.8)}}.card-match-effect{animation:matchPulse .7s ease-in-out infinite;border:4px solid #fbbf24;border-radius:10px;inset:-6px;pointer-events:none;position:absolute}@keyframes matchPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.08)}}.match-effect-overlay{align-items:center;animation:matchOverlay 1.2s ease-out forwards;background:#0006;border-radius:16px;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:100}@keyframes matchOverlay{0%{opacity:0}15%{opacity:1}75%{opacity:1}to{opacity:0}}.match-text{animation:matchTextPop 1.2s ease-out forwards;color:#fbbf24;font-size:2rem;font-weight:800;text-shadow:0 4px 20px #0009,0 0 40px #fbbf2480}@keyframes matchTextPop{0%{opacity:0;transform:scale(0) rotate(-10deg)}20%{opacity:1;transform:scale(1.4) rotate(5deg)}40%{transform:scale(1.2) rotate(-2deg)}75%{opacity:1;transform:scale(1.2) rotate(0deg)}to{opacity:0;transform:scale(1.1)}}.computer-playing-card-section{align-items:center;animation:computerCardSection .5s ease-out;background:linear-gradient(135deg,#3b82f61a,#9333ea1a);border:2px dashed #3b82f64d;border-radius:12px;display:flex;flex-direction:column;gap:.5rem;margin:.75rem 0;padding:1rem}@keyframes computerCardSection{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.computer-action-label{color:#3b82f6;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.computer-playing-card-container{animation:computerCardPop .6s ease-out}@keyframes computerCardPop{0%{opacity:0;transform:scale(0) rotate(-180deg)}60%{transform:scale(1.1) rotate(10deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.field-cards-container{position:relative}.hand-hint{color:#86868b;font-size:.65rem;font-weight:400;margin-left:auto}.hwatu-type-badge{border-radius:6px;font-size:.5rem;font-weight:700;padding:1px 5px}.hwatu-type-badge.광{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1d1d1f}.hwatu-type-badge.열끗{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.hwatu-type-badge.띠{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.hwatu-type-badge.피{background:#d1d5db;color:#4b5563}.hwatu-subtype{color:#a1a1aa;font-size:.4rem}.player-collected-bar{background:#f5f5f7;margin-bottom:0}.player-hand-section{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #86efac}.hand-count{background:#10b981;border-radius:980px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.play-card-btn{background:linear-gradient(135deg,#fbbf24,#f59e0b);border:none;border-radius:980px;box-shadow:0 4px 16px #fbbf2459;color:#1d1d1f;cursor:pointer;display:block;font-size:1rem;font-weight:700;margin:1rem auto 0;max-width:200px;padding:.875rem 2rem;transition:all .3s ease;width:100%}.play-card-btn:hover{box-shadow:0 6px 24px #fbbf2473;transform:scale(1.02)}.go-stop-section{display:flex;gap:1rem;justify-content:center}.go-btn,.stop-btn{border:none;border-radius:980px;cursor:pointer;flex:1 1;font-size:1.1rem;font-weight:700;max-width:160px;padding:1rem 2rem;transition:all .3s ease}.go-btn{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 16px #ef444459;color:#fff}.go-btn:hover{box-shadow:0 6px 24px #ef444473;transform:scale(1.05)}.stop-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 16px #10b98159;color:#fff}.stop-btn:hover{box-shadow:0 6px 24px #10b98173;transform:scale(1.05)}.result-section{text-align:center}.result-header{margin-bottom:1.5rem}.result-header h2{color:#1d1d1f;font-size:1.5rem;font-weight:700}.result-comparison{align-items:center;background:#f5f5f7;border-radius:16px;display:flex;gap:1.5rem;justify-content:center;margin-bottom:1.5rem;padding:1.5rem}.result-player{flex:1 1;text-align:center}.result-avatar{font-size:2.5rem;margin-bottom:.5rem}.result-name{color:#86868b;display:block;font-size:.9rem;margin-bottom:.25rem}.result-score{color:#1d1d1f;display:block;font-size:1.5rem;font-weight:700}.go-multiplier{color:#f59e0b;display:block;font-size:.85rem;font-weight:600}.result-vs{background:#fff;border-radius:12px;color:#86868b;font-size:1.1rem;font-weight:700;padding:.5rem 1rem}.result-player.you .result-score{color:#10b981}.score-breakdown-section{background:#f5f5f7;border-radius:16px;margin-bottom:1.5rem;padding:1.25rem;text-align:left}.score-breakdown-section h3{color:#86868b;font-size:.95rem;font-weight:600;margin:0 0 .75rem}.breakdown-list{display:flex;flex-direction:column;gap:.5rem}.breakdown-row{align-items:center;background:#fff;border-radius:8px;display:flex;justify-content:space-between;padding:.5rem .75rem}.breakdown-name{color:#1d1d1f;font-size:.9rem}.breakdown-score{color:#10b981;font-size:.9rem;font-weight:600}.play-again-btn{background:linear-gradient(135deg,#0071e3,#00c7be);border:none;border-radius:980px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.play-again-btn:hover{box-shadow:0 6px 24px #0071e359;transform:scale(1.02)}.poker-area{text-align:center}.poker-info{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-bottom:1.5rem}.poker-chips{background:linear-gradient(135deg,#fef3c7,#fcd34d);color:#92400e;font-weight:600}.poker-chips,.poker-pot{border-radius:12px;padding:.75rem 1.5rem}.poker-pot{background:#f5f5f5;font-weight:500}.poker-table{background:linear-gradient(135deg,#1a472a,#2d5a3c);border-radius:16px;padding:1.5rem}.poker-section,.poker-table{margin-bottom:1.5rem}.poker-section:last-child{margin-bottom:0}.poker-label{color:#ffffffb3;font-size:.85rem;margin-bottom:.5rem}.poker-cards{flex-wrap:wrap;gap:.5rem;min-height:80px}.poker-card,.poker-cards{display:flex;justify-content:center}.poker-card{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0003;cursor:pointer;flex-direction:column;font-size:1.1rem;font-weight:600;gap:.25rem;height:80px;transition:all .2s;width:55px}.poker-card.red{color:#dc2626}.poker-card.black{color:#1d1d1f}.poker-card:hover:not(.disabled):not(.hidden){box-shadow:0 4px 12px #0000004d;transform:translateY(-4px)}.poker-card.selected{border:2px solid #3b82f6;box-shadow:0 6px 16px #3b82f666;transform:translateY(-10px)}.poker-card.hidden{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.poker-card.disabled{cursor:default;opacity:.6}.poker-card .suit{font-size:1.5rem}.poker-card .rank{font-size:1rem}.poker-center{background:#ffffff1a;border-radius:12px;padding:1rem}.poker-message{color:#fff;font-size:1.1rem;font-weight:500;margin-bottom:1rem}.poker-result{color:#fbbf24;font-size:1.2rem;font-weight:600;margin-bottom:1rem}.poker-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.poker-btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.poker-btn.primary{background:#fbbf24;color:#1d1d1f}.poker-btn.primary:hover{background:#f59e0b}.poker-btn.secondary{background:#fff3;color:#fff}.poker-btn.secondary:hover{background:#ffffff4d}.poker-btn.danger{background:#ef4444;color:#fff}.poker-btn.danger:hover{background:#dc2626}.poker-btn:disabled{cursor:not-allowed;opacity:.5}.betting-area{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.bet-input{-moz-appearance:textfield;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;color:#fff;font-size:1rem;padding:.5rem 1rem;text-align:center;width:100px}.bet-input::-webkit-inner-spin-button,.bet-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.bet-input:focus{border-color:#fbbf24;outline:none}.bet-input::placeholder{color:#ffffff80}.leaderboard-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.leaderboard-modal{background:#fff;border-radius:16px;max-height:80vh;max-width:400px;overflow-y:auto;padding:2rem;width:100%}.leaderboard-modal h3{color:#1d1d1f;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.leaderboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.leaderboard-header h3{margin:0}.close-btn{background:none;border:none;color:#999;cursor:pointer;font-size:1.5rem;line-height:1;padding:.25rem;transition:color .2s}.close-btn:hover{color:#333}.leaderboard-content{margin-bottom:1rem}.no-scores{color:#999;padding:2rem;text-align:center}.leaderboard-modal.all-rankings{max-width:500px}.all-rankings-content{display:flex;flex-direction:column;gap:1.5rem}.game-ranking-section{background:#f9fafb;border-radius:12px;padding:1rem}.game-ranking-section h4{align-items:center;color:#1d1d1f;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:.75rem}.top-3{display:flex;flex-direction:column;gap:.5rem}.rank-item{align-items:center;background:#fff;border-radius:8px;display:flex;gap:.75rem;padding:.5rem}.rank-item.rank-1{background:linear-gradient(135deg,#fef3c7,#fde68a)}.rank-item.rank-2{background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}.rank-item.rank-3{background:linear-gradient(135deg,#fed7aa,#fdba74)}.rank-item .rank-badge{font-size:1.25rem}.rank-item .rank-name{color:#1d1d1f;flex:1 1;font-weight:500}.rank-item .rank-score{color:#3b82f6;font-weight:600}.leaderboard-modal.score-submit{text-align:center}.final-score{font-size:1.5rem;margin-bottom:.5rem}.final-score strong{color:#3b82f6}.rank-notice{color:#f59e0b;font-weight:600;margin-bottom:1.5rem}.name-input-area{display:flex;gap:.75rem;margin-bottom:1rem}.name-input{border:2px solid #e5e5e5;border-radius:8px;flex:1 1;font-size:1rem;padding:.75rem 1rem;text-align:center}.name-input:focus{border-color:#3b82f6;outline:none}.skip-btn{background:none;border:none;color:#999;cursor:pointer;font-size:.9rem;padding:.5rem}.skip-btn:hover{color:#666}.leaderboard-table{border-collapse:collapse;margin-bottom:1.5rem;width:100%}.leaderboard-table td,.leaderboard-table th{border-bottom:1px solid #e5e5e5;padding:.75rem;text-align:left}.leaderboard-table th{color:#666;font-size:.85rem;font-weight:600;text-transform:uppercase}.leaderboard-table td{color:#1d1d1f}.leaderboard-table tr:last-child td{border-bottom:none}.rank-badge{align-items:center;border-radius:50%;display:inline-flex;font-size:.9rem;font-weight:600;height:28px;justify-content:center;width:28px}.rank-badge.gold{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.rank-badge.silver{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#fff}.rank-badge.bronze{background:linear-gradient(135deg,#d97706,#b45309);color:#fff}.rank-badge.normal{background:#f5f5f5;color:#666}.leaderboard-empty{color:#666;padding:2rem;text-align:center}.score-submit{background:#f5f5f5;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.score-submit h4{color:#1d1d1f;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.score-submit-form{display:flex;gap:.75rem}.score-submit-input{border:2px solid #e5e5e5;border-radius:8px;flex:1 1;font-size:1rem;padding:.75rem 1rem}.score-submit-input:focus{border-color:#3b82f6;outline:none}.score-submit-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background .2s}.score-submit-btn:hover{background:#2563eb}.leaderboard-close{background:#1d1d1f;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:500;padding:.75rem;transition:background .2s;width:100%}.leaderboard-close:hover{background:#333}.all-rankings{border-top:1px solid #e5e5e5;margin-top:3rem;padding-top:2rem}.all-rankings h2{color:#1d1d1f;font-size:1.75rem;font-weight:600;margin-bottom:2rem;text-align:center}.rankings-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.ranking-card{background:#fff;border:1px solid #e5e5e5;border-radius:16px;padding:1.5rem}.ranking-card h3{align-items:center;color:#1d1d1f;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.ranking-card .game-emoji{font-size:1.5rem}.ranking-list{list-style:none;margin:0;padding:0}.ranking-item{align-items:center;border-bottom:1px solid #f5f5f5;display:flex;gap:.75rem;padding:.75rem 0}.ranking-item:last-child{border-bottom:none}.ranking-item .rank{align-items:center;background:#f5f5f5;border-radius:50%;color:#666;display:flex;font-size:.85rem;font-weight:600;height:24px;justify-content:center;width:24px}.ranking-item .rank.top-1{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.ranking-item .rank.top-2{background:linear-gradient(135deg,#d1d5db,#9ca3af);color:#fff}.ranking-item .rank.top-3{background:linear-gradient(135deg,#d97706,#b45309);color:#fff}.ranking-item .name{color:#1d1d1f;flex:1 1;font-weight:500}.ranking-item .score{color:#3b82f6;font-weight:600}.ranking-empty{color:#999;font-size:.9rem;padding:1rem;text-align:center}@media (max-width:768px){.games-container{padding:1.25rem 1rem}.games-title-row{flex-direction:column;gap:.75rem}.games-header h1{font-size:1.75rem}.header-buttons{gap:.5rem}.ranking-btn{font-size:.85rem;padding:.5rem 1rem}.games-header p{font-size:.95rem}.games-grid{gap:.75rem;grid-template-columns:repeat(2,1fr)}.game-card{border-radius:14px;padding:1.25rem 1rem}.game-icon{font-size:2.5rem;height:3rem;margin-bottom:.5rem}.game-card h3{font-size:1rem;margin-bottom:.25rem}.game-card p{font-size:.8rem;line-height:1.4;margin-bottom:.5rem}.game-top-score{font-size:.7rem;padding:.3rem .6rem}.game-play-area{padding:.75rem}.game-header-bar{grid-gap:.5rem;align-items:center;display:grid;gap:.5rem;grid-template-columns:auto 1fr auto;padding-bottom:.75rem}.game-header-bar h2{font-size:1.1rem;margin:0;text-align:center}.back-btn{font-size:.9rem;padding:.4rem .6rem}.header-right{align-items:center;display:flex;gap:.4rem}.game-score{font-size:.75rem;padding:.35rem .6rem;white-space:nowrap}.sound-toggle{font-size:1rem;height:34px;width:34px}.ranking-btn:not(.main){font-size:.85rem;min-width:34px;padding:.35rem .5rem}.memory-grid{gap:.4rem;margin:0 auto;max-width:320px}.card-back,.card-front{border-radius:10px;font-size:1.4rem}.memory-card{border-radius:10px}.game-complete{border-radius:14px;margin-bottom:1rem;padding:1.25rem}.game-complete h3{font-size:1.25rem}.game-complete p{font-size:.9rem}.ttt-status{font-size:1.1rem;margin-bottom:1rem}.ttt-board{gap:6px;max-width:280px}.ttt-cell{border-radius:10px;font-size:2.25rem}.game-buttons{flex-direction:row;gap:.75rem}.game-btn{border-radius:10px;font-size:.9rem;padding:.65rem 1.25rem}.sudoku-area .game-header-bar{margin-bottom:.75rem}.sudoku-lives{border-radius:12px;gap:.6rem;margin-bottom:.875rem;max-width:100%;padding:.6rem .875rem}.lives-label{font-size:.8rem}.lives-label:before{font-size:.85rem}.lives-hearts{gap:2px}.lives-hearts .heart{height:10px;width:10px}.lives-count{font-size:.85rem;min-width:45px}.sudoku-controls{gap:.5rem;margin-bottom:1rem}.difficulty-select{padding:.5rem .875rem}.difficulty-select,.game-btn.small{border-radius:10px;font-size:.85rem}.game-btn.small{padding:.5rem 1rem}.sudoku-board{border-radius:12px;border-width:2px;margin-bottom:1rem;max-width:100%;padding:4px}.sudoku-cell{border-width:1px;font-size:1rem}.sudoku-cell.border-right{border-right-width:2px}.sudoku-cell.border-bottom{border-bottom-width:2px}.sudoku-numpad{gap:.35rem;max-width:100%}.numpad-btn{border-radius:8px;font-size:1.1rem;height:38px;width:32px}.numpad-btn.erase{font-size:.9rem;padding:0 .875rem}.sudoku-gameover{border-radius:16px;max-width:100%;padding:1.5rem}.sudoku-gameover h3{font-size:1.35rem}.sudoku-gameover p{font-size:.9rem;margin-bottom:1.25rem}.sudoku-gameover .game-btn{font-size:.95rem;padding:.75rem 1.5rem}.game-play-area.fullscreen-mode,.gostop-container.fullscreen-mode{-webkit-overflow-scrolling:touch;background:#f5f5f7;bottom:0;left:0;max-width:none;overflow-y:auto;padding:0;position:fixed;right:0;top:0;z-index:9999}.game-play-area.fullscreen-mode .game-header-bar{background:#fff;border-bottom:1px solid #e5e5e5;margin-bottom:0;padding:.75rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.game-play-area.fullscreen-mode .sudoku-area{padding:.75rem}.gostop-container.fullscreen-mode .gostop-header{background:#fff;border-bottom:1px solid #e5e5e5;margin-bottom:0;padding:.75rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.gostop-container.fullscreen-mode .gostop-content{padding:.75rem}.fullscreen-toggle{align-items:center;background:#f5f5f7;border:none;border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;font-size:1.1rem;height:36px;justify-content:center;transition:all .2s;width:36px}.fullscreen-toggle:hover{background:#e8e8ed}.fullscreen-toggle:active{transform:scale(.95)}.gostop-container{padding:1rem}.gostop-header-top{gap:.5rem}.gostop-header h1{font-size:1.5rem}.gostop-chips-display{padding:.4rem 1rem}.chips-amount,.chips-icon{font-size:1rem}.chips-label{font-size:.75rem}.gostop-message-bar{border-radius:12px;margin-bottom:1rem;padding:.625rem 1rem}.gostop-message-bar p{font-size:.9rem}.gostop-content{gap:1rem}.section-card{border-radius:16px;padding:1rem}.section-header{margin-bottom:1rem;padding-bottom:.625rem}.section-header h2{font-size:1rem}.bet-chips-grid{gap:.5rem;grid-template-columns:repeat(2,1fr);margin-bottom:1rem}.bet-chip{border-radius:12px;padding:1rem .5rem}.chip-icon{font-size:1.5rem}.chip-value{font-size:1rem}.start-game-btn{font-size:1rem;padding:.875rem}.rules-grid{gap:.625rem;grid-template-columns:1fr}.rule-item{padding:.625rem}.rule-icon{font-size:1.25rem}.rule-text strong{font-size:.85rem}.rule-text p{font-size:.75rem}.opponent-header{gap:.75rem}.opponent-avatar{font-size:1.5rem;height:40px;width:40px}.opponent-name{font-size:.9rem}.opponent-cards-count{font-size:.75rem}.opponent-score-display{border-radius:10px;padding:.4rem .75rem}.score-value{font-size:1.1rem}.score-label{font-size:.65rem}.collected-cards-bar,.player-collected-bar{gap:.35rem;min-height:32px;padding:.5rem}.collected-chip{font-size:.7rem;padding:.25rem .625rem}.player-score-chip{font-size:.8rem;padding:.25rem .75rem}.field-section{border-width:2px}.field-count{font-size:.7rem;padding:.2rem .5rem}.field-cards-container{min-height:80px}.empty-field{font-size:.8rem;padding:1.5rem}.hwatu-cards-grid{gap:5px}.hwatu-card-new{border-radius:5px;border-width:1.5px;height:78px;width:52px}.hwatu-card-new.small{height:69px;width:46px}.hwatu-overlay{padding:1px}.hwatu-type-badge{font-size:.4rem;padding:.5px 4px}.hand-count{font-size:.7rem;padding:.2rem .5rem}.hand-grid{border-radius:10px;padding:.35rem}.collected-cards-display{gap:.5rem;margin-top:.5rem}.collected-group{border-left-width:2px;border-radius:8px;padding:.4rem .5rem}.collected-group-header{gap:.35rem;margin-bottom:.35rem}.group-label{border-radius:4px;font-size:.65rem;padding:.15rem .4rem}.group-count{font-size:.6rem}.collected-cards-row{gap:3px}.hwatu-card-new.mini{border-radius:3px;border-width:1px;height:51px;width:34px}.player-collected-section{margin-bottom:.5rem}.collected-title,.player-collected-header h3{font-size:.8rem}.no-collected{border-radius:6px;font-size:.75rem;padding:.75rem}.hwatu-card-new:hover:not(.disabled){transform:translateY(-4px)}.hwatu-card-new.selected{transform:translateY(-7px)}.play-card-btn{font-size:.9rem;max-width:180px;padding:.65rem 1.5rem}.go-stop-section{gap:.75rem}.go-btn,.stop-btn{font-size:1rem;max-width:140px;padding:.75rem 1.5rem}.result-header h2{font-size:1.25rem}.result-comparison{border-radius:12px;gap:1rem;padding:1rem}.result-avatar{font-size:2rem}.result-name{font-size:.8rem}.result-score{font-size:1.25rem}.go-multiplier{font-size:.75rem}.result-vs{border-radius:8px;font-size:.9rem;padding:.35rem .75rem}.score-breakdown-section{border-radius:12px;margin-bottom:1rem;padding:1rem}.score-breakdown-section h3{font-size:.85rem;margin-bottom:.5rem}.breakdown-row{border-radius:6px;padding:.4rem .5rem}.breakdown-name,.breakdown-score{font-size:.8rem}.play-again-btn{font-size:1rem;padding:.875rem}.poker-area .game-header-bar,.poker-message{margin-bottom:.75rem}.poker-message{font-size:1rem;padding:.5rem}.poker-table{border-radius:14px;padding:1rem}.opponent-hand,.player-hand{margin-bottom:1rem}.opponent-hand p,.player-hand p{color:#fffc;font-size:.9rem;margin-bottom:.5rem}.cards{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center}.poker-card{border-radius:6px;font-size:.85rem;height:62px;width:44px}.poker-card .card-value{font-size:.95rem}.poker-card .card-suit{font-size:1.1rem}.poker-card.selected{transform:translateY(-6px)}.exchange-controls{margin-top:1rem}.exchange-controls .game-btn{padding:.65rem 1.25rem}.leaderboard-overlay{padding:.75rem}.leaderboard-modal{border-radius:16px;margin:0;max-height:85vh;max-width:100%;padding:1.25rem}.leaderboard-header{margin-bottom:1rem}.leaderboard-header h3{font-size:1.15rem}.close-btn{font-size:1.25rem;padding:.25rem}.leaderboard-table{font-size:.85rem}.leaderboard-table td,.leaderboard-table th{padding:.5rem .4rem}.leaderboard-table .rank{font-size:1rem}.leaderboard-table .date{font-size:.75rem}.leaderboard-modal.score-submit{padding:1.5rem}.final-score{font-size:1.25rem}.rank-notice{font-size:1rem;margin-bottom:1rem}.name-input-area{flex-direction:column;gap:.75rem}.name-input{font-size:1rem;padding:.65rem 1rem;width:100%}.name-input-area .game-btn{padding:.65rem;width:100%}.skip-btn{margin-top:.5rem}.leaderboard-modal.all-rankings{max-width:100%}.all-rankings-content{gap:1rem}.game-ranking-section{border-radius:10px;padding:.875rem}.game-ranking-section h4{font-size:.95rem;margin-bottom:.6rem}.top-3{gap:.4rem}.rank-item{border-radius:8px;padding:.5rem}.rank-item .rank-badge{font-size:1rem}.rank-item .rank-name{font-size:.9rem}.no-scores,.rank-item .rank-score{font-size:.85rem}.no-scores{padding:1rem}.loading-scores{padding:2rem}}@media (max-width:360px){.games-grid{grid-template-columns:1fr}.game-card{padding:1.5rem}.game-icon{font-size:3rem;height:3.5rem}.sudoku-cell{font-size:.9rem}.numpad-btn{font-size:1rem;height:34px;width:28px}.lives-hearts .heart{height:8px;width:8px}.hwatu-card{height:52px;padding:3px 2px;width:36px}.hwatu-month{font-size:.5rem;padding:1px 4px}.hwatu-symbol{font-size:1rem}.hwatu-type{font-size:.4rem;padding:1px 3px}.bet-btn{font-size:.9rem;min-width:55px;padding:.6rem 1rem}.go-btn,.stop-btn{font-size:.95rem;padding:.7rem 1.25rem}.matgo-table{padding:.75rem}.field-cards-grid,.hand-cards{gap:4px}.poker-card{height:54px;width:38px}}.family-calendar{margin:0 auto;max-width:1200px;padding:20px}.calendar-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 320px}.calendar-main{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:24px}.calendar-header{justify-content:space-between;margin-bottom:24px}.calendar-header,.calendar-nav{align-items:center;display:flex}.calendar-nav{gap:16px}.nav-btn{align-items:center;background:#f5f5f7;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.nav-btn:hover{background:#e5e5e7}.current-month{color:#1d1d1f;font-size:24px;font-weight:600;margin:0;min-width:180px;text-align:center}.sidebar-search{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:16px;position:relative}.search-input-wrapper{align-items:center;background:#f5f5f7;border-radius:10px;display:flex;padding:0 12px;transition:all .2s ease}.search-input-wrapper:focus-within{background:#fff;box-shadow:0 0 0 2px #0071e3}.search-icon{font-size:14px;margin-right:8px;opacity:.6}.search-input{background:#0000;border:none;flex:1 1;font-size:14px;min-width:0;outline:none;padding:10px 0;width:100%}.search-input::placeholder{color:#86868b}.search-clear-btn{align-items:center;background:#c7c7cc;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;height:20px;justify-content:center;line-height:1;width:20px}.search-clear-btn:hover{background:#86868b}.search-results{background:#fff;border:1px solid #e5e5e7;border-radius:12px;margin-top:12px;max-height:300px;overflow-y:auto}.search-results-header{background:#f9f9f9;border-bottom:1px solid #e5e5e7;color:#86868b;font-size:12px;padding:10px 12px}.search-no-results{color:#86868b;font-size:13px;padding:20px 12px;text-align:center}.search-result-item{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background .2s ease}.search-result-item:hover{background:#f5f5f7}.search-result-color{border-radius:2px;flex-shrink:0;height:28px;width:3px}.search-result-info{flex:1 1;min-width:0}.search-result-title{color:#1d1d1f;display:block;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-date{color:#86868b;display:block;font-size:11px;margin-top:2px}.search-more{border-top:1px solid #e5e5e7;color:#86868b;font-size:11px;padding:10px 12px;text-align:center}.calendar-actions{display:flex;gap:12px}.today-btn{background:#fff;border:1px solid #d2d2d7;border-radius:980px;color:#1d1d1f;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.today-btn:hover{background:#f5f5f7}.add-event-btn{background:#0071e3;border:none;border-radius:980px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.add-event-btn:hover{background:#0077ed}.google-btn,.google-connected{align-items:center;display:flex;gap:8px}.google-btn{background:#fff;border:1px solid #d2d2d7;border-radius:980px;color:#1d1d1f;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.google-btn:hover{background:#f5f5f7;border-color:#4285f4}.google-btn.connected{background:#e8f0fe;border-color:#4285f4;color:#4285f4}.google-btn:disabled{cursor:not-allowed;opacity:.6}.google-icon{align-items:center;background:linear-gradient(135deg,#4285f4,#34a853,#fbbc05,#ea4335);border-radius:50%;color:#fff;display:flex;font-size:11px;font-weight:700;height:18px;justify-content:center;width:18px}.google-icon.small{font-size:10px;height:16px;width:16px}.refresh-btn{align-items:center;background:#fff;border:1px solid #d2d2d7;border-radius:50%;display:flex;font-size:18px;height:36px;justify-content:center;width:36px}.refresh-btn:hover{background:#f5f5f7;border-color:#4285f4;color:#4285f4}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.google-error{background:#fff3f3;border-radius:10px;color:#ff3b30;font-size:14px;margin-bottom:16px;padding:12px 16px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.weekday{color:#86868b;font-size:13px;font-weight:600;padding:12px 0;text-align:center}.weekday.sunday{color:#ff3b30}.weekday.saturday{color:#0071e3}.calendar-grid{grid-gap:1px;background:#e5e5e7;border-radius:12px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);overflow:hidden}.calendar-day{background:#fff;cursor:pointer;display:flex;flex-direction:column;min-height:90px;min-width:0;overflow:hidden;padding:6px;position:relative;transition:background .2s ease}.calendar-day:hover{background:#f5f5f7}.calendar-day.other-month{background:#fafafa}.calendar-day.other-month .day-number{color:#c7c7cc}.calendar-day.today{background:#f0f7ff}.calendar-day.today .day-number{align-items:center;background:#0071e3;border-radius:50%;color:#fff;display:inline-flex;font-size:14px;font-weight:600;height:28px;justify-content:center;line-height:1;width:28px}.calendar-day.selected{background:#e8f4ff;box-shadow:inset 0 0 0 2px #0071e3}.calendar-day.sunday .day-number{color:#ff3b30}.calendar-day.saturday .day-number{color:#0071e3}.day-number{color:#1d1d1f;font-size:14px;font-weight:500}.day-events{display:flex;flex-direction:column;gap:2px;margin-top:4px;min-width:0;overflow:hidden;width:100%}.event-label{border-radius:3px;color:#fff;display:block;font-size:10px;line-height:1.2;max-width:100%;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;white-space:nowrap}.event-dot{border-radius:50%;height:8px;width:8px}.more-events{color:#86868b;font-size:10px;padding-left:2px}.calendar-sidebar,.sidebar-sections{display:flex;flex-direction:column;gap:20px}.sidebar-section{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:20px}.sidebar-section h3{color:#1d1d1f;font-size:16px;font-weight:600;margin:0 0 16px}.no-events{color:#86868b;font-size:14px;padding:20px 0;text-align:center}.event-list{display:flex;flex-direction:column;gap:12px}.event-item{align-items:flex-start;background:#f5f5f7;border-radius:12px;display:flex;gap:12px;padding:12px;transition:background .2s ease}.event-item:hover{background:#e5e5e7}.event-color{border-radius:2px;flex-shrink:0;height:100%;min-height:40px;width:4px}.event-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.event-title{color:#1d1d1f;font-size:14px;font-weight:500}.event-time{color:#0071e3;font-size:12px}.event-category{color:#86868b;font-size:11px}.event-actions{display:flex;gap:4px}.event-actions button{background:#0000;border:none;border-radius:6px;cursor:pointer;font-size:14px;height:28px;transition:background .2s ease;width:28px}.edit-btn:hover{background:#0071e31a;color:#0071e3}.delete-btn:hover{background:#ff3b301a;color:#ff3b30}.event-item.google-event{background:#e8f0fe}.event-item.google-event:hover{background:#d3e3fd}.google-badge{background:#4285f4;border-radius:50%;color:#fff;display:inline-flex;font-size:9px;font-weight:700;height:16px;margin-left:6px;vertical-align:middle;width:16px}.google-badge,.google-link-btn{align-items:center;justify-content:center}.google-link-btn{background:#0000;border:none;border-radius:6px;color:#4285f4;cursor:pointer;display:flex;font-size:14px;height:28px;text-decoration:none;transition:background .2s ease;width:28px}.google-link-btn:hover{background:#4285f41a}.google-sync-label{background:#f0f7ff;border:1px solid #d3e3fd;border-radius:10px;padding:12px 16px!important}.google-sync-label .google-icon{margin-left:4px}.google-event-notice{align-items:center;background:#e8f0fe;border-radius:10px;color:#4285f4;display:flex;font-size:13px;gap:8px;margin-bottom:20px;padding:12px 16px}.upcoming-list{display:flex;flex-direction:column;gap:8px}.upcoming-item{align-items:center;background:#f5f5f7;border-radius:10px;display:flex;gap:12px;padding:10px 12px}.upcoming-info{display:flex;flex-direction:column;gap:2px}.upcoming-title{color:#1d1d1f;font-size:13px;font-weight:500}.upcoming-date{color:#86868b;font-size:11px}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.event-modal{background:#fff;border-radius:20px;max-height:90vh;max-width:480px;overflow-y:auto;padding:32px;width:100%}.event-modal h2{color:#1d1d1f;font-size:24px;font-weight:600;margin:0 0 24px}.form-group{margin-bottom:20px}.form-group label{color:#1d1d1f;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input[type=date],.form-group input[type=text],.form-group input[type=time],.form-group select,.form-group textarea{background:#fff;border:1px solid #d2d2d7;border-radius:12px;box-sizing:border-box;color:#1d1d1f;font-size:16px;padding:12px 16px;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e31a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.checkbox-label{align-items:center;cursor:pointer;display:flex!important;gap:8px}.checkbox-label input[type=checkbox]{accent-color:#0071e3;height:18px;width:18px}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions button{border-radius:12px;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;padding:14px 24px;transition:all .2s ease}.modal-actions .cancel-btn{background:#fff;border:1px solid #d2d2d7;color:#1d1d1f}.modal-actions .cancel-btn:hover{background:#f5f5f7}.modal-actions .submit-btn{background:#0071e3;border:none;color:#fff}.modal-actions .submit-btn:hover{background:#0077ed}@media (max-width:900px){.calendar-layout{grid-template-columns:1fr}.calendar-sidebar{gap:16px;order:-1}.sidebar-search{width:100%}.sidebar-sections{-webkit-overflow-scrolling:touch;display:flex;flex-direction:row;gap:16px;overflow-x:auto;padding-bottom:8px}.sidebar-section{flex-shrink:0;min-width:280px}}@media (max-width:600px){.family-calendar{padding:12px}.calendar-main{padding:16px}.calendar-header{flex-direction:column;gap:12px}.current-month{font-size:20px}.sidebar-search{padding:12px}.search-results{max-height:250px}.calendar-day{min-height:70px;padding:4px}.day-number{font-size:12px}.event-label{font-size:9px;padding:1px 3px}.calendar-day.today .day-number{font-size:12px;height:24px;width:24px}.event-modal{border-radius:16px;padding:24px}}.family-space-container{margin:0 auto;max-width:1200px;min-height:100vh;padding:80px 20px 40px}.family-space-header{margin-bottom:32px;text-align:center}.family-space-header h1{color:#1d1d1f;font-size:40px;font-weight:700;letter-spacing:-.02em;margin:0 0 12px}.family-space-header p{color:#86868b;font-size:18px;margin:0}.family-tabs{display:flex;gap:12px;justify-content:center;margin-bottom:32px}.family-tab{align-items:center;background:#f5f5f7;border:none;border-radius:980px;color:#1d1d1f;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s ease}.family-tab:hover{background:#e5e5e7}.family-tab.active{background:#0071e3;color:#fff}.tab-icon{font-size:18px}.family-content{background:#0000}.gallery-placeholder{background:#fff;border-radius:20px;box-shadow:0 2px 12px #00000014;padding:80px 40px;text-align:center}.placeholder-icon{font-size:64px;margin-bottom:24px;opacity:.5}.gallery-placeholder h2{color:#1d1d1f;font-size:28px;font-weight:600;margin:0 0 12px}.gallery-placeholder p{color:#86868b;font-size:16px;margin:0 auto 24px;max-width:400px}.coming-soon-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:980px;color:#fff;display:inline-block;font-size:14px;font-weight:600;padding:8px 20px}@media (max-width:600px){.family-space-container{padding:70px 16px 32px}.family-space-header h1{font-size:28px}.family-space-header p{font-size:15px}.family-tabs{align-items:stretch;flex-direction:column}.family-tab{justify-content:center}.gallery-placeholder{padding:48px 24px}.placeholder-icon{font-size:48px}.gallery-placeholder h2{font-size:22px}}.admin-container{margin:0 auto;max-width:1200px;padding:2rem}.admin-header{margin-bottom:2rem}.admin-header h1{font-size:2rem;font-weight:600;margin-bottom:.5rem}.admin-header p{color:#666}.admin-message{border-radius:8px;margin-bottom:1.5rem;padding:1rem;text-align:center}.admin-message.success{background-color:#d1fae5;color:#065f46}.admin-message.error{background-color:#fee2e2;color:#dc2626}.admin-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:2rem}.stat-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:1.5rem;text-align:center}.stat-number{color:#1d1d1f;display:block;font-size:2.5rem;font-weight:600}.stat-label{color:#666;display:block;font-size:.9rem;margin-top:.25rem}.users-table-container{background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table td,.users-table th{border-bottom:1px solid #e5e5e5;padding:1rem;text-align:left}.users-table th{color:#666;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.users-table tbody tr:hover,.users-table th{background-color:#f9f9f9}.users-table tbody tr:last-child td{border-bottom:none}.users-table tbody tr.current-user{background-color:#f0f9ff}.you-badge{background-color:#1d1d1f;border-radius:4px;color:#fff;display:inline-block;font-size:.7rem;font-weight:500;margin-left:.5rem;padding:.125rem .5rem}.tier-select{background-color:#fff;border:1px solid #e5e5e5;border-radius:6px;cursor:pointer;font-size:.9rem;padding:.5rem .75rem;transition:border-color .2s ease}.tier-select:focus{border-color:#333;outline:none}.delete-btn{background-color:#fee2e2;border:none;border-radius:6px;color:#dc2626;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.delete-btn:hover:not(:disabled){background-color:#fecaca}.delete-btn:disabled{background-color:#f3f4f6;color:#9ca3af;cursor:not-allowed}.pending-section{margin-bottom:2rem}.pending-section h2,.users-section h2{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.pending-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.pending-card{align-items:center;background-color:#fffbeb;border:1px solid #fcd34d;border-radius:12px;display:flex;gap:1rem;justify-content:space-between;padding:1.25rem}.pending-info{display:flex;flex-direction:column;gap:.25rem}.pending-info strong{color:#1d1d1f;font-size:1rem}.pending-info span{color:#666;font-size:.85rem}.pending-date{color:#999!important;font-size:.8rem!important}.pending-actions{display:flex;gap:.5rem}.approve-btn{background-color:#065f46;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.approve-btn:hover{background-color:#047857}.reject-btn{background-color:initial;border:1px solid #dc2626;border-radius:6px;color:#dc2626;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.reject-btn:hover{background-color:#fee2e2}.users-section{margin-top:2rem}.users-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem}.users-header h2{margin-bottom:0}.provider-filter{display:flex;flex-wrap:wrap;gap:.5rem}.filter-btn{background-color:#f5f5f5;border:1px solid #e5e5e5;border-radius:20px;color:#666;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s ease}.filter-btn:hover{background-color:#e5e5e5}.filter-btn.active{background-color:#1d1d1f;border-color:#1d1d1f;color:#fff}.provider-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.8rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.provider-google{background-color:#e8f4fd;color:#1a73e8}.provider-kakao{background-color:#fff9e6;color:#3c1e1e}.provider-email{background-color:#f3f4f6;color:#6b7280}.admin-tabs{border-bottom:1px solid #e5e5e5;display:flex;gap:.5rem;margin-bottom:2rem;padding-bottom:.5rem}.admin-tab{align-items:center;background:none;border:none;border-radius:8px 8px 0 0;color:#666;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.admin-tab:hover{background-color:#f5f5f5;color:#333}.admin-tab.active{background-color:#f5f5f5;color:#1d1d1f}.tab-badge{background-color:#dc2626;border-radius:10px;color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.moderation-section{margin-bottom:2rem}.moderation-section h2{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.no-data{background-color:#f9f9f9;border-radius:12px;color:#999;padding:2rem;text-align:center}.reports-list{display:flex;flex-direction:column;gap:1rem}.report-card{background-color:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:1.25rem;transition:all .2s ease}.report-card.pending{border-left:4px solid #f59e0b}.report-card.actioned{border-left:4px solid #10b981;opacity:.7}.report-card.dismissed{border-left:4px solid #6b7280;opacity:.7}.report-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.report-type{border-radius:4px;font-size:.8rem;font-weight:500;padding:.25rem .5rem}.report-type.post{background-color:#dbeafe;color:#1d4ed8}.report-type.comment{background-color:#e5e5e5;color:#666}.report-status{border-radius:4px;font-size:.8rem;font-weight:500;padding:.25rem .5rem}.status-pending{background-color:#fef3c7;color:#b45309}.status-reviewed{background-color:#dbeafe;color:#1d4ed8}.status-dismissed{background-color:#e5e5e5;color:#666}.status-actioned{background-color:#d1fae5;color:#065f46}.report-content{margin-bottom:1rem}.report-target{color:#1d1d1f;margin:0 0 .5rem}.report-reason{color:#666;font-size:.9rem;margin:0}.report-meta{color:#999;display:flex;flex-wrap:wrap;font-size:.8rem;gap:1rem;margin-top:.75rem}.report-actions{border-top:1px solid #e5e5e5;display:flex;gap:.5rem;padding-top:1rem}.action-btn{border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.action-btn.hide{background-color:#fee2e2;color:#dc2626}.action-btn.hide:hover{background-color:#fecaca}.action-btn.dismiss{background-color:#f3f4f6;color:#6b7280}.action-btn.dismiss:hover{background-color:#e5e7eb}.hidden-posts-list{display:flex;flex-direction:column;gap:.75rem}.hidden-post-card{align-items:center;background-color:#f9f9f9;border:1px solid #e5e5e5;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.hidden-post-info{display:flex;flex-direction:column;gap:.25rem}.hidden-post-info strong{color:#1d1d1f}.hidden-post-info span{color:#666;font-size:.85rem}.restore-btn{background-color:#dbeafe;border:none;border-radius:6px;color:#1d4ed8;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.restore-btn:hover{background-color:#bfdbfe}@media (max-width:768px){.users-table-container{overflow-x:auto}.users-table{min-width:600px}.admin-stats{grid-template-columns:1fr}.admin-tabs{overflow-x:auto}.report-meta{flex-direction:column;gap:.25rem}.hidden-post-card{align-items:flex-start;flex-direction:column;gap:1rem}}.asset-library-container{background-color:#fff;border-radius:12px;margin-top:2rem;padding:1.5rem}.asset-library-container h2{font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.upload-area{background-color:#f9f9f9;border:2px dashed #0071e3;border-radius:12px;cursor:pointer;margin-bottom:1.5rem;padding:2rem;text-align:center;transition:background-color .2s ease}.upload-area:hover{background-color:#f0f8ff}.upload-area p{color:#666;margin:.5rem 0 0}.upload-area .upload-icon{color:#0071e3;font-size:2rem}.asset-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.asset-card{border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;position:relative;transition:box-shadow .2s ease}.asset-card:hover{box-shadow:0 4px 12px #00000014}.asset-preview{align-items:center;background-color:#f9f9f9;display:flex;height:120px;justify-content:center;width:100%}.asset-preview img{height:100%;object-fit:cover;width:100%}.file-icon{color:#999;font-size:3rem}.asset-info{padding:.75rem}.asset-info p{color:#333;font-size:.85rem;font-weight:500;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-info .asset-size{color:#999;font-size:.75rem}.delete-asset-btn{background-color:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:14px;height:24px;line-height:24px;opacity:0;position:absolute;right:8px;text-align:center;top:8px;transition:opacity .2s ease;width:24px}.asset-card:hover .delete-asset-btn{opacity:1}.test-zone-container{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,sans-serif;margin:0 auto;max-width:1200px;padding:3rem 1.5rem}.test-zone-header{margin-bottom:3rem;text-align:center}.test-zone-header h1{color:#1d1d1f;font-size:3rem;font-weight:700;letter-spacing:-.03em;margin-bottom:.75rem}.test-zone-header p{color:#86868b;font-size:1.25rem;font-weight:400}.test-zone-content{display:flex;flex-direction:column;gap:2rem}.welcome-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:24px;color:#fff;padding:2.5rem;text-align:center}.welcome-icon{font-size:3rem;margin-bottom:1rem}.welcome-card p{font-size:1.1rem;margin:0;opacity:.95}.test-section{background:#fff;border-radius:24px;box-shadow:0 4px 24px #0000000f;padding:2rem}.test-section h2{border-bottom:1px solid #f5f5f7;color:#1d1d1f;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:1rem}.test-placeholder{background:#fbfbfd;border-radius:16px;padding:3rem 2rem;text-align:center}.test-placeholder p{color:#86868b;font-size:1rem;margin:0}.gostop-card-test{display:flex;flex-direction:column;gap:1.5rem}.gostop-card-test .test-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.gostop-card-test .test-header h3{font-size:1.5rem;font-weight:600;margin:0}.view-toggle{background:#f5f5f7;border-radius:10px;display:flex;padding:4px}.view-toggle button{background:#0000;border:none;border-radius:8px;color:#86868b;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.view-toggle button.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#1d1d1f}.selection-panel{background:linear-gradient(135deg,#f8f9fa,#f0f0f5);border-radius:16px;padding:1.25rem}.selection-panel h4{color:#1d1d1f;font-size:1rem;font-weight:600;margin:0 0 1rem}.selected-cards-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;min-height:120px}.selected-cards-row .hint{color:#86868b;font-size:.9rem}.match-result{align-items:center;border-radius:10px;display:flex;font-weight:500;gap:.75rem;margin-top:1rem;padding:.75rem 1rem}.match-result.matched{background:linear-gradient(135deg,#22c55e1a,#16a34a1a);border:1px solid #22c55e4d;color:#16a34a}.match-result.not-matched{background:linear-gradient(135deg,#ef44441a,#dc26261a);border:1px solid #ef44444d;color:#dc2626}.match-result .match-icon{font-size:1.2rem}.match-result .pi-total{background:#0000001a;border-radius:6px;font-size:.85rem;margin-left:auto;padding:.25rem .5rem}.clear-btn{background:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;margin-top:1rem;padding:.5rem 1rem;transition:all .2s}.clear-btn:hover{background:#b91c1c}.test-hwatu-card{background:#1a1a1a;border:2px solid #c41e3a;border-radius:8px;cursor:pointer;overflow:hidden;transition:all .2s;width:70px}.test-hwatu-card:hover{box-shadow:0 8px 20px #0003;transform:translateY(-4px)}.test-hwatu-card.selected{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d;transform:translateY(-4px)}.test-hwatu-card .card-image-wrapper{background:#fffbeb;height:90px;position:relative;width:100%}.test-hwatu-card .card-image-wrapper img{height:100%;object-fit:cover;width:100%}.test-hwatu-card .card-info{background:#1a1a1a;display:flex;flex-wrap:wrap;gap:2px;padding:4px}.test-hwatu-card .card-month{color:#fff;font-size:.6rem;font-weight:600}.test-hwatu-card .card-type-badge{border-radius:4px;color:#fff;font-size:.5rem;font-weight:600;padding:1px 4px}.test-hwatu-card .card-type-badge.광{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1d1d1f}.test-hwatu-card .card-type-badge.열끗{background:linear-gradient(135deg,#ef4444,#dc2626)}.test-hwatu-card .card-type-badge.띠{background:linear-gradient(135deg,#3b82f6,#2563eb)}.test-hwatu-card .card-type-badge.피{background:#9ca3af;color:#1d1d1f}.test-hwatu-card .card-subtype{color:#fbbf24;font-size:.5rem;font-weight:500}.test-hwatu-card .card-pi-count{color:#ef4444;font-size:.5rem;font-weight:700}.test-hwatu-card .card-desc{background:#1a1a1a;color:#86868b;font-size:.55rem;padding:2px 4px 4px;text-align:center}.cards-by-month{display:flex;flex-direction:column;gap:1rem}.month-group{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.month-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#f0f0f5);border-bottom:1px solid #e5e5e7;display:flex;gap:.75rem;padding:.75rem 1rem}.month-number{color:#1d1d1f;font-weight:700}.month-name{color:#86868b;font-size:.9rem}.month-cards{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem}.card-with-edit{align-items:center;display:flex;flex-direction:column;gap:.5rem;position:relative}.edit-btn{background:#f5f5f7;border:1px solid #e5e5e7;border-radius:6px;cursor:pointer;font-size:.8rem;padding:.25rem .5rem;transition:all .2s}.edit-btn:hover{background:#e5e5e7}.edit-panel{background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;gap:.75rem;left:50%;margin-top:.5rem;min-width:200px;padding:1rem;position:absolute;top:100%;transform:translateX(-50%);z-index:100}.edit-panel,.edit-panel label{display:flex;flex-direction:column}.edit-panel label{color:#1d1d1f;font-size:.8rem;font-weight:500;gap:.25rem}.edit-panel input,.edit-panel select{border:1px solid #e5e5e7;border-radius:6px;font-size:.85rem;padding:.5rem}.cards-by-type{display:flex;flex-direction:column;gap:1.5rem}.type-group{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.type-header{align-items:center;color:#fff;display:flex;justify-content:space-between;padding:.75rem 1rem}.type-header.광{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1d1d1f}.type-header.열끗{background:linear-gradient(135deg,#ef4444,#dc2626)}.type-header.띠{background:linear-gradient(135deg,#3b82f6,#2563eb)}.type-header.피{background:linear-gradient(135deg,#9ca3af,#6b7280)}.type-name{font-size:1.1rem;font-weight:700}.type-count{font-size:.9rem;opacity:.8}.type-cards{display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem}.scoring-rules{background:linear-gradient(135deg,#f8f9fa,#f0f0f5);border-radius:16px;padding:1.25rem}.scoring-rules h4{font-size:1rem;font-weight:600;margin:0 0 1rem}.rules-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.rule-item{align-items:center;background:#fff;border-radius:8px;display:flex;font-size:.85rem;gap:.5rem;padding:.5rem .75rem}.rule-name{color:#1d1d1f;font-weight:600}.rule-desc{color:#86868b;flex:1 1;font-size:.75rem}.rule-score{background:#16a34a1a;border-radius:4px;color:#16a34a;font-size:.8rem;font-weight:700;padding:.2rem .4rem}.json-output{background:#1d1d1f;border-radius:16px;color:#fff;padding:1.25rem}.json-output h4{font-size:1rem;font-weight:600;margin:0 0 1rem}.json-output button{margin-bottom:1rem}.json-output pre{background:#2d2d2d;border-radius:8px;font-size:.75rem;max-height:300px;overflow-x:auto;overflow-y:auto;padding:1rem}.test-zone-nav{background:#f5f5f7;border-radius:16px;display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding:.5rem}.nav-tab{align-items:center;background:#0000;border:none;border-radius:12px;color:#86868b;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s;white-space:nowrap}.nav-tab:hover{background:#ffffff80;color:#1d1d1f}.nav-tab.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#1d1d1f}.tab-icon{font-size:1.1rem}.test-hwatu-card.drag-over{border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f64d;transform:scale(1.05)}.drop-indicator{align-items:center;background:#3b82f6e6;border-radius:6px;color:#fff;display:flex;font-size:.7rem;font-weight:600;inset:0;justify-content:center;position:absolute}.notes-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:16px;padding:1.25rem}.notes-section h4{color:#92400e;font-size:1rem;font-weight:600;margin:0 0 1rem}.notes-textarea{background:#fffc;border:2px solid #92400e33;border-radius:12px;color:#1d1d1f;font-family:inherit;font-size:.9rem;padding:1rem;resize:vertical;transition:border-color .2s;width:100%}.notes-textarea:focus{background:#fff;border-color:#f59e0b;outline:none}.notes-textarea::placeholder{color:#a8a29e}.json-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.json-output button{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.json-output button:hover{background:#2563eb;transform:translateY(-1px)}.json-tabs details{margin-bottom:.5rem}.json-tabs summary{background:#2d2d2d;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1rem}.json-tabs summary:hover{background:#3d3d3d}.json-tabs details[open] summary{border-radius:8px 8px 0 0}.json-tabs details pre{border-radius:0 0 8px 8px;margin-top:0}.gostop-rules{display:flex;flex-direction:column;gap:1.5rem}.rules-nav{background:#f5f5f7;border-radius:12px;display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem}.rules-nav button{background:#0000;border:none;border-radius:8px;color:#86868b;cursor:pointer;font-size:.85rem;font-weight:500;padding:.6rem 1rem;transition:all .2s}.rules-nav button:hover{background:#ffffff80;color:#1d1d1f}.rules-nav button.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#1d1d1f}.rules-content{background:#fff;border-radius:16px;box-shadow:0 2px 12px #0000000f;padding:1.5rem}.rules-section h3{color:#1d1d1f;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.rule-block{background:#f8f9fa;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.rule-block h4{color:#1d1d1f;font-size:1rem;font-weight:600;margin:0 0 .75rem}.rule-block p{color:#4b5563;line-height:1.6;margin:0 0 .5rem}.rule-block ol,.rule-block ul{color:#4b5563;line-height:1.8;margin:0;padding-left:1.25rem}.rule-block li{margin-bottom:.25rem}.card-types-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.card-type-info{border-left:4px solid;border-radius:12px;padding:1.25rem}.card-type-info.광{background:linear-gradient(135deg,#fbbf241a,#f59e0b1a);border-left-color:#f59e0b}.card-type-info.열끗{background:linear-gradient(135deg,#ef44441a,#dc26261a);border-left-color:#ef4444}.card-type-info.띠{background:linear-gradient(135deg,#3b82f61a,#2563eb1a);border-left-color:#3b82f6}.card-type-info.피{background:linear-gradient(135deg,#9ca3af1a,#6b72801a);border-left-color:#9ca3af}.card-type-info h4{font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.card-type-info p{color:#6b7280;font-size:.9rem;margin:0 0 .5rem}.card-type-info ul{color:#4b5563;font-size:.85rem;margin:0;padding-left:1rem}.badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:600;margin-right:.25rem;padding:.15rem .4rem}.badge.hongdan{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.badge.chungdan{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.badge.chodan{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.badge.ssangpi{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.scoring-table{display:flex;flex-direction:column;gap:1.5rem}.scoring-table h4{color:#1d1d1f;font-size:1rem;font-weight:600;margin:0 0 .75rem}.scoring-table table{border-collapse:collapse;font-size:.9rem;width:100%}.scoring-table td,.scoring-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.scoring-table th{background:#f3f4f6;color:#374151;font-weight:600}.scoring-table td.score{color:#16a34a;font-weight:700}.gostop-spec-doc{display:flex;flex-direction:column;gap:1.5rem}.spec-header{border-bottom:1px solid #e5e7eb;padding-bottom:1rem;text-align:center}.spec-header h2{color:#1d1d1f;font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.spec-subtitle{color:#6b7280;font-size:.9rem;margin:0}.spec-nav{background:#f5f5f7;border-radius:12px;display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem}.spec-nav button{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.85rem;font-weight:500;padding:.6rem 1rem;transition:all .2s}.spec-nav button:hover{background:#ffffff80;color:#1d1d1f}.spec-nav button.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#1d1d1f}.spec-content{background:#fff;border-radius:16px;box-shadow:0 2px 12px #0000000f;padding:1.5rem}.spec-section h3{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.spec-section h4{color:#374151;font-size:1rem;font-weight:600;margin:1.5rem 0 .75rem}.spec-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-bottom:1.5rem}.spec-card{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:12px;padding:1rem}.spec-card h4{font-size:.95rem;margin:0 0 .5rem}.spec-card p{color:#6b7280;font-size:.85rem;margin:0 0 .5rem}.spec-card ul{color:#4b5563;font-size:.85rem;margin:0;padding-left:1rem}.spec-meta{border-top:1px solid #e5e7eb;color:#9ca3af;font-size:.75rem;margin-top:.5rem;padding-top:.5rem}.spec-table{border-collapse:collapse;font-size:.85rem;margin-bottom:1rem;width:100%}.spec-table td,.spec-table th{border-bottom:1px solid #e5e7eb;padding:.6rem .75rem;text-align:left}.spec-table th{background:#f3f4f6;color:#374151;font-weight:600}.spec-table code{background:#e5e7eb;border-radius:4px;font-size:.8rem;padding:.15rem .4rem}.spec-table small{color:#9ca3af}.spec-note{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:0 8px 8px 0;color:#92400e;font-size:.85rem;margin-bottom:1rem;padding:.75rem 1rem}.spec-note code{background:#0000001a;border-radius:4px;padding:.15rem .4rem}.code-block{background:#1f2937;border-radius:8px;color:#e5e7eb;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8rem;overflow-x:auto;padding:1rem;white-space:pre}.scoring-category{margin-bottom:1.5rem}.scoring-category h4{margin:1rem 0 .5rem}.special-rules-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.special-rule-card{background:#f9fafb;border-left:4px solid #8b5cf6;border-radius:12px;padding:1rem}.special-rule-card h4{color:#1d1d1f;margin:0 0 .5rem}.special-rule-card p{color:#4b5563;font-size:.85rem;margin:0 0 .5rem}.special-rule-card ul{color:#6b7280;font-size:.8rem;margin:.5rem 0 0;padding-left:1rem}@media (max-width:768px){.test-zone-container{padding:2rem 1rem}.test-zone-header h1{font-size:2rem}.test-zone-header p{font-size:1rem}.welcome-card{padding:2rem 1.5rem}.test-section{padding:1.5rem}.test-zone-nav{gap:.25rem;padding:.25rem}.nav-tab{font-size:.8rem;padding:.5rem .75rem}.tab-name{display:none}.tab-icon{font-size:1.25rem}.rules-nav{gap:.25rem;padding:.25rem}.rules-nav button{font-size:.75rem;padding:.5rem .75rem}.json-buttons{flex-direction:column}}.file-upload-container{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,sans-serif;margin:0 auto;max-width:1000px;padding:3rem 1.5rem}.file-upload-header{margin-bottom:3rem;text-align:center}.file-upload-header h1{color:#1d1d1f;font-size:3rem;font-weight:700;letter-spacing:-.03em;margin-bottom:.75rem}.file-upload-header p{color:#86868b;font-size:1.25rem;font-weight:400}.file-upload-content{display:flex;flex-direction:column;gap:2rem}.upload-mode-selector{background:#f5f5f7;border-radius:12px;display:flex;gap:.5rem;padding:.25rem}.mode-btn{background:#0000;border:none;border-radius:10px;color:#86868b;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:500;padding:.6rem 1rem;transition:all .2s ease}.mode-btn:hover{color:#1d1d1f}.mode-btn.active{background:#fff;box-shadow:0 2px 8px #00000014;color:#1d1d1f}.folder-path-input{align-items:center;background:#f5f5f7;border-radius:12px;display:flex;gap:1rem;padding:.75rem 1rem}.folder-path-input label{color:#86868b;font-size:.9rem;font-weight:500;white-space:nowrap}.folder-path-input input{background:#fff;border:1px solid #e5e5e5;border-radius:8px;flex:1 1;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.folder-path-input input:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e31a;outline:none}.upload-dropzone{background:linear-gradient(135deg,#f5f5f7,#fff);border:none;border-radius:24px;cursor:pointer;overflow:hidden;padding:4rem 3rem;position:relative;transition:all .4s ease}.upload-dropzone:before{border:2px dashed #d2d2d7;border-radius:24px;content:"";inset:0;pointer-events:none;position:absolute;transition:all .3s ease}.upload-dropzone:hover{box-shadow:0 8px 32px #00000014;transform:scale(1.01)}.upload-dropzone:hover:before{border-color:#0071e3}.upload-dropzone.dropzone-active{background:linear-gradient(135deg,#e3f2ff,#f0f7ff);box-shadow:0 12px 48px #0071e333;transform:scale(1.02)}.upload-dropzone.dropzone-active:before{border-color:#0071e3;border-width:3px}.upload-dropzone.uploading{pointer-events:none}.dropzone-content{align-items:center;display:flex;flex-direction:column;gap:1rem}.dropzone-icon{color:#86868b;transition:all .3s ease}.upload-dropzone:hover .dropzone-icon{color:#0071e3;transform:translateY(-4px)}.dropzone-text{color:#1d1d1f;font-size:1.25rem;font-weight:600;margin:0}.dropzone-hint{color:#86868b;font-size:.95rem;margin:0}.dropzone-buttons{display:flex;gap:1rem;margin-top:1.5rem}.dropzone-btn{border:none;border-radius:980px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.dropzone-btn.file-btn{background:linear-gradient(135deg,#0071e3,#00c7be);box-shadow:0 4px 16px #0071e34d;color:#fff}.dropzone-btn.file-btn:hover{box-shadow:0 6px 24px #0071e366;transform:scale(1.05)}.dropzone-btn.folder-btn{background:linear-gradient(135deg,#f5f5f7,#e8e8ed);box-shadow:0 4px 16px #00000014;color:#1d1d1f}.dropzone-btn.folder-btn:hover{box-shadow:0 6px 24px #0000001f;transform:scale(1.05)}.file-input-hidden{display:none}.upload-spinner{animation:spin .8s linear infinite;border:3px solid #e8e8ed;border-radius:50%;border-top-color:#0071e3;height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.uploaded-files-section{background:#fff;border-radius:24px;box-shadow:0 4px 24px #0000000f;padding:2rem}.section-header{align-items:center;border-bottom:1px solid #f5f5f7;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.section-header h2{color:#1d1d1f;font-size:1.5rem;font-weight:600;margin:0}.header-left{align-items:center;display:flex;gap:1rem}.section-header .header-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.file-checkbox,.select-all-checkbox,.server-file-checkbox{align-items:center;cursor:pointer;display:flex;gap:.5rem}.file-checkbox input,.select-all-checkbox input,.server-file-checkbox input{accent-color:#0071e3;cursor:pointer;height:18px;width:18px}.select-all-checkbox span{color:#86868b;font-size:.9rem;font-weight:500}.save-selected-btn{background:linear-gradient(135deg,#34c759,#30d158);border:none;border-radius:980px;box-shadow:0 2px 8px #34c75940;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.save-selected-btn:hover{box-shadow:0 4px 12px #34c75959;transform:scale(1.02)}.delete-selected-btn{background:linear-gradient(135deg,#ff3b30,#ff453a);border:none;border-radius:980px;box-shadow:0 2px 8px #ff3b3040;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.delete-selected-btn:hover{box-shadow:0 4px 12px #ff3b3059;transform:scale(1.02)}.delete-all-btn{background:#ffebee;border:none;border-radius:980px;color:#ff3b30;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.delete-all-btn:hover{background:#ffcdd2}.refresh-btn{background:#f5f5f7;border:none;border-radius:980px;color:#1d1d1f;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.refresh-btn:hover{background:#e8e8ed}.folder-badge{align-items:center;background:#e3f2ff;border-radius:6px;color:#0071e3;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.15rem .5rem}.save-all-btn{background:linear-gradient(135deg,#0071e3,#00c7be);border:none;border-radius:980px;box-shadow:0 2px 8px #0071e340;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.save-all-btn:hover{box-shadow:0 4px 12px #0071e359;transform:scale(1.02)}.clear-all-btn{background:#f5f5f7;border:none;border-radius:980px;color:#86868b;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.clear-all-btn:hover{background:#e8e8ed;color:#1d1d1f}.files-list{display:flex;flex-direction:column;gap:1rem}.file-card{background:#fbfbfd;border-radius:16px;padding:1.25rem;transition:all .3s ease}.file-card:hover{background:#f5f5f7}.file-card.analyzing,.file-card.uploading{background:#fff8e6}.file-card.completed{background:#f0f9f4}.file-card.selected{background:#e3f2ff;border:2px solid #0071e3}.file-card-header{align-items:center;display:flex;gap:1rem}.file-number-badge{background:linear-gradient(135deg,#0071e3,#00c7be);border-radius:980px;color:#fff;font-size:.85rem;font-weight:600;height:36px;min-width:36px;padding:0 10px}.file-number-badge,.file-preview-small{align-items:center;display:flex;flex-shrink:0;justify-content:center}.file-preview-small{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;height:48px;overflow:hidden;width:48px}.file-preview-small img{height:100%;object-fit:cover;width:100%}.file-icon{font-size:1.5rem}.file-info{flex:1 1;min-width:0}.file-info .file-name{color:#1d1d1f;font-size:1rem;font-weight:600;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{align-items:center;color:#86868b;display:flex;font-size:.8rem;gap:.5rem}.file-meta .separator{opacity:.5}.file-status-badge span{border-radius:980px;font-size:.75rem;font-weight:500;padding:.35rem .75rem}.status-uploading{background:#fff3cd;color:#856404}.status-analyzing{background:#cce5ff;color:#004085}.status-completed{background:#d4edda;color:#155724}.remove-file-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#86868b;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;line-height:1;transition:all .2s ease;width:32px}.remove-file-btn:hover{background:#ffebee;color:#ff3b30}.analysis-result{border-top:1px solid #0000000d;margin-top:1rem;padding-top:1rem}.analysis-description{color:#1d1d1f;font-size:.95rem;font-weight:500;margin:0 0 .75rem}.analysis-details{color:#86868b;font-size:.85rem;margin:0;padding-left:1.25rem}.analysis-details li{margin-bottom:.25rem}.analyzing-indicator{align-items:center;border-top:1px solid #0000000d;color:#0071e3;display:flex;font-size:.9rem;gap:.75rem;margin-top:1rem;padding-top:1rem}.analyzing-dots{display:flex;gap:4px}.analyzing-dots span{animation:bounce 1.4s ease-in-out infinite both;background:#0071e3;border-radius:50%;height:6px;width:6px}.analyzing-dots span:first-child{animation-delay:-.32s}.analyzing-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.file-preview-large{border-radius:12px;margin-top:1rem;max-height:300px;overflow:hidden}.file-preview-large img{background:#f5f5f7;height:auto;max-height:300px;object-fit:contain;width:100%}.empty-state{background:#fbfbfd;border-radius:16px;padding:3rem 2rem;text-align:center}.empty-state p{color:#86868b;font-size:1rem;margin:0}.file-tabs{background:#f5f5f7;border-radius:12px;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.25rem}.file-tab{background:#0000;border:none;border-radius:10px;color:#86868b;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;padding:.75rem 1rem;transition:all .2s ease}.file-tab:hover{color:#1d1d1f}.file-tab.active{background:#fff;box-shadow:0 2px 8px #00000014;color:#1d1d1f}.file-actions{align-items:center;display:flex;gap:.5rem}.save-server-btn{background:linear-gradient(135deg,#0071e3,#00c7be);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.save-server-btn:hover{box-shadow:0 4px 12px #0071e34d;transform:scale(1.05)}.status-saving{color:#0071e3}.status-saved,.status-saving{font-size:.85rem;font-weight:500}.status-saved{color:#34c759}.status-error{color:#ff3b30;font-size:.85rem;font-weight:500}.server-files-section{min-height:300px}.server-files-header{align-items:center;background:#f5f5f7;border-radius:16px;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.server-files-header .header-left{align-items:center;display:flex;gap:1rem}.server-files-header .file-count{color:#86868b;font-size:.9rem;font-weight:500}.server-file-checkbox{position:absolute;right:12px;top:12px;z-index:15}.server-file-checkbox input{background:#fff;border-radius:4px;box-shadow:0 2px 8px #00000026;height:20px;width:20px}.view-mode-toggle{background:#e8e8ed;border-radius:8px;display:flex;padding:2px}.view-btn-toggle{background:#0000;border:none;border-radius:6px;cursor:pointer;font-size:1rem;padding:.4rem .75rem;transition:all .2s}.view-btn-toggle.active{background:#fff;box-shadow:0 2px 6px #0000001a}.view-btn-toggle:hover:not(.active){background:#ffffff80}.toggle-folders-btn{background:#f5f5f7;border:none;border-radius:980px;color:#1d1d1f;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.toggle-folders-btn:hover{background:#e8e8ed}.server-folders-view{display:flex;flex-direction:column;gap:1rem}.folder-group{background:#fff;border-radius:16px;box-shadow:0 4px 16px #0000000f;overflow:hidden}.folder-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#f0f0f5);cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.25rem;transition:all .2s}.folder-header:hover{background:linear-gradient(135deg,#f0f0f5,#e8e8ed)}.folder-header-left{align-items:center;display:flex;gap:.75rem}.folder-expand-icon{color:#86868b;font-size:.75rem;transition:transform .3s}.folder-icon{font-size:1.5rem}.folder-name{color:#1d1d1f;font-size:1.1rem;font-weight:600}.folder-file-count{background:#e8e8ed;border-radius:980px;color:#86868b;font-size:.85rem;padding:.2rem .6rem}.folder-header-right{align-items:center;display:flex;gap:.5rem}.folder-checkbox input{accent-color:#0071e3;cursor:pointer;height:20px;width:20px}.folder-files-grid{grid-gap:1rem;background:#fbfbfd;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding:1rem}.server-file-card.compact{border-radius:12px}.server-file-card.compact .server-file-preview{height:120px}.server-file-card.compact .server-file-info{padding:.75rem}.server-file-card.compact .server-file-info h3{font-size:.85rem}.server-file-card.compact .server-file-info .file-meta{font-size:.75rem}.server-file-card.compact .server-file-actions{gap:.35rem;padding:0 .75rem .75rem}.server-file-card.compact .server-file-actions .delete-btn,.server-file-card.compact .server-file-actions .view-btn{font-size:.9rem;padding:.4rem}.loading-state{align-items:center;color:#86868b;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem}.server-files-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.server-file-card{background:#fff;border-radius:16px;box-shadow:0 4px 16px #00000014;overflow:hidden;position:relative;transition:all .3s ease}.server-file-number{background:linear-gradient(135deg,#0071e3,#00c7be);border-radius:20px;box-shadow:0 2px 8px #0071e34d;color:#fff;font-size:.85rem;font-weight:700;left:12px;padding:4px 10px;position:absolute;top:12px;z-index:10}.server-file-card:hover{box-shadow:0 8px 32px #0000001f;transform:translateY(-4px)}.server-file-card.selected{border:3px solid #0071e3;box-shadow:0 8px 32px #0071e333}.server-file-preview{align-items:center;background:#f5f5f7;display:flex;height:180px;justify-content:center;overflow:hidden}.server-file-preview img{height:100%;object-fit:cover;width:100%}.file-icon-large{font-size:4rem}.server-file-info{padding:1rem}.server-file-info h3{color:#1d1d1f;font-size:1rem;font-weight:600;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-file-info .file-meta{color:#86868b;font-size:.8rem}.server-file-actions{display:flex;gap:.5rem;padding:0 1rem 1rem}.server-file-actions .delete-btn,.server-file-actions .view-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:500;padding:.6rem;text-align:center;text-decoration:none;transition:all .2s ease}.server-file-actions .view-btn{background:#f5f5f7;color:#1d1d1f}.server-file-actions .view-btn:hover{background:#e8e8ed}.server-file-actions .delete-btn{background:#ffebee;color:#ff3b30}.server-file-actions .delete-btn:hover{background:#ffcdd2}@media (max-width:768px){.file-upload-container{padding:2rem 1rem}.file-upload-header h1{font-size:2rem}.file-upload-header p{font-size:1rem}.dropzone-buttons{flex-direction:column;gap:.75rem;max-width:200px;width:100%}.dropzone-btn{font-size:.9rem;padding:.65rem 1rem;width:100%}.folder-path-input{align-items:stretch;flex-direction:column;gap:.5rem}.folder-path-input label{font-size:.85rem}.upload-dropzone{padding:3rem 1.5rem}.section-header{align-items:stretch;flex-direction:column}.header-left{justify-content:space-between}.header-buttons{justify-content:flex-end}.select-all-checkbox span{font-size:.85rem}.clear-all-btn,.delete-all-btn,.delete-selected-btn,.refresh-btn,.save-all-btn,.save-selected-btn{font-size:.8rem;padding:.4rem .75rem}.file-card-header{flex-wrap:wrap}.file-checkbox{left:1rem;position:absolute;top:1rem;z-index:5}.file-status-badge{margin-top:.5rem;order:4;width:100%}.remove-file-btn{position:absolute;right:1rem;top:1rem}.file-card{padding-left:2.5rem;position:relative}.server-files-header{padding:.75rem}.server-files-header .file-count{font-size:.85rem}.server-files-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.server-file-preview{height:120px}.server-file-info h3{font-size:.9rem}.server-file-info .file-meta{font-size:.75rem}.server-file-actions .delete-btn,.server-file-actions .view-btn{font-size:.8rem;padding:.5rem}.file-icon-large{font-size:3rem}.view-mode-toggle{padding:1px}.view-btn-toggle{font-size:.9rem;padding:.35rem .6rem}.toggle-folders-btn{font-size:.8rem;padding:.4rem .75rem}.folder-header{padding:.75rem 1rem}.folder-header-left{gap:.5rem}.folder-icon{font-size:1.25rem}.folder-name{font-size:.95rem}.folder-file-count{font-size:.75rem;padding:.15rem .5rem}.folder-files-grid{gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));padding:.75rem}.server-file-card.compact .server-file-preview{height:100px}.server-file-card.compact .server-file-info{padding:.5rem}.server-file-card.compact .server-file-info h3{font-size:.75rem}.server-file-card.compact .server-file-actions{padding:0 .5rem .5rem}}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{flex-grow:1;min-height:calc(100vh - 52px);min-height:calc(100vh - var(--nav-height, 52px));padding-top:calc(52px + 1rem);padding-top:calc(var(--nav-height, 52px) + 1rem)}.main-content>*{animation:pageEnter .4s ease-out}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
/*# sourceMappingURL=main.6e1ca681.css.map*/