/* DocPlans — stile condiviso di login, registrazione, piani e abbonamento */
:root{
  --blu:#1e9bf0; --blu-scuro:#0b6fc9; --teal:#2fd6a3; --teal-scuro:#17b487;
  --ink:#0d2a40; --muted:#54708a; --bg:#f3f9fe;
  --glass:rgba(255,255,255,.7); --border:rgba(30,155,240,.18);
  --red:#e5484d;
  --shadow:0 10px 40px rgba(14,111,201,.12);
  --shadow-lift:0 22px 60px rgba(11,111,201,.18);
}
*{box-sizing:border-box;margin:0;}
body{font-family:'Inter',-apple-system,system-ui,sans-serif;background:var(--bg);color:var(--ink);min-height:100vh;display:grid;place-items:center;padding:24px;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
body.wide{display:block;padding:24px 20px 60px;}
a{color:inherit;text-decoration:none;}

/* sfondo */
.bg-blobs{position:fixed;inset:0;z-index:-1;overflow:hidden;}
.bg-blobs span{position:absolute;border-radius:50%;filter:blur(90px);opacity:.3;}
.bg-blobs .b1{width:460px;height:460px;background:var(--blu);top:-160px;right:-120px;}
.bg-blobs .b2{width:420px;height:420px;background:var(--teal);bottom:-160px;left:-160px;}

/* logo */
.brand{display:flex;align-items:center;justify-content:center;gap:8px;font-family:'Sora',sans-serif;font-weight:800;font-size:20px;letter-spacing:-.02em;}
.brand img{width:34px;height:34px;object-fit:contain;}
.brand b{background:linear-gradient(90deg,var(--blu-scuro),var(--teal));-webkit-background-clip:text;background-clip:text;color:transparent;}

/* scheda centrale */
.box{width:100%;max-width:420px;background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);border-radius:22px;padding:34px 28px;box-shadow:var(--shadow);}
.box .brand{margin-bottom:14px;}
h1{font-family:'Sora',sans-serif;font-size:21px;text-align:center;margin-bottom:6px;letter-spacing:-.02em;}
.sub{text-align:center;color:var(--muted);font-size:14px;line-height:1.55;margin-bottom:18px;}
.sub b{color:var(--teal-scuro);}
.sub a{color:var(--muted);text-decoration:underline;}

/* form */
label{display:block;font-size:13px;color:var(--muted);font-weight:500;margin:14px 0 6px;}
input{width:100%;background:#fff;border:1px solid var(--border);border-radius:12px;color:var(--ink);padding:12px;font-size:15px;font-family:inherit;transition:border-color .2s,box-shadow .2s;}
input:focus{outline:none;border-color:var(--blu);box-shadow:0 0 0 3px rgba(30,155,240,.15);}
.btn{display:block;width:100%;text-align:center;border:none;border-radius:12px;padding:13px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s;}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:linear-gradient(90deg,var(--blu),var(--teal));color:#fff;box-shadow:0 6px 20px rgba(30,155,240,.3);}
.btn-primary:hover{box-shadow:0 10px 26px rgba(23,180,135,.35);}
.btn-primary:disabled{background:#dbe7f0;color:var(--muted);cursor:not-allowed;box-shadow:none;transform:none;}
.btn-ghost{background:#fff;border:1px solid var(--border);color:var(--blu-scuro);}
.box form .btn,.box > .btn{margin-top:20px;}
.errore{display:none;margin-top:14px;background:#fde8e8;color:#b3261e;border-radius:12px;padding:10px 12px;font-size:14px;}
.link{text-align:center;margin-top:18px;font-size:14px;color:var(--muted);}
.link a{color:var(--blu-scuro);font-weight:600;}
.btns{display:grid;gap:10px;margin-top:6px;}
.btns .btn{margin-top:0;}

/* pagina piani */
.piani-head{text-align:center;margin:26px 0 34px;}
.piani-head h1{font-size:clamp(1.7rem,4vw,2.4rem);margin-bottom:10px;}
.griglia{display:grid;gap:22px;max-width:980px;margin:0 auto;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.card{position:relative;display:flex;flex-direction:column;background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);border-radius:24px;padding:30px 26px;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s;}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);}
.card.evidenza{border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(100deg,var(--blu),var(--teal));background-origin:border-box;background-clip:padding-box,border-box;box-shadow:var(--shadow-lift);}
.card.evidenza::before{content:'Più scelto';position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(100deg,var(--blu),var(--teal));color:#fff;font-size:12px;font-weight:700;padding:5px 16px;border-radius:99px;white-space:nowrap;}
.nome{font-family:'Sora',sans-serif;font-weight:700;font-size:18px;}
.prezzo{font-family:'Sora',sans-serif;font-size:38px;font-weight:800;margin:12px 0;}
.prezzo small{font-family:'Inter',sans-serif;font-size:15px;font-weight:500;color:var(--muted);}
.card ul{list-style:none;margin:8px 0 24px;flex:1;display:grid;gap:10px;padding:0;}
.card li{position:relative;padding-left:26px;font-size:14px;line-height:1.4;}
.card li::before{content:'✓';position:absolute;left:0;color:var(--teal-scuro);font-weight:700;}
.card .btn{margin-top:0;}
