#etai-app{--navy:#071a2d;--navy2:#0b2742;--blue:#168cff;--cyan:#1bc7ef;--text:#172033;--muted:#66758c;--border:#dce7f2;--soft:#f6faff;max-width:1120px;margin:40px auto;font-family:inherit;color:var(--text)}
.etai-hero{position:relative;overflow:hidden;padding:48px 50px;border-radius:24px;background:radial-gradient(circle at 85% 10%,rgba(27,199,239,.2),transparent 32%),linear-gradient(135deg,var(--navy),var(--navy2));box-shadow:0 18px 50px rgba(7,26,45,.14);color:#fff}.etai-hero-grid{position:absolute;inset:0;opacity:.09;background-image:linear-gradient(rgba(56,181,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(56,181,255,.35) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,#000,transparent)}.etai-hero-copy{position:relative;z-index:2;max-width:760px}.etai-kicker,.etai-eyebrow{display:block;color:var(--cyan);font-size:11px;font-weight:900;letter-spacing:1.5px}.etai-hero h1{margin:8px 0 14px;font-size:48px;line-height:1.05;color:#fff}.etai-hero h1 span{color:var(--cyan)}.etai-hero p{margin:0;color:#b8cada;font-size:16px;line-height:1.7}.etai-hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.etai-hero-badges span{padding:7px 11px;border:1px solid rgba(135,211,255,.2);border-radius:999px;background:rgba(255,255,255,.04);font-size:11px;font-weight:700;color:#d8e9f5}
.etai-free-section,.etai-ai-section,.etai-coming{margin-top:44px}.etai-section-head,.etai-ai-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.etai-section-head h2,.etai-ai-head h2,.etai-coming h2{margin:3px 0 0;font-size:29px;line-height:1.2}.etai-section-head p,.etai-ai-head p{color:var(--muted)}.etai-free-pill{padding:8px 12px;border:1px solid #bcead2;border-radius:999px;background:#f0fbf5;color:#157347;font-size:12px;font-weight:800}.etai-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.etai-tool-card{padding:20px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(20,45,70,.04)}.etai-tool-icon{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 8px;border-radius:11px;background:#edf7ff;color:var(--blue);font-weight:900}.etai-tool-card h3{margin:18px 0 7px;font-size:17px}.etai-tool-card p{min-height:58px;margin:0;color:var(--muted);font-size:13px;line-height:1.55}.etai-tool-card button,.etai-calc-button,.etai-continue,.etai-reset{margin-top:15px;border:0;border-radius:9px;padding:10px 13px;background:#edf7ff;color:#087cf0;font-weight:800;cursor:pointer}.etai-tool-card button:hover,.etai-calc-button:hover{background:#168cff;color:#fff}.etai-free-workspace{position:relative;margin-top:18px;padding:24px;border:1px solid #cfe2f5;border-radius:17px;background:linear-gradient(120deg,#f7fbff,#fff)}.etai-free-workspace h3{margin:5px 0 8px;font-size:22px}.etai-work-close{position:absolute;top:12px;right:14px;border:0;background:transparent;font-size:25px;cursor:pointer;color:#68788b}.etai-calc-grid,.etai-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.etai-color-grid{grid-template-columns:repeat(4,1fr)}.etai-calc-grid label,.etai-color-grid label{font-size:12px;font-weight:800;color:#344054}.etai-calc-grid input,.etai-color-grid select{width:100%;box-sizing:border-box;margin-top:6px;padding:11px 12px;border:1px solid #cfdceb;border-radius:9px;background:#fff}.etai-calc-result{display:flex;flex-wrap:wrap;gap:12px;margin-top:17px;padding:16px;border-radius:12px;background:#eef8ff;color:#24415d}.etai-calc-result strong,.etai-calc-result span{display:block}.etai-muted{color:var(--muted)!important}
.etai-ai-section{padding:30px;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(20,45,70,.05)}.etai-ai-head{align-items:flex-start}.etai-user-box{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;font-size:12px;color:var(--muted)}.etai-user-box a{color:var(--blue)}.etai-mode-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:22px 0}.etai-mode{min-height:92px;padding:11px 8px;border:1px solid var(--border);border-radius:12px;background:#fbfdff;cursor:pointer;text-align:left;color:var(--text)}.etai-mode>span{display:block;color:var(--blue);font-size:16px}.etai-mode strong{display:block;margin:5px 0 2px;font-size:12px}.etai-mode small{display:block;color:#7b8999;font-size:9px;line-height:1.35}.etai-mode.is-active{border-color:#5eb7ff;background:#eef8ff;box-shadow:0 0 0 2px rgba(22,140,255,.08)}.etai-composer textarea{width:100%;box-sizing:border-box;padding:17px;border:1px solid #cddceb;border-radius:14px;background:#fbfdff;resize:vertical;font:inherit;color:var(--text)}.etai-quota-row{display:flex;align-items:center;gap:10px;margin-top:12px}.etai-quota{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:12px}.etai-plan{padding:5px 8px;border-radius:999px;background:#eaf6ff;color:#087cf0;font-weight:900}.etai-quota strong{color:#087cf0}.etai-quota-guest{color:var(--muted)}.etai-reset{margin:0;background:#168cff;color:#fff}.etai-ai-cost{display:flex;gap:11px;margin-top:14px;padding:13px 15px;border:1px solid #d9eafa;border-radius:12px;background:#f7fbff}.etai-ai-cost>span{color:var(--blue)}.etai-ai-cost strong{display:block;font-size:13px}.etai-ai-cost small{display:block;margin-top:2px;color:var(--muted);line-height:1.5}.etai-compose-foot{display:flex;justify-content:space-between;align-items:center;margin-top:13px;color:var(--muted);font-size:11px}.etai-compose-foot button{display:flex;align-items:center;gap:9px;border:0;border-radius:10px;padding:13px 18px;background:linear-gradient(135deg,#168cff,#0b7fe7);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 8px 22px rgba(22,140,255,.22)}.etai-compose-foot button:disabled{opacity:.48;cursor:not-allowed}.etai-turnstile{margin-top:12px}.etai-status{margin-top:14px;padding:0;min-height:0;font-size:13px}.etai-status:not(:empty){padding:13px 15px;border-radius:11px}.etai-status.is-working{background:#eef7ff;color:#255a87}.etai-status.is-success{background:#eefaf3;color:#187347}.etai-status.is-error{background:#fff0f1;color:#a72c3b}
.etai-result{margin-top:18px}.etai-result-card{margin-top:12px;padding:20px;border:1px solid var(--border);border-radius:15px;background:#fff}.etai-result-card h3{margin:0 0 10px;font-size:19px}.etai-result-card h4{margin:16px 0 5px}.etai-result-card.is-ok{border-left:3px solid var(--blue)}.etai-result-card.is-warning{border-color:#f1cf99;background:#fffaf1}.etai-result-card.is-question{border-color:#bcdcff;background:#f8fcff}.etai-result-card.is-soft{background:#f8fafc}.etai-summary{font-size:15px;line-height:1.65}.etai-result-meta{margin-bottom:8px;color:var(--blue);font-size:10px;font-weight:900;letter-spacing:.6px;text-transform:uppercase}.etai-list{margin:0;padding-left:22px}.etai-list li{margin:7px 0;line-height:1.6}.etai-question{margin:12px 0}.etai-question label{display:block;margin-bottom:5px;font-weight:700}.etai-question textarea{width:100%;box-sizing:border-box;border:1px solid #cddceb;border-radius:9px;padding:10px}.etai-continue{background:#168cff;color:#fff}.etai-coming{padding:25px;border-radius:17px;background:#f6faff}.etai-coming-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.etai-coming-list span{padding:7px 11px;border:1px solid #dbe7f2;border-radius:999px;background:#fff;color:#526579;font-size:11px}.etai-auth-overlay{position:fixed;inset:0;z-index:999999;background:rgba(4,15,28,.72);display:flex;align-items:center;justify-content:center;padding:20px}.etai-auth-card{position:relative;width:min(430px,100%);padding:30px;border-radius:20px;background:#fff;text-align:center;box-shadow:0 25px 70px rgba(0,0,0,.24)}.etai-auth-close{position:absolute;right:13px;top:10px;border:0;background:none;font-size:26px;cursor:pointer}.etai-auth-card>span{color:var(--blue);font-size:10px;font-weight:900;letter-spacing:1.4px}.etai-auth-card h2{margin:9px 0}.etai-auth-card p{color:var(--muted)}.etai-auth-plan{display:flex;justify-content:center;gap:10px;margin:18px 0;padding:12px;border-radius:12px;background:#f5faff}.etai-auth-primary,.etai-auth-secondary{display:block;margin-top:9px;padding:12px;border-radius:9px;text-decoration:none;font-weight:800}.etai-auth-primary{background:#168cff;color:#fff!important}.etai-auth-secondary{border:1px solid #d7e4ef;color:#168cff!important}
@media(max-width:900px){.etai-tool-grid{grid-template-columns:repeat(2,1fr)}.etai-mode-grid{grid-template-columns:repeat(3,1fr)}.etai-color-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){#etai-app{margin:24px auto}.etai-hero{padding:34px 22px;border-radius:18px}.etai-hero h1{font-size:36px}.etai-section-head,.etai-ai-head{display:block}.etai-free-pill{display:inline-block;margin-top:12px}.etai-tool-grid,.etai-calc-grid,.etai-color-grid{grid-template-columns:1fr}.etai-ai-section{padding:20px 15px}.etai-mode-grid{grid-template-columns:repeat(2,1fr)}.etai-user-box{justify-content:flex-start;margin-top:12px}.etai-compose-foot{align-items:flex-end}.etai-compose-foot button{padding:12px 13px}}

/* ===== v0.2.0: area strumenti gratuiti ===== */
.etai-free-section{position:relative}
.etai-free-panel{position:relative;padding:28px;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(247,251,255,.98));box-shadow:0 14px 38px rgba(20,73,125,.06),0 0 32px rgba(22,140,255,.055)}
.etai-free-panel::before{content:"";position:absolute;inset:0;border-radius:22px;padding:1.5px;background:linear-gradient(110deg,rgba(22,140,255,.9) 0%,rgba(27,199,239,.58) 26%,rgba(105,194,255,.25) 55%,rgba(22,140,255,.08) 82%,rgba(22,140,255,0) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.etai-free-panel::after{content:"";position:absolute;left:4%;right:4%;top:-10px;height:22px;background:radial-gradient(ellipse at center,rgba(27,199,239,.16),rgba(22,140,255,.06) 45%,transparent 74%);filter:blur(8px);pointer-events:none}
.etai-free-panel .etai-section-head{position:relative;z-index:1;margin-bottom:24px}.etai-free-panel .etai-section-head p{margin:7px 0 0;font-size:13px}
.etai-free-panel .etai-tool-grid,.etai-free-panel .etai-free-workspace{position:relative;z-index:1}
.etai-tool-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.etai-tool-card:hover{transform:translateY(-2px);border-color:#b9ddff;box-shadow:0 12px 28px rgba(22,140,255,.08)}
.etai-free-workspace{background:linear-gradient(120deg,#f8fcff,#fff);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.etai-calc-grid select{width:100%;box-sizing:border-box;margin-top:6px;padding:11px 12px;border:1px solid #cfdceb;border-radius:9px;background:#fff;color:var(--text)}
.etai-calc-grid-one{grid-template-columns:1fr}
.etai-inline-actions{display:flex;flex-wrap:wrap;gap:10px}
.etai-composer textarea{min-height:138px;line-height:1.6}
@media(max-width:600px){.etai-free-panel{padding:20px 15px;border-radius:18px}.etai-free-panel::before{border-radius:18px}.etai-composer textarea{min-height:155px}}


/* ===== v0.3.0: resistenze 4/5 bande, SMD e fix testi ===== */

/* Evita tagli verticali e orizzontali nei titoli e nelle select,
   anche con font del tema Blocksy. */
#etai-app .etai-tool-card h3{
  min-height:0;
  line-height:1.3;
  overflow:visible;
  overflow-wrap:anywhere;
  word-break:normal;
}
#etai-app .etai-calc-grid label,
#etai-app .etai-color-grid label,
#etai-app .etai-smd-field{
  line-height:1.35;
  overflow:visible;
}
#etai-app .etai-calc-grid input,
#etai-app .etai-calc-grid select,
#etai-app .etai-color-grid select,
#etai-app .etai-smd-field input{
  display:block;
  min-height:46px;
  height:auto;
  line-height:1.25;
  padding:11px 36px 11px 12px;
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
  font-family:inherit;
  font-size:14px;
  font-weight:600;
}
#etai-app .etai-calc-grid input,
#etai-app .etai-smd-field input{
  padding-right:12px;
}
#etai-app .etai-color-grid-5{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

/* Piccola resistenza usata come icona nelle card */
#etai-app .etai-resistor-mini{
  position:relative;
  width:48px;
  min-width:48px;
  height:26px;
  padding:0;
  border-radius:999px;
  background:#e9d6ac;
  border:1px solid #c4a46d;
  overflow:visible;
}
#etai-app .etai-resistor-mini::before,
#etai-app .etai-resistor-mini::after{
  content:"";
  position:absolute;
  top:12px;
  width:10px;
  height:2px;
  background:#9099a4;
}
#etai-app .etai-resistor-mini::before{left:-10px}
#etai-app .etai-resistor-mini::after{right:-10px}
#etai-app .etai-resistor-mini i{
  display:block;
  position:relative;
  float:left;
  width:4px;
  height:26px;
  margin-left:5px;
  background:#d43c32;
}
#etai-app .etai-resistor-mini i:nth-child(2){background:#171717}
#etai-app .etai-resistor-mini i:nth-child(3){background:#d43c32}
#etai-app .etai-resistor-mini i:nth-child(4){background:#d6a928}
#etai-app .etai-resistor-mini i:nth-child(5){background:#7a421f}

/* Resistenza grande: cambia colore in tempo reale */
#etai-app .etai-resistor-visual{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(620px,92%);
  height:96px;
  margin:24px auto 6px;
}
#etai-app .etai-resistor-lead{
  height:4px;
  flex:1 1 auto;
  max-width:170px;
  background:linear-gradient(#aeb5bd,#7f8993);
  border-radius:4px;
}
#etai-app .etai-resistor-body{
  position:relative;
  flex:0 0 280px;
  height:66px;
  border-radius:34px 26px 26px 34px;
  background:linear-gradient(180deg,#f2e6cb 0%,#d9c39a 50%,#f0dfba 100%);
  border:1px solid #b79b6b;
  box-shadow:0 5px 14px rgba(90,70,35,.12),inset 0 2px 2px rgba(255,255,255,.8);
}
#etai-app .etai-rband{
  position:absolute;
  top:-1px;
  width:18px;
  height:66px;
  background:#171717;
  box-shadow:inset 1px 0 rgba(255,255,255,.18),inset -1px 0 rgba(0,0,0,.12);
}
#etai-app .etai-resistor-body .b1{left:18%}
#etai-app .etai-resistor-body .b2{left:32%}
#etai-app .etai-resistor-body .b3{left:48%}
#etai-app .etai-resistor-body .b4{left:66%}
#etai-app .etai-resistor-body .b5{left:82%}

/* SMD */
#etai-app .etai-smd-wrap{
  display:flex;
  align-items:end;
  gap:28px;
  flex-wrap:wrap;
  margin:20px 0 4px;
}
#etai-app .etai-smd-chip{
  display:flex;
  align-items:center;
  justify-content:center;
  width:160px;
  height:70px;
  border-radius:10px;
  background:linear-gradient(145deg,#222,#070707);
  border:2px solid #6d747c;
  box-shadow:0 6px 16px rgba(0,0,0,.13);
}
#etai-app .etai-smd-chip span{
  color:#f4f4f4;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:27px;
  font-weight:800;
  letter-spacing:2px;
}
#etai-app .etai-smd-field{
  min-width:240px;
  color:#344054;
  font-size:12px;
  font-weight:800;
}
#etai-app .etai-smd-field input{
  width:100%;
  box-sizing:border-box;
  margin-top:6px;
  border:1px solid #cfdceb;
  border-radius:9px;
  background:#fff;
  color:var(--text);
}

/* Nelle card non forziamo più un'altezza fissa del testo descrittivo:
   riduce i tagli quando il titolo va su due righe. */
#etai-app .etai-tool-card p{
  min-height:0;
}

/* La griglia rimane leggibile con le nuove card. */
@media (min-width:901px){
  #etai-app .etai-tool-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:1050px){
  #etai-app .etai-color-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:600px){
  #etai-app .etai-color-grid-5{grid-template-columns:1fr}
  #etai-app .etai-resistor-body{flex-basis:190px;height:56px}
  #etai-app .etai-rband{height:56px;width:14px}
  #etai-app .etai-resistor-visual{height:82px}
  #etai-app .etai-smd-wrap{gap:16px}
}


/* ===== v0.4.0: selettori unità + grafiche dinamiche ===== */

#etai-app .etai-unit-input{
  display:grid;
  grid-template-columns:minmax(0,1fr) 96px;
  gap:8px;
  margin-top:6px;
}
#etai-app .etai-unit-input input,
#etai-app .etai-unit-input select{
  margin-top:0!important;
  width:100%;
  box-sizing:border-box;
}
#etai-app .etai-unit-input select{
  min-width:0;
  padding-right:28px;
  text-align:center;
  font-weight:800;
  color:#174a74;
  background:#f7fbff;
  border-color:#bfdcf5;
}

#etai-app .etai-circuit-card{
  margin:22px 0 18px;
  padding:18px;
  border:1px solid #cfe3f5;
  border-radius:16px;
  background:
    radial-gradient(circle at 80% 5%,rgba(34,199,239,.07),transparent 28%),
    linear-gradient(135deg,#fbfdff,#f5faff);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
#etai-app .etai-circuit-caption{
  margin-top:8px;
  text-align:center;
  color:#6a7d90;
  font-size:11px;
  font-weight:700;
  letter-spacing:.2px;
}
#etai-app .etai-circuit-svg,
#etai-app .etai-rc-svg,
#etai-app .etai-wave-svg{
  display:block;
  width:100%;
  max-height:245px;
  overflow:visible;
}
#etai-app .wire{stroke-width:5;stroke-linecap:round;fill:none}
#etai-app .wire.power{stroke:#e55353}
#etai-app .wire.signal{stroke:#168cff}
#etai-app .wire.ground{stroke:#34485d}
#etai-app .part.resistor{fill:#ead7ad;stroke:#b99a62;stroke-width:2}
#etai-app .part-label{fill:#273b4e;font-size:22px;font-weight:900}
#etai-app .node-label{fill:#355b78;font-size:19px;font-weight:800}
#etai-app .node-dot{fill:#168cff}
#etai-app .led-symbol{fill:#ff5a67;stroke:#c43946;stroke-width:2}
#etai-app .led-bar{stroke:#283e53;stroke-width:5}
#etai-app .cap-line{stroke:#168cff;stroke-width:6;stroke-linecap:round}
#etai-app .rc-curve{fill:none;stroke:#1bc7ef;stroke-width:5;stroke-linecap:round}
#etai-app .wave-line{fill:none;stroke:#168cff;stroke-width:6;stroke-linejoin:round;stroke-linecap:round}
#etai-app .measure-line{stroke:#7ba5c8;stroke-width:2;stroke-dasharray:6 6}

#etai-app .etai-ohm-viz{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  min-height:120px;
}
#etai-app .etai-ohm-circle{
  width:108px;
  height:108px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:2px solid #9ed6ff;
  background:linear-gradient(145deg,#fff,#eaf7ff);
  box-shadow:0 7px 18px rgba(22,140,255,.08);
}
#etai-app .etai-ohm-circle span{font-size:26px;font-weight:950;color:#168cff}
#etai-app .etai-ohm-circle b{font-size:12px;color:#405c73;margin-top:3px;max-width:92px;text-align:center}
#etai-app .etai-ohm-operator{font-size:28px;font-weight:900;color:#6d8ba4}

#etai-app .etai-series-viz{
  min-height:100px;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
}
#etai-app .etai-series-viz>span{
  min-width:95px;
  padding:15px 12px;
  border-radius:10px;
  border:2px solid #c7a46c;
  background:#ead7ad;
  text-align:center;
  color:#34485b;
  font-weight:900;
}
#etai-app .etai-series-viz>span small{display:block;margin-top:3px;color:#50677a;font-size:10px}
#etai-app .etai-series-viz>b{color:#168cff;font-size:24px}
#etai-app .parallel-lines{
  width:min(560px,100%);
  display:grid;
  gap:8px;
  padding:8px 45px;
  border-left:5px solid #168cff;
  border-right:5px solid #168cff;
}
#etai-app .parallel-lines span{
  display:block;
  padding:9px;
  text-align:center;
  border-radius:8px;
  background:#ead7ad;
  border:1px solid #c7a46c;
  font-weight:900;
}
#etai-app .parallel-lines small{display:inline-block;margin-left:8px;color:#50677a}

#etai-app .etai-convert-viz{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  flex-wrap:wrap;
  min-height:90px;
}
#etai-app .etai-convert-viz span{
  padding:12px 16px;
  border-radius:10px;
  background:#fff;
  border:1px solid #cfe3f5;
  color:#174a74;
  font-weight:900;
}
#etai-app .etai-convert-viz b{color:#1bc7ef;font-size:24px}

#etai-app .etai-cap-viz{
  min-height:100px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
}
#etai-app .cap-plate{
  display:block;
  width:7px;
  height:70px;
  border-radius:4px;
  background:#168cff;
}
#etai-app .etai-cap-viz strong{margin-left:18px;color:#174a74;font-size:18px}

@media(max-width:600px){
  #etai-app .etai-unit-input{grid-template-columns:minmax(0,1fr) 84px}
  #etai-app .etai-circuit-card{padding:10px}
  #etai-app .etai-ohm-circle{width:82px;height:82px}
  #etai-app .etai-ohm-circle span{font-size:21px}
  #etai-app .etai-ohm-operator{font-size:22px}
  #etai-app .part-label{font-size:18px}
  #etai-app .node-label{font-size:16px}
}


/* v0.5.0: schemi e grafici didattici */
#etai-app .resistor-symbol{fill:none;stroke:#b18445;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
#etai-app .ground-symbol{stroke:#34485d;stroke-width:4;stroke-linecap:round}
#etai-app .etai-res-symbol{position:relative!important;min-width:125px!important;border:0!important;background:transparent!important;padding:16px 26px!important}
#etai-app .etai-res-symbol:before{content:"";position:absolute;left:0;right:0;top:50%;height:4px;background:#168cff;z-index:0}
#etai-app .etai-res-symbol:after{content:"";position:absolute;left:24px;right:24px;top:calc(50% - 14px);height:28px;border:3px solid #b18445;background:#ead7ad;border-radius:4px;z-index:1}
#etai-app .etai-res-symbol{z-index:2;color:#34485b}
#etai-app .etai-res-symbol small,#etai-app .etai-res-symbol{isolation:isolate}
#etai-app .etai-res-symbol small{position:relative;z-index:3}
#etai-app .etai-res-symbol:not(small){font-weight:900}
#etai-app .parallel-lines .etai-res-symbol{width:100%;box-sizing:border-box}
#etai-app .etai-rc-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center}
#etai-app .etai-rc-chart{display:block;width:100%;max-height:200px}
#etai-app .chart-axis{stroke:#6f879c;stroke-width:2}
#etai-app .chart-label{fill:#50677a;font-size:13px;font-weight:800}
#etai-app .etai-rc-tau{text-align:center;margin-top:8px;font-size:20px;font-weight:900;color:#244d6d}
@media(max-width:700px){#etai-app .etai-rc-layout{grid-template-columns:1fr}}


/* ===== v0.6.0: partitore orizzontale + risultati compatti ===== */

#etai-app .etai-divider-svg{
  display:block;
  width:100%;
  max-height:280px;
  overflow:visible;
}
#etai-app .etai-divider-svg .wire.circuit{
  stroke:#24384b;
  stroke-width:4;
  stroke-linecap:round;
  fill:none;
}
#etai-app .etai-divider-svg .wire.output{
  stroke:#168cff;
  stroke-width:4;
  stroke-linecap:round;
  fill:none;
}
#etai-app .etai-divider-svg .terminal-open{
  fill:#fff;
  stroke:#24384b;
  stroke-width:4;
}
#etai-app .etai-divider-svg .terminal-output{
  fill:#168cff;
  stroke:#fff;
  stroke-width:3;
}
#etai-app .etai-divider-svg .node-dot{
  fill:#172b3f;
}
#etai-app .etai-divider-svg .resistor-symbol{
  fill:none;
  stroke:#b18445;
  stroke-width:5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#etai-app .etai-divider-svg .ground-symbol{
  stroke:#24384b;
  stroke-width:4;
  stroke-linecap:round;
}
#etai-app .etai-metric-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  width:100%;
}
#etai-app .etai-metric-grid>div{
  padding:8px 16px;
  border-right:1px solid #cfe0ef;
}
#etai-app .etai-metric-grid>div:last-child{
  border-right:0;
}
#etai-app .etai-metric-grid small{
  display:block;
  margin-bottom:3px;
  color:#60788e;
  font-size:11px;
  font-weight:700;
}
#etai-app .etai-metric-grid strong{
  display:block;
  color:#0d68c5;
  font-size:17px;
}

@media(max-width:720px){
  #etai-app .etai-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #etai-app .etai-metric-grid>div{border-bottom:1px solid #cfe0ef}
  #etai-app .etai-metric-grid>div:nth-child(2n){border-right:0}
  #etai-app .etai-divider-svg{min-width:650px}
  #etai-app .etai-circuit-card{overflow-x:auto}
}


/* ===== v0.7.0: convertitore SI + logica + basi + calcoli live ===== */
#etai-app .etai-auto-hidden{display:none!important}

/* Convertitore SI */
#etai-app .etai-si-shell{
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);
  margin-top:20px;
  border:1px solid #d4e3f2;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}
#etai-app .etai-si-inputs{
  display:grid;
  gap:13px;
  padding:24px;
  border-right:1px solid #dce7f2;
}
#etai-app .etai-si-inputs label,
#etai-app .etai-logic-controls label,
#etai-app .etai-base-head label{
  color:#273d52;font-size:12px;font-weight:800;
}
#etai-app .etai-si-inputs input,
#etai-app .etai-si-inputs select,
#etai-app .etai-logic-controls select,
#etai-app .etai-base-head input,
#etai-app .etai-base-head select{
  width:100%;box-sizing:border-box;margin-top:6px;padding:12px 13px;
  border:1px solid #cfdceb;border-radius:10px;background:#fff;color:#172033;font:inherit;
}
#etai-app .etai-swap{
  justify-self:start;border:0;border-radius:9px;padding:9px 13px;
  background:#edf7ff;color:#087cf0;font-weight:800;cursor:pointer;
}
#etai-app .etai-si-output{
  display:flex;flex-direction:column;justify-content:center;gap:12px;padding:28px;
  background:linear-gradient(145deg,#f9fcff,#f2f8ff);
}
#etai-app .etai-si-output>span{font-size:10px;font-weight:900;letter-spacing:1px;color:#607b96}
#etai-app .etai-si-output>strong{
  padding:22px;border-radius:16px;background:#101b2e;color:#fff;
  font-size:34px;text-align:center;box-shadow:0 10px 22px rgba(12,29,48,.12);
}
#etai-app .etai-si-output>div{
  padding:14px;border-radius:12px;background:#fff4e8;color:#c54d12;font-weight:850;text-align:center;
}
#etai-app .etai-si-output>small{color:#61758b;line-height:1.5}

/* Porte logiche */
#etai-app .etai-logic-controls{
  display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;align-items:end;margin-top:18px;
}
#etai-app .etai-bit-control{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid #d5e3f1;border-radius:11px;background:#fbfdff}
#etai-app .etai-bit-control span{font-size:12px;font-weight:800;color:#344b61}
#etai-app .etai-bit-control button{
  width:52px;height:42px;border:1px solid #c9def1;border-radius:10px;background:#eef7ff;color:#087cf0;
  font-size:18px;font-weight:950;cursor:pointer;
}
#etai-app .etai-bit-control button.is-one{background:#168cff;color:#fff;border-color:#168cff}
#etai-app .etai-logic-stage{
  display:grid;grid-template-columns:1fr 1.25fr .7fr;gap:22px;align-items:center;
  margin-top:20px;padding:28px;border:1px solid #cfe3f5;border-radius:16px;
  background:radial-gradient(circle at 80% 10%,rgba(27,199,239,.08),transparent 28%),#f8fcff;
}
#etai-app .etai-logic-inputs{display:grid;gap:16px}
#etai-app .etai-logic-inputs span{padding:10px 14px;border-left:4px solid #168cff;background:#fff;border-radius:8px;font-weight:850;color:#31516d}
#etai-app .etai-gate-shape{
  position:relative;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  border:3px solid #168cff;border-radius:18px 60px 60px 18px;background:#fff;box-shadow:0 10px 22px rgba(22,140,255,.08);
}
#etai-app .etai-gate-shape strong{font-size:28px;color:#0d68c5}
#etai-app .etai-gate-shape small{margin-top:7px;color:#62788c;font-weight:800}
#etai-app .etai-logic-output{text-align:center}
#etai-app .etai-logic-output span{display:block;font-size:12px;font-weight:900;color:#668099}
#etai-app .etai-logic-output strong{
  display:inline-flex;align-items:center;justify-content:center;width:74px;height:74px;margin-top:8px;border-radius:50%;
  background:#eef7ff;color:#168cff;font-size:32px;border:2px solid #a8d9ff;
}
#etai-app .etai-logic-output strong.is-one{background:#168cff;color:#fff;border-color:#168cff}
#etai-app .etai-truth-wrap{margin-top:20px}
#etai-app .etai-truth-wrap h4{margin:0 0 10px}
#etai-app .etai-truth-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #dbe7f2;border-radius:12px}
#etai-app .etai-truth-table th,#etai-app .etai-truth-table td{padding:10px;text-align:center;border-bottom:1px solid #e4edf5}
#etai-app .etai-truth-table th{background:#f3f8fc;color:#516b82;font-size:11px}
#etai-app .etai-truth-table tr:last-child td{border-bottom:0}
#etai-app .etai-truth-table tr.is-active td{background:#eaf6ff;color:#087cf0;font-weight:900}

/* Sistemi numerici */
#etai-app .etai-base-head{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
#etai-app .etai-base-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px;
}
#etai-app .etai-base-grid>div{
  min-width:0;padding:17px;border:1px solid #d4e3f1;border-radius:14px;background:#f9fcff;
}
#etai-app .etai-base-grid span{display:block;color:#6b8297;font-size:9px;font-weight:950;letter-spacing:1px}
#etai-app .etai-base-grid strong{
  display:block;margin:8px 0 5px;color:#10253b;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:20px;overflow-wrap:anywhere;
}
#etai-app .etai-base-grid small{color:#8796a5}
#etai-app .etai-base-note{
  margin-top:14px;padding:13px 15px;border-radius:11px;background:#eef8ff;color:#315c7e;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:750;overflow-wrap:anywhere;
}

@media(max-width:800px){
  #etai-app .etai-si-shell{grid-template-columns:1fr}
  #etai-app .etai-si-inputs{border-right:0;border-bottom:1px solid #dce7f2}
  #etai-app .etai-logic-controls{grid-template-columns:1fr}
  #etai-app .etai-logic-stage{grid-template-columns:1fr}
  #etai-app .etai-base-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  #etai-app .etai-base-head{grid-template-columns:1fr}
  #etai-app .etai-base-grid{grid-template-columns:1fr}
  #etai-app .etai-si-output>strong{font-size:26px}
}


/* ===== v0.7.1: UX porte logiche + cambio base intelligente ===== */
#etai-app .etai-logic-line-button{
  display:block;
  width:100%;
  padding:10px 14px;
  border:0;
  border-left:4px solid #168cff;
  border-radius:8px;
  background:#fff;
  color:#31516d;
  font:inherit;
  font-weight:850;
  text-align:left;
  cursor:pointer;
  transition:background .15s ease, transform .15s ease, box-shadow .15s ease;
}
#etai-app .etai-logic-line-button:hover,
#etai-app .etai-logic-line-button:focus-visible{
  background:#eef8ff;
  box-shadow:0 0 0 2px rgba(22,140,255,.12);
  transform:translateX(2px);
  outline:none;
}
#etai-app .etai-bit-control.is-hidden,
#etai-app #logic-b-wrap[hidden]{
  display:none!important;
}


/* ===== v0.8.0: area strumenti compatta, categorie e pannello flottante ===== */

/* Hidden HTML deve prevalere sempre */
#etai-app [hidden]{display:none!important}

#etai-app .etai-tool-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:18px 0 14px;
}
#etai-app .etai-tool-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
#etai-app .etai-tool-filters button{
  border:1px solid #cfe1f1;
  border-radius:999px;
  padding:8px 14px;
  background:#fff;
  color:#31506a;
  font:inherit;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;
}
#etai-app .etai-tool-filters button:hover,
#etai-app .etai-tool-filters button.is-active{
  background:#edf8ff;
  border-color:#168cff;
  color:#087cf0;
  box-shadow:0 5px 14px rgba(22,140,255,.08);
}

/* Card più compatte: due righe da quattro stanno molto meglio */
#etai-app .etai-tool-card{
  min-height:178px;
  padding:17px 17px 15px;
}
#etai-app .etai-tool-card .etai-tool-icon{
  margin-bottom:2px;
}
#etai-app .etai-tool-card h3{
  margin:10px 0 6px;
  font-size:15px;
  line-height:1.25;
}
#etai-app .etai-tool-card p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:40px;
  margin:0 0 12px;
  line-height:1.4;
  font-size:12px;
}
#etai-app .etai-tool-card button{
  padding:9px 12px;
  font-size:12px;
}
#etai-app .etai-tool-more-wrap{
  display:flex;
  justify-content:center;
  margin-top:16px;
}
#etai-app .etai-tool-more{
  border:1px solid #c9def0;
  border-radius:999px;
  padding:10px 17px;
  background:#fff;
  color:#087cf0;
  font:inherit;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(22,140,255,.06);
}

/* NOT: ingresso B deve sparire davvero */
#etai-app .etai-logic-line-button[hidden],
#etai-app #logic-b-wrap[hidden]{
  display:none!important;
}

/* Desktop: il calcolatore si apre come pannello, non spinge l'AI verso il basso */
@media(min-width:900px){
  #etai-app.etai-tool-open::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:9997;
    background:rgba(8,28,46,.34);
    backdrop-filter:blur(2px);
  }
  #etai-app.etai-tool-open .etai-free-workspace{
    display:block!important;
    position:fixed;
    z-index:9998;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:min(1080px,92vw);
    max-height:86vh;
    overflow:auto;
    margin:0;
    padding:26px;
    background:#fff;
    border:1px solid #bcd9ef;
    border-radius:20px;
    box-shadow:0 28px 80px rgba(17,43,67,.26);
  }
  #etai-app.etai-tool-open .etai-work-close{
    position:sticky;
    top:0;
    z-index:10;
    float:right;
  }
}
@media(max-width:899px){
  #etai-app .etai-tool-card{min-height:0}
  #etai-app .etai-tool-toolbar{margin-top:14px}
}
