/* PPN Core: price box, contact form, ad slots. Uses theme variables when present. */
.ppn-box{--a:var(--ppn-accent,#0B7A4B);--t:var(--ppn-tag,#F2B233);--ink:var(--ppn-ink,#12201A);margin:0 0 1.75rem;border:1px solid #d9e2dd;border-top:4px solid var(--a);border-radius:10px;background:#fff;color:var(--ink);overflow:hidden;font-size:.95rem;line-height:1.5}
.ppn-box__head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.9rem 1.1rem;background:#f3f7f5}
.ppn-box .ppn-box__title{margin:0;font-size:1.15rem;line-height:1.3;letter-spacing:0}
.ppn-status{font-size:.8rem;font-weight:700;padding:.2rem .6rem;border-radius:999px;background:#e5e7eb}
.ppn-status--available{background:#d6f3e4;color:#0a5c38}
.ppn-status--coming-soon{background:#fdefc8;color:#7a5400}
.ppn-status--discontinued{background:#fde0e0;color:#8a1c1c}
.ppn-box__price{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;padding:1rem 1.1rem}
.ppn-box__label{flex:1 0 100%;font-size:.85rem;color:#4b5b53}
.ppn-tag{position:relative;display:inline-block;padding:.35rem .9rem .35rem 1.35rem;background:var(--t);color:#1b1500;font-size:1.65rem;font-weight:800;line-height:1.2;letter-spacing:-.01em;clip-path:polygon(.8rem 0,100% 0,100% 100%,.8rem 100%,0 50%)}
.ppn-box__na{font-weight:600}
.ppn-box__prev,.ppn-box__range{font-size:.9rem;color:#4b5b53}
.ppn-specs{margin:0;padding:0 1.1rem .4rem}
.ppn-specs__row{display:grid;grid-template-columns:minmax(110px,32%) 1fr;gap:.75rem;padding:.55rem 0;border-top:1px solid #e6ece8}
.ppn-specs dt{font-weight:600;color:#33443b}
.ppn-specs dd{margin:0;overflow-wrap:anywhere}
.ppn-box__note{margin:0;padding:.75rem 1.1rem;font-size:.8rem;line-height:1.5;color:#55655d;background:#f7f9f8;border-top:1px solid #e6ece8}
@media (max-width:480px){.ppn-specs__row{grid-template-columns:1fr;gap:.1rem}.ppn-tag{font-size:1.45rem}}

.ppn-form p{margin:0 0 1rem}
.ppn-form label{display:block;font-weight:600;margin-bottom:.3rem}
.ppn-form input[type=text],.ppn-form input[type=email],.ppn-form textarea{width:100%;max-width:100%;padding:.7rem .8rem;border:1px solid #b9c6bf;border-radius:8px;font:inherit;background:#fff;color:inherit;box-sizing:border-box}
.ppn-form input:focus,.ppn-form textarea:focus{outline:3px solid rgba(11,122,75,.35);outline-offset:1px;border-color:var(--ppn-accent,#0B7A4B)}
.ppn-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ppn-btn{display:inline-block;padding:.75rem 1.4rem;border:0;border-radius:8px;background:var(--ppn-accent,#0B7A4B);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.ppn-btn:hover{filter:brightness(1.1)}
.ppn-btn:focus-visible{outline:3px solid #12201A;outline-offset:2px}
.ppn-notice{padding:.8rem 1rem;border-radius:8px;margin:0 0 1.25rem;font-weight:600}
.ppn-notice--ok{background:#d6f3e4;color:#0a5c38}
.ppn-notice--err{background:#fde0e0;color:#8a1c1c}

.ppn-ad{margin:1.5rem 0;text-align:center;overflow:hidden;max-width:100%}
.ppn-ad__label{display:block;font-size:.7rem;color:#6b7a72;margin-bottom:.25rem}
.ppn-ad.is-empty{padding:.8rem;border:1px dashed #b9c6bf;border-radius:8px;font-size:.8rem;color:#6b7a72}

/* Phone comparison */
.ppn-cmp{margin:2rem 0;padding:1.1rem;border:1px solid #d9e2dd;border-top:4px solid var(--ppn-accent,#0B7A4B);border-radius:10px;background:#fff;color:var(--ppn-ink,#12201A)}
.ppn-cmp .ppn-cmp__title{margin:0 0 .8rem;font-size:1.25rem;line-height:1.3}
.ppn-cmp__pick label{display:block;font-weight:700;margin-bottom:.35rem}
.ppn-cmp__search{width:100%;max-width:100%;min-height:48px;padding:.55rem .8rem;border:1px solid #b9c6bf;border-radius:8px;font:inherit;font-size:1rem;background:#fff;color:inherit;box-sizing:border-box}
.ppn-cmp__search:focus{outline:3px solid rgba(11,122,75,.35);outline-offset:1px;border-color:var(--ppn-accent,#0B7A4B)}
.ppn-cmp__pick{margin-bottom:.9rem}
.ppn-cmp__out{margin-top:1rem;font-size:.95rem}
.ppn-cmp__scroll{overflow-x:auto}
.ppn-cmp__table{width:100%;min-width:300px;border-collapse:collapse;table-layout:fixed}
.ppn-cmp__table th,.ppn-cmp__table td{padding:.6rem .5rem;border-top:1px solid #e6ece8;text-align:left;vertical-align:top;overflow-wrap:anywhere;font-size:.92rem;line-height:1.4}
.ppn-cmp__table thead th,.ppn-cmp__table thead td{border-top:0;vertical-align:bottom}
.ppn-cmp__table tbody th{width:30%;padding:.6rem .4rem;font-size:.82rem;font-weight:600;color:#33443b;background:#f7f9f8;overflow-wrap:normal;word-break:normal;hyphens:manual}
@media (min-width:600px){.ppn-cmp__table tbody th{font-size:.92rem;padding:.6rem .5rem}}
.ppn-cmp__phone{display:flex;flex-direction:column;gap:6px;color:inherit;font-weight:700;text-decoration:none}
.ppn-cmp__phone img{width:56px;height:56px;border-radius:8px;object-fit:cover}
.ppn-cmp__table td.is-best{background:#e7f2ec;font-weight:700}
.ppn-cmp__table td small{display:block;font-size:.75rem;color:#0a5c38}
.ppn-cmp__note{margin:1rem 0 0;font-size:.8rem;line-height:1.5;color:#55655d}

/* Where to buy (affiliate) */
.ppn-buy{--a:var(--ppn-accent,#0B7A4B);--t:var(--ppn-tag,#F2B233);margin:0 0 1.75rem;padding:1rem 1.1rem;border:1px solid #d9e2dd;border-left:5px solid var(--t);border-radius:10px;background:#fff;color:var(--ppn-ink,#12201A);font-size:.95rem;line-height:1.5}
.ppn-buy .ppn-buy__title{margin:0 0 .7rem;font-size:1.2rem;line-height:1.3;letter-spacing:0}
.ppn-buy .ppn-buy__list{list-style:none;margin:0;padding:0}
.ppn-buy .ppn-buy__item{margin:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:.7rem 0;border-top:1px solid #e6ece8}
.ppn-buy__item:first-child{border-top:0;padding-top:0}
.ppn-buy__store{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0}
.ppn-buy__store strong{font-size:1.05rem}
.ppn-buy__price{font-weight:800;color:#0a5c38}
.ppn-buy__badge{font-size:.72rem;font-weight:800;padding:.1rem .5rem;border-radius:999px;background:#d6f3e4;color:#0a5c38}
.ppn-buy .ppn-buy__btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 1.5rem;border-radius:8px;background:var(--a);color:#fff;font-weight:800;text-decoration:none;white-space:nowrap}
.ppn-buy .ppn-buy__btn:hover{filter:brightness(1.12);color:#fff;text-decoration:none}
.ppn-buy .ppn-buy__btn:focus-visible{outline:3px solid #12201A;outline-offset:2px}
.ppn-buy__note{margin:.6rem 0 0;font-size:.78rem;line-height:1.5;color:#55655d}
.ppn-buy__note+.ppn-buy__note{margin-top:.25rem}
.ppn-buy.is-empty{padding:.8rem 1rem;border:1px dashed #b9c6bf;border-left:5px solid #b9c6bf;font-size:.82rem;color:#55655d;background:#fafcfb}
@media (max-width:480px){.ppn-buy .ppn-buy__btn{flex:1 0 100%}}

/* Price disclaimer */
.ppn-disclaimer{margin:1.75rem 0 1.25rem;padding:.7rem 1rem;border:1px solid #e3d3a4;border-left:5px solid #c58a00;border-radius:10px;background:#fffaf0;color:#3a2f12;font-size:.9rem;line-height:1.55}
.ppn-disclaimer .ppn-disclaimer__title{display:block;margin:0 0 .2rem;font-size:.95rem;color:#7a5400}
.ppn-disclaimer p{margin:0 0 .35rem}
.ppn-disclaimer p:last-child{margin-bottom:0}
.ppn-disclaimer .ppn-disclaimer__links{font-size:.85rem}
.ppn-disclaimer a{color:#7a5400;text-decoration:underline}
