.header{position:sticky;top:0;z-index:var(--z-header);background:var(--color-bg);border-bottom:1px solid var(--color-border)}.header-inner{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6);height:var(--header-height);display:flex;align-items:center;gap:var(--space-12)}.logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none}.logo-image{display:block;object-fit:contain}.logo-header{height:36px}.nav{display:flex;gap:var(--space-8)}.nav-link{text-decoration:none;color:var(--color-text-muted);font-size:var(--text-base);font-weight:500;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--color-text);font-weight:700}.mobile-menu-btn,.mobile-nav-overlay,.mobile-nav-drawer{display:none}@media(max-width:768px){.nav{display:none}.header-inner{padding:0 var(--space-4);justify-content:space-between;gap:0}.logo-header{height:28px}.mobile-menu-btn{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;border:none;background:none;cursor:pointer}.mobile-menu-btn span{display:block;width:100%;height:2px;background:var(--color-text);border-radius:1px;transition:transform .25s ease,opacity .25s ease}.mobile-menu-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-btn.open span:nth-child(2){opacity:0}.mobile-menu-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);background:#00000073;opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-nav-overlay.open{opacity:1;pointer-events:auto}.mobile-nav-drawer{display:flex;flex-direction:column;position:fixed;top:0;right:0;left:auto;z-index:calc(var(--z-overlay) + 1);width:min(300px,84vw);height:100dvh;background:var(--color-bg);box-shadow:-4px 0 24px #0000001f;transform:translate(100%);transition:transform .3s ease}.mobile-nav-drawer.open{transform:translate(0)}.mobile-nav-drawer-header{display:flex;align-items:center;justify-content:space-between;height:var(--header-height);padding:0 var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0}.mobile-nav-drawer-title{font-size:16px;font-weight:700;color:var(--color-text)}.mobile-nav-close{width:36px;height:36px;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.mobile-nav-close:hover{background:var(--color-bg-subtle)}.mobile-nav-links{display:flex;flex-direction:column;padding:var(--space-2) 0;overflow-y:auto}.mobile-nav-link{padding:14px 20px;font-size:var(--text-base);font-weight:500;color:var(--color-text);text-decoration:none;border-bottom:1px solid var(--color-border)}.mobile-nav-link.active{color:var(--color-primary);font-weight:700}}.footer{background:var(--color-bg-subtle);border-top:1px solid var(--color-border);margin-top:var(--space-10)}.footer-inner{max-width:var(--container-max);margin:0 auto;padding:var(--space-12) var(--space-6) var(--space-8)}.footer-top{display:grid;grid-template-columns:1fr minmax(260px,auto);gap:var(--space-12)}.footer-brand{display:flex;flex-direction:column;gap:var(--space-4)}.footer-logo{display:flex;align-items:center}.logo-footer{height:32px}.footer-desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.7}.footer-link-title{font-size:14px;font-weight:700;color:var(--color-text)}.footer-contact{display:flex;flex-direction:column;gap:var(--space-2)}.footer-phone{font-size:var(--text-xl);font-weight:700;color:var(--color-primary);text-decoration:none;margin-top:var(--space-2)}.footer-phone:hover{text-decoration:underline}.footer-hours{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--color-text-muted);line-height:1.7}.footer-hours-line{white-space:nowrap}.footer-email{font-size:var(--text-sm);color:var(--color-text-muted);text-decoration:none;margin-top:4px}.footer-email:hover{color:var(--color-primary)}.footer-divider{height:1px;background:var(--color-border);margin:var(--space-8) 0 var(--space-6)}.footer-bottom{display:flex;flex-direction:column;gap:var(--space-3)}.footer-company{display:flex;flex-direction:column;gap:6px}.footer-company p{font-size:12px;color:var(--color-text-muted);line-height:1.6;display:flex;flex-wrap:wrap;gap:4px 0}.footer-company .divider{margin:0 var(--space-2);color:var(--color-border)}.footer-copyright{font-size:12px;color:var(--color-text-muted);opacity:.7;margin-top:4px}@media(max-width:1024px){.footer-top{grid-template-columns:1fr}}@media(max-width:640px){.footer-inner{padding:var(--space-8) var(--space-4) var(--space-6)}.footer-top{gap:var(--space-8)}.footer-company p{flex-direction:column;gap:2px}.footer-company .divider{display:none}}.inquiry-form--product{display:flex;flex-direction:column;gap:var(--space-3)}.inquiry-form-field label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);margin-bottom:6px}.inquiry-form-field input,.inquiry-form-input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;font-family:inherit;box-sizing:border-box;background:var(--color-bg);color:var(--color-text)}.inquiry-form-field input:focus,.inquiry-form-input:focus{outline:none;border-color:var(--color-primary)}.inquiry-form-input--inline{flex:1;min-width:0;padding:12px 14px;border:none;border-radius:var(--radius-md)}.inquiry-form--bar{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.inquiry-form--bar .inquiry-form-input--inline{background:var(--color-bg)}.inquiry-form--bar .inquiry-form-input--inline:focus{outline:2px solid var(--color-primary);outline-offset:1px}.inquiry-form-message{font-size:var(--text-sm);margin:0}.inquiry-form-message--success{color:var(--color-success)}.inquiry-form-message--error{color:var(--color-error)}.inquiry-form--bar .inquiry-form-message--success{color:#fff}.inquiry-form--bar .inquiry-form-message--error{color:#fecaca}.inquiry-form-submit{flex-shrink:0;padding:12px 20px;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:var(--text-base);font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap}.inquiry-form--product .inquiry-form-submit{width:100%;padding:14px;border-radius:10px}.inquiry-form-submit:hover:not(:disabled){background:var(--color-primary-hover)}.inquiry-form-submit:disabled{opacity:.7;cursor:not-allowed}@media(max-width:768px){.inquiry-form--bar{flex-wrap:wrap;gap:var(--space-2)}.inquiry-form--bar .inquiry-form-input--inline{flex:1 1 calc(50% - 6px)}.inquiry-form--bar .inquiry-form-submit{width:100%;padding:14px}}@media(max-width:480px){.inquiry-form--bar .inquiry-form-input--inline{flex:1 1 100%}}@media(max-width:768px){.inquiry-form--product .inquiry-form-field input{padding:12px 14px;font-size:var(--text-base)}.inquiry-form--product .inquiry-form-submit{padding:16px;font-size:16px}}.quick-consult-bar{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-overlay);background:var(--color-surface-dark);padding:10px var(--space-4) calc(10px + env(safe-area-inset-bottom,0px));box-shadow:0 -2px 12px #00000026}.quick-consult-inner{max-width:var(--container-narrow);margin:0 auto;display:flex;align-items:center;gap:var(--space-3)}.quick-consult-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.quick-consult-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#ffffff1f;color:#fff}.quick-consult-title{display:flex;flex-direction:column;line-height:1.2;color:#fff}.quick-consult-title-sub{font-size:var(--text-sm);font-weight:600;color:#ffffffd9}.quick-consult-title-main{font-size:20px;font-weight:700;letter-spacing:-.02em}.quick-consult-message{max-width:var(--container-narrow);margin:6px auto 0;font-size:var(--text-sm);font-weight:500;text-align:center}.quick-consult-message.success{color:#fff}.quick-consult-message.error{color:#fecaca}@media(max-width:768px){.quick-consult-inner{flex-wrap:wrap;gap:var(--space-2)}.quick-consult-brand{width:100%}}.app{min-height:100vh;background:var(--color-bg)}.app--with-quick-consult{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}@media(max-width:768px){.app--with-quick-consult{padding-bottom:calc(140px + env(safe-area-inset-bottom,0px))}}.public-main{min-width:0}.badge{font-size:var(--text-xs);padding:4px 8px;border-radius:var(--radius-sm);background:var(--color-primary-light);color:var(--color-primary);font-weight:500;white-space:nowrap}.status-message{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-text-muted);font-size:var(--text-base)}.status-message.error{color:var(--color-error)}.announcement-bar{background:var(--color-surface-dark);color:#fff;overflow:hidden;height:36px;display:flex;align-items:center}.announcement-track{display:flex;gap:var(--space-12);animation:announcement-scroll 30s linear infinite;white-space:nowrap;padding:0 var(--space-6)}.announcement-item{font-size:var(--text-sm);font-weight:500;opacity:.9}.announcement-item:before{content:"✓ ";color:var(--color-primary-accent)}@keyframes announcement-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.announcement-track{animation:none;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.announcement-track::-webkit-scrollbar{display:none}}@media(max-width:768px){.announcement-bar{height:32px}}.sidebar{display:flex;flex-direction:column;gap:var(--space-3)}.brand-filter-header{margin-bottom:var(--space-3)}.brand-filter-header h4{font-size:14px;font-weight:700;color:var(--color-text)}.brand-list{list-style:none}.brand-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background .15s}.brand-item:hover,.brand-item.active{background:var(--color-bg-subtle);margin:0 -8px;padding:10px 8px;border-radius:var(--radius-md)}.brand-item.active .brand-name{color:var(--color-primary);font-weight:600}.brand-logo{width:28px;height:28px;background:var(--color-bg-subtle);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--color-text-muted);flex-shrink:0}.brand-logo-img{width:28px;height:28px;border-radius:var(--radius-md);object-fit:contain;background:var(--color-bg-subtle);flex-shrink:0}.brand-name{flex:1;font-size:14px;font-weight:500}.brand-count{font-size:var(--text-sm);color:var(--color-text-muted)}@media(max-width:768px){.sidebar{display:none}}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-5)}.product-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg);transition:box-shadow .2s;cursor:pointer;text-decoration:none;color:inherit;display:block}.product-card:hover{box-shadow:var(--shadow-md)}.product-image-wrap{position:relative;aspect-ratio:3 / 2;background:var(--color-bg-subtle);overflow:hidden}.product-image{width:100%;height:100%;object-fit:cover}.product-image-count{position:absolute;right:10px;bottom:10px;padding:4px 8px;border-radius:var(--radius-sm);background:#0000008c;color:#fff;font-size:var(--text-xs);font-weight:600}.product-meta{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-2)}.product-info{padding:var(--space-4)}.product-title{font-size:var(--text-base);font-weight:700;line-height:1.4;margin-bottom:4px}.product-spec{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.45;margin-bottom:4px}.product-price{display:block;font-size:20px;font-weight:700;color:var(--color-primary)}.product-monthly{display:block;font-size:var(--text-sm);color:var(--color-text-muted);margin-top:2px}.product-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}@media(max-width:1024px){.product-grid{grid-template-columns:1fr}}@media(max-width:768px){.product-grid{gap:var(--space-4)}.product-info{padding:14px var(--space-4) var(--space-4)}.product-title{font-size:16px}.product-price{font-size:var(--text-xl);font-weight:700}}.home-layout{max-width:var(--container-max);margin:0 auto;padding:var(--space-6);display:grid;grid-template-columns:240px 1fr;gap:var(--space-6);position:relative}.home-main{min-width:0}.filter-bar-area{position:relative;z-index:var(--z-dropdown)}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.filter-dropdown-wrap{position:relative;flex-shrink:0;z-index:1}.filter-dropdown-wrap:has(.filter-dropdown){z-index:var(--z-overlay)}.filter-chip{padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg);font-size:var(--text-sm);font-weight:500;color:var(--color-text);cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .15s;font-family:inherit}.filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-chip-dropdown.open,.filter-chip-dropdown.selected{border-color:var(--color-primary);color:var(--color-primary);font-weight:600}.filter-chevron{display:flex;color:var(--color-text-muted)}.filter-chip--mobile-only{display:none}.filter-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:var(--z-overlay);min-width:160px;max-width:min(280px,80vw);max-height:280px;overflow-y:auto;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-md);padding:6px}.filter-dropdown-item{display:block;width:100%;padding:10px 12px;border:none;border-radius:var(--radius-md);background:none;text-align:left;font-size:14px;font-family:inherit;color:var(--color-text);cursor:pointer}.filter-dropdown-item:hover{background:var(--color-bg-subtle)}.filter-dropdown-item.active{background:var(--color-primary);color:#fff;font-weight:600}.filter-dropdown-empty{padding:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted);margin:0}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.results-count{font-size:var(--text-base);font-weight:700;color:var(--color-text)}@media(max-width:1024px){.home-layout{grid-template-columns:200px 1fr}}@media(max-width:768px){.home-layout{grid-template-columns:1fr;padding:0;gap:0}.home-main{padding:0}.filter-bar-area{background:var(--color-bg);border-bottom:1px solid var(--color-border)}.filter-bar{flex-wrap:nowrap;overflow-x:auto;gap:var(--space-2);padding:var(--space-3) var(--space-4);margin-bottom:0;scrollbar-width:none}.filter-bar::-webkit-scrollbar{display:none}.filter-chip--mobile-only{display:flex}.results-header{padding:var(--space-3) var(--space-4) 0}}.detail-gallery-track .detail-main-image{flex:0 0 100%;width:100%;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.detail-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;border-radius:50%;background:var(--color-bg);box-shadow:var(--shadow-sm);font-size:22px;line-height:1;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:box-shadow .15s,color .15s}.detail-nav:hover{box-shadow:var(--shadow-md);color:var(--color-primary)}@media(min-width:901px){.detail-sidebar{position:sticky;top:calc(var(--header-height) + var(--space-5));align-self:start}.detail-gallery-track .detail-main-image{object-fit:contain;object-position:center}}.detail-page-root.app--with-inquiry{padding-bottom:calc(280px + env(safe-area-inset-bottom,0px))}@media(max-width:900px){.detail-gallery{padding:0 56px;height:300px;min-height:300px}.detail-content{grid-template-columns:1fr}.detail-sidebar{position:fixed;bottom:0;left:0;right:0;z-index:calc(var(--z-overlay) - 10);margin-top:0;padding:var(--space-3) var(--space-5) calc(var(--space-4) + env(safe-area-inset-bottom,0px));background:var(--color-bg);border-top:1px solid var(--color-border);box-shadow:0 -4px 20px #00000014}.detail-price-card{border:none;padding:0;border-radius:0;box-shadow:none}.detail-page-root.app--with-inquiry{padding-bottom:calc(280px + env(safe-area-inset-bottom,0px))}}@media(min-width:769px){.detail-spec-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6) var(--space-8)}}@media(max-width:768px){.detail-page{padding:0 var(--space-4) var(--space-10);max-width:none}.detail-gallery{margin:0 calc(-1 * var(--space-4));padding:0;border-radius:0;height:52vw;min-height:220px;max-height:340px}.detail-nav{display:none}.detail-mobile-back{display:flex;align-items:center;justify-content:center;position:absolute;top:14px;left:14px;width:40px;height:40px;border-radius:50%;background:#ffffffeb;color:var(--color-text);text-decoration:none;box-shadow:var(--shadow-sm);z-index:3}.detail-mobile-back svg{display:block;width:20px;height:20px}.detail-image-counter{display:block;position:absolute;bottom:14px;right:14px;padding:5px 12px;border-radius:var(--radius-full);background:#00000073;color:#fff;font-size:var(--text-sm);font-weight:500;z-index:3}.detail-content{margin-top:0;gap:0;padding:0}.detail-back-link{display:none}.detail-title-row{padding-top:var(--space-6)}.detail-title{font-size:var(--text-xl);line-height:1.35;margin-bottom:6px}.detail-subtitle{font-size:17px;font-weight:700;color:var(--color-text);margin-bottom:var(--space-4)}.detail-spec-list{display:block;padding-top:var(--space-5)}.detail-spec-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:15px 0;border-bottom:1px solid var(--color-border)}.detail-spec-row:last-child{border-bottom:none}.detail-spec-label{flex-shrink:0;margin-bottom:0;font-size:var(--text-base);font-weight:400}.detail-spec-value{text-align:right;font-weight:400}.detail-price-header .detail-price{font-size:var(--text-2xl)}}@media(max-width:600px){.detail-gallery{min-height:200px}}.about-page{min-height:100vh;background:var(--color-bg)}.about-main{max-width:720px;margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-10)}.about-title{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--space-3)}.about-lead{font-size:var(--text-base);line-height:1.7;color:var(--color-text-muted);margin-bottom:var(--space-8)}.about-section-title{font-size:16px;font-weight:700;color:var(--color-text);margin-bottom:var(--space-4);padding-bottom:10px;border-bottom:1px solid var(--color-border)}.about-info-list{display:flex;flex-direction:column;gap:14px}.about-info-row{display:grid;grid-template-columns:80px 1fr;gap:var(--space-3);font-size:14px;line-height:1.6}.about-info-row dt{color:var(--color-text-muted);font-weight:500}.about-info-row dd{color:var(--color-text);margin:0}.about-info-row a{color:var(--color-primary);text-decoration:none}.about-info-row a:hover{text-decoration:underline}@media(max-width:768px){.about-main{padding:var(--space-6) var(--space-4) var(--space-12)}.about-info-row{grid-template-columns:1fr;gap:4px}}.board-page{min-height:100vh;background:var(--color-bg)}.board-main{max-width:800px;margin:0 auto;padding:var(--space-6) var(--space-6) var(--space-10)}.board-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.board-title{font-size:var(--text-xl);font-weight:700;color:var(--color-text)}.board-write-btn{padding:10px 18px;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;font-family:inherit}.board-write-btn:hover{background:var(--color-primary-hover)}.board-list{border-top:1px solid var(--color-border)}.board-item{display:block;padding:var(--space-4) 4px;border-bottom:1px solid var(--color-border);text-decoration:none;color:inherit}.board-item:hover{background:var(--color-bg-subtle)}.board-item-top{display:flex;align-items:center;gap:var(--space-2);margin-bottom:6px}.board-item-title{font-size:var(--text-base);font-weight:600;color:var(--color-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-item-title.locked{color:var(--color-text-muted)}.board-badge{flex-shrink:0;font-size:var(--text-xs);font-weight:600;padding:3px 8px;border-radius:var(--radius-sm)}.board-badge.notice{background:var(--color-primary);color:#fff}.board-badge.secret{background:transparent;color:inherit;padding:0;border-radius:0;font-size:14px;font-weight:400}.board-item-meta{display:flex;gap:var(--space-3);font-size:12px;color:var(--color-text-muted)}.board-empty{padding:var(--space-12) 0;text-align:center;color:var(--color-text-muted);font-size:14px}.board-form{display:flex;flex-direction:column;gap:var(--space-4)}.board-form-group{display:flex;flex-direction:column;gap:6px}.board-form-group label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.board-form-group input,.board-form-group textarea{padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;font-family:inherit;resize:vertical;background:var(--color-bg);color:var(--color-text)}.board-form-group input:focus,.board-form-group textarea:focus{outline:none;border-color:var(--color-primary)}.board-form-group textarea{min-height:200px}.board-form-check{display:flex;align-items:center;gap:var(--space-2);font-size:14px;color:var(--color-text)}.board-form-check input{width:16px;height:16px}.board-form-actions{display:flex;gap:10px;margin-top:var(--space-2)}.board-btn-primary{padding:12px 24px;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.board-btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.board-btn-primary:disabled{opacity:.6;cursor:not-allowed}.board-btn-secondary{padding:12px 24px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:14px;font-weight:500;text-decoration:none;text-align:center;font-family:inherit}.board-detail-header{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-5)}.board-detail-title{font-size:20px;font-weight:700;color:var(--color-text);margin-bottom:10px}.board-detail-meta{display:flex;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.board-detail-content{font-size:var(--text-base);line-height:1.8;color:var(--color-text);white-space:pre-wrap;margin-bottom:var(--space-8)}.board-comments{border-top:1px solid var(--color-border);padding-top:var(--space-6)}.board-comments-title{font-size:var(--text-base);font-weight:700;color:var(--color-text);margin-bottom:var(--space-4)}.board-comment{padding:14px 0;border-bottom:1px solid var(--color-border)}.board-comment-meta{font-size:12px;color:var(--color-primary);font-weight:600;margin-bottom:6px}.board-comment-content{font-size:14px;line-height:1.6;color:var(--color-text);white-space:pre-wrap}.board-comments-empty{font-size:var(--text-sm);color:var(--color-text-muted);padding:var(--space-3) 0}.board-back-link{display:inline-block;margin-bottom:var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted);text-decoration:none}.board-back-link:hover{color:var(--color-primary)}.board-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:#00000073;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.board-modal{width:100%;max-width:360px;background:var(--color-bg);border-radius:var(--radius-lg);padding:var(--space-6)}.board-modal h3{font-size:16px;font-weight:700;margin-bottom:var(--space-2)}.board-modal p{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.board-modal-error{font-size:var(--text-sm);color:var(--color-error);margin-bottom:var(--space-3)}.board-status-message{padding:var(--space-6) 0;text-align:center;color:var(--color-text-muted);font-size:14px}.board-status-message.error{color:var(--color-error)}@media(max-width:768px){.board-main{padding:var(--space-4) var(--space-4) var(--space-12)}}.admin-app{display:flex;min-height:100vh;background:var(--color-bg-subtle);font-family:Noto Sans KR,sans-serif}.admin-sidebar{width:260px;background:#fff;color:#1a1a1a;display:flex;flex-direction:column;flex-shrink:0;border-right:1px solid #e8e8e8}.admin-sidebar-header{padding:24px 20px 16px}.admin-sidebar-brand{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-logo{display:block}.logo-admin-sidebar{height:28px}.admin-role-badge{flex-shrink:0;padding:4px 10px;border-radius:999px;background:#2563eb;color:#fff;font-size:11px;font-weight:600}.admin-sidebar-divider{height:1px;background:#eee;margin:0 20px}.admin-nav{display:flex;flex-direction:column;flex:1;padding:16px 0;overflow-y:auto}.admin-nav-section{margin:0 20px 8px;font-size:12px;font-weight:600;color:#999}.admin-nav-link{display:flex;align-items:center;gap:10px;padding:11px 20px;border-left:3px solid transparent;color:#444;text-decoration:none;font-size:14px;font-weight:500;transition:background .15s,color .15s,border-color .15s}.admin-nav-link:hover{background:#f8fafc;color:#2563eb}.admin-nav-link.active{background:#eff6ff;border-left-color:#2563eb;color:#2563eb;font-weight:600}.admin-nav-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.admin-nav-icon svg{width:18px;height:18px}.admin-sidebar-footer{display:flex;flex-direction:column;gap:4px;padding:16px 20px 20px;border-top:1px solid #eee}.admin-sidebar-link{background:none;border:none;padding:8px 0;font-size:13px;color:#666;text-decoration:none;text-align:left;cursor:pointer;font-family:inherit}.admin-sidebar-link:hover{color:#2563eb}.admin-sidebar-link--button{color:#888}.admin-sidebar-link--button:hover{color:#ef4444}.admin-sidebar-version{margin:12px 0 0;font-size:11px;color:#bbb}.admin-main{flex:1;padding:32px;overflow:auto}.admin-main--product-form{padding:0;background:#fff;overflow:auto}.admin-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-page-header h2{font-size:22px;font-weight:700;color:#1a1a1a}.admin-btn{display:inline-flex;align-items:center;padding:8px 16px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;color:#444;font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;font-family:inherit}.admin-btn:hover{border-color:#2563eb;color:#2563eb}.admin-btn-primary{display:inline-flex;align-items:center;padding:8px 16px;border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;font-family:inherit}.admin-btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#fff}.admin-btn-primary:disabled{opacity:.6;cursor:not-allowed}.admin-btn:disabled{opacity:.6;cursor:not-allowed}.admin-btn-sm{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;font-size:12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;color:#444;cursor:pointer;margin-right:4px;font-family:inherit;font-weight:500;line-height:1;box-sizing:border-box}.admin-btn-sm.primary{background:#2563eb;color:#fff;border-color:#2563eb}.admin-btn-sm.danger{color:#ef4444;border-color:#fecaca}.admin-btn-sm.danger:hover{background:#fef2f2}.admin-table-wrap{background:#fff;border-radius:12px;border:1px solid #eee;overflow:auto}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th,.admin-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #f0f0f0}.admin-table th{background:#f8f9fb;font-weight:600;color:#666;font-size:13px}.admin-table-title{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-table-actions{white-space:nowrap}.admin-badge{font-size:12px;padding:2px 8px;border-radius:4px;font-weight:500}.admin-badge.published{background:#dcfce7;color:#16a34a}.admin-badge.draft{background:#f3f4f6;color:#6b7280}.admin-badge.new{background:#fef3c7;color:#d97706}.admin-badge.done{background:#dcfce7;color:#16a34a}.admin-empty{text-align:center;color:#999;padding:32px!important}.admin-error{color:#ef4444;font-size:14px;margin:8px 0}.admin-form{background:#fff;border-radius:12px;border:1px solid #eee;padding:24px}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-form-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:#444}.admin-form-grid label.full{grid-column:1 / -1}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea,.admin-inline-form input{padding:10px 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit}.admin-form-grid textarea{resize:vertical;min-height:120px;line-height:1.6}.admin-upload-section{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;padding-top:24px;border-top:1px solid #f0f0f0}.admin-upload-item{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:500}.admin-preview{width:100%;max-height:160px;object-fit:cover;border-radius:8px;border:1px solid #eee}.admin-preview.sm{max-height:80px;max-width:120px}.admin-form-actions{margin-top:24px;padding-top:24px;border-top:1px solid #f0f0f0;display:flex;gap:10px}.admin-btn-secondary{display:inline-flex;align-items:center;padding:8px 16px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;color:#444;font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;font-family:inherit}.admin-form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.admin-form-group label{font-size:13px;font-weight:600;color:#444}.admin-form-group input,.admin-form-group textarea{padding:10px 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit}.admin-form-group textarea{resize:vertical;min-height:120px}.admin-detail-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:24px;margin-bottom:24px}.admin-detail-meta{display:flex;align-items:center;gap:10px;font-size:13px;color:#888;margin-bottom:12px}.admin-detail-title{font-size:18px;font-weight:700;color:#1a1a1a;margin-bottom:16px}.admin-detail-content{font-size:14px;line-height:1.8;color:#333;white-space:pre-wrap}.admin-detail-section{background:#fff;border:1px solid #eee;border-radius:12px;padding:24px}.admin-detail-section h3{font-size:16px;font-weight:700;margin-bottom:16px}.admin-comment-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.admin-comment-item{padding:14px;background:#f8f9fb;border-radius:8px}.admin-comment-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#2563eb;font-weight:600;margin-bottom:8px}.admin-comment-item p{font-size:14px;line-height:1.6;color:#444;white-space:pre-wrap;margin:0}.admin-comment-form{margin-top:16px;padding:0;border:none;background:transparent}.admin-empty-inline{font-size:13px;color:#999;margin-bottom:16px}.admin-category-create{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px}.admin-category-create .admin-category-name-input{flex:1;min-width:200px;max-width:320px;height:40px;padding:0 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;box-sizing:border-box;background:#fff;color:#1a1a1a;line-height:1.4}.admin-category-create .admin-category-name-input:focus{outline:none;border-color:#2563eb}.admin-category-create .admin-category-name-input::placeholder{color:#9ca3af}.admin-category-create .admin-btn-sm,.admin-category-create label.admin-btn-sm{height:40px;padding:0 14px;margin-right:0;font-size:13px;border-radius:8px}.admin-category-icon-field,.admin-category-icon-edit{display:flex;align-items:center;gap:8px}.admin-category-icon{width:40px;height:40px;border-radius:8px;object-fit:contain;background:#f9fafb;border:1px solid #e5e7eb;flex-shrink:0;box-sizing:border-box}.admin-category-icon--fallback{display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#9ca3af;background:#f9fafb}.admin-category-icon-edit label.admin-btn-sm{cursor:pointer}.admin-category-icon-field label.admin-btn-sm input,.admin-category-icon-edit label.admin-btn-sm input{display:none}.admin-table-title a{color:#2563eb;text-decoration:none}.admin-table-title a:hover{text-decoration:underline}.admin-inline-form{display:flex;gap:8px;margin-bottom:24px}.admin-inline-form input{flex:1;max-width:320px}.admin-input-sm{width:60px;padding:4px 8px;border:1px solid #e0e0e0;border-radius:6px}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f6f8;font-family:Noto Sans KR,sans-serif;padding:24px}.admin-login-card{background:#fff;border-radius:16px;padding:48px 40px 40px;width:100%;max-width:420px;box-shadow:0 2px 16px #0000000f}.admin-login-brand{display:flex;justify-content:center;margin-bottom:32px}.logo-admin-login{height:48px}.admin-login-title{font-size:28px;font-weight:700;color:#1a1a1a;text-align:center;margin-bottom:8px}.admin-login-subtitle{font-size:14px;color:#888;text-align:center;line-height:1.5;margin-bottom:32px}.admin-login-form{display:flex;flex-direction:column;gap:20px}.admin-login-field{display:flex;flex-direction:column;gap:8px}.admin-login-label{font-size:14px;font-weight:600;color:#333}.admin-login-field input{padding:14px 16px;border:none;border-radius:10px;background:#f3f4f6;font-size:14px;font-family:inherit;color:#1a1a1a;transition:background .15s}.admin-login-field input::placeholder{color:#aaa}.admin-login-field input:focus{outline:none;background:#eef0f3;box-shadow:0 0 0 2px #2563eb26}.admin-login-error{color:#ef4444;font-size:13px;text-align:center;margin:-4px 0 0}.admin-login-submit{width:100%;padding:14px;border:none;border-radius:10px;background:#2563eb;color:#fff;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;margin-top:4px;transition:background .15s}.admin-login-submit:hover:not(:disabled){background:#1d4ed8}.admin-login-submit:disabled{opacity:.6;cursor:not-allowed}.admin-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;font-family:Noto Sans KR,sans-serif}@media(max-width:768px){.admin-app{flex-direction:column}.admin-sidebar{width:100%;border-right:none;border-bottom:1px solid #e8e8e8}.admin-nav{flex-direction:row;flex-wrap:wrap;gap:4px;padding:12px 16px}.admin-nav-section{width:100%;margin:0 0 4px}.admin-nav-link{padding:8px 12px;border-left:none;border-radius:8px}.admin-nav-link.active{border-left:none}.admin-sidebar-footer{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px}.admin-sidebar-version{width:100%;margin-top:4px}.admin-form-grid,.admin-upload-section{grid-template-columns:1fr}}.detail-page{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--space-6) var(--space-10)}.detail-status{text-align:center;padding:80px var(--space-6);color:var(--color-text-muted)}.detail-gallery{position:relative;background:var(--color-bg-subtle);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:0 calc(-1 * var(--space-6));padding:0 80px;display:flex;align-items:stretch;height:560px;min-height:560px;max-height:min(560px,55vh)}.detail-gallery-main{position:relative;flex:1;width:100%;overflow:hidden;touch-action:pan-y}.detail-gallery-track{display:flex;height:100%;transition:transform .35s ease;will-change:transform}.detail-gallery-track .detail-main-image,.detail-main-image{flex:0 0 100%;width:100%;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.detail-mobile-back,.detail-image-counter{display:none}.detail-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;border-radius:50%;background:var(--color-bg);box-shadow:var(--shadow-sm);font-size:22px;line-height:1;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}.detail-nav-prev{left:32px}.detail-nav-next{right:32px}.detail-content{display:grid;grid-template-columns:1fr 320px;gap:var(--space-10);margin-top:var(--space-8);align-items:start}.detail-back-link{display:inline-block;font-size:14px;color:var(--color-text-muted);text-decoration:none;margin-bottom:var(--space-5)}.detail-back-link:hover{color:var(--color-primary)}.detail-title{font-size:var(--text-2xl);font-weight:700;color:var(--color-text);margin-bottom:4px}.detail-subtitle{font-size:var(--text-base);color:var(--color-text-muted);margin-bottom:var(--space-8)}.detail-spec-list{margin:0;padding:var(--space-2) 0 0}.detail-spec-row{display:block}.detail-spec-label{display:block;font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:6px}.detail-spec-value{font-size:var(--text-base);font-weight:600;color:var(--color-text);margin:0}.detail-spec-divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-8) 0 var(--space-5)}.detail-description{font-size:var(--text-base);line-height:1.75;color:var(--color-text);white-space:pre-wrap;word-break:break-word}.detail-price-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.detail-price-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-5)}.detail-price{display:block;font-size:28px;font-weight:700;color:var(--color-primary)}.detail-monthly{display:block;font-size:14px;color:var(--color-text-muted);margin-top:4px}.detail-inquiry-btn{width:100%;padding:14px;border:none;border-radius:10px;background:var(--color-primary);color:#fff;font-size:var(--text-base);font-weight:600;cursor:pointer;font-family:inherit}.detail-inquiry-btn:hover:not(:disabled){background:var(--color-primary-hover)}@media(min-width:901px){.detail-sidebar{position:sticky;top:calc(var(--header-height) + var(--space-5));align-self:start}.detail-gallery-track .detail-main-image,.detail-main-image{object-fit:contain;object-position:center}.detail-spec-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6) var(--space-8)}}@media(max-width:900px){.detail-content{grid-template-columns:1fr}}.admin-product-form{width:100%}.admin-product-form .detail-page{padding-bottom:48px}.admin-gallery-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#e8ecf0;color:#888;font-size:15px}.detail-image-counter--admin{display:block}.admin-gallery-upload{margin:0 -24px;padding:12px 24px 16px;background:#f5f6f8;border-bottom:1px solid #eee}.admin-gallery-upload-label{display:block;font-size:13px;font-weight:600;color:#555;margin-bottom:8px}.admin-gallery-upload-row{display:flex;gap:10px;align-items:center}.admin-upload-btn{flex-shrink:0;padding:8px 14px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;font-size:13px;font-weight:500;color:#444;cursor:pointer}.admin-upload-btn:hover{border-color:#2563eb;color:#2563eb}.admin-gallery-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.admin-gallery-action{padding:6px 12px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;font-size:12px;font-weight:500;color:#555;cursor:pointer;font-family:inherit}.admin-gallery-action:hover{border-color:#2563eb;color:#2563eb}.admin-gallery-action.danger:hover{border-color:#ef4444;color:#ef4444}.detail-title-input{display:block;width:100%;border:none;border-bottom:1px solid transparent;padding:0;margin-bottom:4px;font-size:26px;font-weight:700;color:#1a1a1a;font-family:inherit;letter-spacing:-.02em;background:transparent}.detail-title-input:focus{outline:none;border-bottom-color:#2563eb}.detail-title-input::placeholder{color:#bbb}.detail-subtitle-input{display:block;width:100%;border:none;border-bottom:1px solid transparent;padding:0;margin-bottom:28px;font-size:15px;color:#888;font-family:inherit;background:transparent}.detail-subtitle-input:focus{outline:none;border-bottom-color:#2563eb;color:#1a1a1a}.detail-subtitle-input::placeholder{color:#bbb}.detail-spec-input{width:100%;max-width:200px;padding:6px 10px;border:1px solid #e8e8e8;border-radius:6px;font-size:15px;font-weight:400;font-family:inherit;text-align:right;background:#fff}.detail-spec-input:focus{outline:none;border-color:#2563eb}@media(min-width:769px){.detail-spec-list .detail-spec-row{display:block}.detail-spec-list .detail-spec-value{text-align:left}.detail-spec-list .detail-spec-input{max-width:none;text-align:left;margin-top:4px}}.detail-description-input{width:100%;border:1px solid #e8e8e8;border-radius:8px;padding:14px;font-size:15px;line-height:1.75;color:#333;font-family:inherit;resize:vertical;min-height:140px;box-sizing:border-box}.detail-description-input:focus{outline:none;border-color:#2563eb}.detail-description-input::placeholder{color:#aaa}.detail-price-input{display:block;width:100%;border:none;padding:0;font-size:28px;font-weight:700;color:#2563eb;font-family:inherit;background:transparent}.detail-price-input:focus{outline:none}.detail-price-input::placeholder{color:#93c5fd}.admin-form-sidebar{display:flex;flex-direction:column;gap:14px}.admin-status-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:#555}.admin-status-field select{padding:10px 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;background:#fff}.admin-status-field select:focus{outline:none;border-color:#2563eb}.admin-product-form .admin-error{margin:0}@media(max-width:768px){.admin-gallery-upload{margin:0;padding:12px 20px 16px}.admin-gallery-upload-row{flex-direction:column;align-items:stretch}.detail-title-input{font-size:22px}.detail-subtitle-input{font-size:17px;font-weight:700;color:#1a1a1a;margin-bottom:16px}.detail-spec-input{max-width:none;text-align:right}.detail-price-input{font-size:26px}}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #eff6ff;--color-primary-accent: #60a5fa;--color-surface-dark: #1e293b;--color-text: #1a1a1a;--color-text-muted: #64748b;--color-border: #e2e8f0;--color-bg: #ffffff;--color-bg-subtle: #f8fafc;--color-success: #16a34a;--color-error: #dc2626;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 20px rgba(0, 0, 0, .08);--text-xs: 11px;--text-sm: 13px;--text-base: 15px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 26px;--container-max: 1400px;--container-narrow: 1200px;--header-height: 60px;--z-header: 100;--z-dropdown: 150;--z-overlay: 200;--z-modal: 300}@media(max-width:768px){:root{--header-height: 52px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Noto Sans KR,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--color-bg-subtle);color:var(--color-text);-webkit-font-smoothing:antialiased}#root{min-height:100vh}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
