/* Panel */

.panel {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.panel-heading {
    min-height: 43px;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: var(--color-heading-background);
    border-bottom: 1px solid var(--color-border);
}

.panel-heading h2 {
    font-size: 15.4px;
    font-weight: 700;
    color: var(--color-primary-dark);
}

.panel-heading-note {
    font-size: 11px;
    color: #8a96a3;
    letter-spacing: 0.5px;
}

.panel-body {
    padding: 16px;
}

/* Buttons */

.button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 40px;
    padding: 10px 16px;
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    font-weight: 600;
    font-size: 14.3px;
    transition: background 0.2s ease;
}

.button-primary {
    color: #fff;
    background: var(--color-primary);
}

.button-primary:hover {
    background: var(--color-primary-dark);
}

.button-block {
    width: 100%;
}

/* Sidebar Menu */

.sidebar-menu a {
    min-height: 43px;
    padding: 10px 13px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--color-border-light);
    font-size: 13.2px;
}

.sidebar-menu a:last-child {
    border-bottom: 0;
}

.sidebar-menu a:hover {
    background: #f6f9fc;
    color: var(--color-primary);
}

.sidebar-menu a span {
    font-size: 19.8px;
    color: #a4afba;
}

/* Quick Contact */

.quick-contact p {
    font-size: 13.2px;
    color: var(--color-muted);
    margin-bottom: 14px;
}

.quick-contact small {
    display: block;
    margin-top: 10px;
    font-size: 12.1px;
    color: var(--color-muted);
    text-align: center;
}

/* Process */

.process-list {
    padding: 8px 12px;
}

.process-list li {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 0;
    font-size: 12.1px;
    border-bottom: 1px solid var(--color-border-light);
}

.process-list li:last-child {
    border-bottom: 0;
}

.process-list span {
    color: var(--color-accent);
    font-weight: 700;
    font-size: 13.2px;
}

/* Notice */

.notice-list {
    padding: 7px 12px;
}

.notice-list li {
    display: flex;
    align-items: baseline;
    gap: 7px;
    padding: 9px 0;
    font-size: 12.1px;
    border-bottom: 1px solid var(--color-border-light);
}

.notice-list li:last-child {
    border-bottom: 0;
}

.notice-list span {
    color: var(--color-accent);
    font-weight: 700;
}

/* Package Banners */

.sidebar-packages {
    display: flex;
    flex-direction: column;
    gap: 9px;
    padding: 12px;
}

.package-banner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 91px;
    padding: 13px 16px;
    background: #e9f0f6;
    border: 1px solid #d9e4ed;
    border-left: 3px solid var(--color-accent);
    transition: transform 0.2s ease;
}

.package-banner:hover {
    transform: translateY(-2px);
}

.package-banner span {
    font-size: 11px;
    color: #57758d;
    letter-spacing: 0.5px;
}

.package-banner strong {
    font-size: 16.5px;
    color: var(--color-primary);
}

.package-banner small {
    margin-top: 5px;
    font-size: 12.1px;
    color: #607b91;
}

.package-banner.premium {
    background: var(--color-primary);
    border-color: var(--color-primary);
    border-left-color: #54c0b9;
}

.package-banner.premium span,
.package-banner.premium strong,
.package-banner.premium small {
    color: #fff;
}

/* Customer Center */

.customer-center strong {
    display: block;
    font-size: 18.7px;
    color: var(--color-primary);
}

.customer-center p {
    margin: 8px 0;
    font-size: 13.2px;
    color: var(--color-muted);
}

.customer-center>span {
    display: block;
    font-size: 13.2px;
    font-weight: 600;
}

.text-link {
    display: inline-block;
    margin-top: 12px;
    font-size: 13.2px;
    color: var(--color-primary);
    font-weight: 600;
}

.text-link:hover {
    text-decoration: underline;
}
/* 제작 문의 CTA */
.header-contact-cta {
    margin-top: 3px;
    color: var(--color-primary);
    font-size: 25.3px;
    font-weight: 800;
}
.header-contact-cta:hover { color: var(--color-accent); }
.nav-link-contact { background: #168a86; }
.nav-link-contact:hover, .nav-link-contact.is-active { background: #106d69; }
.contact-status { display: inline-flex; align-items: center; justify-content: center; background: #fff; color: #173b60; }
.contact-status:hover { background: #e3f4f3; }
