:root{--color-bg: #f5f4f2;--color-dark: #1a1a18;--color-mid: #3d3d3a;--color-muted: #8a8a85;--color-accent: #c8b89a;--color-white: #ffffff;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--transition-fast: .18s ease;--transition-mid: .35s ease;--transition-slow: .55s cubic-bezier(.16, 1, .3, 1);--panel-width: 280px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:var(--font-body);background:var(--color-dark);color:var(--color-dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:2px}.home-root{position:relative;width:100vw;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center}.home-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.home-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#f5f4f21f,#f5f4f20d,#f5f4f22e);z-index:1}.home-center{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;gap:0;width:100%;max-width:640px;padding:0 24px;transition:transform var(--transition-slow)}.home-center.panel-open{transform:translate(calc(var(--panel-width) / 2))}.home-wordmark{font-family:var(--font-display);font-size:clamp(13px,1.5vw,16px);font-weight:300;letter-spacing:.45em;color:var(--color-dark);text-transform:uppercase;margin-bottom:40px;opacity:.65;-webkit-user-select:none;user-select:none}.search-container{width:100%;position:relative}.search-input-wrap{position:relative;width:100%;display:flex;align-items:center}.search-input{width:100%;height:52px;padding:0 52px 0 20px;background:#ffffffb8;border:1px solid rgba(26,26,24,.12);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:18px;font-weight:300;letter-spacing:.04em;color:var(--color-dark);outline:none;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.search-input::placeholder{color:var(--color-muted);font-style:italic;letter-spacing:.06em}.search-input:focus{background:#ffffffe0;border-color:#1a1a1840;box-shadow:0 4px 24px #1a1a1814}.search-icon-btn{position:absolute;right:0;top:0;height:52px;width:52px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--color-mid);transition:color var(--transition-fast)}.search-icon-btn:hover{color:var(--color-dark)}.search-icon-btn svg{width:18px;height:18px;stroke-width:1.5}.search-hint{margin-top:12px;font-family:var(--font-body);font-size:11px;font-weight:300;letter-spacing:.18em;color:var(--color-mid);text-align:center;opacity:.55;text-transform:uppercase;transition:opacity var(--transition-mid)}.category-panel{position:fixed;top:0;left:0;height:100vh;width:var(--panel-width);background:#f5f4f2eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid rgba(26,26,24,.08);z-index:20;display:flex;flex-direction:column;transform:translate(-100%);transition:transform var(--transition-slow);overflow:hidden}.category-panel.visible{transform:translate(0)}.panel-header{padding:32px 24px 20px;border-bottom:1px solid rgba(26,26,24,.08);flex-shrink:0}.panel-title{font-family:var(--font-display);font-size:11px;font-weight:400;letter-spacing:.35em;color:var(--color-muted);text-transform:uppercase}.panel-body{flex:1;overflow-y:auto;padding:8px 0}.alpha-group{position:relative}.alpha-trigger{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;cursor:pointer;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.alpha-trigger:hover{background:#1a1a180a}.alpha-letter{font-family:var(--font-display);font-size:22px;font-weight:300;color:var(--color-dark);letter-spacing:.02em;line-height:1}.alpha-count{font-family:var(--font-body);font-size:10px;font-weight:300;letter-spacing:.12em;color:var(--color-muted)}.brand-dropdown{position:absolute;left:100%;top:0;width:280px;background:#1a1a18f5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:12px 0;z-index:30;opacity:0;pointer-events:none;transform:translate(-8px);transition:opacity var(--transition-fast),transform var(--transition-fast)}.alpha-group:hover .brand-dropdown{opacity:1;pointer-events:all;transform:translate(0)}.brand-item{display:block;padding:8px 20px;font-family:var(--font-body);font-size:11px;font-weight:300;letter-spacing:.14em;color:#f5f4f2bf;text-transform:uppercase;text-decoration:none;cursor:pointer;background:transparent;border:none;width:100%;text-align:left;transition:color var(--transition-fast),background var(--transition-fast)}.brand-item:hover{color:var(--color-white);background:#ffffff0f}.brand-page-root{width:100vw;min-height:100vh;background:var(--color-bg);overflow-y:auto;overflow-x:hidden}.brand-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 48px;height:64px;background:#f5f4f2eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(26,26,24,.08)}.nav-back{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:11px;font-weight:300;letter-spacing:.18em;color:var(--color-muted);text-transform:uppercase;text-decoration:none;background:transparent;border:none;cursor:pointer;transition:color var(--transition-fast);padding:0}.nav-back:hover{color:var(--color-dark)}.nav-back svg{width:14px;height:14px;stroke-width:1.5}.nav-wordmark{font-family:var(--font-display);font-size:14px;font-weight:300;letter-spacing:.4em;color:var(--color-dark);text-transform:uppercase;text-decoration:none;opacity:.6}.nav-spacer{width:80px}.brand-hero{padding:80px 48px 48px;border-bottom:1px solid rgba(26,26,24,.08)}.brand-name{font-family:var(--font-display);font-size:clamp(48px,7vw,96px);font-weight:300;letter-spacing:-.01em;color:var(--color-dark);line-height:.9;margin-bottom:24px}.brand-meta{display:flex;align-items:center;gap:16px}.brand-tag{display:inline-block;padding:4px 10px;border:1px solid rgba(26,26,24,.15);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:10px;font-weight:400;letter-spacing:.2em;color:var(--color-muted);text-transform:uppercase}.brand-content{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#1a1a1814;border-bottom:1px solid rgba(26,26,24,.08)}@media (max-width: 768px){.brand-content{grid-template-columns:1fr}}.brand-section{background:var(--color-bg);padding:48px}.section-label{font-family:var(--font-body);font-size:10px;font-weight:400;letter-spacing:.3em;color:var(--color-muted);text-transform:uppercase;margin-bottom:28px;display:flex;align-items:center;gap:12px}.section-label:after{content:"";flex:1;height:1px;background:#1a1a181a}.brand-info-placeholder{min-height:240px;display:flex;flex-direction:column;gap:16px}.placeholder-field{display:flex;flex-direction:column;gap:6px}.placeholder-key{font-family:var(--font-body);font-size:10px;font-weight:400;letter-spacing:.2em;color:var(--color-muted);text-transform:uppercase}.placeholder-value{height:20px;border-radius:var(--radius-sm);background:#1a1a180d;border:1px dashed rgba(26,26,24,.12);position:relative;display:flex;align-items:center;padding:0 10px}.placeholder-value:before{content:"— 데이터를 입력해주세요";font-family:var(--font-body);font-size:11px;color:#8a8a8580;font-style:italic}.shop-placeholder{min-height:240px;display:flex;flex-direction:column;gap:12px}.shop-placeholder-item{padding:16px 20px;border:1px dashed rgba(26,26,24,.12);border-radius:var(--radius-sm);background:#1a1a1805;display:flex;align-items:center;justify-content:space-between}.shop-placeholder-name{font-family:var(--font-body);font-size:11px;font-weight:400;letter-spacing:.1em;color:#8a8a8580;font-style:italic}.shop-placeholder-arrow{color:#8a8a8559;font-size:14px}.brand-footer{padding:48px;display:flex;align-items:center;justify-content:space-between}.brand-footer-text{font-family:var(--font-body);font-size:10px;font-weight:300;letter-spacing:.18em;color:var(--color-muted);text-transform:uppercase}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .6s ease forwards}.animate-fade-in-up{animation:fadeInUp .7s cubic-bezier(.16,1,.3,1) forwards}.animate-delay-1{animation-delay:.1s;opacity:0}.animate-delay-2{animation-delay:.2s;opacity:0}.animate-delay-3{animation-delay:.35s;opacity:0}
