/* 2026-07-18 マイページ/リマインダー非表示凍結の後方互換バックストップ。主経路はPHP/JS側で出力停止。 */
.pkn-nav-link[href*="/mypage"],.pkn-nav-link[href*="/reminders"],
.pkn-mm-link[href*="/mypage"],.pkn-mm-link[href*="/reminders"],
a[href$="/mypage/"].pkn-ft-link,a[href$="/reminders/"].pkn-ft-link,
.pkn-save-btn,.pkn-mobile-action-save,.pkn-action-reminder-link,.pkn-d-reminder-submit,
.pkn-oc-save,.pkn-mypage-card,.pkn-reminder-card,.pkn-hdr-bell{display:none!important}
/* 第2弾: 通知ベルだけは旧テンプレ/キャッシュ残存時も隠す。タグラインとログアウトは表示対象。 */
.pkn-hdr-iconbtn{display:none!important}
body.pkn-c-final{min-width:0;margin:0;color:var(--text);background:#fff;overflow-wrap:anywhere}
body.pkn-c-final .pkn-main{width:100%;max-width:none;min-height:70vh;padding:0;margin:0}
body.pkn-c-final .skip-link{position:fixed;z-index:1000;top:-100px;left:8px;padding:10px 14px;color:#fff;background:var(--deep-teal)}
body.pkn-c-final .skip-link:focus{top:8px}
body.pkn-c-final :focus-visible{outline:3px solid var(--focus);outline-offset:3px}
body.pkn-c-final .pkn-v2-trust{display:none}
body.pkn-c-final .pkn-disclosure-bar{min-height:44px;display:flex;align-items:center;justify-content:center;background:#fff8d7;border:0}
body.pkn-c-final .pkn-header{background:var(--brand-yellow);border:0;border-bottom:1px solid rgba(113,84,0,.14);box-shadow:none}
body.pkn-c-final .pkn-header-inner{width:min(1180px,calc(100% - 40px));max-width:none;min-height:76px;margin:auto;padding:0}
body.pkn-c-final .pkn-logo{min-height:48px;gap:11px;color:var(--deep-teal)}
body.pkn-c-final .pkn-logo-mark,body.pkn-c-final .pkn-logo-mark img{width:42px;height:42px}
body.pkn-c-final .pkn-logo-text{color:var(--deep-teal);font-size:1.18rem;font-weight:800}
body.pkn-c-final .pkn-logo-tag{color:rgba(7,63,68,.78);font-size:.62rem;font-weight:700}
body.pkn-c-final .pkn-nav{margin-left:auto}
body.pkn-c-final .pkn-nav-link{min-height:44px;color:var(--deep-teal);font-size:.82rem;font-weight:700}
body.pkn-c-final .pkn-nav-link:hover,body.pkn-c-final .pkn-nav-link.is-active{color:var(--deep-teal);background:transparent;text-decoration:underline}
body.pkn-c-final .pkn-nav-link-icon{display:none}
body.pkn-c-final .pkn-c-search{min-width:44px;justify-content:center}
body.pkn-c-final .pkn-footer{position:relative;margin-top:28px;padding:42px 0 12px;color:#d9e7e4;background:var(--deep-teal)}
body.pkn-c-final .pkn-footer-inner{width:min(1180px,calc(100% - 40px));max-width:none;margin:auto;padding:0}
body.pkn-c-final .pkn-footer-brand{color:#fff}
body.pkn-c-final .pkn-footer-text,body.pkn-c-final .pkn-footer-copy{color:#a8c0bc;font-size:.77rem}
body.pkn-c-final .pkn-legal-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 17px;background:var(--deep-teal);border:0}
body.pkn-c-final .pkn-legal-nav a{min-height:34px;display:inline-flex;align-items:center;color:#e6f1ef}
body.pkn-c-final .pkn-legal-nav>span{display:none}
body.pkn-c-final .pkn-history-toggle button,body.pkn-c-final .pkn-condition-tab{min-width:44px;min-height:44px}
body.pkn-c-final .pkn-detail-card-title{padding-left:13px;border-left:4px solid var(--brand-yellow);color:var(--deep-teal)}
body.pkn-c-final .pkn-save-sticky,body.pkn-c-final .pkn-mobile-action-sticky{display:none!important}
body.pkn-c-final .pkn-d-reminder,body.pkn-c-final .pkn-save-modal{display:none!important}
@media(max-width:768px){body.pkn-c-final .pkn-header-inner{width:calc(100% - 32px);min-height:68px;display:grid;grid-template-columns:44px 1fr 44px}}
@media(max-width:768px){body.pkn-c-final .pkn-mm-btn{width:44px;height:44px;min-width:44px;min-height:44px;display:grid;grid-column:1;grid-row:1}}
@media(max-width:768px){body.pkn-c-final .pkn-logo{grid-column:2;grid-row:1;justify-self:center}}
@media(max-width:768px){body.pkn-c-final .pkn-nav{grid-column:3;grid-row:1;margin:0}}
@media(max-width:768px){body.pkn-c-final .pkn-nav-link{display:none}body.pkn-c-final .pkn-c-search{display:inline-flex}}

/* Production contract bridge for the approved Yellow x Mint C markup. */
body.pkn-c-final .pkn-logo-mark{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
body.pkn-c-final .pkn-logo-mark img{display:block;object-fit:contain}
body.pkn-c-final .pkn-disclosure-bar-link{min-height:44px;display:inline-flex;align-items:center;margin-left:.55em;color:var(--deep-teal);font-weight:700}
body.pkn-c-final .pkn-footer::before{position:absolute;left:0;right:0;top:-28px;height:30px;border-bottom:5px solid var(--brand-yellow);background:radial-gradient(circle at 7% 100%,var(--brand-yellow) 0 6px,transparent 7px),radial-gradient(circle at 12% 88%,#ffe36f 0 4px,transparent 5px),radial-gradient(circle at 88% 100%,var(--brand-yellow) 0 8px,transparent 9px),radial-gradient(circle at 94% 82%,#ffe36f 0 5px,transparent 6px);content:"";pointer-events:none}

/* Offers */
#page-offers .pkn-mobile-filter{display:none}
#page-offers .pkn-v2-offers-head{padding:34px 0 28px}
#page-offers .pkn-v2-crumb{padding-top:0;margin-bottom:14px;color:var(--muted);font-size:.78rem}
#page-offers .pkn-v2-crumb a{color:var(--muted)}
#page-offers .pkn-v2-h1{margin:0;padding:0;border:0;color:var(--deep-teal);font-size:clamp(1.9rem,3.6vw,2.8rem);line-height:1.35}
#page-offers .pkn-v2-bar{display:none}
#page-offers .pkn-search-body{padding:42px 0;align-items:start}
#page-offers .filter-panel{display:block;padding:20px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(7,51,63,.045)}
#page-offers .filter-panel h2{display:flex;align-items:center;gap:8px;margin:0 0 16px;color:var(--deep-teal);font-size:1.15rem}
#page-offers .filter-panel h2::before{width:10px;height:10px;border-radius:3px;background:var(--brand-yellow);box-shadow:0 0 0 4px var(--brand-yellow-soft);content:""}
#page-offers .pkn-v2-side-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}
#page-offers .pkn-v2-side-search input{width:100%;min-height:44px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:9px;color:var(--text);background:#fff}
#page-offers .pkn-v2-side-search button{min-height:44px;padding:7px 13px;border:1px solid var(--deep-teal);border-radius:9px;color:#fff;background:var(--deep-teal);font-weight:800;cursor:pointer}
#page-offers .pkn-filter-sec{padding:16px 0;border-top:1px solid var(--border)}
#page-offers .pkn-filter-sec:first-of-type{margin-top:16px}
#page-offers .pkn-filter-label{margin-bottom:9px;color:var(--deep-teal);font-size:.82rem;font-weight:800}
#page-offers .pkn-filter-cats,#page-offers .pkn-feature-chips,#page-offers .pkn-diff-wrap,#page-offers .pkn-v2-side-sorts{display:flex;flex-wrap:wrap;gap:7px}
#page-offers .pkn-cat-side,#page-offers .pkn-diff-btn,#page-offers .pkn-sort-btn{min-height:44px;padding:6px 10px;border:1px solid var(--border-strong);border-radius:999px;color:var(--deep-teal);background:#fff;font-size:.78rem;cursor:pointer}
#page-offers .pkn-cat-side.is-active,#page-offers .pkn-diff-btn.is-active,#page-offers .pkn-sort-btn.is-active{border-color:var(--mint);background:var(--mint-soft);font-weight:800}
#page-offers .pkn-filter-item{min-height:38px;display:flex;align-items:center;gap:8px;color:var(--text);font-size:.82rem}
#page-offers .pkn-filter-item input{width:18px;height:18px;accent-color:var(--mint-deep)}
#page-offers .pkn-filter-check{display:none}
#page-offers .pkn-reward-filter input[type="range"]{width:100%;max-width:100%;margin-inline:0;box-sizing:border-box;accent-color:var(--mint-deep)}
#page-offers .pkn-reward-filter-row{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:.76rem}
#page-offers .pkn-results{min-width:0}
#page-offers .pkn-results-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px;padding:0 0 12px;border-bottom:1px solid var(--border)}
#page-offers .pkn-v2-count{color:var(--deep-teal);font-size:1rem}
#page-offers .pkn-v2-count .is-num{font-size:1.3rem}
#page-offers .pkn-v2-sort-cycle{min-height:44px;padding:7px 34px 7px 11px;border:1px solid var(--border-strong);border-radius:9px;color:var(--deep-teal);background:#fff;font-size:.82rem;cursor:pointer}
#page-offers .pkn-loading{padding:26px;border:1px solid var(--border);border-radius:12px;color:var(--muted);background:#fff}
#page-offers .pkn-pager button{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:9px;color:var(--deep-teal);background:#fff;cursor:pointer}
#page-offers .pkn-pager button.is-active{border-color:var(--brand-yellow-deep);background:var(--brand-yellow)}
#page-offers .pkn-offer-text-list{margin-top:0}

/* Detail */
#page-detail{width:100%}
#page-detail .pkn-detail-title{padding:15px 0 30px;background:#fff}
#page-detail .pkn-detail-title-inner,#page-detail .pkn-detail-body{width:min(var(--content),calc(100% - 40px));max-width:none;margin-inline:auto;padding-inline:0}
#page-detail .detail-overview{grid-template-columns:minmax(0,1fr) 240px}
#page-detail .pkn-detail-title-copy{min-width:0;order:1}
#page-detail .detail-image{order:2}
#page-detail .pkn-breadcrumb{margin:0 0 16px;padding:0;color:var(--muted);font-size:.78rem}
#page-detail .pkn-detail-h1{margin-top:12px;color:var(--deep-teal);font-size:clamp(1.9rem,2.8vw,2.25rem);line-height:1.3}
#page-detail .pkn-detail-desc,#page-detail .pkn-detail-offer-id{color:var(--muted)}
#page-detail .pkn-detail-image-label{color:var(--mint-deep);font-size:1.4rem;font-weight:900}
#page-detail .pkn-detail-body.detail-wrap{display:block;max-width:var(--content);padding-top:0}
#page-detail .pkn-detail-main{width:100%;max-width:920px;margin-inline:auto}
#page-detail .pkn-detail-aside{display:none!important}
#page-detail .pkn-detail-summary.detail-facts{display:grid;grid-template-columns:1.22fr repeat(2,minmax(0,1fr));margin:0 0 29px;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#fff}
#page-detail .pkn-detail-summary .pkn-ds-cell{min-width:0;min-height:88px;padding:12px 14px;border:0;border-left:1px solid var(--border);background:#fff}
#page-detail .pkn-detail-summary .pkn-ds-cell:first-child{border-left:0;background:var(--reward-soft)}
#page-detail .pkn-ds-label,#page-detail .pkn-ds-sub{color:var(--muted);font-size:0.75rem}
#page-detail .pkn-ds-value{display:inline-flex;align-items:baseline;flex-wrap:nowrap;max-width:100%;white-space:nowrap;color:var(--deep-teal);font-size:1.08rem;font-weight:850}
#page-detail .pkn-ds-unit{display:inline-block;flex:0 0 auto;white-space:nowrap}
#page-detail .pkn-ds-cell:first-child .pkn-ds-value{color:var(--reward);font-size:clamp(1.85rem,3vw,2.55rem);line-height:1.15}
#page-detail .pkn-detail-exchange-link,#page-detail .pkn-mobile-best-card,#page-detail .pkn-s1-verdict,#page-detail .pkn-v2-authorbox{display:none!important}
#page-detail .pkn-detail-card.detail-section{margin:0;padding:29px 0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}
#page-detail .pkn-detail-card-head{margin-bottom:16px}
#page-detail .pkn-detail-card-title,#page-detail .pkn-d-history-title{margin:0;padding-left:13px;border-left:4px solid var(--brand-yellow);color:var(--deep-teal);font-size:clamp(1.35rem,2.2vw,1.85rem)}
#page-detail .pkn-condition-tablist{display:flex;flex-wrap:wrap;gap:7px;overflow:visible;margin-bottom:16px;border-bottom:1px solid var(--border)}
#page-detail .pkn-condition-tab{min-width:44px;min-height:44px;flex:1 1 140px;padding:8px 10px;border:0;border-bottom:3px solid transparent;border-radius:0;color:var(--muted);background:none;font-weight:750;white-space:normal}
#page-detail .pkn-condition-tab.is-active{color:var(--mint-deep);border-bottom-color:var(--mint-deep);background:none}
#page-detail .pkn-condition-tab .pkn-chip{display:none}
#page-detail .pkn-condition-panel{padding:18px 20px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(7,51,63,.025)}
#page-detail .pkn-condition-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
#page-detail .pkn-condition-original{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);font-size:.9rem;line-height:1.85}
#page-detail .pkn-condition-source{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px 16px}
#page-detail .pkn-condition-source a{color:var(--mint-deep);font-weight:750}
#page-detail .pkn-condition-list{margin:0;padding-left:1.2rem}
#page-detail .pkn-condition-list li+li{margin-top:7px}
#page-detail .pkn-condition-check{color:var(--mint-deep);font-weight:900}
#page-detail .pkn-v2-acc:has(.novice-section){overflow:hidden;margin:0;padding:0;border:1px solid var(--border);border-radius:12px;background:#fff}
#page-detail .pkn-v2-acc:has(.novice-section)>.pkn-v2-acc-btn{width:100%;min-height:56px;padding:10px 16px;border:0;color:var(--deep-teal);background:var(--surface-soft);font-weight:850;text-align:left;cursor:pointer}
#page-detail .pkn-v2-acc:has(.novice-section) .novice-section{padding:18px;border:0}
#page-detail .pkn-cmp-pr-note{padding:12px 15px;border:1px solid var(--border);border-left:4px solid var(--mint);border-radius:8px;color:#456267;background:var(--surface-soft);font-size:.83rem}
#page-detail .pkn-cmp-row{display:grid;grid-template-columns:58px minmax(150px,1fr) 90px 150px minmax(270px,.95fr);gap:12px;align-items:center;padding:13px 15px;border:1px solid var(--border);border-top:0;border-radius:0;color:var(--text);background:#fff;text-decoration:none}
#page-detail .pkn-detail-card-head+.pkn-cmp-row,#page-detail .pkn-cmp-pr-note+.pkn-cmp-row{margin-top:15px;border-top:1px solid var(--border);border-radius:12px 12px 0 0;background:#fffdf5}
#page-detail .pkn-cmp-row:last-child{border-radius:0 0 12px 12px}
#page-detail .pkn-cmp-rank-badge{width:36px;height:42px;display:grid;place-items:center;color:var(--muted);font-weight:850;background-position:center;background-repeat:no-repeat;background-size:contain}
#page-detail .pkn-cmp-row.pkn-rank-1 .pkn-cmp-rank-badge{color:transparent;background-image:url("../img/c-final/rank-1.svg")}
#page-detail .pkn-cmp-row.pkn-rank-2 .pkn-cmp-rank-badge{color:transparent;background-image:url("../img/c-final/rank-2.svg")}
#page-detail .pkn-cmp-row.pkn-rank-3 .pkn-cmp-rank-badge{color:transparent;background-image:url("../img/c-final/rank-3.svg")}
#page-detail .pkn-cmp-site{min-width:0;display:flex;align-items:center;gap:9px}
#page-detail .pkn-cmp-site-name{color:var(--deep-teal);font-weight:850}
#page-detail .pkn-cmp-site-cond,#page-detail .pkn-cmp-diff-col{color:var(--muted);font-size:.72rem}
#page-detail .pkn-cmp-val{text-align:right}
#page-detail .pkn-cmp-val .pkn-money{color:var(--reward);font-size:1.16rem!important;font-weight:850;white-space:nowrap}
#page-detail .pkn-cmp-action{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
#page-detail .pkn-cmp-action.is-single{grid-template-columns:1fr}
#page-detail .pkn-cmp-dual-cta{width:100%;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:7px 8px;border:1px solid var(--deep-teal);border-radius:8px;color:var(--deep-teal);background:#fff;text-align:center;text-decoration:none;font-size:0.75rem;font-weight:750;line-height:1.25}
#page-detail .pkn-cmp-dual-cta.is-registration{color:var(--deep-teal);background:#fff;border-color:var(--deep-teal)}
#page-detail .pkn-cmp-dual-cta.is-registration span,#page-detail .pkn-cmp-dual-cta.is-registration strong,#page-detail .pkn-cmp-dual-cta.is-registration:visited span,#page-detail .pkn-cmp-dual-cta.is-registration:visited strong{color:inherit}
#page-detail .pkn-cmp-dual-cta:hover{background:var(--mint-soft)}
#page-detail .pkn-cmp-dual-cta span{font-size:0.75rem;opacity:.78}
#page-detail .pkn-cmp-dual-cta strong{font-size:0.75rem;text-align:center}
#page-detail .pkn-condition-gate-status{margin:0 0 24px;padding:17px 19px;border:1px solid #e6c473;border-radius:12px;color:#66501b;background:#fff9e8}
#page-detail .pkn-condition-gate-status h2{margin:0 0 7px;color:var(--deep-teal);font-size:1.15rem}
#page-detail .pkn-condition-gate-status p{margin:0 0 13px;line-height:1.75}
#page-detail .pkn-condition-gate-status.is-partial{font-size:.82rem}
#page-detail .pkn-d-history-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}
#page-detail .pkn-history-chart-shell{overflow:hidden}
#page-detail .pkn-related-offer{min-height:58px;border-color:var(--border);color:var(--text)}

/* Point exchange */
#page-exchange>.pkn-exchange-v2.content{width:min(var(--content),calc(100% - 40px));max-width:none;margin-inline:auto;padding:0}
#page-exchange .intro-block{padding:34px 0 28px}
#page-exchange .pkn-v2-crumb{margin-bottom:14px;color:var(--muted);font-size:.78rem}
#page-exchange .pkn-exv2-h1{margin:0;color:var(--deep-teal);font-size:clamp(1.9rem,3.6vw,2.8rem)}
#page-exchange .pkn-exv2-layout.exchange-layout{margin:0;padding:42px 0;background:linear-gradient(180deg,#f3fbf8 0%,#fff 100%)}
#page-exchange .pkn-exv2-selwrap{min-width:0}
#page-exchange .exchange-form-card{display:block}
#page-exchange .exchange-form-card h2{margin:0 0 18px}
#page-exchange .pkn-exv2-pick{width:100%;min-height:68px;display:block;margin-top:16px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:10px;color:var(--deep-teal);background:#fff;text-align:left;cursor:pointer}
#page-exchange .pkn-exv2-pick-cap{display:block;margin-bottom:4px;color:var(--muted);font-size:.76rem;font-weight:750}
#page-exchange .pkn-exv2-pick-val{display:flex;align-items:center;gap:8px}
#page-exchange .pkn-exv2-chev{margin-left:auto}
#page-exchange .pkn-exv2-amount{margin-top:16px}
#page-exchange .pkn-exv2-swapline{text-align:center}
#page-exchange .pkn-exv2-swap{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--mint-deep);font-size:1.2rem;text-decoration:none}
#page-exchange .pkn-exv2-submit{width:100%;margin-top:18px}
#page-exchange .pkn-exv2-about{display:none}
#page-exchange .exchange-results{min-width:0}
#page-exchange .pkn-exv2-reshead{padding-bottom:12px}
#page-exchange .pkn-exv2-reshead h2{font-size:1.25rem}
#page-exchange .results-summary{margin-top:5px;margin-bottom:0}
#page-exchange .sort-control{display:flex;align-items:center;gap:8px}
#page-exchange .sort-control select{min-height:44px;padding:7px 34px 7px 10px;border:1px solid var(--border-strong);border-radius:9px;color:var(--deep-teal);background:#fff}
#page-exchange .route-card{overflow:hidden;padding:0}
#page-exchange .route-card>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 18px;padding:22px;cursor:pointer;list-style:none}
#page-exchange .route-card>summary::-webkit-details-marker{display:none}
#page-exchange .pkn-exv2-card-head{grid-column:1/-1;display:flex;gap:7px}
#page-exchange .pkn-exv2-card-route{color:var(--deep-teal);font-size:1.05rem;font-weight:850}
#page-exchange .pkn-exv2-card-yield{display:flex;align-items:baseline;gap:7px;justify-self:end}
#page-exchange .pkn-exv2-card-yield b{color:var(--reward);font-size:1.55rem}
#page-exchange .pkn-exv2-card-toggle{grid-column:1/-1;color:var(--muted);font-size:.76rem}
#page-exchange .pkn-exv2-card-body{padding:0 22px 22px}
#page-exchange .route-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 14px}
#page-exchange .route-facts div{min-height:68px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#fff}
#page-exchange .route-facts dt{color:var(--muted);font-size:0.75rem}
#page-exchange .route-facts dd{margin:3px 0 0;color:var(--deep-teal);font-weight:800}
#page-exchange .route-step-list{border-top:1px solid var(--border)}
#page-exchange .route-step{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);gap:16px;padding:16px 0;border-bottom:1px solid var(--border)}
#page-exchange .route-step-name{color:var(--deep-teal);font-weight:800}
#page-exchange .route-step-detail{color:var(--muted);font-size:.8rem}
#page-exchange .pkn-exv2-notebox{margin-top:12px;padding:12px;border-radius:9px;color:var(--warning);background:var(--warning-soft)}
#page-exchange .pkn-exv2-src{margin-top:12px;color:var(--muted);font-size:.78rem}
#page-exchange .pkn-exv2-src a{display:inline-block;margin-right:8px;color:var(--mint-deep)}
#page-exchange .pkn-v2-beta{margin:16px 0;border:1px solid var(--border);border-radius:12px;overflow:hidden}
#page-exchange .pkn-v2-beta>summary{min-height:54px;padding:10px 16px;color:var(--deep-teal);background:var(--surface-soft);cursor:pointer}
#page-exchange .pkn-v2-beta-body{padding:16px}

@media(max-width:959px){
 #page-detail .pkn-detail-title-inner,#page-detail .pkn-detail-body,#page-exchange>.pkn-exchange-v2.content{width:min(var(--content),calc(100% - 32px))}
 #page-offers .pkn-search-body{grid-template-columns:1fr}
 #page-offers .filter-panel{position:static}
 #page-exchange .pkn-exv2-layout.exchange-layout{grid-template-columns:1fr}
}
@media(max-width:767px){
 #page-offers .pkn-mobile-filter{width:calc(100% - 32px);display:block;margin:0 auto 4px}
 #page-offers .pkn-mobile-filter-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 15px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(7,51,63,.04)}
 #page-offers .pkn-mobile-filter-current{min-width:0;display:flex;flex-direction:column;gap:2px}
 #page-offers .pkn-mobile-filter-current>span{color:var(--muted);font-size:0.75rem;font-weight:750}
 #page-offers .pkn-mobile-filter-current>strong{min-width:0;color:var(--deep-teal);font-size:.8rem;line-height:1.45;overflow-wrap:anywhere}
 #page-offers .pkn-mobile-filter-toggle{min-height:44px;padding:7px 12px;border:1px solid var(--deep-teal);border-radius:9px;color:var(--deep-teal);background:#fff;font-size:.77rem;font-weight:800;cursor:pointer}
 #page-offers .pkn-mobile-filter-toggle[aria-expanded="true"]{color:#fff;background:var(--deep-teal)}
 #page-offers .pkn-sp-filter-panel{margin-top:10px;padding:4px 15px 15px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(7,51,63,.05)}
 #page-offers .pkn-sp-filter-panel[hidden]{display:none!important}
 #page-offers .pkn-mobile-filter-group,#page-offers .pkn-sp-filter-row{padding:15px 0;border-bottom:1px solid var(--border)}
 #page-offers .pkn-sp-filter-row:last-child{padding-bottom:0;border-bottom:0}
 #page-offers .pkn-sp-filter-title{margin-bottom:9px;color:var(--deep-teal);font-size:.8rem;font-weight:850}
 #page-offers .pkn-search-sp{display:block!important;margin:0;padding:0}
 #page-offers .pkn-search-sp-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;position:relative}
 #page-offers .pkn-search-sp-form .pkn-inline-search-icon{display:none}
 #page-offers .pkn-search-sp-input,#page-offers .pkn-search-sp-btn{min-height:44px}
 #page-offers .pkn-search-sp-input{min-width:0;width:100%;padding:8px 10px;border:1px solid var(--border-strong);border-radius:9px}
 #page-offers .pkn-search-sp-btn{padding:7px 14px;border:1px solid var(--deep-teal);border-radius:9px;color:#fff;background:var(--deep-teal);font-weight:800}
 #page-offers .pkn-cat-wrap-sp,#page-offers .pkn-feature-chips,#page-offers .pkn-diff-wrap-sp{display:flex!important;flex-wrap:wrap;gap:7px;overflow:visible}
 #page-offers .pkn-chip-btn,#page-offers .pkn-diff-btn{min-height:44px;padding:7px 11px;border:1px solid var(--border-strong);border-radius:999px;color:var(--deep-teal);background:#fff;font-size:.75rem;line-height:1.35;white-space:normal}
 #page-offers .pkn-chip-btn.is-active,#page-offers .pkn-diff-btn.is-active{border-color:var(--mint-deep);background:var(--mint-soft);font-weight:800}
 #page-offers .pkn-diff-label-row-sp{display:flex!important;align-items:center;justify-content:space-between}
 #page-offers .pkn-diff-guide-sp{display:block!important}
 #page-offers .pkn-diff-guide-sp p{margin:7px 0 0;color:var(--muted);font-size:0.75rem}
 #page-offers .pkn-sp-site-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px}
 #page-offers .pkn-sp-filter-item{min-height:44px}
 #page-offers .pkn-search-body{padding:22px 0 34px}
 #page-offers .filter-panel{display:none!important}
 #page-offers .pkn-results-bar{align-items:center;flex-direction:row;flex-wrap:wrap}
 #page-offers .pkn-v2-sort-cycle{margin-left:auto}
 #page-offers .pkn-oc-stickybar{display:none!important}
 #page-detail .pkn-detail-title{padding-bottom:25px}
 #page-detail .detail-overview{grid-template-columns:1fr;text-align:center}
 #page-detail .pkn-detail-title-copy{display:contents}
 #page-detail .pkn-breadcrumb{order:0;text-align:left}
 #page-detail .pkn-detail-h1{order:1}
 #page-detail .detail-tags{order:2;justify-content:center}
 #page-detail .detail-image{order:3;width:min(220px,82vw);justify-self:center;margin-top:17px}
 #page-detail .pkn-detail-desc,#page-detail .pkn-detail-offer-id,#page-detail .pkn-staple-reason,#page-detail .pkn-diff-summary{order:4}
 #page-detail .pkn-detail-main{max-width:none}
 #page-detail .pkn-detail-card-title,#page-detail .pkn-d-history-title{padding-left:10px;border-left-width:3px;text-align:left;font-size:1.1875rem}
 #page-detail .pkn-condition-tablist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;overflow:visible;border-bottom:0}
 #page-detail .pkn-condition-tab,#page-detail .pkn-history-toggle button{width:100%;min-width:0;min-height:44px;padding:8px;border:1px solid var(--border);border-radius:8px;white-space:normal}
 #page-detail .pkn-condition-tab.is-active,#page-detail .pkn-history-toggle button[aria-pressed="true"]{border-color:var(--mint-deep);background:var(--surface-soft)}
 #page-detail .pkn-d-history-head{display:block}
 #page-detail .pkn-history-toggle{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;overflow:visible;margin-top:14px;border-bottom:0}
 #page-detail .pkn-history-toggle button{overflow-wrap:anywhere;text-overflow:clip}
 #page-detail .pkn-condition-panel{padding:16px}
 #page-detail .pkn-condition-source{align-items:flex-start;flex-direction:column}
 #page-detail #pkn-site-comparison{padding-block:24px}
 #page-detail #pkn-site-comparison .pkn-detail-card-head{margin-bottom:12px}
 #page-detail #pkn-site-comparison .pkn-cmp-pr-note{padding:10px 12px;font-size:.75rem;line-height:1.55}
 #page-detail #pkn-site-comparison .pkn-cmp-pr-note+.pkn-cmp-row{margin-top:10px}
 #page-detail .pkn-cmp-row{grid-template-columns:26px minmax(0,1fr) minmax(72px,auto);gap:4px 7px;padding:8px 9px}
 #page-detail .pkn-cmp-rank-badge{width:24px;height:24px;font-size:0.75rem}
 #page-detail .pkn-cmp-site{grid-column:2;gap:7px}
 #page-detail .pkn-cmp-site-name{font-size:.82rem;line-height:1.35}
 #page-detail .pkn-cmp-site-cond{font-size:0.75rem;line-height:1.35}
 #page-detail .pkn-cmp-diff-col{display:block;grid-column:3;grid-row:1;align-self:end;justify-self:end;color:var(--muted);font-size:0.6875rem;line-height:1.2;white-space:nowrap}
 #page-detail .pkn-cmp-diff-col.is-best{color:var(--mint-deep)}
 #page-detail .pkn-cmp-val{grid-column:3;grid-row:1;align-self:start;text-align:right}
 #page-detail .pkn-cmp-val .pkn-money{font-size:1.125rem!important;line-height:1.25}
 #page-detail .pkn-cmp-action{grid-column:2/-1;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 #page-detail .pkn-cmp-dual-cta{min-height:44px;gap:1px;padding:4px 5px;border-radius:7px;font-size:0.75rem;line-height:1.18}
 #page-detail .pkn-cmp-dual-cta span{font-size:0.75rem}
 #page-detail .pkn-cmp-dual-cta strong{font-size:0.75rem;line-height:1.18}
 #page-detail .pkn-sec-meta{display:none}
 #page-exchange .intro-block{padding:25px 0 22px}
 #page-exchange .pkn-exv2-layout.exchange-layout{padding:34px 0}
 #page-exchange .pkn-exv2-reshead{align-items:flex-start;flex-direction:column}
 #page-exchange .sort-control{width:100%;justify-content:space-between}
 #page-exchange .route-card>summary{grid-template-columns:1fr;padding:18px}
 #page-exchange .pkn-exv2-card-yield{justify-self:start}
 #page-exchange .pkn-exv2-card-body{padding:0 18px 18px}
 #page-exchange .route-facts{grid-template-columns:1fr}
 #page-exchange .route-step{grid-template-columns:1fr;gap:5px}
}
@media(max-width:767px){
 #page-detail .pkn-detail-summary.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 #page-detail .pkn-detail-summary .pkn-ds-cell{border-top:1px solid var(--border)}
 #page-detail .pkn-detail-summary .pkn-ds-cell:first-child{grid-column:1/-1;border-top:0;border-left:0}
 #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(2){border-left:0}
 #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(3){border-left:1px solid var(--border)}
}
@media(max-width:389px){
 #page-detail .pkn-detail-h1{font-size:1.65rem;line-height:1.35;line-break:strict;overflow-wrap:normal;word-break:normal;text-wrap:balance}
 #page-detail .pkn-detail-title-inner,#page-detail .pkn-detail-body,#page-exchange>.pkn-exchange-v2.content{width:calc(100% - 32px)}
 #page-detail .pkn-cmp-row{grid-template-columns:24px minmax(0,1fr) minmax(68px,auto);gap-inline:6px;padding-inline:7px}
 #page-detail .pkn-cmp-rank-badge{width:24px;height:24px}
 #page-detail .pkn-cmp-action{grid-template-columns:repeat(2,minmax(0,1fr))}
 #page-detail .pkn-cmp-action.is-single{grid-template-columns:1fr}
}

@media(max-width:359px){
 #page-detail .pkn-detail-summary.detail-facts{grid-template-columns:1fr}
 #page-detail .pkn-detail-summary .pkn-ds-cell{border-left:0}
 #page-detail .pkn-detail-summary .pkn-ds-cell:first-child{grid-column:auto}
}

/* Full interactive-target audit: every visible target is at least 44 CSS px. */
body.pkn-c-final .skip-link,
body.pkn-c-final .pkn-disclosure-bar-link,
body.pkn-c-final .footer-links a,
body.pkn-c-final .breadcrumb a,
body.pkn-c-final .pkn-breadcrumb a,
body.pkn-c-final .pkn-v2-crumb a,
body.pkn-c-final .pkn-sec-link,
body.pkn-c-final .pkn-condition-source a,
body.pkn-c-final #page-exchange .pkn-exv2-src a{
 min-width:44px;
 min-height:44px;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 box-sizing:border-box;
}
body.pkn-c-final .pkn-offer-text-group:not([open])>.pkn-offer-text-links{display:none}
body.pkn-c-final .pkn-offer-text-group>summary{min-height:44px;box-sizing:border-box}
body.pkn-c-final .pkn-offer-text-links a{
 min-width:44px;
 min-height:44px;
 display:inline-flex;
 align-items:center;
 box-sizing:border-box;
}
body.pkn-c-final #page-offers .pkn-filter-item,
body.pkn-c-final #page-offers .pkn-diff-help-btn,
body.pkn-c-final #page-offers input[type="range"]{
 min-width:44px;
 min-height:44px;
 box-sizing:border-box;
}

/* --------------------------------------------------------------------------
 * Confirmed reference fidelity pass (2026-07-23)
 * Scope is deliberately limited to Offers, Offer detail and Point exchange.
 * Home and its shared primary stylesheet remain untouched.
 * ----------------------------------------------------------------------- */

/* Reference mobile header: brand left, search then menu right. */
@media(max-width:767px){
 body.pkn-c-final:has(#page-offers) .pkn-header-inner,
 body.pkn-c-final:has(#page-detail) .pkn-header-inner,
 body.pkn-c-final:has(#page-exchange) .pkn-header-inner{
  grid-template-columns:minmax(0,1fr) 44px 44px;
  gap:4px;
 }
 body.pkn-c-final:has(#page-offers) .pkn-logo,
 body.pkn-c-final:has(#page-detail) .pkn-logo,
 body.pkn-c-final:has(#page-exchange) .pkn-logo{
  grid-column:1;
  justify-self:start;
 }
 body.pkn-c-final:has(#page-offers) .pkn-nav,
 body.pkn-c-final:has(#page-detail) .pkn-nav,
 body.pkn-c-final:has(#page-exchange) .pkn-nav{
  grid-column:2;
 }
 body.pkn-c-final:has(#page-offers) .pkn-mm-btn,
 body.pkn-c-final:has(#page-detail) .pkn-mm-btn,
 body.pkn-c-final:has(#page-exchange) .pkn-mm-btn{
  grid-column:3;
 }
 body.pkn-c-final:has(#page-detail) .pkn-logo-mark,
 body.pkn-c-final:has(#page-detail) .pkn-logo-mark img,
 body.pkn-c-final:has(#page-exchange) .pkn-logo-mark,
 body.pkn-c-final:has(#page-exchange) .pkn-logo-mark img{
  width:34px;
  height:34px;
 }
 body.pkn-c-final:has(#page-detail) .pkn-logo-text,
 body.pkn-c-final:has(#page-exchange) .pkn-logo-text{font-size:1rem}
 body.pkn-c-final:has(#page-offers) .pkn-logo{
  min-height:44px;
  align-items:flex-start;
  gap:8px;
  padding-top:7px;
  box-sizing:border-box;
 }
 body.pkn-c-final:has(#page-offers) .pkn-logo-mark,
 body.pkn-c-final:has(#page-offers) .pkn-logo-mark img{
  width:24px;
  height:16px;
 }
 body.pkn-c-final:has(#page-offers) .pkn-logo>.pkn-logo-mark{
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:50%;
  color:#fff;
  background:#087454;
 }
 body.pkn-c-final:has(#page-offers) .pkn-logo>.pkn-logo-mark img{position:absolute;inset:0;opacity:0}
 body.pkn-c-final:has(#page-offers) .pkn-logo>.pkn-logo-mark::after{
  position:relative;
  content:"P";
  font-family:Arial,sans-serif;
  font-size:0.75rem;
  font-weight:900;
  line-height:1;
 }
 body.pkn-c-final:has(#page-offers) .pkn-logo-text{color:#087454;font-size:.9375rem}
 body.pkn-c-final:has(#page-offers) .pkn-mm-btn{
  border:0;
  border-radius:0;
  color:#094246;
  background:transparent;
  box-shadow:none;
 }
 body.pkn-c-final:has(#page-offers) .pkn-c-search svg{transform:translateX(19px) scaleX(1.25)}
 body.pkn-c-final:has(#page-offers) .pkn-mm-btn>span{
  display:inline-block;
  transform:translate(10px,-7px) scaleY(.65);
  transform-origin:center;
 }
 body.pkn-c-final:has(#page-offers) .pkn-logo-tag,
 body.pkn-c-final:has(#page-detail) .pkn-logo-tag,
 body.pkn-c-final:has(#page-exchange) .pkn-logo-tag{display:none}
}

/* ===== Offers ============================================================ */
body.pkn-c-final #page-offers{
 --vf-green:#087454;
 --vf-green-dark:#094246;
 --vf-red:#d7192d;
 --vf-line:#e2e9e7;
 --vf-muted:#66737b;
 padding-bottom:0;
}
body.pkn-c-final #page-offers .pkn-v2-offers-head{padding:12px 0 14px}
body.pkn-c-final #page-offers .pkn-v2-crumb{margin-bottom:4px;font-size:0.75rem;line-height:1.35}
body.pkn-c-final #page-offers .pkn-v2-h1{font-size:clamp(1.35rem,2.8vw,1.9rem);line-height:1.3}
body.pkn-c-final #page-offers .intro-meta{gap:4px 10px;margin-top:5px;color:var(--vf-muted);font-size:0.75rem}
body.pkn-c-final #page-offers .intro-meta>span{
 min-height:0;
 padding:0;
 border:0;
 background:transparent;
 font-size:inherit;
 line-height:1.35;
}
body.pkn-c-final #page-offers .pkn-search-body{gap:22px;padding:24px 0 30px}
body.pkn-c-final #page-offers .offer-list{gap:10px}
body.pkn-c-final #page-offers article.offer-card{
 overflow:hidden;
 border:1px solid var(--vf-line);
 border-radius:8px;
 background:#fff;
 box-shadow:0 1px 5px rgba(7,51,63,.045);
}
body.pkn-c-final #page-offers article.offer-card>a.pkn-oc.pkn-offer{
 min-width:0;
 border:0;
 border-radius:0;
 color:var(--text);
 background:#fff;
 box-shadow:none;
}
body.pkn-c-final #page-offers article.offer-card .offer-image{
 overflow:hidden;
 border:1px solid #e1e8e7;
 border-radius:6px;
 background:#fff;
}
body.pkn-c-final #page-offers article.offer-card .offer-image>.pkn-offer-media,
body.pkn-c-final #page-offers article.offer-card .offer-image>.pkn-offer-media>img{
 width:100%;
 height:100%;
 max-width:none;
 padding:0;
 border:0;
 border-radius:0;
 object-fit:contain;
}
body.pkn-c-final #page-offers .pkn-pager{
 width:min(277px,100%);
 max-width:277px;
 justify-content:center;
 flex-wrap:nowrap;
 gap:2px;
 margin:6px auto 0;
 padding:0;
 overflow-x:auto;
 scrollbar-width:none;
}
body.pkn-c-final #page-offers .pkn-pager::-webkit-scrollbar{display:none}
body.pkn-c-final #page-offers .pkn-pager>button.pkn-pager-btn{
 width:44px;
 min-width:44px;
 height:44px;
 min-height:44px;
 flex:0 0 44px;
 padding:0;
 border-radius:7px;
 font-size:.75rem;
}
body.pkn-c-final #page-offers .pkn-pager>button.pkn-pager-btn.is-active{
 color:#fff;
 border-color:var(--vf-green);
 background:var(--vf-green);
}
body.pkn-c-final #page-offers .pkn-pager>.pkn-pager-gap{
 width:14px;
 min-width:14px;
 height:44px;
 display:grid;
 place-items:center;
}
body.pkn-c-final #page-offers .pkn-pager>button:first-child:disabled,
body.pkn-c-final #page-offers .pkn-pager>button:last-child:disabled{display:none}

@media(min-width:769px){
 body.pkn-c-final #page-offers article.offer-card>a.pkn-oc.pkn-offer{
  grid-template-columns:144px minmax(0,1fr) minmax(230px,260px);
  gap:16px;
  min-height:150px;
  padding:16px 18px;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-image{
  width:144px;
  height:72px;
  aspect-ratio:auto;
  align-self:center;
 }
}

@media(max-width:767px){
 body.pkn-c-final #page-offers .pkn-v2-offers-head{width:calc(100% - 32px);padding:0}
 body.pkn-c-final #page-offers .pkn-v2-crumb{height:44px;display:flex;align-items:flex-start;margin:0;font-size:0.75rem;line-height:10px}
 body.pkn-c-final #page-offers .pkn-v2-crumb>a{align-items:flex-start;justify-content:flex-start;padding-top:6px;font-size:inherit;line-height:inherit}
 body.pkn-c-final #page-offers .pkn-v2-h1{font-size:.8125rem;line-height:17px}
 body.pkn-c-final #page-offers .intro-meta{display:flex;flex-wrap:nowrap;gap:7px;margin:0;color:var(--vf-muted);font-size:0.75rem;line-height:9px;white-space:nowrap}
 body.pkn-c-final #page-offers .intro-meta>span{display:inline;flex:0 0 auto}
 body.pkn-c-final #page-offers .pkn-mobile-filter{margin-bottom:0}
 body.pkn-c-final #page-offers .pkn-mobile-filter-summary{
  height:44px;
  min-height:44px;
  padding:0 7px 0 12px;
  border-color:#dee8e6;
  border-radius:7px;
  background:#f5faf9;
  box-shadow:0 1px 4px rgba(7,51,63,.04);
 }
 body.pkn-c-final #page-offers .pkn-mobile-filter-current>span{font-size:0.75rem;line-height:10px}
 body.pkn-c-final #page-offers .pkn-mobile-filter-current>strong{font-size:0.75rem;line-height:11px}
 body.pkn-c-final #page-offers .pkn-mobile-filter-toggle{min-height:44px;padding:4px 7px;border:0;color:var(--vf-green-dark);background:transparent;font-size:0.75rem;line-height:12px}
 body.pkn-c-final #page-offers .pkn-search-body{width:calc(100% - 32px);gap:0;padding:0}
 body.pkn-c-final #page-offers .pkn-results{width:100%;padding:0}
 body.pkn-c-final #page-offers .pkn-results-bar{width:100%;height:44px;margin:0 0 6px;padding:0;border-bottom:1px solid var(--vf-line)}
 body.pkn-c-final #page-offers .pkn-v2-count{font-size:0.75rem;line-height:11px}
 body.pkn-c-final #page-offers .pkn-v2-count .is-num{font-size:0.75rem}
 body.pkn-c-final #page-offers .pkn-v2-sort-cycle{min-height:44px;padding:4px 25px 4px 8px;border-radius:6px;font-size:0.75rem;line-height:12px}
 body.pkn-c-final #page-offers .offer-list{gap:8px}
 body.pkn-c-final #page-offers article.offer-card>a.pkn-oc.pkn-offer{
  position:relative;
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  grid-template-areas:
   "category category"
   "title title"
   "image action"
   "image reward"
   "image sites"
   "badges sites";
  column-gap:44px;
  row-gap:2px;
  min-height:156px;
  padding:3px 11px 7px;
  align-content:start;
  align-items:start;
 }
 body.pkn-c-final #page-offers article.offer-card>a.pkn-oc.pkn-offer::before{
  grid-area:category;
  width:fit-content;
  max-width:100%;
  min-height:14px;
  display:inline-flex;
  align-items:center;
  padding:1px 5px;
  border:1px solid #BFD4CE;
  border-radius:4px;
  color:#073F44;
  background:#E6F7F0;
  content:attr(data-offer-category);
  font-size:0.75rem;
  font-weight:800;
  line-height:10px;
  overflow-wrap:anywhere;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-main{display:contents}
 body.pkn-c-final #page-offers article.offer-card .offer-main>h3{
  grid-area:title;
  min-width:0;
  margin:0;
  color:var(--vf-green-dark);
  font-size:.75rem;
  line-height:16px;
  overflow-wrap:anywhere;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-main>.offer-action{
  grid-area:action;
  min-width:0;
  align-self:start;
  margin:0;
  color:var(--text);
  font-size:0.75rem;
  font-weight:700;
  line-height:12px;
  overflow-wrap:anywhere;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-main>.reward-value{
  grid-area:reward;
  min-width:0;
  margin:0;
  color:var(--vf-red);
  font-size:1.0625rem;
  font-weight:900;
  line-height:21px;
  letter-spacing:-.02em;
  overflow-wrap:anywhere;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-image{
  grid-area:image;
  width:112px;
  height:55px;
  aspect-ratio:auto;
  align-self:start;
 }
 body.pkn-c-final #page-offers article.offer-card .status-line{
  grid-area:badges;
  min-width:0;
  min-height:16px;
  gap:4px;
  margin:0;
 }
 body.pkn-c-final #page-offers article.offer-card .status-line>.badge{
  min-height:16px;
  padding:1px 5px;
  font-size:0.75rem;
  line-height:10px;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-sites{
  grid-area:sites;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);
  gap:2px 5px;
  align-content:start;
  padding:0;
  border:0;
 }
 body.pkn-c-final #page-offers article.offer-card .site-ranking{
  grid-column:1/-1;
  margin:0 0 2px;
  padding:0;
 }
 body.pkn-c-final #page-offers article.offer-card .site-ranking>li{
  display:grid;
  grid-template-columns:16px minmax(0,1fr) auto;
  gap:4px;
  align-items:center;
  min-height:14px;
  padding:0;
  border:0;
  color:var(--vf-green-dark);
  font-size:0.75rem;
  line-height:10px;
 }
 body.pkn-c-final #page-offers article.offer-card .site-ranking>li::before{
  width:14px;
  height:14px;
  display:grid;
  place-items:center;
  border-radius:4px;
  font-size:0.75rem;
 }
 body.pkn-c-final #page-offers article.offer-card .site-ranking>li>span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
 }
 body.pkn-c-final #page-offers article.offer-card .site-ranking>li>strong{white-space:nowrap}
 body.pkn-c-final #page-offers article.offer-card .offer-sites>.meta{
  min-width:0;
  margin:0;
  color:var(--vf-muted);
  font-size:0.75rem;
  line-height:10px;
  white-space:nowrap;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-cta-label{
  grid-area:auto;
  grid-column:1/-1;
  min-height:12px;
  margin:0;
  color:var(--vf-green);
  font-size:0.75rem;
  font-weight:750;
  line-height:10px;
  text-align:right;
 }
}

@media(max-width:359px){
 body.pkn-c-final #page-offers article.offer-card>a.pkn-oc.pkn-offer{
  grid-template-columns:96px minmax(0,1fr);
  column-gap:24px;
  min-height:156px;
  padding-inline:9px;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-image{width:96px;height:48px}
 body.pkn-c-final #page-offers article.offer-card .offer-main>h3{font-size:0.75rem;line-height:15px}
 body.pkn-c-final #page-offers article.offer-card .offer-main>.offer-action,
 body.pkn-c-final #page-offers article.offer-card .site-ranking>li{font-size:0.75rem}
 body.pkn-c-final #page-offers article.offer-card .offer-main>.reward-value{font-size:.92rem}
 body.pkn-c-final #page-offers article.offer-card .offer-sites{gap:1px 4px}
 body.pkn-c-final #page-offers article.offer-card .offer-sites>.meta{font-size:0.75rem}
}

/* SSR category index: reference-like 4-column icon matrix, all links retained. */
body.pkn-c-final #page-offers+section.pkn-offer-text-list{
 margin:0;
 padding:4px 16px;
 background:#fff;
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list>.pkn-offer-text-list-inner{
 width:min(920px,100%);
 margin-inline:auto;
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list .pkn-offer-text-list-inner>h2{
 margin:0 0 4px;
 padding:1px 0 1px 8px;
 border:0;
 border-left:4px solid var(--brand-yellow);
 color:var(--vf-green-dark);
 font-size:0.75rem;
 line-height:16px;
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list .pkn-offer-text-note{
 margin:0 0 4px;
 color:var(--vf-muted);
 font-size:0.75rem;
 line-height:11px;
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list .pkn-offer-text-list-body{
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:0;
 overflow:hidden;
 border:1px solid var(--vf-line);
 border-radius:6px;
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group{
 min-width:0;
 margin:0!important;
 border:0;
 border-right:1px solid var(--vf-line);
 border-bottom:1px solid var(--vf-line);
 background:#fff;
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group:nth-child(4n){border-right:0}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group>summary{
 min-width:0;
 height:44px;
 min-height:44px;
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:2px;
 padding:0 clamp(14px, calc(.78125vw + 8px), 16px)!important;
 color:var(--vf-green-dark);
 background:#fff;
 font-size:0.75rem;
 font-weight:800;
 line-height:10px;
 text-align:center;
 overflow-wrap:anywhere;
 list-style:none;
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group>summary::-webkit-details-marker{display:none}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group>summary::before{
 width:18px;
 height:18px;
 flex:0 0 18px;
 background:url("../img/c-final/feature-compare.svg") center/contain no-repeat;
 content:"";
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group:nth-child(6n+1)>summary::before{background-image:url("../img/c-final/action-card.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group:nth-child(6n+2)>summary::before{background-image:url("../img/c-final/action-bank.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group:nth-child(6n+3)>summary::before{background-image:url("../img/c-final/action-invest.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group:nth-child(6n+4)>summary::before{background-image:url("../img/c-final/action-shopping.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group:nth-child(6n+5)>summary::before{background-image:url("../img/c-final/action-wifi.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group:nth-child(6n)>summary::before{background-image:url("../img/c-final/action-lightning.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group[open]{grid-column:1/-1;border-right:0}
body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group[open]>.pkn-offer-text-links{
 grid-template-columns:repeat(2,minmax(0,1fr));
 padding:8px 10px 12px;
}
@media(max-width:480px){
 body.pkn-c-final #page-offers+section.pkn-offer-text-list details.pkn-offer-text-group[open]>.pkn-offer-text-links{grid-template-columns:1fr}
}

/* Offers-only footer compaction. All confirmed footer nodes and links remain. */
body.pkn-c-final:has(#page-offers) .pkn-footer{
 margin-top:0;
 padding:6px 0 9px;
 border-color:#094146;
 background:#094146;
}
body.pkn-c-final:has(#page-offers) .pkn-footer::before{display:none}
body.pkn-c-final:has(#page-offers) .pkn-footer-inner{width:calc(100% - 32px)}
body.pkn-c-final:has(#page-offers) .pkn-footer-brand{
 height:20px;
 gap:6px;
 margin:0;
 font-size:0.75rem;
 line-height:14px;
}
body.pkn-c-final:has(#page-offers) .pkn-footer-text{
 margin:3px 0;
 color:#b8cdca;
 font-size:0.75rem;
 line-height:12px;
}
body.pkn-c-final:has(#page-offers) .pkn-footer-copy{
 margin:0;
 color:#b8cdca;
 font-size:0.6875rem;
 line-height:11px;
}
body.pkn-c-final:has(#page-offers) .pkn-legal-nav{
 gap:0 8px;
 padding:0 16px 8px;
 background:#094146;
 font-size:0.6875rem;
 line-height:10px;
}
body.pkn-c-final:has(#page-offers) .pkn-legal-nav a{
 min-width:44px;
 min-height:44px;
 padding:0;
 color:#e6f1ef;
 font-size:0.6875rem;
 line-height:10px;
}

/* ===== Offer detail ====================================================== */
body.pkn-c-final:has(#page-detail),
body.pkn-c-final #page-detail{
 --vf-green:#047554;
 --vf-green-dark:#064c3c;
 --vf-red:#e01c24;
 --vf-orange:#fc6405;
 --vf-mint:#f3f9f5;
 --vf-line:#e3ebe8;
 --vf-ink:#202a35;
 --vf-muted:#68747c;
 width:100%;
 color:var(--vf-ink);
 background:#fff;
}
body.pkn-c-final #page-detail .pkn-detail-title{padding:14px 0 12px;border:0;background:#fff}
body.pkn-c-final #page-detail .pkn-detail-title-inner,
body.pkn-c-final #page-detail .pkn-detail-body{width:min(920px,calc(100% - 32px));max-width:none;margin-inline:auto;padding-inline:0}
body.pkn-c-final #page-detail .detail-overview{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:center;text-align:left}
body.pkn-c-final #page-detail .pkn-detail-title-copy{display:block;min-width:0}
body.pkn-c-final #page-detail .pkn-breadcrumb{margin:0 0 6px;color:var(--vf-muted);font-size:0.75rem;line-height:1.45}
body.pkn-c-final #page-detail .pkn-breadcrumb a{color:var(--vf-muted);font-weight:650}
body.pkn-c-final #page-detail .pkn-detail-tags{justify-content:flex-start;gap:5px;margin:4px 0 7px!important}
body.pkn-c-final #page-detail .detail-tags .pkn-pill,
body.pkn-c-final #page-detail .detail-tags .pkn-badge-highest{min-height:20px;padding:2px 7px;border-radius:4px;font-size:0.75rem;line-height:1.35}
body.pkn-c-final #page-detail .pkn-detail-h1{margin:0 0 6px;color:var(--vf-ink);font-family:inherit;font-size:clamp(1.35rem,2.25vw,1.9rem);font-weight:850;line-height:1.34;letter-spacing:-.015em;text-align:left;line-break:strict;word-break:normal;overflow-wrap:normal;text-wrap:balance}
body.pkn-c-final #page-detail .pkn-staple-reason,
body.pkn-c-final #page-detail .pkn-diff-summary{display:flex;align-items:center;width:fit-content;max-width:100%;gap:6px;margin:5px 0 3px;padding:3px 7px;border:1px solid var(--vf-line);border-radius:6px;background:#fff}
body.pkn-c-final #page-detail .pkn-staple-reason-label,
body.pkn-c-final #page-detail .pkn-diff-summary-deadline{margin:0;color:var(--vf-muted);font-size:0.75rem;line-height:1.4}
body.pkn-c-final #page-detail .pkn-staple-reason p{margin:0;color:var(--vf-ink);font-size:0.75rem;line-height:1.4}
body.pkn-c-final #page-detail .pkn-detail-desc{margin:2px 0 0;color:var(--vf-muted);font-size:0.75rem;line-height:1.45;text-align:left}
body.pkn-c-final #page-detail .pkn-detail-offer-id{margin:1px 0 0;color:var(--vf-muted);font-size:0.75rem;line-height:1.35;text-align:left}
body.pkn-c-final #page-detail .detail-image{width:240px;height:112px;display:flex;align-items:center;justify-content:center;justify-self:end;margin:0;overflow:hidden;border:1px solid var(--vf-line);border-radius:7px;background:#fff;box-shadow:0 1px 5px rgba(7,51,63,.05)}
body.pkn-c-final #page-detail .detail-image img{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;display:block;padding:0;object-fit:contain;object-position:center;background:#fff}
body.pkn-c-final #page-detail .pkn-detail-main{width:100%;max-width:920px;margin-inline:auto}
body.pkn-c-final #page-detail .pkn-detail-summary.detail-facts{display:grid;grid-template-columns:1.22fr repeat(2,minmax(0,1fr));gap:0;margin:0 0 14px;padding:0;overflow:hidden;border:1px solid var(--vf-line);border-radius:7px;background:#fff;box-shadow:0 1px 4px rgba(7,51,63,.04)}
body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell{min-width:0;min-height:72px;padding:9px 11px;border:0;border-left:1px solid var(--vf-line);background:#fff;text-align:center}
body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:first-child{border-left:0;background:#fff}
body.pkn-c-final #page-detail .pkn-ds-label{color:var(--vf-muted);font-size:0.75rem;font-weight:700;line-height:1.25}
body.pkn-c-final #page-detail .pkn-ds-value{display:inline-flex;align-items:baseline;flex-wrap:nowrap;max-width:100%;margin-top:2px;color:var(--vf-green-dark);font-size:.92rem;font-weight:850;line-height:1.15;white-space:nowrap}
body.pkn-c-final #page-detail .pkn-ds-unit{display:inline-block;flex:0 0 auto;white-space:nowrap}
body.pkn-c-final #page-detail .pkn-ds-cell:first-child .pkn-ds-value{color:var(--vf-red);font-size:1.75rem;line-height:1.08}
body.pkn-c-final #page-detail .pkn-ds-sub{margin-top:3px;color:var(--vf-muted);font-size:0.75rem;line-height:1.3;overflow-wrap:anywhere}
body.pkn-c-final #page-detail #detail-conditions.pkn-detail-card.detail-section,
body.pkn-c-final #page-detail #pkn-site-comparison.pkn-detail-card.detail-section,
body.pkn-c-final #page-detail #detail-history.pkn-detail-card.detail-section,
body.pkn-c-final #page-detail .pkn-related-offers.pkn-detail-card.detail-section{margin:0;padding:18px 0;border:0;border-top:1px solid var(--vf-line);border-radius:0;background:transparent;box-shadow:none}
body.pkn-c-final #page-detail .pkn-detail-card-head{gap:7px;margin-bottom:10px;align-items:flex-start}
body.pkn-c-final #page-detail .pkn-detail-card-title,
body.pkn-c-final #page-detail .pkn-d-history-title{margin:0;padding:0;border:0;color:var(--vf-ink);font-family:inherit;font-size:1.02rem;line-height:1.4;letter-spacing:-.01em;text-align:left}
body.pkn-c-final #page-detail .pkn-sec-eyebrow{margin-bottom:2px;color:var(--vf-green);font-size:0.75rem;letter-spacing:.08em}
body.pkn-c-final #page-detail .pkn-condition-tabs{gap:0}
body.pkn-c-final #page-detail .pkn-condition-tablist{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;max-width:100%;overflow:visible;margin:0;padding:0;border:1px solid var(--vf-line);border-bottom:0;border-radius:7px 7px 0 0;background:#fff}
body.pkn-c-final #page-detail .pkn-condition-tab{width:100%;min-width:0;max-width:none;min-height:44px;padding:5px 6px;border:0;border-right:1px solid var(--vf-line);border-bottom:2px solid transparent;border-radius:0;color:var(--vf-muted);background:#fff;font-size:0.75rem;font-weight:750;line-height:1.25;white-space:normal}
body.pkn-c-final #page-detail .pkn-condition-tab:last-child{border-right:0}
body.pkn-c-final #page-detail .pkn-condition-tab.is-active{border-bottom-color:var(--vf-green);color:var(--vf-green-dark);background:var(--vf-mint);box-shadow:none}
body.pkn-c-final #page-detail .pkn-condition-tab .pkn-chip{display:none}
body.pkn-c-final #page-detail .pkn-condition-tab-name{display:block;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
body.pkn-c-final #page-detail .pkn-condition-tab-badge{min-height:16px;padding:1px 4px;font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-condition-panel{margin:0;padding:0;overflow:hidden;border:1px solid var(--vf-line);border-radius:0 0 7px 7px;background:#fff;box-shadow:0 1px 4px rgba(7,51,63,.03)}
body.pkn-c-final #page-detail .pkn-condition-panel[hidden]{display:none!important}
body.pkn-c-final #page-detail .pkn-condition-panel-head{margin:0;padding:8px 11px;border-bottom:1px solid var(--vf-line);background:var(--vf-mint)}
body.pkn-c-final #page-detail .pkn-condition-panel-site{gap:6px}
body.pkn-c-final #page-detail .pkn-condition-panel-site strong{font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-condition-panel-value{color:var(--vf-red);font-size:.95rem;white-space:nowrap}
body.pkn-c-final #page-detail .pkn-condition-original{padding:10px 12px;color:var(--vf-ink);font-size:0.75rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
body.pkn-c-final #page-detail .pkn-condition-source{display:flex;align-items:center;flex-direction:row;justify-content:space-between;gap:4px 10px;padding:3px 11px 5px;border-top:1px solid var(--vf-line);color:var(--vf-muted);font-size:0.75rem;line-height:1.45}
body.pkn-c-final #page-detail .pkn-condition-source a{min-height:44px;color:var(--vf-green);font-weight:750}
body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section){overflow:hidden;margin:0;padding:0;border:1px solid var(--vf-line);border-radius:7px;background:#fff}
body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section)>.pkn-v2-acc-btn{width:100%;min-height:44px;padding:8px 11px;border:0;color:var(--vf-green-dark);background:#f6fbf9;font-size:0.75rem;font-weight:850;text-align:left}
body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) .novice-section{padding:12px;font-size:0.75rem}
body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note{margin:0 0 8px;padding:7px 9px;border:1px solid #E5B92E;border-radius:7px;color:#073F44;background:#FFF8D7;font-size:0.75rem;line-height:1.5}
body.pkn-c-final #page-detail .pkn-detail-card-head+.pkn-cmp-row,
body.pkn-c-final #page-detail .pkn-cmp-pr-note+.pkn-cmp-row{margin-top:0;border-top:1px solid var(--vf-line);border-radius:7px 7px 0 0;background:#fffdf5}
body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note+.pkn-cmp-row{margin-top:0}
body.pkn-c-final #page-detail .pkn-cmp-row{display:grid;grid-template-columns:32px minmax(160px,1fr) 92px 116px minmax(250px,.95fr);gap:7px 10px;align-items:center;padding:8px 10px;border:1px solid var(--vf-line);border-top:0;border-radius:0;color:var(--vf-ink);background:#fff}
body.pkn-c-final #page-detail .pkn-cmp-row:last-child{border-radius:0 0 7px 7px}
body.pkn-c-final #page-detail .pkn-cmp-rank-badge{width:26px;height:28px;font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-cmp-site{min-width:0;display:flex;align-items:center;gap:6px}
body.pkn-c-final #page-detail .pkn-cmp-site .pkn-chip-site-label{min-width:46px;max-width:60px;min-height:20px;padding-inline:5px;font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-cmp-site-name{color:var(--vf-green-dark);font-size:0.75rem;font-weight:850;line-height:1.3}
body.pkn-c-final #page-detail .pkn-cmp-site-cond{margin-top:1px;color:var(--vf-muted);font-size:0.75rem;line-height:1.35}
body.pkn-c-final #page-detail .pkn-cmp-val{text-align:right}
body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money{color:var(--vf-red);font-size:24px!important;font-weight:900;line-height:1.2;white-space:nowrap}
body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money-unit{font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-cmp-diff-col{color:var(--vf-muted);font-size:0.6875rem;line-height:1.15;white-space:nowrap}
body.pkn-c-final #page-detail .pkn-cmp-action{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
body.pkn-c-final #page-detail .pkn-cmp-action.is-single{grid-template-columns:1fr}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta{min-width:0;min-height:44px;padding:4px 5px;border-radius:6px;font-size:0.75rem;line-height:1.2;box-shadow:none}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta span{font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta strong{font-size:0.75rem;line-height:1.2}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration{border-color:var(--vf-orange);color:#fff;background:var(--vf-orange)}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration span,
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration strong{color:#fff}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer{border-color:var(--vf-green);color:#fff;background:var(--vf-green)}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer span,
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer strong{color:#fff}
body.pkn-c-final #page-detail #detail-history.pkn-detail-card.detail-section{margin-top:0;padding:12px;border:1px solid var(--vf-line);border-radius:7px;background:#fff;box-shadow:0 1px 4px rgba(7,51,63,.04)}
body.pkn-c-final #page-detail .pkn-d-history-head{display:block;margin-bottom:8px}
body.pkn-c-final #page-detail .pkn-d-history-sub{margin:2px 0 0;color:var(--vf-muted);font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-history-toggle{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;max-width:100%;margin-top:8px;padding:3px;overflow:visible;border-radius:7px;background:#f4f7f6}
body.pkn-c-final #page-detail .pkn-history-toggle button{width:100%;min-width:0;min-height:44px;padding:5px 7px;border:1px solid transparent;border-radius:6px;color:var(--vf-muted);background:transparent;font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-history-toggle button[aria-pressed=true],
body.pkn-c-final #page-detail .pkn-history-toggle button.is-active{border-color:var(--vf-green);color:#fff;background:var(--vf-green);box-shadow:none}
body.pkn-c-final #page-detail .pkn-history-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:8px 0 9px}
body.pkn-c-final #page-detail .pkn-history-stat{padding:6px 7px;border-color:var(--vf-line);border-radius:6px;background:#fafcfb}
body.pkn-c-final #page-detail .pkn-history-stat span{margin-bottom:1px;font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-history-stat strong{font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-history-chart-shell{grid-template-columns:48px minmax(0,1fr);gap:6px}
body.pkn-c-final #page-detail .pkn-history-y-axis,
body.pkn-c-final #page-detail .pkn-history-plot,
body.pkn-c-final #page-detail .pkn-history-svg{height:112px}
body.pkn-c-final #page-detail .pkn-history-y-axis{padding:10px 0 16px;font-size:0.6875rem}
body.pkn-c-final #page-detail .pkn-d-history-axis{gap:2px;margin-top:2px;font-size:0.6875rem}
body.pkn-c-final #page-detail .pkn-history-svg-line{stroke:var(--vf-green)}
body.pkn-c-final #page-detail .pkn-history-svg-current-halo{fill:rgba(4,117,84,.18)}
body.pkn-c-final #page-detail .pkn-history-svg-current-dot,
body.pkn-c-final #page-detail .pkn-history-svg-max-dot{fill:var(--vf-green)}
body.pkn-c-final #page-detail .pkn-history-svg-current-text,
body.pkn-c-final #page-detail .pkn-history-svg-max-text{fill:var(--vf-green-dark)}
body.pkn-c-final #page-detail .pkn-history-svg-max-line{stroke:rgba(4,117,84,.42)}
body.pkn-c-final #page-detail .pkn-history-recent{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-top:7px}
body.pkn-c-final #page-detail .pkn-history-recent-item{padding:4px 2px;border-radius:6px}
body.pkn-c-final #page-detail .pkn-history-recent-item span{font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-history-recent-item strong{font-size:0.75rem;overflow-wrap:anywhere}
body.pkn-c-final #page-detail #detail-history .pkn-v2-acc-btn{min-height:44px;padding:8px 10px;font-size:0.75rem}
body.pkn-c-final #page-detail #detail-history .pkn-history-table{width:100%;table-layout:fixed;font-size:0.75rem}
body.pkn-c-final #page-detail #detail-history .pkn-history-table th,
body.pkn-c-final #page-detail #detail-history .pkn-history-table td{padding:5px;overflow-wrap:anywhere}
body.pkn-c-final #page-detail .pkn-related-offer-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
body.pkn-c-final #page-detail .pkn-related-offer{min-width:0;min-height:78px;display:grid;grid-template-columns:22px minmax(0,1fr);grid-template-rows:auto auto;align-content:start;gap:4px 5px;padding:7px;border:1px solid var(--vf-line);border-radius:6px;background:#fff;box-shadow:0 1px 3px rgba(7,51,63,.03)}
body.pkn-c-final #page-detail .pkn-related-offer-rank{width:22px;height:22px;background:var(--vf-mint);color:var(--vf-green);font-size:0.75rem}
body.pkn-c-final #page-detail .pkn-related-offer-main strong,
body.pkn-c-final #page-detail .pkn-related-offer-main span{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
body.pkn-c-final #page-detail .pkn-related-offer-main strong{font-size:0.75rem;line-height:1.3}
body.pkn-c-final #page-detail .pkn-related-offer-main span{margin-top:2px;font-size:0.75rem;line-height:1.3}
body.pkn-c-final #page-detail .pkn-related-offer-value{grid-column:1/-1;justify-self:end;color:var(--vf-red);font-size:0.75rem;line-height:1.2;white-space:nowrap}
body.pkn-c-final:has(#page-detail) .pkn-footer{margin-top:12px;padding:18px 0 5px;border-top:1px solid var(--vf-line)}
body.pkn-c-final:has(#page-detail) .pkn-footer-inner{width:calc(100% - 32px)}
body.pkn-c-final:has(#page-detail) .pkn-footer-brand{gap:6px;font-size:.76rem;line-height:1.3}
body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark,
body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark img{width:22px;height:22px}
body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark img{content:url("../img/c-final/brand-emblem.svg")}
body.pkn-c-final:has(#page-detail) .pkn-footer-text,
body.pkn-c-final:has(#page-detail) .pkn-footer-copy{margin:3px 0;color:var(--vf-green-dark);font-size:0.6875rem;line-height:1.45}
body.pkn-c-final:has(#page-detail) .pkn-legal-nav{gap:0 7px;padding:0 16px 6px;font-size:0.6875rem;line-height:1.3}
body.pkn-c-final:has(#page-detail) .pkn-legal-nav a{min-width:44px;min-height:44px;padding:0;color:var(--vf-green-dark);font-size:0.6875rem;line-height:1.3}

@media(max-width:767px){
 body.pkn-c-final #page-detail .detail-overview{grid-template-columns:minmax(0,1fr) 190px;gap:16px}
 body.pkn-c-final #page-detail .detail-image{width:190px;height:92px}
 body.pkn-c-final #page-detail .pkn-detail-summary.detail-facts{grid-template-columns:1.22fr repeat(2,minmax(0,1fr))}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell{min-height:62px;padding:7px 8px}
 body.pkn-c-final #page-detail .pkn-ds-cell:first-child .pkn-ds-value{font-size:1.42rem}
 body.pkn-c-final #page-detail .pkn-cmp-row{grid-template-columns:26px minmax(0,1fr) minmax(74px,auto);gap:4px 7px;padding:7px 8px}
 body.pkn-c-final #page-detail .pkn-cmp-rank-badge{width:24px;height:24px}
 body.pkn-c-final #page-detail .pkn-cmp-site{grid-column:2;align-self:start}
 body.pkn-c-final #page-detail .pkn-cmp-val{grid-column:3;grid-row:1;align-self:start}
 body.pkn-c-final #page-detail .pkn-cmp-diff-col{grid-column:3;grid-row:1;align-self:end;justify-self:end}
 body.pkn-c-final #page-detail .pkn-cmp-action{grid-column:1/-1;grid-row:2}
}

@media(max-width:767px){
 body.pkn-c-final #page-detail .pkn-detail-title{padding:7px 0 0}
 body.pkn-c-final #page-detail .pkn-detail-title-inner,
 body.pkn-c-final #page-detail .pkn-detail-body{width:calc(100% - 32px)}
 body.pkn-c-final #page-detail .detail-overview{grid-template-columns:1fr;gap:0;align-items:start}
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .detail-overview{position:relative;grid-template-columns:1fr;gap:0;align-items:start;padding-bottom:83px}
 body.pkn-c-final #page-detail .pkn-detail-title-copy{display:contents}
 body.pkn-c-final #page-detail .pkn-breadcrumb{order:0;margin:0 0 4px;font-size:0.75rem;line-height:1.4;text-align:left}
 body.pkn-c-final #page-detail .pkn-detail-tags{order:1;gap:4px;margin:3px 0 5px!important}
 body.pkn-c-final #page-detail .detail-tags .pkn-pill,
 body.pkn-c-final #page-detail .detail-tags .pkn-badge-highest{min-height:18px;padding:1px 5px;font-size:0.75rem;line-height:1.3}
 body.pkn-c-final #page-detail .pkn-detail-h1{order:2;margin:0 0 4px;font-size:.96rem;line-height:1.34;letter-spacing:-.012em}
 body.pkn-c-final #page-detail .pkn-staple-reason,
 body.pkn-c-final #page-detail .pkn-diff-summary{order:3;gap:4px;margin:3px 0 2px;padding:2px 6px;border-radius:5px}
 body.pkn-c-final #page-detail .pkn-staple-reason-label,
 body.pkn-c-final #page-detail .pkn-staple-reason p,
 body.pkn-c-final #page-detail .pkn-diff-summary-deadline{font-size:0.75rem;line-height:1.3}
 body.pkn-c-final #page-detail .pkn-detail-desc{order:4;margin-top:1px;font-size:0.75rem;line-height:1.35}
 body.pkn-c-final #page-detail .pkn-detail-offer-id{order:5;margin-top:0;font-size:0.75rem;line-height:1.25}
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .detail-image{position:absolute;left:0;bottom:3px;width:46%;height:76px;margin:0}
 body.pkn-c-final #page-detail .detail-image{width:164px;height:76px;justify-self:start;margin:7px 0 0}
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .pkn-detail-main>.pkn-detail-summary{position:relative;z-index:2;width:100%;height:139px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:83px 49px;gap:7px;margin:-83px 0 12px}
 body.pkn-c-final #page-detail .pkn-detail-summary.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));margin:7px 0 12px;border-radius:7px}
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .pkn-detail-main>.pkn-detail-summary{overflow:visible;border:0;background:transparent;box-shadow:none}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell{min-height:49px;padding:4px 7px;border:1px solid var(--vf-line);border-radius:7px;background:#fff;box-shadow:0 1px 4px rgba(7,51,63,.03)}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:first-child{grid-column:1/-1;grid-row:1;min-height:83px;padding:7px 9px}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(2){grid-column:1;grid-row:2}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(3){grid-column:2;grid-row:2}
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .pkn-detail-main>.pkn-detail-summary .pkn-ds-cell:first-child{position:absolute;top:0;right:0;width:50.2%;height:83px}
 body.pkn-c-final #page-detail .pkn-ds-label{font-size:0.75rem;line-height:1.15}
 body.pkn-c-final #page-detail .pkn-ds-sub{margin-top:1px;font-size:0.75rem;line-height:1.15}
 body.pkn-c-final #page-detail .pkn-ds-value{margin-top:1px;font-size:0.75rem;line-height:1.05;letter-spacing:-.02em}
 body.pkn-c-final #page-detail .pkn-ds-cell:first-child .pkn-ds-value{font-size:1.2rem;line-height:1.02;letter-spacing:-.025em}
 body.pkn-c-final #page-detail #detail-conditions.pkn-detail-card.detail-section,
 body.pkn-c-final #page-detail #pkn-site-comparison.pkn-detail-card.detail-section,
 body.pkn-c-final #page-detail .pkn-related-offers.pkn-detail-card.detail-section{padding:14px 0}
 body.pkn-c-final #page-detail .pkn-detail-card-head{margin-bottom:7px}
 body.pkn-c-final #page-detail .pkn-detail-card-title,
 body.pkn-c-final #page-detail .pkn-d-history-title{font-size:.92rem;line-height:1.35}
 body.pkn-c-final #page-detail .pkn-sec-eyebrow{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-condition-tab{padding:4px 3px;font-size:0.75rem;line-height:1.2}
 body.pkn-c-final #page-detail .pkn-condition-tab-badge{min-height:14px;padding:1px 2px;font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-condition-panel-head{padding:7px 9px}
 body.pkn-c-final #page-detail .pkn-condition-panel-site strong{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-condition-panel-value{font-size:.86rem}
 body.pkn-c-final #page-detail .pkn-condition-original{padding:8px 10px;font-size:0.75rem;line-height:1.55}
 body.pkn-c-final #page-detail .pkn-condition-source{padding:2px 9px 4px;font-size:0.75rem;line-height:1.4}
 body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section)>.pkn-v2-acc-btn{padding:7px 10px;font-size:0.75rem}
 body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note{min-height:45px;padding:6px 8px;font-size:0.75rem;line-height:1.45}
 body.pkn-c-final #page-detail .pkn-cmp-row{grid-template-columns:24px minmax(0,1fr) 82px;gap:4px 6px;padding:6px 7px}
 body.pkn-c-final #page-detail .pkn-cmp-rank-badge{width:22px;height:22px;font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-cmp-site{gap:5px}
 body.pkn-c-final #page-detail .pkn-cmp-site .pkn-chip-site-label{min-width:42px;max-width:54px;min-height:18px;padding-inline:4px;font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-cmp-site-name{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-cmp-site-cond{font-size:0.75rem;line-height:1.3}
 body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money{font-size:22px!important}
 body.pkn-c-final #page-detail .pkn-cmp-diff-col{font-size:0.6875rem}
 body.pkn-c-final #page-detail .pkn-cmp-dual-cta{min-height:44px;padding:3px 4px;border-radius:5px;font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-cmp-dual-cta span{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-cmp-dual-cta strong{font-size:0.75rem}
 body.pkn-c-final #page-detail #detail-history.pkn-detail-card.detail-section{padding:10px}
 body.pkn-c-final #page-detail .pkn-d-history-sub{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-history-toggle{margin-top:7px}
 body.pkn-c-final #page-detail .pkn-history-toggle button{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-history-stats{gap:4px;margin:7px 0 8px}
 body.pkn-c-final #page-detail .pkn-history-stat{padding:5px 4px}
 body.pkn-c-final #page-detail .pkn-history-stat span{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-history-stat strong{font-size:0.75rem}
 body.pkn-c-final #page-detail .pkn-history-y-axis,
 body.pkn-c-final #page-detail .pkn-history-plot,
 body.pkn-c-final #page-detail .pkn-history-svg{height:102px}
 body.pkn-c-final #page-detail .pkn-related-offer{min-height:72px;padding:6px}
 body.pkn-c-final:has(#page-detail) .pkn-footer{margin-top:8px;padding-top:12px}
}

@media(max-width:359px){
 body.pkn-c-final #page-detail .detail-overview,
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .detail-overview{position:static;padding-bottom:0}
 body.pkn-c-final #page-detail .detail-image,
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .detail-image{position:static;width:164px;height:76px;margin:7px 0 0}
 body.pkn-c-final #page-detail .pkn-detail-summary.detail-facts,
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .pkn-detail-main>.pkn-detail-summary{position:static;width:100%;height:auto;grid-template-columns:1fr;grid-template-rows:none;margin:7px 0 12px}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell{min-height:44px;padding:5px 7px}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:first-child{position:static;width:auto;height:auto;grid-column:auto;grid-row:auto;min-height:54px}
 body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended,.pkn-condition-gate-status)):has(.pkn-detail-main>.pkn-detail-summary) .pkn-detail-main>.pkn-detail-summary .pkn-ds-cell:first-child{position:static;width:auto;height:auto;grid-column:auto;grid-row:auto}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(2),
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(3){grid-column:auto;grid-row:auto}
 body.pkn-c-final #page-detail .pkn-history-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.pkn-c-final #page-detail .pkn-related-offer-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ===== Point exchange =================================================== */
body.pkn-c-final:has(#page-exchange){
 --vf-ex-text:#202a35;
 --vf-ex-muted:#68747c;
 --vf-ex-deep:#064c3c;
 --vf-ex-green:#027554;
 --vf-ex-line:#e3ebe8;
 --vf-ex-soft:#f3f9f5;
}
body.pkn-c-final #page-exchange{
 --vf-ex-text:#202a35;
 --vf-ex-muted:#68747c;
 --vf-ex-deep:#064c3c;
 --vf-ex-green:#027554;
 --vf-ex-line:#e3ebe8;
 --vf-ex-soft:#f3f9f5;
 padding-bottom:0;
}
body.pkn-c-final #page-exchange>.pkn-exchange-v2.content{
 width:min(1120px,calc(100% - 36px));
 color:var(--vf-ex-text);
}
body.pkn-c-final #page-exchange .intro-block{padding:8px 0 7px}
body.pkn-c-final #page-exchange .pkn-v2-crumb{padding-top:0;margin-bottom:2px;color:var(--vf-ex-muted);font-size:0.75rem;line-height:1.5}
body.pkn-c-final #page-exchange .pkn-exv2-h1{margin:0;color:var(--vf-ex-text);font-size:clamp(1rem,2.4vw,1.75rem);line-height:1.375}
body.pkn-c-final #page-exchange .pkn-v2-lead{max-width:680px;margin:4px 0 0;color:var(--vf-ex-muted);font-size:0.75rem;line-height:1.4}
body.pkn-c-final #page-exchange .intro-meta{gap:4px 6px;margin-top:5px;color:var(--vf-ex-muted);font-size:0.75rem;line-height:1.375}
body.pkn-c-final #page-exchange .intro-meta>span{min-height:0;padding:2px 7px;border-radius:999px}
body.pkn-c-final #page-exchange .pkn-exv2-layout.exchange-layout{gap:18px;margin:0;padding:8px 0 14px;background:#fff}
body.pkn-c-final #page-exchange .pkn-exv2-selwrap{min-width:0}
body.pkn-c-final #page-exchange .exchange-form-card{display:grid;grid-template-columns:minmax(0,1fr) 44px;column-gap:8px;margin:0;padding:10px;border:1px solid var(--vf-ex-line);border-radius:8px;background:#fff;box-shadow:0 1px 5px rgba(6,76,60,.05)}
body.pkn-c-final #page-exchange .exchange-form-card h2{grid-column:1/-1;min-height:20px;gap:5px;margin:0 0 5px;color:var(--vf-ex-text);font-size:0.75rem;line-height:1.35}
body.pkn-c-final #page-exchange .exchange-form-card h2::before{width:20px;height:20px;font-size:0.75rem}
body.pkn-c-final #page-exchange .pkn-exv2-pick{grid-column:1/-1;height:44px;min-height:44px;margin-top:6px;padding:3px 9px;border-color:var(--vf-ex-line);border-radius:7px;color:var(--vf-ex-deep)}
body.pkn-c-final #page-exchange .exchange-form-card>.pkn-exv2-pick:first-of-type{margin-top:0}
body.pkn-c-final #page-exchange .pkn-exv2-pick-cap{margin-bottom:0;color:var(--vf-ex-muted);font-size:0.75rem;line-height:1.2}
body.pkn-c-final #page-exchange .pkn-exv2-pick-val{gap:6px;margin-top:1px}
body.pkn-c-final #page-exchange .pkn-exv2-pick-val b{color:var(--vf-ex-text);font-size:0.75rem;line-height:1.25}
body.pkn-c-final #page-exchange .pkn-exv2-mark{width:20px;height:20px;border-radius:50%;color:var(--vf-ex-deep);background:#FFF8D7;font-size:0.75rem}
body.pkn-c-final #page-exchange .pkn-exv2-amount{grid-column:1;margin-top:6px}
body.pkn-c-final #page-exchange .pkn-exv2-amount .field-label{margin-bottom:2px;color:var(--vf-ex-text);font-size:0.75rem;line-height:1.3}
body.pkn-c-final #page-exchange #pkn-exchange-amount{min-height:44px;padding:6px 9px;border-color:var(--vf-ex-line);border-radius:7px;color:var(--vf-ex-text);font-size:0.75rem}
body.pkn-c-final #page-exchange .pkn-exv2-swapline{grid-column:2;min-height:44px;margin:6px 0 0;align-self:end}
body.pkn-c-final #page-exchange .pkn-exv2-swap{width:44px;height:44px;border-color:var(--vf-ex-line);color:var(--vf-ex-green);font-size:1rem;box-shadow:none}
body.pkn-c-final #page-exchange .pkn-exv2-submit{grid-column:1/-1;min-height:44px;margin-top:6px;padding:8px 12px;border-color:var(--vf-ex-green);border-radius:7px;color:#fff;background:var(--vf-ex-green);font-size:0.75rem;line-height:1.25;box-shadow:none}
body.pkn-c-final #page-exchange .exchange-results{min-width:0}
body.pkn-c-final #page-exchange .pkn-exv2-reshead{min-height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;align-items:center;margin:0 0 5px;padding:0;border:0}
body.pkn-c-final #page-exchange .pkn-exv2-reshead h2{margin:0;color:var(--vf-ex-text);font-size:0.75rem;line-height:1.3}
body.pkn-c-final #page-exchange .results-summary{margin:1px 0 0;color:var(--vf-ex-deep);font-size:0.75rem;line-height:1.25;font-weight:850}
body.pkn-c-final #page-exchange .sort-control{width:auto;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px;align-items:center;color:var(--vf-ex-muted)}
body.pkn-c-final #page-exchange .sort-control label{font-size:0.75rem;white-space:nowrap}
body.pkn-c-final #page-exchange .sort-control select{min-height:44px;max-width:156px;padding:6px 24px 6px 7px;border-color:var(--vf-ex-line);border-radius:7px;color:var(--vf-ex-text);font-size:0.75rem}
body.pkn-c-final #page-exchange .pkn-v2-warning{display:block;margin:4px 0 6px;padding:6px 8px;border-radius:7px;font-size:0.75rem;line-height:1.38}
body.pkn-c-final #page-exchange .pkn-v2-warning strong{display:block;margin:0 0 2px}
body.pkn-c-final #page-exchange .pkn-v2-warning span{display:block;font:inherit;color:inherit}
body.pkn-c-final #page-exchange .route-card{margin:0 0 8px;border:1px solid var(--vf-ex-line);border-radius:8px;box-shadow:0 1px 5px rgba(6,76,60,.04)}
body.pkn-c-final #page-exchange .route-card+.route-card{margin-top:0}
body.pkn-c-final #page-exchange .route-card.is-best{border-color:#e7cf78}
body.pkn-c-final #page-exchange .route-card>summary{min-height:44px;display:block;padding:0;background:linear-gradient(180deg,var(--vf-ex-soft),#fff 66%)}
body.pkn-c-final #page-exchange .route-card.is-best>summary{background:linear-gradient(180deg,#fff8d8,#fff 68%)}
body.pkn-c-final #page-exchange .route-card>summary:focus-visible{outline:3px solid rgba(7,94,85,.35);outline-offset:2px}
body.pkn-c-final #page-exchange .pkn-exv2-card-head{gap:5px;padding:5px 9px 0}
body.pkn-c-final #page-exchange .pkn-exv2-badge{padding:2px 6px;font-size:0.75rem;line-height:1.25}
body.pkn-c-final #page-exchange .pkn-exv2-summary-metrics{display:grid;grid-template-columns:1fr 1.35fr 1.25fr;gap:0;padding:4px 9px 5px}
body.pkn-c-final #page-exchange .pkn-exv2-summary-metric{min-width:0;display:flex;flex-direction:column;justify-content:center}
body.pkn-c-final #page-exchange .pkn-exv2-summary-metric+.pkn-exv2-summary-metric{padding-left:6px;border-left:1px solid #d9ebe5}
body.pkn-c-final #page-exchange .pkn-exv2-summary-metric small{color:var(--vf-ex-muted);font-size:0.75rem;line-height:1.25}
body.pkn-c-final #page-exchange .pkn-exv2-summary-metric b{margin-top:1px;color:var(--vf-ex-text);font-size:0.75rem;line-height:1.2;overflow-wrap:anywhere}
body.pkn-c-final #page-exchange .pkn-exv2-summary-metric.pkn-exv2-card-yield{display:flex;align-items:flex-start;gap:0;justify-self:stretch;padding:0}
body.pkn-c-final #page-exchange .pkn-exv2-summary-metric.pkn-exv2-card-yield b{color:var(--vf-ex-text);font-size:.90625rem;line-height:1.2;font-weight:900;white-space:nowrap}
body.pkn-c-final #page-exchange .pkn-exv2-card-path{display:flex;align-items:center;gap:1px;padding:3px 9px 4px;font-size:0.75rem}
body.pkn-c-final #page-exchange .pkn-exv2-route-node{min-width:0;flex:1 1 0;display:grid;justify-items:center;gap:2px;text-align:center}
body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-mark{width:18px;height:18px;font-size:0.75rem}
body.pkn-c-final #page-exchange .pkn-exv2-route-node-name{color:var(--vf-ex-deep);font-size:0.75rem;font-weight:750;line-height:1.25;overflow-wrap:anywhere}
body.pkn-c-final #page-exchange .pkn-exv2-route-node-amount{color:var(--vf-ex-text);font-size:0.75rem;line-height:1.2;white-space:nowrap}
body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-arw{flex:0 0 8px;margin:0;color:var(--vf-ex-green);font-size:0.75rem;text-align:center}
body.pkn-c-final #page-exchange .pkn-exv2-card-toggle{min-height:44px;display:flex;align-items:center;justify-content:center;padding:5px 9px;border-top:1px solid var(--vf-ex-line);color:var(--vf-ex-green);font-size:0.75rem;line-height:1.3;font-weight:800}
body.pkn-c-final #page-exchange .route-card[open] .pkn-exv2-chev{transform:rotate(180deg)}
body.pkn-c-final #page-exchange .pkn-exv2-card-body{padding:8px 9px 10px;border-top:1px solid var(--vf-ex-line)}
body.pkn-c-final #page-exchange .route-card[open] .pkn-exv2-card-body{display:flex;flex-direction:column}
body.pkn-c-final #page-exchange .route-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:7px}
body.pkn-c-final #page-exchange .route-card[open] .route-facts{order:2;margin:7px 0 0}
body.pkn-c-final #page-exchange .route-facts div{min-height:44px;padding:5px 4px;text-align:center}
body.pkn-c-final #page-exchange .route-facts dt{font-size:0.75rem;line-height:1.25}
body.pkn-c-final #page-exchange .route-facts dd{font-size:0.75rem;line-height:1.3;overflow-wrap:anywhere}
body.pkn-c-final #page-exchange .route-step{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6px;padding:7px 0}
body.pkn-c-final #page-exchange .route-card[open] .route-step-list{order:1}
body.pkn-c-final #page-exchange .route-step-name{font-size:0.75rem;line-height:1.35}
body.pkn-c-final #page-exchange .route-step-detail{font-size:0.75rem;line-height:1.4}
body.pkn-c-final #page-exchange .pkn-exv2-notebox{margin-top:7px;padding:7px 8px;border-radius:7px;font-size:0.75rem;line-height:1.45}
body.pkn-c-final #page-exchange .pkn-exv2-src{margin-top:6px;font-size:0.75rem;line-height:1.4}
body.pkn-c-final #page-exchange .route-card[open] .pkn-exv2-notebox{order:3}
body.pkn-c-final #page-exchange .route-card[open] .pkn-exv2-src{order:4}
body.pkn-c-final #page-exchange .pkn-v2-beta{margin:8px 0;padding:0;border:1px solid var(--vf-ex-line);border-radius:8px;background:#f5fbfb}
body.pkn-c-final #page-exchange .pkn-v2-beta>summary{min-height:44px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:5px;align-items:center;padding:5px 9px;background:transparent}
body.pkn-c-final #page-exchange .pkn-v2-beta-badge{padding:2px 5px;border-radius:999px;font-size:0.75rem;line-height:1.25}
body.pkn-c-final #page-exchange .pkn-v2-beta-summary{font-size:0.75rem;line-height:1.35}
body.pkn-c-final #page-exchange .pkn-v2-beta-toggle{font-size:0.75rem;white-space:nowrap}
body.pkn-c-final #page-exchange .pkn-v2-beta-body{padding:8px 10px;color:var(--vf-ex-muted);font-size:0.75rem;line-height:1.45}
body.pkn-c-final #page-exchange .pkn-exv2-modal-ov{background:rgba(6,76,60,.36)}
body.pkn-c-final #page-exchange .pkn-exv2-sheet{max-width:460px;border-radius:12px 12px 0 0}
body.pkn-c-final #page-exchange .pkn-exv2-sheet-head{padding:10px 12px;border-color:var(--vf-ex-line)}
body.pkn-c-final #page-exchange .pkn-exv2-sheet-head b{color:var(--vf-ex-text);font-size:.8125rem}
body.pkn-c-final #page-exchange .pkn-exv2-close{width:44px;height:44px}
body.pkn-c-final #page-exchange .pkn-exv2-sheet-search{padding:8px 12px;border-color:var(--vf-ex-line)}
body.pkn-c-final #page-exchange .pkn-exv2-sheet-search input{min-height:44px;border-color:var(--vf-ex-line);border-radius:7px}
body.pkn-c-final #page-exchange .pkn-exv2-sheet-list{padding:4px 7px}
body.pkn-c-final #page-exchange .pkn-exv2-opt{min-height:44px;padding:7px 9px;border-radius:7px}
body.pkn-c-final:has(#page-exchange) .pkn-disclosure-bar{color:#073F44;background:#FFF8D7;font-size:0.75rem;line-height:1.35}
body.pkn-c-final:has(#page-exchange) .pkn-header{border-color:var(--vf-ex-line)}
body.pkn-c-final:has(#page-exchange) .pkn-logo{min-height:44px;gap:6px}
body.pkn-c-final:has(#page-exchange) .pkn-logo-mark,
body.pkn-c-final:has(#page-exchange) .pkn-logo-mark img{width:22px;height:22px}
body.pkn-c-final:has(#page-exchange) .pkn-logo-text{color:var(--vf-ex-deep);font-size:.75rem}
body.pkn-c-final:has(#page-exchange) .pkn-mm-btn{border:0;border-radius:0;color:var(--vf-ex-deep);background:transparent;box-shadow:none}
body.pkn-c-final:has(#page-exchange) .pkn-footer{margin-top:8px;padding:10px 0 2px;border-top:1px solid var(--vf-ex-line)}
body.pkn-c-final:has(#page-exchange) .pkn-footer-inner{width:calc(100% - 36px);display:grid;gap:0;justify-items:center;text-align:center}
body.pkn-c-final:has(#page-exchange) .pkn-footer-brand{gap:5px;margin-bottom:2px;color:var(--vf-ex-deep);font-size:0.75rem;line-height:1.3}
body.pkn-c-final:has(#page-exchange) .pkn-footer-brand .pkn-logo-mark,
body.pkn-c-final:has(#page-exchange) .pkn-footer-brand .pkn-logo-mark img{width:20px;height:20px}
body.pkn-c-final:has(#page-exchange) .pkn-footer-text,
body.pkn-c-final:has(#page-exchange) .pkn-footer-copy{max-width:500px;margin:2px 0;color:var(--vf-ex-deep);font-size:0.6875rem;line-height:1.4}
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0 14px 6px;color:var(--vf-ex-deep);font-size:0.6875rem;line-height:1.25}
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a{min-width:44px;min-height:44px;padding:2px;color:var(--vf-ex-deep);font-size:0.6875rem;line-height:1.25;text-align:center}
@media(max-width:767px){
 body.pkn-c-final #page-exchange .intro-block{padding:7px 0 6px}
 body.pkn-c-final #page-exchange .pkn-exv2-layout.exchange-layout{padding:7px 0 12px}
 body.pkn-c-final #page-exchange .exchange-results{margin-top:8px}
 body.pkn-c-final #page-exchange .route-step{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
}
@media(max-width:359px){
 body.pkn-c-final #page-exchange>.pkn-exchange-v2.content{width:calc(100% - 32px)}
 body.pkn-c-final #page-exchange .pkn-exv2-reshead{grid-template-columns:minmax(0,1fr) 162px}
 body.pkn-c-final #page-exchange .sort-control select{max-width:122px;font-size:0.75rem}
 body.pkn-c-final #page-exchange .pkn-exv2-summary-metrics{grid-template-columns:.9fr 1.4fr 1.3fr;padding-inline:7px}
 body.pkn-c-final #page-exchange .pkn-exv2-summary-metric+.pkn-exv2-summary-metric{padding-left:4px}
 body.pkn-c-final #page-exchange .pkn-exv2-summary-metric.pkn-exv2-card-yield{grid-column:auto}
 body.pkn-c-final #page-exchange .pkn-exv2-card-path{padding-inline:7px}
 body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-mark{width:16px;height:16px}
 body.pkn-c-final:has(#page-exchange) .pkn-legal-nav{grid-template-columns:repeat(4,minmax(0,1fr));padding-inline:8px}
}

/* Detail and exchange references use a pale mint footer; Offers remains dark. */
body.pkn-c-final:has(#page-detail) .pkn-footer,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav,
body.pkn-c-final:has(#page-exchange) .pkn-footer,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav{
 color:var(--deep-teal);
 background:#ecf7f3;
}
body.pkn-c-final:has(#page-detail) .pkn-footer::before,
body.pkn-c-final:has(#page-exchange) .pkn-footer::before{display:none}
body.pkn-c-final:has(#page-detail) .pkn-footer-brand,
body.pkn-c-final:has(#page-detail) .pkn-footer-text,
body.pkn-c-final:has(#page-detail) .pkn-footer-copy,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav a,
body.pkn-c-final:has(#page-exchange) .pkn-footer-brand,
body.pkn-c-final:has(#page-exchange) .pkn-footer-text,
body.pkn-c-final:has(#page-exchange) .pkn-footer-copy,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a{color:var(--deep-teal)}

/* Pass-1 measured corrections. */
body.pkn-c-final:has(#page-offers) .pkn-header,
body.pkn-c-final:has(#page-exchange) .pkn-header{background:#fde28d}
body.pkn-c-final:has(#page-exchange) .pkn-header{background:#fedc7a}
body.pkn-c-final:has(#page-detail) .pkn-header{background:#fddb78}
body.pkn-c-final:has(#page-offers) .pkn-main,
body.pkn-c-final:has(#page-detail) .pkn-main,
body.pkn-c-final:has(#page-exchange) .pkn-main,
body.pkn-c-final #page-offers,
body.pkn-c-final #page-detail,
body.pkn-c-final #page-exchange{background:#fff}
@media(max-width:767px){
 body.pkn-c-final:has(#page-offers) .pkn-nav,
 body.pkn-c-final:has(#page-detail) .pkn-nav,
 body.pkn-c-final:has(#page-exchange) .pkn-nav{
  min-width:44px;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
 }
 body.pkn-c-final #page-offers article.offer-card .offer-sites>.meta:nth-of-type(1){grid-column:1}
 body.pkn-c-final #page-offers article.offer-card .offer-sites>.meta:nth-of-type(2){grid-column:2}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:not(:first-child){padding-inline:4px}
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:not(:first-child) .pkn-ds-value{
  font-size:0.75rem;
  letter-spacing:-.03em;
 }
 body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:not(:first-child) .pkn-ds-unit{font-size:inherit}
 body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration{
  border-color:var(--vf-orange);
  color:#fff;
  background:var(--vf-orange);
 }
 body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer{border-color:var(--vf-green);color:#fff;background:var(--vf-green)}
 body.pkn-c-final #page-detail .pkn-cmp-action{grid-column:1/-1}
 body.pkn-c-final #page-detail .pkn-condition-tablist{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  overflow:visible;
 }
 body.pkn-c-final #page-detail .pkn-condition-tab{
  width:100%;
  min-width:0;
  max-width:none;
 }
 body.pkn-c-final #page-detail .pkn-history-toggle{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  overflow:visible;
 }
 body.pkn-c-final #page-detail .pkn-history-toggle button{
  width:100%;
  min-width:0;
 }
}
body.pkn-c-final #page-offers+section.pkn-offer-text-list #pkn-offer-text-category-057a47489b1791c1805e5dabc3500470::before{background-image:url("../img/c-final/action-card.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list #pkn-offer-text-category-15c726fb1b2cbd9ffb28ab7850dd98f0::before{background-image:url("../img/c-final/action-invest.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list #pkn-offer-text-category-620b1fdc9af006f1cc150a5e1628847d::before{background-image:url("../img/c-final/action-bank.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list #pkn-offer-text-category-b436da03863ab993da78f71decfeb6b3::before{background-image:url("../img/c-final/action-shopping.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list #pkn-offer-text-category-63b87d0d11f52ec2871664923bc5eb03::before{background-image:url("../img/c-final/action-wifi.svg")}
body.pkn-c-final #page-offers+section.pkn-offer-text-list #pkn-offer-text-category-f7c315a362ec73ec91998d94319c7c9d::before{background-image:url("../img/c-final/action-lightning.svg")}

/* Pass-2 optical corrections: measured header rhythm and unabridged labels. */
body.pkn-c-final:has(#page-detail) .pkn-detail-body.detail-wrap{background:#fff}
@media(max-width:767px){
 body.pkn-c-final:has(#page-detail){padding-bottom:0}
 body.pkn-c-final:has(#page-offers) .pkn-disclosure-bar,
 body.pkn-c-final:has(#page-detail) .pkn-disclosure-bar,
 body.pkn-c-final:has(#page-exchange) .pkn-disclosure-bar{
  height:44px;
  min-height:44px;
  padding:0 8px;
 }
 body.pkn-c-final:has(#page-exchange) .pkn-header-inner{
  min-height:44px;
  height:44px;
 }
 body.pkn-c-final:has(#page-detail) .pkn-header-inner{min-height:44px;height:44px}
 body.pkn-c-final:has(#page-detail) .pkn-logo{min-height:44px;gap:6px}
 body.pkn-c-final:has(#page-detail) .pkn-logo-mark,
 body.pkn-c-final:has(#page-detail) .pkn-logo-mark img{width:22px;height:22px}
 body.pkn-c-final:has(#page-detail) .pkn-logo>.pkn-logo-mark,
 body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark{
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:50%;
  color:#fff;
  background:transparent;
 }
 body.pkn-c-final:has(#page-detail) .pkn-logo>.pkn-logo-mark img,
 body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark img{
  position:absolute;
  inset:0;
  opacity:0;
 }
 body.pkn-c-final:has(#page-detail) .pkn-logo>.pkn-logo-mark::after,
 body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark::after{
  position:relative;
  width:18px;
  height:14px;
  display:grid;
  place-items:center;
  border-radius:50%;
  content:"P";
  color:#fff;
  background:#087454;
  font-family:Arial,sans-serif;
  font-size:0.75rem;
  font-weight:900;
  line-height:1;
 }
 body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark::after{
  width:16px;
  height:12px;
  font-size:0.75rem;
 }
 body.pkn-c-final:has(#page-detail) .pkn-footer-brand .pkn-logo-mark{place-items:start center}
 body.pkn-c-final:has(#page-detail) .pkn-footer{padding-top:0}
 body.pkn-c-final:has(#page-detail) .pkn-logo-text{font-size:.82rem}
 body.pkn-c-final:has(#page-detail) .pkn-mm-btn{border:0;border-radius:0;color:var(--vf-green-dark);background:transparent;box-shadow:none}
 body.pkn-c-final:has(#page-detail) .pkn-disclosure-bar{color:#073F44;background:#FFF8D7;font-size:0.75rem;line-height:1.35}
 body.pkn-c-final:has(#page-offers) .pkn-header-inner{
  min-height:44px;
  height:44px;
 }
 body.pkn-c-final:has(#page-offers) .pkn-c-search .pkn-ui-icon{
  width:16px;
  height:16px;
 }
 body.pkn-c-final:has(#page-exchange) .pkn-c-search .pkn-ui-icon{
  width:20px;
  height:20px;
 }
 body.pkn-c-final:has(#page-detail) .pkn-c-search .pkn-ui-icon{width:16px;height:16px}
 body.pkn-c-final #page-detail .pkn-condition-tab{
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:anywhere;
  word-break:normal;
 }
 body.pkn-c-final #page-detail .pkn-condition-tab-name{overflow:visible;text-overflow:clip;white-space:normal}
}

/* ============================================================================
   DG1承認済み設計の実装（2026-07-25）
   承認済みSHA: 2a38dcf106ecaca6a6bafb8867c8b6e38c5578d18d70bbd4a783ae14c0d02f96
   control_id: DG1-UI-REPAIR-20260725-R2 / 承認範囲: 案件一覧・案件詳細・ポイント交換の3面
   案件IDの扱い: 案B（読み上げ専用・視覚非表示）＝人間の判断

   すべて #page-offers / #page-detail / #page-exchange のページスコープに閉じる。
   Home に適用されるセレクタは変更しない。共有部品（ヘッダー/フッター）は
   既存の :has() パターンでページ側だけに効かせる。
   ========================================================================== */

/* --- RC-4: 旧トークン --c-* を確定 Yellow x Mint へ写像 -------------------
   旧系統は 46定義・780参照が生存し、確定パレット側4CSSでは定義0・参照0。
   カスタムプロパティをページコンテナで再定義することで、780箇所の参照を
   一括で確定パレットへ寄せる。個別セレクタを書き換えないので差分が小さく、
   Home へは構造的に波及しない。
   値はすべて Home live 実測の確定パレット内。新色は作っていない。 */
body.pkn-c-final #page-offers,
body.pkn-c-final #page-detail,
body.pkn-c-final #page-exchange {
  /* 文字（color 用途が主） */
  --c-ink: #073F44;          /* replaces the legacy brown ink */
  --c-ink-sub: #4A7275;      /* was #8A7F6F  color x101 */
  --c-ink-muted: #4A7275;    /* was #8A7F6F  color x70 */
  --c-indigo: #073F44;       /* was #4E342E  color x50 / border x21 / bg x20 */
  --c-indigo-dark: #073F44;  /* replaces the legacy brown ink */
  /* 罫線 */
  --c-line: #DCE9E5;         /* was #ECE2CF  border x96 */
  --c-line-soft: #EDF3F1;    /* was #F4EDE0  border x30 */
  /* 面 */
  --c-cream: #FFFDF5;        /* was #FFFCF2  bg x20 */
  --c-indigo-pale: #F6FBF9;  /* was #F6F4EF  bg x37 */
  --c-indigo-soft: #E6F7F0;  /* was #FFF8E1  bg x22 */
  --c-coral-soft: #FFF8D7;   /* was #FFF8E1  bg x25 */
  --c-yellow-soft: #FFF8D7;  /* was #FFF8E1  bg x14 */
  --c-sand: #F6FBF9;         /* was #F4EDE0  bg x6 */
  --c-warm: #FFF8D7;         /* was #FFF8E1  bg x1 */
  --c-card: #FFFFFF;
  /* アクセント: 白文字を載せる面としても、白地の文字としても AA を満たす値 */
  --c-coral: #C9430A;        /* was #FFB300  bg x17(白文字) / color x10 → 4.89:1 両立 */
  --c-coral-dark: #C9430A;   /* was #FFA000  color x38 → 1.92:1 だった主因 */
  --c-yellow: #C9430A;       /* was #FFB300  color x3 / bg x2(装飾) */
  /* 成功系 */
  --c-success: #067052;      /* was #3AA76D  color x10 / bg x4 */
  --c-success-soft: #E6F7F0; /* was #E7F5EE  bg x5 */
  /* ポイントサイトのブランド色は識別子のため変更しない
     (--c-moppy / --c-hapitas / --c-pointincome / --c-chobirich ほか) */
}

/* --- RC-2: focus リングが overflow:hidden のカードに切り落とされる ---------
   .card は角丸のため overflow:hidden。カード内リンクとの余白は各辺1px しかなく、
   outline-offset:3px のリングは全周がクリップ範囲外に出て「一切見えない」状態だった。
   offset を内側へ入れ、リング自体もカード内に収める。 */
body.pkn-c-final #page-offers .card :focus-visible,
body.pkn-c-final #page-detail .card :focus-visible,
body.pkn-c-final #page-exchange .card :focus-visible,
body.pkn-c-final #page-offers .pkn-oc :focus-visible,
body.pkn-c-final #page-offers a.pkn-offer:focus-visible,
body.pkn-c-final #page-offers .pkn-results-list a:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: -3px;      /* 内側リング。クリップされない */
  border-radius: inherit;
}

/* --- RC-5: overflow-wrap:anywhere による語中・金額単位の分断 ---------------
   body 全体の overflow-wrap:anywhere は Home にも効いているため宣言自体は触らない。
   ページスコープで、固有名詞と金額まわりだけ通常の折返しへ戻す。 */
body.pkn-c-final #page-offers .pkn-offer-name,
body.pkn-c-final #page-offers .pkn-offer-title,
body.pkn-c-final #page-detail .pkn-detail-h1,
body.pkn-c-final #page-detail .pkn-cmp-site-name,
body.pkn-c-final #page-detail .pkn-condition-tab-name,
body.pkn-c-final #page-exchange .pkn-exv2-step-name,
body.pkn-c-final #page-exchange .pkn-exv2-src,
body.pkn-c-final #page-exchange .pkn-exv2-dst {
  overflow-wrap: normal;
  word-break: normal;
  line-break: strict;
}
/* 金額と単位は必ず同一行に保つ（320px でも分断しない） */
body.pkn-c-final #page-offers .pkn-money,
body.pkn-c-final #page-offers .pkn-offer-price,
body.pkn-c-final #page-offers .pkn-yen,
body.pkn-c-final #page-detail .pkn-money,
body.pkn-c-final #page-detail .pkn-ds-value,
body.pkn-c-final #page-detail .pkn-action-price,
body.pkn-c-final #page-exchange .pkn-exv2-amount,
body.pkn-c-final #page-exchange .pkn-exv2-metric-value {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

/* --- RC-6: 共有ヘッダー/フッターが4画面で4通りの色になっている -------------
   Home=header #F8CA36 / footer #073F44 に対し、
   一覧 #FDE28D/#094146、詳細 #FDDB78/#ECF7F3、交換 #FEDC7A/#ECF7F3 と分岐していた。
   Home の値へ統一する。Home 自体は既にこの値なので Home は不変。
   共有部品のため :has() でページ側だけに効かせる（既存の同パターンに倣う）。 */
body.pkn-c-final:has(#page-offers) .pkn-header,
body.pkn-c-final:has(#page-detail) .pkn-header,
body.pkn-c-final:has(#page-exchange) .pkn-header {
  background: #F8CA36;
  border-bottom: 1px solid #E5B92E;
}
body.pkn-c-final:has(#page-offers) .pkn-logo-text,
body.pkn-c-final:has(#page-detail) .pkn-logo-text,
body.pkn-c-final:has(#page-exchange) .pkn-logo-text {
  color: #073F44;
}
body.pkn-c-final:has(#page-offers) .pkn-footer,
body.pkn-c-final:has(#page-detail) .pkn-footer,
body.pkn-c-final:has(#page-exchange) .pkn-footer {
  color: #C9E4DA;
  background: #073F44;
}
body.pkn-c-final:has(#page-offers) .pkn-footer-text,
body.pkn-c-final:has(#page-detail) .pkn-footer-text,
body.pkn-c-final:has(#page-exchange) .pkn-footer-text,
body.pkn-c-final:has(#page-offers) .pkn-footer-copy,
body.pkn-c-final:has(#page-detail) .pkn-footer-copy,
body.pkn-c-final:has(#page-exchange) .pkn-footer-copy {
  color: #A9CFC4;
}
body.pkn-c-final:has(#page-offers) .pkn-legal-nav,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav {
  background: #073F44;
}
body.pkn-c-final:has(#page-offers) .pkn-legal-nav a,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav a,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a {
  color: #E6F7F0;
}

/* --- RC-3b: .visually-hidden に隠蔽規則が当たっていない（案件ID）----------
   DG1 の判断 = 案B（読み上げ専用・視覚非表示）。
   DOM からは削除しないため、情報そのものは省略していない。
   従来は 9px / opacity .55 / absolute で CTA の上に重なって描画されていた。
   競合していたのは body.pkn-v2 .pkn-oc .pkn-offer-id (0,0,3,1)。
   こちらは #page-* の id を含む (0,1,3,1) ため、!important なしで上回る。 */
body.pkn-c-final #page-offers .visually-hidden,
body.pkn-c-final #page-detail .visually-hidden,
body.pkn-c-final #page-exchange .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* --- 44x44 のタップ面（承認済み設計の項目8） -------------------------------
   見た目の余白は変えず、ヒット領域だけを確保する。 */
body.pkn-c-final #page-offers .pkn-pager button,
body.pkn-c-final #page-offers .pkn-pager a,
body.pkn-c-final #page-detail .pkn-related-offer,
body.pkn-c-final #page-exchange .pkn-exv2-source-link {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

/* --- RC-1(続き): bridge 以外の層に残る 12px 未満をページスコープで是正 ---
   app.css / app-v2.css は Home にも読み込まれるため直接は変更しない。
   実レンダリング結果を測り、該当クラスだけを #page-* 配下で引き上げる。
   本文級 12px / 最小補助 11px（承認済み設計 §3 タイポスケール）。 */
body.pkn-c-final #page-detail .pkn-cmp-diff-col,
body.pkn-c-final #page-detail .pkn-d-history-axis > span,
body.pkn-c-final #page-detail .pkn-d-history-axis-end,
body.pkn-c-final #page-detail .pkn-d-history-axis-mid,
body.pkn-c-final #page-detail .pkn-history-y-axis > span,
body.pkn-c-final #page-offers .pkn-offer-id {
  font-size: 0.6875rem;
}
body.pkn-c-final #page-detail .pkn-breadcrumb-sep,
body.pkn-c-final #page-detail .pkn-chip-site-label,
body.pkn-c-final #page-detail .pkn-diff-normal,
body.pkn-c-final #page-detail .pkn-flow-meta,
body.pkn-c-final #page-detail .pkn-flow-now,
body.pkn-c-final #page-detail .pkn-history-svg-current-text,
body.pkn-c-final #page-detail .pkn-history-svg-max-text,
body.pkn-c-final #page-detail .pkn-money-unit,
body.pkn-c-final #page-detail .pkn-pill-yellow,
body.pkn-c-final #page-detail .pkn-sec-meta,
body.pkn-c-final #page-detail .pkn-site-history-head > span,
body.pkn-c-final #page-detail .pkn-site-history-value > span,
body.pkn-c-final #page-detail .pkn-v2-acc-sub,
body.pkn-c-final #page-detail .pkn-v2-hist-all,
body.pkn-c-final #page-detail .pkn-v2-htable > th,
body.pkn-c-final #page-detail .pkn-v2-src,
body.pkn-c-final #page-exchange .pkn-exv2-group-name,
body.pkn-c-final #page-offers .pkn-cat-side-count,
body.pkn-c-final #page-offers .pkn-diff-help-btn,
body.pkn-c-final #page-offers .pkn-diff-label-row-sp > span,
body.pkn-c-final #page-offers .pkn-diff-popover > small,
body.pkn-c-final #page-offers .pkn-offer-media-label,
body.pkn-c-final #page-offers .pkn-reward-filter > div,
body.pkn-c-final #page-offers .pkn-sp-filter-title {
  font-size: 0.75rem;
}

/* --- RC-1(仕上げ): 特異度で負けていた残余を、勝者selectorを土台に是正 ---
   ページスコープ済みの規則は同じ selector を後方に置いて上書き。
   スコープ外の規則は #page-* を前置してから上書き（Home には効かない）。 */
body.pkn-c-final #page-offers .pkn-reward-filter > div,
body.pkn-c-final #page-detail .pkn-v2-htable thead th {
  font-size: 0.75rem;
}

/* --- 検証で出た回帰の是正（Phase 4 の実測に基づく）-----------------------
   文字を可読サイズへ上げた結果、狭い幅で行が伸び、
   (a) 320px で intro-meta 行が画面幅を超える
   (b) 履歴の軸・直近リストで「8,000」と「円」が行またぎで割れる
   (c) 関連案件・二導線CTAで日本語1文字が孤立する
   が発生したため、該当箇所だけを個別に是正する。 */

/* (a) 320px の横スクロール: メタ行を折り返せるようにする */
body.pkn-c-final #page-offers .intro-meta,
body.pkn-c-final #page-detail .intro-meta,
body.pkn-c-final #page-exchange .intro-meta {
  flex-wrap: wrap;
  row-gap: 4px;
}

/* (b) 金額と単位を同一行に保つ（RC-5 の適用漏れ分） */
/* 当初ここに white-space:nowrap を入れたが、検証で逆効果と判明した。
   軸ラベルや履歴行は入る幅が狭く、nowrap にすると折り返せずに
   親の overflow で切れる（実測: recent-item 24px超過・軸 13px超過）。
   「分断を防ぐ」ために「切れ」を作っては本末転倒なので nowrap は外す。
   金額+単位の同一行保持の根本解決は、両者を1つの inline 要素で包む必要があり、
   未実装のレイアウト層（承認済み設計のカード再構成）と併せて行う。 */
body.pkn-c-final #page-detail .pkn-history-y-axis,
body.pkn-c-final #page-detail .pkn-history-y-axis > span,
body.pkn-c-final #page-detail .pkn-history-recent-item,
body.pkn-c-final #page-detail .pkn-d-history-axis,
body.pkn-c-final #page-detail .pkn-d-history-axis > span,
body.pkn-c-final #page-detail .pkn-history-stat,
body.pkn-c-final #page-exchange .pkn-exv2-step-amount {
  font-variant-numeric: tabular-nums;
}

/* (c) 日本語の1文字孤立を防ぐ（語中で折り返さない） */
body.pkn-c-final #page-detail .pkn-related-offer-main,
body.pkn-c-final #page-detail .pkn-related-offer,
body.pkn-c-final #page-detail .pkn-cmp-dual-cta,
body.pkn-c-final #page-detail .pkn-cmp-dual-cta span,
body.pkn-c-final #page-detail .pkn-cmp-dual-cta strong,
body.pkn-c-final #page-exchange .pkn-exv2-note {
  overflow-wrap: normal;
  word-break: keep-all;
  line-break: strict;
}
/* 案件名は長い固有名詞が入るため keep-all にしない。
   keep-all にすると「ビジネスウェア通販【P.S.FA】」のような長い語が
   一切折り返せず、overflow:hidden のカードで切れる（検証で実測）。
   通常の日本語折返しは許し、収まらない語だけを折る。 */
body.pkn-c-final #page-offers .pkn-offer-name,
body.pkn-c-final #page-offers .pkn-offer-title {
  word-break: normal;
  overflow-wrap: break-word;
  line-break: strict;
}

/* (d) 案件カードは中身を折り返して収める（overflow:hidden で切らせない） */
body.pkn-c-final #page-offers .pkn-offer,
body.pkn-c-final #page-offers .pkn-offer * {
  min-width: 0;
}
body.pkn-c-final #page-offers .pkn-offer .pkn-offer-media-label,
body.pkn-c-final #page-offers .pkn-offer .pkn-chip {
  max-width: 100%;
}

/* (e) 案件カード内「サイト名＋金額」グリッドが狭幅で内容幅を超える。
   実測 320px: トラック148px に対し内容174px。文字を可読サイズへ上げた分、
   サイト名側が伸びたため。名前側を可変にし、金額側は必要幅を確保する。
   金額は nowrap 済みなので、縮むのは名前側だけ。 */
body.pkn-c-final #page-offers .pkn-offer .offer-sites {
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 6px;
}
body.pkn-c-final #page-offers .pkn-offer .offer-sites > * {
  min-width: 0;
}
body.pkn-c-final #page-offers .pkn-offer .offer-sites .pkn-chip-site-label,
body.pkn-c-final #page-offers .pkn-offer .offer-sites > :first-child {
  overflow: hidden;
  text-overflow: ellipsis;
}

/* (f) 案件カードの補助情報が狭幅でセル幅を超えて切れる。
   実測 320px: 「掲載1サイト」73px を 62px セルに、
   「還元額：M/D確認」108px を 82px セルに入れており、
   いずれも white-space:nowrap のため親の overflow:hidden で切れていた。
   確定情報（掲載サイト数・確認日）は省略できないので、
   truncate せず 1行フル幅へ落として収める。 */
@media (max-width: 767px) {
  /* 既存の ...offer-sites>.meta:nth-of-type(N){grid-column:1|2} は
     特異度 (1,5,2)。こちらも :nth-of-type(n) を付けて (1,5,2) に揃え、
     後方に置くことで上書きする（!important は使わない）。 */
  body.pkn-c-final #page-offers article.offer-card .offer-sites > .meta:nth-of-type(n) {
    grid-column: 1 / -1;
    white-space: nowrap;
  }
  body.pkn-c-final #page-offers article.offer-card .offer-sites {
    row-gap: 2px;
  }
}

/* ============================================================================
   レイアウト層（承認済み設計 02_案件詳細_設計案 の指定に従う）
   狭いセルに文字を押し込むのをやめ、ラベルは縮めずに横スクロールへ逃がす。
   これで「分断」も「切れ」も原理的に起きなくなる。
   設計案の指定:
     コンテナ = display:flex; gap:6px; overflow-x:auto;
     ラベル   = flex:0 0 auto; padding:6px 10px; text-align:center;
   ========================================================================== */

/* (1) 推移グラフのX軸ラベル（30日前／20日前／10日前／今日）
   従来は5等分グリッドで1セル25〜35px。「30日前」は48px必要で必ず割れていた。 */
body.pkn-c-final #page-detail .pkn-d-history-axis {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  justify-content: space-between;
  padding-bottom: 2px;
  -webkit-overflow-scrolling: touch;
}
body.pkn-c-final #page-detail .pkn-d-history-axis > span {
  flex: 0 0 auto;
  white-space: nowrap;
  text-align: center;
}

/* (2) Y軸ラベル（8,000円）: 56px必要に対し48pxだった。縮めず幅を確保する。 */
body.pkn-c-final #page-detail .pkn-history-y-axis {
  min-width: 60px;
}
body.pkn-c-final #page-detail .pkn-history-y-axis > span {
  white-space: nowrap;
}

/* (3) 直近リスト（7/21 15,000円 …）
   従来は5等分グリッドで1セル35〜45px。「15,000円」は68px必要。
   設計案どおり、縮まないチップを横スクロールで並べる。 */
body.pkn-c-final #page-detail .pkn-history-recent {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 4px;
  -webkit-overflow-scrolling: touch;
}
body.pkn-c-final #page-detail .pkn-history-recent > .pkn-history-recent-item {
  flex: 0 0 auto;
  white-space: nowrap;
  text-align: center;
  padding: 6px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
}

/* (4) 関連案件の行
   従来は案件名の枠が19〜45pxまで潰れ、191px必要な名前が1文字ずつ割れていた。
   設計案の flex 配分（順位=固定・名前=可変・金額=固定nowrap）にする。 */
body.pkn-c-final #page-detail .pkn-related-offer {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
body.pkn-c-final #page-detail .pkn-related-offer-rank {
  flex: 0 0 20px;
}
body.pkn-c-final #page-detail .pkn-related-offer-main {
  flex: 1 1 auto;
  min-width: 0;
}
body.pkn-c-final #page-detail .pkn-related-offer-value {
  flex: 0 0 auto;
  white-space: nowrap;
}

/* (5) 日本語1文字孤立の一括是正
   text-wrap:pretty は「最終行が極端に短くなる折返し」をブラウザ側で避ける。
   個別セレクタに keep-all を撒くより副作用が小さく、
   収まらない語を無理に1行へ押し込んで切ることもない。 */
body.pkn-c-final #page-offers,
body.pkn-c-final #page-detail,
body.pkn-c-final #page-exchange {
  text-wrap: pretty;
}

/* (6) 案件カードのサイト名が nowrap のままセル幅を超えて切れる
   （実測 320px:「ポイントインカム」43px超過）。
   live と同じく末尾を省略記号にして収める。金額側は縮めない。 */
body.pkn-c-final #page-offers .pkn-offer .site-ranking li > span:first-child,
body.pkn-c-final #page-offers .pkn-offer .site-ranking li > span:not(:last-child) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.pkn-c-final #page-offers .pkn-offer .site-ranking li {
  display: flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}
body.pkn-c-final #page-offers .pkn-offer .site-ranking li > span:last-child {
  flex: 0 0 auto;
  white-space: nowrap;
}

/* (7) 関連案件の名前が枠を 6px 超える。長語は折って収める。 */
body.pkn-c-final #page-detail .pkn-related-offer-main {
  overflow-wrap: break-word;
}

/* (8) 関連案件が狭幅で3カラムグリッドになり、1列115pxしか無いため
   案件名の枠が7pxまで潰れて縦1列に積まれていた（「CFDネクスト」が高さ109px）。
   承認済み設計 02 は縦積みの1列リスト（display:flex;flex-direction:column;gap:8px）。
   デスクトップの多カラムはそのままに、狭幅だけ1列へ戻す。 */
@media (max-width: 767px) {
  body.pkn-c-final #page-detail .pkn-related-offer-list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

/* (9) 残りの僅差オーバー（3〜5px）を詰める。文字は縮めない。 */
body.pkn-c-final #page-detail .pkn-history-y-axis {
  min-width: 72px;
}
body.pkn-c-final #page-offers .pkn-offer-text-category > summary,
body.pkn-c-final #page-offers details > summary {
  overflow-wrap: break-word;
  min-width: 0;
}

/* ============================================================================
   細部再現（承認済み設計 00〜03 ＋ 04補足 の指定値をあてる）
   2026-07-26。00〜03 は SHA照合済み・承認有効。04補足の値に従う。
   04 が 00〜03 と矛盾する場合は 00〜03 を優先する（04 D節の指示）。

   旧デザインシステムが c-base.css の :root に丸ごと残っており
   （--amber系・--muted:#8A7F6F・--ink/--focus/--shadow の別名、計487参照）、
   個々の出所を追うより仕様値を直接あてるほうが確実なため、
   コンポーネント単位で指定する。すべてページスコープ。
   ========================================================================== */

/* --- パンくず（04 A-0）------------------------------------------------------
   実測 #8A7F6F（3.93:1）。仕様は文字 #4A7275（5.3:1）／現在地 #073F44／
   区切り「›」#6E8A8C（装飾・aria-hidden）。各リンク min-height 44。 */
body.pkn-c-final #page-offers .pkn-v2-crumb,
body.pkn-c-final #page-exchange .pkn-v2-crumb,
body.pkn-c-final #page-detail .pkn-breadcrumb {
  padding: 8px 12px 0;
  font-size: 0.75rem;
  line-height: 1.5;
  font-weight: 400;
  color: #4A7275;
  background: none;
}
body.pkn-c-final #page-offers .pkn-v2-crumb a,
body.pkn-c-final #page-exchange .pkn-v2-crumb a,
body.pkn-c-final #page-detail .pkn-breadcrumb a {
  min-height: 44px;
  min-width: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #4A7275;
}
body.pkn-c-final #page-detail .pkn-breadcrumb-sep {
  color: #6E8A8C;
}
body.pkn-c-final #page-offers .pkn-v2-crumb [aria-current="page"],
body.pkn-c-final #page-exchange .pkn-v2-crumb [aria-current="page"],
body.pkn-c-final #page-detail .pkn-breadcrumb [aria-current="page"] {
  color: #073F44;
  font-weight: 700;
}

/* --- H1＋メタ行（04 A-1）--------------------------------------------------- */
body.pkn-c-final #page-offers .pkn-v2-content > h1,
body.pkn-c-final #page-offers h1.pkn-v2-h1 {
  font-size: 1.5rem;          /* SP 24 */
  line-height: 1.4;
  font-weight: 900;
  word-break: keep-all;
  color: #073F44;
}
body.pkn-c-final #page-offers .intro-meta {
  margin-top: 8px;
  gap: 2px 14px;
  font-size: 0.75rem;
  line-height: 1.7;
  font-weight: 400;
  color: #4A7275;
}

/* --- 選択中条件ボックス（04 A-1）------------------------------------------- */
/* 仕様の「選択中条件ボックス（左テキスト＋右ボタン）」は、live では
   .pkn-mobile-filter-summary（テキストとボタンを含む親）に対応する。
   当初 .pkn-mobile-filter-current（テキスト部のみ）に当てたところ、
   親が height 44 の grid だったため中身が溢れてボタンと重なった（実測で検出）。 */
body.pkn-c-final #page-offers .pkn-mobile-filter-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  height: auto;
  margin: 14px 12px 0;
  padding: 12px 14px;
  gap: 10px;
  background: #E6F7F0;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  box-shadow: none;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-current {
  min-width: 0;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-current > span {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: .04em;
  color: #4A7275;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-current > strong {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 700;
  color: #073F44;
}

/* --- PR開示ボックス【PR】（04 A-2）-----------------------------------------
   比較行より前・H2直後から動かさない。全文を1文字も削らない。折りたたみにしない。 */
/* 既存 body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note が
   2ID指定で勝つため、こちらも #pkn-site-comparison を含めて特異度を揃える。 */
body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note,
body.pkn-c-final #page-detail .pkn-cmp-pr-note {
  padding: 12px 14px;
  border-radius: 12px;
  margin-top: 10px;
  max-width: 100ch;
  font-size: 0.75rem;
  line-height: 1.85;
  font-weight: 400;
  background: #FFF8D7;
  border: 1px solid #E5B92E;
  color: #073F44;
}

/* --- 順位バッジ（比較行）（04 A-2）------------------------------------------
   1位 面 #F8CA36／2位以降 面 #E6F7F0・字 #073F44。
   順位は還元額順であり、紹介報酬の有無で並べ替えない（仕様の注記）。 */
body.pkn-c-final #page-detail .pkn-cmp-rank-badge {
  width: 26px;
  height: 26px;
  min-width: 26px;
  border-radius: 50%;
  flex: 0 0 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8125rem;
  font-weight: 900;
  background: #E6F7F0;
  color: #073F44;
}
body.pkn-c-final #page-detail .pkn-cmp-rank-badge.is-r1,
body.pkn-c-final #page-detail .pkn-cmp-row.pkn-rank-1 .pkn-cmp-rank-badge {
  background: #F8CA36;
  color: #073F44;
}

/* --- 比較行の金額セル（04 A-2）----------------------------------------------
   値 #E83A4F（18px以上boldのため大文字扱い 4.08:1）・ラベル #4A7275。
   金額セルは CTA と同じセルに入れない（現行の重なりの原因）。 */
body.pkn-c-final #page-detail .pkn-cmp-val {
  text-align: right;
  color: #E83A4F;
  font-size: 1.375rem;        /* SP 22 */
  line-height: 1.2;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money-unit {
  font-size: 0.875rem;        /* SP 14 */
  font-weight: 900;
}
body.pkn-c-final #page-detail .pkn-cmp-val .pkn-cmp-val-label,
body.pkn-c-final #page-detail .pkn-cmp-diff-col {
  font-size: 0.6875rem;
  font-weight: 700;
  color: #4A7275;
}

/* --- 条件パネル本文（04 A-2）------------------------------------------------
   条件原文は要約・分割・言い換え・truncate 禁止。
   data-pkn-condition-original を付けた要素をそのまま使う。 */
body.pkn-c-final #page-detail .pkn-condition-panel {
  border: 1px solid #DCE9E5;
  border-radius: 0 12px 12px 12px;   /* タブとの接続 */
}
body.pkn-c-final #page-detail .pkn-condition-panel-head {
  padding: 12px 14px;
  border-bottom: 1px solid #DCE9E5;
  background: #F3F9F5;
}
body.pkn-c-final #page-detail .pkn-condition-original {
  padding: 14px;
  max-width: 76ch;
  font-size: 0.875rem;
  line-height: 1.85;
  font-weight: 400;
  color: #073F44;
}

/* --- PC（>=1024）の差分 ---------------------------------------------------- */
@media (min-width: 1024px) {
  body.pkn-c-final #page-offers .pkn-v2-content > h1,
  body.pkn-c-final #page-offers h1.pkn-v2-h1 { font-size: 2rem; line-height: 1.35; }
  body.pkn-c-final #page-offers .intro-meta { margin-top: 10px; gap: 4px 20px; font-size: 0.8125rem; }
  body.pkn-c-final #page-detail .pkn-cmp-rank-badge {
    width: 28px; height: 28px; min-width: 28px; flex: 0 0 28px; font-size: 0.875rem;
  }
  body.pkn-c-final #page-detail .pkn-cmp-val { font-size: 1.5rem; }
  body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money-unit { font-size: 0.9375rem; }
  body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note,
  body.pkn-c-final #page-detail .pkn-cmp-pr-note { padding: 14px 18px; margin-top: 12px; font-size: 0.8125rem; }
  body.pkn-c-final #page-detail .pkn-condition-panel-head { padding: 14px 20px; }
  body.pkn-c-final #page-detail .pkn-condition-original { padding: 18px 20px; font-size: 0.9375rem; line-height: 1.9; }
  body.pkn-c-final #page-offers .pkn-v2-crumb,
  body.pkn-c-final #page-exchange .pkn-v2-crumb,
  body.pkn-c-final #page-detail .pkn-breadcrumb { padding: 0 8px; }
}

/* --- 細部再現(第2弾) -------------------------------------------------------
   実測で残っていたコントラスト不足を、仕様値で潰す。 */

/* (1) 旧デザインシステムの残存トークンをページスコープで写像。
   c-base.css の :root が --amber系 と --muted:#8A7F6F を定義しており、
   Phase1 で写像した --c-* とは別系統（計487参照）。Home には及ばせない。 */
body.pkn-c-final #page-offers,
body.pkn-c-final #page-detail,
body.pkn-c-final #page-exchange {
  --muted: #4A7275;          /* was #8A7F6F (3.93:1) */
  --amber: #C9430A;          /* was #FFB300 */
  --amber-deep: #C9430A;     /* was #FFA000 (2.04:1) */
  --amber-ink: #073F44;
  --amber-ink-dark: #073F44;
  --champagne: #FFF8D7;      /* was #FFF8E1 */
  --gold: #F8CA36;           /* was #F3D24A */
  --gold-line: #E5B92E;      /* was #FFECB3 */
  --gold-hi: #FFF8D7;        /* was #FFE7A6 */
  --espresso: #073F44;       /* was #4E342E */
  --brown-ink: #073F44;      /* replaces the legacy brown ink */
  --ivory: #FFFDF5;          /* was #FFFCF2 */
  --coral: #C9430A;          /* was #E85D4E */
  --coral-deep: #B03B08;     /* was #C74334 */
  --coral-tint: #FFF8D7;     /* was #FDECE9 */
  --line: #DCE9E5;           /* was #ECE2CF */
  --line-2: #EDF3F1;         /* was #F4EDE0 */
  --line-strong: #BFD4CE;    /* was #D9CBAE */
  /* ポイントサイトのブランド色（--series-*）は識別子のため変更しない */
}

/* (2) フッターのブランド名が面と同色で実質不可視だった（実測 1:1）。
   04 A-0 のフッター仕様（面 #073F44・ロゴ字 SP16／PC18・900）に合わせる。 */
body.pkn-c-final:has(#page-offers) .pkn-footer-brand,
body.pkn-c-final:has(#page-detail) .pkn-footer-brand,
body.pkn-c-final:has(#page-exchange) .pkn-footer-brand,
body.pkn-c-final:has(#page-offers) .pkn-footer-brand span,
body.pkn-c-final:has(#page-detail) .pkn-footer-brand span,
body.pkn-c-final:has(#page-exchange) .pkn-footer-brand span {
  color: #FFFFFF;
  font-size: 1rem;
  font-weight: 900;
}
@media (min-width: 1024px) {
  body.pkn-c-final:has(#page-offers) .pkn-footer-brand,
  body.pkn-c-final:has(#page-detail) .pkn-footer-brand,
  body.pkn-c-final:has(#page-exchange) .pkn-footer-brand { font-size: 1.125rem; }
}

/* (3) 紹介CTA が旧 #FC6405 のまま（白文字 3.02:1）。
   04 は「#FC6405 に戻さない」と明記。仕様値 #C9430A（4.89:1）へ。 */
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration,
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-referral,
body.pkn-c-final #page-detail a.pkn-cmp-dual-cta:not(.is-login) {
  background: #C9430A;
  border-color: #C9430A;
  color: #FFFFFF;
}

/* (4) 「取得データ上の直近最高」チップが旧赤 #E85D4E（白文字 3.44:1）。
   00 の「白文字を載せる赤面」＝ #D22B3F（AA対応値）へ。 */
body.pkn-c-final #page-detail .pkn-badge-highest,
body.pkn-c-final #page-offers .pkn-badge-highest {
  background: #D22B3F;
  color: #FFFFFF;
}

/* (5) 「同じカテゴリを見る →」等のセクションリンクは緑 #067052（5.94:1）。 */
body.pkn-c-final #page-detail .pkn-sec-link,
body.pkn-c-final #page-offers .pkn-sec-link {
  color: #067052;
}

/* --- 細部再現(第3弾) -------------------------------------------------------
   04 の仕様どおりに、サイトチップ・β版・リンク緑を寄せる。 */

/* (1) サイトチップがブランド色の塗り＋白文字で 2.51〜3.45:1。
   04 A-2 の「バッジ 面 #E6F7F0・枠 1px #BFD4CE」に従う。
   サイト名のテキストは残るので識別情報は失われない
   （むしろ色だけに依存しない表示になる＝WCAG 1.4.1）。
   --series-* のブランド色定義自体は残す（他用途の識別子のため）。 */
body.pkn-c-final #page-detail .pkn-chip-site-label,
body.pkn-c-final #page-offers .pkn-chip-site-label,
body.pkn-c-final #page-exchange .pkn-chip-site-label {
  background: #E6F7F0;
  border: 1px solid #BFD4CE;
  color: #073F44;
}

/* (2) β版まわり（04 A-3: β版バッジ 面 #E6F7F0・字 #073F44／
   「β版・対応データ限定」ブロック 面 #F6FBF9・枠 1px #DCE9E5）。 */
body.pkn-c-final #page-exchange .pkn-v2-beta-summary,
body.pkn-c-final #page-exchange .pkn-v2-beta-body {
  color: #073F44;
  background: #F6FBF9;
}
body.pkn-c-final #page-exchange .pkn-exv2-beta,
body.pkn-c-final #page-exchange .pkn-v2-beta-badge {
  background: #E6F7F0;
  color: #073F44;
  border: 0;
}

/* (3) 「未確認あり」バッジ（04 A-3: 面 #fff または #FFF8D7・枠 1px #E5B92E・▲付き）。
   実測 4.47:1 と僅差で不足していたため字を ink へ。▲ は残す（色のみに依存しない）。 */
body.pkn-c-final #page-exchange .pkn-exv2-badge {
  color: #073F44;
  background: #FFF8D7;
  border: 1px solid #E5B92E;
}

/* (4) リンク緑が #0B8F72（3.65〜4.05:1）。仕様の #067052（5.94:1）へ。 */
body.pkn-c-final #page-offers .pkn-offer a,
body.pkn-c-final #page-offers .pkn-offer .offer-cta-label,
body.pkn-c-final #page-offers .pkn-offer .pkn-offer-badge,
body.pkn-c-final #page-detail .pkn-sec-link,
body.pkn-c-final #page-exchange .pkn-exv2-source-link {
  color: #067052;
}

/* (5) app-v2.css に残る #8A7F6F の直値をページスコープで上書き。 */
body.pkn-c-final #page-offers .pkn-v2-strip small,
body.pkn-c-final #page-offers .pkn-cat-btn,
body.pkn-c-final #page-offers .pkn-sort-btn,
body.pkn-c-final #page-detail .pkn-v2-strip small,
body.pkn-c-final #page-exchange .pkn-v2-strip small,
body.pkn-c-final #page-exchange .pkn-exv2-chev {
  color: #4A7275;
}

/* --- 細部再現(第4弾・残り) --------------------------------------------------
   実測で残っていた個別要素を仕様値へ。すべてページスコープ。 */
body.pkn-c-final #page-offers .pkn-money-unit,
body.pkn-c-final #page-detail .pkn-money-unit,
body.pkn-c-final #page-exchange .pkn-money-unit,
body.pkn-c-final #page-offers .pkn-empty-desc,
body.pkn-c-final #page-detail .pkn-empty-desc,
body.pkn-c-final #page-exchange .pkn-empty-desc,
body.pkn-c-final #page-detail .pkn-history-toggle,
body.pkn-c-final #page-detail .pkn-history-toggle button {
  color: #4A7275;            /* was #8A7F6F / #68747C（3.86〜4.45:1） */
}
/* 難易度・カテゴリの pill は 04 の「面 #E6F7F0＋ink」に合わせる（4.39:1→10.9:1） */
body.pkn-c-final #page-offers .pkn-pill-indigo,
body.pkn-c-final #page-detail .pkn-pill-indigo,
body.pkn-c-final #page-exchange .pkn-pill-indigo {
  color: #073F44;
  background: #E6F7F0;
}
/* 案件カード内の緑は仕様の #067052（5.94:1）へ。#0B8F72 は 3.65:1 */
body.pkn-c-final #page-offers .pkn-offer .pkn-badge-30d,
body.pkn-c-final #page-offers .pkn-offer [class*="badge"],
body.pkn-c-final #page-offers .pkn-offer strong,
body.pkn-c-final #page-detail .pkn-sec-link,
body.pkn-c-final #page-detail a.pkn-sec-link {
  color: #067052;
}
/* サイトチップに枠1pxを足した分、内寸が2px不足して省略が出たので詰める */
body.pkn-c-final #page-offers .pkn-chip-site-label,
body.pkn-c-final #page-detail .pkn-chip-site-label,
body.pkn-c-final #page-exchange .pkn-chip-site-label {
  padding-left: 7px;
  padding-right: 7px;
}

/* ===== DG1 approved redlines: authoritative final layer ================= */
body.pkn-c-final #page-offers,
body.pkn-c-final #page-detail,
body.pkn-c-final #page-exchange {
  --dg1-ink: #073F44;
  --dg1-muted: #4A7275;
  --dg1-green: #067052;
  --dg1-mint: #E6F7F0;
  --dg1-mint-soft: #F6FBF9;
  --dg1-line: #DCE9E5;
  --dg1-line-strong: #BFD4CE;
  --dg1-line-soft: #EDF3F1;
  --dg1-yellow: #F8CA36;
  --dg1-yellow-line: #E5B92E;
  --dg1-yellow-soft: #FFF8D7;
  --dg1-reward: #E83A4F;
  --dg1-referral: #C9430A;
  min-width: 0;
  color: var(--dg1-ink);
  background: #FFFFFF;
}

/* Shared disclosure bar. */
body.pkn-c-final:has(#page-offers) .pkn-disclosure-bar,
body.pkn-c-final:has(#page-detail) .pkn-disclosure-bar,
body.pkn-c-final:has(#page-exchange) .pkn-disclosure-bar {
  height: auto;
  min-height: 48px;
  gap: 8px;
  padding: 4px 12px;
  border: 0;
  border-radius: 0;
  color: #073F44;
  background: #FFF8D7;
  box-shadow: none;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final:has(#page-offers) .pkn-disclosure-bar-link,
body.pkn-c-final:has(#page-detail) .pkn-disclosure-bar-link,
body.pkn-c-final:has(#page-exchange) .pkn-disclosure-bar-link {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0 10px;
  color: #073F44;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Shared header. */
body.pkn-c-final:has(#page-offers) .pkn-header,
body.pkn-c-final:has(#page-detail) .pkn-header,
body.pkn-c-final:has(#page-exchange) .pkn-header {
  min-height: 56px;
  border: 0;
  border-bottom: 1px solid #E5B92E;
  color: #073F44;
  background: #F8CA36;
  box-shadow: none;
}
body.pkn-c-final:has(#page-offers) .pkn-header-inner,
body.pkn-c-final:has(#page-detail) .pkn-header-inner,
body.pkn-c-final:has(#page-exchange) .pkn-header-inner {
  width: 100%;
  max-width: 1240px;
  min-height: 56px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  padding: 6px 10px;
  box-sizing: border-box;
}
body.pkn-c-final:has(#page-offers) .pkn-logo,
body.pkn-c-final:has(#page-detail) .pkn-logo,
body.pkn-c-final:has(#page-exchange) .pkn-logo {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  color: #073F44;
}
body.pkn-c-final:has(#page-offers) .pkn-logo-mark,
body.pkn-c-final:has(#page-detail) .pkn-logo-mark,
body.pkn-c-final:has(#page-exchange) .pkn-logo-mark {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 0;
  border-radius: 50%;
  color: #F8CA36;
  background: #073F44;
  box-shadow: none;
}
body.pkn-c-final:has(#page-offers) .pkn-logo-mark img,
body.pkn-c-final:has(#page-detail) .pkn-logo-mark img,
body.pkn-c-final:has(#page-exchange) .pkn-logo-mark img {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
body.pkn-c-final:has(#page-offers) .pkn-logo-mark::after,
body.pkn-c-final:has(#page-detail) .pkn-logo-mark::after,
body.pkn-c-final:has(#page-exchange) .pkn-logo-mark::after {
  content: "P";
  color: #F8CA36;
  font-size: 16px;
  font-weight: 900;
  line-height: 1;
}
body.pkn-c-final:has(#page-offers) .pkn-logo-text,
body.pkn-c-final:has(#page-detail) .pkn-logo-text,
body.pkn-c-final:has(#page-exchange) .pkn-logo-text {
  color: #073F44;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: .01em;
}
body.pkn-c-final:has(#page-offers) .pkn-logo-tag,
body.pkn-c-final:has(#page-detail) .pkn-logo-tag,
body.pkn-c-final:has(#page-exchange) .pkn-logo-tag {
  display: none;
}
body.pkn-c-final:has(#page-offers) .pkn-nav,
body.pkn-c-final:has(#page-detail) .pkn-nav,
body.pkn-c-final:has(#page-exchange) .pkn-nav {
  display: flex;
  align-items: center;
  margin-left: auto;
}
body.pkn-c-final:has(#page-offers) .pkn-nav-link,
body.pkn-c-final:has(#page-detail) .pkn-nav-link,
body.pkn-c-final:has(#page-exchange) .pkn-nav-link {
  min-height: 44px;
  color: #073F44;
  font-size: 14px;
  font-weight: 700;
  text-underline-offset: 6px;
  text-decoration-thickness: 2px;
}
body.pkn-c-final:has(#page-offers) .pkn-nav-link:not(.pkn-c-search),
body.pkn-c-final:has(#page-detail) .pkn-nav-link:not(.pkn-c-search),
body.pkn-c-final:has(#page-exchange) .pkn-nav-link:not(.pkn-c-search) {
  display: none;
}
body.pkn-c-final:has(#page-offers) .pkn-c-search,
body.pkn-c-final:has(#page-detail) .pkn-c-search,
body.pkn-c-final:has(#page-exchange) .pkn-c-search,
body.pkn-c-final:has(#page-offers) .pkn-mm-btn,
body.pkn-c-final:has(#page-detail) .pkn-mm-btn,
body.pkn-c-final:has(#page-exchange) .pkn-mm-btn {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 10px;
  color: #073F44;
  background: transparent;
  box-shadow: none;
}
body.pkn-c-final:has(#page-offers) .pkn-c-search svg,
body.pkn-c-final:has(#page-detail) .pkn-c-search svg,
body.pkn-c-final:has(#page-exchange) .pkn-c-search svg {
  width: 21px;
  height: 21px;
  transform: none;
}
body.pkn-c-final:has(#page-offers) .pkn-mm-btn > span,
body.pkn-c-final:has(#page-detail) .pkn-mm-btn > span,
body.pkn-c-final:has(#page-exchange) .pkn-mm-btn > span {
  font-size: 22px;
  line-height: 1;
  transform: none;
}

/* Shared footer. */
body.pkn-c-final:has(#page-offers) .pkn-footer,
body.pkn-c-final:has(#page-detail) .pkn-footer,
body.pkn-c-final:has(#page-exchange) .pkn-footer {
  margin-top: 28px;
  padding: 24px 16px 26px;
  border: 0;
  color: #E6F7F0;
  background: #073F44;
  box-shadow: none;
}
body.pkn-c-final:has(#page-offers) .pkn-footer::before,
body.pkn-c-final:has(#page-detail) .pkn-footer::before,
body.pkn-c-final:has(#page-exchange) .pkn-footer::before {
  display: none;
  content: none;
}
body.pkn-c-final:has(#page-offers) .pkn-footer-inner,
body.pkn-c-final:has(#page-detail) .pkn-footer-inner,
body.pkn-c-final:has(#page-exchange) .pkn-footer-inner {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0;
}
body.pkn-c-final:has(#page-offers) .pkn-footer-brand,
body.pkn-c-final:has(#page-detail) .pkn-footer-brand,
body.pkn-c-final:has(#page-exchange) .pkn-footer-brand {
  min-height: 28px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: #FFFFFF;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.4;
}
body.pkn-c-final:has(#page-offers) .pkn-footer .pkn-logo-mark,
body.pkn-c-final:has(#page-detail) .pkn-footer .pkn-logo-mark,
body.pkn-c-final:has(#page-exchange) .pkn-footer .pkn-logo-mark {
  width: 26px;
  height: 26px;
  flex-basis: 26px;
  color: #073F44;
  background: #F8CA36;
}
body.pkn-c-final:has(#page-offers) .pkn-footer .pkn-logo-mark::after,
body.pkn-c-final:has(#page-detail) .pkn-footer .pkn-logo-mark::after,
body.pkn-c-final:has(#page-exchange) .pkn-footer .pkn-logo-mark::after {
  color: #073F44;
  font-size: 14px;
}
body.pkn-c-final:has(#page-offers) .pkn-footer-text,
body.pkn-c-final:has(#page-detail) .pkn-footer-text,
body.pkn-c-final:has(#page-exchange) .pkn-footer-text {
  margin: 10px 0 0;
  color: #C9E4DA;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.8;
}
body.pkn-c-final:has(#page-offers) .pkn-footer-copy,
body.pkn-c-final:has(#page-detail) .pkn-footer-copy,
body.pkn-c-final:has(#page-exchange) .pkn-footer-copy {
  margin: 10px 0 0;
  color: #A9CFC4;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.6;
}
body.pkn-c-final:has(#page-offers) .pkn-legal-nav,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav {
  width: 100%;
  max-width: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 12px;
  margin: 0;
  padding: 0 16px 26px;
  border: 0;
  color: #E6F7F0;
  background: #073F44;
  box-sizing: border-box;
}
body.pkn-c-final:has(#page-offers) .pkn-legal-nav a,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav a,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a {
  min-width: 0;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 0;
  color: #E6F7F0;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}

/* Shared breadcrumbs. */
body.pkn-c-final #page-offers .breadcrumb,
body.pkn-c-final #page-detail .breadcrumb,
body.pkn-c-final #page-exchange .breadcrumb {
  min-height: 44px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 6px;
  margin: 0;
  padding: 8px 0 0;
  color: #6E8A8C;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-offers .breadcrumb a,
body.pkn-c-final #page-detail .breadcrumb a,
body.pkn-c-final #page-exchange .breadcrumb a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
}
body.pkn-c-final #page-offers .breadcrumb .pkn-breadcrumb-sep,
body.pkn-c-final #page-detail .breadcrumb .pkn-breadcrumb-sep,
body.pkn-c-final #page-exchange .breadcrumb .pkn-breadcrumb-sep {
  color: #6E8A8C;
}
body.pkn-c-final #page-offers .breadcrumb .is-current,
body.pkn-c-final #page-detail .breadcrumb .is-current,
body.pkn-c-final #page-exchange .breadcrumb .is-current {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #073F44;
  font-weight: 700;
}

/* Offers: page frame and controls. */
body.pkn-c-final #page-offers .pkn-v2-offers-head,
body.pkn-c-final #page-offers .pkn-mobile-filter,
body.pkn-c-final #page-offers .pkn-search-body {
  width: min(720px, calc(100% - 24px));
  max-width: none;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
}
body.pkn-c-final #page-offers .pkn-v2-offers-head {
  padding: 0 0 12px;
}
body.pkn-c-final #page-offers .pkn-v2-h1 {
  margin: 0;
  padding: 6px 0 0;
  border: 0;
  color: #073F44;
  font-size: 24px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0;
  word-break: keep-all;
  overflow-wrap: normal;
}
body.pkn-c-final #page-offers .intro-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 14px;
  margin: 8px 0 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
}
body.pkn-c-final #page-offers .intro-meta > span {
  min-height: 0;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  font: inherit;
  white-space: nowrap;
}
body.pkn-c-final #page-offers .pkn-mobile-filter {
  display: block;
  margin-top: 14px;
  margin-bottom: 0;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-summary {
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  color: #073F44;
  background: #E6F7F0;
  box-shadow: none;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-current {
  min-width: 0;
  display: block;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-current > span {
  display: block;
  color: #4A7275;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .04em;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-current > strong {
  display: block;
  margin-top: 3px;
  color: #073F44;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}
body.pkn-c-final #page-offers .pkn-mobile-filter-toggle {
  min-height: 44px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 14px;
  border: 1px solid #073F44;
  border-radius: 999px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}
body.pkn-c-final #page-offers .pkn-sp-filter-panel {
  margin-top: 10px;
  padding: 14px;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  background: #FFFFFF;
}
body.pkn-c-final #page-offers .pkn-search-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  padding: 14px 0 22px;
}
body.pkn-c-final #page-offers .filter-panel {
  display: none;
}
body.pkn-c-final #page-offers .pkn-results {
  width: 100%;
  min-width: 0;
  padding: 0;
}
body.pkn-c-final #page-offers .pkn-results-bar {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 16px;
  padding: 0 0 10px;
  border: 0;
  border-bottom: 1px solid #DCE9E5;
}
body.pkn-c-final #page-offers .pkn-v2-count {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-offers .pkn-v2-count .is-num {
  color: #073F44;
  font-size: 18px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-offers .pkn-number-unit,
body.pkn-c-final #page-offers .pkn-number-unit > b,
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-number-unit,
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-number-unit > b {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-offers .pkn-v2-sort-cycle {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  border: 1px solid #BFD4CE;
  border-radius: 999px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}
body.pkn-c-final #page-offers .offer-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}

/* Offers: approved card hierarchy. */
body.pkn-c-final #page-offers article.offer-card {
  position: relative;
  min-width: 0;
  display: grid;
  grid-template-columns: clamp(84px, calc(40vw - 60px), 96px) minmax(0, 1fr);
  grid-template-areas:
    "badges badges"
    "title title"
    "image action"
    "image reward"
    "sites sites"
    "meta-one meta-two"
    "cta cta";
  column-gap: 12px;
  row-gap: 10px;
  align-items: start;
  overflow: visible;
  padding: clamp(12px, calc(6.667vw - 12px), 14px);
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: 0 1px 2px rgba(7,63,68,.06);
}
body.pkn-c-final #page-offers article.offer-card .offer-main,
body.pkn-c-final #page-offers article.offer-card .offer-sites {
  display: contents;
}
body.pkn-c-final #page-offers article.offer-card .status-line {
  grid-area: badges;
  min-width: 0;
  min-height: 26px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
}
body.pkn-c-final #page-offers article.offer-card .pkn-offer-category,
body.pkn-c-final #page-offers article.offer-card .status-line > .badge {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border: 0;
  border-radius: 999px;
  color: #073F44;
  background: #E6F7F0;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}
body.pkn-c-final #page-offers article.offer-card .status-line > .badge:not(.badge-verified) {
  background: #FFF8D7;
}
body.pkn-c-final #page-offers article.offer-card .status-line > .badge-verified {
  color: #FFFFFF;
  background: #D22B3F;
}
body.pkn-c-final #page-offers article.offer-card .offer-main > h3 {
  grid-area: title;
  min-width: 0;
  margin: 0;
  color: #073F44;
  font-size: clamp(15px, calc(3.333vw + 3px), 16px);
  font-weight: 700;
  line-height: 1.55;
  word-break: keep-all;
  overflow-wrap: normal;
}
body.pkn-c-final #page-offers article.offer-card .offer-main > h3 > a.pkn-oc.pkn-offer {
  position: static;
  min-width: 44px;
  min-height: 44px;
  display: inline;
  margin: -10px;
  padding: 10px;
  border: 0;
  color: inherit;
  background: transparent;
  box-shadow: none;
  text-decoration: none;
}
body.pkn-c-final #page-offers article.offer-card .offer-main > h3 > a.pkn-oc.pkn-offer::before {
  content: none;
}
body.pkn-c-final #page-offers article.offer-card .offer-main > h3 > a.pkn-oc.pkn-offer::after {
  position: absolute;
  inset: 0;
  content: "";
}
body.pkn-c-final #page-offers article.offer-card .offer-image {
  grid-area: image;
  width: clamp(84px, calc(40vw - 60px), 96px);
  height: clamp(56px, calc(26.667vw - 40px), 64px);
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: start;
  overflow: hidden;
  border: 1px solid #DCE9E5;
  border-radius: 8px;
  background: #FFF8E1;
  box-shadow: none;
}
body.pkn-c-final #page-offers article.offer-card .offer-image > .pkn-offer-media,
body.pkn-c-final #page-offers article.offer-card .offer-image > .pkn-offer-media > img {
  width: 100%;
  height: 100%;
  max-width: none;
  padding: 0;
  border: 0;
  border-radius: 0;
  object-fit: contain;
}
body.pkn-c-final #page-offers article.offer-card .offer-main > .offer-action {
  grid-area: action;
  min-width: 0;
  margin: 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.65;
  overflow-wrap: normal;
}
body.pkn-c-final #page-offers article.offer-card .offer-main > .reward-value {
  grid-area: reward;
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin: 0;
  color: #4A7275;
  line-height: 1.15;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-offers article.offer-card .pkn-offer-reward-label {
  flex: 0 0 auto;
  color: #4A7275;
  font-size: 11px;
  font-weight: 700;
}
body.pkn-c-final #page-offers article.offer-card .pkn-offer-reward-number {
  min-width: 0;
  color: #E83A4F;
  font-size: clamp(24px, calc(13.333vw - 24px), 28px);
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: -.02em;
  white-space: nowrap;
}
body.pkn-c-final #page-offers article.offer-card .pkn-offer-reward-unit {
  margin-left: 1px;
  font-size: clamp(14px, calc(6.667vw - 10px), 16px);
  font-weight: 900;
}
body.pkn-c-final #page-offers article.offer-card .site-ranking {
  grid-area: sites;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-top: 1px solid #EDF3F1;
  list-style: none;
}
body.pkn-c-final #page-offers article.offer-card .site-ranking > li {
  min-height: 34px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #F2F7F5;
  color: #073F44;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-offers article.offer-card .site-ranking > li::before {
  content: none;
}
body.pkn-c-final #page-offers article.offer-card .pkn-offer-rank {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #073F44;
  background: #F8CA36;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}
body.pkn-c-final #page-offers article.offer-card .site-ranking > li > span:not(.pkn-offer-rank) {
  min-width: 0;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: normal;
}
body.pkn-c-final #page-offers article.offer-card .site-ranking > li > strong {
  color: #073F44;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-offers article.offer-card .offer-sites > .meta {
  min-width: 0;
  margin: 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  white-space: nowrap;
}
body.pkn-c-final #page-offers article.offer-card .offer-sites > .meta:nth-of-type(1) {
  grid-area: meta-one;
}
body.pkn-c-final #page-offers article.offer-card .offer-sites > .meta:nth-of-type(2) {
  grid-area: meta-two;
}
body.pkn-c-final #page-offers article.offer-card .offer-cta-label {
  grid-area: cta;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 0;
  padding: 6px 0 0;
  border-top: 1px solid #EDF3F1;
  color: #067052;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  white-space: nowrap;
}
body.pkn-c-final #page-offers article.offer-card .pkn-offer-id {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
body.pkn-c-final #page-offers article.offer-card:has(h3 > a:focus-visible) {
  box-shadow: inset 0 0 0 2px #073F44, inset 0 0 0 5px #FFF8D7;
}
body.pkn-c-final #page-offers article.offer-card h3 > a:focus-visible {
  outline: 0;
  box-shadow: none;
}

/* Offers: pager, filters, states and SSR category index. */
body.pkn-c-final #page-offers .pkn-pager {
  width: 100%;
  max-width: none;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px auto 0;
  padding: 0;
  overflow: visible;
}
body.pkn-c-final #page-offers .pkn-pager > button.pkn-pager-btn {
  width: auto;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  flex: 0 0 auto;
  padding: 0 8px;
  border: 1px solid #BFD4CE;
  border-radius: 10px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 14px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-offers .pkn-pager > button.pkn-pager-btn.is-active {
  border-color: #073F44;
  color: #FFFFFF;
  background: #073F44;
  cursor: default;
}
body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-gap {
  width: auto;
  min-width: 32px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #4A7275;
  font-size: 14px;
  font-weight: 400;
}
body.pkn-c-final #page-offers .pkn-loading,
body.pkn-c-final #page-offers .feedback-panel {
  padding: 20px 16px;
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  color: #4A7275;
  background: #F6FBF9;
  box-shadow: none;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
}
body.pkn-c-final #page-offers .feedback-panel h2 {
  margin: 0;
  color: #073F44;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.6;
}
body.pkn-c-final #page-offers .feedback-panel p {
  margin: 8px 0 0;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.8;
}
body.pkn-c-final #page-offers .filter-panel {
  width: 288px;
  box-sizing: border-box;
  padding: 20px;
  border: 1px solid #DCE9E5;
  border-radius: 16px;
  background: #FFFFFF;
  box-shadow: none;
}
body.pkn-c-final #page-offers .filter-panel h2 {
  margin: 0 0 16px;
  color: #073F44;
  font-size: 18px;
  font-weight: 900;
}
body.pkn-c-final #page-offers .pkn-v2-side-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}
body.pkn-c-final #page-offers .pkn-v2-side-search input,
body.pkn-c-final #page-offers .pkn-search-sp-input {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #BFD4CE;
  border-radius: 10px;
  color: #073F44;
  background: #FFFFFF;
  font-size: 13px;
}
body.pkn-c-final #page-offers .pkn-v2-side-search button,
body.pkn-c-final #page-offers .pkn-search-sp-btn {
  min-width: 44px;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #073F44;
  border-radius: 10px;
  color: #FFFFFF;
  background: #073F44;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}
body.pkn-c-final #page-offers .pkn-filter-sec {
  margin: 0;
  padding: 16px 0 0;
  border: 0;
  border-top: 1px solid #EDF3F1;
}
body.pkn-c-final #page-offers .pkn-filter-sec + .pkn-filter-sec {
  margin-top: 16px;
}
body.pkn-c-final #page-offers .pkn-filter-label,
body.pkn-c-final #page-offers .pkn-sp-filter-title {
  margin: 0 0 8px;
  color: #073F44;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
}
body.pkn-c-final #page-offers .pkn-filter-cats,
body.pkn-c-final #page-offers .pkn-feature-chips,
body.pkn-c-final #page-offers .pkn-diff-wrap,
body.pkn-c-final #page-offers .pkn-v2-side-sorts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body.pkn-c-final #page-offers .pkn-cat-btn,
body.pkn-c-final #page-offers .pkn-diff-btn,
body.pkn-c-final #page-offers .pkn-sort-btn,
body.pkn-c-final #page-offers .pkn-chip-btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 14px;
  border: 1px solid #DCE9E5;
  border-radius: 999px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-offers .pkn-cat-btn.is-active,
body.pkn-c-final #page-offers .pkn-diff-btn.is-active,
body.pkn-c-final #page-offers .pkn-sort-btn.is-active,
body.pkn-c-final #page-offers .pkn-chip-btn[aria-pressed="true"] {
  border-color: #067052;
  color: #073F44;
  background: #E6F7F0;
  font-weight: 700;
}
body.pkn-c-final #page-offers .pkn-filter-item {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: #073F44;
  background: transparent;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-offers .pkn-filter-item input[type="checkbox"] {
  position: static;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin: 0;
  opacity: 1;
  pointer-events: auto;
  accent-color: #067052;
}
body.pkn-c-final #page-offers .pkn-filter-item .pkn-filter-check {
  display: none;
}
body.pkn-c-final #page-offers .pkn-filter-item:has(input:checked) .pkn-filter-name {
  color: #073F44;
  font-weight: 700;
}
body.pkn-c-final #page-offers .pkn-filter-item:has(input:disabled) {
  color: #4A7275;
  cursor: default;
}
body.pkn-c-final #page-offers .pkn-filter-item:has(input:focus-visible) {
  border-radius: 10px;
  box-shadow: inset 0 0 0 2px #073F44;
}
body.pkn-c-final #page-offers .pkn-filter-item input:focus-visible {
  outline: 0;
}
body.pkn-c-final #page-offers .pkn-diff-help-btn {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  display: inline-grid;
  place-items: center;
  margin: -10px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #073F44;
  background: radial-gradient(circle, #FFF8D7 0 11px, #E5B92E 11px 12px, transparent 12px);
  box-shadow: none;
  font-size: 12px;
  font-weight: 700;
}
body.pkn-c-final #page-offers .pkn-diff-popover {
  color: #073F44;
  background: #FFFFFF;
  border-color: #DCE9E5;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list {
  margin: 0;
  padding: 18px 12px 22px;
  border-top: 1px solid #DCE9E5;
  background: #F6FBF9;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list > .pkn-offer-text-list-inner {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-list-inner > h2 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  color: #073F44;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-list-inner > h2::before {
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 2px;
  background: #F8CA36;
  content: "";
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-note {
  max-width: 82ch;
  margin: 8px 0 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.75;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-list-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  margin-top: 14px;
  overflow: visible;
  border: 0;
  border-radius: 0;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group {
  min-width: 0;
  margin: 0;
  overflow: visible;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  background: #FFFFFF;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group > summary {
  width: 100%;
  min-height: 48px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 14px;
  color: #073F44;
  background: #FFFFFF;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  list-style: none;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group > summary::before {
  content: none;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group > summary::after {
  width: auto;
  height: auto;
  flex: 0 0 auto;
  color: #4A7275;
  content: "⌄";
  font-size: 16px;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group[open] > summary::after {
  transform: rotate(180deg);
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group[open] > .pkn-offer-text-links {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  margin: 0;
  padding: 2px 14px 12px;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-links li {
  min-width: 0;
  min-height: 44px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
}
body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #067052;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: normal;
}

@media (min-width: 768px) {
  body.pkn-c-final #page-offers .pkn-v2-offers-head,
  body.pkn-c-final #page-offers .pkn-mobile-filter,
  body.pkn-c-final #page-offers .pkn-search-body {
    width: min(720px, calc(100% - 32px));
  }
  body.pkn-c-final #page-offers article.offer-card {
    grid-template-columns: 120px minmax(0, 1fr);
    column-gap: 14px;
    padding: 16px;
    border-radius: 16px;
  }
  body.pkn-c-final #page-offers article.offer-card .offer-image {
    width: 120px;
    height: 80px;
  }
  body.pkn-c-final #page-offers article.offer-card .offer-main > h3 {
    font-size: 18px;
    line-height: 1.5;
  }
  body.pkn-c-final #page-offers article.offer-card .pkn-offer-reward-number {
    font-size: 32px;
    line-height: 1.1;
  }
  body.pkn-c-final #page-offers article.offer-card .pkn-offer-reward-unit {
    font-size: 18px;
  }
  body.pkn-c-final #page-offers article.offer-card .site-ranking > li {
    min-height: 36px;
  }
  body.pkn-c-final #page-offers article.offer-card .pkn-offer-rank {
    width: 20px;
    height: 20px;
  }
}

@media (min-width: 768px) {
  body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .pkn-detail-main > .pkn-detail-summary {
    grid-template-columns: 1.2fr 1fr 1fr;
  }
  body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .pkn-detail-main > .pkn-detail-summary .pkn-ds-cell:first-child {
    grid-column: auto;
  }
}

@media (min-width: 1024px) {
  body.pkn-c-final:has(#page-offers) .pkn-disclosure-bar,
  body.pkn-c-final:has(#page-detail) .pkn-disclosure-bar,
  body.pkn-c-final:has(#page-exchange) .pkn-disclosure-bar {
    min-height: 56px;
    gap: 12px;
    padding: 0;
    font-size: 13px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-header,
  body.pkn-c-final:has(#page-detail) .pkn-header,
  body.pkn-c-final:has(#page-exchange) .pkn-header,
  body.pkn-c-final:has(#page-offers) .pkn-header-inner,
  body.pkn-c-final:has(#page-detail) .pkn-header-inner,
  body.pkn-c-final:has(#page-exchange) .pkn-header-inner {
    min-height: 76px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-header-inner,
  body.pkn-c-final:has(#page-detail) .pkn-header-inner,
  body.pkn-c-final:has(#page-exchange) .pkn-header-inner {
    padding: 0 24px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-logo,
  body.pkn-c-final:has(#page-detail) .pkn-logo,
  body.pkn-c-final:has(#page-exchange) .pkn-logo {
    gap: 10px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-logo-mark,
  body.pkn-c-final:has(#page-detail) .pkn-logo-mark,
  body.pkn-c-final:has(#page-exchange) .pkn-logo-mark {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-logo-mark::after,
  body.pkn-c-final:has(#page-detail) .pkn-logo-mark::after,
  body.pkn-c-final:has(#page-exchange) .pkn-logo-mark::after {
    font-size: 18px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-logo-text,
  body.pkn-c-final:has(#page-detail) .pkn-logo-text,
  body.pkn-c-final:has(#page-exchange) .pkn-logo-text {
    font-size: 22px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-logo-tag,
  body.pkn-c-final:has(#page-detail) .pkn-logo-tag,
  body.pkn-c-final:has(#page-exchange) .pkn-logo-tag {
    display: block;
    color: #073F44;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
  }
  body.pkn-c-final:has(#page-offers) .pkn-nav-link:not(.pkn-c-search),
  body.pkn-c-final:has(#page-detail) .pkn-nav-link:not(.pkn-c-search),
  body.pkn-c-final:has(#page-exchange) .pkn-nav-link:not(.pkn-c-search) {
    display: inline-flex;
  }
  body.pkn-c-final:has(#page-offers) .pkn-mm-btn,
  body.pkn-c-final:has(#page-detail) .pkn-mm-btn,
  body.pkn-c-final:has(#page-exchange) .pkn-mm-btn {
    display: none;
  }
  body.pkn-c-final:has(#page-offers) .pkn-footer,
  body.pkn-c-final:has(#page-detail) .pkn-footer,
  body.pkn-c-final:has(#page-exchange) .pkn-footer {
    padding: 32px 24px 28px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-footer-brand,
  body.pkn-c-final:has(#page-detail) .pkn-footer-brand,
  body.pkn-c-final:has(#page-exchange) .pkn-footer-brand {
    font-size: 18px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-footer .pkn-logo-mark,
  body.pkn-c-final:has(#page-detail) .pkn-footer .pkn-logo-mark,
  body.pkn-c-final:has(#page-exchange) .pkn-footer .pkn-logo-mark {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-footer-text,
  body.pkn-c-final:has(#page-detail) .pkn-footer-text,
  body.pkn-c-final:has(#page-exchange) .pkn-footer-text {
    font-size: 13px;
    line-height: 1.85;
  }
  body.pkn-c-final:has(#page-offers) .pkn-legal-nav,
  body.pkn-c-final:has(#page-detail) .pkn-legal-nav,
  body.pkn-c-final:has(#page-exchange) .pkn-legal-nav {
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0 28px;
    padding: 0 24px 28px;
  }
  body.pkn-c-final #page-offers .pkn-v2-offers-head,
  body.pkn-c-final #page-offers .pkn-mobile-filter,
  body.pkn-c-final #page-offers .pkn-search-body {
    width: min(1240px, calc(100% - 48px));
  }
  body.pkn-c-final #page-offers .pkn-v2-offers-head {
    padding-top: 6px;
  }
  body.pkn-c-final #page-offers .pkn-v2-h1 {
    font-size: 32px;
    line-height: 1.35;
  }
  body.pkn-c-final #page-offers .intro-meta {
    gap: 4px 20px;
    margin-top: 10px;
    font-size: 13px;
  }
  body.pkn-c-final #page-offers .pkn-search-body {
    grid-template-columns: 288px minmax(0, 1fr);
    gap: 32px;
    padding: 24px 0 36px;
  }
  body.pkn-c-final #page-offers .filter-panel {
    display: block;
  }
  body.pkn-c-final #page-offers .offer-list {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    gap: 20px;
  }
  body.pkn-c-final #page-offers article.offer-card {
    padding: 20px;
  }
  body.pkn-c-final #page-offers .pkn-v2-sort-cycle {
    padding: 0 16px;
  }
  body.pkn-c-final #page-offers .pkn-pager > button.pkn-pager-btn {
    padding: 0 10px;
  }
  body.pkn-c-final #page-offers + section.pkn-offer-text-list {
    padding: 28px 24px 36px;
  }
  body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-list-inner > h2 {
    font-size: 20px;
  }
  body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-note {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.8;
  }
  body.pkn-c-final #page-offers + section.pkn-offer-text-list .pkn-offer-text-list-body {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 20px;
  }
  body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group > summary {
    padding: 0 16px;
  }
  body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group[open] > .pkn-offer-text-links {
    padding: 2px 16px 12px;
  }
}

/* Detail: frame, title, metadata and summary. */
body.pkn-c-final #page-detail .pkn-detail-title-inner,
body.pkn-c-final #page-detail .pkn-detail-body {
  width: min(720px, calc(100% - 24px));
  max-width: none;
  margin-right: auto;
  margin-left: auto;
  padding-right: 0;
  padding-left: 0;
  box-sizing: border-box;
}
body.pkn-c-final #page-detail .pkn-detail-title {
  padding: 0 0 14px;
  background: #FFFFFF;
}
body.pkn-c-final #page-detail .detail-overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}
body.pkn-c-final #page-detail .pkn-detail-title-copy {
  min-width: 0;
}
body.pkn-c-final #page-detail .pkn-detail-tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 0;
}
body.pkn-c-final #page-detail .detail-tags .pkn-pill,
body.pkn-c-final #page-detail .detail-tags .pkn-badge-highest {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 10px;
  border: 1px solid #DCE9E5;
  border-radius: 999px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
body.pkn-c-final #page-detail .detail-tags .pkn-badge-highest {
  border: 0;
  color: #FFFFFF;
  background: #D22B3F;
}
body.pkn-c-final #page-detail .pkn-detail-h1 {
  max-width: none;
  margin: 10px 0 0;
  color: #073F44;
  font-size: clamp(20px, calc(6.667vw - 4px), 22px);
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: left;
  word-break: keep-all;
  overflow-wrap: normal;
  text-wrap: wrap;
}
body.pkn-c-final #page-detail .pkn-diff-summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 10px 0 0;
}
body.pkn-c-final #page-detail .pkn-diff-summary .pkn-pill,
body.pkn-c-final #page-detail .pkn-diff-summary-level {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid #E5B92E;
  border-radius: 999px;
  color: #073F44;
  background: #FFF8D7;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
body.pkn-c-final #page-detail .pkn-staple-reason-label,
body.pkn-c-final #page-detail .pkn-diff-summary-deadline,
body.pkn-c-final #page-detail .pkn-detail-desc {
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
}
body.pkn-c-final #page-detail .pkn-staple-reason p {
  color: #073F44;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
}
body.pkn-c-final #page-detail .pkn-detail-offer-id {
  margin: 0;
  color: #4A7275;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.7;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-detail .detail-image,
body.pkn-c-final #page-detail .pkn-detail-image-box {
  width: 100%;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  margin: 0;
  overflow: hidden;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  color: #4A7275;
  background: #F6FBF9;
  box-shadow: none;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .08em;
}
body.pkn-c-final #page-detail .detail-image img,
body.pkn-c-final #page-detail .pkn-detail-image-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body.pkn-c-final #page-detail .pkn-detail-body.detail-wrap {
  display: block;
  padding-top: 0;
}
body.pkn-c-final #page-detail .pkn-detail-main {
  width: 100%;
  max-width: none;
  margin: 0;
}
body.pkn-c-final #page-detail .pkn-detail-summary.detail-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr));
  gap: 1px;
  margin: 14px 0 22px;
  padding: 0;
  overflow: hidden;
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  background: #FFFFFF;
}
body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell {
  min-width: 0;
  min-height: 0;
  padding: 12px 14px;
  border: 0;
  background: #FFFFFF;
}
body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:first-child {
  grid-column: 1 / -1;
  padding: 14px;
  border: 0;
  background: #FFFDF5;
}
body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(2) {
  border-left: 0;
}
body.pkn-c-final #page-detail .pkn-ds-label {
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}
body.pkn-c-final #page-detail .pkn-ds-value {
  max-width: 100%;
  display: inline-flex;
  align-items: baseline;
  margin-top: 4px;
  color: #073F44;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-detail .pkn-ds-cell:first-child .pkn-ds-value {
  color: #E83A4F;
  font-size: clamp(28px, calc(20vw - 44px), 34px);
  line-height: 1.1;
  letter-spacing: -.01em;
}
body.pkn-c-final #page-detail .pkn-ds-unit,
body.pkn-c-final #page-detail .pkn-ds-cell:first-child .pkn-ds-unit {
  display: inline;
  margin-left: 1px;
  color: inherit;
  font-size: clamp(16px, calc(10vw - 20px), 19px);
  font-weight: 900;
  white-space: nowrap;
}
body.pkn-c-final #page-detail .pkn-ds-sub {
  margin-top: 4px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  overflow-wrap: normal;
}

/* Detail: section headings and condition tabs. */
body.pkn-c-final #page-detail .pkn-detail-card.detail-section {
  margin: 22px 0 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-detail-card-head {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 12px;
}
body.pkn-c-final #page-detail .pkn-detail-card-title,
body.pkn-c-final #page-detail .pkn-d-history-title {
  margin: 0;
  padding: 0;
  border: 0;
  color: #073F44;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: left;
}
body.pkn-c-final #page-detail .pkn-detail-card-head > .pkn-pill-yellow {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  border: 0;
  border-radius: 8px;
  color: #073F44;
  background: #FFF8D7;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
body.pkn-c-final #page-detail .pkn-sec-eyebrow {
  margin: 0;
  color: #067052;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .12em;
}
body.pkn-c-final #page-detail .pkn-sec-meta {
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-detail .pkn-condition-tabs {
  display: block;
}
body.pkn-c-final #page-detail .pkn-condition-tablist {
  max-width: 100%;
  display: flex;
  align-items: stretch;
  gap: 6px;
  margin: 0;
  padding: 0 0 2px;
  overflow-x: auto;
  overflow-y: hidden;
  border: 0;
  border-radius: 0;
  background: transparent;
  scrollbar-width: thin;
}
body.pkn-c-final #page-detail .pkn-condition-tab {
  width: auto;
  min-width: 0;
  max-width: none;
  min-height: 44px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 14px;
  border: 1px solid #DCE9E5;
  border-bottom-width: 1px;
  border-radius: 10px 10px 0 0;
  color: #073F44;
  background: #F6FBF9;
  box-shadow: none;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  white-space: nowrap;
}
body.pkn-c-final #page-detail .pkn-condition-tab.is-active,
body.pkn-c-final #page-detail .pkn-condition-tab[aria-selected="true"] {
  border-color: #067052;
  border-bottom-width: 3px;
  color: #073F44;
  background: #FFFFFF;
  font-weight: 700;
}
body.pkn-c-final #page-detail .pkn-condition-tab .pkn-chip {
  display: none;
}
body.pkn-c-final #page-detail .pkn-condition-tab-name {
  display: block;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
  overflow-wrap: normal;
}
body.pkn-c-final #page-detail .pkn-condition-tab-badge {
  min-height: 20px;
  display: inline-flex;
  align-items: center;
  padding: 0 6px;
  border: 0;
  border-radius: 999px;
  color: #073F44;
  background: #FFF8D7;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}
body.pkn-c-final #page-detail .pkn-condition-panel {
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #DCE9E5;
  border-radius: 0 12px 12px 12px;
  background: #FFFFFF;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-condition-panel-head {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0;
  padding: 12px 14px;
  border-bottom: 1px solid #DCE9E5;
  background: #F3F9F5;
}
body.pkn-c-final #page-detail .pkn-condition-panel-site {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
body.pkn-c-final #page-detail .pkn-condition-panel-site .pkn-chip-site-label {
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  border: 1px solid #BFD4CE;
  border-radius: 999px;
  color: #073F44;
  background: #E6F7F0;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}
body.pkn-c-final #page-detail .pkn-condition-panel-site strong {
  color: #073F44;
  font-size: 14px;
  font-weight: 700;
}
body.pkn-c-final #page-detail .pkn-condition-panel-value {
  flex: 0 0 auto;
  color: #E83A4F;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-detail .pkn-condition-original {
  max-width: 76ch;
  margin: 0;
  padding: 14px;
  color: #073F44;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.85;
  white-space: pre-wrap;
  word-break: normal;
  overflow-wrap: normal;
}
body.pkn-c-final #page-detail .pkn-condition-source {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 10px 14px 12px;
  border-top: 1px solid #EDF3F1;
  color: #4A7275;
  background: #FFFFFF;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-detail .pkn-condition-source a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #067052;
  font-size: 13px;
  font-weight: 700;
}
body.pkn-c-final #page-detail .pkn-condition-source > span:last-child {
  white-space: nowrap;
}

/* Detail: flow disclosure and comparison rows. */
body.pkn-c-final #page-detail .pkn-v2-acc {
  margin: 12px 0 0;
  overflow: visible;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  background: #FFFFFF;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-v2-acc > .pkn-v2-acc-btn,
body.pkn-c-final #page-detail #detail-history .pkn-v2-acc-btn {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 2px 8px;
  padding: 8px 14px;
  border: 0;
  border-radius: 12px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
}
body.pkn-c-final #page-detail .pkn-v2-acc-sub {
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
}
body.pkn-c-final #page-detail .pkn-v2-acc-cv {
  color: #4A7275;
  font-size: 16px;
}
body.pkn-c-final #page-detail .pkn-v2-acc-in {
  padding: 0 14px 14px;
}
body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note {
  max-width: 100ch;
  margin: 10px 0 12px;
  padding: 12px 14px;
  border: 1px solid #E5B92E;
  border-radius: 12px;
  color: #073F44;
  background: #FFF8D7;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.85;
}
body.pkn-c-final #page-detail .pkn-cmp-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) auto;
  grid-template-areas:
    "rank site diff"
    "rank value value"
    "actions actions actions";
  align-items: center;
  gap: 8px 10px;
  margin: 0;
  padding: 14px 0;
  border: 0;
  border-top: 1px solid #EDF3F1;
  border-radius: 0;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-cmp-rank-badge {
  grid-area: rank;
  width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  color: #073F44;
  background: #E6F7F0;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}
body.pkn-c-final #page-detail .pkn-cmp-rank-badge.is-r1 {
  background: #F8CA36;
}
body.pkn-c-final #page-detail .pkn-cmp-site {
  grid-area: site;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
body.pkn-c-final #page-detail .pkn-cmp-site .pkn-chip-site-label {
  max-width: none;
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  padding: 0 8px;
  border: 1px solid #BFD4CE;
  border-radius: 999px;
  color: #073F44;
  background: #E6F7F0;
  font-size: 11px;
  font-weight: 700;
  overflow: visible;
  text-overflow: clip;
}
body.pkn-c-final #page-detail .pkn-cmp-site-name {
  color: #073F44;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}
body.pkn-c-final #page-detail .pkn-cmp-site-cond {
  margin-top: 2px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  word-break: normal;
  overflow-wrap: normal;
}
body.pkn-c-final #page-detail .pkn-cmp-diff-col {
  grid-area: diff;
  color: #4A7275;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}
body.pkn-c-final #page-detail .pkn-cmp-diff-col.is-best {
  color: #4A7275;
}
body.pkn-c-final #page-detail .pkn-cmp-val {
  grid-area: value;
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 2px;
  text-align: right;
}
body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money {
  color: #E83A4F;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money-unit {
  color: inherit;
  font-size: 14px;
  font-weight: 900;
}
body.pkn-c-final #page-detail .pkn-cmp-action,
body.pkn-c-final #page-detail .pkn-cmp-action.is-single {
  grid-area: actions;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  padding: 6px 12px;
  border: 0;
  border-radius: 10px;
  color: #FFFFFF;
  background: #C9430A;
  box-shadow: none;
  text-align: center;
  text-decoration: none;
}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration {
  border: 0;
  color: #FFFFFF;
  background: #C9430A;
}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer {
  border: 0;
  color: #FFFFFF;
  background: #067052;
}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta > span {
  color: inherit;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta > strong {
  color: inherit;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.3;
}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta[aria-disabled="true"] {
  border: 1px solid #DCE9E5;
  color: #4A7275;
  background: #F1F6F4;
  cursor: default;
}
body.pkn-c-final #page-detail .pkn-cmp-dual-cta:focus-visible {
  outline: 0;
  box-shadow: inset 0 0 0 2px #FFFFFF, inset 0 0 0 5px #073F44;
}

/* Detail: reward history and related offers. */
body.pkn-c-final #page-detail #detail-history.pkn-detail-card.detail-section {
  margin: 22px 0 0;
  padding: 14px;
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  background: #FFFFFF;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-d-history-head {
  display: block;
  margin: 0;
}
body.pkn-c-final #page-detail .pkn-d-history-sub {
  margin: 4px 0 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
body.pkn-c-final #page-detail .pkn-history-toggle {
  width: 100%;
  max-width: none;
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 12px 0 0;
  padding: 0 0 2px;
  overflow-x: auto;
  overflow-y: hidden;
  border: 0;
  border-radius: 0;
  color: #073F44;
  background: transparent;
}
body.pkn-c-final #page-detail .pkn-history-toggle button {
  width: auto;
  min-width: 44px;
  min-height: 44px;
  flex: 0 0 auto;
  padding: 0 12px;
  border: 1px solid #DCE9E5;
  border-radius: 999px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 12px;
  font-weight: 400;
  white-space: nowrap;
}
body.pkn-c-final #page-detail .pkn-history-toggle button.is-active,
body.pkn-c-final #page-detail .pkn-history-toggle button[aria-pressed="true"] {
  border-color: #067052;
  color: #073F44;
  background: #E6F7F0;
  font-weight: 700;
}
body.pkn-c-final #page-detail .pkn-history-toggle button:disabled,
body.pkn-c-final #page-detail .pkn-history-toggle button[aria-disabled="true"] {
  border-color: #DCE9E5;
  color: #4A7275;
  background: #F1F6F4;
  cursor: default;
}
body.pkn-c-final #page-detail .pkn-history-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr));
  gap: 8px;
  margin: 14px 0 0;
}
body.pkn-c-final #page-detail .pkn-history-stat {
  min-width: 0;
  padding: 10px;
  border: 1px solid #DCE9E5;
  border-radius: 10px;
  color: #073F44;
  background: #F6FBF9;
}
body.pkn-c-final #page-detail .pkn-history-stat:first-child {
  grid-column: 1 / -1;
}
body.pkn-c-final #page-detail .pkn-history-stat span {
  display: block;
  margin: 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
}
body.pkn-c-final #page-detail .pkn-history-stat strong {
  display: block;
  margin-top: 3px;
  color: #073F44;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.4;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-detail .pkn-history-chart-shell {
  min-width: 0;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 8px;
  margin-top: 14px;
}
body.pkn-c-final #page-detail .pkn-history-plot,
body.pkn-c-final #page-detail .pkn-history-svg {
  width: 100%;
  height: 150px;
}
body.pkn-c-final #page-detail .pkn-history-y-axis,
body.pkn-c-final #page-detail .pkn-d-history-axis {
  color: #4A7275;
  font-size: 11px;
  font-weight: 400;
}
body.pkn-c-final #page-detail .pkn-history-svg-line {
  stroke: #067052;
}
body.pkn-c-final #page-detail .pkn-history-svg-area {
  fill: #E6F7F0;
}
body.pkn-c-final #page-detail .pkn-history-svg-grid {
  stroke: #DCE9E5;
}
body.pkn-c-final #page-detail .pkn-history-svg-current-dot,
body.pkn-c-final #page-detail .pkn-history-svg-max-dot {
  fill: #067052;
}
body.pkn-c-final #page-detail .pkn-history-recent {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
  margin-top: 10px;
}
body.pkn-c-final #page-detail .pkn-history-recent-item {
  min-width: 0;
  padding: 5px 2px;
  border-radius: 8px;
  background: #F6FBF9;
  text-align: center;
}
body.pkn-c-final #page-detail .pkn-history-recent-item span,
body.pkn-c-final #page-detail .pkn-history-recent-item strong {
  display: block;
  color: #4A7275;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
  overflow-wrap: normal;
}
body.pkn-c-final #page-detail .pkn-history-recent-item strong {
  color: #073F44;
  font-weight: 700;
}
body.pkn-c-final #page-detail .pkn-history-empty {
  padding: 14px;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  color: #4A7275;
  background: #FFFFFF;
  text-align: center;
}
body.pkn-c-final #page-detail .pkn-related-offer-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}
body.pkn-c-final #page-detail .pkn-related-offer {
  min-width: 0;
  min-height: 88px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 6px 8px;
  padding: 12px;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-related-offer-rank {
  width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #073F44;
  background: #F8CA36;
  font-size: 12px;
  font-weight: 900;
}
body.pkn-c-final #page-detail .pkn-related-offer-main {
  min-width: 0;
}
body.pkn-c-final #page-detail .pkn-related-offer-main strong {
  color: #073F44;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  white-space: normal;
  word-break: keep-all;
  overflow-wrap: normal;
}
body.pkn-c-final #page-detail .pkn-related-offer-main span {
  display: block;
  margin-top: 2px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  white-space: normal;
  overflow-wrap: normal;
}
body.pkn-c-final #page-detail .pkn-related-offer-value {
  grid-column: 1 / -1;
  justify-self: end;
  color: #E83A4F;
  font-size: 14px;
  font-weight: 900;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.pkn-c-final #page-detail .pkn-sec-link {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #067052;
  font-size: 13px;
  font-weight: 700;
}

/* Detail: existing states, without inventing unavailable historical data. */
body.pkn-c-final #page-detail .pkn-detail-sales-ended {
  margin: 12px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-sales-ended-notice,
body.pkn-c-final #page-detail .pkn-condition-gate-status {
  margin: 12px 0 0;
  padding: 12px 14px;
  border: 1px solid #BFD4CE;
  border-radius: 12px;
  color: #073F44;
  background: #F6FBF9;
  box-shadow: none;
}
body.pkn-c-final #page-detail .pkn-sales-ended-notice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 0;
}
body.pkn-c-final #page-detail .pkn-sales-ended-notice-copy {
  min-width: 0;
}
body.pkn-c-final #page-detail .pkn-detail-sales-ended-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #FFFFFF;
  background: #073F44;
}
body.pkn-c-final #page-detail .pkn-detail-sales-ended-icon svg {
  width: 12px;
  height: 12px;
}
body.pkn-c-final #page-detail .pkn-detail-sales-ended-title {
  margin: 0;
  color: #073F44;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.6;
}
body.pkn-c-final #page-detail .pkn-detail-sales-ended-desc {
  margin: 6px 0 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.8;
}
body.pkn-c-final #page-detail .pkn-detail-sales-ended-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
body.pkn-c-final #page-detail .pkn-detail-sales-ended-actions a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 0 14px;
  border: 1px solid #073F44;
  border-radius: 10px;
  color: #073F44;
  background: #FFFFFF;
  font-size: 13px;
  font-weight: 700;
}

body.pkn-c-final #page-detail:has(.pkn-detail-sales-ended) .pkn-detail-h1 {
  font-size: 20px;
  line-height: 1.5;
}
body.pkn-c-final #page-detail.pkn-container {
  width: min(720px, calc(100% - 24px));
  margin: 0 auto;
  padding-top: 16px;
  padding-bottom: 28px;
}
body.pkn-c-final #page-detail.pkn-container > .pkn-sec-link {
  min-height: 44px;
}
body.pkn-c-final #page-detail .pkn-empty {
  margin-top: 12px;
  padding: 24px 16px;
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  color: #073F44;
  background: #F6FBF9;
  box-shadow: none;
  text-align: center;
}
body.pkn-c-final #page-detail .pkn-empty-title {
  color: #073F44;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.6;
}
body.pkn-c-final #page-detail .pkn-empty-desc {
  margin-top: 8px;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.85;
}
body.pkn-c-final #page-detail .pkn-empty .pkn-btn-primary {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding: 0 24px;
  border: 1px solid #073F44;
  border-radius: 10px;
  color: #FFFFFF;
  background: #073F44;
  box-shadow: none;
  font-size: 14px;
  font-weight: 900;
}

@media (min-width: 768px) {
  body.pkn-c-final #page-detail .pkn-detail-title-inner,
  body.pkn-c-final #page-detail .pkn-detail-body {
    width: min(720px, calc(100% - 32px));
  }
  body.pkn-c-final #page-detail .pkn-detail-summary.detail-facts {
    grid-template-columns: 1.2fr 1fr 1fr;
  }
  body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:first-child {
    grid-column: auto;
  }
  body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(n) {
    padding: 16px;
    border-top: 0;
    border-left: 1px solid #EDF3F1;
  }
  body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:first-child {
    border-left: 0;
  }
  body.pkn-c-final #page-detail .pkn-cmp-action,
  body.pkn-c-final #page-detail .pkn-cmp-action.is-single {
    grid-template-columns: minmax(0, 1fr);
  }
  body.pkn-c-final #page-detail .pkn-history-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  body.pkn-c-final #page-detail .pkn-history-stat:first-child {
    grid-column: auto;
  }
  body.pkn-c-final #page-detail .pkn-related-offer-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  body.pkn-c-final #page-detail .pkn-detail-title-inner,
  body.pkn-c-final #page-detail .pkn-detail-body {
    width: min(1240px, calc(100% - 48px));
  }
  body.pkn-c-final #page-detail .detail-overview {
    grid-template-columns: minmax(0, 1fr) 300px;
    align-items: center;
    gap: 32px;
  }
  body.pkn-c-final #page-detail .pkn-detail-title-copy {
    max-width: none;
  }
  body.pkn-c-final #page-detail .pkn-detail-h1 {
    max-width: 34ch;
    font-size: 32px;
    line-height: 1.45;
  }
  body.pkn-c-final #page-detail .pkn-diff-summary {
    gap: 8px 14px;
  }
  body.pkn-c-final #page-detail .pkn-detail-desc {
    font-size: 13px;
  }
  body.pkn-c-final #page-detail .detail-image,
  body.pkn-c-final #page-detail .pkn-detail-image-box {
    width: 300px;
    height: 180px;
  }
  body.pkn-c-final #page-detail .pkn-detail-summary.detail-facts {
    margin-top: 24px;
    border-radius: 16px;
  }
  body.pkn-c-final #page-detail .pkn-detail-summary .pkn-ds-cell:nth-child(n) {
    padding: 18px 20px;
  }
  body.pkn-c-final #page-detail .pkn-ds-label,
  body.pkn-c-final #page-detail .pkn-ds-sub {
    font-size: 13px;
  }
  body.pkn-c-final #page-detail .pkn-ds-value {
    font-size: 26px;
  }
  body.pkn-c-final #page-detail .pkn-ds-cell:first-child .pkn-ds-value {
    font-size: 40px;
    line-height: 1.05;
  }
  body.pkn-c-final #page-detail .pkn-ds-unit,
  body.pkn-c-final #page-detail .pkn-ds-cell:first-child .pkn-ds-unit {
    font-size: 22px;
  }
  body.pkn-c-final #page-detail .pkn-detail-card.detail-section {
    margin-top: 32px;
  }
  body.pkn-c-final #page-detail .pkn-detail-card-title,
  body.pkn-c-final #page-detail .pkn-d-history-title {
    font-size: 22px;
    line-height: 1.45;
  }
  body.pkn-c-final #page-detail .pkn-detail-card-head {
    gap: 10px;
    margin-bottom: 14px;
  }
  body.pkn-c-final #page-detail .pkn-detail-card-head > .pkn-pill-yellow {
    min-height: 30px;
    padding: 0 12px;
    font-size: 12px;
  }
  body.pkn-c-final #page-detail .pkn-sec-eyebrow {
    font-size: 11px;
    letter-spacing: .14em;
  }
  body.pkn-c-final #page-detail .pkn-sec-meta {
    font-size: 13px;
  }
  body.pkn-c-final #page-detail .pkn-condition-tablist {
    gap: 8px;
    overflow: visible;
  }
  body.pkn-c-final #page-detail .pkn-condition-tab {
    min-height: 48px;
    gap: 8px;
    padding: 0 20px;
    border-radius: 12px 12px 0 0;
    font-size: 15px;
  }
  body.pkn-c-final #page-detail .pkn-condition-tab-badge {
    padding: 0 8px;
  }
  body.pkn-c-final #page-detail .pkn-condition-panel {
    border-radius: 0 14px 14px 14px;
  }
  body.pkn-c-final #page-detail .pkn-condition-panel-head {
    gap: 16px;
    padding: 14px 20px;
  }
  body.pkn-c-final #page-detail .pkn-condition-panel-site {
    gap: 10px;
  }
  body.pkn-c-final #page-detail .pkn-condition-panel-site .pkn-chip-site-label {
    min-height: 24px;
    padding: 0 10px;
    font-size: 12px;
  }
  body.pkn-c-final #page-detail .pkn-condition-panel-site strong {
    font-size: 16px;
  }
  body.pkn-c-final #page-detail .pkn-condition-panel-value {
    font-size: 22px;
  }
  body.pkn-c-final #page-detail .pkn-condition-original {
    padding: 18px 20px;
    font-size: 15px;
    line-height: 1.9;
  }
  body.pkn-c-final #page-detail .pkn-condition-source {
    gap: 10px;
    padding: 12px 20px 14px;
  }
  body.pkn-c-final #page-detail .pkn-condition-source a {
    font-size: 14px;
  }
  body.pkn-c-final #page-detail .pkn-v2-acc > .pkn-v2-acc-btn,
  body.pkn-c-final #page-detail #detail-history .pkn-v2-acc-btn {
    min-height: 56px;
    flex-wrap: nowrap;
    gap: 16px;
    padding: 8px 20px;
    font-size: 15px;
  }
  body.pkn-c-final #page-detail .pkn-v2-acc-sub {
    margin-left: auto;
    font-size: 13px;
  }
  body.pkn-c-final #page-detail .pkn-v2-acc-cv {
    font-size: 18px;
  }
  body.pkn-c-final #page-detail #pkn-site-comparison .pkn-cmp-pr-note {
    margin-top: 12px;
    padding: 14px 18px;
    font-size: 13px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-row {
    grid-template-columns: minmax(0, 1fr) 150px 210px 210px;
    grid-template-areas: "site value actions actions";
    gap: 16px;
    padding: 14px 18px;
    border: 1px solid #DCE9E5;
    border-bottom: 0;
  }
  body.pkn-c-final #page-detail .pkn-cmp-row:first-of-type {
    border-radius: 14px 14px 0 0;
  }
  body.pkn-c-final #page-detail .pkn-cmp-row:last-of-type {
    border-bottom: 1px solid #DCE9E5;
    border-radius: 0 0 14px 14px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-rank-badge {
    position: absolute;
    width: 28px;
    height: 28px;
    font-size: 14px;
    transform: translateX(-4px);
  }
  body.pkn-c-final #page-detail .pkn-cmp-site {
    padding-left: 36px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-site-name {
    font-size: 15px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-site-cond {
    font-size: 13px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-diff-col {
    grid-area: value;
    align-self: start;
    justify-self: end;
    font-size: 11px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-val {
    width: 150px;
    align-self: end;
  }
  body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money {
    font-size: 24px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-val .pkn-money-unit {
    font-size: 15px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-action,
  body.pkn-c-final #page-detail .pkn-cmp-action.is-single {
    grid-template-columns: 210px 210px;
    gap: 16px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-dual-cta {
    width: 210px;
    min-height: 52px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-dual-cta > strong {
    white-space: nowrap;
  }
  body.pkn-c-final #page-detail #detail-history.pkn-detail-card.detail-section {
    margin-top: 32px;
    padding: 20px 24px;
    border-radius: 16px;
  }
  body.pkn-c-final #page-detail .pkn-d-history-sub {
    font-size: 13px;
  }
  body.pkn-c-final #page-detail .pkn-history-plot,
  body.pkn-c-final #page-detail .pkn-history-svg {
    height: 260px;
  }
  body.pkn-c-final #page-detail .pkn-related-offer-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body.pkn-c-final #page-detail.pkn-container {
    width: min(1240px, calc(100% - 48px));
  }
}

/* Approved exchange redline: A-3 and the three-width contract. */
body.pkn-c-final #page-exchange {
  color: #073F44;
  background: #FFFFFF;
}

body.pkn-c-final #page-exchange > .pkn-exchange-v2.content {
  width: calc(100% - 24px);
  max-width: none;
  margin-inline: auto;
  padding: 0;
}

body.pkn-c-final #page-exchange .intro-block {
  padding: 0;
}

body.pkn-c-final #page-exchange .pkn-v2-crumb {
  margin: 0;
}

body.pkn-c-final #page-exchange .pkn-exv2-h1 {
  margin: 4px 0 0;
  color: #073F44;
  font-size: 24px;
  font-weight: 900;
  line-height: 1.4;
  overflow-wrap: normal;
  word-break: keep-all;
}

body.pkn-c-final #page-exchange .pkn-v2-lead {
  max-width: 76ch;
  margin: 8px 0 0;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.85;
}

body.pkn-c-final #page-exchange .intro-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
  color: #073F44;
  font-size: 12px;
  line-height: 1;
}

body.pkn-c-final #page-exchange .intro-meta > span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  border: 0;
  border-radius: 999px;
  color: #073F44;
  background: #E6F7F0;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

body.pkn-c-final #page-exchange .intro-meta > span:first-child {
  font-weight: 900;
}

body.pkn-c-final #page-exchange .pkn-exv2-layout.exchange-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
  margin: 16px 0 0;
  padding: 0 0 24px;
  background: #FFFFFF;
}

body.pkn-c-final #page-exchange .pkn-exv2-selwrap,
body.pkn-c-final #page-exchange .exchange-results {
  min-width: 0;
}

body.pkn-c-final #page-exchange .exchange-form-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  gap: 0 10px;
  margin: 0;
  padding: 14px;
  border: 1px solid #DCE9E5;
  border-radius: 16px;
  background: #FFFFFF;
  box-shadow: 0 1px 2px rgba(7, 63, 68, .06);
}

body.pkn-c-final #page-exchange .exchange-form-card h2 {
  min-height: 22px;
  display: flex;
  grid-column: 1 / -1;
  align-items: center;
  margin: 0;
  padding-left: 30px;
  color: #073F44;
  background: radial-gradient(circle at 11px 50%, #F8CA36 0 11px, transparent 11.5px);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.45;
}

body.pkn-c-final #page-exchange .exchange-form-card h2::before {
  content: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-pick {
  width: 100%;
  min-height: 48px;
  display: block;
  grid-column: 1 / -1;
  margin: 12px 0 0;
  padding: 4px 14px 4px 10px;
  border: 1px solid #BFD4CE;
  border-radius: 10px;
  color: #073F44;
  background: #FFFFFF;
  text-align: left;
  box-shadow: none;
}

body.pkn-c-final #page-exchange .exchange-form-card > .pkn-exv2-pick:first-of-type {
  margin-top: 12px;
}

body.pkn-c-final #page-exchange .pkn-exv2-pick-cap,
body.pkn-c-final #page-exchange .pkn-exv2-amount .field-label {
  display: block;
  margin: 0 0 2px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
}

body.pkn-c-final #page-exchange .pkn-exv2-pick-val {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

body.pkn-c-final #page-exchange .pkn-exv2-pick-val b {
  color: #073F44;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: normal;
  word-break: keep-all;
}

body.pkn-c-final #page-exchange .pkn-exv2-mark {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #073F44;
  background: #FFF8D7;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

body.pkn-c-final #page-exchange .pkn-exv2-chev {
  display: inline-block;
  margin-left: auto;
  color: #4A7275;
}

body.pkn-c-final #page-exchange .pkn-exv2-amount {
  position: relative;
  grid-column: 1;
  margin: 12px 0 0;
}

body.pkn-c-final #page-exchange #pkn-exchange-amount {
  width: 100%;
  min-height: 48px;
  margin: 0;
  padding: 0 34px 0 12px;
  border: 1px solid #BFD4CE;
  border-radius: 10px;
  color: #073F44;
  background-color: #FFFFFF;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctext x='20' y='14' text-anchor='end' font-family='sans-serif' font-size='13' font-weight='700' fill='%234A7275'%3Ept%3C/text%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 20px 20px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  box-shadow: none;
  appearance: textfield;
}

body.pkn-c-final #page-exchange #pkn-exchange-amount::-webkit-inner-spin-button,
body.pkn-c-final #page-exchange #pkn-exchange-amount::-webkit-outer-spin-button {
  margin: 0;
  appearance: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-swapline {
  min-height: 48px;
  display: flex;
  grid-column: 2;
  align-self: end;
  align-items: center;
  justify-content: center;
  margin: 12px 0 0;
}

body.pkn-c-final #page-exchange .pkn-exv2-swap {
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #BFD4CE;
  border-radius: 10px;
  color: #067052;
  background: #F6FBF9;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-shadow: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-submit {
  width: 100%;
  min-height: 52px;
  grid-column: 1 / -1;
  margin: 12px 0 0;
  padding: 0 16px;
  border: 1px solid #073F44;
  border-radius: 12px;
  color: #FFFFFF;
  background: #073F44;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.4;
  box-shadow: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-reshead {
  min-height: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}

body.pkn-c-final #page-exchange .pkn-exv2-reshead h2 {
  margin: 0;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
}

body.pkn-c-final #page-exchange .results-summary {
  margin: 4px 0 0;
  color: #073F44;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
}

body.pkn-c-final #page-exchange .sort-control {
  width: auto;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #4A7275;
}

body.pkn-c-final #page-exchange .sort-control label {
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap;
}

body.pkn-c-final #page-exchange .sort-control select {
  min-height: 44px;
  max-width: none;
  padding: 0 34px 0 12px;
  border: 1px solid #BFD4CE;
  border-radius: 10px;
  color: #073F44;
  background-color: #FFFFFF;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  box-shadow: none;
}

body.pkn-c-final #page-exchange .pkn-v2-warning {
  display: block;
  margin: 12px 0 0;
  padding: 12px 14px;
  border: 1px solid #E5B92E;
  border-radius: 12px;
  color: #073F44;
  background: #FFF8D7;
  font-size: 12px;
  line-height: 1.85;
}

body.pkn-c-final #page-exchange .pkn-v2-warning strong {
  display: block;
  margin: 0 0 6px;
  color: #073F44;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.6;
}

body.pkn-c-final #page-exchange .pkn-v2-warning span {
  max-width: 96ch;
  display: block;
  color: #073F44;
  font: inherit;
  font-weight: 400;
}

body.pkn-c-final #page-exchange .pkn-exv2-cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  margin-top: 12px;
}

body.pkn-c-final #page-exchange .route-card {
  margin: 0;
  overflow: hidden;
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  background: #FFFFFF;
  box-shadow: 0 1px 2px rgba(7, 63, 68, .06);
}

body.pkn-c-final #page-exchange .route-card + .route-card {
  margin-top: 0;
}

body.pkn-c-final #page-exchange .route-card.is-best {
  border-color: #E5B92E;
  background: #FFFDF5;
}

body.pkn-c-final #page-exchange .route-card > summary {
  min-height: 44px;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
  color: #073F44;
  background: transparent;
  cursor: pointer;
  list-style: none;
}

body.pkn-c-final #page-exchange .route-card > summary::-webkit-details-marker {
  display: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-head {
  min-height: 47px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 1px solid #EDF3F1;
  background: #F6FBF9;
}

body.pkn-c-final #page-exchange .route-card.is-best .pkn-exv2-card-head {
  border-bottom-color: #F2E6C4;
  background: #FFFDF5;
}

body.pkn-c-final #page-exchange .pkn-exv2-badge {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 10px;
  border-radius: 999px;
  color: #073F44;
  background: #E6F7F0;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

body.pkn-c-final #page-exchange .pkn-exv2-badge.is-rank {
  font-weight: 900;
}

body.pkn-c-final #page-exchange .route-card.is-best .pkn-exv2-badge.is-rank {
  background: #F8CA36;
}

body.pkn-c-final #page-exchange .pkn-exv2-badge.is-check {
  border: 1px solid #E5B92E;
  background: #FFF8D7;
}

body.pkn-c-final #page-exchange .pkn-exv2-badge.is-ok {
  border: 1px solid #BFD4CE;
  background: #FFFFFF;
}

body.pkn-c-final #page-exchange .pkn-exv2-summary-metrics {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  padding: 14px;
}

body.pkn-c-final #page-exchange .pkn-exv2-summary-metric {
  min-width: 0;
  display: block;
  padding-top: 10px;
  border-top: 1px solid #EDF3F1;
}

body.pkn-c-final #page-exchange .route-card.is-best .pkn-exv2-summary-metric {
  border-top-color: #F2E6C4;
}

body.pkn-c-final #page-exchange .pkn-exv2-summary-metric:first-child {
  padding-top: 0;
  border-top: 0;
}

body.pkn-c-final #page-exchange .pkn-exv2-summary-metric small {
  display: block;
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}

body.pkn-c-final #page-exchange .pkn-exv2-summary-metric b {
  display: block;
  margin-top: 2px;
  color: #073F44;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.75;
  overflow-wrap: normal;
  word-break: normal;
}

body.pkn-c-final #page-exchange .pkn-exv2-summary-metric.pkn-exv2-card-yield {
  display: block;
  padding: 0;
}

body.pkn-c-final #page-exchange .pkn-exv2-summary-metric.pkn-exv2-card-yield b {
  margin-top: 2px;
  color: #073F44;
  font-size: clamp(28px, calc(6.667vw + 4px), 30px);
  font-weight: 900;
  line-height: 1.15;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-path {
  min-width: 0;
  display: flex;
  align-items: stretch;
  gap: 6px;
  overflow-x: auto;
  padding: 12px 14px 16px;
  border-top: 1px solid #EDF3F1;
  color: #073F44;
  scrollbar-width: thin;
}

body.pkn-c-final #page-exchange .route-card.is-best .pkn-exv2-card-path {
  border-top-color: #F2E6C4;
}

body.pkn-c-final #page-exchange .pkn-exv2-route-node {
  min-width: 92px;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 8px;
  border: 1px solid #DCE9E5;
  border-radius: 10px;
  background: #FFFFFF;
  text-align: center;
}

body.pkn-c-final #page-exchange .pkn-exv2-route-node:last-child {
  border-color: #067052;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-mark {
  width: 26px;
  height: 26px;
  flex-basis: 26px;
}

body.pkn-c-final #page-exchange .pkn-exv2-route-node-name {
  display: block;
  color: #073F44;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  overflow-wrap: normal;
  word-break: keep-all;
}

body.pkn-c-final #page-exchange .pkn-exv2-route-node-amount {
  display: block;
  color: #4A7275;
  font-size: 12px;
  line-height: 1.4;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-arw {
  min-width: 14px;
  flex: 0 0 14px;
  align-self: center;
  margin: 0;
  color: #067052;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-toggle {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 14px;
  border-top: 1px solid #EDF3F1;
  color: #067052;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}

body.pkn-c-final #page-exchange .route-card.is-best .pkn-exv2-card-toggle {
  border-top-color: #F2E6C4;
}

body.pkn-c-final #page-exchange .route-card[open] .pkn-exv2-chev {
  transform: rotate(180deg);
}

body.pkn-c-final #page-exchange .pkn-exv2-card-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px 12px 12px;
  border-top: 1px solid #EDF3F1;
  background: #FFFFFF;
}

body.pkn-c-final #page-exchange .route-card:not([open]) > .pkn-exv2-card-body {
  display: none;
}

body.pkn-c-final #page-exchange .route-card.is-best .pkn-exv2-card-body {
  border-top-color: #F2E6C4;
}

body.pkn-c-final #page-exchange .route-card[open] .route-step-list,
body.pkn-c-final #page-exchange .route-card[open] .route-facts,
body.pkn-c-final #page-exchange .route-card[open] .pkn-exv2-notebox,
body.pkn-c-final #page-exchange .route-card[open] .pkn-exv2-src {
  order: initial;
}

body.pkn-c-final #page-exchange .route-facts {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  margin: 0;
}

body.pkn-c-final #page-exchange .route-facts div,
body.pkn-c-final #page-exchange .route-step {
  min-height: 0;
  padding: 10px 12px;
  border: 1px solid #DCE9E5;
  border-radius: 10px;
  background: #FFFFFF;
  text-align: left;
}

body.pkn-c-final #page-exchange .route-facts dt {
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
}

body.pkn-c-final #page-exchange .route-facts dd {
  margin: 2px 0 0;
  color: #073F44;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.85;
  overflow-wrap: normal;
  word-break: normal;
}

body.pkn-c-final #page-exchange .route-step-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  border: 0;
}

body.pkn-c-final #page-exchange .route-step {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

body.pkn-c-final #page-exchange .route-step-name {
  color: #073F44;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.5;
}

body.pkn-c-final #page-exchange .route-step-detail {
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.85;
}

body.pkn-c-final #page-exchange .pkn-exv2-notebox {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #DCE9E5;
  border-radius: 10px;
  color: #073F44;
  background: #FFFFFF;
  font-size: 12px;
  line-height: 1.85;
}

body.pkn-c-final #page-exchange .pkn-exv2-src {
  margin: 0;
  color: #067052;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.85;
}

body.pkn-c-final #page-exchange .pkn-exv2-src a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  margin: 0 8px 0 0;
  color: #067052;
  font-size: 12px;
  font-weight: 700;
}

body.pkn-c-final #page-exchange .pkn-v2-beta {
  margin: 0 0 24px;
  overflow: hidden;
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  color: #073F44;
  background: #F6FBF9;
}

body.pkn-c-final #page-exchange .pkn-v2-beta > summary {
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 14px;
  color: #073F44;
  background: transparent;
  cursor: pointer;
  list-style: none;
}

body.pkn-c-final #page-exchange .pkn-v2-beta > summary::-webkit-details-marker {
  display: none;
}

body.pkn-c-final #page-exchange .pkn-v2-beta-badge {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid #BFD4CE;
  border-radius: 999px;
  color: #073F44;
  background: #FFFFFF;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

body.pkn-c-final #page-exchange .pkn-v2-beta-summary {
  max-width: 76ch;
  color: #073F44;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.8;
}

body.pkn-c-final #page-exchange .pkn-v2-beta-toggle {
  min-height: 44px;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  padding: 0 18px;
  border: 1px solid #073F44;
  border-radius: 999px;
  color: #073F44;
  background: #FFFFFF;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

body.pkn-c-final #page-exchange .pkn-v2-beta-body {
  padding: 0 14px 14px;
  color: #073F44;
  font-size: 12px;
  line-height: 1.8;
}

body.pkn-c-final #page-exchange .pkn-v2-beta:not([open]) > .pkn-v2-beta-body {
  display: none;
}

body.pkn-c-final #page-exchange .pkn-v2-beta[open] > .pkn-v2-beta-body {
  display: grid;
}

body.pkn-c-final #page-exchange .pkn-v2-empty.feedback-panel {
  padding: 20px 16px;
  border: 1px solid #DCE9E5;
  border-radius: 14px;
  color: #073F44;
  background: #F6FBF9;
  text-align: center;
}

body.pkn-c-final #page-exchange .pkn-v2-empty.feedback-panel > strong {
  display: block;
  color: #073F44;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.6;
}

body.pkn-c-final #page-exchange .pkn-v2-empty.feedback-panel > p {
  margin: 6px 0 0;
  color: #4A7275;
  font-size: 13px;
  line-height: 1.85;
}

body.pkn-c-final #page-exchange .pkn-v2-empty-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 14px;
}

body.pkn-c-final #page-exchange .pkn-v2-empty.feedback-panel a {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  border: 1px solid #073F44;
  border-radius: 10px;
  color: #FFFFFF;
  background: #073F44;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none;
}

body.pkn-c-final #page-exchange [aria-invalid="true"] {
  border: 2px solid #C9430A;
  color: #C9430A;
}

body.pkn-c-final #page-exchange [aria-invalid="true"] + [role="alert"] {
  margin-top: 8px;
  color: #C9430A;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.75;
}

@media (min-width: 768px) {
  body.pkn-c-final #page-exchange > .pkn-exchange-v2.content {
    width: min(720px, calc(100% - 32px));
  }
}

@media (min-width: 1024px) {
  body.pkn-c-final #page-exchange > .pkn-exchange-v2.content {
    width: min(1240px, calc(100% - 48px));
  }
  body.pkn-c-final #page-exchange .pkn-exv2-h1 {
    margin-top: 6px;
    font-size: 32px;
    line-height: 1.35;
  }
  body.pkn-c-final #page-exchange .pkn-v2-lead {
    margin-top: 10px;
    font-size: 14px;
  }
  body.pkn-c-final #page-exchange .intro-meta {
    gap: 8px;
    margin-top: 12px;
    font-size: 13px;
  }
  body.pkn-c-final #page-exchange .intro-meta > span {
    min-height: 30px;
    padding: 0 14px;
    font-size: 13px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-layout.exchange-layout {
    grid-template-columns: 360px minmax(0, 1fr);
    gap: 32px;
    margin-top: 24px;
    padding-bottom: 32px;
    align-items: start;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-selwrap {
    position: sticky;
    top: 16px;
  }
  body.pkn-c-final #page-exchange .exchange-form-card {
    padding: 20px;
    border-radius: 16px;
  }
  body.pkn-c-final #page-exchange .exchange-form-card h2 {
    font-size: 17px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-pick {
    padding-inline: 10px 14px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-mark {
    width: 24px;
    height: 24px;
    flex-basis: 24px;
  }
  body.pkn-c-final #page-exchange #pkn-exchange-amount {
    padding: 0 36px 0 14px;
    background-position: right 14px center;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-submit {
    padding-inline: 18px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-reshead {
    gap: 16px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-reshead h2 {
    font-size: 14px;
  }
  body.pkn-c-final #page-exchange .results-summary {
    font-size: 20px;
  }
  body.pkn-c-final #page-exchange .sort-control {
    gap: 10px;
  }
  body.pkn-c-final #page-exchange .sort-control label {
    font-size: 13px;
  }
  body.pkn-c-final #page-exchange .sort-control select {
    min-height: 48px;
    padding: 0 40px 0 16px;
    font-size: 14px;
  }
  body.pkn-c-final #page-exchange .pkn-v2-warning {
    padding: 14px 18px;
    font-size: 13px;
  }
  body.pkn-c-final #page-exchange .pkn-v2-warning strong {
    font-size: 14px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-card-head {
    min-height: 53px;
    gap: 16px;
    padding: 12px 20px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-badge {
    min-height: 28px;
    gap: 6px;
    padding: 0 12px;
    font-size: 12px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-summary-metrics {
    grid-template-columns: 230px minmax(0, 1fr) minmax(0, 1fr);
    gap: 24px;
    padding: 18px 20px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-summary-metric,
  body.pkn-c-final #page-exchange .pkn-exv2-summary-metric:first-child {
    padding: 0;
    border: 0;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-summary-metric b {
    margin-top: 4px;
    font-size: 13px;
    line-height: 1.8;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-summary-metric.pkn-exv2-card-yield b {
    margin-top: 4px;
    font-size: 36px;
    line-height: 1.1;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-card-path {
    align-items: stretch;
    gap: 10px;
    overflow: visible;
    padding: 0 20px 16px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-route-node {
    min-width: 136px;
    flex: 1 1 auto;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border-radius: 12px;
    text-align: left;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-mark {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-route-node-name {
    font-size: 13px;
    line-height: 1.5;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-arw {
    flex-basis: 16px;
    font-size: 16px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-card-toggle {
    min-height: 52px;
    gap: 16px;
    padding: 0 20px;
    font-size: 14px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-card-body {
    gap: 12px;
    padding: 0 20px 18px;
  }
  body.pkn-c-final #page-exchange .route-facts,
  body.pkn-c-final #page-exchange .route-step-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }
  body.pkn-c-final #page-exchange .route-facts div,
  body.pkn-c-final #page-exchange .route-step {
    padding: 14px;
    border-radius: 12px;
  }
  body.pkn-c-final #page-exchange .route-step-name {
    font-size: 13px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-notebox {
    padding: 14px;
    border-radius: 12px;
  }
  body.pkn-c-final #page-exchange .pkn-v2-beta {
    margin-bottom: 28px;
  }
  body.pkn-c-final #page-exchange .pkn-v2-beta > summary {
    min-height: 76px;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
  }
  body.pkn-c-final #page-exchange .pkn-v2-beta-badge {
    min-height: 28px;
    font-size: 12px;
  }
  body.pkn-c-final #page-exchange .pkn-v2-beta-summary {
    margin-right: auto;
    font-size: 13px;
    line-height: 1.85;
  }
  body.pkn-c-final #page-exchange .pkn-v2-beta-toggle {
    padding: 0 20px;
  }
  body.pkn-c-final #page-exchange .pkn-v2-beta-body {
    padding: 0 20px 16px;
    font-size: 13px;
    line-height: 1.85;
  }
}

/* Final layout corrections that depend on the approved boundary values. */
body.pkn-c-final #page-offers article.offer-card .offer-main > h3 > a.pkn-oc.pkn-offer {
  display: inline-flex;
  align-items: center;
  overflow: visible;
  border-radius: 0;
}

body.pkn-c-final #page-offers .pkn-v2-h1 {
  display: block;
  overflow-wrap: normal;
}

body.pkn-c-final #page-exchange .pkn-exv2-h1 {
  word-break: keep-all;
  overflow-wrap: break-word;
}

/* Final measured corrections for the approved component values. */
body.pkn-c-final #page-offers .breadcrumb .pkn-breadcrumb-sep,
body.pkn-c-final #page-detail .breadcrumb .pkn-breadcrumb-sep,
body.pkn-c-final #page-exchange .breadcrumb .pkn-breadcrumb-sep {
  font-size: 12px;
  line-height: 1.5;
}

body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-gap {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.pkn-c-final #page-detail .pkn-diff-summary > .pkn-diff-badge {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid #E5B92E;
  border-radius: 999px;
  color: #073F44;
  background: #FFF8D7;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

body.pkn-c-final #page-detail .pkn-detail-title-copy {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 12px;
}

body.pkn-c-final #page-detail .pkn-detail-title-copy > .breadcrumb,
body.pkn-c-final #page-detail .pkn-detail-title-copy > .pkn-detail-tags,
body.pkn-c-final #page-detail .pkn-detail-title-copy > .pkn-detail-h1,
body.pkn-c-final #page-detail .pkn-detail-title-copy > .pkn-staple-reason {
  flex: 1 0 100%;
}

body.pkn-c-final #page-detail .pkn-detail-title-copy > .pkn-diff-summary {
  width: auto;
  max-width: 100%;
  flex: 0 1 auto;
  margin: 10px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body.pkn-c-final #page-detail .pkn-detail-title-copy > .pkn-detail-desc,
body.pkn-c-final #page-detail .pkn-detail-title-copy > .pkn-detail-offer-id {
  flex: 0 1 auto;
  margin: 10px 0 0;
}

body.pkn-c-final #page-detail .pkn-sales-ended-record {
  margin-top: 10px;
  padding: 12px 14px;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  color: #4A7275;
  background: #F6FBF9;
}

body.pkn-c-final #page-detail .pkn-sales-ended-record > span,
body.pkn-c-final #page-detail .pkn-sales-ended-record > small {
  display: block;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}

body.pkn-c-final #page-detail .pkn-sales-ended-record > span {
  font-weight: 700;
}

body.pkn-c-final #page-detail .pkn-sales-ended-record > strong {
  display: block;
  margin-top: 2px;
  color: #4A7275;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.pkn-c-final #page-detail .pkn-sales-ended-record > small {
  margin-top: 4px;
}

body.pkn-c-final #page-detail .pkn-sales-ended-dual-ctas {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  margin-top: 10px;
}

body.pkn-c-final #page-detail .pkn-sales-ended-dual-ctas > .pkn-cmp-dual-cta {
  min-height: 48px;
}
body.pkn-c-final #page-detail .pkn-sales-ended-dual-ctas > .pkn-cmp-dual-cta > span,
body.pkn-c-final #page-detail .pkn-sales-ended-dual-ctas > .pkn-cmp-dual-cta > strong {
  color: #4A7275;
}

body.pkn-c-final #page-detail .pkn-sales-ended-category-link {
  width: 100%;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 8px;
  padding: 0 18px;
  border: 1px solid #073F44;
  border-radius: 10px;
  color: #FFFFFF;
  background: #073F44;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none;
}

body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) {
  overflow: visible;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  background: #FFFFFF;
  box-shadow: none;
}

body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) > .pkn-v2-acc-btn {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 2px 8px;
  padding: 8px 14px;
  border: 0;
  border-radius: 12px;
  color: #073F44;
  background: #FFFFFF;
  box-shadow: none;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) > .pkn-v2-acc-btn > .pkn-v2-acc-title {
  flex: 1 1 calc(100% - 24px);
}

body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) > .pkn-v2-acc-btn > .pkn-v2-acc-sub {
  order: 3;
  flex: 1 1 100%;
  margin: 0;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
}

body.pkn-c-final #page-detail .comparison-section > .pkn-detail-card-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-start;
  justify-content: space-between;
}

body.pkn-c-final #page-detail .comparison-section > .pkn-detail-card-head > div {
  display: contents;
}

body.pkn-c-final #page-detail .comparison-section .pkn-sec-eyebrow {
  grid-column: 1;
  grid-row: 1;
}

body.pkn-c-final #page-detail .comparison-section .pkn-sec-meta {
  grid-column: 2;
  grid-row: 1;
}

body.pkn-c-final #page-detail .comparison-section .pkn-detail-card-title {
  grid-column: 1 / -1;
  grid-row: 2;
}

body.pkn-c-final #page-detail .comparison-section .pkn-sec-eyebrow + .pkn-detail-card-title {
  margin-top: 4px;
}

body.pkn-c-final #page-detail .comparison-section .pkn-sec-meta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

body.pkn-c-final #page-detail .comparison-section .pkn-sec-meta > svg {
  width: 6px;
  height: 6px;
  overflow: hidden;
  border-radius: 50%;
  color: transparent;
  background: #073F44;
}

body.pkn-c-final #page-detail .pkn-history-chart-shell {
  grid-template-columns: 72px minmax(0, 1fr);
}

body.pkn-c-final #page-detail .pkn-history-recent-item strong {
  font-size: 12px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.pkn-c-final #page-exchange .route-facts div::before {
  content: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-path {
  overflow-x: auto;
  overflow-y: hidden;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-arw {
  min-width: 14px;
  margin: 0;
}

@media (max-width: 767px) {
  body.pkn-c-final #page-detail .pkn-history-recent {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  body.pkn-c-final #page-detail .pkn-history-recent > .pkn-history-recent-item {
    flex: 0 0 auto;
    padding: 6px 10px;
    border: 1px solid #DCE9E5;
    background: #FFFFFF;
  }
}

@media (min-width: 1024px) {
  body.pkn-c-final #page-offers .filter-panel {
    position: static;
    top: auto;
    align-self: start;
    max-height: none;
    overflow: visible;
  }

  body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) > .pkn-v2-acc-btn {
    min-height: 56px;
    flex-wrap: nowrap;
    gap: 16px;
    padding: 8px 20px;
    font-size: 15px;
  }

  body.pkn-c-final #page-detail .pkn-detail-title-copy {
    column-gap: 14px;
  }

  body.pkn-c-final #page-detail .pkn-sales-ended-dual-ctas {
    grid-template-columns: repeat(2, 210px);
    gap: 16px;
  }

  body.pkn-c-final #page-detail .pkn-sales-ended-dual-ctas > .pkn-cmp-dual-cta {
    min-height: 52px;
  }

  body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) > .pkn-v2-acc-btn > .pkn-v2-acc-title {
    flex: 0 1 auto;
  }

  body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) > .pkn-v2-acc-btn > .pkn-v2-acc-sub {
    order: initial;
    flex: 0 1 auto;
    margin-left: auto;
    font-size: 13px;
  }

  body.pkn-c-final #page-detail .comparison-section .pkn-sec-eyebrow + .pkn-detail-card-title {
    margin-top: 6px;
  }

  body.pkn-c-final #page-detail .comparison-section .pkn-sec-meta {
    gap: 8px;
  }

  body.pkn-c-final #page-detail .comparison-section .pkn-sec-meta > svg {
    width: 7px;
    height: 7px;
  }

  body.pkn-c-final #page-detail .pkn-history-recent-item strong {
    font-size: 13px;
  }

  body.pkn-c-final #page-exchange .pkn-exv2-route-node {
    min-width: 136px;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    text-align: center;
  }

  body.pkn-c-final #page-exchange .pkn-exv2-card-path .pkn-exv2-arw {
    min-width: 16px;
    flex: 0 0 16px;
  }
}

body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .detail-overview {
  position: static;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  padding-bottom: 0;
}

body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .detail-image {
  position: static;
  inset: auto;
  width: 100%;
  height: 120px;
  margin: 0;
}

body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .pkn-detail-main > .pkn-detail-summary {
  position: static;
  z-index: auto;
  width: 100%;
  height: auto;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr));
  grid-template-rows: none;
  gap: 1px;
  margin: 14px 0 22px;
}

body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .pkn-detail-main > .pkn-detail-summary .pkn-ds-cell,
body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .pkn-detail-main > .pkn-detail-summary .pkn-ds-cell:first-child {
  position: static;
  inset: auto;
  width: auto;
  height: auto;
}

body.pkn-c-final #page-detail .pkn-cmp-action > .pkn-cmp-dual-cta.is-registration {
  border-color: #C9430A;
  color: #FFFFFF;
  background: #C9430A;
}

body.pkn-c-final #page-detail .pkn-cmp-action > .pkn-cmp-dual-cta.is-offer {
  border-color: #067052;
  color: #FFFFFF;
  background: #067052;
}

@media (min-width: 1024px) {
  body.pkn-c-final #page-offers .pkn-mobile-filter {
    display: none;
  }
  body.pkn-c-final #page-detail .pkn-cmp-row {
    position: relative;
    min-height: 80px;
    grid-template-areas: none;
  }
  body.pkn-c-final #page-detail .pkn-cmp-rank-badge {
    position: absolute;
    top: 50%;
    left: 18px;
    grid-area: auto;
    transform: translateY(-50%);
  }
  body.pkn-c-final #page-detail .pkn-cmp-site {
    grid-area: auto;
    grid-column: 1;
    grid-row: 1;
    padding-left: 40px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-diff-col {
    grid-area: auto;
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    justify-self: end;
  }
  body.pkn-c-final #page-detail .pkn-cmp-val {
    width: 150px;
    grid-area: auto;
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    justify-self: end;
  }
  body.pkn-c-final #page-detail .pkn-cmp-action,
  body.pkn-c-final #page-detail .pkn-cmp-action.is-single {
    grid-area: auto;
    display: contents;
  }
  body.pkn-c-final #page-detail .pkn-cmp-action > .pkn-cmp-dual-cta.is-registration {
    grid-column: 3;
    grid-row: 1;
  }
  body.pkn-c-final #page-detail .pkn-cmp-action > .pkn-cmp-dual-cta.is-offer {
    grid-column: 4;
    grid-row: 1;
  }
  body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .detail-overview {
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 32px;
  }
  body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .detail-image {
    width: 300px;
    height: 180px;
  }
  body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .pkn-detail-main > .pkn-detail-summary {
    grid-template-columns: 1.2fr 1fr 1fr;
    margin: 24px 0 22px;
  }
  body.pkn-c-final #page-detail:not(:has(.pkn-detail-sales-ended, .pkn-condition-gate-status)):has(.pkn-detail-main > .pkn-detail-summary) .pkn-detail-main > .pkn-detail-summary .pkn-ds-cell:first-child {
    grid-column: auto;
  }
}

/* Keyboard, pointer and motion states from the approved interaction table. */
body.pkn-c-final #page-offers button,
body.pkn-c-final #page-offers input,
body.pkn-c-final #page-offers select,
body.pkn-c-final #page-offers a,
body.pkn-c-final #page-detail button,
body.pkn-c-final #page-detail input,
body.pkn-c-final #page-detail select,
body.pkn-c-final #page-detail a,
body.pkn-c-final #page-exchange button,
body.pkn-c-final #page-exchange input,
body.pkn-c-final #page-exchange select,
body.pkn-c-final #page-exchange a,
body.pkn-c-final #page-exchange summary {
  transition: background-color .12s ease, border-color .12s ease, color .12s ease;
}

body.pkn-c-final #page-offers button:focus-visible,
body.pkn-c-final #page-offers input:focus-visible,
body.pkn-c-final #page-offers select:focus-visible,
body.pkn-c-final #page-offers a:focus-visible,
body.pkn-c-final #page-detail button:focus-visible,
body.pkn-c-final #page-detail input:focus-visible,
body.pkn-c-final #page-detail select:focus-visible,
body.pkn-c-final #page-detail a:focus-visible,
body.pkn-c-final #page-exchange button:focus-visible,
body.pkn-c-final #page-exchange input:focus-visible,
body.pkn-c-final #page-exchange select:focus-visible,
body.pkn-c-final #page-exchange a:focus-visible,
body.pkn-c-final #page-exchange summary:focus-visible {
  outline: 0;
  box-shadow: inset 0 0 0 2px #FFFFFF, inset 0 0 0 5px #073F44;
}

body.pkn-c-final #page-offers article.offer-card h3 > a:focus-visible {
  box-shadow: none;
}

body.pkn-c-final #page-detail .pkn-cmp-dual-cta[aria-disabled="true"],
body.pkn-c-final #page-detail .pkn-cmp-dual-cta[aria-disabled="true"]:active {
  border-color: #DCE9E5;
  color: #4A7275;
  background: #F1F6F4;
  cursor: default;
  filter: none;
}

body.pkn-c-final #page-detail .pkn-cmp-dual-cta:not([aria-disabled="true"]):active,
body.pkn-c-final #page-exchange .pkn-exv2-submit:active,
body.pkn-c-final #page-offers .pkn-search-sp-btn:active,
body.pkn-c-final #page-offers .pkn-v2-side-search button:active {
  filter: brightness(.96);
}

/* Approved offers loading and recovery states. */
body.pkn-c-final #page-offers .pkn-loading-skeleton {
  grid-column: 1 / -1;
  width: 100%;
  display: block;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #4A7275;
  background: transparent;
  box-shadow: none;
  text-align: left;
}

body.pkn-c-final #page-offers .pkn-loading-label {
  display: block;
  margin-bottom: 12px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.7;
}

body.pkn-c-final #page-offers .pkn-skeleton-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card {
  min-width: 0;
  min-block-size: var(--pkn-skeleton-reserved-block-size, auto);
  box-shadow: none;
  animation: pkskel 1.4s ease-in-out infinite;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card:nth-child(2) {
  animation-delay: .2s;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card span {
  display: block;
  box-sizing: border-box;
}

body.pkn-c-final #page-offers .pkn-skeleton-chip {
  width: 120px;
  height: 26px;
  border-radius: 999px;
  background: #E6F7F0;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card:nth-child(2) .pkn-skeleton-chip {
  width: 150px;
}

body.pkn-c-final #page-offers .pkn-skeleton-title {
  width: 70%;
  height: 18px;
  border-radius: 6px;
  background: #EDF3F1;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card:nth-child(2) .pkn-skeleton-title {
  width: 55%;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card .offer-image {
  background: #EDF3F1;
}

body.pkn-c-final #page-offers .pkn-skeleton-image {
  width: 100%;
  height: 100%;
}

body.pkn-c-final #page-offers .pkn-skeleton-meta {
  width: 90%;
  height: 12px;
  border-radius: 6px;
  background: #EDF3F1;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card:nth-child(2) .pkn-skeleton-meta {
  width: 80%;
}

body.pkn-c-final #page-offers .pkn-skeleton-reward {
  width: 50%;
  height: 26px;
  border-radius: 6px;
  background: #F1E6DE;
}

body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card:nth-child(2) .pkn-skeleton-reward {
  width: 60%;
}

body.pkn-c-final #page-offers .pkn-skeleton-ranking {
  width: 75%;
  height: 12px;
  border-radius: 6px;
  background: #EDF3F1;
}

body.pkn-c-final #page-offers .pkn-skeleton-rank {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #EDF3F1;
}

body.pkn-c-final #page-offers .pkn-skeleton-ranking-value {
  width: 44px;
  height: 12px;
  border-radius: 6px;
  background: #EDF3F1;
}

body.pkn-c-final #page-offers .pkn-skeleton-foot {
  width: 60%;
  height: 12px;
  border-radius: 6px;
  background: #EDF3F1;
}

body.pkn-c-final #page-offers .feedback-panel.error.pkn-api-error {
  grid-column: 1 / -1;
  padding: 16px;
  border: 1px solid #E5B92E;
  border-radius: 14px;
  color: #073F44;
  background: #FFF8D7;
  text-align: left;
}

body.pkn-c-final #page-offers .pkn-api-error-top {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

body.pkn-c-final #page-offers .pkn-api-error-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #F8CA36;
  background: #073F44;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}

body.pkn-c-final #page-offers .pkn-api-error-message {
  min-width: 0;
}

body.pkn-c-final #page-offers .pkn-api-error-message > h2 {
  margin: 0;
  color: #073F44;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.6;
}

body.pkn-c-final #page-offers .pkn-api-error-message > p {
  margin: 6px 0 0;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.8;
}

body.pkn-c-final #page-offers .pkn-api-error-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

body.pkn-c-final #page-offers .pkn-api-error-actions > button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #073F44;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
}

body.pkn-c-final #page-offers .pkn-api-error-retry {
  padding: 0 18px;
  color: #FFFFFF;
  background: #073F44;
}

body.pkn-c-final #page-offers .pkn-api-error-change {
  padding: 0 16px;
  color: #073F44;
  background: #FFFFFF;
}

body.pkn-c-final:has(#page-detail .pkn-detail-sales-ended) .pkn-disclosure-bar {
  min-height: 44px;
  padding-top: 0;
  padding-bottom: 0;
}

@keyframes pkskel {
  0%, 100% { opacity: 1; }
  50% { opacity: .55; }
}

@media (min-width: 1024px) {
  body.pkn-c-final #page-offers .pkn-skeleton-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    gap: 20px;
  }
}

@media (hover: hover) and (pointer: fine) {
  body.pkn-c-final #page-offers .pkn-cat-btn:not(.is-active):hover,
  body.pkn-c-final #page-offers .pkn-diff-btn:not(.is-active):hover,
  body.pkn-c-final #page-offers .pkn-sort-btn:not(.is-active):hover,
  body.pkn-c-final #page-offers .pkn-chip-btn:not([aria-pressed="true"]):hover {
    border-color: #BFD4CE;
    color: #073F44;
    background: #F6FBF9;
  }
  body.pkn-c-final #page-offers .pkn-filter-item:not(:has(input:disabled)):hover {
    margin-inline: -8px;
    padding-inline: 8px;
    border-radius: 10px;
    background: #F6FBF9;
  }
  body.pkn-c-final #page-offers .pkn-v2-sort-cycle:hover {
    border-color: #073F44;
    color: #073F44;
    background: #F6FBF9;
  }
  body.pkn-c-final #page-offers .pkn-mobile-filter-toggle:not([aria-expanded="true"]):hover,
  body.pkn-c-final #page-offers .pkn-api-error-change:hover {
    border-color: #073F44;
    color: #073F44;
    background: #E6F7F0;
  }
  body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-btn:not(.is-active):hover {
    border-color: #073F44;
    color: #073F44;
    background: #E6F7F0;
  }
  body.pkn-c-final #page-offers + section.pkn-offer-text-list details.pkn-offer-text-group > summary:hover,
  body.pkn-c-final #page-exchange .route-card > summary:hover,
  body.pkn-c-final #page-exchange .pkn-v2-beta > summary:hover {
    background: #F6FBF9;
  }
  body.pkn-c-final #page-exchange .route-card > summary:hover .pkn-exv2-card-head {
    background: #F6FBF9;
  }
  body.pkn-c-final #page-offers article.offer-card:not(.pkn-skeleton-card):hover {
    border-color: #BFD4CE;
  }
  body.pkn-c-final #page-offers article.offer-card:not(.pkn-skeleton-card):hover .offer-cta-label {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  body.pkn-c-final #page-offers .pkn-api-error-retry:hover,
  body.pkn-c-final #page-exchange .pkn-exv2-submit:hover {
    border-color: #0A555C;
    color: #FFFFFF;
    background: #0A555C;
  }
  body.pkn-c-final:has(#page-offers) .pkn-nav-link:not(.pkn-c-search):hover,
  body.pkn-c-final:has(#page-detail) .pkn-nav-link:not(.pkn-c-search):hover,
  body.pkn-c-final:has(#page-exchange) .pkn-nav-link:not(.pkn-c-search):hover {
    color: #073F44;
    background: transparent;
    text-decoration-line: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 6px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-c-search:hover,
  body.pkn-c-final:has(#page-detail) .pkn-c-search:hover,
  body.pkn-c-final:has(#page-exchange) .pkn-c-search:hover,
  body.pkn-c-final:has(#page-offers) .pkn-mm-btn:hover,
  body.pkn-c-final:has(#page-detail) .pkn-mm-btn:hover,
  body.pkn-c-final:has(#page-exchange) .pkn-mm-btn:hover {
    background: rgba(7,63,68,.08);
  }
  body.pkn-c-final #page-detail .pkn-condition-tab:not([aria-selected="true"]):hover,
  body.pkn-c-final #page-detail .pkn-history-toggle button:not(.is-active):not(:disabled):hover {
    border-color: #BFD4CE;
    color: #073F44;
    background: #E6F7F0;
  }
  body.pkn-c-final #page-detail .pkn-v2-acc:has(.novice-section) > .pkn-v2-acc-btn:hover,
  body.pkn-c-final #page-detail #detail-history .pkn-v2-acc > .pkn-v2-acc-btn:hover {
    color: #073F44;
    background-color: #F6FBF9;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-pick:hover,
  body.pkn-c-final #page-exchange .sort-control select:hover {
    border-color: #BFD4CE;
    color: #073F44;
    background-color: #F6FBF9;
  }
  body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration:not([aria-disabled="true"]):hover {
    border-color: #B03B08;
    color: #FFFFFF;
    background: #B03B08;
  }
  body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer:not([aria-disabled="true"]):hover {
    border-color: #05553E;
    color: #FFFFFF;
    background: #05553E;
  }
  body.pkn-c-final #page-offers .pkn-breadcrumb a:hover,
  body.pkn-c-final #page-offers + section.pkn-offer-text-list a:hover,
  body.pkn-c-final #page-detail .pkn-breadcrumb a:hover,
  body.pkn-c-final #page-detail .pkn-condition-source a:hover,
  body.pkn-c-final #page-detail .pkn-related-offer:hover,
  body.pkn-c-final #page-exchange .pkn-v2-crumb a:hover,
  body.pkn-c-final #page-exchange .pkn-exv2-src a:hover {
    color: #073F44;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-legal-nav a:hover,
  body.pkn-c-final:has(#page-detail) .pkn-legal-nav a:hover,
  body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a:hover {
    color: #FFFFFF;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  body.pkn-c-final #page-offers article.offer-card:has(h3 > a:active),
  body.pkn-c-final #page-offers .pkn-v2-sort-cycle:active,
  body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-btn:not(.is-active):active,
  body.pkn-c-final #page-offers .pkn-api-error-actions > button:active,
  body.pkn-c-final #page-exchange .pkn-exv2-submit:active {
    filter: brightness(.96);
  }
  body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-btn.is-active:hover,
  body.pkn-c-final #page-detail .pkn-cmp-dual-cta[aria-disabled="true"]:hover {
    cursor: default;
    filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.pkn-c-final #page-offers *,
  body.pkn-c-final #page-detail *,
  body.pkn-c-final #page-exchange * {
    animation: none;
    transition: none;
  }
  body.pkn-c-final #page-offers article.offer-card.pkn-skeleton-card {
    animation: none;
  }
}

/* Extended-state audit corrections. Every value below is explicit in 00-03. */
body.pkn-c-final #page-exchange .pkn-v2-beta-body > p,
body.pkn-c-final #page-exchange .pkn-v2-beta-body > .pkn-v2-beta-list {
  color: #073F44;
}

body.pkn-c-final #page-detail .pkn-v2-src {
  color: #4A7275;
  background: #EDF3F1;
}

body.pkn-c-final #page-detail #detail-history .pkn-v2-acc-in > .pkn-v2-hist-all {
  min-height: 44px;
}

/* 00 limits red price text to 18px+ bold; this overrides the older 02 SP mock. */
body.pkn-c-final #page-detail .pkn-related-offer-value {
  font-size: 18px;
}

/* The shared bundle suppresses the button shadow. Draw the same approved ring
   on a dedicated pseudo layer so each pager button retains its own 44px target. */
body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-btn {
  position: relative;
}
body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-btn:focus-visible::after {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 2px #073F44, inset 0 0 0 5px #FFF8D7;
  content: "";
  pointer-events: none;
}
body.pkn-c-final #page-offers .pkn-pager > .pkn-pager-btn.is-active:focus-visible::after {
  box-shadow: inset 0 0 0 2px #FFFFFF, inset 0 0 0 5px #073F44;
}

/* Component-level shadow resets occur after the generic focus rule. These
   selectors win by scope/specificity without adding !important. */
body.pkn-c-final #page-detail .pkn-condition-tabs:has(.pkn-condition-tablist > .pkn-condition-tab:focus-visible) .pkn-condition-tablist > .pkn-condition-tab:focus-visible,
body.pkn-c-final #page-detail .pkn-v2-acc:has(> .pkn-v2-acc-btn:focus-visible) > .pkn-v2-acc-btn:focus-visible,
body.pkn-c-final #page-detail #detail-history .pkn-v2-acc:has(> .pkn-v2-acc-btn:focus-visible) > .pkn-v2-acc-btn:focus-visible,
body.pkn-c-final #page-detail .pkn-history-toggle:has(> button:focus-visible) > button:focus-visible {
  box-shadow: inset 0 0 0 2px #073F44, inset 0 0 0 5px #FFF8D7;
}
body.pkn-c-final #page-detail .pkn-empty:has(> .pkn-btn-primary:focus-visible) > .pkn-btn-primary:focus-visible {
  box-shadow: inset 0 0 0 2px #FFFFFF, inset 0 0 0 5px #073F44;
}
body.pkn-c-final #page-exchange .pkn-exv2-amount-shell:has(> #pkn-exchange-amount:focus-visible) > #pkn-exchange-amount:focus-visible {
  box-shadow: inset 0 0 0 2px #073F44, inset 0 0 0 5px #FFF8D7;
}

/* The exchange breadcrumb's current location is an unwrapped text node, so
   the parent carries the approved current-location color. */
body.pkn-c-final #page-exchange .pkn-v2-crumb.breadcrumb {
  color: #073F44;
}

/* Final page-scoped interaction and wrapping contract. */
body.pkn-c-final #page-offers,
body.pkn-c-final #page-offers *,
body.pkn-c-final #page-detail,
body.pkn-c-final #page-detail *,
body.pkn-c-final #page-exchange,
body.pkn-c-final #page-exchange * {
  overflow-wrap: normal;
  line-break: strict;
}

body.pkn-c-final #page-offers [data-pkn-filter-summary],
body.pkn-c-final #page-detail .pkn-condition-original {
  overflow-wrap: anywhere;
}

body.pkn-c-final #page-offers a:focus-visible,
body.pkn-c-final #page-offers button:focus-visible,
body.pkn-c-final #page-offers select:focus-visible,
body.pkn-c-final #page-offers summary:focus-visible,
body.pkn-c-final #page-offers input:not([type="checkbox"]):not([type="range"]):focus-visible,
body.pkn-c-final #page-offers + section.pkn-offer-text-list a:focus-visible,
body.pkn-c-final #page-offers + section.pkn-offer-text-list summary:focus-visible,
body.pkn-c-final #page-detail a:focus-visible,
body.pkn-c-final #page-detail button:focus-visible,
body.pkn-c-final #page-detail select:focus-visible,
body.pkn-c-final #page-detail summary:focus-visible,
body.pkn-c-final #page-detail input:not([type="checkbox"]):not([type="range"]):focus-visible,
body.pkn-c-final #page-exchange a:focus-visible,
body.pkn-c-final #page-exchange button:focus-visible,
body.pkn-c-final #page-exchange select:focus-visible,
body.pkn-c-final #page-exchange summary:focus-visible,
body.pkn-c-final #page-exchange input:not([type="checkbox"]):not([type="range"]):focus-visible,
body.pkn-c-final:has(#page-offers) .pkn-disclosure-bar-link:focus-visible,
body.pkn-c-final:has(#page-detail) .pkn-disclosure-bar-link:focus-visible,
body.pkn-c-final:has(#page-exchange) .pkn-disclosure-bar-link:focus-visible,
body.pkn-c-final:has(#page-offers) .pkn-header a:focus-visible,
body.pkn-c-final:has(#page-offers) .pkn-header button:focus-visible,
body.pkn-c-final:has(#page-detail) .pkn-header a:focus-visible,
body.pkn-c-final:has(#page-detail) .pkn-header button:focus-visible,
body.pkn-c-final:has(#page-exchange) .pkn-header a:focus-visible,
body.pkn-c-final:has(#page-exchange) .pkn-header button:focus-visible {
  outline: 0;
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px #073F44, inset 0 0 0 5px #FFF8D7;
}

body.pkn-c-final:has(#page-offers) .pkn-legal-nav a:focus-visible,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav a:focus-visible,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a:focus-visible,
body.pkn-c-final #page-offers .pkn-api-error-retry:focus-visible,
body.pkn-c-final #page-detail .pkn-cmp-dual-cta:not([aria-disabled="true"]):focus-visible,
body.pkn-c-final #page-exchange .pkn-exv2-submit:focus-visible,
body.pkn-c-final #page-exchange .pkn-exv2-retry:focus-visible,
body.pkn-c-final #page-exchange .pkn-exv2-change-conditions:focus-visible {
  outline: 0;
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px #FFFFFF, inset 0 0 0 5px #073F44;
}

body.pkn-c-final #page-offers input[type="checkbox"]:focus-visible,
body.pkn-c-final #page-offers input[type="range"]:focus-visible,
body.pkn-c-final #page-detail input[type="checkbox"]:focus-visible,
body.pkn-c-final #page-detail input[type="range"]:focus-visible {
  outline: auto;
  outline-offset: 0;
  box-shadow: none;
}

body.pkn-c-final #page-offers a,
body.pkn-c-final #page-offers button,
body.pkn-c-final #page-offers input,
body.pkn-c-final #page-offers select,
body.pkn-c-final #page-offers summary,
body.pkn-c-final #page-detail a,
body.pkn-c-final #page-detail button,
body.pkn-c-final #page-detail input,
body.pkn-c-final #page-detail select,
body.pkn-c-final #page-detail summary,
body.pkn-c-final #page-exchange a,
body.pkn-c-final #page-exchange button,
body.pkn-c-final #page-exchange input,
body.pkn-c-final #page-exchange select,
body.pkn-c-final #page-exchange summary {
  transition: background-color .12s ease-out, border-color .12s ease-out, color .12s ease-out;
}

body.pkn-c-final #page-offers .pkn-exv2-chev,
body.pkn-c-final #page-detail .pkn-v2-acc-cv,
body.pkn-c-final #page-exchange .pkn-exv2-chev {
  transition-property: color;
  transition-duration: .12s;
  transition-timing-function: ease-out;
}

body.pkn-c-final #page-offers a:active,
body.pkn-c-final #page-offers button:active,
body.pkn-c-final #page-detail a:active,
body.pkn-c-final #page-detail button:active,
body.pkn-c-final #page-exchange a:active,
body.pkn-c-final #page-exchange button:active,
body.pkn-c-final:has(#page-offers) .pkn-header a:active,
body.pkn-c-final:has(#page-offers) .pkn-header button:active,
body.pkn-c-final:has(#page-detail) .pkn-header a:active,
body.pkn-c-final:has(#page-detail) .pkn-header button:active,
body.pkn-c-final:has(#page-exchange) .pkn-header a:active,
body.pkn-c-final:has(#page-exchange) .pkn-header button:active {
  filter: brightness(.96);
  transition: none;
}

body.pkn-c-final #page-offers .pkn-pager-btn.is-active:active,
body.pkn-c-final #page-detail [aria-disabled="true"]:active {
  filter: none;
}

/* The page-specific base state outranks inherited legacy hover rules. The
   fine-pointer differences are restored only inside the media query below. */
body.pkn-c-final:has(#page-offers) .pkn-nav-link:not(.is-active),
body.pkn-c-final:has(#page-detail) .pkn-nav-link:not(.is-active),
body.pkn-c-final:has(#page-exchange) .pkn-nav-link:not(.is-active) {
  color: #073F44;
  background: transparent;
  text-decoration: none;
}

body.pkn-c-final:has(#page-offers) .pkn-c-search,
body.pkn-c-final:has(#page-detail) .pkn-c-search,
body.pkn-c-final:has(#page-exchange) .pkn-c-search,
body.pkn-c-final:has(#page-offers) .pkn-mm-btn,
body.pkn-c-final:has(#page-detail) .pkn-mm-btn,
body.pkn-c-final:has(#page-exchange) .pkn-mm-btn {
  background: transparent;
  text-decoration: none;
}

body.pkn-c-final:has(#page-offers) .pkn-legal-nav a,
body.pkn-c-final:has(#page-detail) .pkn-legal-nav a,
body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a {
  color: #E6F7F0;
  text-decoration: none;
}

body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration:not([aria-disabled="true"]) {
  border-color: #C9430A;
  color: #FFFFFF;
  background: #C9430A;
  filter: none;
}

body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer:not([aria-disabled="true"]) {
  border-color: #067052;
  color: #FFFFFF;
  background: #067052;
  filter: none;
}

@media (hover: hover) and (pointer: fine) {
  body.pkn-c-final:has(#page-offers) .pkn-nav-link:not(.pkn-c-search):not(.is-active):hover,
  body.pkn-c-final:has(#page-detail) .pkn-nav-link:not(.pkn-c-search):not(.is-active):hover,
  body.pkn-c-final:has(#page-exchange) .pkn-nav-link:not(.pkn-c-search):not(.is-active):hover {
    color: #073F44;
    text-decoration-line: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 6px;
  }
  body.pkn-c-final:has(#page-offers) .pkn-c-search:hover,
  body.pkn-c-final:has(#page-detail) .pkn-c-search:hover,
  body.pkn-c-final:has(#page-exchange) .pkn-c-search:hover,
  body.pkn-c-final:has(#page-offers) .pkn-mm-btn:hover,
  body.pkn-c-final:has(#page-detail) .pkn-mm-btn:hover,
  body.pkn-c-final:has(#page-exchange) .pkn-mm-btn:hover {
    background: rgba(7, 63, 68, .08);
  }
  body.pkn-c-final:has(#page-offers) .pkn-legal-nav a:hover,
  body.pkn-c-final:has(#page-detail) .pkn-legal-nav a:hover,
  body.pkn-c-final:has(#page-exchange) .pkn-legal-nav a:hover {
    color: #FFFFFF;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-registration:not([aria-disabled="true"]):hover {
    border-color: #B03B08;
    color: #FFFFFF;
    background: #B03B08;
  }
  body.pkn-c-final #page-detail .pkn-cmp-dual-cta.is-offer:not([aria-disabled="true"]):hover {
    border-color: #05553E;
    color: #FFFFFF;
    background: #05553E;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-change-conditions:hover,
  body.pkn-c-final #page-exchange .pkn-exv2-retry:hover {
    border-color: #0A555C;
    color: #FFFFFF;
    background: #0A555C;
  }
  body.pkn-c-final #page-exchange .pkn-v2-beta-toggle:hover,
  body.pkn-c-final #page-exchange .pkn-exv2-step-source a:hover {
    color: #073F44;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
}

@media (max-width: 1023px) {
  body.pkn-c-final #page-offers .pkn-sp-filter-panel {
    position: static;
    inset: auto;
    width: auto;
    max-width: none;
    max-height: none;
    overflow: visible;
    z-index: auto;
    box-shadow: none;
  }
}

@media (max-width: 767px) {
  body.pkn-c-final #page-detail .pkn-condition-tablist {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
  }
  body.pkn-c-final #page-detail .pkn-condition-tab {
    flex: 0 0 auto;
    white-space: nowrap;
  }
}

/* Native exchange controls and approved state panels. */
body.pkn-c-final #page-exchange .pkn-v2-crumb {
  display: flex;
  align-items: center;
  gap: 6px;
}

body.pkn-c-final #page-exchange .pkn-v2-crumb-sep {
  color: #6E8A8C;
}

body.pkn-c-final #page-exchange .pkn-v2-crumb [aria-current="page"] {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #073F44;
  font-weight: 700;
}

body.pkn-c-final #page-exchange .pkn-exv2-select-field {
  min-width: 0;
  grid-column: 1 / -1;
  margin: 12px 0 0;
}

body.pkn-c-final #page-exchange .pkn-exv2-select-field .field-label,
body.pkn-c-final #page-exchange .pkn-exv2-amount .field-label {
  display: block;
  margin: 0 0 5px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
}

body.pkn-c-final #page-exchange .pkn-exv2-select-shell,
body.pkn-c-final #page-exchange .pkn-exv2-amount-shell {
  position: relative;
  display: block;
}

body.pkn-c-final #page-exchange .pkn-exv2-select-shell > .pkn-exv2-mark {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
  pointer-events: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-select-shell > select {
  width: 100%;
  min-height: 48px;
  padding: 0 40px;
  border: 1px solid #BFD4CE;
  border-radius: 10px;
  color: #073F44;
  background: #FFFFFF;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  appearance: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-select-chev {
  position: absolute;
  top: 50%;
  right: 14px;
  color: #4A7275;
  transform: translateY(-50%);
  pointer-events: none;
}

body.pkn-c-final #page-exchange #pkn-exchange-amount {
  padding: 0 34px 0 12px;
  background-image: none;
}

body.pkn-c-final #page-exchange #pkn-exchange-amount[aria-invalid="true"] {
  border: 2px solid #C9430A;
  color: #073F44;
}

body.pkn-c-final #page-exchange .pkn-exv2-amount-unit {
  position: absolute;
  top: 50%;
  right: 12px;
  color: #4A7275;
  font-size: 13px;
  font-weight: 700;
  transform: translateY(-50%);
  pointer-events: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-input-error {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 8px 0 0;
  color: #C9430A;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.75;
}

body.pkn-c-final #page-exchange .pkn-exv2-step-heading {
  display: block;
  margin: 0 14px;
  padding-top: 12px;
  border-top: 1px solid #EDF3F1;
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}

body.pkn-c-final #page-exchange .route-card.is-best .pkn-exv2-step-heading {
  border-top-color: #F2E6C4;
}

body.pkn-c-final #page-exchange .pkn-exv2-step-attributes {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 14px;
}

body.pkn-c-final #page-exchange .pkn-exv2-step-attributes > span {
  white-space: normal;
}

body.pkn-c-final #page-exchange .pkn-exv2-step-attributes b {
  color: #4A7275;
}

body.pkn-c-final #page-exchange .pkn-exv2-step-note {
  margin: 2px 0 0;
  color: #073F44;
  font-size: 12px;
  line-height: 1.85;
}

body.pkn-c-final #page-exchange .pkn-exv2-step-source {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2px 12px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}

body.pkn-c-final #page-exchange .pkn-exv2-step-source a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #067052;
}

body.pkn-c-final #page-exchange .pkn-exv2-change-conditions,
body.pkn-c-final #page-exchange .pkn-exv2-retry {
  min-height: 48px;
  margin-top: 14px;
  padding: 0 20px;
  border: 1px solid #073F44;
  border-radius: 10px;
  color: #FFFFFF;
  background: #073F44;
  font-size: 14px;
  font-weight: 900;
}

body.pkn-c-final #page-exchange .pkn-exv2-search-error {
  padding: 16px;
  border: 1px solid #E5B92E;
  border-radius: 14px;
  color: #073F44;
  background: #FFF8D7;
}

body.pkn-c-final #page-exchange .pkn-exv2-search-error-copy {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

body.pkn-c-final #page-exchange .pkn-exv2-search-error-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #F8CA36;
  background: #073F44;
  font-size: 13px;
  font-weight: 900;
}

body.pkn-c-final #page-exchange .pkn-exv2-search-error strong {
  font-size: 14px;
  font-weight: 900;
  line-height: 1.6;
}

body.pkn-c-final #page-exchange .pkn-exv2-search-error p {
  margin: 6px 0 0;
  color: #4A7275;
  font-size: 13px;
  line-height: 1.8;
}

body.pkn-c-final #page-exchange .pkn-exv2-retry {
  min-height: 44px;
  margin-top: 12px;
  padding: 0 18px;
  font-weight: 700;
}

body.pkn-c-final #page-exchange .pkn-v2-beta-toggle {
  text-decoration: none;
}

body.pkn-c-final #page-exchange .pkn-exv2-card-path {
  overflow-x: auto;
  overflow-y: hidden;
}

@media (min-width: 1024px) {
  body.pkn-c-final #page-exchange .pkn-exv2-select-shell > .pkn-exv2-mark {
    left: 10px;
  }
  body.pkn-c-final #page-exchange #pkn-exchange-amount {
    padding: 0 36px 0 14px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-amount-unit {
    right: 14px;
  }
  body.pkn-c-final #page-exchange .pkn-exv2-step-heading {
    margin-inline: 20px;
  }
}

/* Detail state frames required by the approved redlines. */
body.pkn-c-final #page-detail .pkn-breadcrumb .is-current {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #073F44;
  font-weight: 700;
}

body.pkn-c-final #page-detail .pkn-sales-ended-title-notice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 10px 0 0;
  padding: 12px 14px;
  border: 1px solid #BFD4CE;
  border-radius: 12px;
  color: #073F44;
  background: #F6FBF9;
}

body.pkn-c-final #page-detail .pkn-sales-ended-title-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #FFFFFF;
  background: #073F44;
  font-size: 12px;
  font-weight: 900;
}

body.pkn-c-final #page-detail .pkn-sales-ended-title-heading,
body.pkn-c-final #page-detail .pkn-sales-ended-title-copy,
body.pkn-c-final #page-detail .pkn-sales-ended-title-date {
  margin: 0;
}

body.pkn-c-final #page-detail .pkn-sales-ended-title-heading {
  font-size: 14px;
  font-weight: 900;
  line-height: 1.6;
}

body.pkn-c-final #page-detail .pkn-sales-ended-title-copy,
body.pkn-c-final #page-detail .pkn-sales-ended-title-date {
  margin-top: 6px;
  color: #4A7275;
  font-size: 12px;
  line-height: 1.8;
}

body.pkn-c-final #page-detail .pkn-condition-original.is-missing {
  padding: 14px;
  color: #4A7275;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.85;
  overflow-wrap: normal;
}

body.pkn-c-final #page-detail .pkn-condition-panel:has(.pkn-condition-original.is-missing) {
  border-radius: 12px;
}

body.pkn-c-final #page-detail .pkn-condition-panel:has(.pkn-condition-original.is-missing) .pkn-condition-panel-value {
  color: #073F44;
  font-size: 18px;
  font-weight: 900;
}

body.pkn-c-final #page-detail .pkn-history-toggle [aria-disabled="true"] {
  border-style: dashed;
  border-color: #BFD4CE;
  color: #4A7275;
  background: #F6FBF9;
  cursor: default;
}

body.pkn-c-final #page-detail .pkn-condition-tab {
  overflow-wrap: normal;
}

body.pkn-c-final #page-detail .pkn-history-insufficient {
  margin-top: 12px;
  padding: 14px;
  border: 1px solid #DCE9E5;
  border-radius: 12px;
  color: #073F44;
  background: #FFFFFF;
  text-align: center;
}

body.pkn-c-final #page-detail .pkn-history-insufficient p {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
}

body.pkn-c-final #page-detail .pkn-history-insufficient p + p {
  margin-top: 6px;
  color: #4A7275;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.8;
}

/* 00 §7: the shared skip link also uses an inside ring on only these pages. */
body.pkn-c-final:has(#page-offers) .skip-link:focus-visible,
body.pkn-c-final:has(#page-detail) .skip-link:focus-visible,
body.pkn-c-final:has(#page-exchange) .skip-link:focus-visible {
  outline: none;
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px #FFFFFF, inset 0 0 0 5px #073F44;
  transition: background-color .12s ease-out, border-color .12s ease-out, color .12s ease-out;
}
