/* Il Girasole APS — stile sito */
:root{
  --sun:#F6B400; --sun-dark:#E0A300; --sunlight:#FFF1BF; --sunpale:#FFF8E1;
  --teal:#0E5E6F; --teal-dark:#0A4653; --teallight:#E6F2F4;
  --ink:#1E1B14; --ink-soft:#4A4537; --muted:#9B9480; --line:#E7E1D0;
  --ground:#FFFDF7; --white:#fff;
  --r-card:28px; --r-pill:999px;
  --font-head:Fredoka,system-ui,sans-serif; --font-body:Nunito,system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font-body);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--teal);text-decoration:none}a:hover{color:var(--teal-dark)}
h1,h2,h3{font-family:var(--font-head);margin:0;color:var(--ink);line-height:1.1;font-weight:700}
h2{font-size:clamp(30px,4vw,42px)}h3{font-size:26px}
.h-sm{font-size:22px}.h-xs{font-size:19px}
p{margin:0;color:var(--ink-soft)}
.lead{font-size:19px;max-width:560px}.lead-sm{font-size:17px;max-width:600px}
.small{font-size:15px}.muted{color:var(--muted)}
.claim{font-size:17px;font-weight:700;color:var(--ink)}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.wrap.narrow{max-width:760px}
.stack{display:flex;flex-direction:column;gap:16px}
.center{text-align:center;align-items:center}
.center-v{align-items:center}
.self-start{align-self:flex-start}
.eyebrow{font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.eyebrow-sun{color:var(--sun)}

/* Pillole, chip, bottoni */
.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:var(--r-pill);font-weight:700;font-size:15px;line-height:1;align-self:flex-start}
.pill-white{background:var(--white);color:var(--teal)}
.pill-sun{background:var(--sun);color:var(--ink)}
.pill-teal{background:var(--teal);color:var(--white)}
.pill-sunlight{background:var(--sunlight);color:var(--ink)}
.pill-teallight{background:var(--teallight);color:var(--teal)}
.chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--r-pill);background:var(--white);border:1.5px solid var(--line);font-weight:700;font-size:14px;color:var(--ink)}
.chip-sm{padding:6px 12px;font-size:13px}
.chip-glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);color:#fff}
.chip-row{display:flex;gap:10px;flex-wrap:wrap}.chip-row-sm{gap:6px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border-radius:var(--r-pill);font-family:var(--font-head);font-weight:600;font-size:17px;border:0;cursor:pointer;transition:background .15s,transform .15s}
.btn:active{transform:translateY(1px)}
.btn-sm{min-height:44px;font-size:15px;padding:0 20px}
.btn-sun{background:var(--sun);color:var(--ink)}.btn-sun:hover{background:var(--sun-dark);color:var(--ink)}
.btn-teal{background:var(--teal);color:#fff}.btn-teal:hover{background:var(--teal-dark);color:#fff}
.btn-ghost{background:transparent;color:var(--teal);border:2px solid var(--teal)}.btn-ghost:hover{background:var(--teallight);color:var(--teal-dark)}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}

/* Top bar + header */
.topbar{background:var(--teal);color:#fff;font-size:13px;font-weight:600}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;min-height:36px}
.header{position:sticky;top:0;z-index:50;background:rgba(255,253,247,.96);backdrop-filter:blur(8px);border-bottom:1px solid #F0EADA}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{width:46px;height:46px;border-radius:50%;background:var(--sun);color:var(--ink);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:none}
.brand-mark img{width:100%;height:100%;object-fit:cover}
.brand-name{font-family:var(--font-head);font-weight:700;font-size:26px;color:var(--ink);line-height:1}
.nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.nav a{font-weight:700;font-size:14px;color:var(--ink);padding:10px 11px;border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:6px}
.nav a:hover{background:var(--sunlight);color:var(--ink)}
.nav a.nav-admin{background:var(--sun);color:var(--ink)}
.nav a.nav-admin:hover{background:var(--sun-dark)}
.nav-mobile-only{display:none}
.header-right{display:flex;align-items:center;gap:8px}
.icon-btn{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--teal);border:2px solid var(--teal);background:transparent}
.icon-btn:hover{background:var(--teallight)}
.user-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--r-pill);background:var(--teallight);color:var(--teal);font-weight:700;font-size:14px}
.nav-toggle{display:none;width:44px;height:44px;border:0;background:transparent;color:var(--ink);border-radius:50%;cursor:pointer}

/* Hero */
.hero{position:relative;background:var(--sunlight)}
.hero-inner{display:flex;align-items:center;gap:48px;padding-top:72px;padding-bottom:88px;flex-wrap:wrap}
.hero-text{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:24px}
.hero-title{font-size:clamp(40px,5.5vw,64px);line-height:1.02}
.hero-photos{flex:1 1 440px;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.wave{display:block;width:100%;height:60px}

/* Foto segnaposto / immagini */
.photo{background:var(--teallight) center/cover no-repeat;color:var(--teal);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;letter-spacing:.04em;text-transform:uppercase;text-align:center;padding:8px}
.photo.has-img{color:transparent}
.ph-sunlight{background-color:var(--sunlight);color:#8A6400}
.ph-sun{background-color:var(--sun);color:var(--ink)}
.ph-teal{background-color:var(--teal);color:#fff}
.ph-big{height:300px;border-radius:40px 40px 40px 120px;grid-row:span 2}
.ph-round{height:142px;border-radius:var(--r-pill)}
.ph-leaf{height:142px;border-radius:40px 120px 40px 40px}
.ph-card{height:220px}
.ph-serv{height:150px}
.ph-campus{height:320px;border-radius:120px 40px 120px 40px;background-color:#fff}

/* Sezioni e card */
.section{padding:80px 0}
.section-white{background:var(--white)}
.section-teal{background:var(--teal);color:#fff}
.section-teal h2{color:#fff}.section-teal p{color:#D6E8EC}
.section-sunlight{background:var(--sunlight)}
.section-head{display:flex;flex-direction:column;gap:12px;margin-bottom:40px}
.section-head.center{align-items:center;text-align:center}
.section-head.split{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.card{background:var(--white);border-radius:var(--r-card);box-shadow:0 6px 24px rgba(30,27,20,.06);overflow:hidden;display:flex;flex-direction:column}
.card-body{padding:28px 32px 32px;display:flex;flex-direction:column;gap:12px}
.card-body-sm{padding:20px 22px;gap:10px}
.card-pad{padding:28px;gap:14px}
.card-xl{padding:36px;gap:16px;border-radius:40px}
.card-sunlight{background:var(--sunpale)}
.card-teallight{background:var(--teallight)}
.card-teal{background:var(--teal)}
.card-teal h3{color:#fff}
.card-cta{justify-content:center;align-items:center;text-align:center;padding:28px;gap:14px}
.card-dark{background:#2A2619;padding:28px;gap:12px}
.card-dark h3{color:#fff;font-size:22px}
.icon-circle{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.ic-sun{background:var(--sunlight);color:var(--ink)}.ic-teal{background:var(--teallight);color:var(--teal)}

/* Form */
.form{display:flex;flex-direction:column;gap:10px}
.form label{font-size:13px;font-weight:700;color:var(--ink-soft)}
.card-dark .form label{color:#C9C3B4}
.form input,.form textarea,.form select{min-height:46px;border-radius:24px;border:1.5px solid var(--line);padding:10px 18px;font-family:var(--font-body);font-size:15px;background:#fff;color:var(--ink);width:100%}
.form textarea{resize:vertical}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--sun);border-color:var(--sun)}
.form-msg{font-size:14px;min-height:1em;color:#C9C3B4}
.form-msg.ok{color:#9AD9A5}.form-msg.err{color:#F4A6A6}
.alert{padding:12px 16px;border-radius:16px;font-size:14px;font-weight:600}
.alert-err{background:#FDE8E8;color:#9B1C1C}.alert-ok{background:#E3F6E7;color:#1E6B34}

/* Footer */
.footer{background:var(--ink);color:#fff;padding:72px 0 32px}
.footer-grid{margin-bottom:48px}
.footer-brand{font-family:var(--font-head);font-weight:700;font-size:28px}
.footer p.muted,.footer .muted{color:#C9C3B4}
.footer-link{color:#fff;font-weight:700}.footer-link.big{font-size:18px}
.footer-bottom{border-top:1px solid #3A3526;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted)}
.footer-links{display:flex;gap:18px}.footer-links a{color:var(--muted)}

/* Login */
.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--sunlight);padding:20px}
.login-box{background:#fff;border-radius:32px;padding:40px;width:100%;max-width:400px;box-shadow:0 10px 40px rgba(30,27,20,.1);display:flex;flex-direction:column;gap:16px}

/* Admin */
.admin-main{padding:40px 0 80px}
.admin-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.admin-grid{display:grid;grid-template-columns:420px minmax(0,1fr);gap:32px;align-items:start}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.form-grid .full{grid-column:1/-1}
.form-grid label{display:block;margin-bottom:4px}
.table-wrap{overflow-x:auto;background:#fff;border-radius:var(--r-card);box-shadow:0 6px 24px rgba(30,27,20,.06)}
table.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th,.tbl td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:#FAF7EE}
.tbl tr:last-child td{border-bottom:0}
.tag{display:inline-block;padding:4px 10px;border-radius:var(--r-pill);font-size:12px;font-weight:800}
.tag-opzione{background:var(--sunlight);color:#8A6400}
.tag-confermata{background:#E3F6E7;color:#1E6B34}
.tag-annullata{background:#F1EEE6;color:var(--muted)}
.tabs{display:flex;gap:6px;margin-bottom:20px;flex-wrap:wrap}
.tabs a{padding:10px 18px;border-radius:var(--r-pill);font-weight:700;font-size:15px;color:var(--ink);background:#fff;border:1.5px solid var(--line)}
.tabs a.active{background:var(--teal);color:#fff;border-color:var(--teal)}
.inline-form{display:inline}
.link-btn{background:none;border:0;color:var(--teal);font-weight:700;cursor:pointer;font-family:inherit;font-size:14px;padding:0}
.link-btn.danger{color:#9B1C1C}

/* Responsive */
@media (max-width:1000px){
  .admin-grid{grid-template-columns:1fr}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .wrap{padding:0 16px}
  .section{padding:56px 0}
  .grid2,.grid3,.grid4{grid-template-columns:1fr}
  .hero-inner{padding-top:40px;padding-bottom:56px}
  .hero-photos{grid-template-columns:1fr 1fr}
  .ph-big{grid-column:1/-1;grid-row:auto;height:220px;border-radius:32px 32px 32px 90px}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--ground);border-bottom:1px solid #F0EADA;flex-direction:column;align-items:stretch;padding:12px 16px 20px;gap:4px;box-shadow:0 12px 24px rgba(30,27,20,.08)}
  .nav.open{display:flex}
  .nav a{padding:14px 16px}
  .nav-mobile-only{display:block;border-top:1px solid var(--line);margin-top:8px;padding-top:8px}
  .header-right .user-pill{display:none}
  .topbar .wrap{justify-content:center;text-align:center;font-size:12px}
  .form-grid{grid-template-columns:1fr}
}

/* Modulo prenotazione festa */
.admin-grid-wide{grid-template-columns:minmax(0,1fr) 340px}
.modulo{background:#fff;border-radius:var(--r-card);box-shadow:0 6px 24px rgba(30,27,20,.06);padding:28px;display:flex;flex-direction:column;gap:14px}
.modulo label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700;color:var(--ink-soft)}
.modulo label.grow{flex:1 1 200px}
.modulo input,.modulo select,.modulo textarea{min-height:42px;border-radius:14px;border:1.5px solid var(--line);padding:8px 12px;font-family:var(--font-body);font-size:15px;color:var(--ink);background:#fff;width:100%}
.modulo input:focus,.modulo select:focus,.modulo textarea:focus{outline:2px solid var(--sun);border-color:var(--sun)}
.modulo input:disabled{background:#F6F3EA;color:var(--muted)}
.mod-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;border-bottom:2px solid var(--sun);padding-bottom:14px}
.mod-title{font-family:var(--font-head);font-size:32px;font-weight:700;line-height:1}
.mod-head-fields{display:flex;gap:12px;flex-wrap:wrap}
.mod-row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.mod-tbl{width:100%;border-collapse:collapse}
.mod-tbl th{text-align:left;font-weight:700;font-size:15px;padding:8px 8px 8px 0;border-bottom:1px solid var(--line);width:36%}
.mod-tbl th small{font-weight:600;color:var(--muted);font-size:12px}
.mod-tbl td{padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
.mod-tbl td.extra{width:34%}
.mod-tbl td.extra label{flex-direction:row;align-items:center;gap:8px;white-space:nowrap}
.mod-tbl td.extra.torta{display:flex;gap:12px;align-items:center}
.mod-tbl td.extra input{min-height:36px;font-size:14px}
.mod-tbl td.eur{width:16%;text-align:right;font-weight:800;white-space:nowrap;color:var(--muted)}
.mod-tbl td.eur.on{color:var(--ink)}
.mod-tbl td.eur output{display:inline-block;min-width:64px}
.sel-sino{min-width:72px;width:auto;font-weight:800;text-align:center}
.in-eur{width:100px;text-align:right;min-height:36px;font-size:14px}
.mod-bottom{display:flex;gap:20px;flex-wrap:wrap;align-items:stretch}
.mod-totali{width:280px;display:flex;flex-direction:column;justify-content:flex-end}
.tot-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:15px}
.tot-row span:last-child{display:flex;align-items:center;gap:6px;margin-left:12px}
.tot-row.tot-main{font-family:var(--font-head);font-size:20px;border-bottom:2px solid var(--ink)}
.tot-row output{min-width:90px;display:inline-block;text-align:right}
.mini-festa{gap:10px;flex-direction:row;align-items:center;flex-wrap:wrap;padding:18px}
.data-box{min-width:78px;text-align:center;background:var(--sunlight);border-radius:18px;padding:8px 10px}
.data-box .dd{font-family:var(--font-head);font-size:24px;font-weight:700;line-height:1}
.data-box .mm{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.sel-stato{border-radius:999px;padding:4px 10px;font-family:inherit;font-weight:800;font-size:12px;border:1.5px solid transparent}
@media (max-width:1100px){.admin-grid-wide{grid-template-columns:1fr}}
@media (max-width:700px){
  .mod-tbl th{width:auto;display:block;border-bottom:0;padding-bottom:0}
  .mod-tbl tr{display:grid;grid-template-columns:auto 1fr auto;gap:6px 10px;border-bottom:1px solid var(--line);padding:8px 0}
  .mod-tbl th{grid-column:1/-1}
  .mod-tbl td{border-bottom:0;padding:0}
  .mod-tbl td.extra,.mod-tbl td.eur{width:auto}
  .mod-tbl td.extra label{white-space:normal}
  .mod-totali{width:100%}
}

/* Turni e disponibilità */
.wrap-wide{max-width:1400px}
.alert-warn{background:#FFF1BF;color:#8A6400}
.month-nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.month-nav h3{font-size:24px;min-width:200px;text-align:center}
.btn-xs{min-height:34px;font-size:13px;padding:0 14px}
.tbl-turni td,.tbl-disp td{padding:8px 8px;font-size:13px}
.tbl-turni tr.weekend td,.tbl-disp tr.weekend td{background:#FFF8E1}
.tbl-turni tr.today td,.tbl-disp tr.today td{box-shadow:inset 3px 0 0 var(--sun)}
.tbl-turni tr.empty-day td{padding:5px 8px;color:var(--muted)}
.sel-staff{min-width:130px;border-radius:999px;padding:6px 10px;font-family:inherit;font-weight:700;font-size:13px;border:1.5px solid var(--line);background:#fff}
.tbl-disp th.col-staff{font-size:11px;text-align:center;min-width:56px}
.dcell{text-align:center;font-weight:800;font-size:12px;border-radius:8px}
.d-si{background:#DDF3E2;color:#1E6B34}
.d-no{background:#FDE0E0;color:#9B1C1C}
.d-parz,.d-mat,.d-pom,.d-sera{background:#FFE9A8;color:#8A6400}
.d-nd{background:transparent}
option.d-si{color:#1E6B34}option.d-no{color:#9B1C1C}option.d-parz{color:#8A6400}option.d-nd{color:var(--muted)}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cal-h{text-align:center;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:4px 0}
.cal-d{position:relative;min-height:64px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;padding:6px 8px;gap:2px;text-align:left}
.cal-d:hover:not(:disabled){border-color:var(--sun)}
.cal-d.sel{outline:2px solid var(--sun);border-color:var(--sun)}
.cal-d.today{box-shadow:inset 0 3px 0 var(--sun)}
.cal-d.past{opacity:.45;cursor:default}
.cal-d.locked{cursor:not-allowed}
.cal-d:disabled{color:inherit}
.cal-empty{border:0;background:transparent;cursor:default}
.cal-n{font-weight:800;font-size:14px}
.cal-s{font-size:12px;font-weight:800}
.cal-lock{position:absolute;right:6px;top:6px;font-size:12px}
.cal-d.d-si{background:#DDF3E2;border-color:#9AD9A5}.cal-d.d-si .cal-s{color:#1E6B34}
.cal-d.d-no{background:#FDE0E0;border-color:#F4A6A6}.cal-d.d-no .cal-s{color:#9B1C1C}
.cal-d.d-mat,.cal-d.d-pom,.cal-d.d-sera{background:#FFE9A8;border-color:#F6B400}.cal-d.d-mat .cal-s,.cal-d.d-pom .cal-s,.cal-d.d-sera .cal-s{color:#8A6400}
.cal-picker{border:1.5px solid var(--line);border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;background:#FAF7EE}
.cal-picker-title{font-weight:800;font-size:14px}
.pick{min-height:44px;min-width:64px;padding:0 16px;border-radius:999px;border:2px solid transparent;font-family:var(--font-head);font-weight:600;font-size:15px;cursor:pointer}
.pick.d-nd{background:#fff;border-color:var(--line);color:var(--muted)}
.pick.active{border-color:var(--ink)}
@media (max-width:700px){.cal{gap:4px}.cal-d{min-height:52px;padding:4px 5px;border-radius:10px}.cal-n{font-size:13px}.cal-s{font-size:10px}.month-nav h3{min-width:0;flex:1}}
.cal-picker[hidden]{display:none}
.sel-staff{min-width:112px}
.extra-tag{color:#0E5E6F;font-weight:700}

.formula-row{display:flex;gap:8px;flex-wrap:wrap}
.formula-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:2px solid var(--line);background:#fff;cursor:pointer;font-size:14px;font-weight:700;color:var(--ink);flex-direction:row;position:relative}
.formula-pill input{position:absolute;opacity:0;width:0;height:0;min-height:0}
.formula-pill small{font-weight:600;color:var(--muted);font-size:12px}
.formula-pill.active{background:var(--sun);border-color:var(--sun)}
.formula-pill:hover{border-color:var(--sun)}
.row-formula th{vertical-align:top;padding-top:14px}
.nav-drop{position:relative}
.nav-admin-alt{background:var(--teallight)!important;color:var(--teal)!important;border:0;font-family:inherit;cursor:pointer;font-weight:700;font-size:14px;padding:10px 14px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}
.nav-admin-alt:hover{background:#D5E9EC!important}
.nav-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;background:#fff;border-radius:18px;box-shadow:0 10px 30px rgba(30,27,20,.14);padding:8px;min-width:200px;z-index:60;flex-direction:column}
.nav-drop.open .nav-menu{display:flex}
.nav-menu a{border-radius:12px;padding:10px 14px;display:block}
@media (max-width:820px){.nav-drop{display:contents}.nav-admin-alt{display:none}.nav-menu{display:flex;position:static;box-shadow:none;padding:0;background:transparent}.nav-menu a{padding:14px 16px 14px 32px}}

.formula-cell{padding:14px 0!important}
.formula-wrap{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.formula-label{font-size:15px;min-width:60px}
.formula-row{flex:1}
.formula-eur{margin-left:auto;font-weight:800;white-space:nowrap}
.formula-eur output{display:inline-block;min-width:64px;text-align:right}

/* Tooltip info nei turni */
.tip{position:relative;display:inline-flex;align-items:center;color:var(--teal);cursor:help;vertical-align:middle}
.tip-box{display:none;position:absolute;left:0;top:calc(100% + 6px);z-index:40;background:var(--ink);color:#fff;font-size:12.5px;line-height:1.5;padding:10px 12px;border-radius:12px;min-width:220px;max-width:320px;white-space:normal;box-shadow:0 10px 30px rgba(30,27,20,.2)}
.tip:hover .tip-box,.tip:focus .tip-box,.tip:focus-within .tip-box{display:block}
/* Modale anteprima */
.modal{position:fixed;inset:0;z-index:200;background:rgba(30,27,20,.6);display:flex;align-items:center;justify-content:center;padding:16px}
.modal[hidden]{display:none}
.modal-box{background:#fff;border-radius:20px;width:min(1180px,100%);height:min(92vh,900px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.modal-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--ground)}
.modal-box iframe{flex:1;border:0;width:100%;background:#999}
