:root{--primary-green:#2d5a27;--primary-light:#4a7c59;--accent-gold:#d4af37;--accent-blue:#1e88e5;--gray-50:#fafafa;--gray-100:#f5f5f5;--gray-200:#e5e5e5;--gray-300:#d4d4d4;--gray-400:#a3a3a3;--gray-500:#737373;--gray-600:#525252;--gray-700:#404040;--gray-800:#262626;--gray-900:#171717;--success:#16a34a;--warning:#eab308;--error:#dc2626;--info:#2563eb;--gradient-primary:linear-gradient(135deg,var(--primary-green),var(--primary-light));--gradient-accent:linear-gradient(135deg,var(--accent-blue),#1565c0);--gradient-gold:linear-gradient(135deg,var(--accent-gold),#b8860b);--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--background:var(--gray-50);--foreground:var(--gray-900);--card-bg:#fff;--border:var(--gray-200);--primary-contrast:var(--gray-900);--secondary-contrast:var(--gray-600);--button:var(--primary-green);--button-hover:var(--primary-light);--font-sans:"Pretendard","Inter","Inter-fallback",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-heading:"Pretendard","Inter","Inter-fallback",system-ui,sans-serif;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--transition-fast:150ms ease;--transition-normal:250ms ease;--transition-slow:350ms ease}@media (prefers-color-scheme:dark){:root{--background:var(--gray-900);--foreground:var(--gray-50);--card-bg:var(--gray-800);--border:var(--gray-700);--primary-contrast:var(--gray-50);--secondary-contrast:var(--gray-400);--button:var(--primary-light);--button-hover:var(--primary-green)}}*{box-sizing:border-box;padding:0;margin:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--background);color:var(--foreground);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.25;color:var(--primary-contrast);margin-bottom:var(--space-md)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{margin-bottom:var(--space-md);color:var(--secondary-contrast)}.container{padding:0 var(--space-md)}.container,.content{max-width:1200px;margin:0 auto}.content{padding:var(--space-xl) var(--space-md);min-height:100vh}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border:none;border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left var(--transition-slow)}.button:hover:before{left:100%}.button.primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.button.primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.button.secondary{background:var(--card-bg);color:var(--primary-contrast);border:2px solid var(--border)}.button.secondary:hover{border-color:var(--button);color:var(--button)}.button.accent{background:var(--gradient-accent)}.button.accent,.button.gold{color:#fff;box-shadow:var(--shadow-md)}.button.gold{background:var(--gradient-gold)}.button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card.feature-card{text-align:center;padding:var(--space-2xl);border:2px solid transparent;background:linear-gradient(var(--card-bg),var(--card-bg)) padding-box,var(--gradient-primary) border-box}.input-group{margin-bottom:var(--space-lg)}.input-group label{display:block;margin-bottom:var(--space-sm);font-weight:600;color:var(--primary-contrast)}.input-group input,.input-group select,.input-group textarea{width:100%;padding:var(--space-md);border:2px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);color:var(--primary-contrast);font-size:1rem;transition:all var(--transition-fast)}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{outline:none;border-color:var(--button);box-shadow:0 0 0 3px rgba(45,90,39,.1)}.grid{display:grid;grid-gap:var(--space-lg);gap:var(--space-lg)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}@keyframes slideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-30px,0)}70%{transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}.animate-fade-in{animation:fadeIn .6s ease forwards}.animate-slide-in{animation:slideIn .5s ease forwards}.animate-bounce{animation:bounce 1s infinite}@media (max-width:768px){.container{padding:0 var(--space-sm)}.content{padding:var(--space-lg) var(--space-sm)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.25rem}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.button{padding:var(--space-md) var(--space-md);width:100%}}@media (max-width:480px){.card{padding:var(--space-lg)}.card.feature-card{padding:var(--space-xl)}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.button:focus,.input-group input:focus,.input-group select:focus{outline:2px solid var(--accent-blue);outline-offset:2px}.loading-spinner{width:40px;height:40px;border-top:3px solid var(--border);border:3px solid var(--border);border-top-color:var(--button);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.heading{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:var(--space-lg);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--space-xl);gap:var(--space-xl);margin:var(--space-2xl) 0}.feature-link{text-decoration:none;color:inherit;transition:all var(--transition-normal)}.feature-link:hover{transform:translateY(-8px)}.learn-more{color:var(--accent-blue);font-weight:600;margin-top:var(--space-md);display:inline-block}.main-cta{background:var(--gradient-accent)!important;color:#fff!important;font-size:1.375rem!important;padding:var(--space-xl) var(--space-2xl)!important;border-radius:var(--radius-2xl)!important;box-shadow:var(--shadow-xl)!important;border:none!important;cursor:pointer!important;font-weight:700!important;transition:all var(--transition-normal)!important;position:relative!important;overflow:hidden!important}.main-cta:hover{transform:translateY(-4px)!important;box-shadow:0 20px 40px rgba(30,136,229,.4)!important}.back-button{background:var(--card-bg);color:var(--secondary-contrast);border:1px solid var(--border);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);text-decoration:none;font-size:.875rem;font-weight:500;transition:all var(--transition-fast);margin-bottom:var(--space-xl);display:inline-block}.back-button:hover{color:var(--primary-contrast);border-color:var(--button)}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.text-primary-contrast{color:var(--primary-contrast)}.text-secondary-contrast{color:var(--secondary-contrast)}.text-accent-blue{color:var(--accent-blue)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}.bg-primary{background-color:var(--primary-green)}.bg-accent{background-color:var(--accent-blue)}.bg-card{background-color:var(--card-bg)}.bg-success{background-color:var(--success)}.bg-warning{background-color:var(--warning)}.bg-error{color:#fff;background-color:var(--error)}.w-full{width:100%}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:8px;background:var(--border);border-radius:var(--radius-md);outline:none;transition:all var(--transition-fast)}input[type=range]:hover{background:var(--gray-300)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:var(--gradient-primary);border-radius:50%;cursor:pointer;box-shadow:var(--shadow-md);-webkit-transition:all var(--transition-fast);transition:all var(--transition-fast)}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:var(--shadow-lg)}input[type=range]::-moz-range-thumb{width:20px;height:20px;background:var(--gradient-primary);border-radius:50%;cursor:pointer;border:none;box-shadow:var(--shadow-md);-moz-transition:all var(--transition-fast);transition:all var(--transition-fast)}input[type=range]::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:var(--shadow-lg)}.slider-container{width:100%;padding:var(--space-sm) 0}.max-h-90vh{max-height:90vh}.min-h-screen{min-height:100vh}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.bg-opacity-50{background-color:rgba(0,0,0,.5)}.bg-opacity-20{background-color:rgba(0,0,0,.2)}.bg-opacity-10{background-color:rgba(0,0,0,.1)}.space-y-sm>*+*{margin-top:var(--space-sm)}.space-y-md>*+*{margin-top:var(--space-md)}.space-y-lg>*+*{margin-top:var(--space-lg)}.line-through{text-decoration:line-through}.no-underline{text-decoration:none}.border{border:1px solid var(--border)}.border-t{border-top:1px solid var(--border)}.border-b{border-bottom:1px solid var(--border)}.border-l{border-left:1px solid var(--border)}.border-r{border-right:1px solid var(--border)}.border-success{border-color:var(--success)}.border-warning{border-color:var(--warning)}.border-error{border-color:var(--error)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:50;padding:var(--space-md)}.modal-content{background:var(--card-bg);border-radius:var(--radius-xl);max-width:64rem;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.wishlist-heart-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:2px solid var(--border);border-radius:50%;background:var(--card-bg);cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.wishlist-heart-button:hover{border-color:var(--accent-blue);transform:scale(1.05);box-shadow:var(--shadow-md)}.wishlist-heart-button.active{border-color:var(--error);background:rgba(239,68,68,.1)}.wishlist-heart-button .heart-icon{font-size:1.25rem;transition:all var(--transition-fast)}.wishlist-heart-button:hover .heart-icon{transform:scale(1.1)}.wishlist-heart-button.active .heart-icon{animation:heartBeat .6s ease-in-out}@keyframes heartBeat{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(1.1)}75%{transform:scale(1.25)}to{transform:scale(1)}}.loading-spinner-small{width:16px;height:16px;border-top:2px solid var(--border);border:2px solid var(--border);border-top-color:var(--primary-green);border-radius:50%;animation:spin 1s linear infinite}.dots{top:0;background-image:radial-gradient(circle at 1px 1px,rgba(45,90,39,.08) 1px,transparent 0);background-size:30px 30px;z-index:-2}.bottom-gradient,.dots{position:fixed;left:0;right:0;bottom:0;pointer-events:none}.bottom-gradient{height:200px;background:linear-gradient(0deg,rgba(45,90,39,.05) 0,rgba(45,90,39,.02) 50%,transparent);z-index:-1}.toast-notification{position:fixed;top:80px;right:16px;z-index:9999;padding:var(--space-md);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);font-weight:500;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.wishlist-item-card{transition:all var(--transition-normal);border:1px solid var(--border)}.wishlist-item-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--primary-green)}.wishlist-category-badge{background:var(--gradient-primary);color:#fff;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.wishlist-price-section{padding:var(--space-md);background:var(--gray-100);border-radius:var(--radius-md);margin:var(--space-md) 0}@media (max-width:768px){.text-4xl{font-size:1.875rem}.text-3xl{font-size:1.5rem}.text-2xl{font-size:1.25rem}.text-xl{font-size:1.125rem}.modal-overlay{padding:var(--space-sm)}.modal-content{max-height:95vh}.wishlist-heart-button{width:36px;height:36px}.wishlist-heart-button .heart-icon{font-size:1rem}.toast-notification{left:var(--space-sm);right:var(--space-sm)}}.heading-lg{font-size:2.5rem;text-align:center;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.heading-lg,.heading-md{font-weight:700;margin-bottom:var(--space-lg)}.heading-md{font-size:2rem;text-align:center}.heading-md,.heading-sm{color:var(--primary-contrast)}.heading-sm{font-size:1.5rem;font-weight:600;margin-bottom:var(--space-md)}.min-h-screen-minus-header{min-height:calc(100vh - 80px)}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.self-center{align-self:center}.mt-2xl{margin-top:var(--space-2xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.text-accent-green{color:#16a34a}.bg-secondary{background-color:var(--gray-100)}.bg-tertiary{background-color:var(--gray-200)}.badge{display:inline-block;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge.success{background-color:var(--success);color:#fff}.badge.warning{background-color:var(--warning);color:#fff}.badge.info{background-color:var(--info);color:#fff}.badge.error{background-color:var(--error);color:#fff}.min-w-full{min-width:100%}table{border-collapse:collapse;width:100%}thead th{text-align:left;font-weight:600;color:var(--secondary-contrast)}tbody tr:hover{background-color:var(--gray-100)}td,th{padding:var(--space-md);border-bottom:1px solid var(--border)}.last\\:border-b-0:last-child{border-bottom:none}a:hover{text-decoration:underline}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.glass-card{background:hsla(0,0%,100%,.1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius-2xl);box-shadow:0 8px 32px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.2);transition:all var(--transition-slow)}.glass-card:hover{transform:translateY(-8px);background:hsla(0,0%,100%,.15);box-shadow:0 20px 60px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.3)}@media (prefers-color-scheme:dark){.glass-card{background:rgba(0,0,0,.2);border:1px solid hsla(0,0%,100%,.1)}.glass-card:hover{background:rgba(0,0,0,.3)}}.neo-button{background:var(--card-bg);border:none;border-radius:var(--radius-xl);padding:var(--space-lg) var(--space-2xl);color:var(--primary-contrast);font-weight:600;cursor:pointer;transition:all var(--transition-normal);box-shadow:8px 8px 16px rgba(0,0,0,.15),-8px -8px 16px hsla(0,0%,100%,.7)}.neo-button:hover{transform:translateY(-2px);box-shadow:12px 12px 20px rgba(0,0,0,.2),-12px -12px 20px hsla(0,0%,100%,.8)}.neo-button:active{transform:translateY(0);box-shadow:4px 4px 8px rgba(0,0,0,.2),-4px -4px 8px hsla(0,0%,100%,.8)}.gradient-overlay{position:relative}.gradient-overlay:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent,rgba(30,136,229,.1) 50%,transparent);border-radius:inherit;pointer-events:none;opacity:0;transition:opacity var(--transition-normal)}.gradient-overlay:hover:before{opacity:1}.scale-on-hover{transition:transform var(--transition-normal)}.scale-on-hover:hover{transform:scale(1.05)}.holographic{position:relative;background:linear-gradient(45deg,var(--accent-blue),var(--accent-gold),var(--primary-green),var(--accent-blue));background-size:400% 400%;animation:holographic 4s ease-in-out infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes holographic{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.floating-label{position:relative;margin-bottom:var(--space-lg)}.floating-label input{width:100%;padding:var(--space-lg) var(--space-md) var(--space-sm);border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);font-size:1rem;transition:all var(--transition-normal)}.floating-label label{position:absolute;top:var(--space-lg);left:var(--space-md);font-size:1rem;color:var(--secondary-contrast);pointer-events:none;transition:all var(--transition-fast);background:var(--card-bg);padding:0 var(--space-xs)}.floating-label input:focus+label,.floating-label input:not(:placeholder-shown)+label{top:-.5rem;left:var(--space-sm);font-size:.75rem;color:var(--accent-blue);font-weight:600}.floating-label input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px rgba(30,136,229,.1)}.card-3d{perspective:1000px}.card-3d-inner{transition:transform var(--transition-slow);transform-style:preserve-3d}.card-3d:hover .card-3d-inner{transform:rotateY(5deg) rotateX(5deg)}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:hsla(0,0%,100%,.3);border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple:active:after{width:300px;height:300px}.loading-pulse{display:inline-block;width:40px;height:40px;border-radius:50%;background:var(--gradient-accent);animation:pulse 1.5s ease-in-out infinite}.loading-dots{display:flex;align-items:center;gap:var(--space-xs)}.loading-dots span{width:8px;height:8px;border-radius:50%;background:var(--accent-blue);animation:dots 1.4s ease-in-out infinite both}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes dots{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--gray-100);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb{background:var(--gradient-primary);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--gradient-accent)}::selection{background:rgba(30,136,229,.3);color:var(--primary-contrast)}::-moz-selection{background:rgba(30,136,229,.3);color:var(--primary-contrast)}.pattern-dots{background-image:radial-gradient(rgba(45,90,39,.1) 1px,transparent 0);background-size:20px 20px}.pattern-grid{background-image:linear-gradient(rgba(45,90,39,.05) 1px,transparent 0),linear-gradient(90deg,rgba(45,90,39,.05) 1px,transparent 0);background-size:20px 20px}.shadow-glow{box-shadow:0 0 20px rgba(30,136,229,.3)}.shadow-colored{box-shadow:0 10px 25px rgba(45,90,39,.2),0 20px 40px rgba(45,90,39,.1)}@media (max-width:768px){.glass-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.neo-button{padding:var(--space-md) var(--space-lg)}.card-3d:hover .card-3d-inner{transform:none}}.header-modern{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);background:hsla(0,0%,100%,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(45,90,39,.1);position:-webkit-sticky;position:sticky;top:0;z-index:1000;transition:all var(--transition-normal);box-shadow:0 2px 20px rgba(45,90,39,.05)}@media (prefers-color-scheme:dark){.header-modern{background:rgba(38,38,38,.95);border-bottom:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 20px rgba(0,0,0,.2)}}.brand-logo-modern{text-decoration:none;transition:transform var(--transition-fast)}.brand-logo-modern:hover{transform:scale(1.05)}.logo-container-modern{display:flex;align-items:center;gap:var(--space-sm)}.logo-icon-modern{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(45,90,39,.3));transition:filter var(--transition-fast)}.brand-logo-modern:hover .logo-icon-modern{filter:drop-shadow(0 4px 8px rgba(45,90,39,.5))}.logo-text-modern{display:flex;flex-direction:column;line-height:1.2}.logo-title-modern{font-family:var(--font-heading);font-size:1.4rem;font-weight:700;color:var(--primary-green);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-subtitle-modern{font-size:.75rem;font-weight:500;color:var(--gray-600);letter-spacing:.05em;text-transform:uppercase}.desktop-navigation{display:none;align-items:center;gap:var(--space-xl)}@media (min-width:1024px){.desktop-navigation{display:flex}}.desktop-nav-links{gap:var(--space-lg)}.desktop-nav-links,.nav-link{display:flex;align-items:center}.nav-link{gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);text-decoration:none;font-weight:500;color:var(--gray-700);background:transparent;border:1px solid transparent;transition:all var(--transition-fast);position:relative;overflow:hidden}.nav-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(45,90,39,.1),transparent);transition:left var(--transition-normal)}.nav-link:hover:before{left:100%}.nav-link:hover{color:var(--primary-green);background:rgba(45,90,39,.05);border-color:rgba(45,90,39,.2);transform:translateY(-1px);box-shadow:0 4px 12px rgba(45,90,39,.15)}.nav-link-primary{background:var(--gradient-primary);color:#fff;border-color:var(--primary-green);box-shadow:0 4px 12px rgba(45,90,39,.3)}.nav-link-primary:hover{background:var(--gradient-accent);transform:translateY(-2px);box-shadow:0 8px 20px rgba(45,90,39,.4);color:#fff}.desktop-auth{display:flex;align-items:center;gap:var(--space-md)}.auth-loading-desktop{color:var(--gray-500);font-size:.9rem;padding:var(--space-sm)}.auth-user-desktop{display:flex;align-items:center;gap:var(--space-md)}.user-greeting-desktop{font-size:.9rem;color:var(--gray-600);font-weight:500}.auth-buttons-desktop{display:flex;align-items:center;gap:var(--space-sm)}.auth-button-desktop{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);text-decoration:none;font-weight:500;font-size:.9rem;transition:all var(--transition-fast);border:1px solid transparent}.login-button{color:var(--primary-green);background:transparent;border-color:var(--primary-green)}.login-button:hover{background:var(--primary-green);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(45,90,39,.3)}.signup-button{background:var(--gradient-primary);color:#fff;box-shadow:0 2px 8px rgba(45,90,39,.2)}.signup-button:hover{background:var(--gradient-accent);transform:translateY(-1px);box-shadow:0 4px 12px rgba(45,90,39,.4)}.profile-button{background:rgba(45,90,39,.1);color:var(--primary-green);border-color:rgba(45,90,39,.3)}.profile-button:hover{background:var(--primary-green);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(45,90,39,.3)}.mobile-gnb{display:block;position:relative;z-index:1001}@media (min-width:1024px){.mobile-gnb{display:none}}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;background:transparent;border:none;cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-md);transition:all var(--transition-fast);position:relative;overflow:hidden}.menu-toggle:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(45,90,39,.1);border-radius:var(--radius-md);opacity:0;transition:opacity var(--transition-fast)}.menu-toggle:hover:before{opacity:1}.menu-toggle:active{transform:scale(.95)}.hamburger-line{width:24px;height:2px;background:var(--primary-green);border-radius:2px;transition:all var(--transition-normal);transform-origin:center;margin:2px 0}.menu-toggle.menu-open .hamburger-line:first-child{transform:translateY(6px) rotate(45deg)}.menu-toggle.menu-open .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle.menu-open .hamburger-line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;animation:fadeIn var(--transition-normal) ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.side-menu{position:fixed;top:0;right:-100%;width:min(400px,85vw);height:100vh;background:hsla(0,0%,100%,.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-left:1px solid rgba(45,90,39,.1);z-index:1000;transition:right var(--transition-normal) cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-10px 0 30px rgba(0,0,0,.1)}.side-menu.open{right:0}@media (prefers-color-scheme:dark){.side-menu{background:rgba(38,38,38,.98);border-left:1px solid hsla(0,0%,100%,.1);box-shadow:-10px 0 30px rgba(0,0,0,.3)}}.menu-header{justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid rgba(45,90,39,.1);background:rgba(45,90,39,.02)}.menu-brand,.menu-header{display:flex;align-items:center}.menu-brand{gap:var(--space-sm)}.menu-brand-icon{font-size:1.8rem;filter:drop-shadow(0 2px 4px rgba(45,90,39,.3))}.menu-brand-text{display:flex;flex-direction:column;line-height:1.2}.menu-brand-title{font-family:var(--font-heading);font-size:1.2rem;font-weight:700;color:var(--primary-green)}.menu-brand-subtitle{font-size:.7rem;font-weight:500;color:var(--gray-600);letter-spacing:.05em;text-transform:uppercase}.menu-close{width:40px;height:40px;border:none;background:transparent;border-radius:var(--radius-md);color:var(--gray-600);font-size:1.2rem;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.menu-close:hover{background:rgba(220,38,38,.1);color:#dc2626;transform:scale(1.1)}.menu-content{flex:1 1;overflow-y:auto;padding:var(--space-lg);scrollbar-width:thin;scrollbar-color:rgba(45,90,39,.3) transparent}.menu-content::-webkit-scrollbar{width:4px}.menu-content::-webkit-scrollbar-track{background:transparent}.menu-content::-webkit-scrollbar-thumb{background:rgba(45,90,39,.3);border-radius:2px}.user-info{gap:var(--space-md);padding:var(--space-md);background:rgba(45,90,39,.05);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);border:1px solid rgba(45,90,39,.1)}.user-avatar,.user-info{display:flex;align-items:center}.user-avatar{width:48px;height:48px;border-radius:50%;background:var(--gradient-primary);justify-content:center;font-size:1.5rem;color:#fff;box-shadow:0 4px 12px rgba(45,90,39,.3)}.user-details{flex:1 1;display:flex;flex-direction:column;gap:2px}.user-name{font-weight:600;color:var(--gray-900);font-size:.95rem}.user-subtitle{font-size:.8rem;color:var(--gray-600)}.menu-section{margin-bottom:var(--space-xl)}.menu-section-title{font-size:.85rem;font-weight:600;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md);padding-left:var(--space-sm)}.menu-items{display:flex;flex-direction:column;gap:2px}.menu-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);border-radius:var(--radius-lg);text-decoration:none;color:var(--gray-700);background:transparent;border:1px solid transparent;transition:all var(--transition-fast);cursor:pointer;position:relative;overflow:hidden}.menu-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(45,90,39,.05),transparent);transition:left var(--transition-normal)}.menu-item:hover:before{left:100%}.menu-item:hover{background:rgba(45,90,39,.05);border-color:rgba(45,90,39,.2);transform:translateX(4px);box-shadow:0 2px 8px rgba(45,90,39,.1)}.menu-item.active{background:rgba(45,90,39,.1);border-color:rgba(45,90,39,.3);color:var(--primary-green);box-shadow:0 2px 8px rgba(45,90,39,.2)}.menu-item.active .menu-item-icon{filter:drop-shadow(0 2px 4px rgba(45,90,39,.5))}.menu-item-content,.menu-item-main{display:flex;align-items:center;flex:1 1;gap:var(--space-md)}.menu-item-icon{font-size:1.3rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));transition:filter var(--transition-fast)}.menu-item-text{display:flex;flex-direction:column;gap:2px}.menu-item-label{font-weight:500;font-size:.95rem;line-height:1.3}.menu-item-description{font-size:.8rem;color:var(--gray-500);line-height:1.3}.menu-item-badge{background:var(--gradient-accent);color:#fff;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 4px rgba(30,136,229,.3);animation:pulse 2s infinite}.menu-item-expandable{width:100%;border:none;background:transparent;text-align:left}.menu-expand-icon{font-size:.8rem;color:var(--gray-500);transition:transform var(--transition-fast);margin-left:var(--space-sm)}.menu-expand-icon.expanded{transform:rotate(180deg);color:var(--primary-green)}.menu-item-group{position:relative}.submenu{margin-left:var(--space-xl);margin-top:var(--space-xs);padding-left:var(--space-md);border-left:2px solid rgba(45,90,39,.2);animation:slideDown var(--transition-normal) ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-item-child{padding:var(--space-sm) var(--space-md);font-size:.9rem}.menu-item-logout:hover{background:rgba(220,38,38,.05);border-color:rgba(220,38,38,.2);color:#dc2626}.menu-item-logout:hover .menu-item-icon{filter:drop-shadow(0 2px 4px rgba(220,38,38,.3))}.menu-footer{padding:var(--space-lg);border-top:1px solid rgba(45,90,39,.1);background:rgba(45,90,39,.02)}.menu-footer-text{font-size:.8rem;color:var(--gray-500);text-align:center;font-weight:500}@media (max-width:768px){.header-modern{padding:var(--space-sm) var(--space-md)}.logo-title-modern{font-size:1.2rem}.logo-subtitle-modern{font-size:.7rem}.side-menu{width:min(350px,90vw)}.menu-content,.menu-header{padding:var(--space-md)}}.weather-widget-modern{background:hsla(0,0%,100%,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-xl);padding:var(--space-lg);margin:var(--space-lg) 0;box-shadow:0 8px 32px rgba(45,90,39,.1);border:1px solid rgba(45,90,39,.1);position:relative;overflow:hidden;transition:all var(--transition-normal)}.weather-widget-modern:hover{box-shadow:0 12px 40px rgba(45,90,39,.15);transform:translateY(-2px)}@media (prefers-color-scheme:dark){.weather-widget-modern{background:rgba(38,38,38,.95);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 8px 32px rgba(0,0,0,.3)}}.weather-widget-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid rgba(45,90,39,.1)}.weather-widget-title{display:flex;align-items:center;gap:var(--space-sm);font-size:1.2rem;font-weight:600;color:var(--primary-green)}.weather-widget-title:before{content:"🏌️";font-size:1.4rem;filter:drop-shadow(0 2px 4px rgba(45,90,39,.3))}.weather-refresh-btn{background:transparent;border:1px solid rgba(45,90,39,.3);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm);color:var(--primary-green);font-size:.8rem;cursor:pointer;transition:all var(--transition-fast)}.weather-refresh-btn:hover{background:rgba(45,90,39,.1);transform:scale(1.05)}.weather-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--space-md);gap:var(--space-md);margin:var(--space-md) 0}@media (min-width:1024px){.weather-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:768px) and (max-width:1023px){.weather-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:767px){.weather-grid{grid-template-columns:repeat(2,1fr)}}.weather-mini-card{background:rgba(45,90,39,.05);border-radius:var(--radius-lg);padding:var(--space-md);border:1px solid rgba(45,90,39,.1);transition:all var(--transition-fast);position:relative;overflow:hidden;cursor:pointer}.weather-mini-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(45,90,39,.1),transparent);transition:left var(--transition-normal)}.weather-mini-card:hover:before{left:100%}.weather-mini-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(45,90,39,.2);background:rgba(45,90,39,.1);border-color:rgba(45,90,39,.3)}.course-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.course-name-compact{font-size:.9rem;font-weight:600;color:var(--gray-800);line-height:1.2}.course-region{font-size:.75rem;color:var(--gray-500);background:rgba(45,90,39,.1);padding:2px 6px;border-radius:var(--radius-sm)}.weather-main-compact{display:flex;align-items:center;justify-content:space-between;margin:var(--space-sm) 0}.weather-visual-compact{display:flex;align-items:center;gap:var(--space-xs)}.weather-icon-compact{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.temp-display{display:flex;flex-direction:column;align-items:center}.temperature-compact{font-size:1.8rem;font-weight:700;color:var(--primary-green);line-height:1}.condition-compact{font-size:.7rem;color:var(--gray-600);text-align:center;margin-top:2px}.weather-details-compact{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-xs);gap:var(--space-xs);font-size:.75rem;color:var(--gray-600)}.detail-item{display:flex;align-items:center;gap:4px}.detail-label{color:var(--gray-500);font-weight:500}.detail-value{color:var(--gray-700);font-weight:600}.playability-compact{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid rgba(45,90,39,.1)}.playability-status{display:flex;align-items:center;gap:var(--space-xs)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--success)}.status-dot.warning{background:var(--warning)}.status-dot.error{background:var(--error)}.status-text-compact{font-size:.75rem;font-weight:500;color:var(--gray-700)}.playability-score{font-size:.8rem;font-weight:600;color:var(--primary-green);background:rgba(45,90,39,.1);padding:2px 6px;border-radius:var(--radius-sm)}.weather-widget-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid rgba(45,90,39,.1);font-size:.8rem;color:var(--gray-500)}.weather-pagination{display:flex;align-items:center;gap:var(--space-sm)}.pagination-btn{background:transparent;border:1px solid rgba(45,90,39,.3);border-radius:var(--radius-sm);padding:var(--space-xs);color:var(--primary-green);cursor:pointer;transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled){background:rgba(45,90,39,.1);transform:scale(1.1)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.75rem;color:var(--gray-600)}.weather-error,.weather-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-2xl);text-align:center;color:var(--gray-600)}.weather-loading{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.news-ticker-modern{background:linear-gradient(135deg,rgba(45,90,39,.1),rgba(30,136,229,.1));border-radius:var(--radius-lg);margin:var(--space-lg) 0;overflow:hidden;position:relative;border:1px solid rgba(45,90,39,.2);box-shadow:0 4px 12px rgba(45,90,39,.1)}.news-ticker-header{background:rgba(45,90,39,.1);padding:var(--space-sm) var(--space-lg);border-bottom:1px solid rgba(45,90,39,.2);display:flex;align-items:center;gap:var(--space-sm)}.news-ticker-title{font-size:.9rem;font-weight:600;color:var(--primary-green);display:flex;align-items:center;gap:var(--space-xs)}.news-ticker-title:before{content:"📰";font-size:1rem}.news-live-indicator{background:#ef4444;color:#fff;font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase;animation:pulse 2s infinite}.news-scroll-container{padding:var(--space-md) 0;position:relative;overflow:hidden;height:60px}.news-scroll-track{display:flex;align-items:center;gap:var(--space-2xl);animation:scroll-left 90s linear infinite;white-space:nowrap}.news-scroll-track:hover{animation-play-state:paused}@keyframes scroll-left{0%{transform:translateX(100%)}to{transform:translateX(-100%)}}.news-item-ticker{display:flex;align-items:center;gap:var(--space-sm);font-size:.9rem;white-space:nowrap;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:hsla(0,0%,100%,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(45,90,39,.1);transition:all var(--transition-fast);cursor:pointer}.news-item-ticker:hover{background:hsla(0,0%,100%,.9);transform:scale(1.02);box-shadow:0 4px 12px rgba(45,90,39,.2)}.news-source-ticker{background:var(--primary-green);color:#fff;font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:var(--radius-sm);min-width:-moz-fit-content;min-width:fit-content}.news-source-ticker.golf-digest{background:#1e40af}.news-source-ticker.golf-zone{background:#059669}.news-source-ticker.sports-chosun{background:#dc2626}.news-source-ticker.tech-golf{background:#7c3aed}.news-title-ticker{color:var(--gray-800);font-weight:500;margin:0 var(--space-sm)}.news-time-ticker{color:var(--gray-500);font-size:.75rem;font-weight:400;margin-left:auto;min-width:-moz-fit-content;min-width:fit-content}.news-scroll-container:after,.news-scroll-container:before{content:"";position:absolute;top:0;bottom:0;width:40px;z-index:2;pointer-events:none}.news-scroll-container:before{left:0;background:linear-gradient(90deg,hsla(0,0%,100%,.8),transparent)}.news-scroll-container:after{right:0;background:linear-gradient(270deg,hsla(0,0%,100%,.8),transparent)}@media (prefers-color-scheme:dark){.news-ticker-modern{background:linear-gradient(135deg,rgba(45,90,39,.2),rgba(30,136,229,.2));border:1px solid hsla(0,0%,100%,.1)}.news-item-ticker{background:rgba(38,38,38,.8);border:1px solid hsla(0,0%,100%,.1)}.news-item-ticker:hover{background:rgba(38,38,38,.9)}.news-scroll-container:before{background:linear-gradient(90deg,rgba(38,38,38,.8),transparent)}.news-scroll-container:after{background:linear-gradient(270deg,rgba(38,38,38,.8),transparent)}}@media (max-width:768px){.weather-grid{gap:var(--space-sm)}.weather-mini-card{padding:var(--space-sm)}.weather-widget-modern{padding:var(--space-md);margin:var(--space-md) 0}.temperature-compact,.weather-icon-compact{font-size:1.5rem}.news-scroll-track{gap:var(--space-lg)}.news-item-ticker{font-size:.8rem;padding:var(--space-xs) var(--space-sm)}}