/* 電腦版內頁新版型（沿用 home-modern.css 的色彩與字型變數） */

/* ===== 兩欄版面：左側欄 + 內容區 ===== */
.modern-inner .site-content-row {
    display: table-row;
}

/* 寵物協尋 */
.pet-lost-list-page,.pet-lost-city-page{display:grid;gap:18px}.pet-lost-list-head,.pet-lost-city-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:#fff;border:1px solid #d8e7f2;border-radius:16px}.pet-lost-list-head h1,.pet-lost-city-hero h1{margin:0 0 8px;color:#17324d;font-size:28px}.pet-lost-list-head>div:last-child{display:flex;gap:10px}.pet-lost-btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 17px;border:1px solid #a9c5da;border-radius:9px;background:#fff;color:#174f76;font-weight:700;text-decoration:none;cursor:pointer;transition:background-color .18s,border-color .18s,box-shadow .18s}.pet-lost-btn:hover{background:#edf7ff;border-color:#568db5}.pet-lost-btn-primary{border-color:#1269a8;background:#1269a8;color:#fff}.pet-lost-btn-primary:hover{background:#0d568b;color:#fff}.pet-lost-rules{padding:14px 18px;border:1px solid #d8e7f2;border-radius:12px;background:#f7fbfe}.pet-lost-rules summary{cursor:pointer;font-weight:700}.pet-lost-filters,.pet-lost-alert{display:flex;align-items:end;gap:12px;padding:16px;border:1px solid #d8e7f2;border-radius:12px;background:#fff}.pet-lost-filters label,.pet-lost-alert label{display:grid;gap:6px;color:#334e68;font-weight:700}.pet-lost-filters select,.pet-lost-alert input{height:44px;min-width:170px;border:1px solid #9bb8cd;border-radius:8px;padding:0 10px;background:#fff}.pet-lost-alert{align-items:center;justify-content:space-between}.pet-lost-alert label{grid-template-columns:auto 250px;align-items:center}.pet-lost-alert button{min-height:44px;border:0;border-radius:9px;padding:0 18px;background:#1269a8;color:#fff;font-weight:700}.pet-lost-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pet-lost-card{overflow:hidden;border:1px solid #d8e7f2;border-radius:14px;background:#fff;box-shadow:0 2px 9px rgba(23,50,77,.08);transition:box-shadow .2s}.pet-lost-card:hover{box-shadow:0 8px 20px rgba(23,50,77,.15)}.pet-lost-card-image{position:relative;display:block;aspect-ratio:1/1;background:#edf5fa}.pet-lost-card-image img{display:block;width:100%;height:100%;object-fit:cover}.pet-lost-no-photo{display:flex;height:100%;align-items:center;justify-content:center;gap:7px;color:#52687c}.pet-lost-status{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:6px 10px;color:#fff;font-size:13px;font-weight:700}.pet-lost-status-open{background:#855000}.pet-lost-status-found{background:#147343}.pet-lost-status-closed{background:#5d6874}.pet-lost-card-body{padding:14px}.pet-lost-card-body h2{min-height:48px;margin:0 0 10px;font-size:16px;line-height:1.5}.pet-lost-card-body h2 a{color:#17324d}.pet-lost-card-body p{display:flex;align-items:center;gap:6px;margin:6px 0;color:#52687c}.pet-lost-card-body p:last-of-type{justify-content:space-between}.pet-lost-card-body blockquote{margin:10px 0 0;padding:9px;border-left:3px solid #147343;background:#effaf4;color:#24563d}.pet-lost-empty{grid-column:1/-1;padding:50px;text-align:center;border:1px dashed #9bb8cd;border-radius:14px;background:#fff}.pet-lost-pagination{display:flex;justify-content:center;gap:8px}.pet-lost-pagination a{display:grid;width:44px;height:44px;place-items:center;border:1px solid #aac5d8;border-radius:8px;background:#fff}.pet-lost-pagination a[aria-current=page]{background:#1269a8;color:#fff}.pet-lost-form-head{margin-bottom:20px}.pet-lost-form{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px}.pet-lost-progress{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border-radius:10px;background:#e8f1f7}.pet-lost-progress span{padding:12px;text-align:center;color:#52687c;font-weight:700}.pet-lost-progress .active{background:#1269a8;color:#fff}.pet-lost-step{grid-column:1;padding:20px;border:1px solid #d8e7f2;border-radius:14px;background:#fff}.pet-lost-step h2{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:#17324d}.pet-lost-step[data-step="3"]{grid-column:2;grid-row:2/5}.pet-lost-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.pet-lost-fields>div{display:grid;gap:6px}.pet-lost-fields label,.pet-lost-step>label,.pet-lost-step legend{font-weight:700;color:#334e68}.pet-lost-fields input,.pet-lost-fields select,.pet-lost-fields textarea,.pet-lost-step>input{width:100%;min-height:44px;border:1px solid #9bb8cd;border-radius:8px;padding:9px 11px}.pet-lost-fields textarea{min-height:110px;resize:vertical}.pet-lost-wide{grid-column:1/-1}.pet-lost-fields fieldset{display:flex;align-items:center;gap:14px;border:1px solid #d8e7f2;border-radius:8px}.pet-lost-check{display:flex!important;grid-column:1/-1;align-items:center;gap:8px}.pet-lost-check input{width:20px;min-height:20px}.pet-lost-field-error{min-height:18px;margin:0;color:#b42318;font-size:13px}.pet-lost-photo-preview{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.pet-lost-photo-preview img{width:160px;height:160px;border-radius:10px;object-fit:cover}.pet-lost-photo-preview label{display:grid;gap:4px}.pet-lost-error-summary{grid-column:1/-1;padding:14px;border:2px solid #b42318;border-radius:10px;background:#fff4f2;color:#7a271a}.pet-lost-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px}.pet-lost-success{display:grid;justify-items:center;gap:14px;text-align:center}.pet-lost-success>svg{width:50px;height:50px;color:#147343}.pet-lost-success>img{max-width:420px;height:auto;border-radius:14px;box-shadow:0 8px 24px rgba(23,50,77,.14)}.pet-lost-share-actions,.pet-lost-primary-actions,.pet-lost-share,.pet-lost-owner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.pet-lost-detail{display:grid;gap:18px;margin-bottom:22px}.pet-lost-detail-status{display:flex;align-items:center;gap:9px;padding:14px;border-radius:10px;color:#fff}.pet-lost-detail-status span{margin-left:auto}.pet-lost-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.pet-lost-gallery a:first-child{grid-column:1/-1}.pet-lost-gallery img{display:block;width:100%;height:150px;border-radius:12px;object-fit:cover}.pet-lost-gallery a:first-child img{height:520px}.pet-lost-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d8e7f2;border:1px solid #d8e7f2}.pet-lost-facts div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:12px;background:#fff}.pet-lost-facts dt{font-weight:700;color:#52687c}.pet-lost-facts dd{margin:0;color:#17324d}.pet-lost-found-note{margin:0;padding:16px;border-left:4px solid #147343;background:#effaf4}.pet-lost-owner-actions form{display:flex;align-items:end;gap:8px}.pet-lost-owner-actions label{display:grid;gap:5px}.pet-lost-owner-actions input{height:44px;border:1px solid #9bb8cd;border-radius:8px;padding:0 10px}.pet-lost-share{margin:20px 0;padding:14px;border-radius:12px;background:#eef7ff}.pet-lost-related{margin-top:18px;padding:16px;border:1px solid #d8e7f2;border-radius:12px}.pet-lost-related h2{font-size:18px}.pet-lost-related li{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e4edf3}.home-lost-item a{display:flex;align-items:center;gap:10px}.home-lost-item img,.home-lost-placeholder{width:72px;height:72px;flex:0 0 72px;border-radius:9px;object-fit:cover}.home-lost-placeholder{display:grid;place-items:center;background:#e8f1f7}.home-lost-item span span{display:grid}.home-lost-item small{display:flex;align-items:center;gap:4px;margin-top:5px;color:#52687c}.home-lost-publish{width:100%;margin-top:12px}.pet-lost-btn:focus-visible,.pet-lost-card a:focus-visible,.pet-lost-form input:focus-visible,.pet-lost-form select:focus-visible,.pet-lost-form textarea:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.pet-lost-btn,.pet-lost-card{transition:none}}

.pet-lost-gallery{width:100%;max-width:640px;margin-right:auto;margin-left:auto}.pet-lost-gallery a:first-child img{width:100%;height:auto;max-height:640px;background:#edf5fa;object-fit:contain}.pet-lost-lightbox-open{overflow:hidden}.pet-lost-lightbox{width:min(94vw,1200px);max-width:none;height:min(92vh,900px);max-height:none;margin:auto;padding:0;border:0;background:transparent;color:#fff;overflow:visible}.pet-lost-lightbox::backdrop{background:rgba(8,22,35,.88)}.pet-lost-lightbox-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;height:100%;padding:12px}.pet-lost-lightbox-shell>button{justify-self:end}.pet-lost-lightbox button{min-width:88px;min-height:44px;border:1px solid #fff6;border-radius:9px;background:#17324de6;color:#fff;font-weight:700;cursor:pointer}.pet-lost-lightbox button:hover{background:#24577e}.pet-lost-lightbox button:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}.pet-lost-lightbox figure{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;margin:0;text-align:center}.pet-lost-lightbox figure img{align-self:center;justify-self:center;width:auto;max-width:100%;height:auto;max-height:calc(92vh - 142px);object-fit:contain}.pet-lost-lightbox figcaption{padding-top:8px;color:#fff;font-weight:700}.pet-lost-lightbox-controls{display:flex;justify-content:center;gap:10px}

.modern-inner .site-sidebar {
    display: table-cell;
    width: 264px !important;
    padding: 0 24px 36px 0;
    vertical-align: top;
}

.modern-inner .site-main {
    display: table-cell;
    width: auto !important;
    padding: 0 0 36px !important;
    vertical-align: top;
}

/* ===== 側欄卡片（Mode/left.php、Mode/vip_left.php） ===== */
.modern-inner .side-nav {
    display: flex;
    width: 240px;
    flex-direction: column;
    gap: 16px;
}

.modern-inner .side-card {
    display: block;
    padding: 14px 14px 12px;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius);
    background: #fff;
    box-shadow: 0 6px 18px rgba(29, 57, 88, 0.06);
}

.modern-inner .side-card-head {
    display: flex;
    margin: 0 0 10px;
    padding: 0 0 10px;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #edf1f5;
}

.modern-inner .side-card-head h2 {
    display: inline-flex;
    margin: 0;
    align-items: center;
    gap: 8px;
    color: var(--home-text);
    font-family: var(--home-font-round);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.3;
}

.modern-inner .side-card-head h2 .lucide {
    width: 30px;
    height: 30px;
    padding: 6px;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary);
}

.modern-inner .side-card-more {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    gap: 2px;
    font-size: 13px;
    font-weight: 600;
}

.modern-inner .side-card-more .lucide {
    width: 15px;
    height: 15px;
}

.modern-inner .side-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* 最新消息 */
.modern-inner #left_notice li {
    margin: 0;
    padding: 0;
    line-height: 1.5;
}

.modern-inner #left_notice li a {
    display: flex;
    min-height: 36px;
    padding: 7px 8px;
    align-items: center;
    border-radius: 8px;
    background: none;
    color: var(--home-text) !important;
    font-size: 14px !important;
}

.modern-inner #left_notice li a:hover {
    background: #eef6fc;
    color: var(--home-primary) !important;
    text-decoration: none;
}

.modern-inner #left_notice li a.left-news-link {
    color: #c2410c !important;
    font-weight: 600;
}

/* 會員中心：登入／註冊按鈕 */
.modern-inner #left_vip {
    display: flex;
    gap: 8px;
}

.modern-inner #left_vip li {
    float: none;
    flex: 1 1 0;
    padding: 0;
}

.modern-inner #left_vip li a {
    display: flex;
    min-height: 40px;
    padding: 0 10px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--home-primary);
    border-radius: 999px;
    background: #fff;
    color: var(--home-primary) !important;
    font-size: 14px;
    font-weight: 600;
}

.modern-inner #left_vip li:first-child a {
    background: var(--home-primary);
    color: #fff !important;
}

.modern-inner #left_vip li a:hover {
    background: var(--home-primary-dark);
    border-color: var(--home-primary-dark);
    color: #fff !important;
    text-decoration: none;
}

.modern-inner #left_vip li a font {
    color: inherit !important;
}

/* 列表一覽 */
.modern-inner #left_list {
    margin: 0;
    padding: 0;
    font-size: 14px;
}

.modern-inner #left_list li {
    margin: 0;
    padding: 0;
    border: 0;
    letter-spacing: 0;
    line-height: 1.5;
}

.modern-inner #left_list li.left_list_h1 {
    display: flex;
    margin: 12px 0 4px;
    padding: 0 4px;
    align-items: center;
    gap: 6px;
    color: var(--home-primary-dark);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
}

.modern-inner #left_list li.left_list_h1:first-child {
    margin-top: 0;
}

.modern-inner #left_list li.left_list_h1 .lucide {
    width: 16px;
    height: 16px;
    color: var(--home-primary);
}

.modern-inner #left_list li a {
    display: flex;
    min-height: 34px;
    padding: 6px 10px 6px 26px;
    align-items: center;
    border-radius: 8px;
    background: none;
    color: var(--home-text);
    text-decoration: none;
}

.modern-inner #left_list li a:hover {
    background: #eef6fc;
    color: var(--home-primary);
    text-decoration: none;
}

.modern-inner #left_list li a[aria-current="page"] {
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-weight: 700;
    box-shadow: inset 3px 0 0 var(--home-primary);
}

.modern-inner #left_list li.side-list-inline {
    display: flex;
    flex-wrap: wrap;
}

.modern-inner #left_list li.side-list-inline a {
    flex: 1 1 auto;
}

.modern-inner #left_list li a.side-list-alert {
    color: #c62828;
    font-weight: 700;
}

/* 會員中心狀態 */
.modern-inner .side-vip-status {
    display: grid;
    margin: 0;
    gap: 8px;
}

.modern-inner .side-vip-status > div {
    display: flex;
    padding: 8px 10px;
    align-items: baseline;
    gap: 10px;
    border-radius: 10px;
    background: #f5f8fb;
    font-size: 14px;
}

.modern-inner .side-vip-status dt {
    flex: 0 0 auto;
    color: var(--home-muted);
    font-weight: 500;
}

.modern-inner .side-vip-status dd {
    margin: 0;
    color: var(--home-text);
    font-weight: 600;
}

.modern-inner .side-vip-money {
    color: #c2410c;
    font-size: 16px;
}

.modern-inner #left_notice,
.modern-inner #left_list,
.modern-inner #left_vip {
    margin: 0;
    padding: 0;
}

/* ===== 內頁共用元件 ===== */
.modern-inner .inner-page {
    display: flex;
    flex-direction: column;
    gap: 18px;
    color: var(--home-text);
    font-size: 15px;
}

.modern-inner .inner-card {
    padding: 22px 24px;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius);
    background: #fff;
    box-shadow: 0 6px 18px rgba(29, 57, 88, 0.06);
}

/* 麵包屑 */
.modern-inner .inner-breadcrumb ol {
    display: flex;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    list-style: none;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .inner-breadcrumb li {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.modern-inner .inner-breadcrumb li + li::before {
    content: "";
    width: 7px;
    height: 7px;
    margin: 0 6px 0 2px;
    border-top: 1.6px solid #9aa6b5;
    border-right: 1.6px solid #9aa6b5;
    transform: rotate(45deg);
}

.modern-inner .inner-breadcrumb a {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    gap: 5px;
    color: var(--home-muted);
}

.modern-inner .inner-breadcrumb a:hover {
    color: var(--home-primary);
}

.modern-inner .inner-breadcrumb a[aria-current="page"] {
    color: var(--home-text);
    font-weight: 600;
}

.modern-inner .inner-breadcrumb .lucide {
    width: 16px;
    height: 16px;
}

/* 標題 */
.modern-inner .inner-title {
    display: flex;
    margin: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    color: var(--home-text);
    font-family: var(--home-font-round);
    font-size: 26px;
    font-weight: 400;
    line-height: 1.35;
}

.modern-inner .inner-subtitle {
    margin: 6px 0 0;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .inner-subtitle strong {
    color: var(--home-primary-dark);
    font-size: 16px;
}

.modern-inner .inner-section-title {
    display: flex;
    margin: 0 0 18px;
    align-items: center;
    gap: 10px;
    color: var(--home-text);
    font-family: var(--home-font-round);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.35;
}

.modern-inner .inner-section-title .lucide {
    width: 34px;
    height: 34px;
    padding: 7px;
    border-radius: 50%;
    background: var(--home-sun);
    color: #9a6a00;
}

/* 按鈕 */
.modern-inner .inner-btn {
    display: inline-flex;
    min-height: 42px;
    padding: 0 18px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: #fff;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.modern-inner .inner-btn .lucide {
    width: 18px;
    height: 18px;
}

.modern-inner .inner-btn:hover {
    border-color: #a9cce4;
    background: #eef6fc;
    color: var(--home-primary-dark);
    text-decoration: none;
}

.modern-inner .inner-btn-primary {
    border-color: var(--home-action);
    background: var(--home-action);
    color: #2c2810 !important;
}

.modern-inner .inner-btn-primary:hover {
    border-color: var(--home-action-hover);
    background: var(--home-action-hover);
    color: #2c2810 !important;
}

/* 表單欄位 */
.modern-inner .inner-select,
.modern-inner .inner-input {
    height: 42px;
    padding: 0 14px;
    border: 1px solid var(--home-border);
    border-radius: 10px;
    background-color: #fff;
    color: var(--home-text);
    font-size: 15px;
}

.modern-inner .inner-select:focus,
.modern-inner .inner-input:focus {
    border-color: var(--home-primary);
    outline: 0;
    box-shadow: 0 0 0 3px rgba(13, 124, 215, 0.16);
}

/* 提醒橫幅 */
.modern-inner .inner-alert {
    display: flex;
    margin-top: 18px;
    padding: 12px 16px;
    align-items: center;
    gap: 12px;
    border: 1px solid #fed7aa;
    border-radius: 12px;
    background: #fff7ed;
    color: #7c2d12 !important;
    font-size: 15px;
}

.modern-inner .inner-alert:hover {
    border-color: #fdba74;
    background: #ffedd5;
    text-decoration: none;
}

.modern-inner .inner-alert strong {
    color: #c2410c;
}

.modern-inner .inner-alert .lucide {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    color: #ea580c;
}

.modern-inner .inner-alert span {
    flex: 1 1 auto;
}

.modern-inner .inner-alert .inner-alert-arrow {
    width: 18px;
    height: 18px;
}

.modern-inner .inner-empty {
    display: flex;
    margin: 0;
    padding: 40px 0;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    color: var(--home-muted);
    font-size: 16px;
}

.modern-inner .inner-empty .lucide {
    width: 36px;
    height: 36px;
    color: #9aa6b5;
}

/* 分頁 */
.modern-inner .inner-pagination {
    display: flex;
    margin-top: 22px;
    justify-content: center;
}

.modern-inner .inner-pager .pagination {
    display: flex;
    margin: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.modern-inner .inner-pager .pagination > li {
    display: block;
}

.modern-inner .inner-pager .pagination > li > a,
.modern-inner .inner-pager .pagination > li > span {
    display: inline-flex;
    min-width: 40px;
    height: 40px;
    margin: 0;
    padding: 0 12px;
    float: none;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--home-border);
    border-radius: 10px !important;
    background: #fff;
    color: var(--home-text);
    font-size: 15px;
}

.modern-inner .inner-pager .pagination > li > a:hover {
    border-color: #a9cce4;
    background: #eef6fc;
    color: var(--home-primary-dark);
}

.modern-inner .inner-pager .pagination > .active > a,
.modern-inner .inner-pager .pagination > .active > a:hover {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .inner-pager .pagination > .disabled > a {
    color: #b7c0cc;
    pointer-events: none;
}

.modern-inner .inner-pager .inner-select {
    height: 40px;
    margin-left: 6px;
}

.modern-inner .inner-admin-bar {
    padding: 14px 20px;
    font-size: 14px;
}

/* ===== 刊登列表（regpet/yan_regpet_bbs.php） ===== */
.modern-inner .listing-hero-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.modern-inner .listing-filter-tag {
    display: inline-flex;
    padding: 4px 12px;
    border-radius: 999px;
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-family: "Noto Sans TC", sans-serif;
    font-size: 14px;
    font-weight: 600;
}

.modern-inner .listing-promo img {
    display: block;
    max-width: 100%;
    margin-top: 14px;
    border-radius: 12px;
}

.modern-inner .listing-search {
    display: flex;
    margin: 18px 0 0;
    padding: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.modern-inner .listing-search-label {
    color: var(--home-muted);
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .listing-type-button {
    display: inline-flex;
    height: 42px;
    padding: 0 16px;
    align-items: center;
    gap: 6px;
    border: 1px solid #f6c77a;
    border-radius: 10px;
    background: #fffbeb;
    color: #7a4b00;
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .listing-type-button:hover,
.modern-inner .listing-type-button:focus {
    border-color: var(--home-action);
    background: #fff3c4;
    color: #5c3900;
}

.modern-inner .listing-type-button .lucide {
    width: 17px;
    height: 17px;
}

.modern-inner .listing-search .inner-input {
    width: 220px;
}

.modern-inner .listing-hot {
    display: flex;
    margin-top: 14px;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.modern-inner .listing-hot-label {
    display: inline-flex;
    margin-right: 4px;
    align-items: center;
    gap: 4px;
    color: var(--home-muted);
    font-size: 14px;
    font-weight: 600;
}

.modern-inner .listing-hot-label .lucide {
    width: 16px;
    height: 16px;
    color: #ea580c;
}

.modern-inner .listing-hot-chip {
    display: inline-flex;
    min-height: 32px;
    padding: 0 12px;
    align-items: center;
    border: 1px solid #d6e6f5;
    border-radius: 999px;
    background: #f5faff;
    color: var(--home-primary-dark);
    font-size: 14px;
}

.modern-inner .listing-hot-chip:hover {
    border-color: var(--home-primary);
    background: var(--home-sky);
}

/* 排序列 */
.modern-inner .listing-toolbar {
    display: flex;
    padding: 6px 20px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.modern-inner .listing-sort {
    display: flex;
    margin: 0;
    padding: 0;
    align-items: center;
    gap: 4px;
    list-style: none;
}

.modern-inner .listing-sort > li {
    position: relative;
}

.modern-inner .listing-sort > li > a {
    display: inline-flex;
    height: 44px;
    padding: 0 14px;
    align-items: center;
    gap: 6px;
    border-radius: 10px;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 500;
}

.modern-inner .listing-sort > li > a .lucide {
    width: 17px;
    height: 17px;
}

.modern-inner .listing-sort > li > a:hover {
    background: #eef6fc;
    color: var(--home-primary-dark);
}

.modern-inner .listing-sort > li.active > a {
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-weight: 700;
}

.modern-inner .listing-sort .dropdown-menu {
    min-width: 150px;
    padding: 6px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    box-shadow: var(--home-shadow);
}

.modern-inner .listing-sort .dropdown-menu > li > a {
    padding: 9px 12px;
    border-radius: 8px;
    color: var(--home-text);
    font-size: 15px;
}

.modern-inner .listing-sort .dropdown-menu > li > a:hover {
    background: #eef6fc;
    color: var(--home-primary-dark);
}

.modern-inner .listing-count {
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .listing-count b {
    color: var(--home-text);
}

.modern-inner .listing-page .listing-section + .listing-section {
    margin-top: 18px;
}

/* 電腦版分類視窗 */
.modern-inner .breed-modal .modal-dialog {
    width: 960px;
    max-width: calc(100% - 32px);
    margin: 24px auto;
}
.modern-inner .breed-modal .modal-content {
    display: flex;
    max-height: calc(100vh - 48px);
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius);
    box-shadow: var(--home-shadow);
}
.modern-inner .breed-modal .modal-header {
    display: flex;
    padding: 20px 24px;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--home-border);
}
.modern-inner .breed-modal .modal-title {
    margin: 0;
    color: var(--home-text);
    font-size: 22px;
    font-weight: 700;
}
.modern-inner .breed-modal .breed-close {
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid var(--home-border);
    border-radius: 10px;
    background: var(--home-surface);
    color: var(--home-muted);
    font-size: 26px;
    line-height: 1;
}
.modern-inner .breed-toolbar {
    padding: 16px 24px;
    border-bottom: 1px solid var(--home-border);
    background: #f8fafc;
}
.modern-inner .breed-search label {
    display: block;
    margin-bottom: 8px;
    color: var(--home-text);
    font-size: 14px;
    font-weight: 600;
}
.modern-inner .breed-search #searchForm {
    display: flex;
    gap: 8px;
}
.modern-inner .breed-search #SearchType {
    min-width: 0;
    height: 44px;
    flex: 1;
    border: 1px solid var(--home-border);
    border-radius: 10px;
}
.modern-inner .breed-toolbar-actions {
    display: flex;
    margin-top: 12px;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}
.modern-inner .breed-available {
    display: inline-flex;
    min-height: 44px;
    margin: 0;
    align-items: center;
    gap: 8px;
    color: var(--home-text);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
}
.modern-inner .breed-available input {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--home-primary-dark);
}
.modern-inner .breed-status {
    margin-left: auto;
    color: var(--home-muted);
    font-size: 13px;
}
.modern-inner .breed-modal .modal-body {
    min-height: 0;
    padding: 20px 24px;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.modern-inner .breed-group + .breed-group {
    margin-top: 24px;
}
.modern-inner .breed-group h3 {
    margin: 0 0 12px;
    color: var(--home-text);
    font-size: 16px;
    font-weight: 700;
}
.modern-inner .breed-list {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    list-style: none;
}
.modern-inner .breed-list > li {
    float: none !important;
    width: auto !important;
    height: auto !important;
    min-width: 0;
}
.modern-inner .breed-option {
    display: flex;
    min-height: 48px;
    height: 100%;
    padding: 10px 12px;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border: 1px solid var(--home-border);
    border-radius: 10px;
    background: var(--home-surface);
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.5;
}
.modern-inner .breed-name {
    min-width: 0;
    overflow-wrap: anywhere;
}
.modern-inner .breed-option .breed-count {
    min-width: 28px;
    padding: 2px 6px;
    flex: 0 0 auto;
    border-radius: 6px;
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-size: 12px;
    font-weight: 600;
    text-align: center;
    white-space: nowrap;
}
.modern-inner .breed-option.is-empty {
    background: #f8fafc;
    color: var(--home-muted);
}
.modern-inner .breed-option.is-empty .breed-count {
    background: #e9edf2;
    color: var(--home-muted);
}
.modern-inner .breed-option:hover,
.modern-inner .breed-option[aria-current="true"] {
    border-color: var(--home-primary-dark);
    background: var(--home-sky);
    color: var(--home-primary-dark);
}
.modern-inner .breed-modal a:focus-visible,
.modern-inner .breed-modal button:focus-visible,
.modern-inner .breed-modal input:focus-visible {
    outline: 3px solid var(--home-primary-dark);
    outline-offset: 2px;
}
.modern-inner .breed-modal .modal-footer {
    padding: 12px 24px;
    border-top: 1px solid var(--home-border);
}
.modern-inner .breed-modal [hidden] {
    display: none !important;
}
.modern-inner .breed-empty {
    margin: 0;
    padding: 24px 0;
    color: var(--home-muted);
    text-align: center;
}
.modern-inner .breed-toolbar .ui-autocomplete {
    max-height: 240px;
    overflow-y: auto;
}

.modern-inner .breed-modal .modal-header::before,
.modern-inner .breed-modal .modal-header::after {
    display: none;
}
.modern-inner .breed-modal .modal-header,
.modern-inner .breed-modal .breed-toolbar,
.modern-inner .breed-modal .modal-footer {
    flex: 0 0 auto;
}

/* 卡片格線 */
.modern-inner .listing-grid-inner {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.modern-inner .listing-card > a.listing-card-media {
    position: relative;
    display: block;
    height: auto;
}

.modern-inner .listing-card img {
    height: 200px;
    background: #f3f6f9;
}

.modern-inner .listing-card .listing-type {
    min-height: 24px;
    align-items: center;
}

.modern-inner .listing-card .listing-type:hover {
    background: #fff1a6;
    color: #3d3500;
}

.modern-inner .listing-card h3 a {
    display: -webkit-box;
    overflow: hidden;
    color: var(--home-text);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.modern-inner .listing-card h3 a:hover {
    color: var(--home-primary);
}

.modern-inner .listing-card .listing-meta input {
    margin: 0 6px 0 0;
}

.modern-inner .inner-btn-blue {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff !important;
}

.modern-inner .inner-btn-blue:hover {
    border-color: var(--home-primary-dark);
    background: var(--home-primary-dark);
    color: #fff !important;
}

/* ===== 討論區列表（Main/Board/board.php） ===== */
.modern-inner .board-search .inner-input {
    min-width: 0;
    max-width: 100%;
    flex: 0 1 220px;
    transition: flex-grow 0.3s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.modern-inner .board-search:focus-within .inner-input,
.modern-inner .board-search .inner-input:not(:placeholder-shown) {
    flex-grow: 1;
}

@media (prefers-reduced-motion: reduce) {
    .modern-inner .board-search .inner-input {
        transition: none;
    }
}

.modern-inner .pet-alert-card {
    display: flex;
    margin: 18px 0;
    padding: 20px;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius);
    background: var(--home-sky);
}
.modern-inner .pet-alert-card h2 { display:flex; margin:0 0 5px; align-items:center; gap:8px; color:var(--home-text); font-size:19px; }
.modern-inner .pet-alert-card h2 .lucide { width:21px; color:var(--home-primary); }
.modern-inner .pet-alert-card p { margin:0; color:var(--home-muted); }
.modern-inner .pet-alert-card-compact { padding:12px 16px; }
.modern-inner .pet-alert-button,
.modern-inner .pet-alert-submit { display:inline-flex; min-height:44px; padding:10px 18px; align-items:center; justify-content:center; gap:7px; border:1px solid var(--home-primary); border-radius:10px; background:var(--home-primary); color:#fff; font-weight:700; cursor:pointer; text-decoration:none; }
.modern-inner .pet-alert-button-active { background:#fff; color:var(--home-primary); }
.modern-inner .pet-alert-button-secondary { min-height:38px; margin-left:8px; padding:7px 12px; background:#fff; color:var(--home-primary); vertical-align:middle; }
.modern-inner .listing-title-row { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.modern-inner .listing-title-row .inner-title { margin-bottom:0; }
.modern-inner .listing-title-row .pet-alert-button-secondary { margin-left:0; }
.modern-inner .listing-hero-actions { display:flex; align-items:center; gap:8px; }
.modern-inner .listing-hero-actions .pet-alert-button-secondary { min-height:42px; margin-left:0; padding:0 18px; border-radius:999px; font-size:15px; font-weight:600; line-height:1; }
.modern-inner .pet-alert-button:focus-visible,
.modern-inner .pet-alert-submit:focus-visible { outline:3px solid rgba(13,124,215,.38); outline-offset:2px; }
.modern-inner .pet-alert-button:active,
.modern-inner .pet-alert-submit:active { opacity:.82; }
.modern-inner .pet-alert-modal { width:520px; max-width:calc(100vw - 40px); padding:0; border:0; border-radius:16px; box-shadow:0 20px 55px rgba(29,57,88,.25); }
.modern-inner .pet-alert-modal::backdrop { background:rgba(29,57,88,.55); }
.modern-inner .pet-alert-modal-inner { position:relative; padding:28px; }
.modern-inner .pet-alert-close { position:absolute; top:10px; right:10px; width:44px; height:44px; border:0; background:transparent; color:var(--home-muted); font-size:28px; cursor:pointer; }
.modern-inner .pet-alert-modal h2 { margin:0 40px 7px 0; color:var(--home-text); }
.modern-inner .pet-alert-field { margin-top:16px; }
.modern-inner .pet-alert-field label { display:block; margin-bottom:6px; color:var(--home-text); font-weight:700; }
.modern-inner .pet-alert-field input,
.modern-inner .pet-alert-field select { box-sizing:border-box; width:100%; min-height:44px; padding:9px 11px; border:1px solid var(--home-border); border-radius:8px; background:#fff; color:var(--home-text); }
.modern-inner .pet-alert-error { display:block; min-height:18px; margin-top:4px; color:#b91c1c; font-size:13px; }
.modern-inner .pet-alert-consent,
.modern-inner .pet-alert-destination { color:var(--home-muted); font-size:13px; line-height:1.6; }
.modern-inner .pet-alert-form-message { min-height:20px; color:#b91c1c; }
.modern-inner .pet-alert-submit { width:100%; }
.modern-inner .pet-alert-submit:disabled { opacity:.65; cursor:wait; }
.modern-inner .pet-alert-result { padding:24px 0 4px; text-align:center; }
.modern-inner .pet-alert-result > .lucide { width:54px; height:54px; color:var(--home-primary); }
.modern-inner .pet-alert-list { margin:20px 0; padding:0; list-style:none; }
.modern-inner .pet-alert-list li { display:flex; min-height:72px; padding:14px 0; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--home-border); }
.modern-inner .pet-alert-list li div { display:flex; flex-direction:column; gap:4px; }
.modern-inner .pet-alert-list span,
.modern-inner .pet-alert-list small { color:var(--home-muted); }
.modern-inner .pet-alert-message { padding:12px; border-radius:8px; background:var(--home-sky); color:var(--home-text); }
.modern-inner .pet-alert-stop-all { text-align:right; }
@media (prefers-reduced-motion: reduce) { .modern-inner .pet-alert-button,.modern-inner .pet-alert-submit { transition:none; } }

.modern-inner .listing-price-link,
.modern-inner .pet-price-market {
    display: inline-flex;
    min-height: 44px;
    padding: 8px 12px;
    align-items: center;
    gap: 6px;
    border: 1px solid #9ac8e5;
    border-radius: 999px;
    background: #f2f9fe;
    color: #155f8e;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    vertical-align: middle;
}

.modern-inner .listing-price-link .lucide,
.modern-inner .pet-price-market .lucide {
    width: 17px;
    height: 17px;
}

.modern-inner .pet-price-market {
    margin-left: 10px;
}

.modern-inner .board-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 10px;
}

.modern-inner .board-readonly {
    display: inline-flex;
    min-height: 42px;
    padding: 0 16px;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    background: #f1f4f8;
    color: var(--home-muted);
    font-weight: 600;
}

.modern-inner .board-readonly .lucide {
    width: 17px;
    height: 17px;
}

.modern-inner .board-notes {
    display: flex;
    margin-top: 18px;
    padding: 14px 16px;
    gap: 12px;
    border-radius: 12px;
    background: #f5f9fd;
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.75;
}

.modern-inner .board-notes > .lucide {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    margin-top: 4px;
    color: var(--home-primary);
}

.modern-inner .board-notes font[size] {
    font-size: inherit;
}

.modern-inner .board-list {
    padding: 8px 24px 22px;
}

.modern-inner .topic-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 15px;
}

.modern-inner .topic-table th {
    padding: 14px 10px 12px;
    border-bottom: 1px solid var(--home-border);
    color: var(--home-muted);
    font-size: 13px;
    font-weight: 600;
    text-align: left;
}

.modern-inner .topic-table th.topic-stats,
.modern-inner .topic-table th.topic-last {
    text-align: right;
}

.modern-inner .topic-row td {
    padding: 12px 10px;
    border-bottom: 1px solid #edf1f5;
    background: #fff;
    vertical-align: middle;
}

.modern-inner .topic-row:hover td {
    background: #f7fbff;
}

.modern-inner .topic-row-top td {
    background: #f2f8fe;
}

.modern-inner .topic-row-focus td,
.modern-inner .topic-row-highlight td {
    background: #fffbeb;
}

.modern-inner .topic-icon {
    width: 44px;
    text-align: center;
}

.modern-inner .topic-icon .lucide {
    width: 20px;
    height: 20px;
    color: #8fa3b8;
    vertical-align: middle;
}

.modern-inner .topic-row-top .topic-icon .lucide {
    color: var(--home-primary);
}

.modern-inner .topic-row-focus .topic-icon .lucide {
    color: #d97706;
}

.modern-inner .topic-icon [data-lucide="circle-check"],
.modern-inner .topic-icon svg.lucide-circle-check {
    color: var(--home-success);
}

.modern-inner .topic-title {
    line-height: 1.55;
    word-break: break-word;
}

.modern-inner .topic-title > a {
    color: var(--home-text);
    font-weight: 500;
}

.modern-inner .topic-title > a:hover {
    color: var(--home-primary);
}

.modern-inner .topic-row-top .topic-title > a {
    font-weight: 700;
}

.modern-inner .topic-pages {
    display: inline-flex;
    margin-left: 8px;
    gap: 4px;
    vertical-align: middle;
}

.modern-inner .topic-pages a {
    display: inline-flex;
    min-width: 24px;
    height: 24px;
    padding: 0 6px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--home-border);
    border-radius: 6px;
    color: var(--home-muted);
    font-size: 12px;
}

.modern-inner .topic-pages a:hover {
    border-color: var(--home-primary);
    color: var(--home-primary);
}

.modern-inner .topic-like {
    display: inline-flex;
    margin-left: 10px;
    align-items: center;
    gap: 3px;
    color: #e11d48;
    font-size: 13px;
    font-weight: 600;
    vertical-align: middle;
}

.modern-inner .topic-like .lucide {
    width: 14px;
    height: 14px;
    fill: currentColor;
}

.modern-inner .topic-stats,
.modern-inner .topic-last {
    width: 130px;
    color: var(--home-muted);
    font-size: 13px;
    text-align: right;
    white-space: nowrap;
}

.modern-inner .topic-stats span,
.modern-inner .topic-last span {
    display: block;
    line-height: 1.5;
}

.modern-inner .topic-count {
    color: var(--home-text);
    font-weight: 600;
}

.modern-inner .topic-author {
    color: var(--home-muted);
}

.modern-inner .topic-empty {
    padding: 40px 0 !important;
    color: var(--home-muted);
    text-align: center;
}

.modern-inner .topic-admin {
    padding: 12px 10px;
    background: #f5f9fd;
    font-size: 14px;
}

.modern-inner .board-copyright {
    display: flex;
    margin: 20px 0 0;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .board-copyright .lucide {
    width: 15px;
    height: 15px;
}

.modern-inner .inner-pager .lucide {
    width: 18px;
    height: 18px;
}

.modern-inner .inner-btn-sm {
    min-height: 36px;
    padding: 0 14px;
    font-size: 14px;
}

.modern-inner .inner-btn-sm .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .inner-btn-danger {
    border-color: #fecaca;
    color: #b91c1c !important;
}

.modern-inner .inner-btn-danger:hover {
    border-color: #f87171;
    background: #fef2f2;
}

.modern-inner .inner-btn-success {
    border-color: #a7dcc3;
    background: #ecfdf5;
    color: #0f6b47 !important;
}

.modern-inner .inner-btn-success:hover {
    border-color: var(--home-success);
    background: #d1fae5;
}

/* ===== 文章頁（Main/Board/view.php） ===== */
.modern-inner .topic-title-text {
    display: block;
    font-size: 24px;
    word-break: break-word;
}

.modern-inner .topic-title-text font {
    font-family: inherit;
}

.modern-inner .topic-toolbar {
    display: flex;
    margin-top: 16px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.modern-inner .topic-toolbar-actions {
    display: flex;
    margin-left: auto;
    align-items: center;
    gap: 10px;
}

.modern-inner .topic-toolbar .inner-pager .pagination > li > a {
    min-width: 36px;
    height: 36px;
}

.modern-inner .post-card {
    overflow: hidden;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius);
    background: #fff;
    box-shadow: 0 6px 18px rgba(29, 57, 88, 0.06);
}

.modern-inner .post-head {
    display: flex;
    padding: 18px 22px;
    align-items: flex-start;
    gap: 16px;
    border-bottom: 1px solid #edf1f5;
    background: #fafcfe;
}

.modern-inner .post-avatar {
    flex: 0 0 auto;
}

.modern-inner .post-avatar img {
    display: block;
    width: 64px !important;
    height: 64px !important;
    padding: 0;
    border: 2px solid #fff;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 0 0 1px var(--home-border);
}

.modern-inner .post-meta {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 6px;
}

.modern-inner .post-author-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.modern-inner .post-author,
.modern-inner .post-author a {
    margin-right: 4px;
    color: var(--home-text);
    font-size: 16px;
    font-weight: 700;
}

.modern-inner .post-author a:hover {
    color: var(--home-primary);
}

.modern-inner .vip_member_style {
    display: inline-flex;
    min-height: 24px;
    margin: 0;
    padding: 0 9px;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #475569;
    font-size: 12px;
    font-weight: 600;
}

.modern-inner .vip_member_admin {
    background: #ffe4e6;
    color: #be123c;
}

.modern-inner .vip_member_guest {
    color: #64748b;
}

.modern-inner .post-best {
    background: #dcfce7;
    color: #166534;
}

.modern-inner .post-sub {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .post-sub span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.modern-inner .post-sub .lucide {
    width: 15px;
    height: 15px;
}

.modern-inner .post-floor {
    padding: 1px 8px;
    border-radius: 999px;
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-weight: 700;
}

.modern-inner .post-link a {
    color: var(--home-muted);
}

.modern-inner .post-actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    max-width: 50%;
}

.modern-inner .post-like {
    display: inline-flex;
    align-items: stretch;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: #fff;
    overflow: hidden;
}

.modern-inner .post-like .post-like-btn {
    border: 0;
    border-radius: 0;
}

.modern-inner .post-like-btn .lucide {
    color: #e11d48;
}

.modern-inner .post-like-count {
    display: inline-flex;
    min-width: 40px;
    padding: 0 12px 0 10px;
    align-items: center;
    justify-content: center;
    border-left: 1px solid var(--home-border);
    background: #fff1f2;
    color: #be123c !important;
    font-size: 14px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    transition: background-color 160ms ease;
}

.modern-inner .post-like-count:hover {
    background: #ffe4e6;
    text-decoration: none;
}

.modern-inner .post-body {
    min-height: 120px;
    padding: 22px 26px 26px;
    color: var(--home-text);
    font-family: inherit;
    font-size: 16px;
    line-height: 1.85;
    word-break: break-word;
}

.modern-inner .post-body img {
    max-width: 100% !important;
    height: auto;
    border-radius: 10px;
}

.modern-inner .post-body iframe {
    max-width: 100%;
    border-radius: 10px;
}

.modern-inner .post-notice {
    margin-bottom: 14px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff7ed;
    color: #9a3412;
    font-size: 15px;
}

.modern-inner .post-muted {
    color: #64748b;
}

.modern-inner .post-zoom {
    display: inline-flex;
    margin: 6px 0 0;
    padding: 2px 10px;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    background: #f1f5f9;
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .post-admin {
    padding: 12px 22px;
    border-top: 1px solid #edf1f5;
    background: #f5f9fd;
    font-size: 14px;
}

.modern-inner .post-share {
    display: flex;
    padding: 14px 22px;
    align-items: center;
    gap: 12px;
    border-top: 1px solid #edf1f5;
}

.modern-inner .post-share-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--home-muted);
    font-size: 14px;
    font-weight: 600;
}

.modern-inner .post-share-label .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .topic-noreply {
    display: flex;
    margin: 0;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--home-muted);
}

.modern-inner .inner-section-link {
    margin-left: auto;
    color: var(--home-primary-dark);
    font-family: "Noto Sans TC", sans-serif;
    font-size: 14px;
    font-weight: 600;
}

.modern-inner .inner-alert-success {
    border-color: #a7dcc3;
    background: #ecfdf5;
    color: #14532d !important;
}

.modern-inner .inner-alert-success .lucide {
    color: var(--home-success);
}

.modern-inner .inner-alert-success strong {
    color: #0f6b47;
}

.modern-inner .inner-alert-link {
    flex: 0 0 auto;
    color: #0f6b47;
    font-weight: 600;
}

.modern-inner .inner-page > .inner-alert {
    margin-top: 0;
}

/* ===== 寵物詳情（regpet/view.php、regpet/view_shop.php） ===== */
.modern-inner .pet-summary {
    display: grid;
    grid-template-columns: minmax(280px, 440px) minmax(0, 1fr);
    gap: 28px;
}

.modern-inner .pet-gallery {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.modern-inner .pet-photo-link {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 14px;
    background: #f3f6f9;
}

.modern-inner .pet-photo {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 14px;
    object-fit: cover;
}

.modern-inner .pet-photo-empty {
    object-fit: contain;
    background: #f3f6f9;
}

.modern-inner .pet-zoom {
    position: absolute;
    right: 10px;
    bottom: 10px;
    display: inline-flex;
    padding: 5px 10px;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    background: rgba(23, 32, 51, 0.72);
    color: #fff;
    font-size: 12px;
}

.modern-inner .pet-zoom .lucide {
    width: 14px;
    height: 14px;
}

.modern-inner .pet-gallery-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.modern-inner .pet-gallery-links:empty {
    display: none;
}

.modern-inner .pet-chip {
    display: inline-flex;
    min-height: 32px;
    padding: 0 12px;
    align-items: center;
    gap: 5px;
    border: 1px solid #d6e6f5;
    border-radius: 999px;
    background: #f5faff;
    color: var(--home-primary-dark);
    font-size: 13px;
    font-weight: 600;
}

.modern-inner .pet-chip .lucide {
    width: 15px;
    height: 15px;
}

.modern-inner .pet-qr {
    width: 96px;
    height: 96px;
    padding: 6px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    background: #fff;
}

.modern-inner .pet-title {
    display: block;
    font-size: 24px;
    word-break: break-word;
}

.modern-inner .pet-price {
    margin: 10px 0 16px;
    color: #c2410c;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.2;
}

.modern-inner .pet-facts {
    display: grid;
    margin: 0 0 18px;
}

.modern-inner .pet-facts > div {
    display: grid;
    padding: 9px 0;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 12px;
    border-bottom: 1px dashed #e3e8ee;
    font-size: 15px;
    line-height: 1.6;
}

.modern-inner .pet-facts dt {
    color: var(--home-muted);
    font-weight: 500;
}

.modern-inner .pet-facts dd {
    display: flex;
    margin: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    color: var(--home-text);
    word-break: break-all;
}

.modern-inner .pet-facts dd img {
    vertical-align: middle;
}

.modern-inner .pet-id {
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .pet-muted {
    color: #64748b;
    font-size: 14px;
}

.modern-inner .vip_member_vip {
    background: #fef3c7;
    color: #92400e;
}

.modern-inner .vip_member_legal {
    background: #e0f2fe;
    color: #075985;
}

.modern-inner .pet-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.modern-inner .pet-share {
    margin-top: 16px;
    padding: 14px 0 0;
}

.modern-inner .pet-notice {
    display: flex;
    margin: 0;
    align-items: center;
    gap: 10px;
    border: 1px solid #fed7aa;
}

.modern-inner .pet-notice .lucide {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
}

.modern-inner .pet-memo {
    overflow: hidden;
    color: var(--home-text);
    font-size: 16px;
    line-height: 1.85;
    word-break: break-word;
}

.modern-inner .pet-memo img {
    max-width: 100% !important;
    height: auto;
    border-radius: 10px;
}

.modern-inner .pet-memo iframe {
    max-width: 100%;
}

.modern-inner .pet-reviews {
    display: grid;
    margin: 0;
    padding: 0;
    gap: 10px;
    list-style: none;
}

.modern-inner .pet-reviews li {
    display: flex;
    padding: 12px 14px;
    align-items: flex-start;
    gap: 10px;
    border-radius: 12px;
    background: #f8fafc;
    font-size: 14px;
}

.modern-inner .pet-review-tag {
    flex: 0 0 auto;
    padding: 2px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
}

.modern-inner .pet-review-good {
    background: #dcfce7;
    color: #166534;
}

.modern-inner .pet-review-bad {
    background: #fee2e2;
    color: #991b1b;
}

.modern-inner .pet-review-text {
    flex: 1 1 auto;
}

.modern-inner .pet-review-date {
    flex: 0 0 auto;
    color: var(--home-muted);
    font-size: 13px;
}

/* ===== 寵物百科（Main/wiki/*） ===== */
.modern-inner .wiki-jump {
    display: flex;
    margin-top: 16px;
    flex-wrap: wrap;
    gap: 8px;
}

.modern-inner .wiki-grid {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
    list-style: none;
}

.modern-inner .wiki-card a {
    display: flex;
    height: 100%;
    padding: 0 10px 14px;
    overflow: hidden;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    border: 1px solid var(--home-border);
    border-radius: 14px;
    background: #fff;
    color: var(--home-text);
    text-align: center;
    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.modern-inner .wiki-card a:hover {
    transform: translateY(-3px);
    border-color: #a9cce4;
    box-shadow: 0 12px 24px rgba(31, 72, 109, 0.12);
}

.modern-inner .wiki-card img {
    width: calc(100% + 20px);
    max-width: none;
    height: auto;
    aspect-ratio: 1;
    margin: 0 -10px 8px;
    object-fit: cover;
    background: #eef1f4;
}

.modern-inner .wiki-card-name {
    font-size: 16px;
    font-weight: 700;
}

.modern-inner .wiki-card-en {
    color: var(--home-muted);
    font-size: 12px;
}

.modern-inner .wiki-summary {
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
}

.modern-inner .wiki-photo {
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    background: #eef1f4;
}

.modern-inner .wiki-traits {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 40px;
    list-style: none;
}

.modern-inner .wiki-traits li {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr) 32px;
    align-items: center;
    gap: 12px;
    font-size: 15px;
}

.modern-inner .wiki-trait-name {
    color: var(--home-muted);
}

.modern-inner .wiki-trait-bar {
    width: 100%;
    height: 10px;
    overflow: hidden;
    border: 0;
    border-radius: 999px;
    background: #edf1f5;
    -webkit-appearance: none;
    appearance: none;
}

.modern-inner .wiki-trait-bar::-webkit-progress-bar {
    border-radius: 999px;
    background: #edf1f5;
}

.modern-inner .wiki-trait-bar::-webkit-progress-value {
    border-radius: 999px;
    background: linear-gradient(90deg, #7cc3f5, var(--home-primary));
}

.modern-inner .wiki-trait-bar::-moz-progress-bar {
    border-radius: 999px;
    background: var(--home-primary);
}

.modern-inner .wiki-trait-score {
    color: var(--home-text);
    font-weight: 700;
    text-align: right;
}

.modern-inner .wiki-subtitle {
    margin: 22px 0 8px;
    color: var(--home-text);
    font-size: 17px;
    font-weight: 700;
}

.modern-inner .wiki-back {
    text-align: center;
}

.modern-inner .wiki-toc,
.modern-inner .wiki-typecode-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.modern-inner .wiki-toc a {
    display: inline-flex;
    min-height: 44px;
    padding: 8px 14px;
    align-items: center;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-weight: 700;
}

.modern-inner .wiki-price-range,
.modern-inner .wiki-inline-link {
    color: #075f9f;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.modern-inner .wiki-toc a:focus-visible,
.modern-inner .wiki-inline-link:focus-visible,
.modern-inner .wiki-faq-list summary:focus-visible,
.modern-inner .wiki-topic-list a:focus-visible {
    outline: 3px solid var(--home-primary-dark);
    outline-offset: 2px;
}

.modern-inner .wiki-content-section,
.modern-inner #wiki-faq,
.modern-inner #wiki-listings {
    scroll-margin-top: 90px;
}

.modern-inner .wiki-content-section + .wiki-content-section {
    margin-top: 24px;
}

.modern-inner .wiki-content-section h3 {
    margin: 0 0 10px;
    color: var(--home-text);
    font-size: 19px;
}

.modern-inner .wiki-faq-list details {
    border-bottom: 1px solid var(--home-border);
}

.modern-inner .wiki-faq-list summary {
    display: flex;
    min-height: 44px;
    padding: 12px 4px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: var(--home-text);
    font-weight: 700;
    cursor: pointer;
}

.modern-inner .wiki-faq-list summary::marker {
    content: '';
}

.modern-inner .wiki-faq-list summary svg {
    width: 20px;
    flex: 0 0 20px;
    transition: transform 180ms ease;
}

.modern-inner .wiki-faq-list details[open] summary svg {
    transform: rotate(180deg);
}

.modern-inner .wiki-faq-list p {
    margin: 0;
    padding: 0 4px 16px;
    color: var(--home-muted);
    font-size: 16px;
    line-height: 1.7;
}

.modern-inner .wiki-section-heading,
.modern-inner .wiki-listing-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.modern-inner .wiki-section-heading > span,
.modern-inner .wiki-listing-head h3 span {
    color: var(--home-muted);
    font-size: 13px;
    font-weight: 600;
}

.modern-inner .wiki-listing-group + .wiki-listing-group {
    margin-top: 28px;
}

.modern-inner .wiki-listing-head h3 {
    margin: 16px 0 12px;
    font-size: 18px;
}

.modern-inner .wiki-listing-head a {
    color: var(--home-primary-dark);
    font-weight: 700;
}

.modern-inner .wiki-related-grid .wiki-card a {
    min-height: 44px;
}

.modern-inner .wiki-topic-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.modern-inner .wiki-topic-list li {
    display: grid;
    padding: 12px 0;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
    border-bottom: 1px solid var(--home-border);
}

.modern-inner .wiki-topic-list a {
    overflow: hidden;
    color: var(--home-text);
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.modern-inner .wiki-topic-list span {
    color: var(--home-muted);
    font-size: 13px;
}

@media (prefers-reduced-motion: no-preference) {
    .modern-inner .wiki-toc a {
        scroll-behavior: smooth;
    }
    html:has(.modern-inner .wiki-toc) {
        scroll-behavior: smooth;
    }
}

@media (prefers-reduced-motion: reduce) {
    .modern-inner .wiki-faq-list summary svg {
        transition: none;
    }
}

/* ===== 舊模板通用外觀（Mode/Mode.php 包上 .legacy-card） ===== */
.modern-inner .legacy-card {
    padding: 24px 28px;
    overflow-x: auto;
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.7;
}

.modern-inner .legacy-card table[width="690"],
.modern-inner .legacy-card table[width="700"],
.modern-inner .legacy-card table[width="720"],
.modern-inner .legacy-card table[width="730"],
.modern-inner .legacy-card table[width="740"],
.modern-inner .legacy-card table[width="742"],
.modern-inner .legacy-card table[width="744"],
.modern-inner .legacy-card table[width="750"],
.modern-inner .legacy-card table[width="754"],
.modern-inner .legacy-card td[width="690"],
.modern-inner .legacy-card td[width="742"],
.modern-inner .legacy-card td[width="744"],
.modern-inner .legacy-card td[width="754"] {
    width: 100% !important;
}

.modern-inner .legacy-card [style*="width:754px"],
.modern-inner .legacy-card [style*="width:744px"],
.modern-inner .legacy-card [style*="width: 754px"] {
    width: auto !important;
}

.modern-inner .legacy-card img {
    max-width: 100%;
    height: auto;
}

/* 舊版麵包屑（pt_bg.png 背景列）改為新版樣式 */
.modern-inner .legacy-card div[style*="pt_bg.png"],
.modern-inner .legacy-card td[background*="pt_bg.png"] {
    height: auto !important;
    margin: 0 0 18px !important;
    padding: 0 0 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #edf1f5 !important;
    background: none !important;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .legacy-card img[src*="pt_item.png"] {
    display: none;
}

.modern-inner .legacy-card img[src*="pt_home.png"] {
    width: 18px;
    height: auto;
    margin: 0 2px 0 0;
    vertical-align: -3px;
    opacity: 0.6;
}

.modern-inner .legacy-card .Nav_txt {
    display: inline-flex;
    padding: 0;
    align-items: center;
    color: var(--home-muted);
    font-size: 14px;
    line-height: 1.5;
    vertical-align: middle;
}

.modern-inner .legacy-card .Nav_txt::before {
    content: "";
    width: 7px;
    height: 7px;
    margin: 0 10px 0 6px;
    border-top: 1.6px solid #9aa6b5;
    border-right: 1.6px solid #9aa6b5;
    transform: rotate(45deg);
}

.modern-inner .legacy-card .Nav_txt a {
    color: var(--home-text);
    font-weight: 600;
}

/* Bootstrap 元件換成品牌色與圓角 */
.modern-inner .legacy-card .btn {
    border-radius: 999px;
    font-weight: 600;
}

.modern-inner .legacy-card .btn-primary {
    border-color: var(--home-primary);
    background: var(--home-primary);
}

.modern-inner .legacy-card .btn-primary:hover {
    border-color: var(--home-primary-dark);
    background: var(--home-primary-dark);
}

.modern-inner .legacy-card .form-control,
.modern-inner .legacy-card input[type="text"],
.modern-inner .legacy-card input[type="password"],
.modern-inner .legacy-card input[type="email"],
.modern-inner .legacy-card input[type="search"],
.modern-inner .legacy-card input[type="tel"],
.modern-inner .legacy-card select,
.modern-inner .legacy-card textarea {
    min-height: 38px;
    padding: 6px 12px;
    border: 1px solid var(--home-border);
    border-radius: 10px;
    background-color: #fff;
    font-size: 15px;
}

.modern-inner .legacy-card .form-control:focus,
.modern-inner .legacy-card input:focus,
.modern-inner .legacy-card select:focus,
.modern-inner .legacy-card textarea:focus {
    border-color: var(--home-primary);
    outline: 0;
    box-shadow: 0 0 0 3px rgba(13, 124, 215, 0.16);
}

.modern-inner .legacy-card .panel {
    overflow: hidden;
    border-color: var(--home-border);
    border-radius: 14px;
    box-shadow: none;
}

.modern-inner .legacy-card .panel-heading {
    border-color: #edf1f5;
    background: #f5f9fd;
    color: var(--home-text);
    font-weight: 700;
}

.modern-inner .legacy-card .alert {
    border-radius: 12px;
}

.modern-inner .legacy-card .table > thead > tr > th,
.modern-inner .legacy-card .table > tbody > tr > td {
    border-color: #edf1f5;
}

/* ===== 登入／註冊（Main/vip/viplogin.php、vipadd.php） ===== */
.modern-inner .auth-card {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    padding: 32px 36px;
}

.modern-inner .auth-card-wide {
    max-width: 760px;
}

.modern-inner .auth-head {
    display: flex;
    margin-bottom: 22px;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.modern-inner .auth-icon {
    display: inline-flex;
    width: 56px;
    height: 56px;
    margin-bottom: 12px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary);
}

.modern-inner .auth-icon .lucide {
    width: 28px;
    height: 28px;
}

.modern-inner .auth-social {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
}

.modern-inner .auth-social .inner-btn {
    min-height: 46px;
}

.modern-inner .auth-btn-sms {
    border-color: #147d8c;
    background: #147d8c;
    color: #fff !important;
}

.modern-inner .auth-btn-sms:hover {
    border-color: #0d6572;
    background: #0d6572;
}

.modern-inner .auth-btn-google .fa-google {
    color: #ea4335;
}

.modern-inner .auth-divider {
    display: flex;
    margin: 22px 0;
    align-items: center;
    gap: 12px;
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .auth-divider::before,
.modern-inner .auth-divider::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: var(--home-border);
}

.modern-inner .auth-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.modern-inner .auth-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.modern-inner .auth-field label {
    display: inline-flex;
    margin: 0;
    align-items: center;
    gap: 8px;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .auth-field .inner-input {
    width: 100%;
    height: 46px;
}

.modern-inner .auth-inline {
    display: flex;
    gap: 10px;
}

.modern-inner .auth-inline .inner-input {
    flex: 1 1 auto;
}

.modern-inner .auth-inline .inner-btn {
    min-height: 46px;
}

.modern-inner .auth-grid {
    display: grid;
    margin-top: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 20px;
}

.modern-inner .auth-lowercase {
    text-transform: lowercase;
}

.modern-inner .auth-help {
    align-self: flex-end;
    font-size: 14px;
}

.modern-inner .auth-hint {
    color: var(--home-muted);
    font-size: 13px;
    font-weight: 400;
}

.modern-inner .auth-hint img,
.modern-inner .show_vaild img {
    vertical-align: -2px;
}

.modern-inner .auth-field label.error,
.modern-inner .auth-field label.valid {
    color: #b91c1c;
    font-size: 13px;
    font-weight: 500;
}

.modern-inner .auth-check {
    display: flex;
    margin: 0;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 500;
}

.modern-inner .auth-check input {
    width: 18px;
    height: 18px;
    margin: 0;
}

.modern-inner .auth-submit {
    width: 100%;
    min-height: 48px;
    font-size: 16px;
}

.modern-inner .sms-login-steps {
    display: grid;
    margin: 0 0 22px;
    padding: 0;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    list-style: none;
}

.modern-inner .sms-login-card [hidden] {
    display: none !important;
}

.modern-inner .sms-login-steps li {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .sms-login-steps span {
    display: inline-flex;
    width: 26px;
    height: 26px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--home-border);
    border-radius: 50%;
    background: #fff;
}

.modern-inner .sms-login-steps .is-active,
.modern-inner .sms-login-steps .is-complete {
    color: var(--home-primary);
    font-weight: 600;
}

.modern-inner .sms-login-steps .is-active span,
.modern-inner .sms-login-steps .is-complete span {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .sms-login-status {
    display: none;
    margin: 0 0 16px;
    padding: 11px 13px;
    border-radius: 8px;
    font-size: 14px;
}

.modern-inner .sms-login-status:not(:empty) {
    display: block;
}

.modern-inner .sms-login-status.is-error {
    background: #fff0f0;
    color: #8b1f1f;
}

.modern-inner .sms-login-status.is-success {
    background: #edf9f2;
    color: #17603a;
}

.modern-inner .sms-login-status.is-loading {
    background: #eef6fc;
    color: #185f9b;
}

.modern-inner .sms-code-input {
    letter-spacing: .35em;
    text-align: center;
    font-size: 22px;
}

.modern-inner .sms-resend-button:disabled {
    cursor: not-allowed;
    opacity: .6;
}

.modern-inner .auth-switch {
    margin: 0;
    color: var(--home-muted);
    font-size: 15px;
    text-align: center;
}

.modern-inner .auth-switch a {
    font-weight: 700;
}

.modern-inner .auth-secure {
    display: flex;
    margin: 0;
    padding: 10px 12px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: 10px;
    background: #f5f9fd;
    color: var(--home-muted);
    font-size: 13px;
    text-align: center;
}

.modern-inner .auth-secure .lucide {
    flex: 0 0 auto;
    width: 15px;
    height: 15px;
    color: var(--home-success);
}

.modern-inner .auth-step {
    display: inline-flex;
    width: 24px;
    height: 24px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-primary);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
}

.modern-inner .auth-step-panel {
    padding-top: 16px;
    border-top: 1px dashed var(--home-border);
}

.modern-inner .auth-rules-title {
    display: flex;
    margin: 0 0 10px;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    font-weight: 700;
}

.modern-inner .auth-rules {
    margin: 0 0 10px;
    padding: 14px 18px 14px 36px;
    border-radius: 12px;
    background: #f8fafc;
    font-size: 14px;
    line-height: 1.9;
}

.modern-inner .auth-rules strong {
    color: #b91c1c;
}

.modern-inner #info_form2 .auth-submit {
    margin-top: 10px;
}

/* ===== 說明頁（Main/law/*） ===== */
.modern-inner .legal-doc .inner-title {
    margin-bottom: 20px;
}

.modern-inner .legal-icon {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary);
}

.modern-inner .legal-icon .lucide {
    width: 22px;
    height: 22px;
}

.modern-inner .legal-section + .legal-section {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #edf1f5;
}

.modern-inner .legal-body {
    max-width: 920px;
    color: var(--home-text);
    font-size: 16px;
    line-height: 1.95;
}

.modern-inner .about-intro {
    margin-top: 14px;
}

.modern-inner .about-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 44%);
    align-items: center;
    gap: 28px;
    background: linear-gradient(135deg, #f2f9ff 0%, #ffffff 60%);
}

.modern-inner .about-hero-text p {
    margin: 10px 0 0;
    font-size: 16px;
    line-height: 1.8;
}

.modern-inner .about-badge {
    background: var(--home-sun);
    color: #7a4b00;
}

.modern-inner .about-hero .buysafe-stats {
    margin-bottom: 0;
}

.modern-inner .about-services {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    list-style: none;
}

.modern-inner .about-services a {
    display: flex;
    height: 100%;
    padding: 18px 14px;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    border: 1px solid #edf1f5;
    border-radius: 14px;
    background: #fafcfe;
    color: var(--home-text);
    text-align: center;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.modern-inner .about-services a:hover {
    border-color: #a9cce4;
    box-shadow: 0 8px 20px rgba(29, 57, 88, 0.08);
    text-decoration: none;
}

.modern-inner .about-services strong {
    margin-top: 4px;
    font-size: 16px;
}

.modern-inner .about-services a > span:last-child {
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .about-story .flexslider {
    margin: 0;
    border: 0;
    border-radius: 14px;
    background: transparent;
    box-shadow: none;
}

.modern-inner .about-story .flex-viewport {
    border-radius: 14px;
}

.modern-inner .about-slide {
    display: grid;
    grid-template-columns: minmax(0, 52%) minmax(0, 1fr);
    align-items: center;
    gap: 32px;
    padding: 0 64px 0 0;
    border-radius: 14px;
    background: #f5f9fd;
}

.modern-inner .about-story .slides img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 14px 0 0 14px;
}

.modern-inner .about-slide-text h4 {
    margin: 12px 0 8px;
    font-size: 20px;
    font-weight: 700;
}

.modern-inner .about-slide-text p {
    margin: 0;
    font-size: 16px;
    line-height: 1.85;
}

.modern-inner .about-story .flex-control-nav {
    position: static;
    margin-top: 14px;
}

.modern-inner .about-story .flex-control-paging li a {
    width: 10px;
    height: 10px;
    background: #c9d6e3;
    box-shadow: none;
}

.modern-inner .about-story .flex-control-paging li a.flex-active {
    background: var(--home-primary);
}

.modern-inner .about-story .flexslider .flex-direction-nav a {
    top: 50%;
    width: 44px;
    height: 44px;
    margin: -22px 0 0;
    overflow: hidden;
    border: 1px solid var(--home-border);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 12px rgba(29, 57, 88, 0.12);
    color: transparent;
    font-size: 0;
    text-shadow: none;
    opacity: 1;
    transition: background-color 160ms ease, border-color 160ms ease;
}

.modern-inner .about-story .flexslider .flex-direction-nav a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-top: 2.5px solid var(--home-primary-dark);
    border-left: 2.5px solid var(--home-primary-dark);
    font-family: inherit;
    transform: translate(-30%, -50%) rotate(-45deg);
}

.modern-inner .about-story .flexslider .flex-direction-nav a.flex-next::before {
    transform: translate(-70%, -50%) rotate(135deg);
}

.modern-inner .about-story .flexslider .flex-direction-nav .flex-prev {
    left: 12px;
}

.modern-inner .about-story .flexslider .flex-direction-nav .flex-next {
    right: 12px;
}

.modern-inner .about-story .flexslider .flex-direction-nav a:hover {
    border-color: #a9cce4;
    background: #eef6fc;
}

.modern-inner .about-story .flexslider .flex-direction-nav a:focus-visible {
    outline: 3px solid rgba(13, 124, 215, 0.45);
    outline-offset: 2px;
}

.modern-inner .about-info {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
    list-style: none;
}

.modern-inner .about-info li {
    display: grid;
    grid-template-columns: 20px auto;
    align-items: center;
    column-gap: 10px;
    row-gap: 2px;
    padding: 14px 16px;
    border: 1px solid #edf1f5;
    border-radius: 14px;
    background: #fafcfe;
}

.modern-inner .about-info .lucide {
    grid-row: span 2;
    width: 20px;
    height: 20px;
    color: var(--home-primary);
}

.modern-inner .about-info span {
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .about-info strong,
.modern-inner .about-info a {
    font-size: 15px;
    font-weight: 600;
    overflow-wrap: anywhere;
}

@media (prefers-reduced-motion: reduce) {
    .modern-inner .about-services a,
    .modern-inner .about-story .flexslider .flex-direction-nav a {
        transition: none;
    }
}

.modern-inner .about-timeline {
    position: relative;
    display: grid;
    margin: 0;
    padding: 0 0 0 18px;
    gap: 12px;
    list-style: none;
    border-left: 2px solid var(--home-sky);
}

.modern-inner .about-timeline li {
    position: relative;
    display: flex;
    align-items: baseline;
    gap: 14px;
    font-size: 15px;
    line-height: 1.7;
}

.modern-inner .about-timeline li::before {
    content: "";
    position: absolute;
    top: 8px;
    left: -24px;
    width: 10px;
    height: 10px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--home-primary);
    box-shadow: 0 0 0 2px var(--home-sky);
}

.modern-inner .about-timeline li[hidden] {
    display: none;
}

.modern-inner .about-pager {
    display: flex;
    margin-top: 18px;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
}

.modern-inner .about-pager[hidden] {
    display: none;
}

.modern-inner .about-pager button {
    display: inline-flex;
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--home-border);
    border-radius: 10px;
    background: #fff;
    color: var(--home-text);
    font-family: inherit;
    font-size: 15px;
    font-variant-numeric: tabular-nums;
    cursor: pointer;
    transition: background-color 160ms ease, border-color 160ms ease;
}

.modern-inner .about-pager button:hover:not(:disabled) {
    border-color: #a9cce4;
    background: #eef6fc;
}

.modern-inner .about-pager button:focus-visible {
    outline: 3px solid rgba(13, 124, 215, 0.45);
    outline-offset: 2px;
}

.modern-inner .about-pager button.is-current {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .about-pager button:disabled {
    color: #b3bcc8;
    cursor: not-allowed;
}

.modern-inner .about-pager .lucide {
    width: 18px;
    height: 18px;
}

.modern-inner .about-year {
    flex: 0 0 auto;
    padding: 1px 10px;
    border-radius: 999px;
    background: var(--home-sun);
    color: #7a4b00;
    font-size: 13px;
    font-weight: 700;
}

.modern-inner .about-tail {
    margin: 18px 0 0;
    color: var(--home-primary-dark);
    font-weight: 600;
    text-align: center;
}

/* ===== 安心賣家介紹（Main/buysafe/buysafe.php） ===== */
.modern-inner .buysafe-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 44%);
    align-items: center;
    gap: 28px;
    background: linear-gradient(135deg, #f2f9ff 0%, #ffffff 60%);
}

.modern-inner .buysafe-hero-text p {
    margin: 10px 0 0;
    font-size: 16px;
    line-height: 1.8;
}

.modern-inner .buysafe-badge {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 5px 12px;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    font-size: 13px;
    font-weight: 700;
}

.modern-inner .buysafe-badge .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .buysafe-checks {
    display: grid;
    margin: 16px 0 20px;
    padding: 0;
    gap: 8px;
    list-style: none;
}

.modern-inner .buysafe-checks li {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .buysafe-checks .lucide {
    width: 20px;
    height: 20px;
    color: var(--home-success);
}

.modern-inner .buysafe-hero-img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 14px;
}

.modern-inner .buysafe-lead {
    margin: 0 0 16px;
    font-size: 16px;
    line-height: 1.8;
}

.modern-inner .buysafe-promise {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    list-style: none;
}

.modern-inner .buysafe-promise li {
    display: flex;
    padding: 16px;
    gap: 14px;
    border: 1px solid #edf1f5;
    border-radius: 14px;
    background: #fafcfe;
}

.modern-inner .buysafe-promise-icon {
    display: inline-flex;
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary);
}

.modern-inner .buysafe-promise h4 {
    margin: 2px 0 6px;
    font-size: 17px;
    font-weight: 700;
}

.modern-inner .buysafe-promise p {
    margin: 0 0 6px;
    font-size: 15px;
    line-height: 1.75;
}

.modern-inner .buysafe-warn {
    color: #c2410c;
}

.modern-inner .buysafe-note {
    display: block;
    margin-top: 6px;
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .buysafe-steps {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    list-style: none;
    counter-reset: none;
}

.modern-inner .buysafe-steps li {
    position: relative;
    display: flex;
    padding: 18px 14px;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    border-radius: 14px;
    background: #f5f9fd;
    text-align: center;
}

.modern-inner .buysafe-steps li:nth-child(2) { background: #f3f0ff; }
.modern-inner .buysafe-steps li:nth-child(3) { background: #ecfdf5; }
.modern-inner .buysafe-steps li:nth-child(4) { background: #fffbeb; }
.modern-inner .buysafe-steps li:nth-child(5) { background: #fff1f2; }

.modern-inner .buysafe-steps li + li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -12px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #9aa6b5;
    border-right: 2px solid #9aa6b5;
    transform: translateY(-50%) rotate(45deg);
}

.modern-inner .buysafe-step-no {
    color: var(--home-primary-dark);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.06em;
}

.modern-inner .buysafe-steps .lucide {
    width: 32px;
    height: 32px;
    color: var(--home-primary);
}

.modern-inner .buysafe-steps strong {
    font-size: 16px;
}

.modern-inner .buysafe-steps span:last-child {
    color: var(--home-muted);
    font-size: 14px;
    line-height: 1.6;
}

.modern-inner .buysafe-list {
    display: grid;
    margin: 0 0 16px;
    padding-left: 24px;
    gap: 10px;
    font-size: 15px;
    line-height: 1.8;
}

.modern-inner .buysafe-list ol {
    display: grid;
    margin: 8px 0;
    padding-left: 22px;
    gap: 6px;
}

.modern-inner .buysafe-join {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 40px;
}

.modern-inner .buysafe-list,
.modern-inner .auth-rules {
    list-style: decimal;
}

.modern-inner .buysafe-list > li,
.modern-inner .auth-rules > li,
.modern-inner .buysafe-list ol > li {
    display: list-item;
    list-style: inherit;
}

.modern-inner .buysafe-list ol[type="A"] {
    list-style: upper-alpha;
}

.modern-inner .buysafe-list ol.buysafe-sublist {
    list-style: lower-roman;
}

/* ===== 安心賣家列表（Main/buysafe/buysafe_list.php） ===== */
.modern-inner .buysafe-stats {
    display: flex;
    margin: 18px 0 20px;
    padding: 0;
    gap: 12px;
    list-style: none;
}

.modern-inner .buysafe-stats li {
    display: flex;
    min-width: 128px;
    padding: 12px 16px;
    flex-direction: column;
    gap: 2px;
    border: 1px solid #d6e8f7;
    border-radius: 14px;
    background: #fff;
}

.modern-inner .buysafe-stats strong {
    color: var(--home-primary-dark);
    font-size: 26px;
    font-weight: 800;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

.modern-inner .buysafe-stats span {
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .buysafe-sellers {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 14px;
    list-style: none;
}

.modern-inner .buysafe-seller {
    display: flex;
    padding: 18px;
    flex-direction: column;
    gap: 14px;
    border: 1px solid #edf1f5;
    border-radius: 14px;
    background: #fafcfe;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.modern-inner .buysafe-seller:hover {
    border-color: #a9cce4;
    box-shadow: 0 8px 20px rgba(29, 57, 88, 0.08);
}

.modern-inner .buysafe-seller-head {
    display: flex;
    align-items: center;
    gap: 12px;
}

.modern-inner .buysafe-seller-avatar {
    display: inline-flex;
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary);
}

.modern-inner .buysafe-seller-title {
    min-width: 0;
}

.modern-inner .buysafe-seller-title h3 {
    margin: 0 0 4px;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.modern-inner .buysafe-seller-title h3 a {
    color: var(--home-text);
}

.modern-inner .buysafe-seller-title h3 a:hover {
    color: var(--home-primary-dark);
}

.modern-inner .buysafe-seller-tag {
    display: inline-flex;
    padding: 2px 10px;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    font-size: 13px;
    font-weight: 700;
}

.modern-inner .buysafe-seller-tag .lucide {
    width: 14px;
    height: 14px;
}

.modern-inner .buysafe-seller-meta {
    display: flex;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
    gap: 6px 16px;
    color: var(--home-muted);
    font-size: 14px;
    list-style: none;
}

.modern-inner .buysafe-seller-meta li {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.modern-inner .buysafe-seller-meta .lucide {
    width: 16px;
    height: 16px;
    color: var(--home-primary);
}

.modern-inner .buysafe-seller-actions {
    display: flex;
    margin-top: auto;
    gap: 8px;
}

.modern-inner .buysafe-empty {
    display: flex;
    margin: 0;
    padding: 28px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 14px;
    background: #f5f9fd;
    color: var(--home-muted);
}

@media (prefers-reduced-motion: reduce) {
    .modern-inner .buysafe-seller {
        transition: none;
    }
}

/* ===== 寵物店家資訊（Main/PetShop/petshop.php） ===== */
.modern-inner .shop-tabs {
    display: flex;
    margin-top: 18px;
    flex-wrap: wrap;
    gap: 8px;
}

.modern-inner .listing-hot-chip.is-active {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .shop-table td {
    font-size: 15px;
}

.modern-inner .shop-tel,
.modern-inner .shop-city {
    white-space: nowrap;
}

.modern-inner .shop-pager {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.modern-inner .shop-pager a,
.modern-inner .shop-pager span {
    display: inline-flex;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--home-border);
    border-radius: 10px;
    background: #fff;
    color: var(--home-text);
    font-size: 15px;
}

.modern-inner .shop-pager a:hover {
    border-color: #a9cce4;
    background: #eef6fc;
}

.modern-inner .shop-pager .is-current {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .water-note {
    margin: -8px 0 14px;
}

.modern-inner .popover {
    border-radius: 12px;
    font-family: "Noto Sans TC", sans-serif;
}

/* ===== 交換連結（Main/link/link.php） ===== */
.modern-inner .link-intro p {
    margin: 10px 0 0;
}

.modern-inner .link-codes {
    display: grid;
    margin-top: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.modern-inner .link-code {
    display: flex;
    padding: 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    border-radius: 14px;
    background: #f8fafc;
}

.modern-inner .link-code-title {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
}

.modern-inner .link-textarea {
    width: 100%;
    height: auto;
    padding: 10px 12px;
    font-family: ui-monospace, Consolas, monospace;
    font-size: 13px;
    resize: vertical;
}

.modern-inner .link-warn {
    margin-top: 18px;
}

.modern-inner .link-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 0;
}

.modern-inner .link-req {
    color: #c2410c;
}

.modern-inner .link-question {
    color: var(--home-primary-dark);
    font-weight: 700;
}

.modern-inner .link-check {
    max-width: 200px;
}

.modern-inner .link-group {
    margin: 18px 0 10px;
    color: var(--home-primary-dark);
    font-size: 15px;
    font-weight: 700;
}

.modern-inner .link-group:first-of-type {
    margin-top: 0;
}

.modern-inner .link-list {
    display: flex;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
}

.modern-inner .link-list li {
    display: inline-flex;
    min-height: 32px;
    padding: 0 12px;
    align-items: center;
    border: 1px solid #edf1f5;
    border-radius: 999px;
    background: #fafcfe;
    color: var(--home-muted);
    font-size: 14px;
}

/* ===== 廣告刊登／合作提案（Main/adv_apply/adv_apply.php） ===== */
.modern-inner .adv-step {
    margin-top: 26px;
}

.modern-inner .adv-preview {
    display: flex;
    padding: 18px;
    justify-content: center;
    gap: 16px;
    border-radius: 14px;
    background: #f5f9fd;
}

.modern-inner .adv-preview img {
    height: 297px;
    width: auto;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(29, 57, 88, 0.1);
}

.modern-inner .adv-caption {
    display: flex;
    margin: 12px 0 0;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--home-primary-dark);
    font-weight: 600;
}

.modern-inner .adv-caption .lucide {
    width: 18px;
    height: 18px;
}

.modern-inner .adv-note {
    margin: -8px 0 14px;
}

.modern-inner .adv-prices {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    list-style: none;
}

.modern-inner .adv-prices li {
    display: flex;
    padding: 18px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    border: 1px solid var(--home-border);
    border-radius: 14px;
    text-align: center;
}

.modern-inner .adv-prices li:nth-child(3) {
    border-color: var(--home-action);
    background: #fffbeb;
}

.modern-inner .adv-days {
    color: var(--home-muted);
    font-weight: 600;
}

.modern-inner .adv-prices strong {
    color: #c2410c;
    font-size: 24px;
}

.modern-inner .adv-prices span:last-child {
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .adv-rules {
    list-style: upper-alpha;
}

.modern-inner .adv-warn {
    margin: 0 0 18px;
}

.modern-inner .adv-captcha {
    height: 46px;
    border-radius: 10px;
    cursor: pointer;
}

.modern-inner .adv-textarea {
    width: 100%;
    height: auto;
    min-height: 240px;
    padding: 12px;
}

.modern-inner .adv-submit {
    max-width: 320px;
    align-self: center;
}

.modern-inner .topic-deleted {
    color: #64748b;
}

.modern-inner .topic-row-top .topic-title > a {
    color: var(--home-primary-dark);
}

.modern-inner .topic-row {
    font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
    font-size: 15px;
}

.modern-inner .topic-row .topic-stats,
.modern-inner .topic-row .topic-last {
    font-size: 14px;
}

/* ===== 會員中心（Main/vip/vip_fun_showvipdata.php） ===== */
.modern-inner .member-hero {
    display: flex;
    align-items: center;
    gap: 28px;
    background: linear-gradient(135deg, #f2f9ff 0%, #ffffff 65%);
}

.modern-inner .member-avatar {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.modern-inner .member-photo {
    width: 128px;
    height: 128px;
    border: 4px solid #fff;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 0 0 1px var(--home-border), 0 8px 20px rgba(29, 57, 88, 0.1);
}

.modern-inner .member-avatar-actions {
    display: flex;
    gap: 6px;
}

.modern-inner .member-hero-info {
    min-width: 0;
    flex: 1 1 auto;
}

.modern-inner .member-hello {
    margin: 0 0 4px;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .member-badges {
    display: flex;
    margin: 10px 0 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    font-size: 15px;
}

.modern-inner .member-level {
    font-weight: 600;
}

.modern-inner .member-upgrade {
    display: inline-flex;
    min-height: 28px;
    padding: 0 12px;
    align-items: center;
    border: 1px solid var(--home-action);
    border-radius: 999px;
    background: #fffbeb;
    color: #7a4b00 !important;
    font-size: 13px;
    font-weight: 700;
}

.modern-inner .member-stats {
    display: grid;
    margin: 18px 0 0;
    padding: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    list-style: none;
}

.modern-inner .member-stats li {
    display: flex;
    padding: 12px 14px;
    flex-direction: column;
    gap: 2px;
    border: 1px solid #e3edf6;
    border-radius: 12px;
    background: #fff;
}

.modern-inner .member-stats strong {
    color: var(--home-primary-dark);
    font-size: 22px;
    line-height: 1.2;
}

.modern-inner .member-stats span {
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner #member-qualifications .inner-btn {
    min-height: 44px;
}

.modern-inner .member-reverify-note {
    display: inline-flex;
    min-height: 42px;
    padding: 0 14px;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    background: #edf8f3;
    color: #116b49;
    font-size: 14px;
    font-weight: 700;
}

.modern-inner .member-reverify-note .lucide {
    width: 18px;
    height: 18px;
}

.modern-inner .member-qualification-note {
    margin: 0 0 8px;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .member-list {
    margin: 0;
}

.modern-inner .member-row {
    display: grid;
    padding: 12px 0;
    grid-template-columns: 110px minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    border-bottom: 1px dashed #e3e8ee;
    font-size: 15px;
}

.modern-inner .member-row:last-child {
    border-bottom: 0;
}

.modern-inner .member-row dt {
    color: var(--home-muted);
    font-weight: 500;
}

.modern-inner .member-row dd {
    display: flex;
    margin: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    word-break: break-all;
}

.modern-inner .member-row-action {
    justify-content: flex-end;
}

.modern-inner .member-row-action a.alink {
    padding: 0;
    color: var(--home-primary-dark);
    font-weight: 600;
}

.modern-inner .member-row .garys {
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .member-verified {
    border: 0;
    cursor: pointer;
}

.modern-inner .member-warn {
    color: #c2410c;
    font-weight: 600;
}

.modern-inner .member-ok {
    color: var(--home-success);
    font-weight: 600;
}

.modern-inner .member-google {
    width: 28px;
    height: 28px;
}

.modern-inner .member-card {
    margin-bottom: 16px;
    padding: 16px;
    border-radius: 12px;
    background: #f8fafc;
}

.modern-inner #left_vip li a.left_vip_mail {
    border-color: #f6c77a;
    background: #fffbeb;
    color: #7a4b00 !important;
}

/* 舊模板的區塊標題背景圖在變寬後不重複 */
.modern-inner .legacy-card td[background],
.modern-inner .legacy-card table[background] {
    background-repeat: no-repeat !important;
}

/* ===== 刊登表單（regpet/add.php） ===== */
.modern-inner .regadd-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.modern-inner .regadd-title {
    display: flex;
    margin: 0 0 18px;
    align-items: center;
    gap: 10px;
    color: var(--home-text);
    font-family: var(--home-font-round);
    font-size: 20px;
    font-weight: 400;
}

.modern-inner .regadd-title .auth-step {
    width: 28px;
    height: 28px;
    font-family: "Noto Sans TC", sans-serif;
    font-size: 14px;
}

.modern-inner .regadd-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px 22px;
}

.modern-inner .regadd-full {
    grid-column: 1 / -1;
}

.modern-inner .regadd-type,
.modern-inner .regadd-money {
    display: flex;
    align-items: center;
    gap: 8px;
}

.modern-inner .regadd-type .inner-input {
    min-width: 0;
    flex: 1 1 auto;
}

.modern-inner .regadd-type .inner-btn {
    flex: 0 0 auto;
    min-height: 46px;
}

.modern-inner .regadd-page .inner-input,
.modern-inner .regadd-page .inner-select {
    width: 100%;
    height: 46px;
}

.modern-inner .regadd-money .inner-input {
    flex: 1 1 auto;
}

.modern-inner .regadd-unit {
    color: var(--home-muted);
    font-weight: 600;
}

.modern-inner .regadd-page .tips:empty {
    display: none;
}

.modern-inner .regadd-page .tips {
    color: var(--home-primary-dark);
    font-size: 13px;
}

.modern-inner .regadd-photo {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.modern-inner .regadd-photo .inner-btn {
    min-height: 46px;
}

.modern-inner .regadd-preview:not(:empty) {
    margin-top: 14px;
}

.modern-inner .regadd-preview img {
    max-width: 240px;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(29, 57, 88, 0.12);
}

.modern-inner .regadd-notice {
    padding: 16px 18px;
    border-radius: 12px;
    background: #fff7ed;
    font-size: 15px;
    line-height: 1.8;
}

.modern-inner .regadd-notice br + br {
    display: block;
    margin-top: 4px;
    content: "";
}

.modern-inner .regadd-notice .btn {
    border-radius: 999px;
}

.modern-inner .regadd-tools {
    display: flex;
    margin-bottom: 12px;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.modern-inner .regadd-memo {
    width: 100%;
    min-height: 420px;
    padding: 12px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
}

.modern-inner .regadd-page .tox-tinymce,
.modern-inner .regadd-page .mce-tinymce {
    overflow: hidden;
    border-color: var(--home-border) !important;
    border-radius: 12px !important;
}

.modern-inner .regadd-row {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    align-items: center;
    gap: 16px;
}

.modern-inner .regadd-label {
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .regadd-focus,
.modern-inner .regadd-answer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    font-size: 15px;
}

.modern-inner .regadd-focus .inner-select,
.modern-inner .regadd-answer .inner-select {
    width: auto;
    min-width: 120px;
}

.modern-inner .regadd-agree {
    margin-bottom: 18px;
    padding: 14px 16px;
    align-items: flex-start;
    border-radius: 12px;
    background: #f5f9fd;
    line-height: 1.7;
}

.modern-inner .regadd-agree input {
    margin-top: 4px;
    flex: 0 0 auto;
}

.modern-inner .regadd-submit {
    display: flex;
    margin-top: 22px;
    flex-direction: column;
    align-items: center;
}

.modern-inner .regadd-submit .auth-submit {
    max-width: 360px;
}

.modern-inner .regadd-wait {
    display: none;
    align-items: center;
    gap: 8px;
    color: var(--home-muted);
}

.modern-inner .regadd-wait[style*="block"] {
    display: flex !important;
}

/* 舊模板表格：統一字級、去除背景圖後方殘留的灰底 */
.modern-inner .legacy-card td[background],
.modern-inner .legacy-card table[background] {
    background-color: transparent !important;
}

.modern-inner .legacy-card table,
.modern-inner .legacy-card .board,
.modern-inner .legacy-card .list-td,
.modern-inner .legacy-card .t3,
.modern-inner .legacy-card .t4,
.modern-inner .legacy-card font[size="2"],
.modern-inner .legacy-card font[size="-1"] {
    font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
    font-size: 14px;
}

.modern-inner .legacy-card table td,
.modern-inner .legacy-card table th {
    line-height: 1.6;
}

.modern-inner .legacy-card .table > thead > tr > th,
.modern-inner .legacy-card tr[bgcolor="#E1F0FF"] > td,
.modern-inner .legacy-card td[bgcolor="#E1F0FF"],
.modern-inner .legacy-card td[bgcolor="#e1f0ff"] {
    background-color: #f5f9fd !important;
    color: var(--home-muted);
    font-weight: 600;
}

.modern-inner .legacy-card .table > tbody > tr > td {
    padding: 10px 8px;
    vertical-align: middle;
}

.modern-inner .legacy-card .table-striped > tbody > tr:nth-of-type(odd),
.modern-inner .legacy-card .board_1 {
    background: #fafcfe;
}

.modern-inner .legacy-card .pagination > li > a,
.modern-inner .legacy-card .pagination > li > span {
    margin: 0 3px;
    border-radius: 8px !important;
}

.modern-inner .legacy-card .label {
    border-radius: 999px;
    font-weight: 600;
}

.modern-inner #left_list li.side-list-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 4px;
}

.modern-inner #left_list li.side-list-grid a {
    padding-right: 6px;
    white-space: nowrap;
}

.modern-inner #left_list li.side-list-grid a:nth-child(even) {
    padding-left: 12px;
}

.modern-inner #left_list li a.side-nowrap {
    white-space: nowrap;
}

/* ===== 會員中心子頁（Main/vip/vip_fun_*.php，共用 Main/vip/vip_modern.php） ===== */
.modern-inner .vm-head {
    display: flex;
    align-items: center;
    gap: 16px;
}

.modern-inner .vm-head-icon {
    display: inline-flex;
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary);
}

.modern-inner .vm-head-icon .lucide {
    width: 26px;
    height: 26px;
}

.modern-inner .vm-head-text {
    min-width: 0;
    flex: 1 1 auto;
}

.modern-inner .vm-head-text .inner-subtitle {
    font-size: 15px;
    line-height: 1.6;
}

.modern-inner .vm-head-extra {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.modern-inner .vm-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    overflow: hidden;
    font-size: 15px;
}

.modern-inner .vm-table th {
    padding: 12px 14px;
    border-bottom: 1px solid var(--home-border);
    background: #f5f9fd;
    color: var(--home-muted);
    font-size: 14px;
    font-weight: 600;
    text-align: left;
    white-space: nowrap;
}

.modern-inner .vm-table td {
    padding: 12px 14px;
    border-bottom: 1px solid #edf1f5;
    color: var(--home-text);
    line-height: 1.6;
    vertical-align: middle;
}

.modern-inner .vm-table tbody tr:last-child td {
    border-bottom: 0;
}

.modern-inner .vm-table tbody tr:nth-child(even) td {
    background: #fafcfe;
}

.modern-inner .vm-table tbody tr:hover td {
    background: #f1f7fd;
}

.modern-inner .vm-table .vm-num {
    text-align: right;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.modern-inner .vm-table .vm-center {
    text-align: center;
}

.modern-inner .vm-table .vm-nowrap {
    white-space: nowrap;
}

.modern-inner .vm-table .vm-check {
    width: 48px;
    text-align: center;
}

.modern-inner .vm-table input[type="checkbox"],
.modern-inner .vm-actions input[type="checkbox"],
.modern-inner .vm-actions input[type="radio"] {
    width: 18px;
    height: 18px;
    margin: 0;
    vertical-align: middle;
    accent-color: var(--home-primary);
    cursor: pointer;
}

.modern-inner .vm-table .vm-empty td {
    padding: 40px 14px;
    color: var(--home-muted);
    text-align: center;
}

.modern-inner .vm-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.modern-inner .vm-empty-state strong {
    color: var(--home-text);
    font-size: 16px;
}

.modern-inner .vm-empty-state .inner-btn {
    margin-top: 4px;
}

.modern-inner .vm-badge {
    display: inline-flex;
    padding: 2px 10px;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    background: #eef2f6;
    color: var(--home-muted);
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

.modern-inner .vm-badge .lucide {
    width: 14px;
    height: 14px;
}

.modern-inner .vm-badge-ok {
    background: var(--home-mint);
    color: #0f6b49;
}

.modern-inner .vm-badge-warn {
    background: #fee2e2;
    color: #b91c1c;
}

.modern-inner .vm-badge-info {
    background: var(--home-sky);
    color: var(--home-primary-dark);
}

.modern-inner .vm-badge-sun {
    background: var(--home-sun);
    color: #7a5200;
}

.modern-inner .vm-plus {
    color: var(--home-success);
    font-weight: 600;
}

.modern-inner .vm-minus {
    color: #b91c1c;
    font-weight: 600;
}

.modern-inner .vm-pagerbar {
    display: flex;
    margin-top: 18px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.modern-inner .vm-pager-summary {
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .vm-pager-summary strong {
    color: var(--home-primary-dark);
}

.modern-inner .vm-pagerbar .inner-pager {
    margin-left: auto;
}

.modern-inner .vm-actions {
    display: flex;
    margin-top: 18px;
    padding: 14px 16px;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    border-radius: 12px;
    background: #f5f9fd;
    font-size: 15px;
}

.modern-inner .vm-actions label {
    display: inline-flex;
    margin: 0;
    align-items: center;
    gap: 6px;
    font-weight: 400;
    cursor: pointer;
}

.modern-inner .vm-linkbtn {
    padding: 0;
    border: 0;
    background: none;
    color: var(--home-primary);
    font-size: 15px;
    cursor: pointer;
}

.modern-inner .vm-linkbtn:hover {
    color: var(--home-primary-dark);
    text-decoration: underline;
}

.modern-inner .vm-note {
    margin: 12px 0 0;
    color: var(--home-muted);
    font-size: 14px;
    line-height: 1.7;
}

.modern-inner .vm-page > .inner-alert {
    margin-top: 0;
}

.modern-inner .vm-page .gasdv,
.modern-inner .vm-page #gasdv {
    margin-top: 0 !important;
}

.modern-inner .vm-search {
    display: flex;
    margin: 0 0 18px;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.modern-inner .vm-search-field {
    position: relative;
    width: 360px;
}

.modern-inner .vm-search-field .lucide {
    position: absolute;
    top: 50%;
    left: 12px;
    width: 18px;
    height: 18px;
    color: var(--home-muted);
    transform: translateY(-50%);
    pointer-events: none;
}

.modern-inner .vm-search-field .inner-input {
    width: 100%;
    height: 40px;
    padding-left: 38px;
}

.modern-inner .vm-table .vm-unread td {
    background: #fffdf2;
}

.modern-inner .vm-mail-table tbody tr:has(input[type="checkbox"]:checked) td {
    background: var(--home-sky);
}

.modern-inner .vm-mail-table tbody tr:has(input[type="checkbox"]:checked) td:first-child {
    box-shadow: inset 4px 0 0 var(--home-primary);
}

.modern-inner .vm-table .vm-unread .vm-mail-subject a {
    font-weight: 700;
}

.modern-inner .vm-mail-subject a {
    color: var(--home-primary-dark);
}

.modern-inner .vm-mail-subject a:hover {
    color: var(--home-primary);
    text-decoration: underline;
}

.modern-inner .vm-reply {
    width: 16px;
    height: 16px;
    margin-right: 6px;
    color: var(--home-success);
    vertical-align: -3px;
}

.modern-inner .vm-muted {
    color: var(--home-muted);
}

.modern-inner .vm-mail-title {
    font-size: 24px;
    word-break: break-word;
}

.modern-inner .vm-mail-from {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--home-primary-dark);
    font-weight: 600;
}

.modern-inner .vm-mail-from .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .vm-mail-body {
    color: var(--home-text);
    font-size: 16px;
    line-height: 1.8;
    word-break: break-word;
}

.modern-inner .vm-mail-body p {
    margin: 0 0 8px;
}

.modern-inner .vm-mail-body img {
    max-width: 100%;
    height: auto;
}

.modern-inner .vm-mail-actions {
    display: flex;
    margin-top: 22px;
    padding-top: 18px;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    border-top: 1px solid #edf1f5;
}

.modern-inner .vm-mail-actions-gap {
    flex: 1 1 auto;
}

.modern-inner .vm-thread {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.modern-inner .vm-thread-item {
    border: 1px solid var(--home-border);
    border-radius: 12px;
    background: #fff;
}

.modern-inner .vm-thread-item summary {
    display: flex;
    min-height: 48px;
    padding: 10px 16px;
    align-items: center;
    gap: 8px;
    border-radius: 12px;
    background: #f5f9fd;
    color: var(--home-text);
    font-size: 15px;
    cursor: pointer;
    list-style: none;
}

.modern-inner .vm-thread-item summary::-webkit-details-marker {
    display: none;
}

.modern-inner .vm-thread-item summary:hover {
    background: #eaf3fb;
}

.modern-inner .vm-thread-item summary .lucide {
    width: 16px;
    height: 16px;
    color: var(--home-muted);
}

.modern-inner .vm-thread-item[open] summary {
    border-bottom: 1px solid #edf1f5;
    border-radius: 12px 12px 0 0;
}

.modern-inner .vm-thread-item .vm-mail-body {
    padding: 14px 16px;
}

.modern-inner .vm-thread-no {
    color: var(--home-muted);
    font-variant-numeric: tabular-nums;
}

.modern-inner .vm-thread-date {
    margin-left: auto;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .inner-pager .pagination > .vm-ellipsis > span {
    min-width: 24px;
    padding: 0 2px;
    border-color: transparent;
    background: none;
    color: var(--home-muted);
}

.modern-inner .vm-actions-options {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 14px;
}

.modern-inner .vm-action-links {
    display: flex;
    gap: 16px;
}

.modern-inner .vm-options {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    border: 0;
}

.modern-inner .vm-options legend {
    margin: 0 0 8px;
    padding: 0;
    border: 0;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .vm-options label {
    display: flex;
    min-height: 56px;
    padding: 10px 12px;
    align-items: flex-start;
    gap: 10px;
    border: 1px solid var(--home-border);
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
    transition: border-color 160ms ease, background-color 160ms ease;
}

.modern-inner .vm-options label:hover {
    border-color: #a9cce4;
}

.modern-inner .vm-options label:has(input:checked) {
    border-color: var(--home-primary);
    background: #eef6fc;
}

.modern-inner .vm-options input[type="radio"] {
    margin-top: 3px;
    flex: 0 0 auto;
}

.modern-inner .vm-options span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.modern-inner .vm-options strong {
    font-size: 15px;
}

.modern-inner .vm-options small {
    color: var(--home-muted);
    font-size: 13px;
    line-height: 1.5;
}

.modern-inner .vm-actions-options > .inner-btn {
    justify-self: start;
}

.modern-inner .vm-tabs {
    display: flex;
    margin: 0 0 16px;
    gap: 4px;
    border-bottom: 1px solid var(--home-border);
}

.modern-inner .vm-tab {
    display: inline-flex;
    min-height: 44px;
    margin-bottom: -1px;
    padding: 0 16px;
    align-items: center;
    gap: 6px;
    border-bottom: 3px solid transparent;
    color: var(--home-muted);
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .vm-tab .lucide {
    width: 18px;
    height: 18px;
}

.modern-inner .vm-tab:hover {
    color: var(--home-primary-dark);
    text-decoration: none;
}

.modern-inner .vm-tab[aria-current="page"] {
    border-bottom-color: var(--home-primary);
    color: var(--home-primary-dark);
}

.modern-inner .vm-tab-count {
    min-width: 24px;
    padding: 0 7px;
    border-radius: 999px;
    background: #eef2f6;
    color: var(--home-muted);
    font-size: 13px;
    text-align: center;
}

.modern-inner .vm-tab[aria-current="page"] .vm-tab-count {
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .vm-chips {
    display: flex;
    margin: 0 0 16px;
    flex-wrap: wrap;
    gap: 8px;
}

.modern-inner .vm-chip {
    display: inline-flex;
    min-height: 34px;
    padding: 0 14px;
    align-items: center;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: #fff;
    color: var(--home-text);
    font-size: 14px;
}

.modern-inner .vm-chip:hover {
    border-color: #a9cce4;
    color: var(--home-primary-dark);
    text-decoration: none;
}

.modern-inner .vm-chip[aria-current="true"] {
    border-color: var(--home-primary);
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-weight: 600;
}

.modern-inner .vm-pet {
    display: flex;
    align-items: center;
    gap: 14px;
}

.modern-inner .vm-pet-pic {
    flex: 0 0 auto;
}

.modern-inner .vm-pet-pic img {
    width: 96px;
    height: 72px;
    border-radius: 10px;
    object-fit: cover;
    background: #f1f5f9;
}

.modern-inner .vm-pet-info {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
}

.modern-inner .vm-pet-title {
    color: var(--home-primary-dark);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}

.modern-inner .vm-pet-title:hover {
    color: var(--home-primary);
    text-decoration: underline;
}

.modern-inner .vm-pet-meta {
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .vm-pet-meta strong {
    color: var(--home-text);
}

.modern-inner .vm-table .vm-row-end .vm-pet-pic img {
    filter: grayscale(0.6);
    opacity: 0.8;
}

.modern-inner .vm-ban .lucide {
    width: 18px;
    height: 18px;
    color: #b91c1c;
}

.modern-inner .vm-notes {
    margin: 16px 0 0;
    padding-left: 20px;
    color: var(--home-muted);
    font-size: 14px;
    line-height: 1.8;
}

.modern-inner .vm-uploads {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    list-style: none;
}

.modern-inner .vm-upload {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.modern-inner .vm-upload-pic {
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    background: #f1f5f9;
}

.modern-inner .vm-upload-pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 200ms ease;
}

.modern-inner .vm-upload-pic:hover img {
    transform: scale(1.03);
}

.modern-inner .vm-upload-meta {
    display: flex;
    margin: 0;
    align-items: center;
    gap: 8px;
    color: var(--home-muted);
    font-size: 14px;
    font-weight: 400;
    cursor: pointer;
}

.modern-inner .vm-upload-meta input {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--home-primary);
}

.modern-inner .vm-reviews {
    display: flex;
    margin: 0;
    padding: 0;
    flex-direction: column;
    list-style: none;
}

.modern-inner .vm-review {
    padding: 16px 0;
    border-bottom: 1px solid #edf1f5;
}

.modern-inner .vm-review:first-child {
    padding-top: 4px;
}

.modern-inner .vm-review-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    font-size: 15px;
}

.modern-inner .vm-review-meta {
    margin-left: auto;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .vm-review-body {
    margin: 8px 0 0;
    color: var(--home-text);
    font-size: 16px;
    line-height: 1.7;
    word-break: break-word;
}

.modern-inner .vm-review-status {
    margin: 8px 0 0;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .vm-review-reply {
    margin-top: 10px;
    padding: 10px 14px;
    border-left: 3px solid var(--home-action);
    border-radius: 0 10px 10px 0;
    background: #fffbeb;
}

.modern-inner .vm-review-reply-head {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #7a5200;
    font-size: 14px;
    font-weight: 600;
}

.modern-inner .vm-review-reply-head .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .vm-review-reply p {
    margin: 4px 0 0;
    color: var(--home-text);
    font-size: 15px;
}

.modern-inner .vm-review-actions {
    margin-top: 10px;
}

.modern-inner .vm-note .lucide {
    width: 16px;
    height: 16px;
    margin-right: 4px;
    vertical-align: -3px;
}

.modern-inner .vm-subhead {
    display: flex;
    margin: 0 0 10px;
    align-items: baseline;
    gap: 10px;
    color: var(--home-text);
    font-size: 16px;
    font-weight: 700;
}

.modern-inner .vm-subhead .vm-muted {
    font-size: 13px;
    font-weight: 400;
}

.modern-inner .vm-bid-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 240px;
    gap: 24px;
}

.modern-inner .vm-countdown {
    margin-bottom: 20px;
    padding: 18px;
    border-radius: 14px;
    background: #fff7ed;
    text-align: center;
}

.modern-inner .vm-countdown-time {
    display: flex;
    margin: 0 0 6px;
    align-items: baseline;
    justify-content: center;
    gap: 6px;
    color: #c2410c;
    font-variant-numeric: tabular-nums;
}

.modern-inner .vm-countdown-time span {
    min-width: 1.4em;
    font-family: "Noto Sans TC", sans-serif;
    font-size: 44px;
    font-weight: 700;
    line-height: 1;
}

.modern-inner .vm-countdown-time small {
    margin-right: 8px;
    color: #9a3412;
    font-size: 15px;
}

.modern-inner .vm-countdown .vm-muted {
    margin: 0;
    font-size: 14px;
}

.modern-inner .vm-bids {
    max-height: 240px;
    margin: 0 0 22px;
    padding: 0;
    overflow: auto;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    list-style: none;
}

.modern-inner .vm-bids li {
    display: grid;
    padding: 10px 14px;
    grid-template-columns: 36px 110px minmax(0, 1fr) 170px auto;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #edf1f5;
    font-size: 15px;
}

.modern-inner .vm-bids li:last-child {
    border-bottom: 0;
}

.modern-inner .vm-bids .vm-bid-top {
    background: #fffbeb;
}

.modern-inner .vm-bids .vm-bid-empty {
    display: block;
    padding: 28px 14px;
    color: var(--home-muted);
    text-align: center;
}

.modern-inner .vm-bid-rank {
    color: var(--home-muted);
    text-align: center;
}

.modern-inner .vm-bid-rank .lucide {
    width: 18px;
    height: 18px;
    color: #d97706;
}

.modern-inner .vm-bid-money {
    color: #c2410c;
}

.modern-inner .vm-bid-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
}

.modern-inner .vm-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.modern-inner .vm-field > label {
    margin: 0;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .vm-field small {
    color: var(--home-muted);
    font-size: 13px;
    line-height: 1.6;
}

.modern-inner .vm-field .inner-input,
.modern-inner .vm-field .inner-select {
    width: 100%;
}

.modern-inner .vm-field-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.modern-inner .vm-unit {
    color: var(--home-muted);
    font-weight: 600;
    white-space: nowrap;
}

.modern-inner .vm-bid-submit {
    display: flex;
    grid-column: 1 / -1;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.modern-inner .vm-slots {
    display: flex;
    margin: 0;
    padding: 0;
    flex-direction: column;
    gap: 8px;
    list-style: none;
}

.modern-inner .vm-slot {
    display: flex;
    padding: 12px 14px;
    flex-direction: column;
    gap: 2px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .vm-slot strong {
    color: var(--home-text);
    font-size: 15px;
}

.modern-inner .vm-slot small {
    font-size: 13px;
}

.modern-inner .vm-slot-live {
    border-color: #fdba74;
    background: #fff7ed;
}

.modern-inner .vm-slot-live span {
    color: #c2410c;
    font-weight: 700;
}

.modern-inner .vm-slot-done {
    border-color: #a7dcc3;
    background: #f0faf5;
}

.modern-inner .vm-rules {
    margin: 0;
    padding-left: 22px;
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.9;
}

.modern-inner .vm-rules {
    list-style: decimal;
}

.modern-inner .vm-notes {
    list-style: disc;
}

.modern-inner .vm-upload-pic img {
    object-fit: contain;
}

.modern-inner .vm-lead {
    margin: -6px 0 16px;
    color: var(--home-muted);
    font-size: 15px;
    line-height: 1.7;
}

.modern-inner .vm-fee-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.modern-inner .vm-fee-card {
    padding: 18px 20px;
    border: 1px solid var(--home-border);
    border-radius: 14px;
    background: #f8fbfe;
}

.modern-inner .vm-fee-card-vip {
    border-color: #f6d27a;
    background: #fffbeb;
}

.modern-inner .vm-fee-card h4 {
    display: flex;
    margin: 0 0 10px;
    align-items: center;
    gap: 8px;
    font-size: 17px;
    font-weight: 700;
}

.modern-inner .vm-fee-card h4 .lucide {
    width: 20px;
    height: 20px;
    color: var(--home-primary);
}

.modern-inner .vm-fee-card-vip h4 .lucide {
    color: #d97706;
}

.modern-inner .vm-fee-card ul {
    margin: 0;
    padding-left: 20px;
    list-style: disc;
    font-size: 15px;
    line-height: 1.8;
}

.modern-inner .vm-levels {
    display: flex;
    margin: 0 0 16px;
    padding: 0;
    flex-wrap: wrap;
    gap: 10px 24px;
    list-style: none;
    font-size: 15px;
}

.modern-inner .vm-levels .vm-badge {
    margin-right: 8px;
}

.modern-inner .vm-fee-table th[scope="row"] {
    color: var(--home-text);
    font-size: 15px;
    font-weight: 400;
    background: none;
    border-bottom: 1px solid #edf1f5;
    white-space: normal;
}

.modern-inner .vm-fee-table tbody tr:nth-child(even) th[scope="row"] {
    background: #fafcfe;
}

.modern-inner .vm-fee-table td {
    text-align: center;
}

.modern-inner .vm-fee-table td small {
    display: block;
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .vm-fee-table .vm-fee-vip {
    background: #fffdf2 !important;
}

.modern-inner .vm-fee-table .vm-fee-group th {
    padding: 10px 14px;
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-size: 15px;
    font-weight: 700;
}

.modern-inner .vm-no .lucide {
    width: 20px;
    height: 20px;
    color: #dc2626;
}

.modern-inner .vm-fee-more {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.modern-inner .vm-step {
    display: inline-flex;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-primary);
    color: #fff;
    font-family: "Noto Sans TC", sans-serif;
    font-size: 16px;
    font-weight: 700;
}

.modern-inner .vm-price-list {
    display: grid;
    margin: 0 0 14px;
    padding: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    list-style: none;
}

.modern-inner .vm-price-list li {
    display: flex;
    padding: 18px;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    border: 1px solid var(--home-border);
    border-radius: 14px;
    background: #f8fbfe;
}

.modern-inner .vm-price-list strong {
    color: var(--home-primary-dark);
    font-size: 26px;
    font-variant-numeric: tabular-nums;
}

.modern-inner .vm-price-list span {
    color: var(--home-muted);
    font-size: 15px;
}

.modern-inner .vm-price-list .vm-price-hot {
    border-color: #f6d27a;
    background: #fffbeb;
}

.modern-inner .vm-price-list .vm-price-hot strong {
    color: #b45309;
}

.modern-inner .vm-callout {
    display: flex;
    margin: 0 0 16px;
    padding: 14px 16px;
    align-items: flex-start;
    gap: 12px;
    border: 1px solid #bfdbfe;
    border-radius: 12px;
    background: #eff6ff;
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.7;
}

.modern-inner .vm-callout > .lucide {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    margin-top: 1px;
    color: var(--home-primary);
}

.modern-inner .vm-callout p {
    margin: 4px 0 0;
}

.modern-inner .vm-callout-warn {
    border-color: #fecaca;
    background: #fef2f2;
}

.modern-inner .vm-callout-warn > .lucide {
    color: #dc2626;
}

.modern-inner .vm-pay-accounts {
    display: grid;
    margin-bottom: 22px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.modern-inner .vm-pay-card {
    padding: 18px 20px;
    border: 1px solid var(--home-border);
    border-radius: 14px;
}

.modern-inner .vm-pay-card h4 {
    display: flex;
    margin: 0 0 12px;
    align-items: center;
    gap: 8px;
    font-size: 17px;
    font-weight: 700;
}

.modern-inner .vm-pay-card h4 .lucide {
    width: 20px;
    height: 20px;
    color: var(--home-primary);
}

.modern-inner .vm-pay-list {
    margin: 0 0 10px;
}

.modern-inner .vm-pay-list > div {
    display: grid;
    padding: 6px 0;
    grid-template-columns: 80px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
}

.modern-inner .vm-pay-list dt {
    color: var(--home-muted);
    font-size: 14px;
    font-weight: 400;
}

.modern-inner .vm-pay-list dd {
    display: flex;
    margin: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    font-size: 16px;
}

.modern-inner .vm-pay-no {
    color: var(--home-primary-dark);
    font-size: 20px;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
}

.modern-inner .vm-pay-warn {
    display: flex;
    margin: 6px 0 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    color: #b91c1c;
    font-size: 14px;
}

.modern-inner .vm-pay-warn .lucide,
.modern-inner .vm-pay-card a .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .vm-pay-card a .lucide {
    margin-left: 4px;
    vertical-align: -3px;
}

.modern-inner .vm-pay-qr {
    display: block;
    width: 200px;
    height: auto;
    margin: 4px 0 10px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
}

.modern-inner .vm-pay-qr-box {
    display: flex;
    margin: 12px 0 0;
    align-items: center;
    gap: 14px;
}

.modern-inner .vm-pay-qr-box .vm-pay-qr {
    width: 160px;
    margin: 0;
    padding: 0;
    background: #fff;
    box-sizing: border-box;
}

.modern-inner .vm-pay-qr-box figcaption {
    color: var(--home-muted);
    font-size: 14px;
    line-height: 1.5;
}

.modern-inner .vm-pay-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
}

.modern-inner .vm-field-label {
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .vm-pay-form .vm-field-date {
    grid-column-start: 1;
}

.modern-inner .vm-date-quick {
    display: flex;
    align-items: stretch;
    gap: 8px;
}

.modern-inner .vm-date-quick .inner-input {
    min-width: 0;
    flex: 1 1 auto;
}

.modern-inner .vm-date-quick .inner-btn {
    flex: 0 0 auto;
}

.modern-inner .vm-pay-total {
    min-width: 110px;
    color: #b45309;
    font-size: 20px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.modern-inner .vm-note .vm-minus,
.modern-inner .vm-note.vm-minus {
    font-weight: 400;
}

.modern-inner .vm-rules > li {
    list-style: decimal;
}

.modern-inner .vm-notes > li,
.modern-inner .vm-fee-card li {
    list-style: disc;
}

.modern-inner .vm-compose {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.modern-inner .vm-compose-tools {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.modern-inner .vm-compose-tools small {
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .vm-compose-memo {
    width: 100%;
    min-height: 360px;
    padding: 12px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
}

.modern-inner .vm-compose .tox-tinymce,
.modern-inner .vm-compose .mce-tinymce {
    overflow: hidden;
    border-color: var(--home-border) !important;
    border-radius: 12px !important;
}

.modern-inner .vm-faq {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.modern-inner .vm-faq-item {
    border: 1px solid var(--home-border);
    border-radius: 12px;
}

.modern-inner .vm-faq-item summary {
    display: flex;
    min-height: 60px;
    padding: 12px 16px;
    align-items: center;
    gap: 14px;
    cursor: pointer;
    list-style: none;
}

.modern-inner .vm-faq-item summary::-webkit-details-marker {
    display: none;
}

.modern-inner .vm-faq-item summary:hover {
    background: #f5f9fd;
}

.modern-inner .vm-faq-item summary > span:nth-child(2) {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.modern-inner .vm-faq-item summary strong {
    font-size: 16px;
}

.modern-inner .vm-faq-item summary small {
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .vm-faq-item summary > .lucide {
    width: 20px;
    height: 20px;
    color: var(--home-muted);
    transition: transform 160ms ease;
}

.modern-inner .vm-faq-item[open] summary > .lucide {
    transform: rotate(180deg);
}

.modern-inner .vm-faq-no {
    display: inline-flex;
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary-dark);
    font-weight: 700;
}

.modern-inner .vm-faq-body {
    padding: 4px 16px 16px 62px;
    font-size: 15px;
    line-height: 1.8;
}

.modern-inner .vm-faq-body p {
    margin: 0 0 8px;
}

.modern-inner .vm-captcha .inner-input {
    max-width: 220px;
}

.modern-inner .vm-captcha img {
    border-radius: 8px;
    cursor: pointer;
}

.modern-inner .vm-page > form {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.modern-inner .member-page .vip_member_style {
    font-size: 13px;
}

/* ===== 討論區發文／修改文章（Main/Board/add.php、Main/vip/vip_title_edit.php） ===== */
.modern-inner .post-hero-meta {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.modern-inner .post-page .regadd-grid .inner-select {
    width: 100%;
    height: 46px;
}

.modern-inner .post-note {
    margin-bottom: 16px;
}

.modern-inner .post-note font[size] {
    font-size: inherit;
}

.modern-inner .post-captcha {
    margin-top: 18px;
}

.modern-inner .post-rule {
    display: flex;
    margin: 4px 0 0;
    align-items: center;
    gap: 6px;
    color: #b91c1c;
}

.modern-inner .post-rule .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .post-media-preview:not(:empty) {
    margin: 14px 0 0;
}

.modern-inner .post-media-preview iframe {
    max-width: 100%;
    border-radius: 12px;
}

.modern-inner .post-media-memo {
    margin-top: 18px;
}

.modern-inner .post-page .regadd-tools .inner-btn .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .post-page .inner-input:disabled,
.modern-inner .post-page .inner-select:disabled {
    border-color: #e4e8ee;
    background: #f5f7fa;
    color: var(--home-muted);
    cursor: not-allowed;
}

/* ===== 寵物店家介紹（Main/PetShop/petshop_view.php） ===== */
.modern-inner .shop-gallery {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.modern-inner .shop-nopic {
    display: flex;
    aspect-ratio: 4 / 3;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px dashed var(--home-border);
    border-radius: 14px;
    background: #f8fafc;
    color: var(--home-muted);
    font-size: 15px;
}

.modern-inner .shop-nopic .lucide {
    width: 44px;
    height: 44px;
    color: #9aa6b5;
}

.modern-inner .shop-chips {
    display: flex;
    margin: 8px 0 14px;
    flex-wrap: wrap;
    gap: 8px;
}

.modern-inner .shop-history {
    margin-top: 20px;
    padding-top: 14px;
    border-top: 1px solid #edf1f5;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .shop-history p {
    display: flex;
    margin: 0;
    align-items: center;
    gap: 6px;
}

.modern-inner .shop-history .lucide {
    width: 16px;
    height: 16px;
}

.modern-inner .shop-history summary {
    margin-top: 8px;
    color: var(--home-primary);
    cursor: pointer;
}

.modern-inner .shop-history-list {
    margin-top: 6px;
    line-height: 1.8;
}

/* 寵物百科：狗狗／貓咪分頁切換 */
.modern-inner .wiki-tabs {
    display: flex;
    margin-top: 16px;
    padding: 4px;
    gap: 4px;
    width: fit-content;
    max-width: 100%;
    border: 1px solid #d6e6f5;
    border-radius: 12px;
    background: var(--home-sky);
}

.modern-inner .wiki-tab {
    display: inline-flex;
    min-height: 40px;
    padding: 0 18px;
    align-items: center;
    gap: 6px;
    border-radius: 9px;
    color: var(--home-primary-dark);
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.2s, color 0.2s;
}

.modern-inner .wiki-tab svg {
    width: 18px;
    height: 18px;
}

.modern-inner .wiki-tab:hover {
    background: #fff;
}

.modern-inner .wiki-tab.is-active {
    background: var(--home-primary);
    color: #fff;
    box-shadow: 0 4px 10px rgba(13, 124, 215, 0.25);
}

.modern-inner .wiki-tab-count {
    padding: 1px 8px;
    border-radius: 999px;
    background: rgba(13, 124, 215, 0.12);
    font-size: 12px;
}

.modern-inner .wiki-tab.is-active .wiki-tab-count {
    background: rgba(255, 255, 255, 0.25);
}

/* ===== 工作訊息（Main/ero.php） ===== */
.modern-inner .message-card {
    display: flex;
    padding: 40px 32px 36px;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.modern-inner .message-card .auth-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 14px;
}

.modern-inner .message-card .inner-title {
    justify-content: center;
    font-size: 24px;
}

.modern-inner .message-body {
    width: 100%;
    max-width: 560px;
    margin: 16px 0 0;
    padding: 16px 20px;
    border: 1px solid #cfe4f6;
    border-radius: 12px;
    background: #f5faff;
    color: var(--home-text);
    font-size: 16px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.modern-inner .message-redirect {
    margin: 12px 0 0;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .message-redirect a {
    color: var(--home-primary);
    text-decoration: underline;
}

.modern-inner .message-actions {
    display: flex;
    margin-top: 24px;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.modern-inner .message-actions .inner-btn {
    min-width: 132px;
    min-height: 44px;
}

.modern-inner .message-actions .inner-btn:focus-visible {
    outline: 3px solid rgba(13, 124, 215, 0.35);
    outline-offset: 2px;
}

/* ===== 討論區回覆文章（Main/Board/readd.php） ===== */
.modern-inner .reply-origin .regadd-title {
    margin-bottom: 8px;
}

.modern-inner .reply-origin-icon {
    display: inline-flex;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--home-sky);
    color: var(--home-primary);
}

.modern-inner .reply-origin-icon .lucide {
    width: 18px;
    height: 18px;
}

.modern-inner .reply-origin-meta {
    display: flex;
    margin: 0 0 14px;
    flex-wrap: wrap;
    gap: 6px 16px;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .reply-origin-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.modern-inner .reply-origin-meta .lucide {
    width: 15px;
    height: 15px;
}

.modern-inner .reply-origin-body {
    padding: 16px 18px;
    border-left: 4px solid #a9cce4;
    border-radius: 0 12px 12px 0;
    background: #f7fafd;
}

.modern-inner .reply-warn {
    display: flex;
    margin: 0 0 16px;
    padding: 12px 14px;
    align-items: flex-start;
    gap: 8px;
    border: 1px solid #fecaca;
    border-radius: 12px;
    background: #fef2f2;
    color: #b91c1c;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.6;
}

.modern-inner .reply-warn .lucide {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    margin-top: 3px;
}

/* ===== 補齊舊排版內頁（忘記密碼、手機驗證、廣告費說明等） ===== */
.modern-inner .inner-list {
    margin: 0 0 16px;
    padding-left: 22px;
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.8;
}

.modern-inner .inner-list > li {
    margin-bottom: 6px;
}

.modern-inner .inner-card > .vm-table {
    margin: 0 0 20px;
}

.modern-inner .approve-body {
    margin-top: 18px;
    font-size: 15px;
    line-height: 1.8;
}

.modern-inner .phone-verify-form {
    margin: 0;
    padding: 8px 0 0;
}

.modern-inner .phone-verify-prompt {
    color: var(--home-muted);
    font-size: 16px;
}

.modern-inner .phone-verify-number {
    display: inline-block;
    margin: 4px 8px 14px 0;
    color: #c45d00;
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.modern-inner .phone-verify-edit {
    display: inline-block;
    font-size: 14px;
}

.modern-inner .phone-code-label {
    margin: 0 0 6px;
    color: var(--home-text);
    font-weight: 600;
}

.modern-inner .phone-verify-actions {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 10px;
}

.modern-inner .phone-code-group {
    width: 240px;
}

.modern-inner .phone-code-group .form-control {
    height: 42px;
    color: var(--home-text) !important;
    font-size: 16px;
    letter-spacing: 0.08em;
}

.modern-inner .phone-verify-status {
    display: block;
    min-height: 26px;
    margin-top: 14px;
    color: #8f241f;
}

.modern-inner .phone-verify-ok,
.modern-inner .phone-verify-current,
.modern-inner .phone-verify-success {
    color: #116b49;
}

.modern-inner .phone-verify-current {
    display: grid;
    justify-items: center;
    gap: 12px;
    padding: 18px;
    text-align: center;
}

.modern-inner .phone-verify-current > .fa {
    font-size: 22px;
    font-weight: 700;
}

.modern-inner .phone-verify-current p {
    margin: 0;
    color: var(--home-text);
}

.modern-inner .phone-verify-success {
    display: grid;
    width: min(100%, 720px);
    margin: 10px auto 4px;
    padding: 22px 24px;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    border: 1px solid #b9dfcc;
    border-radius: 14px;
    background: #f1faf5;
    text-align: left;
}

.modern-inner .phone-verify-success-icon {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 50%;
    background: #16845b;
    color: #fff;
    font-size: 22px;
}

.modern-inner .phone-verify-success-copy strong {
    display: block;
    color: #116b49;
    font-size: 20px;
    line-height: 1.35;
}

.modern-inner .phone-verify-success-copy p {
    margin: 4px 0 0;
    color: var(--home-muted);
    font-size: 14px;
}

.modern-inner .phone-verify-complete {
    min-width: 158px;
    min-height: 46px;
}

.modern-inner .approve-body .btn {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 600;
}

.modern-inner .approve-body .btn-primary,
.modern-inner .approve-body .btn-main {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .approve-body .btn[disabled],
.modern-inner .approve-body .btn.disabled {
    border-color: #cbd5df;
    background: #e8edf2;
    color: #667384 !important;
    cursor: not-allowed;
    opacity: 1;
}

.modern-inner .approve-notes {
    margin-top: 22px;
    padding: 16px 18px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    background: #f5f9fd;
    color: var(--home-text);
}

.modern-inner .approve-notes p {
    margin: 0 0 6px;
}

.modern-inner .approve-notes .approve-agree {
    margin-top: 10px;
    color: var(--home-muted);
    font-weight: 600;
}

.modern-inner .inner-list {
    list-style: decimal;
}

.modern-inner .inner-card > .inner-section-title {
    margin-top: 20px;
}

.modern-inner .inner-card > .pet-actions {
    margin: 18px 0 10px;
}

/* ===== 舊表格排版統一（搜尋結果、會員資料檢視、安心賣家介紹、檢舉文章、參訪評分等） ===== */
.modern-inner .legacy-card table {
    max-width: 100%;
}

.modern-inner .legacy-card table.board,
.modern-inner .legacy-card table[bgcolor="#D7D7D7"],
.modern-inner .legacy-card table[bgcolor="#cccccc"],
.modern-inner .legacy-card table[bgcolor="#86a5c6"] {
    width: 100% !important;
    border: 0;
    border-collapse: collapse;
    background: none !important;
}

.modern-inner .legacy-card td[bgcolor],
.modern-inner .legacy-card tr[bgcolor] {
    background-color: #fff !important;
}

.modern-inner .legacy-card td[background],
.modern-inner .legacy-card table[background] {
    background-image: none !important;
}

.modern-inner .legacy-card table.board td {
    padding: 10px 12px;
    border-bottom: 1px solid #edf1f5;
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.6;
}

/* 表頭列與標籤欄 */
.modern-inner .legacy-card td[background*="tdbg"],
.modern-inner .legacy-card td[bgcolor="#E1F0FF" i],
.modern-inner .legacy-card td[bgcolor="#F0F8FF" i] {
    background-color: #f5f9fd !important;
    color: var(--home-muted);
    font-size: 14px;
    font-weight: 600;
}

.modern-inner .legacy-card td[bgcolor="#F3f3f3" i] {
    background-color: #f5f9fd !important;
    color: var(--home-muted);
    font-weight: 600;
    white-space: nowrap;
}

.modern-inner .legacy-card font[color="#FF0000" i],
.modern-inner .legacy-card font[color="red" i] {
    color: #c9302c;
}

.modern-inner .legacy-card input[type="submit"],
.modern-inner .legacy-card input[type="button"],
.modern-inner .legacy-card input[type="reset"] {
    min-height: 38px;
    padding: 0 16px;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: #fff;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
}

.modern-inner .legacy-card input[type="submit"] {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .legacy-card .btn-main {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.modern-inner .legacy-card .btn-warning {
    border-color: var(--home-action);
    background: var(--home-action);
    color: #2c2810;
}

/* 搜尋結果 */
.page-search .legacy-card table.board td[width="446"] a {
    font-weight: 500;
}

.page-search .legacy-card table.board td[width="80"],
.page-search .legacy-card table.board td[width="57"],
.page-search .legacy-card table.board td[width="40"],
.page-search .legacy-card table.board td[width="180"] {
    color: var(--home-muted);
    font-size: 14px;
    white-space: nowrap;
}

.page-search .legacy-card table.board td[width="18"] img {
    opacity: 0.75;
}

.page-search .legacy-card table.board input[type="text"] {
    width: 220px;
    margin: 0 6px;
}

/* 會員資料檢視 */
.page-access-view .legacy-card .rate-tab {
    display: flex;
    margin: 0 0 16px;
    padding: 0;
    gap: 8px;
    border: 0;
    list-style: none;
}

.page-access-view .legacy-card .rate-tab li {
    float: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
}

.page-access-view .legacy-card .rate-tab li a {
    display: inline-flex;
    height: auto;
    min-height: 40px;
    padding: 0 18px;
    align-items: center;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: #fff;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
}

.page-access-view .legacy-card .rate-tab li a span {
    display: inline;
    height: auto;
    padding: 0;
    background: none;
    color: inherit;
    line-height: inherit;
}

.page-access-view .legacy-card .rate-tab li.selected a {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.page-access-view .legacy-card td[background*="pic/vip"],
.page-buysafe-detial .legacy-card td[background*="buysafe_bg"] {
    height: auto !important;
    padding: 12px 0 8px;
    border-bottom: 1px solid var(--home-border);
    background: none !important;
}

.page-access-view .legacy-card td.vip_td,
.page-buysafe-detial .legacy-card td.vip_td {
    padding: 10px 12px;
    border-bottom: 1px solid #edf1f5;
    font-size: 15px;
}

.page-access-view .legacy-card td[bgcolor="#F3f3f3" i],
.page-buysafe-detial .legacy-card td[bgcolor="#F3f3f3" i] {
    padding: 10px 12px;
    border-bottom: 1px solid #edf1f5;
}

.page-access-view .legacy-card .img-rounded {
    border-radius: 14px;
}

.page-access-view .profile-tabs {
    display: flex;
    margin: 0 0 18px;
    flex-wrap: wrap;
    gap: 8px;
}

.page-access-view .profile-tab {
    display: inline-flex;
    min-height: 44px;
    padding: 0 18px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--home-border);
    border-radius: 999px;
    background: #fff;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
}

.page-access-view .profile-tab:hover,
.page-access-view .profile-tab:focus-visible {
    border-color: var(--home-primary);
    color: var(--home-primary);
    text-decoration: none;
}

.page-access-view .profile-tab.is-active {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.page-access-view .member-profile {
    display: grid;
    margin-bottom: 8px;
    padding: 22px;
    grid-template-columns: minmax(340px, 0.8fr) minmax(0, 1.4fr);
    grid-template-areas:
        "main stats"
        "footer footer";
    gap: 20px 24px;
    border: 1px solid var(--home-border);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(29, 57, 88, 0.07);
}

.page-access-view .member-profile-main {
    display: flex;
    grid-area: main;
    align-items: center;
    gap: 18px;
}

.page-access-view .member-avatar {
    flex: 0 0 112px;
}

.page-access-view .member-avatar img {
    display: block;
    width: 112px;
    height: 112px;
    border: 1px solid #edf1f5;
    border-radius: 16px;
    object-fit: cover;
}

.page-access-view .member-eyebrow {
    margin: 0 0 4px;
    color: var(--home-muted);
    font-size: 13px;
    font-weight: 600;
}

.page-access-view .member-identity h1,
.page-access-view .member-identity h2 {
    margin: 0;
    color: var(--home-text);
    font-family: var(--home-font-round);
    font-size: 25px;
    font-weight: 600;
    line-height: 1.25;
}

.page-access-view .member-id {
    margin: 4px 0 10px;
    color: var(--home-muted);
    font-size: 14px;
}

.page-access-view .member-badges {
    display: flex;
    min-height: 26px;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.page-access-view .member-badges .btn,
.page-access-view .member-badges .label {
    display: inline-flex;
    min-height: 26px;
    margin: 0;
    padding: 4px 9px;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    font-size: 13px;
    line-height: 1.2;
}

.page-access-view .member-badges .btn {
    color: #fff;
}

.page-access-view .member-stats {
    display: grid;
    margin: 0;
    grid-area: stats;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid #e6edf3;
    border-radius: 12px;
    background: #e6edf3;
}

.page-access-view .member-stats > div {
    min-width: 0;
    padding: 11px 12px;
    background: #f8fbfd;
}

.page-access-view .member-stats dt {
    margin-bottom: 3px;
    color: var(--home-muted);
    font-size: 13px;
    font-weight: 600;
}

.page-access-view .member-stats dd {
    margin: 0;
    color: var(--home-text);
    font-size: 15px;
    line-height: 1.45;
}

.page-access-view .member-stats > div:last-child dd {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.page-access-view .member-stats > div:last-child dd img {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
}

.page-access-view .member-profile-footer {
    display: flex;
    padding-top: 16px;
    grid-area: footer;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border-top: 1px solid #edf1f5;
}

.page-access-view .member-rating-summary {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 7px;
    color: var(--home-muted);
    font-size: 14px;
}

.page-access-view .member-rating-summary strong {
    color: var(--home-text);
    font-weight: 600;
}

.page-access-view .member-rating-summary a {
    font-weight: 600;
}

.page-access-view .access-empty {
    color: #5f6f7f;
    font-size: 14px;
    font-weight: 500;
}

.page-access-view .member-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.page-access-view .member-action {
    display: inline-flex;
    min-height: 44px;
    padding: 0 16px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 1px solid #b8c8d6;
    border-radius: 999px;
    background: #fff;
    color: var(--home-text);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
}

.page-access-view .member-action:hover,
.page-access-view .member-action:focus-visible {
    border-color: var(--home-primary);
    color: var(--home-primary);
    text-decoration: none;
}

.page-access-view .member-action-primary {
    border-color: var(--home-primary);
    background: var(--home-primary);
    color: #fff;
}

.page-access-view .member-action-primary:hover,
.page-access-view .member-action-primary:focus-visible {
    background: var(--home-primary-dark);
    color: #fff;
}

.page-access-view .member-memo {
    margin-top: 22px;
}

.page-access-view .profile-listings-section {
    margin-top: 8px;
}

.page-access-view .profile-listings-section #regpet {
    display: grid;
    margin: 0;
    padding: 4px 0 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    list-style: none;
}

.page-access-view .profile-listings-section #regpet .listing-card {
    width: auto;
    height: auto;
    margin: 0;
    float: none;
}

.page-access-view .profile-listings-section #regpet .listing-card img {
    width: 100%;
    height: 200px;
    margin: 0;
    object-fit: cover;
}

/* 安心賣家介紹 */
.page-buysafe-detial .legacy-card > table:first-of-type td[bgcolor="#F3f3f3" i][width="744"] {
    padding: 0;
    border: 0;
    background: none !important;
}

.page-buysafe-detial .legacy-card #regpet,
.page-buysafe-detial .legacy-card #peo_pic {
    padding: 12px 0;
}

/* 檢舉文章 */
.page-board-beef-a .legacy-card tr[style*="border-bottom"] {
    border-bottom: 1px solid #edf1f5 !important;
}

.page-board-beef-a .legacy-card td.y16px {
    padding: 10px 12px;
    border-bottom: 1px solid #edf1f5;
    font-size: 15px;
    line-height: 1.9;
}

.page-board-beef-a .legacy-card td.y16px[width="86"] {
    color: var(--home-muted);
    font-weight: 600;
    white-space: nowrap;
    vertical-align: top;
}

.page-board-beef-a .legacy-card ul.reptile {
    margin: 0;
    padding: 0;
    list-style: none;
}

.page-board-beef-a .legacy-card textarea {
    width: 100%;
    max-width: 640px;
    min-height: 120px;
}

.page-board-beef-a .legacy-card span[style*="#08298A"] {
    display: block;
    margin: 8px 0 2px;
    color: var(--home-text) !important;
}

/* 參訪評分檢視 */
.page-access-visit-view .legacy-card .rattitle {
    color: var(--home-text);
    font-size: 16px;
    font-weight: 600;
}

.page-access-visit-view .legacy-card .rattitle .fa-flag {
    color: var(--home-primary);
}

.page-access-visit-view .legacy-card [class^="click-callback"] i {
    font-size: 26px !important;
}

.page-access-visit-view .legacy-card .rating-text {
    color: var(--home-success);
}

.page-access-visit-view .legacy-card .rattitle2 {
    color: var(--home-success);
    font-size: 18px;
    font-weight: 700;
}

/* 以文字標題取代舊的圖片標題列 */
.modern-inner .legacy-card td.legacy-section-cell {
    padding: 18px 0 8px !important;
    border: 0 !important;
    background: none !important;
    text-align: left;
}

.modern-inner .legacy-card .legacy-section-title {
    margin: 0;
}

.modern-inner .legacy-card .buysafe-detail-banner {
    display: block;
    text-align: center;
}

.modern-inner .legacy-card .buysafe-detail-banner img {
    width: 100%;
    max-width: 468px;
    height: auto;
    border-radius: 14px;
}

/* 熱門精選：得標廣告標示 */
.modern-inner .listing-card-bid {
    border-color: var(--home-primary);
    box-shadow: 0 0 0 1px var(--home-primary);
}

.modern-inner .listing-card-bid:hover {
    border-color: var(--home-primary-dark);
    box-shadow: 0 0 0 1px var(--home-primary-dark), 0 12px 24px rgba(31, 72, 109, 0.16);
}

.modern-inner .listing-bid-link {
    display: inline-flex;
    min-height: 38px;
    padding: 0 15px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--home-primary);
    color: #fff;
    line-height: 1.2;
    text-decoration: none;
}

.modern-inner .listing-bid-link:hover,
.modern-inner .listing-bid-link:focus {
    background: var(--home-primary-dark);
    color: #fff;
}

.modern-inner .listing-bid-link:focus-visible {
    outline: 3px solid rgba(31, 119, 191, 0.35);
    outline-offset: 2px;
}

.modern-inner .listing-bid-badge {
    position: absolute;
    z-index: 2;
    top: 10px;
    left: 10px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--home-primary-dark);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.modern-inner .listing-bid-badge .lucide {
    width: 14px;
    height: 14px;
}

#pet-featured-title ~ .listing-grid .listing-card h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* 店家地址改用 <address> 語意標籤，維持原本的行內顯示 */
.modern-inner .shop-address {
    display: inline;
    margin: 0;
    font-style: normal;
    line-height: inherit;
}

/* 品種刊登行情 */
.modern-inner .price-page {
    width: 100%;
    min-width: 0;
    font-variant-numeric: tabular-nums;
}

body.modern-home.page-price .site-main,
body.modern-home.page-price-view .site-main {
    width: 1176px !important;
    max-width: 1176px;
    overflow: hidden;
}

.modern-inner .price-page > *,
.modern-inner .price-table-scroll,
.modern-inner .price-chart-scroll {
    min-width: 0;
    max-width: 100%;
}

.modern-inner .price-hero {
    background: linear-gradient(135deg, #f4faff 0%, #fff 72%);
}

.modern-inner .price-hero-with-image {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 138px;
    align-items: center;
    gap: 24px;
}

.modern-inner .price-hero-copy {
    min-width: 0;
}

.modern-inner .price-breed-thumb {
    display: flex;
    min-height: 44px;
    padding: 8px;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    border: 0;
    background: transparent;
    color: var(--home-primary-dark);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    text-decoration: none;
    transition: color .18s ease;
}

.modern-inner .price-breed-thumb img {
    display: block;
    width: 120px;
    height: 120px;
    border-radius: 10px;
    object-fit: cover;
}

.modern-inner .price-breed-thumb:hover,
.modern-inner .price-breed-thumb:focus-visible {
    color: var(--home-primary);
}

.modern-inner .price-breed-thumb:focus-visible {
    outline: 3px solid rgba(31, 119, 191, .35);
    outline-offset: 2px;
}

.modern-inner .price-eyebrow {
    display: flex;
    margin: 0 0 8px;
    align-items: center;
    gap: 7px;
    color: var(--home-primary);
    font-weight: 700;
}

.modern-inner .price-eyebrow .lucide {
    width: 20px;
    height: 20px;
}

.modern-inner .price-answer {
    margin: 12px 0 0;
    color: var(--home-text);
    font-size: 19px;
    line-height: 1.7;
}

.modern-inner .price-answer strong {
    color: var(--home-primary-dark);
}

.modern-inner .price-quick-find {
    display: flex;
    margin-top: 18px;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.modern-inner .price-quick-label {
    color: var(--home-muted);
    font-weight: 600;
}

.modern-inner .price-quick-find a {
    display: inline-flex;
    min-height: 44px;
    padding: 0 15px;
    align-items: center;
    gap: 7px;
    border: 1px solid #e8c85d;
    border-radius: 10px;
    background: var(--home-sun);
    color: #684400;
    font-weight: 700;
    text-decoration: none;
}

.modern-inner .price-quick-find a:hover,
.modern-inner .price-quick-find a:focus-visible {
    border-color: var(--home-action);
    background: #fff3c4;
    color: #5c3900;
}

.modern-inner .price-quick-find a:focus-visible {
    outline: 3px solid rgba(31, 119, 191, .35);
    outline-offset: 2px;
}

.modern-inner .price-quick-find .lucide {
    width: 17px;
    height: 17px;
}

.modern-inner .price-quick-find a span {
    display: inline-flex;
    min-width: 24px;
    height: 24px;
    padding: 0 6px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #fff;
    color: var(--home-primary-dark);
    font-size: 13px;
}

.modern-inner .price-section-note {
    margin: -4px 0 16px;
    color: var(--home-muted);
    line-height: 1.6;
}

.modern-inner .price-chart-scroll,
.modern-inner .price-table-scroll {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
}

.modern-inner .price-chart-scroll {
    aspect-ratio: 9 / 4;
    border-radius: 12px;
    background: #fbfdff;
}

.modern-inner .price-chart-svg,
.modern-inner .price-range-svg {
    display: block;
    width: 100%;
    min-width: 720px;
    height: auto;
    color: #34495e;
    font-family: var(--home-font-sans);
    font-size: 13px;
}

.modern-inner .price-grid {
    stroke: #dce8f1;
    stroke-width: 1;
}

.modern-inner .price-axis-label,
.modern-inner .price-axis-year,
.modern-inner .price-sample-label,
.modern-inner .price-insufficient {
    fill: #536779;
    font-size: 13px;
}

.modern-inner .price-insufficient {
    fill: #6f7f8d;
    font-size: 12px;
}

.modern-inner .price-year-band {
    fill: #d7edfc;
    opacity: .85;
}

.modern-inner .price-year-line,
.modern-inner .price-index-line {
    fill: none;
    stroke: #166ea8;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 3;
}

.modern-inner .price-year-point {
    fill: #fff;
    stroke: #0c659f;
    stroke-width: 3;
}

.modern-inner .price-error {
    stroke: #547991;
    stroke-width: 1.5;
}

.modern-inner .price-value-label,
.modern-inner .price-index-value,
.modern-inner .price-index-name {
    fill: #263d50;
    font-size: 13px;
    font-weight: 700;
}

.modern-inner .price-index-cat {
    stroke: #8a5d10;
    fill: #8a5d10;
}

.modern-inner .price-index-line.price-index-cat {
    fill: none;
    stroke-dasharray: 9 7;
}

.modern-inner .price-index-dog {
    stroke: #166ea8;
    fill: #166ea8;
}

.modern-inner .price-index-line.price-index-dog {
    fill: none;
}

.modern-inner .price-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.modern-inner .price-stat-grid article {
    display: flex;
    min-height: 148px;
    flex-direction: column;
    justify-content: center;
}

.modern-inner .price-stat-grid span,
.modern-inner .price-stat-grid small {
    color: var(--home-muted);
}

.modern-inner .price-stat-grid strong {
    display: block;
    margin: 8px 0;
    color: var(--home-primary-dark);
    font-family: var(--home-font-round);
    font-size: 25px;
    font-weight: 600;
}

.modern-inner .price-stat-grid .price-stat-main {
    border-color: #91c9ed;
    background: #f2f9fe;
}

.modern-inner .price-table {
    width: 100%;
    min-width: 650px;
    border-collapse: separate;
    border-spacing: 0;
    color: var(--home-text);
    font-size: 14px;
}

.modern-inner .price-table th,
.modern-inner .price-table td {
    padding: 12px 13px;
    border-right: 1px solid #e2eaf0;
    border-bottom: 1px solid #e2eaf0;
    text-align: right;
    white-space: nowrap;
}

.modern-inner .price-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #eaf4fb;
    color: #29475c;
    text-align: center;
}

.modern-inner .price-table tbody th {
    text-align: left;
}

.modern-inner .price-table tr > :first-child {
    border-left: 1px solid #e2eaf0;
}

.modern-inner .price-table thead tr:first-child > * {
    border-top: 1px solid #e2eaf0;
}

.modern-inner .price-matrix {
    min-width: 1520px;
}

.modern-inner .price-matrix tr > :first-child {
    position: sticky;
    left: 0;
    z-index: 1;
    min-width: 124px;
    background: #fff;
}

.modern-inner .price-matrix thead tr > :first-child {
    z-index: 3;
    background: #eaf4fb;
}

.modern-inner .price-matrix tr > :last-child {
    position: sticky;
    right: 0;
    z-index: 1;
    background: #fff;
}

.modern-inner .price-matrix thead tr > :last-child {
    z-index: 3;
    background: #eaf4fb;
}

.modern-inner .price-heat--2 { background: #f7fbfe; }
.modern-inner .price-heat--1 { background: #eaf5fc; }
.modern-inner .price-heat-0 { background: #d8edf9; }
.modern-inner .price-heat-1 { background: #bfdef1; }
.modern-inner .price-heat-2 { background: #9fc9e3; }
.modern-inner .price-cell-empty { color: #778895; text-align: center !important; }

.modern-inner .price-spark-cell {
    min-width: 126px;
}

.modern-inner .price-spark {
    display: inline-block;
    width: 120px;
    height: 42px;
    vertical-align: middle;
}

.modern-inner .price-spark polyline {
    fill: none;
    stroke: #166ea8;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 3;
}

.modern-inner .price-spark-empty {
    color: #778895;
}

.modern-inner .price-range-wrap {
    overflow-x: auto;
}

.modern-inner .price-range-wide {
    stroke: #b9def5;
    stroke-linecap: round;
    stroke-width: 28;
}

.modern-inner .price-range-common {
    stroke: #247db5;
    stroke-linecap: round;
    stroke-width: 28;
}

.modern-inner .price-range-median {
    stroke: #153f5d;
    stroke-width: 4;
}

.modern-inner .price-range-median-label {
    fill: #153f5d;
    font-weight: 700;
}

.modern-inner .price-hist-bar {
    fill: #3188be;
}

.modern-inner .price-data-details {
    margin-top: 14px;
}

.modern-inner .price-data-details summary {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: var(--home-primary);
    cursor: pointer;
    font-weight: 700;
}

.modern-inner .price-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.modern-inner .price-actions .inner-btn {
    min-height: 46px;
}

.modern-inner .price-method p {
    max-width: 90ch;
    margin: 8px 0;
    color: var(--home-text);
    line-height: 1.75;
    text-wrap: pretty;
}

.modern-inner .price-related-grid,
.modern-inner .price-overview-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.modern-inner .price-related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.modern-inner .price-related-grid a {
    display: flex;
    min-height: 118px;
    padding: 14px;
    flex-direction: column;
    justify-content: space-between;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    color: var(--home-text);
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.modern-inner .price-related-grid a:hover,
.modern-inner .price-related-grid a:focus-visible {
    border-color: var(--home-primary);
    box-shadow: 0 8px 18px rgba(31, 72, 109, .12);
}

.modern-inner .price-related-grid a:focus-visible,
.modern-inner .price-overview-list a:focus-visible {
    outline: 3px solid rgba(31, 119, 191, .35);
    outline-offset: 2px;
}

.modern-inner .price-related-grid strong {
    font-size: 17px;
}

.modern-inner .price-related-grid span {
    color: var(--home-primary-dark);
    font-weight: 700;
}

.modern-inner .price-overview-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.modern-inner .price-overview-list a {
    display: grid;
    min-height: 88px;
    padding: 12px 14px;
    grid-template-columns: minmax(90px, 1fr) auto 128px;
    align-items: center;
    gap: 6px 12px;
    border: 1px solid var(--home-border);
    border-radius: 12px;
    color: var(--home-text);
    text-decoration: none;
}

.modern-inner .price-overview-name {
    font-size: 17px;
    font-weight: 700;
}

.modern-inner .price-overview-list strong {
    color: var(--home-primary-dark);
    font-size: 17px;
}

.modern-inner .price-overview-range,
.modern-inner .price-overview-sample {
    color: var(--home-muted);
    font-size: 13px;
}

.modern-inner .price-overview-sample {
    text-align: right;
}

.modern-inner .price-mini-range {
    position: relative;
    display: block;
    height: 8px;
    border-radius: 999px;
    background: #dcecf6;
}

.modern-inner .price-mini-range i {
    position: absolute;
    top: 0;
    right: calc(100% - var(--price-end));
    bottom: 0;
    left: var(--price-start);
    border-radius: inherit;
    background: #247db5;
}

@media (prefers-reduced-motion: reduce) {
    .modern-inner .price-related-grid a,
    .modern-inner .price-breed-thumb {
        transition: none;
    }
}
.modern-inner .favorite-desktop-list{
margin:0;
padding:0;
list-style:none;
}
.modern-inner .favorite-desktop-list li{
display:flex;
min-height:64px;
padding:10px 0;
align-items:center;
gap:12px;
border-bottom:1px solid #dce6ed;
}
.modern-inner .favorite-desktop-list li>a{
display:flex;
min-width:0;
flex:1;
flex-direction:column;
gap:4px;
color:#263d50;
text-decoration:none;
}
.pet-lost-live-preview{grid-column:2;grid-row:2/5;align-self:start;display:grid;gap:10px;padding:14px;border:1px solid #d8e7f2;border-radius:14px;background:#eef7ff}.pet-lost-live-preview .pet-lost-status{position:static;justify-self:start}.pet-lost-live-preview>div{display:grid;aspect-ratio:1/1;place-items:center;overflow:hidden;border-radius:10px;background:#dcebf5;color:#52687c}.pet-lost-live-preview img{width:100%;height:100%;object-fit:cover}.pet-lost-live-preview strong{font-size:18px;color:#17324d}.pet-lost-step[data-step="3"]{grid-column:1;grid-row:auto}
.pet-lost-form [hidden]{display:none!important}
.home-lost-item-text a{min-height:48px;padding:8px 0}.home-lost-item-text a>span{display:flex!important;width:100%;align-items:center;justify-content:space-between;gap:10px}.home-lost-item-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-lost-item-text small{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px}
.pet-lost-card-image{position:relative!important;height:0!important;min-height:0!important;padding-bottom:100%!important;overflow:hidden!important}.pet-lost-card-image>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important}.pet-lost-card-image>.pet-lost-no-photo{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}.pet-lost-card-body h2{display:-webkit-box!important;height:48px!important;min-height:48px!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}
.pet-lost-list-head .pet-lost-btn-primary{min-width:150px!important;color:#fff!important}.pet-lost-list-head .pet-lost-btn-primary:visited,.pet-lost-list-head .pet-lost-btn-primary:hover{color:#fff!important}
.pet-lost-card-meta{flex-wrap:wrap;justify-content:flex-start!important;gap:3px!important;font-size:13px;white-space:nowrap}.pet-lost-card-meta .pet-lost-meta-item{display:inline-flex;align-items:center;gap:3px}.pet-lost-card-meta .pet-lost-meta-item>span[aria-hidden="true"]{color:#98a2b3}
.pet-lost-form-card{padding:24px!important;background:#f8fbfd!important}.pet-lost-form-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:-24px -24px 22px;padding:24px 26px;border-bottom:1px solid #d8e7f2;border-radius:14px 14px 0 0;background:#fff}.pet-lost-form-head .inner-title{margin:5px 0 7px;font-size:28px}.pet-lost-form-head p{margin:0;color:#52687c}.pet-lost-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#1269a8;font-size:14px;font-weight:700}.pet-lost-form-head ul{display:flex;gap:9px;margin:0;padding:0;list-style:none}.pet-lost-form-head li{display:inline-flex;min-height:38px;align-items:center;gap:6px;padding:0 11px;border:1px solid #c7dce9;border-radius:999px;background:#f3f9fd;color:#33566f;font-weight:700}.pet-lost-form{grid-template-columns:minmax(0,1fr) 300px!important;gap:18px!important}.pet-lost-progress{height:auto!important;border:1px solid #d4e4ef!important;border-radius:12px!important;background:#fff!important}.pet-lost-progress span{display:grid!important;grid-template-columns:34px 1fr!important;grid-template-rows:auto auto!important;gap:1px 10px!important;padding:13px 16px!important;text-align:left!important;background:#fff!important;color:#17324d!important}.pet-lost-progress span+span{border-left:1px solid #d8e7f2}.pet-lost-progress b{grid-row:1/3;display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#1269a8;color:#fff}.pet-lost-progress em{align-self:end;font-style:normal;font-weight:800}.pet-lost-progress small{align-self:start;color:#667c8e;font-weight:500}.pet-lost-step{padding:22px!important;border-color:#d4e4ef!important;box-shadow:0 3px 12px rgba(23,50,77,.04)}.pet-lost-step-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px}.pet-lost-step-head>span{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:10px;background:#e5f3fc;color:#1269a8;font-weight:800}.pet-lost-step-head h2{margin:0 0 3px!important;font-size:21px!important}.pet-lost-step-head p{margin:0;color:#667c8e}.pet-lost-upload-zone{position:relative;display:grid!important;min-height:150px!important;place-items:center;align-content:center;gap:6px;padding:18px!important;border:2px dashed #86b4d3!important;border-radius:12px;background:#f3faff;color:#174f76;text-align:center;cursor:pointer;transition:border-color .18s,background-color .18s}.pet-lost-upload-zone:hover{border-color:#1269a8!important;background:#eaf6fd}.pet-lost-upload-zone input{position:absolute;width:1px!important;height:1px!important;min-height:1px!important;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.pet-lost-upload-zone svg{width:30px;height:30px}.pet-lost-upload-zone strong{font-size:17px}.pet-lost-upload-zone span{color:#667c8e;font-size:13px}.pet-lost-live-preview{position:sticky;top:18px;grid-row:3/7!important;padding:14px!important;background:#eef7fc!important}.pet-lost-live-preview header{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#33566f;font-weight:800}.pet-lost-live-preview header .pet-lost-status{font-size:12px}.pet-lost-live-preview>div{aspect-ratio:1/1}.pet-lost-live-preview>div>span{padding:10px;text-align:center}.pet-lost-live-preview>p{display:flex;align-items:center;gap:6px;margin:4px 0 0;padding-top:10px;border-top:1px solid #c8dce8;color:#52687c;font-size:13px}.pet-lost-form-actions{padding-top:4px;border-top:1px solid #d8e7f2}.pet-lost-form-actions .pet-lost-btn-primary{min-width:170px}
.pet-lost-live-preview{grid-row:2/6!important}
.pet-lost-fields>div>label{display:flex;min-height:24px;align-items:center;justify-content:space-between;gap:8px}.pet-lost-fields>div>label>span{padding:2px 7px;border-radius:999px;background:#fff0ed;color:#a33a2b;font-size:12px;font-weight:700}.pet-lost-fields label small,.pet-lost-fields legend small{color:#718598;font-size:12px;font-weight:500}.pet-field-species{order:1}.pet-field-breed{order:2}.pet-field-name{order:3}.pet-field-color{order:4}.pet-field-sex{order:5}.pet-field-chip{order:6}.pet-field-feature{order:7}.pet-field-date{order:8}.pet-field-city{order:9}.pet-field-area{order:10}.pet-field-place{order:11}.pet-field-sex{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px!important;border:1px solid #d8e7f2!important}.pet-field-sex legend{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 4px 7px;font-weight:700}.pet-field-sex label{position:relative;display:flex!important;min-height:44px;align-items:center;justify-content:center;border:1px solid #b8cedd;border-radius:8px;background:#fff;color:#33566f;cursor:pointer}.pet-field-sex input{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;opacity:0!important}.pet-field-sex label:has(input:checked){border-color:#1269a8;background:#1269a8;color:#fff}.pet-field-sex label:focus-within{outline:3px solid #f59e0b;outline-offset:2px}

.modern-inner .post-pet-lost .post-head{padding:14px 18px}.modern-inner .post-pet-lost .post-avatar img{width:54px!important;height:54px!important}.modern-inner .post-pet-lost .post-body{padding:20px}.modern-inner .post-pet-lost .pet-lost-detail{gap:16px}.modern-inner .post-pet-lost .pet-lost-detail-status{border:1px solid transparent;box-shadow:none}.modern-inner .post-pet-lost .pet-lost-detail-status.pet-lost-status-open{border-color:#e1bc72;background:#fff7e6;color:#754500}.modern-inner .post-pet-lost .pet-lost-detail-status.pet-lost-status-found{border-color:#9dd6b7;background:#effaf4;color:#185c39}.modern-inner .post-pet-lost .pet-lost-detail-status.pet-lost-status-closed{border-color:#cbd5df;background:#f4f6f8;color:#4a5968}.modern-inner .post-pet-lost .pet-lost-detail-main{display:grid;grid-template-columns:minmax(360px,3fr) minmax(320px,2fr);gap:22px;align-items:start}.modern-inner .post-pet-lost .pet-lost-detail-main-no-photo{grid-template-columns:1fr}.modern-inner .post-pet-lost .pet-lost-gallery{align-self:start;margin:0}.modern-inner .post-pet-lost .pet-lost-detail-summary{display:grid;gap:12px;padding:18px;border:1px solid #d8e7f2;border-radius:14px;background:#f8fbfd}.modern-inner .post-pet-lost .pet-lost-detail-summary h2{margin:0;color:#17324d;font-size:21px;line-height:1.4}.modern-inner .post-pet-lost .pet-lost-primary-actions{display:grid;grid-template-columns:1fr;gap:8px}.modern-inner .post-pet-lost .pet-lost-primary-actions .pet-lost-btn{width:100%;box-sizing:border-box}.modern-inner .post-pet-lost .pet-lost-primary-actions .pet-lost-btn-primary{color:#fff!important}.modern-inner .post-pet-lost .pet-lost-facts{display:grid;grid-template-columns:1fr;gap:0;margin:0;overflow:hidden;border:1px solid #d8e7f2;border-radius:10px;background:#fff}.modern-inner .post-pet-lost .pet-lost-facts .pet-lost-fact{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px;padding:10px 12px;border:0;border-bottom:1px solid #e4edf3;background:#fff}.modern-inner .post-pet-lost .pet-lost-facts .pet-lost-fact:last-child{border-bottom:0}.modern-inner .post-pet-lost .pet-lost-facts dt{color:#52687c;font-size:14px}.modern-inner .post-pet-lost .pet-lost-facts dd{min-width:0}.modern-inner .post-pet-lost .pet-lost-share{box-sizing:border-box;border:1px solid #d8e7f2}
.modern-inner .pet-lost-article-field{display:grid;gap:7px;margin-top:18px}.modern-inner .pet-lost-article-field label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#334e68;font-weight:700}.modern-inner .pet-lost-article-field small{color:#718598;font-weight:500}.modern-inner .pet-lost-article-field textarea{box-sizing:border-box;width:100%;min-height:150px;padding:11px;border:1px solid #9bb8cd;border-radius:8px;font:inherit;line-height:1.6;resize:vertical}.modern-inner .pet-lost-article-content{margin:22px 0;padding:22px;border:1px solid #d8e7f2;border-radius:14px;background:#fff}.modern-inner .pet-lost-article-content h2{margin:0 0 14px;color:#17324d;font-size:21px}.modern-inner .pet-lost-article-body{color:#253f54;line-height:1.85;white-space:normal}
.modern-inner .post-pet-lost .pet-lost-share{display:grid;grid-template-columns:auto repeat(3,minmax(112px,auto));justify-content:start;gap:10px}.modern-inner .post-pet-lost .pet-lost-share>span{display:inline-flex;align-items:center;gap:6px;font-weight:700}.modern-inner .post-pet-lost .pet-lost-share .pet-lost-btn{min-width:112px;box-sizing:border-box}
.modern-inner .pet-lost-admin-form{display:grid;gap:16px}.modern-inner .pet-lost-admin-toolbar{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;padding:14px 16px;border:1px solid #b8cede;border-radius:12px;background:#f3f9fd}.modern-inner .pet-lost-admin-select-all{display:inline-flex;min-height:44px;align-items:center;gap:8px;font-weight:700}.modern-inner .pet-lost-admin-select-all input,.modern-inner .pet-lost-admin-check input{width:20px;height:20px;margin:0;accent-color:#1269a8}.modern-inner .pet-lost-admin-action{display:grid;gap:5px;color:#334e68;font-weight:700}.modern-inner .pet-lost-admin-action select{min-width:170px;height:44px;padding:0 10px;border:1px solid #9bb8cd;border-radius:8px;background:#fff}.modern-inner .pet-lost-admin-links{display:flex;gap:12px;margin-left:auto}.modern-inner .pet-lost-admin-links a{display:inline-flex;min-height:44px;align-items:center;color:#1269a8;font-weight:700}.modern-inner .pet-lost-card{position:relative}.modern-inner .pet-lost-admin-check{position:absolute;top:8px;right:8px;z-index:3;display:grid;width:44px;height:44px;place-items:center;border:1px solid #a9c5da;border-radius:10px;background:rgba(255,255,255,.94);cursor:pointer;box-shadow:0 2px 8px rgba(23,50,77,.14)}.modern-inner .pet-lost-card.is-selected{border-color:#1269a8;box-shadow:0 0 0 3px rgba(18,105,168,.18)}
