/* Presentazione dei piani nella dashboard host autenticata del master. */
.seller-plan-surface {
  --publish-navy: #102044;
  --publish-teal: #008d9e;
  --publish-gold: #b47b18;
  --publish-line: #dbe2ec;
  background: #fff;
}
.seller-plan-surface main { width: 100%; max-width: none; padding: 0 0 72px; }
.seller-plan-surface .publish-landing-container { width: min(1115px, calc(100% - 42px)); margin-inline: auto; }
.seller-plan-surface .topbar { background: rgba(255,255,255,.97); border-bottom: 1px solid #e8edf2; box-shadow: 0 1px 9px #10204412; }
.seller-plan-surface .topbar,
.seller-plan-surface .header-actions,
.seller-plan-surface .nav { flex-wrap: nowrap; }
.seller-plan-surface .brand { font: 700 clamp(19px,2vw,25px)/1.2 Georgia,'Times New Roman',serif; white-space: nowrap; }
.seller-plan-surface .header-actions { gap: 24px; }
.seller-plan-surface .nav { gap: 24px; }
.seller-plan-surface .nav a { color: var(--publish-navy); font: 600 13px/1.3 Arial,sans-serif; white-space: nowrap; }
.seller-plan-surface .language-field { min-width: 96px; }
.seller-plan-surface .language-field label { font-size: 10px; }
.seller-plan-surface .language-field select { min-height: 30px; padding: 4px 7px; font-size: 12px; }
.seller-plan-surface .tourist-controls { display: none; }
.seller-plan-surface .brand { color: var(--publish-navy); }
.seller-plan-surface .brand-mark { display: grid; place-items: center; width: 49px; min-width: 49px; height: 43px; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
.seller-plan-surface .brand-mark svg { display: block; width: 49px; height: 43px; }
.seller-plan-surface .header-cta { border: 1px solid var(--publish-line); background: #fff; color: var(--publish-teal); box-shadow: none; }
.seller-plan-surface .header-cta:hover { background: #e8f8fb; color: var(--publish-navy); }

.seller-plan-surface .publish-hero {
  max-width: none; min-height: 380px; padding: 34px 0 28px; border-radius: 0; box-shadow: none; text-align: center;
  background: linear-gradient(90deg,#f8e8d3a6,#d1eaf87a 35%,#c2e8f78c 66%,#e8e1d4aa), url('/assets/publish-hero-costiera.jpg') center 53% / cover no-repeat;
}
.seller-plan-surface .publish-hero::before { content: none; }
.seller-plan-surface .publish-hero .eyebrow { margin: 0 0 5px; color: var(--publish-gold); font: 700 11px/1.3 Arial,sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.seller-plan-surface .publish-hero h1 { max-width: 800px; margin: 0 auto 7px; color: var(--publish-navy); font: 700 clamp(35px,4vw,51px)/1.02 Georgia,'Times New Roman',serif; letter-spacing: -1.2px; }
.seller-plan-surface .publish-hero-subtitle { max-width: 750px; margin: 0 auto 17px; color: var(--publish-navy); font: 20px/1.3 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 23px; width: min(810px,100%); margin: auto; text-align: left; }
.seller-plan-surface .publish-choice-card { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 60px; gap: 8px; min-height: 192px; padding: 20px 28px 16px; border: 1px solid #d4dfea; border-radius: 14px; background: #fffffff2; box-shadow: 0 8px 22px #1a274017; }
.seller-plan-surface .publish-choice-card-paid { border: 1.5px solid var(--publish-gold); background: #fffefaee; }
.seller-plan-surface .publish-eyebrow { color: #3b4b65; font: 700 12px/1.2 Arial,sans-serif; letter-spacing: 3px; }
.seller-plan-surface .publish-choice-card-paid .publish-eyebrow { color: var(--publish-gold); }
.seller-plan-surface .publish-choice-card h2 { margin: 10px 0 2px; color: var(--publish-navy); font: 700 32px/1 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-choice-card h2 small { font-size: 18px; }
.seller-plan-surface .publish-choice-card p { max-width: 245px; margin: 0; color: #273b61; font: 17px/1.17 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-choice-icon { width: 58px; height: 58px; color: #a6b5c9; }
.seller-plan-surface .publish-choice-card-paid .publish-choice-icon { color: var(--publish-gold); }
.seller-plan-surface .publish-choice-button { grid-column: 1/-1; display: inline-flex; justify-content: center; align-items: center; min-height: 40px; padding: 9px 14px; border: 1.5px solid var(--publish-teal); border-radius: 8px; background: #fff; color: var(--publish-teal); font: 700 14px/1.2 Arial,sans-serif; text-decoration: none; cursor: pointer; }
.seller-plan-surface .publish-choice-button-primary { background: var(--publish-teal); color: #fff; }
.seller-plan-surface .publish-choice-button:hover { filter: brightness(.94); }

.seller-plan-surface .publish-plans { padding-block: 32px 19px; text-align: center; scroll-margin-top: 86px; }
.seller-plan-surface .publish-section-kicker { margin: 0; color: var(--publish-gold); font: 700 12px/1.3 Arial,sans-serif; letter-spacing: 2px; }
.seller-plan-surface .publish-plans h2,
.seller-plan-surface .publish-seo-pro h2 { margin: 9px 0 5px; color: var(--publish-navy); font: 700 clamp(27px,3vw,32px)/1.15 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-section-subtitle { margin: 0 0 20px; color: #5e6980; font: 16px/1.4 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-plan-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; text-align: left; }
.seller-plan-surface .publish-plan-card { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 21px 24px 19px; border: 1px solid var(--publish-line); border-radius: 8px; background: #fff; }
.seller-plan-surface .publish-plan-card-featured { border: 2px solid var(--publish-teal); background: linear-gradient(135deg,#f1fcff,#e7f8fb); padding: 20px 23px 18px; }
.seller-plan-surface .publish-plan-label { color: var(--publish-teal); font: 700 12px/1.2 Arial,sans-serif; letter-spacing: 2px; }
.seller-plan-surface .publish-plan-card h3 { margin: 10px 0 4px; color: var(--publish-navy); font: 700 30px/1 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-plan-card h3 small { font-size: 18px; }
.seller-plan-surface .publish-plan-card > p { margin: 0 0 12px; color: #4d5a71; font: 14px/1.4 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-plan-includes { display: block; margin: 1px 0 5px; color: var(--publish-teal); font: 700 11px/1.35 Arial,sans-serif; letter-spacing: .04em; }
.seller-plan-surface .publish-plan-card ul { flex: 1; margin: 0 0 16px; padding: 11px 0 0; border-top: 1px solid var(--publish-line); list-style: none; }
.seller-plan-surface .publish-plan-card li { position: relative; margin: 8px 0; padding-left: 26px; color: #43516c; font: 13px/1.4 Arial,sans-serif; }
.seller-plan-surface .publish-plan-card li::before { content: '✓'; position: absolute; left: 1px; color: var(--publish-teal); font-size: 17px; font-weight: 700; }
.seller-plan-surface .publish-plan-card button,
.seller-plan-surface .publish-seo-price button { width: 100%; min-height: 38px; padding: 8px 11px; border: 1px solid var(--publish-teal); border-radius: 7px; background: #fff; color: var(--publish-teal); font: 700 12px/1.3 Arial,sans-serif; cursor: pointer; }
.seller-plan-surface .publish-plan-card button:hover,
.seller-plan-surface .publish-seo-price button:hover { background: #e8f8fb; }
.seller-plan-surface .publish-plan-card.is-selected { box-shadow: 0 0 0 3px #008d9e35; }
.seller-plan-surface .publish-plan-ribbon { position: absolute; top: 0; right: 0; padding: 7px 12px; border-radius: 0 0 0 8px; background: #d39b2f; color: #fff; font: 700 11px/1.2 Arial,sans-serif; }
.seller-plan-surface .publish-plan-disclaimer { max-width: 850px; margin: 15px auto 0; color: #5e6980; font: 12px/1.5 Arial,sans-serif; }

.seller-plan-surface .publish-seo-pro { display: grid; grid-template-columns: minmax(0,1fr) 245px; align-items: center; gap: 24px; margin-block: 14px 28px; padding: 22px 28px; border: 1px solid var(--publish-line); border-radius: 10px; background: #f9fbfc; }
.seller-plan-surface .publish-seo-pro h2 { margin-bottom: 6px; }
.seller-plan-surface .publish-seo-pro p:last-child { margin: 0; color: #43516c; font: 14px/1.5 Arial,sans-serif; }
.seller-plan-surface .publish-seo-price strong { display: block; margin-bottom: 10px; color: var(--publish-navy); font: 700 17px/1.35 Georgia,'Times New Roman',serif; text-align: center; }
.seller-plan-surface .publish-visibility { background: #e8f8fb; }
.seller-plan-surface .publish-visibility-inner { display: grid; grid-template-columns: 66px minmax(0,1fr) auto; align-items: center; gap: 24px; min-height: 95px; padding-block: 16px; }
.seller-plan-surface .publish-search-icon { display: grid; place-items: center; width: 66px; height: 66px; border-radius: 50%; background: #f8feff; color: var(--publish-navy); font: 44px/1 Georgia,serif; }
.seller-plan-surface .publish-visibility h2 { margin: 0 0 3px; color: var(--publish-navy); font: 700 24px/1.2 Georgia,'Times New Roman',serif; }
.seller-plan-surface .publish-visibility p { margin: 0; color: #44556d; font: 14px/1.4 Arial,sans-serif; }
.seller-plan-surface .publish-visibility a { color: var(--publish-teal); font: 700 13px/1.3 Arial,sans-serif; text-decoration: underline; white-space: nowrap; }
.seller-plan-surface .publish-journey { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; padding-block: 22px 30px; list-style: none; }
.seller-plan-surface .publish-journey li { display: flex; align-items: flex-start; gap: 12px; font: 13px/1.35 Arial,sans-serif; }
.seller-plan-surface .publish-journey li > span { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; border: 1px solid var(--publish-line); border-radius: 50%; color: var(--publish-navy); font-weight: 700; }
.seller-plan-surface .publish-journey li:first-child > span { background: var(--publish-teal); border-color: var(--publish-teal); color: #fff; }
.seller-plan-surface .publish-journey strong { display: block; margin: 3px 0 4px; color: var(--publish-navy); }
.seller-plan-surface .publish-journey p { margin: 0; color: #62708b; font-size: 12px; }
.seller-plan-surface .owner-publish-section { padding-inline: 21px; scroll-margin-top: 85px; }
.seller-plan-surface .publish-selected-plan { margin: 0 0 14px; color: var(--publish-navy); font: 600 13px/1.45 Arial,sans-serif; }
.seller-plan-surface .publish-selected-plan:empty { display: none; }

@media (max-width: 900px) {
  .seller-plan-surface .header-actions { gap: 10px; }
  .seller-plan-surface .nav { gap: 12px; }
  .seller-plan-surface .publish-plan-card { padding-inline: 17px; }
  .seller-plan-surface .publish-plan-card-featured { padding-inline: 16px; }
  .seller-plan-surface .publish-visibility-inner { grid-template-columns: 50px minmax(0,1fr); }
  .seller-plan-surface .publish-search-icon { width: 50px; height: 50px; }
  .seller-plan-surface .publish-visibility a { grid-column: 2; }
}
@media (max-width: 700px) {
  .seller-plan-surface .topbar { flex-direction: row; align-items: center; gap: 8px; min-height: 61px; padding: 7px 16px; }
  .seller-plan-surface .brand { min-height: 0; padding-right: 0; font-size: clamp(17px,5vw,22px); }
  .seller-plan-surface .header-actions { width: auto; margin-left: auto; }
  .seller-plan-surface .header-cta { display: none; }
  .seller-plan-surface .nav-toggle { position: static; width: 44px; height: 44px; }
  .seller-plan-surface .header-actions > .nav { position: absolute; top: 100%; left: 0; right: 0; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 12px 20px 20px; background: #fff; border-bottom: 1px solid var(--publish-line); }
  .seller-plan-surface .header-actions > .nav.is-open { display: flex; }
  .seller-plan-surface .nav a { padding: 10px 0; }
  .seller-plan-surface .language-field { margin-top: 8px; }
  .seller-plan-surface .publish-choice-grid { grid-template-columns: 1fr; gap: 12px; max-width: 410px; }
  .seller-plan-surface .publish-choice-card { min-height: 0; padding: 19px 21px; }
  .seller-plan-surface .publish-plan-grid { grid-template-columns: 1fr; max-width: 450px; margin: auto; }
  .seller-plan-surface .publish-seo-pro { grid-template-columns: 1fr; }
  .seller-plan-surface .publish-seo-price { max-width: 240px; }
  .seller-plan-surface .publish-journey { grid-template-columns: 1fr; max-width: 450px; }
}
@media (max-width: 640px) {
  .seller-plan-surface .publish-hero { min-height: 0; padding: 28px 0 24px; border-radius: 0; background-position: 61% center; }
  .seller-plan-surface .publish-hero h1 { font-size: clamp(31px,8vw,38px); }
  .seller-plan-surface .publish-hero-subtitle { font-size: 16px; }
  .seller-plan-surface .publish-choice-card h2 { font-size: 28px; }
  .seller-plan-surface .publish-choice-card p { font-size: 15px; }
  .seller-plan-surface .publish-choice-icon { width: 44px; height: 44px; }
  .seller-plan-surface .publish-visibility-inner { gap: 12px; }
  .seller-plan-surface .publish-visibility h2 { font-size: 20px; }
  .seller-plan-surface .owner-publish-section { padding-inline: 12px; }
}
@media (prefers-reduced-motion: no-preference) {
  .seller-plan-surface .publish-choice-card,
  .seller-plan-surface .publish-plan-card { transition: transform .15s, box-shadow .15s; }
  .seller-plan-surface .publish-choice-card:hover,
  .seller-plan-surface .publish-plan-card:hover { transform: translateY(-2px); box-shadow: 0 10px 24px #1a274014; }
}

.seller-plan-surface { --publish-navy:#102044; --publish-teal:#008d9e; --publish-gold:#b47b18; --publish-line:#dbe2ec; margin:24px 0; overflow:hidden; border-radius:12px; background:#fff; }
.seller-plan-status { padding:18px 24px; background:#e8f8fb; color:#102044; }
.seller-plan-status strong,.seller-plan-status span { display:inline-block; margin-right:22px; }
.seller-plan-status p { margin:8px 0 0; }
.seller-plan-surface .plan-select-form { display:block; width:100%; grid-column:1/-1; margin-top:auto; }
.seller-plan-surface .plan-select-form .publish-choice-button { width:100%; }
