/*
 * Smart Week - tema BOLD (ldo-smart-week-app 2.8.0)
 * Scelto da Tony il 05/10/2026 fra tre direzioni (canvas "Revamping app Smart Week").
 * Crema, bordi neri da 2px, colori pieni, Archivo per i titoli enormi,
 * DM Sans per il testo; l'ombra netta solo sull'azione principale.
 * Si applica sopra lo stile del portale, solo con #ldd-portal-root.swa-bold.
 */
#ldd-portal-root.swa-bold {
  --s: #FF8A5B;   /* corallo: accento */
  --sd:#E2683A;
  --sf:#FFF1E8;
  --g: #15140F;   /* il "verde" del portale diventa inchiostro: pulsanti e link */
  --gd:#000000;
  --gl:#F2EEDF;
  --dk:#15140F;
  --dm:#2A2822;
  --mt:#4A463F;   /* testo secondario: 7:1 su crema */
  --ml:#8C867C;
  --cr:#FFF8EC;
  --cm:#FFF1DC;
  --cd:#F2E6D0;
  --br:#15140F;
  --bl:#15140F;
  --lime:#D9F27A;
  --lilla:#E4D9FF;
  --serif:'Archivo', 'Arial Black', sans-serif;
  --sans:'DM Sans', system-ui, sans-serif;
  background:#FFF8EC !important;
  font-family:'DM Sans', system-ui, sans-serif !important;
  color:#15140F;
}
#ldd-portal-root.swa-bold,
#ldd-portal-root.swa-bold .ldd-screen,
#ldd-portal-root.swa-bold .ldd-tab-content { background:#FFF8EC !important; }
#ldd-portal-root.swa-bold * { font-family:inherit; }

/* testata con la foto e riepilogo: al loro posto la barra Smart Week e i titoli delle schede */
#ldd-portal-root.swa-bold .ldd-portal-hero,
#ldd-portal-root.swa-bold .ldd-portal-summary { display:none !important; }
#ldd-portal-root.swa-bold .ldd-tab-content { padding:0 0 110px !important; }

.swa-topbar { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:14px 16px 0; }
.swa-pill { display:inline-flex; align-items:center; flex:0 0 auto; white-space:nowrap; padding:4px 10px; border:2px solid #15140F; border-radius:999px; background:#FFFFFF; font:800 10.5px 'Archivo', sans-serif; letter-spacing:.06em; text-transform:uppercase; color:#15140F; }
.swa-topbar-cam { font:600 12.5px 'DM Sans', sans-serif; color:#15140F; text-align:right; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
/* 2.8.1 - titoli piu' contenuti (Tony: "i font sono troppo grandi"): le parole non si spezzano a meta' */
.swa-titolo { margin:12px 16px 0; font:900 clamp(26px,8vw,34px)/.95 'Archivo', sans-serif; letter-spacing:-.02em; text-transform:uppercase; color:#15140F; overflow-wrap:normal; word-break:keep-all; hyphens:none; }
.swa-sotto { margin:8px 16px 0; font:400 14px/1.45 'DM Sans', sans-serif; color:#15140F; max-width:340px; }
.swa-giorni { display:flex; gap:4px; margin:12px 18px 0; }
.swa-giorni span { flex:1; height:10px; border:2px solid #15140F; border-radius:6px; background:#FFFFFF; }
.swa-giorni span.on { background:#15140F; }
.swa-bento { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:14px 16px 0; }
.swa-tile { border:2px solid #15140F !important; display:flex; flex-direction:column; align-items:flex-start; gap:4px; min-height:96px; padding:14px; border:2px solid #15140F; border-radius:20px; color:#15140F; text-align:left; font:inherit; cursor:pointer; }
.swa-tile b { font:800 14px 'Archivo', sans-serif; }
.swa-tile span { font-size:12px; line-height:1.35; overflow-wrap:anywhere; }
.swa-tile.lime { background:#D9F27A !important; }
.swa-tile.lilla { background:#E4D9FF !important; }
.swa-cta { border:2px solid #15140F !important; display:flex; align-items:center; justify-content:space-between; gap:10px; width:calc(100% - 32px); min-height:52px; margin:14px 16px 0; padding:0 16px; border:2px solid #15140F; border-radius:18px; background:var(--s) !important; box-shadow:5px 5px 0 #15140F; color:#15140F; font:900 14.5px 'Archivo', sans-serif; text-transform:uppercase; cursor:pointer; text-align:left; }
.swa-cta:active { transform:translate(3px,3px); box-shadow:2px 2px 0 #15140F; }
.swa-cta-nota { margin:8px 16px 0; font-size:12px; color:#4A463F; text-align:center; }

/* barra delle schede: pillola bianca in basso, la scheda attiva nera con l'etichetta */
#ldd-portal-root.swa-bold .ldd-tabs { left:12px !important; right:12px !important; bottom:calc(14px + env(safe-area-inset-bottom,0px)) !important; padding:6px !important; background:#FFFFFF !important; border:2px solid #15140F !important; border-radius:999px !important; box-shadow:none !important; max-width:560px; gap:2px; }
#ldd-portal-root.swa-bold .ldd-tab { background:transparent !important; flex:0 0 auto !important; min-width:44px !important; height:44px; padding:0 10px !important; flex-direction:row !important; gap:6px !important; border:0 !important; border-radius:999px; color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-tabs { justify-content:space-between; }
#ldd-portal-root.swa-bold .ldd-tab .ldd-tab-label { display:none; }
#ldd-portal-root.swa-bold .ldd-tab.ldd-tab-active { background:#15140F !important; color:#FFF8EC !important; padding:0 14px !important; }
#ldd-portal-root.swa-bold .ldd-tab.ldd-tab-active .ldd-tab-label { display:inline; font:700 12px 'DM Sans', sans-serif !important; letter-spacing:0 !important; text-transform:none !important; max-width:none !important; }
#ldd-portal-root.swa-bold .ldd-tab-icon { display:flex; font-size:0; opacity:1 !important; }
#ldd-portal-root.swa-bold .ldd-tab-dot { top:6px; right:6px; background:var(--s); border:1.5px solid #15140F; width:8px; height:8px; }

/* riquadri e pulsanti del portale */
#ldd-portal-root.swa-bold .ldd-card { background:#FFFFFF !important; border:2px solid #15140F !important; border-radius:20px !important; box-shadow:none !important; }
#ldd-portal-root.swa-bold .ldd-card-accent-sand,
#ldd-portal-root.swa-bold .ldd-card-accent-green { border-left-width:2px !important; }
#ldd-portal-root.swa-bold .ldd-btn { background:#15140F !important; color:#FFF8EC !important; border:2px solid #15140F !important; border-radius:16px !important; box-shadow:none !important; font:700 14px 'DM Sans', sans-serif !important; }
#ldd-portal-root.swa-bold .ldd-btn:hover { background:#000000 !important; }
#ldd-portal-root.swa-bold .ldd-btn-ghost { background:#FFFFFF !important; color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-input,
#ldd-portal-root.swa-bold .ldd-select,
#ldd-portal-root.swa-bold select,
#ldd-portal-root.swa-bold textarea { border:2px solid #15140F !important; border-radius:14px !important; background:#FFFFFF !important; color:#15140F !important; }
#ldd-portal-root.swa-bold h1, #ldd-portal-root.swa-bold h2, #ldd-portal-root.swa-bold h3,
#ldd-portal-root.swa-bold .ldd-step-title, #ldd-portal-root.swa-bold .ldd-ctx-title { font-family:'Archivo', sans-serif !important; font-weight:800 !important; letter-spacing:-.01em; }

/* il riquadro scuro della home (codice, Wi-Fi, guida) diventa bianco con il codice enorme */
#ldd-portal-root.swa-bold .ldd-home-ctx { background:#FFFFFF !important; border:2px solid #15140F !important; border-radius:20px !important; color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-home-ctx::before { display:none !important; }
#ldd-portal-root.swa-bold .ldd-ctx-title { color:#15140F !important; font-size:20px !important; }
#ldd-portal-root.swa-bold .ldd-ctx-sub { color:#4A463F !important; }
#ldd-portal-root.swa-bold .ldd-ctx-badge { border:2px solid #15140F; color:#15140F !important; background:var(--lime) !important; font-weight:800; }
#ldd-portal-root.swa-bold .ldd-ctx-badge-orange { background:#FFE3A3 !important; }
#ldd-portal-root.swa-bold .ldd-pin-block,
#ldd-portal-root.swa-bold .ldd-wifi-row,
#ldd-portal-root.swa-bold .ldd-access-pin-hero { background:#FFF8EC !important; border:2px solid #15140F !important; border-radius:16px !important; }
#ldd-portal-root.swa-bold .ldd-pin-digits,
#ldd-portal-root.swa-bold .ldd-access-pin-big,
#ldd-portal-root.swa-bold .ldd-pin-big { font:900 clamp(24px,7.4vw,34px)/1 'Archivo', sans-serif !important; letter-spacing:.03em !important; color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-pin-copy { background:var(--lime) !important; border:2px solid #15140F !important; color:#15140F !important; font-weight:800 !important; min-height:36px; }
#ldd-portal-root.swa-bold .ldd-wifi-ssid { color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-wifi-pass { color:#4A463F !important; }
#ldd-portal-root.swa-bold .ldd-ctx-stay-bar { background:#F2E6D0 !important; }
#ldd-portal-root.swa-bold .ldd-ctx-stay-fill { background:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-step-row { border:2px solid #15140F !important; box-shadow:none !important; }
#ldd-portal-root.swa-bold .ldd-step-num { background:var(--s) !important; border:2px solid #15140F; }
#ldd-portal-root.swa-bold .ldd-home-ctx a,
#ldd-portal-root.swa-bold .ldd-home-ctx button:not(.ldd-pin-copy) { color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-home-ctx [style*="color:rgba(250"],
#ldd-portal-root.swa-bold .ldd-home-ctx [style*="color: rgba(250"],
#ldd-portal-root.swa-bold .ldd-home-ctx [style*="var(--cr)"] { color:#15140F !important; }

/* la casa */
.swa-coinq { display:flex; flex-wrap:wrap; gap:8px; margin:12px 18px 0; }
.swa-coinq-p { display:inline-flex; align-items:center; gap:6px; padding:4px 10px 4px 4px; font-size:12.5px; border:2px solid #15140F; border-radius:999px; background:#FFFFFF; }
.swa-coinq-i { width:28px; height:28px; border-radius:50%; border:2px solid #15140F; display:flex; align-items:center; justify-content:center; font:800 10px 'Archivo', sans-serif; }
.swa-coinq-p b { font:700 12.5px 'DM Sans', sans-serif; }
.swa-coinq-p small { font-size:11.5px; color:#4A463F; }
.swa-fisso { position:relative; margin:16px 16px 0; padding:12px 12px 10px; border:2px solid #15140F; border-radius:16px; background:var(--s); font-size:13px; line-height:1.4; }
.swa-fisso-tag { position:absolute; top:-12px; left:14px; transform:rotate(-2deg); padding:2px 8px; background:#15140F; color:#FFF8EC; border-radius:6px; font:800 10.5px 'Archivo', sans-serif; text-transform:uppercase; }
.swa-chat { display:flex; flex-direction:column; gap:8px; margin:14px 16px 0; }
.swa-giorno { align-self:center; margin:6px 0 2px; font:800 10.5px 'Archivo', sans-serif; text-transform:uppercase; letter-spacing:.08em; }
.swa-bub { max-width:80%; padding:8px 11px; border:2px solid #15140F; font-size:13px; line-height:1.4; overflow-wrap:anywhere; white-space:pre-line; }
.swa-bub.loro { align-self:flex-start; border-radius:16px 16px 16px 4px; background:#FFFFFF; }
.swa-bub.loro.alt { background:#E4D9FF; }
.swa-bub.ldo { background:#F2EEDF; }
.swa-bub.mio { align-self:flex-end; border-radius:16px 16px 4px 16px; background:#D9F27A; }
.swa-bub-chi { display:block; font:800 11.5px 'Archivo', sans-serif; text-transform:uppercase; margin-bottom:1px; }
.swa-bub-ora { display:block; text-align:right; font-size:10.5px; color:#4A463F; margin-top:2px; }
.swa-canc { align-self:flex-end; margin:-4px 2px 2px; background:none; border:0; padding:4px 0; font-size:11px; color:#4A463F; text-decoration:underline; cursor:pointer; }
.swa-scrivi { position:fixed; left:12px; right:12px; bottom:calc(76px + env(safe-area-inset-bottom,0px)); max-width:560px; margin:0 auto; display:flex; gap:8px; padding:8px 4px; background:#FFF8EC; z-index:89; }
#ldd-panel-casa { padding-bottom:96px; }
.swa-scrivi textarea { flex:1; min-height:46px; max-height:110px; box-sizing:border-box; padding:11px 14px; border:2px solid #15140F; border-radius:16px; background:#FFFFFF; font:400 14px/1.35 'DM Sans', sans-serif; color:#15140F; resize:none; }
.swa-invia { flex:0 0 46px; height:46px; border:2px solid #15140F !important; border-radius:16px; background:#15140F !important; color:#FFF8EC; box-shadow:3px 3px 0 var(--s); display:flex; align-items:center; justify-content:center; cursor:pointer; }
.swa-quadro { width:44px; height:44px; border:2px solid #15140F !important; border-radius:14px; background:#FFFFFF !important; color:#15140F; display:flex; align-items:center; justify-content:center; cursor:pointer; flex:0 0 auto; }
.swa-vuoto { text-align:center; font-size:13px; color:#4A463F; margin:12px 0; }

/* schermata di accesso */
#ldd-portal-root.swa-bold .ldd-login-card { background:#FFFFFF !important; border:2px solid #15140F !important; border-radius:22px !important; box-shadow:none !important; }
#ldd-portal-root.swa-bold .ldd-login-input { border:2px solid #15140F !important; border-radius:14px !important; background:#FFFFFF !important; }
#ldd-portal-root.swa-bold .ldd-login-btn { background:var(--s) !important; color:#15140F !important; border:2px solid #15140F !important; border-radius:16px !important; box-shadow:5px 5px 0 #15140F !important; font:900 16px 'Archivo', sans-serif !important; text-transform:uppercase; }
#ldd-portal-root.swa-bold .ldd-login-btn:active { transform:translate(3px,3px); box-shadow:2px 2px 0 #15140F !important; }

#ldd-portal-root.swa-bold .ldd-login-bg,
#ldd-portal-root.swa-bold .ldd-login-bg-overlay { background:#FFF8EC !important; background-image:none !important; }
#ldd-portal-root.swa-bold #ldd-screen-login,
#ldd-portal-root.swa-bold .ldd-login-content { background:#FFF8EC !important; color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-login-eyebrow { display:inline-block; padding:6px 12px; border:2px solid #15140F; border-radius:999px; background:#FFFFFF; color:#15140F !important; font:800 12px 'Archivo', sans-serif !important; letter-spacing:.06em !important; }
#ldd-portal-root.swa-bold .ldd-login-headline { font:900 clamp(40px,12vw,56px)/.92 'Archivo', sans-serif !important; letter-spacing:-.03em !important; text-transform:uppercase; color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-login-divider { background:#15140F !important; height:3px !important; width:56px !important; }
#ldd-portal-root.swa-bold .ldd-login-desc-block,
#ldd-portal-root.swa-bold .ldd-login-desc-block * { color:#15140F !important; }
#ldd-portal-root.swa-bold .ldd-lang-cta,
#ldd-portal-root.swa-bold .ldd-lang-cta select { background:#FFFFFF !important; border:2px solid #15140F !important; color:#15140F !important; border-radius:14px !important; }

/* 2.8.1 - dimensioni generali piu' contenute */
#ldd-portal-root.swa-bold .ldd-card { padding:16px !important; }
#ldd-portal-root.swa-bold .ldd-ctx-title { font-size:18px !important; }
#ldd-portal-root.swa-bold .ldd-login-headline { font-size:clamp(28px,8.5vw,38px) !important; }
#ldd-portal-root.swa-bold .ldd-poi-tab { font-size:13px !important; }
#ldd-portal-root.swa-bold .ldd-poi-item, #ldd-portal-root.swa-bold .ldd-poi-item * { font-size:inherit; }
#ldd-portal-root.swa-bold .ldd-poi-item { font-size:13px !important; }
#ldd-portal-root.swa-bold .ldd-tab.ldd-tab-active .ldd-tab-label { font-size:11.5px !important; }
