:root{--garmin-blue: #007CC0;--garmin-dark-blue: #003C71;--garmin-light-blue: #4FC3F7;--garmin-orange: #FF6B35;--garmin-green: #4CAF50;--garmin-purple: #9C27B0;--primary-color: var(--garmin-blue);--secondary-color: var(--garmin-light-blue);--accent-color: var(--garmin-orange);--success-color: var(--garmin-green);--danger-color: #dc3545;--text-primary: #1a1a1a;--text-secondary: #666666;--text-muted: #999999;--background-primary: #ffffff;--background-secondary: #f8fafc;--background-tertiary: #f1f5f9;--chat-background: linear-gradient(135deg, #e3f2fd 0%, #f3e5f5 100%);--chat-bubble: #ffffff;--border-color: #e2e8f0;--border-light: #f1f5f9;--font-family: "Inter", "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:var(--font-family);line-height:1.6;color:var(--text-primary);background-color:var(--background-primary)}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:var(--spacing-sm)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-md)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}@media (max-width: 768px){.container{padding:0 var(--spacing-sm)}}@media (max-width: 480px){.container{padding:0 var(--spacing-xs)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-base);font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000001a;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--garmin-dark-blue));color:#fff}.btn-primary:hover{background:linear-gradient(135deg,var(--garmin-dark-blue),var(--primary-color))}.btn-secondary{background:var(--background-primary);color:var(--text-primary);border:2px solid var(--border-color);box-shadow:none}.btn-secondary:hover{background:var(--background-secondary);border-color:var(--primary-color);color:var(--primary-color)}.btn-accent{background:linear-gradient(135deg,var(--accent-color),#E64A19);color:#fff}.btn-accent:hover{background:linear-gradient(135deg,#E64A19,var(--accent-color))}.card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #00000014;border:1px solid var(--border-light);transition:all .3s ease}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.card-title{font-size:var(--font-size-lg);font-weight:600;color:var(--primary-color);margin-bottom:var(--spacing-xs)}.chat-bubble{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);background-color:var(--chat-bubble);color:var(--text-primary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs);max-width:70%;word-wrap:break-word}.chat-bubble.user{background-color:var(--primary-color);color:#fff;margin-left:auto}.chat-bubble.system{background-color:var(--background-secondary);color:var(--text-secondary)}.nav-link{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);transition:all .2s ease;font-weight:500}.nav-link:hover{background-color:var(--secondary-color);color:var(--text-primary)}.nav-link.active{background-color:var(--primary-color);color:#fff}@media (max-width: 768px){.container{padding:0 var(--spacing-sm)}.card{padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm)}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}.chat-bubble{max-width:85%;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}}@media (max-width: 480px){.container{padding:0 var(--spacing-xs)}.card{padding:var(--spacing-sm)}.btn{width:100%;justify-content:center}h1{font-size:var(--font-size-xl)}h2{font-size:var(--font-size-lg)}.chat-bubble{max-width:90%}}.loading{display:flex;justify-content:center;align-items:center;min-height:200px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--background-primary)}.navigation{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-light);box-shadow:0 1px 3px #0000001a;position:sticky;top:0;z-index:100}.nav-brand{padding:var(--spacing-lg) var(--spacing-xl);background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;text-align:center;position:relative;overflow:hidden}.nav-brand:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:shimmer 3s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.nav-brand h2{margin:0;font-size:var(--font-size-2xl);font-weight:700;letter-spacing:-.02em}.nav-brand p{margin:var(--spacing-xs) 0 0 0;font-size:var(--font-size-sm);opacity:.9;font-weight:400}.nav-menu{display:flex;list-style:none;margin:0;padding:var(--spacing-md) var(--spacing-xl);background:#fff;overflow-x:auto;gap:var(--spacing-lg);justify-content:space-between;align-items:center}.nav-menu li{flex-shrink:0}.nav-auth{margin-left:auto;padding-left:var(--spacing-lg)}.nav-link{display:flex;align-items:center;gap:var(--spacing-sm);white-space:nowrap;font-size:var(--font-size-sm);font-weight:500;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:all .2s ease}.nav-link:hover{background:var(--background-secondary);color:var(--primary-color)}.nav-icon{font-size:var(--font-size-lg)}.main-content{flex:1;background:var(--background-secondary)}.footer{background:var(--background-primary);border-top:1px solid var(--border-light);padding:var(--spacing-lg) 0;text-align:center;margin-top:auto}.footer p{margin:var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--text-secondary)}.page{min-height:100%}.page-header{background:linear-gradient(135deg,var(--background-primary) 0%,var(--background-tertiary) 100%);padding:var(--spacing-3xl) 0;margin-bottom:var(--spacing-xl);text-align:center;border-bottom:1px solid var(--border-light);position:relative}.page-header:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23007CC0' fill-opacity='0.03'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}.page-title{font-size:var(--font-size-4xl);font-weight:800;color:var(--primary-color);margin-bottom:var(--spacing-md);letter-spacing:-.02em;position:relative;z-index:1}.page-subtitle{font-size:var(--font-size-xl);color:var(--text-secondary);margin-bottom:0;font-weight:400;position:relative;z-index:1}.chat-section{background:var(--chat-background);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:0 4px 6px #0000000d;border:1px solid var(--border-light);position:relative;overflow:hidden}.chat-section:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color))}.chat-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.2)}.chat-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);box-shadow:0 2px 8px #007cc04d}.chat-user{font-weight:600;color:var(--text-primary);font-size:var(--font-size-lg)}.chat-messages{display:flex;flex-direction:column;gap:var(--spacing-md)}.chat-bubble{background:var(--chat-bubble);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;border:1px solid var(--border-light);font-size:var(--font-size-base);line-height:1.6;animation:slideInUp .3s ease}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.feature-card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-light);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));transform:scaleX(0);transition:transform .3s ease}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 8px 25px #007cc026;border-color:var(--primary-color)}.feature-icon{font-size:3.5rem;margin-bottom:var(--spacing-lg);display:block;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 2px 4px rgba(0,124,192,.2))}.feature-title{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md);letter-spacing:-.01em}.feature-description{color:var(--text-secondary);line-height:1.7;font-size:var(--font-size-base)}@media (max-width: 768px){.nav-brand{padding:var(--spacing-md) var(--spacing-lg)}.nav-brand h2{font-size:var(--font-size-xl)}.nav-brand p{font-size:var(--font-size-xs)}.nav-menu{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-xs);flex-wrap:wrap;justify-content:center}.nav-link{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap}.nav-icon{font-size:var(--font-size-sm)}.nav-auth{margin-left:0;padding-left:0;width:100%;text-align:center;margin-top:var(--spacing-xs)}.page-header{padding:var(--spacing-lg) var(--spacing-md)}.page-title{font-size:var(--font-size-2xl);line-height:1.3}.page-subtitle{font-size:var(--font-size-lg)}.main-content{padding:var(--spacing-md) 0}.grid-2,.grid-3{grid-template-columns:1fr;gap:var(--spacing-md)}.feature-card{padding:var(--spacing-lg);text-align:left}.feature-icon{font-size:2.5rem;margin-bottom:var(--spacing-md)}.feature-title{font-size:var(--font-size-lg)}.feature-description{font-size:var(--font-size-sm)}.chat-section{padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.chat-avatar{width:40px;height:40px;font-size:var(--font-size-lg)}.chat-user{font-size:var(--font-size-base)}.chat-bubble{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}}@media (max-width: 480px){.nav-menu{flex-direction:column;gap:var(--spacing-sm);align-items:stretch}.nav-link{justify-content:center;text-align:center}.page-header{padding:var(--spacing-md)}.page-title{font-size:var(--font-size-xl)}.page-subtitle{font-size:var(--font-size-base)}.feature-card{padding:var(--spacing-md);text-align:center}.chat-section{padding:var(--spacing-sm)}.quick-actions{flex-direction:column!important;align-items:stretch!important}.quick-actions .btn{width:100%;justify-content:center}.post-actions{flex-direction:column!important;align-items:stretch!important;gap:var(--spacing-md)!important}.post-actions .btn{width:100%;text-align:center}.post-header{flex-direction:column!important;align-items:flex-start!important;gap:var(--spacing-sm)!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeInUp .6s ease-out}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}
