:root{--bg:#030711;--panel:#07101d;--panel2:#0c1322;--line:rgba(255,255,255,.09);--text:#edf4ff;--muted:#8d9aab;--gold:#f7bd18;--cyan:#00d8ff;--violet:#a340ff;--red:#ff3e54;--green:#27e36d;--orange:#ff8b22}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:radial-gradient(circle at 25% 0%,rgba(130,42,255,.22),transparent 28%),radial-gradient(circle at 75% 10%,rgba(0,216,255,.14),transparent 30%),#030711;color:var(--text)}a{text-decoration:none;color:inherit}button{font:inherit}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.neo-sidebar{background:linear-gradient(180deg,#03050b,#07111d 45%,#03050b);border-right:1px solid rgba(247,189,24,.25);padding:20px 16px;display:flex;flex-direction:column;gap:18px;box-shadow:20px 0 60px rgba(0,0,0,.35)}.brand-block{text-align:center}.neo-logo{width:108px;height:108px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(247,189,24,.35))}.brand-block h1{margin:6px 0 0;font-size:25px;letter-spacing:.5px}.brand-block h1 span{color:var(--gold)}.brand-block p{margin:3px 0 0;font-size:11px;text-transform:uppercase;color:#cbd5e1}.neo-nav{display:flex;flex-direction:column;gap:8px}.neo-nav button{width:100%;text-align:left;border:1px solid transparent;background:transparent;color:#dbeafe;border-radius:12px;padding:13px 15px;cursor:pointer;text-transform:uppercase;font-size:13px;letter-spacing:.4px}.neo-nav button.active,.neo-nav button:hover{border-color:rgba(247,189,24,.8);background:linear-gradient(90deg,rgba(247,189,24,.28),rgba(247,189,24,.05));box-shadow:0 0 22px rgba(247,189,24,.28);color:#ffd95a}.holo-tooth{margin-top:auto;display:grid;place-items:center;padding:20px 0;background:radial-gradient(circle,rgba(163,64,255,.22),transparent 65%)}.holo-tooth img{width:130px;filter:drop-shadow(0 0 25px rgba(247,189,24,.45)) drop-shadow(0 0 20px rgba(163,64,255,.35))}.user-card{border:1px solid var(--line);border-radius:15px;padding:16px;background:rgba(255,255,255,.035)}.user-card span{display:block;color:var(--green);font-size:12px;margin-top:4px}.neo-main{padding:18px;min-width:0}.neo-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}.searchbar{display:flex;gap:10px;flex:1}.searchbar input,.searchbar select{background:#050a13;border:1px solid var(--line);border-radius:12px;color:var(--text);padding:13px;outline:none}.searchbar input{flex:1}.searchbar button,.mini-reset{border:1px solid var(--line);background:#090f1c;color:white;border-radius:12px;padding:0 14px;display:grid;place-items:center}.top-icons{display:flex;align-items:center;gap:24px;color:#e5e7eb}.top-icons span{filter:drop-shadow(0 0 8px var(--gold))}.top-icons small{display:block;color:#aab4c2;text-transform:uppercase}.top-icons b{font-size:24px;color:var(--gold)}.metric-row{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:12px}.metric{border:1px solid var(--line);border-radius:15px;background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.015));padding:14px 16px;display:grid;grid-template-columns:45px 1fr;grid-template-areas:'icon num' 'icon lab';align-items:center;min-height:78px}.metric em{grid-area:icon;font-size:27px;font-style:normal}.metric strong{grid-area:num;font-size:28px}.metric span{grid-area:lab;text-transform:uppercase;font-size:12px;font-weight:800}.metric.gold{border-color:rgba(247,189,24,.5);box-shadow:inset 0 0 22px rgba(247,189,24,.08);color:#ffd95a}.metric.violet{border-color:rgba(163,64,255,.55);color:#d399ff}.metric.red{border-color:rgba(255,62,84,.55);color:#ff697a}.metric.cyan{border-color:rgba(0,216,255,.55);color:#52e6ff}.metric.green{border-color:rgba(39,227,109,.55);color:#6dff9d}.workspace{display:grid;grid-template-columns:minmax(760px,1fr) 330px;gap:12px}.neo-card{background:linear-gradient(180deg,rgba(12,19,34,.88),rgba(4,9,18,.92));border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 60px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.04)}.calendar-zone{padding:14px}.calendar-head{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;margin-bottom:12px}.calendar-head h2{margin:0;text-transform:uppercase;letter-spacing:.4px}.calendar-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.month-nav{display:flex;align-items:center;gap:11px}.month-nav a,.new-glow{border:1px solid var(--line);background:#080e19;color:white;border-radius:10px;padding:10px 13px}.month-nav strong{min-width:190px;text-align:center}.today-btn{color:var(--gold)!important}.new-glow{border-color:rgba(247,189,24,.8);background:linear-gradient(90deg,rgba(247,189,24,.25),rgba(163,64,255,.18));box-shadow:0 0 20px rgba(247,189,24,.22);cursor:pointer}.month-calendar{border:1px solid var(--line);border-radius:14px;overflow:hidden}.weekdays,.week{display:grid;grid-template-columns:repeat(7,1fr)}.weekdays div{padding:12px;text-align:center;text-transform:uppercase;font-weight:800;background:rgba(255,255,255,.04);border-right:1px solid var(--line)}.weekdays div:last-child{border-right:0}.day{min-height:135px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:7px;background:rgba(3,7,17,.72)}.day:nth-child(7){border-right:0}.day.muted{opacity:.35}.day.today-cell{box-shadow:inset 0 0 0 2px var(--violet),inset 0 0 30px rgba(163,64,255,.15)}.daynum{text-align:right;font-weight:900;color:#dbeafe}.events{display:flex;flex-direction:column;gap:6px;margin-top:5px}.neon-event{position:relative;border:1px solid var(--doc)!important;border-radius:10px;padding:6px 8px 6px 29px;min-height:45px;background:linear-gradient(135deg,color-mix(in srgb,var(--doc) 25%,transparent),rgba(255,255,255,.02))!important;color:#f8fbff!important;box-shadow:0 0 18px color-mix(in srgb,var(--doc) 25%,transparent);cursor:grab;overflow:hidden}.neon-event .state{position:absolute;left:7px;top:7px;filter:drop-shadow(0 0 5px var(--doc))}.evt-main{display:block;font-size:12px;font-weight:900;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.evt-sub{display:block;font-size:11px;color:#d7dee9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.neon-event.done .evt-main,.neon-event.done .evt-sub{text-decoration:line-through}.bang{position:absolute;right:6px;top:5px;background:var(--red);border-radius:999px;font-size:10px;line-height:16px;width:16px;text-align:center}.right-panel{display:flex;flex-direction:column;gap:12px}.side-card{padding:15px}.side-card h3{margin:0 0 12px;text-transform:uppercase;font-size:16px}.notice,.delivery,.rank{border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:8px;background:rgba(255,255,255,.035)}.notice strong,.notice span,.delivery strong,.delivery span{display:block}.notice span,.delivery span{font-size:12px;color:var(--muted);margin-top:3px}.notice.danger{border-color:rgba(255,62,84,.45);color:#ff7a88}.notice.warn{border-color:rgba(247,189,24,.45);color:#ffd95a}.notice.orange{border-color:rgba(255,139,34,.5);color:#ffad5e}.notice.info{border-color:rgba(0,216,255,.4);color:#8befff}.delivery{display:flex;gap:10px;align-items:center}.delivery i{width:11px;height:11px;border-radius:50%;box-shadow:0 0 10px currentColor}.barrow{display:grid;grid-template-columns:1fr 30px;gap:8px;align-items:center;margin:10px 0}.barrow em{grid-column:1/-1;height:7px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.barrow i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--cyan),var(--gold));border-radius:999px}.rank{display:grid;grid-template-columns:30px 1fr 40px;align-items:center}.rank b{color:var(--gold)}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.70);z-index:50;padding:20px;overflow:auto;backdrop-filter:blur(6px)}.modal.open{display:block}.modal-box{max-width:920px;margin:35px auto;background:linear-gradient(180deg,#0c1322,#050a13);border:1px solid rgba(163,64,255,.35);border-radius:20px;padding:24px;position:relative;color:white;box-shadow:0 0 50px rgba(163,64,255,.18)}.modal-box.small{max-width:540px}.x{position:absolute;right:14px;top:14px;background:rgba(255,255,255,.06);border:1px solid var(--line);color:white;border-radius:10px;font-size:24px;padding:5px 12px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}label{font-weight:800;font-size:13px;color:#cbd5e1;text-transform:uppercase}label input,label select,label textarea{margin-top:5px}input,select,textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#050a13;color:white}.full{grid-column:1/-1}.primary{background:linear-gradient(90deg,var(--violet),#2563eb);border:0;border-radius:12px;color:white;padding:13px;font-weight:900}.danger{background:rgba(255,62,84,.15);border:1px solid rgba(255,62,84,.6);color:#ff7584;border-radius:12px;padding:12px;margin-top:14px}.detail-title{display:flex;align-items:center;justify-content:space-between}.pill{border:1px solid rgba(247,189,24,.55);border-radius:999px;padding:8px 12px;color:#ffd95a}.timeline{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.step{border:1px solid var(--line);border-radius:12px;padding:10px 12px;min-width:110px;background:rgba(255,255,255,.03);color:#8d9aab}.step i{display:block;font-style:normal;font-size:20px}.step.on{border-color:rgba(39,227,109,.5);color:#a7ffbf;box-shadow:0 0 14px rgba(39,227,109,.14)}.step.current{border-color:rgba(163,64,255,.8);box-shadow:0 0 20px rgba(163,64,255,.28);color:white}.doctor-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.doctor-list span{display:flex;gap:8px;align-items:center}.doctor-list i{width:18px;height:18px;border-radius:50%;border:1px solid #aaa;display:inline-block}.work-list div{padding:10px;border-bottom:1px solid var(--line)}small{display:block;color:var(--muted);margin-top:4px}@media(max-width:1250px){.workspace{grid-template-columns:1fr}.right-panel{display:grid;grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.neo-sidebar{position:relative}.metric-row{grid-template-columns:repeat(2,1fr)}.calendar-head{grid-template-columns:1fr}.month-calendar{overflow:auto}.weekdays,.week{min-width:900px}.form-grid{grid-template-columns:1fr}}


/* V4.1 FIX: calendario nativo per Data consegna sempre cliccabile */
.date-field .date-wrap{display:grid;grid-template-columns:1fr 46px;gap:8px;align-items:end;margin-top:5px}
.date-field input[type="date"]{margin-top:0;min-height:43px;color-scheme:dark;cursor:pointer}
.date-field input[type="date"]::-webkit-calendar-picker-indicator{opacity:1;display:block;cursor:pointer;filter:invert(1) sepia(1) saturate(5) hue-rotate(5deg);width:22px;height:22px}
.date-picker-btn{height:43px;border:1px solid rgba(247,189,24,.65);border-radius:10px;background:linear-gradient(135deg,rgba(247,189,24,.22),rgba(163,64,255,.14));color:#ffd95a;box-shadow:0 0 16px rgba(247,189,24,.18);cursor:pointer}
.date-picker-btn:hover{box-shadow:0 0 24px rgba(247,189,24,.32);transform:translateY(-1px)}


.version-badge{display:inline-block;margin-left:6px;padding:2px 7px;border:1px solid rgba(247,189,24,.7);border-radius:999px;color:#ffd95a;font-size:10px;box-shadow:0 0 10px rgba(247,189,24,.25)}
.mmd-date-picker{position:absolute;z-index:9999;width:320px;background:linear-gradient(180deg,#101827,#050a13);border:1px solid rgba(247,189,24,.6);border-radius:16px;padding:12px;box-shadow:0 22px 70px rgba(0,0,0,.55),0 0 35px rgba(247,189,24,.18);display:none;color:white}
.mmd-date-picker.open{display:block}.mmd-dp-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;margin-bottom:10px}.mmd-dp-head button,.mmd-dp-actions button{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:white;border-radius:10px;padding:8px;cursor:pointer}.mmd-dp-title{text-align:center;color:#ffd95a;font-size:13px}.mmd-dp-week,.mmd-dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.mmd-dp-week span{text-align:center;color:#8d9aab;font-size:11px;font-weight:900;text-transform:uppercase}.mmd-dp-grid button{height:36px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#eaf2ff;border-radius:9px;cursor:pointer}.mmd-dp-grid button:hover{border-color:rgba(0,216,255,.85);box-shadow:0 0 14px rgba(0,216,255,.22)}.mmd-dp-grid button.muted{opacity:.33}.mmd-dp-grid button.today{border-color:rgba(163,64,255,.9)}.mmd-dp-grid button.selected{background:linear-gradient(135deg,rgba(247,189,24,.85),rgba(163,64,255,.55));color:#050a13;font-weight:900}.mmd-dp-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.mmd-dp-today{color:#ffd95a!important}
.version-badge{display:inline-block;margin-top:8px;padding:4px 10px;border:1px solid rgba(0,255,255,.35);border-radius:999px;color:#8dfcff;background:rgba(0,255,255,.08);font-size:12px;letter-spacing:.08em}.navlink{display:block;text-decoration:none;color:inherit;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.04);margin:4px 0}.navlink:hover{background:rgba(0,255,255,.12)}.user-card a{display:inline-block;margin-top:7px;margin-right:10px;color:#ffe36e;text-decoration:none;font-size:12px}.flashbar{position:sticky;top:0;z-index:50;display:flex;gap:10px;flex-wrap:wrap;padding:8px 0}.flash{padding:10px 14px;border-radius:14px;margin:8px 0;background:rgba(0,255,255,.10);border:1px solid rgba(0,255,255,.25);color:#eafcff}.flash.error{background:rgba(255,60,100,.15);border-color:rgba(255,60,100,.45)}.flash.ok{background:rgba(0,255,140,.13);border-color:rgba(0,255,140,.38)}.readonly-note{padding:14px;border:1px solid rgba(255,227,110,.35);background:rgba(255,227,110,.08);border-radius:16px;margin-bottom:14px}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,rgba(168,73,255,.25),transparent 35%),radial-gradient(circle at bottom right,rgba(0,247,255,.18),transparent 35%),#060711;color:#fff}.login-card{width:min(420px,92vw);padding:34px;border-radius:28px;background:rgba(12,16,32,.82);border:1px solid rgba(255,255,255,.12);box-shadow:0 0 60px rgba(0,247,255,.16),inset 0 0 25px rgba(255,255,255,.04);text-align:center}.login-logo{width:110px;height:110px;object-fit:contain}.login-card h1{letter-spacing:.12em;margin:10px 0;color:#ffe36e}.login-form label{text-align:left;display:block;margin:16px 0}.login-form input,.admin-page input,.admin-page select{width:100%;box-sizing:border-box;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:12px}.login-card small{display:block;margin-top:18px;color:#bac4d9}.admin-page{min-height:100vh;padding:28px;background:radial-gradient(circle at top right,rgba(168,73,255,.18),transparent 35%),#060711;color:#fff}.admin-head{margin:0 0 22px}.admin-head a{color:#8dfcff;text-decoration:none}.admin-head h1{margin:14px 0 4px}.admin-grid{display:grid;grid-template-columns:380px 1fr;gap:20px;align-items:start}.admin-card{padding:22px;overflow:auto}.small-page{max-width:560px;margin:auto}.user-table{width:100%;border-collapse:collapse}.user-table th,.user-table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.10);vertical-align:top;text-align:left}.inline-form{display:inline-flex;gap:6px;margin:2px}.inline-form input{width:150px;padding:8px}.inline-form button,.danger-mini{border:0;border-radius:10px;padding:8px 10px;background:rgba(0,247,255,.16);color:#fff;cursor:pointer}.danger-mini{background:rgba(255,60,100,.22)!important}@media(max-width:900px){.admin-grid{grid-template-columns:1fr}.user-table{font-size:13px}}


/* V4.4 - Usabilità calendario e select dark */
.calendar-zone.neo-card{background:linear-gradient(180deg,rgba(18,32,52,.94),rgba(9,18,32,.96));}
.month-calendar{background:rgba(18,30,48,.72);}
.weekdays div{background:rgba(91,116,151,.22);color:#f3f8ff;text-shadow:0 0 8px rgba(255,255,255,.24)}
.day{background:linear-gradient(180deg,rgba(18,32,52,.88),rgba(12,24,41,.92));}
.day:nth-child(odd){background:linear-gradient(180deg,rgba(20,36,58,.90),rgba(14,27,45,.94));}
.day.muted{opacity:.52;background:rgba(14,22,34,.74)}
.daynum{color:#f7fbff;text-shadow:0 0 10px rgba(255,255,255,.35)}
.neon-event{min-height:52px;padding:7px 8px 7px 31px;border-width:2px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--doc) 33%,rgba(18,32,52,.9)),rgba(9,18,32,.78))!important;box-shadow:0 0 18px color-mix(in srgb,var(--doc) 34%,transparent), inset 0 0 18px rgba(255,255,255,.035)}
.neon-event.dark-doc{border-color:#55647f!important;background:linear-gradient(135deg,rgba(17,17,17,.92),rgba(26,38,61,.76))!important;box-shadow:0 0 18px rgba(163,64,255,.34),0 0 10px rgba(255,255,255,.12), inset 0 0 16px rgba(255,255,255,.04)}
.neon-event.dark-doc .evt-main,.neon-event.dark-doc .evt-sub{color:#ffffff!important;text-shadow:0 0 8px rgba(255,255,255,.3)}
.evt-main{font-size:13px;line-height:1.18;letter-spacing:.2px}
.evt-sub{font-size:12px;line-height:1.18;color:#ecf2fb;text-shadow:0 0 7px rgba(0,0,0,.55)}
.delivery.compact strong{font-size:15px;text-transform:uppercase;letter-spacing:.25px}.delivery.compact span{font-size:13px;color:#f1f6ff}.delivery.compact{padding:11px 12px}
select, .admin-page select, .login-form select{appearance:none;-webkit-appearance:none;background:#07101d!important;color:#f8fbff!important;border:1px solid rgba(163,64,255,.45)!important;box-shadow:inset 0 0 14px rgba(163,64,255,.10),0 0 10px rgba(0,216,255,.08);background-image:linear-gradient(45deg,transparent 50%,#d399ff 50%),linear-gradient(135deg,#d399ff 50%,transparent 50%)!important;background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%!important;background-size:6px 6px,6px 6px!important;background-repeat:no-repeat!important;padding-right:38px!important}
select option{background:#07101d;color:#f8fbff}.admin-page select option{background:#07101d;color:#f8fbff}.admin-page select:focus,input:focus,textarea:focus,select:focus{outline:none;border-color:rgba(0,216,255,.75)!important;box-shadow:0 0 0 3px rgba(0,216,255,.10),0 0 18px rgba(0,216,255,.18)!important}


/* V4.5 tooltip globale: non viene tagliato dal calendario */
.mmd-tooltip-global{position:fixed;z-index:999999;min-width:240px;max-width:320px;padding:12px 14px;border-radius:14px;background:linear-gradient(180deg,rgba(9,18,32,.98),rgba(4,8,16,.98));border:1px solid rgba(0,216,255,.58);color:#f8fbff;font-size:12px;line-height:1.45;text-transform:none;font-weight:700;box-shadow:0 22px 60px rgba(0,0,0,.62),0 0 28px rgba(0,216,255,.30);pointer-events:none;white-space:pre-line;opacity:0;transform:translateY(4px);transition:opacity .12s ease, transform .12s ease}.mmd-tooltip-global.show{opacity:1;transform:translateY(0)}
.neon-event[data-tooltip]{overflow:visible}.day{overflow:visible}.month-calendar{overflow:visible}.calendar-zone{overflow:visible}


/* V4.6 - colori più leggibili + registro modifiche in agenda */
.calendar-zone.neo-card{
  background:linear-gradient(180deg,rgba(24,42,66,.97),rgba(13,26,44,.98))!important;
  border-color:rgba(125,166,210,.24)!important;
}
.month-calendar{
  background:linear-gradient(180deg,rgba(26,43,68,.86),rgba(18,35,58,.92))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 0 28px rgba(0,216,255,.05);
}
.day{background:linear-gradient(180deg,rgba(27,46,73,.90),rgba(18,36,60,.94))!important;border-color:rgba(155,185,220,.15)!important;}
.day:nth-child(odd){background:linear-gradient(180deg,rgba(30,51,80,.92),rgba(20,39,64,.95))!important;}
.day.muted{opacity:.58;background:rgba(18,27,42,.78)!important;}
.weekdays div{background:linear-gradient(180deg,rgba(78,104,139,.34),rgba(50,75,108,.28))!important;border-color:rgba(180,210,245,.14)!important;}
.neon-event{filter:saturate(1.18) brightness(1.08);}
.neon-event[style*="#5b2b16"], .neon-event[style*="#5B2B16"]{
  background:linear-gradient(135deg,rgba(91,43,22,.78),rgba(18,32,52,.80))!important;
  box-shadow:0 0 20px rgba(91,43,22,.58),inset 0 0 18px rgba(255,255,255,.035)!important;
}
.neon-event[style*="#ff1638"], .neon-event[style*="#FF1638"]{
  background:linear-gradient(135deg,rgba(255,22,56,.52),rgba(18,32,52,.80))!important;
  box-shadow:0 0 22px rgba(255,22,56,.48),inset 0 0 18px rgba(255,255,255,.035)!important;
}
.log-preview h3{display:flex;align-items:center;justify-content:space-between}.log-item{width:100%;display:grid;grid-template-columns:85px 1fr;gap:5px;text-align:left;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.045);color:#fff;padding:10px 11px;margin:8px 0;cursor:pointer}.log-item:hover{border-color:rgba(0,216,255,.55);box-shadow:0 0 16px rgba(0,216,255,.15)}.log-item strong{color:#ffe36e;text-transform:uppercase;font-size:12px}.log-item span{color:#f5f8ff;font-size:12px}.log-item small{grid-column:1 / -1;color:#8ea1bb;font-size:11px;margin:0}.log-modal{max-width:980px}.muted-note{color:#9fb2ca;margin-top:-5px}.log-table{display:grid;gap:6px;margin:16px 0;max-height:58vh;overflow:auto}.log-head,.log-row{display:grid;grid-template-columns:150px 110px 150px 1fr;gap:10px;align-items:center}.log-head{color:#ffe36e;text-transform:uppercase;font-size:11px;font-weight:900;padding:0 10px}.log-row{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:10px;color:#eef6ff}.log-row span{font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis}.log-empty{padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:14px;color:#bac4d9}.log-full-link{text-align:center;text-decoration:none;display:block}.admin-page select option{background:#07101d!important;color:#f8fbff!important}.admin-page select{background-color:#07101d!important;color:#fff!important;}
@media(max-width:900px){.log-head,.log-row{grid-template-columns:1fr}.log-head{display:none}}

/* V4.7 - Ricerca rapida globale */
.searchbox-wrap{position:relative;flex:1;min-width:260px}.searchbox-wrap input{width:100%}.quick-results{display:none;position:absolute;z-index:9999;top:calc(100% + 8px);left:0;right:0;max-height:390px;overflow:auto;padding:10px;border-radius:16px;background:linear-gradient(180deg,rgba(9,18,32,.98),rgba(5,10,19,.98));border:1px solid rgba(0,216,255,.48);box-shadow:0 24px 70px rgba(0,0,0,.62),0 0 30px rgba(0,216,255,.18);backdrop-filter:blur(10px)}.quick-results.open{display:block}.quick-result{display:block;width:100%;text-align:left;border:1px solid rgba(255,255,255,.10);border-radius:13px;background:rgba(255,255,255,.045);color:#f8fbff;padding:11px 12px;margin:7px 0;cursor:pointer}.quick-result:hover{border-color:rgba(247,189,24,.70);background:linear-gradient(90deg,rgba(247,189,24,.16),rgba(163,64,255,.10));box-shadow:0 0 18px rgba(247,189,24,.18)}.quick-result strong{display:block;color:#fff;font-size:15px;text-transform:uppercase}.quick-result span{display:block;color:#8dfcff;font-size:12px;margin-top:3px}.quick-result small{display:block;color:#99a8bd;font-size:11px;margin-top:4px}.quick-empty{padding:13px;color:#cbd5e1}.quick-empty b{color:#ffe36e}

/* V4.7 - Ricerca: evidenzia il lavoro trovato */
.neon-event.search-hit{animation:searchPulse 1s ease-in-out infinite!important;z-index:30}.neon-event.search-hit::after{content:'TROVATO';position:absolute;right:6px;bottom:4px;font-size:9px;font-weight:900;color:#030711;background:#ffe36e;border-radius:999px;padding:2px 6px;box-shadow:0 0 12px rgba(255,227,110,.65)}@keyframes searchPulse{0%,100%{transform:scale(1);box-shadow:0 0 18px var(--doc),0 0 0 rgba(255,227,110,0)}50%{transform:scale(1.045);box-shadow:0 0 36px #ffe36e,0 0 18px var(--doc)}}

/* V4.7 disinnescato: il lampeggio ritardi moderno e definito in fondo al file. */

/* V4.8 - ricerca pulita, calendario un po' più chiaro, consegnati barrati in nero */
.searchbar.global-search select[name="stato"]{display:none!important;}
.searchbar.global-search{align-items:stretch;}
.searchbar.global-search .searchbox-wrap{flex:1 1 auto;}
.calendar-zone.neo-card{
  background:linear-gradient(180deg,rgba(31,52,80,.98),rgba(18,36,60,.98))!important;
  border-color:rgba(165,202,240,.27)!important;
}
.month-calendar{
  background:linear-gradient(180deg,rgba(34,57,88,.92),rgba(23,45,74,.94))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.045),0 0 34px rgba(0,216,255,.07)!important;
}
.day{
  background:linear-gradient(180deg,rgba(38,63,96,.92),rgba(25,48,78,.96))!important;
  border-color:rgba(185,214,248,.18)!important;
}
.day:nth-child(odd){
  background:linear-gradient(180deg,rgba(42,68,102,.93),rgba(28,52,84,.96))!important;
}
.weekdays div{
  background:linear-gradient(180deg,rgba(93,121,158,.40),rgba(61,88,124,.34))!important;
}
.neon-event.done .evt-main,
.neon-event.done .evt-sub{
  text-decoration-line:line-through!important;
  text-decoration-color:#02040a!important;
  text-decoration-thickness:3px!important;
  text-decoration-skip-ink:none!important;
}
.neon-event.done::before{
  content:'';
  position:absolute;
  left:5px;right:5px;top:50%;height:3px;
  background:#02040a;
  opacity:.82;
  transform:translateY(-50%);
  pointer-events:none;
  border-radius:999px;
  box-shadow:0 0 4px rgba(0,0,0,.75);
}
.neon-event.done .state{filter:drop-shadow(0 0 5px #02040a)}

/* V4.9 - colore denti, gestione admin completa, ritardi cliccabili */
.metric-button{border:0;text-align:left;font-family:inherit;cursor:pointer;width:100%}
.metric-button:hover{transform:translateY(-2px);filter:brightness(1.08)}
.neo-nav button, .neo-nav .navlink{font-size:15px}
.neon-event.done{text-decoration:line-through!important;text-decoration-color:#02040a!important;text-decoration-thickness:1.5px!important;text-decoration-skip-ink:auto!important;opacity:.72}
.neon-event.done::before{height:1px!important;left:10px!important;right:10px!important;opacity:.7!important;box-shadow:none!important}
.overdue-list>div{padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.05);margin:8px 0}.overdue-list small{color:#cbd5e1}
.admin-grid{grid-template-columns:minmax(320px,420px) 1fr!important}.wide-card{min-width:0}.user-list-cards{display:flex;flex-direction:column;gap:14px}.user-edit-card{border:1px solid rgba(255,255,255,.12);background:rgba(10,18,34,.72);border-radius:18px;padding:14px;box-shadow:0 0 18px rgba(102,70,255,.08)}.user-edit-card.disabled{opacity:.55}.user-edit-grid{display:grid;grid-template-columns:1.2fr 1fr 150px 100px 80px;gap:10px;align-items:end}.user-edit-grid label{margin:0}.user-state{padding:12px 10px;border-radius:12px;background:rgba(255,255,255,.06);font-weight:800}.dot{display:inline-block;width:10px;height:10px;border-radius:999px;margin-right:7px}.dot.ok{background:#22c55e;box-shadow:0 0 10px #22c55e}.dot.off{background:#ef4444;box-shadow:0 0 10px #ef4444}.small-btn{height:44px}.user-actions-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.reset-form{flex:1;min-width:260px}.reset-form input{min-width:170px}.admin-page select,.form-grid select,.user-edit-grid select{background:#172033!important;color:#f8fafc!important;border:1px solid rgba(139,92,246,.6)!important;border-radius:14px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 0 16px rgba(139,92,246,.12)!important}.admin-page select option,.form-grid select option{background:#111827;color:#f8fafc}.form-grid select:focus,.admin-page select:focus{outline:none;border-color:#22d3ee!important;box-shadow:0 0 0 3px rgba(34,211,238,.16),0 0 16px rgba(34,211,238,.25)!important}
@media (max-width:1200px){.admin-grid{grid-template-columns:1fr!important}.user-edit-grid{grid-template-columns:1fr 1fr}.user-state,.small-btn{height:auto}}


/* ==========================================================
   V5.9 LOGIN CYBER ONLY - sostituisce SOLO la schermata login
   Mantiene palette attuale: blu scuro / ciano / oro.
   ========================================================== */
.login-cyber-page{
  min-height:100vh!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  color:#f7fbff!important;
  background:
    radial-gradient(circle at 50% 18%, rgba(0,216,255,.22), transparent 34%),
    radial-gradient(circle at 50% 76%, rgba(255,183,38,.16), transparent 30%),
    linear-gradient(145deg,#061326 0%,#091b35 34%,#07101f 68%,#050913 100%)!important;
  font-family:Inter,Segoe UI,Arial,sans-serif!important;
}
.login-cyber-page *{box-sizing:border-box!important}
.login-cyber-page .cyber-bg{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.login-cyber-page .cyber-bg:before{
  content:"";position:absolute;inset:-2px;
  background-image:
    linear-gradient(rgba(110,220,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(110,220,255,.08) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(circle at center,rgba(0,0,0,.9),transparent 78%);
}
.login-cyber-page .cyber-bg:after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg,transparent 0 12%,rgba(255,190,58,.30) 12.2%,transparent 12.45% 88%,rgba(0,225,255,.18) 88.2%,transparent 88.45%),
    linear-gradient(0deg,transparent 0 9%,rgba(255,190,58,.14) 9.15%,transparent 9.35% 91%,rgba(0,225,255,.10) 91.15%,transparent 91.35%);
  opacity:.85;
}
.login-cyber-page .circuit{position:absolute;border:1px solid rgba(255,199,71,.28);filter:drop-shadow(0 0 14px rgba(255,199,71,.12))}
.login-cyber-page .c1{width:38vw;height:38vw;left:-16vw;top:-14vw;border-radius:8px;transform:rotate(45deg)}
.login-cyber-page .c2{width:32vw;height:32vw;right:-12vw;bottom:-11vw;border-radius:12px;transform:rotate(45deg)}
.login-cyber-page .c3{width:70vw;height:70vw;left:15vw;top:8vh;border-radius:50%;border-color:rgba(0,220,255,.08)}
.login-cyber-page .scanline{position:absolute;left:-20%;top:0;width:140%;height:2px;background:linear-gradient(90deg,transparent,rgba(0,255,255,.42),rgba(255,202,66,.32),transparent);animation:scanMove 5.6s linear infinite;opacity:.65}
@keyframes scanMove{0%{transform:translateY(-8vh)}100%{transform:translateY(108vh)}}

.cyber-login-shell{
  position:relative;z-index:1;width:min(520px,92vw);min-height:min(860px,94vh);
  padding:44px 42px 38px!important;
  border-radius:34px!important;
  background:linear-gradient(180deg,rgba(9,24,48,.88),rgba(5,10,23,.94))!important;
  border:1px solid rgba(255,202,66,.42)!important;
  box-shadow:
    0 0 0 1px rgba(0,216,255,.13) inset,
    0 0 55px rgba(0,216,255,.15),
    0 0 70px rgba(255,183,38,.11)!important;
  overflow:hidden!important;
}
.cyber-login-shell:before{
  content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.09);border-radius:26px;pointer-events:none;
  box-shadow:inset 0 0 40px rgba(0,216,255,.07)
}
.cyber-login-shell:after{
  content:"";position:absolute;left:8%;right:8%;top:0;height:1px;background:linear-gradient(90deg,transparent,#ffd66d,transparent);opacity:.9
}
.cyber-login-shell .corner{position:absolute;width:74px;height:74px;border-color:rgba(255,202,66,.52);pointer-events:none;filter:drop-shadow(0 0 8px rgba(255,202,66,.24))}
.cyber-login-shell .tl{top:18px;left:18px;border-top:1px solid;border-left:1px solid}
.cyber-login-shell .tr{top:18px;right:18px;border-top:1px solid;border-right:1px solid}
.cyber-login-shell .bl{bottom:18px;left:18px;border-bottom:1px solid;border-left:1px solid}
.cyber-login-shell .br{bottom:18px;right:18px;border-bottom:1px solid;border-right:1px solid}

.cyber-seal-wrap{position:relative;width:310px;height:310px;margin:0 auto 24px!important;display:grid;place-items:center;perspective:900px}
.orbital{position:absolute;border-radius:50%;border:1px solid rgba(255,209,86,.44);box-shadow:0 0 26px rgba(255,195,52,.18), inset 0 0 30px rgba(0,216,255,.05)}
.orbital-1{width:292px;height:292px;animation:spinSeal 38s linear infinite}
.orbital-2{width:246px;height:246px;border-color:rgba(0,216,255,.20);animation:spinSeal 28s linear infinite reverse}
.orbital-3{width:206px;height:206px;border-style:dashed;border-color:rgba(255,255,255,.16);animation:spinSeal 58s linear infinite}
@keyframes spinSeal{to{transform:rotate(360deg)}}
.seal-dots i{position:absolute;top:50%;width:9px;height:9px;border-radius:50%;background:#f9f9f1;box-shadow:0 0 18px rgba(255,210,82,.75)}
.seal-dots i:first-child{left:32px}.seal-dots i:last-child{right:32px}
.cyber-seal{position:relative;width:230px;height:230px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,rgba(0,0,0,.55),rgba(3,8,15,.92));border:1px solid rgba(255,255,255,.55);box-shadow:0 0 30px rgba(255,209,86,.20),inset 0 0 38px rgba(0,216,255,.08)}
.cyber-seal:before{content:"";position:absolute;inset:18px;border-radius:50%;border:1px solid rgba(255,255,255,.28)}
.seal-logo-core{position:absolute;width:132px;height:132px;border-radius:50%;display:grid;place-items:center;background:#02050a;overflow:hidden;box-shadow:0 0 28px rgba(0,216,255,.10),inset 0 0 18px rgba(255,202,66,.08)}
.cyber-login-logo{width:118px!important;height:118px!important;object-fit:cover!important;object-position:center!important;display:block!important;transform:scale(1.62)!important;filter:drop-shadow(0 0 10px rgba(255,202,66,.25))}
.seal-text{position:absolute;left:0;right:0;text-align:center;color:#f7f7f0;font-weight:800;letter-spacing:.42em;font-size:14px;line-height:1;text-shadow:0 0 12px rgba(255,255,255,.20)}
.seal-top{top:30px}.seal-bottom{bottom:30px;transform:rotate(180deg)}

.cyber-login-card{position:relative;z-index:2;text-align:center!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;width:100%!important}
.login-title-block h1{margin:8px 0 6px!important;font-size:34px!important;letter-spacing:.38em!important;font-weight:900!important;color:#fff!important;text-shadow:0 0 18px rgba(255,215,84,.22)}
.login-title-block h1::first-letter{color:#ffc936!important;text-shadow:0 0 18px rgba(255,201,54,.45)}
.login-title-block p{margin:0 0 28px!important;color:#dfeaff!important;font-size:18px!important;letter-spacing:.08em!important}
.cyber-login-form{width:100%!important;margin:0!important;padding:0!important}
.cyber-field{position:relative;display:block!important;margin:14px 0 18px!important;text-align:left!important}
.cyber-field .field-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);z-index:2;color:#cfe3ff;opacity:.9;font-size:18px}
.cyber-field input{
  height:56px!important;width:100%!important;padding:0 18px 0 54px!important;border-radius:10px!important;
  background:rgba(7,18,36,.68)!important;color:#fff!important;border:1px solid rgba(255,255,255,.19)!important;
  box-shadow:inset 0 0 18px rgba(0,216,255,.08)!important;font-size:15px!important;outline:none!important;
}
.cyber-field input:focus{border-color:rgba(0,236,255,.75)!important;box-shadow:0 0 0 3px rgba(0,216,255,.16),0 0 24px rgba(0,216,255,.22),inset 0 0 18px rgba(0,216,255,.12)!important}
.login-options{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:12px 0 24px;color:#c8d3e6;font-size:14px!important}
.login-options input{width:auto!important;margin-right:8px;accent-color:#ffd15a}.fake-link{color:#ffd15a;text-shadow:0 0 12px rgba(255,209,90,.22)}
.cyber-access-btn{height:58px!important;border-radius:10px!important;border:1px solid rgba(255,255,255,.18)!important;background:linear-gradient(180deg,#ffd976,#b97815)!important;color:#07101d!important;font-weight:900!important;letter-spacing:.36em!important;box-shadow:0 0 28px rgba(255,198,55,.28), inset 0 1px 0 rgba(255,255,255,.30)!important;text-transform:uppercase!important}
.cyber-access-btn:hover{filter:brightness(1.08);box-shadow:0 0 36px rgba(255,198,55,.42)!important}
.login-footer-brand{margin-top:34px!important;display:flex!important;flex-direction:column!important;gap:5px!important;color:#b7c3d7!important;font-size:14px!important}
.login-footer-brand strong{color:#ffd15a!important;font-size:15px!important}.login-footer-brand small{color:#91a0ba!important;margin-top:2px!important}
.login-cyber-page .flash{position:relative;z-index:5;text-align:left!important}
@media(max-height:820px){.cyber-login-shell{min-height:auto;padding:28px 36px!important}.cyber-seal-wrap{width:240px;height:240px;margin-bottom:12px!important}.orbital-1{width:232px;height:232px}.orbital-2{width:198px;height:198px}.orbital-3{width:170px;height:170px}.cyber-seal{width:188px;height:188px}.seal-logo-core{width:106px;height:106px}.cyber-login-logo{width:96px!important;height:96px!important}.seal-text{font-size:11px}.seal-top{top:24px}.seal-bottom{bottom:24px}.login-title-block h1{font-size:28px!important}.cyber-field input{height:50px!important}.cyber-access-btn{height:52px!important}.login-footer-brand{margin-top:20px!important}}
@media(max-width:560px){.cyber-login-shell{width:94vw;padding:28px 22px!important;border-radius:26px!important}.cyber-seal-wrap{width:230px;height:230px}.orbital-1{width:222px;height:222px}.orbital-2{width:190px;height:190px}.orbital-3{width:162px;height:162px}.cyber-seal{width:180px;height:180px}.seal-logo-core{width:102px;height:102px}.cyber-login-logo{width:94px!important;height:94px!important}.login-title-block h1{font-size:26px!important;letter-spacing:.28em!important}.login-title-block p{font-size:15px!important}.login-options{font-size:12px!important}}

/* =========================================================
   V6.0 LOGIN EXACT - schermata login futuristica come mockup
   Modifica SOLO il login. Agenda interna invariata.
   ========================================================= */
.login-exact-page{
  margin:0!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 9%, rgba(255,198,58,.20), transparent 24%),
    radial-gradient(circle at 50% 58%, rgba(255,198,58,.08), transparent 28%),
    linear-gradient(180deg,#02070d 0%,#040911 48%,#02050a 100%)!important;
  color:#fff!important;
  font-family: Inter, Segoe UI, Arial, sans-serif!important;
}
.login-exact-page::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,211,79,.035) 1px, transparent 1px),
    linear-gradient(90deg,rgba(255,211,79,.028) 1px, transparent 1px);
  background-size:32px 32px;
  mask-image:radial-gradient(circle at center, #000 0 70%, transparent 100%);
}
.login-exact-page::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(255,199,55,.05),transparent);
  animation:loginExactScan 6s linear infinite;
  opacity:.55;
}
@keyframes loginExactScan{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}
.login-exact-panel{
  position:relative;
  z-index:2;
  width:min(96vw, 650px);
  aspect-ratio:2/3;
  max-height:96dvh;
  background-image:url("/static/login_cyber_exact.png");
  background-size:100% 100%;
  background-position:center;
  background-repeat:no-repeat;
  filter:drop-shadow(0 0 38px rgba(255,196,45,.20));
  transform:translateZ(0);
}
.login-exact-form{
  position:absolute;
  inset:0;
  margin:0!important;
  padding:0!important;
  width:100%!important;
  height:100%!important;
}
.login-exact-input{
  position:absolute!important;
  left:30.7%!important;
  width:49.6%!important;
  height:4.15%!important;
  padding:0 18px!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#f8fbff!important;
  font-size:clamp(14px,1.65vw,21px)!important;
  letter-spacing:.07em!important;
  box-shadow:none!important;
  border-radius:0!important;
  caret-color:#ffd35a!important;
}
.login-exact-input::placeholder{color:transparent!important}
.login-exact-user{top:58.45%!important}
.login-exact-pass{top:66.75%!important}
.login-exact-input:-webkit-autofill,
.login-exact-input:-webkit-autofill:hover,
.login-exact-input:-webkit-autofill:focus{
  -webkit-text-fill-color:#fff!important;
  transition:background-color 9999s ease-in-out 0s!important;
  box-shadow:0 0 0px 1000px transparent inset!important;
}
.login-exact-remember{
  position:absolute!important;
  left:20.9%!important;
  top:74.55%!important;
  width:5.0%!important;
  height:3.2%!important;
  cursor:pointer;
}
.login-exact-remember input{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  opacity:0!important;
  cursor:pointer!important;
}
.login-exact-remember span{
  position:absolute;
  inset:0;
  border:1px solid rgba(255,197,56,.9);
  background:rgba(0,0,0,.25);
  box-shadow:0 0 12px rgba(255,197,56,.22);
}
.login-exact-remember input:checked + span::after{
  content:"✓";
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-54%);
  color:#ffd35a;
  font-weight:900;
  font-size:clamp(15px,2vw,24px);
  text-shadow:0 0 10px rgba(255,211,90,.75);
}
.login-exact-button{
  position:absolute!important;
  left:19.1%!important;
  top:78.75%!important;
  width:61.8%!important;
  height:5.8%!important;
  border:0!important;
  background:transparent!important;
  cursor:pointer!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
.login-exact-button:hover{box-shadow:0 0 28px rgba(255,210,74,.33)!important;background:rgba(255,210,74,.035)!important}
.login-exact-button:active{transform:scale(.99)}
.login-exact-flashes{
  position:fixed;
  z-index:20;
  top:20px;
  left:50%;
  transform:translateX(-50%);
  width:min(560px,92vw);
}
.login-exact-flashes .flash{
  margin:0!important;
  border-radius:14px!important;
  padding:12px 16px!important;
  background:rgba(10,15,24,.92)!important;
  border:1px solid rgba(255,205,68,.55)!important;
  color:#fff!important;
  box-shadow:0 0 24px rgba(255,205,68,.18)!important;
}
.login-exact-flashes .flash.error{border-color:rgba(255,80,90,.75)!important;box-shadow:0 0 24px rgba(255,80,90,.18)!important}
@media (max-aspect-ratio: 2/3){
  .login-exact-panel{width:96vw;max-height:none;}
}
@media (min-aspect-ratio: 2/3){
  .login-exact-panel{height:96dvh;width:auto;}
}

/* =========================================================
   V6.1 LOGIN HUD INTERACTIVE
   Login ricostruito con campi REALI: niente immagine stampata
   con input sovrapposti. Agenda interna invariata.
   ========================================================= */
.login-hud-page{
  min-height:100vh!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background:
    radial-gradient(circle at 50% 22%,rgba(247,189,24,.14),transparent 24%),
    radial-gradient(circle at 50% 58%,rgba(0,216,255,.10),transparent 31%),
    linear-gradient(180deg,#071226 0%,#030711 62%,#02040a 100%)!important;
  color:#eef6ff!important;
  font-family:Inter,Segoe UI,Arial,sans-serif!important;
}
.login-hud-page:before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.38;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
    radial-gradient(circle at 20% 20%,rgba(247,189,24,.18),transparent 2px),
    radial-gradient(circle at 82% 32%,rgba(247,189,24,.16),transparent 2px),
    radial-gradient(circle at 62% 82%,rgba(0,216,255,.10),transparent 2px);
  background-size:64px 64px,64px 64px,220px 220px,260px 260px,300px 300px;
}
.login-hud-page:after{
  content:"";position:fixed;left:-20%;top:0;width:140%;height:2px;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(247,189,24,.65),rgba(0,216,255,.35),transparent);
  box-shadow:0 0 26px rgba(247,189,24,.55);opacity:.55;animation:hudScan 6.5s linear infinite;
}
@keyframes hudScan{0%{transform:translateY(-5vh)}100%{transform:translateY(105vh)}}
.hud-noise{position:fixed;inset:0;pointer-events:none;opacity:.08;background:repeating-linear-gradient(0deg,rgba(255,255,255,.08) 0 1px,transparent 1px 3px);mix-blend-mode:screen}
.hud-frame{position:fixed;inset:18px;pointer-events:none;border:1px solid rgba(247,189,24,.26);box-shadow:inset 0 0 70px rgba(0,216,255,.045),0 0 24px rgba(247,189,24,.08);clip-path:polygon(2% 0,98% 0,100% 3%,100% 97%,98% 100%,2% 100%,0 97%,0 3%)}
.hf{position:absolute;width:110px;height:110px;border-color:rgba(247,189,24,.65);filter:drop-shadow(0 0 10px rgba(247,189,24,.35))}.hf-tl{left:0;top:0;border-left:2px solid;border-top:2px solid}.hf-tr{right:0;top:0;border-right:2px solid;border-top:2px solid}.hf-bl{left:0;bottom:0;border-left:2px solid;border-bottom:2px solid}.hf-br{right:0;bottom:0;border-right:2px solid;border-bottom:2px solid}
.hud-status{position:fixed;z-index:2;color:#aebbd0;letter-spacing:.10em;font-size:13px;text-transform:uppercase}.hud-left{left:60px;top:52px;display:flex;flex-direction:column;gap:48px}.hud-left b{display:block;color:#ffd24c;font-size:17px;margin-bottom:8px}.hud-left span{display:block;color:#96a5bb;margin-top:5px}.hud-line{position:relative;padding-left:30px}.hud-line i{position:absolute;left:0;top:2px;color:#ffd24c;font-style:normal;text-shadow:0 0 12px rgba(247,189,24,.45)}.hud-right{right:58px;top:58px;text-align:right}.hud-dots{display:flex;gap:10px;justify-content:flex-end;margin-bottom:42px}.hud-dots span{width:10px;height:10px;border-radius:50%;background:#ffd24c;box-shadow:0 0 16px rgba(247,189,24,.8)}.hud-meter{border:1px solid rgba(247,189,24,.28);padding:16px 18px;border-radius:4px;background:rgba(5,10,20,.38);min-width:170px}.hud-meter b{display:block;color:#ffd24c}.hud-meter span{display:block;margin:7px 0;color:#e8effa}.hud-meter em{display:block;height:5px;border-radius:999px;background:linear-gradient(90deg,#ffd24c,#00d8ff);box-shadow:0 0 12px rgba(247,189,24,.5)}
.login-hud-shell{position:relative;z-index:3;width:min(720px,92vw);height:min(94vh,1040px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 0 30px}.hud-emblem{position:relative;width:min(430px,70vw);height:min(430px,70vw);display:grid;place-items:center;margin-bottom:18px}.hud-ring{position:absolute;border-radius:50%;border:1px solid rgba(247,189,24,.55);box-shadow:0 0 18px rgba(247,189,24,.35),inset 0 0 25px rgba(247,189,24,.10)}.ring-a{inset:0;animation:ringSpin 28s linear infinite}.ring-b{inset:32px;border-style:dashed;opacity:.75;animation:ringSpinReverse 22s linear infinite}.ring-c{inset:70px;border-color:rgba(255,255,255,.42);box-shadow:0 0 26px rgba(255,255,255,.12)}.hud-ring:before,.hud-ring:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#ffd24c;box-shadow:0 0 18px #ffd24c}.hud-ring:before{left:50%;top:-5px}.hud-ring:after{left:50%;bottom:-5px}.hud-cross{position:absolute;background:linear-gradient(90deg,transparent,rgba(247,189,24,.5),transparent);opacity:.75}.cross-h{height:1px;width:118%;top:50%;left:-9%}.cross-v{width:1px;height:118%;left:50%;top:-9%;background:linear-gradient(180deg,transparent,rgba(247,189,24,.5),transparent)}
@keyframes ringSpin{to{transform:rotate(360deg)}}@keyframes ringSpinReverse{to{transform:rotate(-360deg)}}
.emblem-core{position:relative;width:260px;height:260px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(8,13,23,.92),rgba(2,5,10,.72));border:1px solid rgba(255,255,255,.55);box-shadow:0 0 38px rgba(247,189,24,.30),inset 0 0 35px rgba(0,216,255,.08)}.emblem-core:before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.22);border-radius:50%}.emblem-core img{width:128px;height:128px;object-fit:contain;filter:drop-shadow(0 0 14px rgba(247,189,24,.28))}.emblem-text{position:absolute;color:#fff;font-weight:800;letter-spacing:.40em;font-size:18px;text-shadow:0 0 14px rgba(255,255,255,.25)}.emblem-text.top{top:30px}.emblem-text.bottom{bottom:30px;transform:rotate(180deg)}
.login-hud-card{width:min(610px,88vw);text-align:center}.login-hud-title h1{margin:0;color:#ffd24c;font-size:clamp(34px,5vw,56px);letter-spacing:.34em;text-indent:.34em;text-shadow:0 0 28px rgba(247,189,24,.38);font-weight:900}.login-hud-title p{margin:10px 0 30px;color:#e6edf8;font-size:clamp(16px,2vw,23px);letter-spacing:.18em;font-weight:600}.login-hud-form{display:flex;flex-direction:column;gap:20px}.hud-field{position:relative;display:block!important;margin:0!important;text-transform:none!important}.hud-field input{height:70px!important;width:100%!important;border:1px solid rgba(247,189,24,.65)!important;border-radius:5px!important;background:rgba(3,8,18,.58)!important;color:#ffffff!important;font-size:18px!important;letter-spacing:.10em!important;padding:0 64px 0 82px!important;outline:none!important;box-shadow:inset 0 0 24px rgba(0,0,0,.34),0 0 12px rgba(247,189,24,.12)!important;text-transform:uppercase}.hud-field input::placeholder{color:rgba(255,255,255,.62)!important}.hud-field input:focus{border-color:rgba(0,216,255,.85)!important;box-shadow:0 0 0 3px rgba(0,216,255,.15),0 0 28px rgba(0,216,255,.25),inset 0 0 22px rgba(0,216,255,.08)!important}.hud-icon{position:absolute;left:26px;top:50%;transform:translateY(-50%);z-index:2;color:#ffd24c;font-size:28px;text-shadow:0 0 18px rgba(247,189,24,.5)}.hud-eye{position:absolute;right:24px;top:50%;transform:translateY(-50%);z-index:2;color:#f3f7ff;font-size:22px;opacity:.9}.hud-remember{display:flex!important;align-items:center;gap:13px;color:#d0daea;letter-spacing:.12em;font-weight:500!important;text-transform:uppercase!important;margin:2px 0 18px!important;text-align:left!important}.hud-remember input{width:26px!important;height:26px!important;margin:0!important;accent-color:#ffd24c;background:#06101e}.hud-login-btn{height:74px!important;border:1px solid rgba(247,189,24,.9)!important;border-radius:6px!important;background:linear-gradient(180deg,rgba(255,224,117,.10),rgba(247,189,24,.045))!important;color:#ffd24c!important;font-size:26px!important;font-weight:900!important;letter-spacing:.38em!important;text-indent:.38em!important;box-shadow:0 0 24px rgba(247,189,24,.23),inset 0 0 24px rgba(247,189,24,.07)!important;cursor:pointer;text-transform:uppercase!important}.hud-login-btn:hover{background:linear-gradient(180deg,rgba(255,224,117,.18),rgba(247,189,24,.08))!important;box-shadow:0 0 36px rgba(247,189,24,.42),inset 0 0 30px rgba(247,189,24,.10)!important}.hud-login-footer{margin-top:54px;text-align:center;text-transform:uppercase;letter-spacing:.15em}.hud-login-footer strong{display:block;color:#ffd24c;font-size:19px;margin-bottom:10px}.hud-login-footer span{display:block;color:#aebbd0;font-size:15px}.hud-login-footer small{display:block;color:#8e9bb0;margin-top:14px;font-size:15px}.login-hud-flashes{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:9;width:min(620px,92vw)}.login-hud-flashes .flash{border:1px solid rgba(255,210,74,.55);background:rgba(5,10,19,.85);color:#fff;border-radius:12px;padding:13px 16px;box-shadow:0 0 25px rgba(247,189,24,.18)}
@media(max-width:860px){.hud-status{display:none}.login-hud-shell{height:auto;min-height:100dvh;padding:30px 0}.hud-emblem{width:300px;height:300px}.emblem-core{width:200px;height:200px}.emblem-core img{width:104px;height:104px}.emblem-text{font-size:13px}.login-hud-title h1{font-size:34px}.login-hud-title p{font-size:15px}.hud-field input{height:60px!important;font-size:15px!important}.hud-login-btn{height:62px!important;font-size:20px!important}}


/* =====================================================================
   V6.2 LOGIN DEFINITIVO - solo schermata login
   Layout agenda invariato. Login ricostruito con campi reali/interattivi.
   ===================================================================== */
.login-final-page{
  min-height:100vh!important;
  width:100vw!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  color:#f7fbff!important;
  background:
    radial-gradient(circle at 50% 9%, rgba(255,210,74,.15), transparent 22%),
    radial-gradient(circle at 50% 48%, rgba(0,216,255,.12), transparent 34%),
    linear-gradient(135deg,#07102a 0%,#091936 42%,#071122 100%)!important;
  font-family:Inter,Segoe UI,Arial,sans-serif!important;
}
.login-final-page *{box-sizing:border-box!important}
.final-grid-bg{position:fixed;inset:0;pointer-events:none;z-index:0;background-image:
  linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.035) 1px, transparent 1px),
  radial-gradient(circle at 50% 22%,rgba(255,210,74,.11),transparent 34%);
  background-size:42px 42px,42px 42px,100% 100%;opacity:.55}
.final-grid-bg:after{content:"";position:absolute;inset:-25%;background:linear-gradient(115deg,transparent 0 38%,rgba(0,216,255,.14) 47%,rgba(255,210,74,.10) 51%,transparent 61%);animation:finalSweep 8s ease-in-out infinite;opacity:.8}
@keyframes finalSweep{0%,100%{transform:translateX(-12%) translateY(-7%) rotate(0deg)}50%{transform:translateX(12%) translateY(7%) rotate(2deg)}}
.final-circuit-frame{position:fixed;inset:26px 34px;z-index:1;pointer-events:none;border:1px solid rgba(255,210,74,.30);border-radius:6px;box-shadow:inset 0 0 22px rgba(255,210,74,.05),0 0 22px rgba(255,210,74,.08)}
.final-circuit-frame:before,.final-circuit-frame:after{content:"";position:absolute;inset:28px;border:1px solid rgba(255,255,255,.10);border-left-color:transparent;border-right-color:transparent}.final-circuit-frame:after{inset:54px;border-color:rgba(0,216,255,.08);border-top-color:transparent;border-bottom-color:transparent}
.final-line{position:absolute;height:2px;background:linear-gradient(90deg,transparent,rgba(255,210,74,.82),transparent);filter:drop-shadow(0 0 10px rgba(255,210,74,.45))}.final-line-top{top:-1px;left:10%;right:10%}.final-line-bottom{bottom:-1px;left:12%;right:12%}
.final-corner{position:absolute;width:92px;height:92px;border-color:rgba(255,210,74,.72);filter:drop-shadow(0 0 10px rgba(255,210,74,.35))}.final-corner-tl{top:-1px;left:-1px;border-top:2px solid;border-left:2px solid}.final-corner-tr{top:-1px;right:-1px;border-top:2px solid;border-right:2px solid}.final-corner-bl{bottom:-1px;left:-1px;border-bottom:2px solid;border-left:2px solid}.final-corner-br{bottom:-1px;right:-1px;border-bottom:2px solid;border-right:2px solid}
.final-login-panel{position:relative;z-index:2;width:min(560px,92vw);min-height:min(94vh,990px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 32px 30px;border-radius:34px;background:linear-gradient(180deg,rgba(8,18,42,.48),rgba(5,10,23,.42));box-shadow:0 0 70px rgba(0,0,0,.42),inset 0 0 45px rgba(255,255,255,.025);overflow:visible}
.final-logo-area{position:relative;width:330px;height:330px;display:grid;place-items:center;margin:0 auto 10px;filter:drop-shadow(0 0 24px rgba(255,210,74,.22))}
.final-halo{position:absolute;border-radius:50%;border:1px solid rgba(255,210,74,.65);box-shadow:0 0 28px rgba(255,210,74,.28),inset 0 0 30px rgba(255,210,74,.08)}.halo-a{width:318px;height:318px;animation:finalRotate 26s linear infinite}.halo-b{width:272px;height:272px;border-style:dashed;opacity:.85;animation:finalRotateReverse 20s linear infinite}.halo-c{width:224px;height:224px;border-color:rgba(255,255,255,.34);box-shadow:0 0 18px rgba(255,255,255,.10)}
.final-halo:before,.final-halo:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#ffd24c;box-shadow:0 0 18px #ffd24c}.final-halo:before{top:-4px;left:50%}.final-halo:after{bottom:-4px;left:50%}
.final-logo-orbit{position:absolute;width:360px;height:105px;border:2px solid rgba(255,210,74,.42);border-radius:50%;transform:rotate(-18deg);filter:blur(.15px);box-shadow:0 0 22px rgba(255,210,74,.2);animation:finalOrbit 7s ease-in-out infinite}.final-logo-orbit:after{content:"";position:absolute;right:17%;top:7px;width:6px;height:6px;border-radius:50%;background:#ffe586;box-shadow:0 0 16px #ffd24c}
.final-logo-disc{position:relative;width:224px;height:224px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,rgba(9,15,28,.95),rgba(3,6,14,.82) 65%,rgba(0,0,0,.2));border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 0 20px rgba(255,255,255,.06),0 0 22px rgba(0,216,255,.07);overflow:hidden}
.final-logo-disc:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.34);border-radius:50%}.final-logo-img{width:118px;height:118px;object-fit:contain!important;display:block!important;filter:drop-shadow(0 0 7px rgba(255,210,74,.28))}
.final-disc-text{position:absolute;left:50%;transform:translateX(-50%);font-size:15px;font-weight:800;letter-spacing:.55em;color:#fff;white-space:nowrap;text-shadow:0 0 10px rgba(255,255,255,.18)}.final-disc-top{top:34px}.final-disc-bottom{bottom:34px;transform:translateX(-50%) rotate(180deg)}
@keyframes finalRotate{to{transform:rotate(360deg)}}@keyframes finalRotateReverse{to{transform:rotate(-360deg)}}@keyframes finalOrbit{0%,100%{transform:rotate(-18deg) scale(1)}50%{transform:rotate(-6deg) scale(1.035)}}
.final-login-box{width:min(470px,100%);text-align:center;margin-top:-2px}.final-title h1{margin:0;color:#ffd24c;font-weight:900;font-size:clamp(32px,4vw,48px);letter-spacing:.38em;text-indent:.38em;text-shadow:0 0 26px rgba(255,210,74,.40)}.final-title p{margin:9px 0 28px;color:#e5ecfb;font-size:clamp(14px,1.8vw,19px);letter-spacing:.16em;font-weight:600;text-shadow:0 0 12px rgba(255,255,255,.10)}
.final-form{display:flex;flex-direction:column;gap:18px;margin:0}.final-field{position:relative;display:block!important;margin:0!important;text-align:left!important}.final-field input{width:100%!important;height:58px!important;border-radius:6px!important;border:1px solid rgba(255,210,74,.80)!important;background:rgba(4,10,23,.62)!important;color:#fff!important;font-size:16px!important;font-weight:700!important;letter-spacing:.12em!important;padding:0 62px 0 72px!important;outline:none!important;box-shadow:inset 0 0 20px rgba(0,0,0,.32),0 0 18px rgba(255,210,74,.13)!important;text-transform:uppercase!important}.final-field input::placeholder{color:rgba(255,255,255,.62)!important}.final-field input:focus{border-color:rgba(0,216,255,.95)!important;box-shadow:0 0 0 3px rgba(0,216,255,.10),0 0 28px rgba(0,216,255,.30),inset 0 0 18px rgba(0,216,255,.08)!important}.final-field-icon{position:absolute;left:25px;top:50%;transform:translateY(-50%);z-index:2;color:#ffd24c;font-size:24px;text-shadow:0 0 16px rgba(255,210,74,.55)}.final-field-eye{position:absolute;right:22px;top:50%;transform:translateY(-50%);z-index:2;color:#fff;font-size:20px;opacity:.88}.final-remember{display:flex!important;align-items:center;gap:13px;margin:2px 0 16px!important;text-align:left!important;color:#d8e0ef;letter-spacing:.12em;font-size:14px;font-weight:700;text-transform:uppercase}.final-remember input{width:22px!important;height:22px!important;margin:0!important;accent-color:#ffd24c}.final-access-btn{height:62px!important;border-radius:7px!important;border:1px solid rgba(255,210,74,.95)!important;background:linear-gradient(180deg,rgba(255,220,93,.13),rgba(255,210,74,.045))!important;color:#ffd24c!important;cursor:pointer;font-size:23px!important;font-weight:900!important;letter-spacing:.36em!important;text-indent:.36em!important;text-transform:uppercase!important;box-shadow:0 0 24px rgba(255,210,74,.25),inset 0 0 26px rgba(255,210,74,.06)!important}.final-access-btn:hover{box-shadow:0 0 36px rgba(255,210,74,.48),inset 0 0 30px rgba(255,210,74,.11)!important;background:linear-gradient(180deg,rgba(255,220,93,.20),rgba(255,210,74,.075))!important}.final-access-btn:active{transform:scale(.99)}
.final-footer{margin-top:35px;text-align:center;display:flex;flex-direction:column;gap:6px;text-transform:uppercase;letter-spacing:.14em}.final-footer strong{color:#ffd24c;font-size:17px}.final-footer span{color:#aeb9cc;font-size:13px}.final-footer small{color:#8491a8;font-size:13px}.final-login-flashes{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:20;width:min(520px,92vw)}.final-login-flashes .flash{border:1px solid rgba(255,210,74,.65);background:rgba(4,10,23,.88);color:#fff;border-radius:12px;padding:12px 14px;box-shadow:0 0 24px rgba(255,210,74,.18)}
@media(max-height:850px){.final-login-panel{min-height:96vh;padding:20px 30px}.final-logo-area{width:255px;height:255px;margin-bottom:4px}.halo-a{width:246px;height:246px}.halo-b{width:212px;height:212px}.halo-c{width:176px;height:176px}.final-logo-orbit{width:286px;height:82px}.final-logo-disc{width:178px;height:178px}.final-logo-disc:before{inset:14px}.final-logo-img{width:92px;height:92px}.final-disc-text{font-size:11px}.final-disc-top{top:27px}.final-disc-bottom{bottom:27px}.final-title h1{font-size:30px}.final-title p{font-size:14px;margin-bottom:18px}.final-field input{height:50px!important}.final-access-btn{height:54px!important}.final-footer{margin-top:22px}}
@media(max-width:620px){.final-circuit-frame{inset:14px}.final-login-panel{width:94vw;padding:22px 20px}.final-logo-area{width:255px;height:255px}.halo-a{width:248px;height:248px}.halo-b{width:212px;height:212px}.halo-c{width:176px;height:176px}.final-logo-orbit{width:290px;height:82px}.final-logo-disc{width:180px;height:180px}.final-logo-img{width:94px;height:94px}.final-disc-text{font-size:11px}.final-title h1{font-size:28px;letter-spacing:.26em;text-indent:.26em}.final-title p{font-size:13px}.final-field input{height:52px!important;font-size:13px!important;padding-left:56px!important}.final-access-btn{height:56px!important;font-size:18px!important}.final-footer strong{font-size:14px}.final-footer span{font-size:11px}}

/* =========================================================
   V6.3 LOGIN REFERENCE EXACT
   Obiettivo: login uguale al mockup scelto, ma con campi reali/interattivi.
   Modifica SOLO /login. Agenda interna invariata.
   ========================================================= */
.login-ref-page{
  min-height:100vh!important;
  width:100vw!important;
  margin:0!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background:
    radial-gradient(circle at 50% 8%, rgba(255,202,64,.10), transparent 34%),
    radial-gradient(circle at 50% 70%, rgba(0,190,255,.045), transparent 42%),
    #03080f!important;
  color:#fff!important;
  font-family: Inter, Segoe UI, Arial, sans-serif!important;
}
.login-ref-page *{box-sizing:border-box!important}
.login-ref-stage{
  position:relative!important;
  height:min(100vh, 1536px)!important;
  width:min(100vw, calc(100vh * 0.6666667))!important;
  aspect-ratio:2/3!important;
  background-image:url('/static/login_reference_exact.png')!important;
  background-size:100% 100%!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  filter:drop-shadow(0 0 36px rgba(255,198,57,.10));
}
.login-ref-form{
  position:absolute!important;
  inset:0!important;
  margin:0!important;
  padding:0!important;
  width:100%!important;
  height:100%!important;
}
.login-ref-field{
  position:absolute!important;
  left:20.7%!important;
  width:58.6%!important;
  height:5.7%!important;
  display:block!important;
  margin:0!important;
  border:1.5px solid rgba(255,201,63,.86)!important;
  border-radius:4px!important;
  background:linear-gradient(180deg, rgba(2,8,15,.93), rgba(4,12,22,.90))!important;
  box-shadow:
    0 0 20px rgba(255,198,45,.16),
    inset 0 0 18px rgba(0,0,0,.52),
    inset 0 0 1px rgba(255,255,255,.12)!important;
  overflow:hidden!important;
  backdrop-filter:blur(2px)!important;
  z-index:4!important;
}
.login-ref-user{top:58.45%!important}
.login-ref-pass{top:66.55%!important}
.login-ref-field::before{
  content:"";
  position:absolute;
  left:14%;
  top:18%;
  bottom:18%;
  width:1px;
  background:linear-gradient(180deg, transparent, rgba(255,205,77,.45), transparent);
  opacity:.8;
}
.login-ref-field:focus-within{
  border-color:rgba(0,216,255,.95)!important;
  box-shadow:
    0 0 0 2px rgba(0,216,255,.15),
    0 0 28px rgba(0,216,255,.34),
    inset 0 0 24px rgba(0,216,255,.08)!important;
}
.login-ref-icon{
  position:absolute!important;
  left:5.2%!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#ffd24f!important;
  font-size:clamp(16px, 2.1vh, 30px)!important;
  text-shadow:0 0 14px rgba(255,210,79,.55)!important;
  z-index:2!important;
  line-height:1!important;
  pointer-events:none!important;
}
.login-ref-field input{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#f7fbff!important;
  font-size:clamp(13px, 1.75vh, 22px)!important;
  line-height:1!important;
  letter-spacing:.16em!important;
  font-weight:600!important;
  text-transform:uppercase!important;
  padding:0 12% 0 17.6%!important;
  box-shadow:none!important;
}
.login-ref-field input::placeholder{
  color:rgba(222,231,245,.62)!important;
  opacity:1!important;
}
.login-ref-field input:-webkit-autofill,
.login-ref-field input:-webkit-autofill:hover,
.login-ref-field input:-webkit-autofill:focus{
  -webkit-text-fill-color:#f7fbff!important;
  transition:background-color 9999s ease-in-out 0s!important;
  box-shadow:0 0 0 1000px rgba(4,12,22,.95) inset!important;
}
.login-ref-eye{
  position:absolute!important;
  right:5.3%!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  background:transparent!important;
  border:0!important;
  color:rgba(245,248,255,.94)!important;
  font-size:clamp(14px, 1.85vh, 23px)!important;
  line-height:1!important;
  padding:0!important;
  margin:0!important;
  cursor:pointer!important;
  z-index:5!important;
  text-shadow:0 0 10px rgba(255,255,255,.22)!important;
}
.login-ref-remember{
  position:absolute!important;
  top:74.15%!important;
  left:20.7%!important;
  display:flex!important;
  align-items:center!important;
  gap:min(1.4vw, 16px)!important;
  margin:0!important;
  color:rgba(232,238,248,.80)!important;
  font-size:clamp(12px, 1.55vh, 18px)!important;
  letter-spacing:.13em!important;
  font-weight:500!important;
  text-transform:uppercase!important;
  z-index:5!important;
}
.login-ref-remember input{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:clamp(18px, 2.3vh, 28px)!important;
  height:clamp(18px, 2.3vh, 28px)!important;
  border:1.5px solid rgba(255,201,63,.74)!important;
  border-radius:2px!important;
  background:rgba(2,8,15,.78)!important;
  box-shadow:0 0 10px rgba(255,201,63,.12), inset 0 0 8px rgba(0,0,0,.48)!important;
  margin:0!important;
  padding:0!important;
  cursor:pointer!important;
}
.login-ref-remember input:checked{
  background:linear-gradient(180deg,#ffd35a,#c78d17)!important;
  box-shadow:0 0 18px rgba(255,201,63,.45)!important;
}
.login-ref-remember input:checked::after{
  content:"✓";
  display:block;
  color:#07101a;
  font-weight:900;
  font-size:clamp(13px, 1.8vh, 19px);
  line-height:1;
  text-align:center;
}
.login-ref-button{
  position:absolute!important;
  top:79.78%!important;
  left:18.9%!important;
  width:62.2%!important;
  height:6.0%!important;
  border:1.5px solid rgba(255,205,79,.95)!important;
  border-radius:4px!important;
  background:linear-gradient(180deg, rgba(255,220,100,.08), rgba(255,205,79,.025))!important;
  color:#ffd454!important;
  font-size:clamp(19px, 2.75vh, 34px)!important;
  font-weight:800!important;
  letter-spacing:.36em!important;
  text-indent:.36em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  box-shadow:
    0 0 28px rgba(255,205,79,.28),
    inset 0 0 24px rgba(255,205,79,.07)!important;
  text-shadow:0 0 14px rgba(255,205,79,.40)!important;
  z-index:5!important;
}
.login-ref-button:hover{
  background:linear-gradient(180deg, rgba(255,220,100,.16), rgba(255,205,79,.06))!important;
  box-shadow:0 0 40px rgba(255,205,79,.44), inset 0 0 30px rgba(255,205,79,.10)!important;
}
.login-ref-button:active{transform:scale(.992)!important}
.login-ref-flashes{
  position:fixed!important;
  z-index:50!important;
  top:18px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:min(560px,92vw)!important;
}
.login-ref-flashes .flash{
  background:rgba(2,8,15,.92)!important;
  border:1px solid rgba(255,205,79,.70)!important;
  color:#fff!important;
  border-radius:12px!important;
  padding:12px 14px!important;
  box-shadow:0 0 25px rgba(255,205,79,.20)!important;
}
.login-ref-flashes .flash.error{border-color:rgba(255,80,90,.80)!important;box-shadow:0 0 25px rgba(255,80,90,.18)!important}
@media (max-aspect-ratio: 2/3){
  .login-ref-stage{width:100vw!important;height:150vw!important;max-height:100vh!important;}
}
@media (min-aspect-ratio: 2/3){
  .login-ref-stage{height:100vh!important;width:66.6667vh!important;}
}

/* =========================================================
   V6.4 LOGIN CYBER LUXURY - SOLO LOGIN
   Futuristico / sci-fi / cyber tech luxury con campi REALI.
   ========================================================= */
body.login-v64-page{
  margin:0!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 24%, rgba(255,198,48,.18), transparent 23%),
    radial-gradient(circle at 50% 72%, rgba(0,216,255,.07), transparent 30%),
    linear-gradient(180deg,#03050a 0%,#06111d 45%,#020408 100%)!important;
  color:#f7f5ef!important;
  font-family:Inter,Segoe UI,Arial,sans-serif!important;
}
body.login-v64-page::before{
  content:"";
  position:fixed;inset:0;pointer-events:none;opacity:.72;
  background-image:
    linear-gradient(rgba(255,201,55,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,201,55,.028) 1px,transparent 1px),
    radial-gradient(circle at 50% 35%,rgba(255,201,55,.18),transparent 2px);
  background-size:34px 34px,34px 34px,210px 210px;
  mask-image:radial-gradient(circle at center,#000 0 72%,transparent 100%);
}
body.login-v64-page::after{
  content:"";
  position:fixed;inset:-10%;pointer-events:none;opacity:.85;
  background:
    linear-gradient(90deg,transparent 0 13%,rgba(255,193,35,.28) 13.05%,transparent 13.3% 86.7%,rgba(255,193,35,.22) 86.95%,transparent 87.2%),
    linear-gradient(0deg,transparent 0 10%,rgba(255,193,35,.16) 10.1%,transparent 10.35% 89.65%,rgba(255,193,35,.13) 89.9%,transparent 90.15%);
  filter:drop-shadow(0 0 16px rgba(255,193,35,.18));
}
.login-v64-frame{
  position:relative;z-index:2;width:min(760px,94vw);height:min(980px,96vh);
  display:grid;place-items:center;padding:34px;
}
.login-v64-frame:before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    linear-gradient(90deg,rgba(255,197,46,.85),rgba(255,197,46,.22) 14%,transparent 24% 76%,rgba(255,197,46,.22) 86%,rgba(255,197,46,.85)),
    linear-gradient(0deg,rgba(255,197,46,.85),rgba(255,197,46,.16) 10%,transparent 20% 80%,rgba(255,197,46,.16) 90%,rgba(255,197,46,.85));
  clip-path:polygon(4% 0,28% 0,32% 2%,68% 2%,72% 0,96% 0,100% 4%,100% 96%,96% 100%,72% 100%,68% 98%,32% 98%,28% 100%,4% 100%,0 96%,0 4%);
  opacity:.52;filter:drop-shadow(0 0 20px rgba(255,193,35,.32));
}
.login-v64-frame:after{
  content:"";position:absolute;inset:18px;border:1px solid rgba(255,207,84,.23);border-radius:4px;z-index:-1;
  background:
    linear-gradient(120deg,transparent 0 16%,rgba(255,198,48,.11) 16.15%,transparent 16.45%),
    linear-gradient(60deg,transparent 0 22%,rgba(255,198,48,.09) 22.15%,transparent 22.4%),
    radial-gradient(circle at 50% 28%,rgba(255,198,48,.10),transparent 36%),
    rgba(2,6,13,.28);
  box-shadow:inset 0 0 46px rgba(255,198,48,.05),0 0 65px rgba(0,0,0,.5);
}
.login-v64-corner{position:absolute;width:110px;height:110px;border-color:rgba(255,210,89,.72);filter:drop-shadow(0 0 10px rgba(255,210,89,.32));pointer-events:none}
.login-v64-tl{left:20px;top:20px;border-left:2px solid;border-top:2px solid}.login-v64-tr{right:20px;top:20px;border-right:2px solid;border-top:2px solid}.login-v64-bl{left:20px;bottom:20px;border-left:2px solid;border-bottom:2px solid}.login-v64-br{right:20px;bottom:20px;border-right:2px solid;border-bottom:2px solid}
.login-v64-panel{width:min(560px,86vw);display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;padding:18px 0 0}
.login-v64-brandmark{position:relative;width:min(420px,72vw);height:min(420px,72vw);max-width:420px;max-height:420px;margin:0 auto 22px;display:grid;place-items:center;isolation:isolate}
.login-v64-ring{position:absolute;border-radius:50%;border:1px solid rgba(255,205,67,.36);box-shadow:0 0 26px rgba(255,193,35,.18),inset 0 0 28px rgba(255,193,35,.08)}
.login-v64-ring.r1{inset:0;animation:v64Spin 58s linear infinite}.login-v64-ring.r2{inset:32px;border-color:rgba(255,255,255,.16);border-style:dashed;animation:v64Spin 42s linear infinite reverse}.login-v64-ring.r3{inset:66px;border-color:rgba(255,205,67,.25);animation:v64Spin 85s linear infinite}
.login-v64-ring.r1:before,.login-v64-ring.r1:after{content:"";position:absolute;top:50%;width:10px;height:10px;border-radius:50%;background:#ffd24d;box-shadow:0 0 20px #ffd24d}.login-v64-ring.r1:before{left:-5px}.login-v64-ring.r1:after{right:-5px}
.login-v64-cross{position:absolute;background:linear-gradient(90deg,transparent,rgba(255,205,67,.55),transparent);filter:drop-shadow(0 0 14px rgba(255,205,67,.45))}.login-v64-cross.h{width:118%;height:1px}.login-v64-cross.v{height:118%;width:1px;background:linear-gradient(0deg,transparent,rgba(255,205,67,.55),transparent)}
@keyframes v64Spin{to{transform:rotate(360deg)}}
.login-v64-logo-orb{position:relative;width:255px;height:255px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 48%,#02060c 0 52%,rgba(255,205,67,.08) 53% 55%,#02060c 56%);box-shadow:0 0 35px rgba(255,207,82,.22),inset 0 0 50px rgba(0,0,0,.75);overflow:hidden;border:1px solid rgba(255,255,255,.20)}
.login-v64-logo-orb:before{content:"MM  DENTAL";position:absolute;top:24px;left:0;right:0;font-size:19px;font-weight:800;letter-spacing:.58em;color:#f4f4ec;text-shadow:0 0 14px rgba(255,255,255,.18)}
.login-v64-logo-orb:after{content:"MM  DENTAL";position:absolute;bottom:24px;left:0;right:0;font-size:19px;font-weight:800;letter-spacing:.58em;color:#f4f4ec;transform:rotate(180deg);text-shadow:0 0 14px rgba(255,255,255,.18)}
.login-v64-logo-orb img{width:165px;height:165px;object-fit:cover;object-position:center;border-radius:50%;transform:scale(1.9);filter:drop-shadow(0 0 14px rgba(255,208,73,.35))}
.login-v64-title h1{margin:0 0 9px;font-size:clamp(34px,5vw,57px);line-height:1;font-weight:300;letter-spacing:.48em;color:#ffd14c;text-shadow:0 0 20px rgba(255,205,67,.48)}
.login-v64-title p{margin:0 0 34px;font-size:clamp(14px,1.8vw,21px);letter-spacing:.24em;color:#e9eef7;text-shadow:0 0 12px rgba(255,255,255,.20)}
.login-v64-form{width:min(560px,86vw);display:flex;flex-direction:column;gap:22px;margin:0 auto}
.login-v64-field{position:relative;display:block;width:100%;height:72px;margin:0;text-align:left}.login-v64-ico{position:absolute;left:29px;top:50%;transform:translateY(-50%);z-index:3;font-size:25px;color:#ffd14c;text-shadow:0 0 14px rgba(255,205,67,.45)}
.login-v64-field input{width:100%;height:100%;padding:0 74px 0 88px;border-radius:0;background:linear-gradient(180deg,rgba(5,13,24,.72),rgba(2,7,14,.78));border:1px solid rgba(255,204,74,.72);color:#fff;font-size:19px;letter-spacing:.18em;text-transform:uppercase;outline:none;box-shadow:0 0 18px rgba(255,204,74,.16),inset 0 0 22px rgba(0,0,0,.55);clip-path:polygon(4% 0,96% 0,100% 24%,100% 76%,96% 100%,4% 100%,0 76%,0 24%)}
.login-v64-field input::placeholder{color:rgba(235,240,251,.58)}.login-v64-field input:focus{border-color:#ffe17f;box-shadow:0 0 0 3px rgba(255,205,67,.12),0 0 32px rgba(255,205,67,.36),inset 0 0 20px rgba(255,205,67,.05)}
.login-v64-eye{position:absolute;right:25px;top:50%;transform:translateY(-50%);z-index:3;border:0;background:transparent;color:#fff;font-size:22px;cursor:pointer;opacity:.9;text-shadow:0 0 10px rgba(255,255,255,.2)}
.login-v64-btn{height:78px;border:1px solid rgba(255,205,67,.82);background:linear-gradient(180deg,rgba(255,205,67,.22),rgba(6,10,17,.78));color:#ffd14c;font-size:27px;letter-spacing:.38em;font-weight:500;cursor:pointer;text-shadow:0 0 18px rgba(255,205,67,.42);box-shadow:0 0 28px rgba(255,205,67,.26),inset 0 0 24px rgba(255,205,67,.10);clip-path:polygon(7% 0,93% 0,100% 28%,100% 72%,93% 100%,7% 100%,0 72%,0 28%)}
.login-v64-btn:hover{filter:brightness(1.1);box-shadow:0 0 40px rgba(255,205,67,.45),inset 0 0 28px rgba(255,205,67,.12)}
.login-v64-foot{margin-top:72px;display:flex;flex-direction:column;gap:8px;color:#aeb9ca;letter-spacing:.16em}.login-v64-foot strong{color:#ffd14c;font-size:20px;font-weight:400}.login-v64-foot span{font-size:15px}.login-v64-foot small{font-size:14px;color:#8e9ab0}
.login-v64-flashes{position:fixed;top:18px;left:50%;transform:translateX(-50%);z-index:10;width:min(560px,92vw)}.login-v64-flashes .flash{border:1px solid rgba(255,205,67,.5);background:rgba(4,10,18,.88);color:#fff;border-radius:12px;padding:12px 16px;box-shadow:0 0 24px rgba(255,205,67,.22)}
@media(max-height:880px){.login-v64-frame{height:96vh;padding:24px}.login-v64-brandmark{width:300px;height:300px;margin-bottom:18px}.login-v64-logo-orb{width:195px;height:195px}.login-v64-logo-orb img{width:128px;height:128px}.login-v64-logo-orb:before,.login-v64-logo-orb:after{font-size:14px}.login-v64-title h1{font-size:38px}.login-v64-title p{font-size:14px;margin-bottom:24px}.login-v64-field{height:58px}.login-v64-btn{height:62px}.login-v64-foot{margin-top:32px}.login-v64-form{gap:16px}}
@media(max-width:650px){.login-v64-frame{width:96vw;height:96vh;padding:20px}.login-v64-brandmark{width:270px;height:270px}.login-v64-logo-orb{width:180px;height:180px}.login-v64-logo-orb img{width:116px;height:116px}.login-v64-title h1{letter-spacing:.28em;font-size:34px}.login-v64-field input{font-size:15px;letter-spacing:.12em;padding-left:72px}.login-v64-btn{font-size:22px}.login-v64-foot strong{font-size:16px}.login-v64-foot span{font-size:12px}}

/* ==========================================================
   V6.5 LOGIN PREMIUM CLEAN - solo schermata login
   Pulito, professionale, nero/oro/bianco. Agenda invariata.
   ========================================================== */
.login-premium-clean-page{
  min-height:100vh!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  color:#f6f4ec!important;
  background:#070a0f!important;
  font-family:Inter,Segoe UI,Arial,sans-serif!important;
}
.login-premium-clean-page *{box-sizing:border-box!important}
.premium-login-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:
  radial-gradient(circle at 50% 18%,rgba(212,175,55,.13),transparent 30%),
  radial-gradient(circle at 15% 85%,rgba(0,216,255,.08),transparent 28%),
  radial-gradient(circle at 85% 75%,rgba(212,175,55,.07),transparent 32%),
  linear-gradient(135deg,#05070b 0%,#0b1220 52%,#06080d 100%)!important;
}
.premium-grid{position:absolute;inset:-2px;opacity:.27;background-image:
  linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:56px 56px;mask-image:radial-gradient(circle at center,#000 0%,transparent 76%);
}
.premium-login-bg:before,.premium-login-bg:after{content:"";position:absolute;inset:32px;border:1px solid rgba(212,175,55,.24);border-radius:30px;box-shadow:inset 0 0 45px rgba(212,175,55,.035),0 0 50px rgba(0,0,0,.35)}
.premium-login-bg:after{inset:64px;border-color:rgba(255,255,255,.075);border-radius:22px;box-shadow:none}
.premium-line{position:absolute;height:1px;width:42vw;background:linear-gradient(90deg,transparent,rgba(212,175,55,.72),transparent);filter:drop-shadow(0 0 9px rgba(212,175,55,.42));opacity:.55;animation:premiumLine 11s ease-in-out infinite}
.line-a{left:7vw;top:16vh}.line-b{right:7vw;bottom:17vh;animation-delay:-4s}
@keyframes premiumLine{0%,100%{transform:translateX(-18px);opacity:.28}50%{transform:translateX(18px);opacity:.72}}
.premium-orb{position:absolute;border-radius:50%;border:1px solid rgba(212,175,55,.24);box-shadow:0 0 80px rgba(212,175,55,.08),inset 0 0 50px rgba(212,175,55,.035)}
.orb-a{width:520px;height:520px;left:50%;top:50%;transform:translate(-50%,-50%)}
.orb-b{width:700px;height:700px;left:50%;top:50%;transform:translate(-50%,-50%);border-color:rgba(255,255,255,.055)}
.premium-flashes{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:20;width:min(520px,92vw)}
.premium-flashes .flash{background:rgba(9,14,23,.9)!important;border:1px solid rgba(212,175,55,.5)!important;color:#fff!important;border-radius:14px!important;padding:12px 14px!important;box-shadow:0 0 24px rgba(212,175,55,.14)!important}
.premium-flashes .flash.error{border-color:rgba(255,80,90,.65)!important;box-shadow:0 0 25px rgba(255,80,90,.14)!important}
.premium-login-shell{position:relative;z-index:2;width:min(520px,92vw);padding:16px}
.premium-login-shell:before{content:"";position:absolute;inset:0;border:1px solid rgba(212,175,55,.34);border-radius:32px;box-shadow:0 0 55px rgba(212,175,55,.08),inset 0 0 35px rgba(212,175,55,.035);pointer-events:none}
.premium-corner{position:absolute;width:54px;height:54px;border-color:rgba(212,175,55,.72);filter:drop-shadow(0 0 8px rgba(212,175,55,.35));z-index:3}
.c-tl{top:0;left:0;border-top:2px solid;border-left:2px solid;border-radius:28px 0 0 0}.c-tr{top:0;right:0;border-top:2px solid;border-right:2px solid;border-radius:0 28px 0 0}.c-bl{bottom:0;left:0;border-bottom:2px solid;border-left:2px solid;border-radius:0 0 0 28px}.c-br{bottom:0;right:0;border-bottom:2px solid;border-right:2px solid;border-radius:0 0 28px 0}
.premium-login-card{position:relative;overflow:hidden;width:100%;padding:46px 46px 34px;border-radius:28px;background:linear-gradient(180deg,rgba(14,22,36,.82),rgba(5,9,15,.78))!important;border:1px solid rgba(255,255,255,.09);box-shadow:0 30px 90px rgba(0,0,0,.48),inset 0 0 34px rgba(255,255,255,.025);backdrop-filter:blur(14px);text-align:center!important}
.premium-login-card:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),rgba(212,175,55,.85),transparent);opacity:.8}.premium-login-card:after{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at center,rgba(212,175,55,.08),transparent 35%);animation:premiumPulse 7s ease-in-out infinite;pointer-events:none}
@keyframes premiumPulse{0%,100%{opacity:.35;transform:scale(.94)}50%{opacity:.75;transform:scale(1.04)}}
.premium-brand,.premium-welcome,.premium-form,.premium-footer{position:relative;z-index:2}.premium-brand-kicker{font-size:11px;letter-spacing:.22em;color:rgba(255,255,255,.58);text-transform:uppercase;margin-bottom:11px}.premium-brand h1{margin:0;color:#f7f3e8;font-size:clamp(34px,5vw,52px);letter-spacing:.22em;text-indent:.22em;font-weight:700;text-shadow:0 0 22px rgba(255,255,255,.08)}.premium-gold-divider{width:120px;height:2px;margin:20px auto 38px;background:linear-gradient(90deg,transparent,#d4af37,#fff1b4,#d4af37,transparent);box-shadow:0 0 18px rgba(212,175,55,.38)}
.premium-welcome h2{margin:0;color:#d4af37;font-size:25px;letter-spacing:.34em;text-indent:.34em;font-weight:700;text-transform:uppercase;text-shadow:0 0 22px rgba(212,175,55,.25)}.premium-welcome p{margin:9px 0 28px;color:rgba(246,244,236,.76);font-size:15px;letter-spacing:.04em}.premium-form{display:flex;flex-direction:column;gap:16px}.premium-field{position:relative;display:block!important;margin:0!important}.premium-field input{width:100%!important;height:58px!important;padding:0 58px 0 57px!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.14)!important;background:rgba(255,255,255,.045)!important;color:#fff!important;font-size:15px!important;letter-spacing:.035em!important;outline:none!important;box-shadow:inset 0 0 18px rgba(0,0,0,.22)!important;transition:.18s ease!important}.premium-field input::placeholder{color:rgba(255,255,255,.48)!important}.premium-field input:focus{border-color:rgba(212,175,55,.82)!important;background:rgba(255,255,255,.065)!important;box-shadow:0 0 0 3px rgba(212,175,55,.11),0 0 24px rgba(212,175,55,.18),inset 0 0 18px rgba(0,0,0,.18)!important}.premium-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);z-index:2;color:#d4af37;font-size:19px;filter:drop-shadow(0 0 10px rgba(212,175,55,.25))}.premium-eye{position:absolute;right:18px;top:50%;transform:translateY(-50%);z-index:2;border:0!important;background:transparent!important;color:rgba(255,255,255,.75)!important;font-size:18px!important;cursor:pointer!important;padding:6px!important}.premium-remember{display:flex!important;align-items:center;gap:10px;margin:0 0 4px!important;text-align:left!important;color:rgba(255,255,255,.68);font-size:13px;letter-spacing:.04em}.premium-remember input{width:18px!important;height:18px!important;margin:0!important;accent-color:#d4af37}.premium-btn{height:60px!important;border-radius:16px!important;border:1px solid rgba(212,175,55,.75)!important;background:linear-gradient(180deg,rgba(212,175,55,.98),rgba(160,118,27,.98))!important;color:#07101d!important;font-weight:800!important;font-size:16px!important;letter-spacing:.34em!important;text-indent:.34em!important;cursor:pointer!important;box-shadow:0 0 32px rgba(212,175,55,.24),inset 0 1px 0 rgba(255,255,255,.38)!important;transition:.18s ease!important}.premium-btn:hover{transform:translateY(-1px);box-shadow:0 0 42px rgba(212,175,55,.38),inset 0 1px 0 rgba(255,255,255,.42)!important;filter:saturate(1.08)}.premium-btn:active{transform:translateY(0) scale(.99)}.premium-footer{margin-top:30px;display:flex;flex-direction:column;gap:6px;color:rgba(255,255,255,.52);letter-spacing:.12em;text-transform:uppercase}.premium-footer span{color:#d4af37;font-size:13px}.premium-footer small{font-size:12px;color:rgba(255,255,255,.38)}
@media(max-width:560px){.premium-login-card{padding:38px 24px 28px}.premium-brand h1{font-size:34px}.premium-welcome h2{font-size:22px}.premium-login-shell{width:94vw}.premium-login-bg:before{inset:18px}.premium-login-bg:after{display:none}}


/* === V6.6 LOGO 3D ONLY PATCH ===
   Mantiene il layout dell'agenda invariato: cambia solo il logo alto sinistra
   e nasconde il logo decorativo in basso sinistra. */
.brand-logo-stage{
  position:relative;
  width:168px;
  height:132px;
  margin:0 auto 8px;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.brand-logo-stage::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:4px;
  width:142px;
  height:34px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(247,189,24,.52) 0%,rgba(247,189,24,.25) 34%,rgba(247,189,24,.08) 58%,transparent 73%);
  filter:blur(1px);
  box-shadow:0 0 22px rgba(247,189,24,.34),0 0 44px rgba(247,189,24,.16);
  z-index:0;
}
.brand-logo-stage::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:9px;
  width:120px;
  height:26px;
  transform:translateX(-50%);
  border:1px solid rgba(247,189,24,.56);
  border-radius:50%;
  box-shadow:0 0 14px rgba(247,189,24,.32),inset 0 0 12px rgba(247,189,24,.18);
  z-index:1;
  pointer-events:none;
}
.neo-logo-3d{
  width:148px!important;
  height:148px!important;
  object-fit:contain!important;
  position:relative;
  z-index:2;
  transform-origin:50% 72%;
  filter:drop-shadow(0 0 14px rgba(255,255,255,.13)) drop-shadow(0 0 22px rgba(247,189,24,.34))!important;
  animation:mmDentalLogoFloat 5.5s ease-in-out infinite;
}
@keyframes mmDentalLogoFloat{
  0%,100%{transform:translateY(0) scale(1) rotateZ(-1deg)}
  50%{transform:translateY(-5px) scale(1.015) rotateZ(1deg)}
}
.holo-tooth{display:none!important;}
.brand-block{padding-top:2px;}
.brand-block h1{margin-top:2px!important;}

/* V6.7 Mobile route restore */
.mobile-page{margin:0;background:#050816;color:#fff;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh;overflow-x:hidden}.mobile-top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:rgba(5,8,22,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(212,175,55,.22)}.mobile-brand{display:flex;align-items:center;gap:12px}.mobile-brand img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(212,175,55,.28))}.mobile-brand strong{display:block;font-size:19px}.mobile-brand span{display:block;color:#d4af37;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.mobile-logout{color:#f5f5f5;text-decoration:none;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 12px}.mobile-main{padding:14px 12px 30px}.mobile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.mobile-stat{border:1px solid rgba(212,175,55,.25);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border-radius:16px;color:#fff;padding:12px 4px}.mobile-stat b{display:block;font-size:24px;color:#d4af37}.mobile-stat span{font-size:11px;color:#d8deea}.mobile-stat.danger b{color:#ff4d63}.mobile-stat.warn b{color:#ffbd3a}.mobile-card{border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(13,22,43,.92),rgba(6,10,24,.96));border-radius:22px;padding:14px;margin:12px 0;box-shadow:0 18px 50px rgba(0,0,0,.28)}.mobile-card h2{margin:0 0 12px;color:#fff;font-size:20px}.mobile-actions{display:flex;gap:10px;align-items:center}.mobile-primary{border:1px solid rgba(212,175,55,.75);background:linear-gradient(135deg,#f2c94c,#9b6b16);color:#06070a;border-radius:14px;padding:13px 16px;font-weight:900;letter-spacing:.04em;box-shadow:0 0 18px rgba(212,175,55,.22)}#mobileSearch{min-width:0;flex:1;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:14px;padding:13px 12px}.mobile-new{display:none}.show-mobile-form .mobile-new{display:block}.mobile-form{display:grid;gap:10px}.mobile-form label{display:grid;gap:6px;color:#cdd5e5;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.mobile-form input,.mobile-form select{border:1px solid rgba(212,175,55,.22);background:#0b1224;color:#fff;border-radius:12px;padding:13px 12px;font-size:16px}.mobile-job{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);border-radius:17px;padding:12px;margin:10px 0}.mobile-job.late{border-color:rgba(255,70,90,.6);box-shadow:0 0 18px rgba(255,50,70,.12)}.mobile-job-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.mobile-job-head strong{font-size:18px}.mobile-job-head span{color:#d4af37;font-size:13px;white-space:nowrap}.mobile-job-sub{color:#cbd5e1;margin-top:5px}.mobile-job-meta{color:#94a3b8;margin-top:7px;font-size:13px}.mobile-status-row{display:flex;gap:6px;overflow-x:auto;padding-top:10px}.mobile-pill{flex:0 0 auto;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);border-radius:999px;padding:8px 10px}.mobile-pill.active{background:rgba(212,175,55,.18);border-color:#d4af37;box-shadow:0 0 12px rgba(212,175,55,.22)}.mobile-empty{color:#94a3b8}.mobile-flashes{padding:10px 12px}.mobile-flashes .flash{border-radius:12px;padding:10px 12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}


/* =========================================================
   V6.8 - Festività, ponti e attività operatori
   ========================================================= */
.day.holiday-cell{
  background:linear-gradient(180deg,rgba(255,214,102,.13),rgba(255,214,102,.045)), rgba(22,32,51,.92)!important;
  border-color:rgba(255,213,94,.32)!important;
}
.day.bridge-cell{
  background:linear-gradient(180deg,rgba(34,211,238,.10),rgba(139,92,246,.045)), rgba(22,32,51,.92)!important;
  border-color:rgba(34,211,238,.25)!important;
}
.day-flag{
  margin:3px 6px 5px;
  padding:2px 6px;
  width:max-content;
  max-width:calc(100% - 12px);
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.02em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.holiday-flag{
  color:#2a1800;
  background:linear-gradient(90deg,#ffe08a,#c58b19);
  box-shadow:0 0 12px rgba(255,206,79,.28);
}
.bridge-flag{
  color:#e8fbff;
  background:rgba(34,211,238,.16);
  border:1px solid rgba(34,211,238,.34);
  box-shadow:0 0 12px rgba(34,211,238,.16);
}
.operator-history{
  margin-top:18px;
  padding:16px;
  border:1px solid rgba(255,213,94,.22);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));
  box-shadow:inset 0 0 18px rgba(255,213,94,.035),0 0 18px rgba(0,0,0,.18);
}
.operator-history h3{margin-top:0!important;color:#f8fafc!important}
.operator-summary{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin:7px 0;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
  color:#dbeafe;
}
.operator-summary b{color:#ffd66b}.operator-summary span:last-child{color:#9fb1ca;font-size:12px;white-space:nowrap}
.operator-log-list{display:grid;gap:8px;margin-top:10px}
.operator-log-list>div{
  padding:10px 12px;
  border-radius:14px;
  background:rgba(8,14,27,.66);
  border:1px solid rgba(255,255,255,.08);
}
.operator-log-list strong{color:#ffd66b;margin-right:8px}.operator-log-list span{color:#f8fafc;font-weight:800}.operator-log-list small{display:block;color:#9fb1ca;margin-top:3px;line-height:1.35}
.notice.gold{border-color:rgba(255,213,94,.32)!important;background:rgba(255,213,94,.075)!important}


/* === V7.0 DEFINITIVA === */
/* Logo 3D: rotazione lenta su asse verticale + leggero movimento, senza cambiare layout. */
.brand-logo-stage{
  perspective: 900px;
}
.neo-logo-3d{
  animation: mmDentalLogoRotate3D 12s linear infinite !important;
  transform-style: preserve-3d;
  will-change: transform;
}
@keyframes mmDentalLogoRotate3D{
  0%{transform:translateY(0) rotateY(0deg) rotateZ(-1deg) scale(1)}
  25%{transform:translateY(-3px) rotateY(90deg) rotateZ(0deg) scale(1.01)}
  50%{transform:translateY(-5px) rotateY(180deg) rotateZ(1deg) scale(1.02)}
  75%{transform:translateY(-3px) rotateY(270deg) rotateZ(0deg) scale(1.01)}
  100%{transform:translateY(0) rotateY(360deg) rotateZ(-1deg) scale(1)}
}
/* Il logo decorativo basso rimane rimosso. */
.holo-tooth{display:none!important;}
/* Attività operatori smart: creazione fissa + una sola riga per operatore modificatore. */
.operator-summary.created-fixed{
  border:1px solid rgba(255,213,94,.24);
  background:linear-gradient(90deg,rgba(255,213,94,.08),rgba(255,255,255,.035));
}
.smart-operator-log .empty-log{
  opacity:.72;
  border-style:dashed;
}
.smart-operator-log>div strong{text-transform:uppercase;}
.smart-operator-log>div span{color:#f8fafc;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.04em;}

/* =========================================================
   V7.0 - Calendario con caselle a misura fissa
   Mantiene tutte le celle della griglia mensile alla stessa altezza.
   Se ci sono tanti lavori, la cella non si allunga: la lista interna scorre.
   ========================================================= */
.month-calendar{
  overflow:visible!important;
}
.week{
  display:grid!important;
  grid-template-columns:repeat(7,1fr)!important;
  grid-auto-rows:135px!important;
  align-items:stretch!important;
}
.day{
  height:135px!important;
  min-height:135px!important;
  max-height:135px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.day .events{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:2px!important;
  scrollbar-width:thin;
}
.day .events::-webkit-scrollbar{width:5px}
.day .events::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:999px}
.day-flag{
  flex:0 0 auto!important;
}
.daynum{
  flex:0 0 auto!important;
}
.neon-event{
  flex:0 0 auto!important;
}
/* Su schermi piccoli manteniamo la griglia leggibile, sempre con righe uniformi. */
@media(max-width:900px){
  .week{grid-auto-rows:135px!important;}
  .day{height:135px!important;min-height:135px!important;max-height:135px!important;}
}


/* === V7.1 DEFINITIVA ===
   Logo 3D senza rotazione: resta vivo con movimento flottante e respiro luminoso.
   Stesso logo aggiunto anche nel login sopra MM DENTAL. */
.brand-logo-stage{
  width:180px!important;
  height:142px!important;
  margin:0 auto 8px!important;
  perspective:none!important;
}
.brand-logo-stage::before{
  width:156px!important;
  height:38px!important;
  bottom:2px!important;
}
.brand-logo-stage::after{
  width:132px!important;
  height:28px!important;
  bottom:8px!important;
}
.neo-logo-3d{
  width:162px!important;
  height:162px!important;
  animation:mmDentalLogoFloatPremium 4.8s ease-in-out infinite!important;
  transform-style:flat!important;
  transform-origin:50% 72%!important;
  filter:drop-shadow(0 0 10px rgba(255,255,255,.14)) drop-shadow(0 0 22px rgba(247,189,24,.38)) drop-shadow(0 16px 20px rgba(0,0,0,.35))!important;
}
@keyframes mmDentalLogoFloatPremium{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-7px) scale(1.035)}
}
.holo-tooth{display:none!important;}

.premium-login-logo-wrap{
  position:relative;
  width:150px;
  height:118px;
  margin:0 auto 16px;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.premium-login-logo-wrap::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:134px;
  height:31px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(212,175,55,.50),rgba(212,175,55,.20) 42%,transparent 72%);
  filter:blur(1px);
  box-shadow:0 0 24px rgba(212,175,55,.28);
  z-index:0;
}
.premium-login-logo-wrap::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:6px;
  width:112px;
  height:24px;
  transform:translateX(-50%);
  border:1px solid rgba(212,175,55,.46);
  border-radius:50%;
  box-shadow:0 0 16px rgba(212,175,55,.22), inset 0 0 12px rgba(212,175,55,.12);
  z-index:1;
}
.premium-login-logo-3d{
  position:relative;
  z-index:2;
  width:138px;
  height:138px;
  object-fit:contain;
  animation:mmDentalLogoFloatPremium 4.8s ease-in-out infinite;
  filter:drop-shadow(0 0 10px rgba(255,255,255,.12)) drop-shadow(0 0 22px rgba(212,175,55,.34)) drop-shadow(0 14px 18px rgba(0,0,0,.35));
}
.premium-brand-kicker{margin-top:4px!important;}
.premium-gold-divider{margin-top:16px!important;margin-bottom:30px!important;}
@media(max-width:560px){
  .premium-login-logo-wrap{width:128px;height:104px;margin-bottom:12px}
  .premium-login-logo-3d{width:118px;height:118px}
}

/* =========================================================
   V7.1 PAOLINA - Calendario con righe settimanali elastiche
   - usa meglio lo spazio verticale disponibile
   - niente scrollbar dentro le singole caselle
   - se un giorno ha tanti lavori, si allunga tutta la riga della settimana
   ========================================================= */
.month-calendar{
  overflow:visible!important;
}
.week{
  display:grid!important;
  grid-template-columns:repeat(7,1fr)!important;
  grid-auto-rows:minmax(175px, auto)!important;
  align-items:stretch!important;
}
.day{
  height:auto!important;
  min-height:175px!important;
  max-height:none!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:visible!important;
}
.day .events{
  flex:0 0 auto!important;
  min-height:0!important;
  overflow:visible!important;
  padding-right:0!important;
  scrollbar-width:none!important;
}
.day .events::-webkit-scrollbar{display:none!important; width:0!important; height:0!important;}
.day-flag,.daynum,.neon-event{
  flex:0 0 auto!important;
}
@media(max-width:900px){
  .week{grid-auto-rows:minmax(160px, auto)!important;}
  .day{min-height:160px!important;height:auto!important;max-height:none!important;}
}


/* =========================================================
   V7.3 PAOLINA - Calendario proporzionato definitivo
   - larghezza identica per tutti i giorni della settimana
   - niente scroll interno nelle celle
   - ogni riga settimanale si adatta al giorno più pieno
   - righe vuote restano compatte per sfruttare lo spazio
   ========================================================= */
.month-calendar{
  overflow:visible!important;
}
.weekdays,
.week{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  width:100%!important;
}
.week{
  grid-auto-rows:auto!important;
  align-items:stretch!important;
}
.day{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:128px!important;
  max-height:none!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:visible!important;
  align-self:stretch!important;
}
.day .events{
  flex:0 0 auto!important;
  overflow:visible!important;
  max-height:none!important;
  height:auto!important;
  padding-right:0!important;
  scrollbar-width:none!important;
}
.day .events::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}
.neon-event{
  flex:0 0 auto!important;
  min-width:0!important;
}
.daynum,.day-flag{
  flex:0 0 auto!important;
}
@media(max-width:900px){
  .day{min-height:118px!important;}
}


/* V8.0 - selezione denti e assistente */
.work-items-editor{border:1px solid rgba(247,189,24,.22);border-radius:14px;padding:12px;background:rgba(255,255,255,.025)}
.implant-flag{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;border:1px solid rgba(0,216,255,.24);border-radius:14px;padding:12px;background:rgba(0,216,255,.045);text-transform:none}
.implant-flag input{width:18px;height:18px;margin:0;accent-color:#f7bd18}
.implant-flag span{color:#f8fbff;font-weight:900;text-transform:uppercase}
.implant-flag small{grid-column:2;color:#9fdcff;margin:0;font-size:12px}
.work-items-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.mini-action{border:1px solid rgba(247,189,24,.45);background:rgba(247,189,24,.10);color:#ffe08a;border-radius:10px;padding:8px 10px;cursor:pointer}
.work-items-list{display:grid;gap:12px}
.work-item-row{border:1px solid rgba(255,255,255,.10);border-radius:13px;padding:10px;background:rgba(5,10,19,.72)}
.work-item-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.work-item-top select{flex:1;background:#050a13;border:1px solid rgba(247,189,24,.28);border-radius:10px;color:#fff;padding:10px}
.item-count{font-size:12px;color:#ffd95a;white-space:nowrap}
.tooth-map{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.arch-block{border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:8px;background:rgba(255,255,255,.025)}
.arch-select{width:100%;border:1px solid rgba(0,216,255,.25);background:rgba(0,216,255,.06);color:#bff5ff;border-radius:10px;padding:7px;font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer}
.teeth-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}
.tooth-btn{border:1px solid rgba(255,255,255,.12);background:#07101d;color:#e9f2ff;border-radius:10px;padding:7px 3px;display:grid;place-items:center;gap:2px;cursor:pointer;min-height:45px}
.tooth-btn span{font-size:15px;filter:grayscale(.15)}
.tooth-btn b{font-size:11px}
.tooth-btn.selected{border-color:#f7bd18;background:linear-gradient(180deg,rgba(247,189,24,.32),rgba(247,189,24,.08));box-shadow:0 0 15px rgba(247,189,24,.25);color:#fff1a8}
.form-hint{color:#98a5b7;font-size:12px;margin-top:8px;display:block}
.ai-card .ai-priority{border-top:1px solid rgba(255,255,255,.08);padding:9px 0}
.ai-card .ai-priority b{display:block;color:#fff}
.ai-card .ai-priority span{font-size:12px;color:#9fb0c7}
.qr-mini{display:flex;justify-content:flex-end;margin:10px 0}
.qr-mini a{border:1px solid rgba(247,189,24,.35);border-radius:10px;padding:8px 12px;color:#ffe08a;background:rgba(247,189,24,.08)}
.mobile-secondary{border:1px solid rgba(247,189,24,.35);background:rgba(247,189,24,.08);color:#ffe08a;border-radius:12px;padding:10px 12px}
.mobile-work-items{display:grid;gap:10px}
.mobile-tooth-map{grid-template-columns:1fr}
@media(max-width:900px){.tooth-map{grid-template-columns:1fr}.teeth-row{grid-template-columns:repeat(4,1fr)}}

/* V8.1 - pulizia QR, denti compatti, assistente IA */
.qr-mini{display:none!important;}
.tooth-map{grid-template-columns:1fr!important;gap:8px!important;}
.arch-block{padding:7px!important;}
.arch-select{padding:6px!important;font-size:10px!important;letter-spacing:.4px;}
.teeth-row{grid-template-columns:repeat(8,1fr)!important;gap:4px!important;}
.tooth-btn{min-height:36px!important;padding:4px 2px!important;border-radius:8px!important;gap:1px!important;}
.tooth-btn b{font-size:10px!important;line-height:1!important;}
.tooth-mini{width:14px;height:17px;display:block;position:relative;background:linear-gradient(145deg,#fff,#d9dde4 55%,#9ca3af);border:1px solid rgba(255,255,255,.75);box-shadow:inset -2px -2px 3px rgba(0,0,0,.20),0 0 7px rgba(247,189,24,.18);}
.tooth-mini.incisor{border-radius:45% 45% 36% 36%;width:12px;height:18px;}
.tooth-mini.canine{border-radius:50% 50% 55% 55%;clip-path:polygon(12% 0,88% 0,78% 63%,50% 100%,22% 63%);width:13px;height:18px;}
.tooth-mini.premolar{border-radius:45% 45% 45% 45%;width:14px;height:16px;}
.tooth-mini.molar{border-radius:38% 38% 34% 34%;width:16px;height:15px;}
.tooth-btn.selected .tooth-mini{background:linear-gradient(145deg,#fff8d2,#f7bd18 65%,#9c6b00);box-shadow:0 0 12px rgba(247,189,24,.45),inset -2px -2px 4px rgba(0,0,0,.18);}
.ai-card h3{display:flex;align-items:center;gap:8px;}
.ai-tech-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid rgba(0,216,255,.45);color:#7bedff;background:radial-gradient(circle,rgba(0,216,255,.25),rgba(163,64,255,.08));box-shadow:0 0 14px rgba(0,216,255,.24);}
.ai-query-box{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:12px;}
.ai-query-box input{height:40px;font-size:12px;border-color:rgba(0,216,255,.28);background:#050a13;}
.ai-query-box button{border:1px solid rgba(247,189,24,.55);background:rgba(247,189,24,.12);color:#ffe08a;border-radius:10px;padding:0 12px;font-weight:900;cursor:pointer;}
.ai-answer{margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.035);padding:10px;color:#dbeafe;font-size:12px;line-height:1.35;}
@media(max-width:900px){.teeth-row{grid-template-columns:repeat(8,1fr)!important}.tooth-btn{min-height:34px!important}.tooth-mini{transform:scale(.85)}}


/* V8.2 - Selezione denti FDI pulita: solo numeri, emiarcate separate da spazio centrale */
.tooth-mini{display:none!important;}
.teeth-row.fdi-row{
  display:grid!important;
  grid-template-columns:repeat(8,minmax(28px,1fr)) 14px repeat(8,minmax(28px,1fr))!important;
  gap:4px!important;
  align-items:center!important;
}
.hemi-gap{display:block!important;width:14px;height:1px;}
.tooth-btn{
  min-height:32px!important;
  height:32px!important;
  padding:0!important;
  border-radius:8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}
.tooth-btn b{font-size:11px!important;line-height:1!important;font-weight:900!important;}
.tooth-btn.selected{border-color:#f7bd18!important;background:linear-gradient(180deg,rgba(247,189,24,.36),rgba(247,189,24,.10))!important;box-shadow:0 0 14px rgba(247,189,24,.28)!important;color:#fff1a8!important;}
.arch-select{font-size:11px!important;letter-spacing:.6px!important;}
@media(max-width:900px){
  .teeth-row.fdi-row{grid-template-columns:repeat(8,minmax(25px,1fr)) 10px repeat(8,minmax(25px,1fr))!important;gap:3px!important;}
  .hemi-gap{width:10px!important;}
  .tooth-btn{min-height:30px!important;height:30px!important;border-radius:7px!important;}
  .tooth-btn b{font-size:10px!important;}
}

/* V8.4 - Standby e statistiche mese/totali */
.event.standby{
  opacity:.78;
  border-style:dashed!important;
  filter:saturate(.75);
}
.event.standby .evt-main::after{
  content:"  ⏸";
  color:var(--gold);
  font-size:.9em;
}
.stats-total-row{
  margin:10px 0;
}
#statsModal hr{
  border:0;
  border-top:1px solid rgba(255,255,255,.12);
  margin:16px 0;
}
#statsModal h3{
  margin:8px 0 12px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.4px;
  font-size:14px;
}
.type-pie-wrap{display:grid;grid-template-columns:190px 1fr;gap:16px;align-items:center;margin-top:10px}
.type-pie-chart{width:184px;height:184px;border-radius:50%;display:grid;place-items:center;align-content:center;background:var(--pie);box-shadow:0 0 28px rgba(0,216,255,.13),inset 0 0 0 1px rgba(255,255,255,.12);position:relative;overflow:hidden}
.type-pie-chart:after{content:"";position:absolute;inset:38px;border-radius:50%;background:#07101d;border:1px solid rgba(255,255,255,.10);box-shadow:inset 0 0 18px rgba(0,0,0,.45)}
.type-pie-chart span,.type-pie-chart small{position:relative;z-index:1}
.type-pie-chart span{font-size:32px;font-weight:950;color:#fff;line-height:1}
.type-pie-chart small{margin-top:3px;color:#9fdcff;text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.type-pie-legend{display:grid;gap:7px;max-height:300px;overflow:auto;padding-right:4px}
.type-pie-row{display:grid;grid-template-columns:13px 1fr 38px 52px;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);border-radius:11px;padding:8px 9px}
.type-pie-row i{width:12px;height:12px;border-radius:50%;box-shadow:0 0 10px currentColor}
.type-pie-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f5f8ff}
.type-pie-row b{color:#ffd95a;text-align:right}.type-pie-row em{color:#9fdcff;font-style:normal;text-align:right;font-size:12px}
.doctor-work-groups{display:grid;gap:10px;margin-top:12px}
.doctor-work-group{border:1px solid rgba(247,189,24,.18);background:rgba(255,255,255,.035);border-radius:14px;overflow:hidden}
.doctor-work-group summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;color:#ffd95a;text-transform:uppercase;font-weight:900}
.doctor-work-group summary::-webkit-details-marker{display:none}
.doctor-work-group summary:before{content:"+";width:24px;height:24px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:rgba(0,216,255,.12);border:1px solid rgba(0,216,255,.25);color:#9fdcff;margin-right:8px}
.doctor-work-group[open] summary:before{content:"-"}
.doctor-work-group summary span{flex:1}.doctor-work-group summary b{min-width:34px;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:3px 8px;color:#fff;background:rgba(0,0,0,.18)}
.doctor-work-list{display:grid;gap:7px;padding:0 10px 10px}
.doctor-work-row{width:100%;display:grid;grid-template-columns:95px 1fr auto;gap:8px;align-items:center;text-align:left;border:1px solid rgba(255,255,255,.09);background:rgba(5,10,19,.68);color:#fff;border-radius:12px;padding:10px;cursor:pointer}
.doctor-work-row:hover{border-color:rgba(0,216,255,.45);box-shadow:0 0 16px rgba(0,216,255,.12)}
.doctor-work-row b{color:#ffd95a}.doctor-work-row span{font-weight:900;text-transform:uppercase;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.doctor-work-row small{grid-column:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;color:#9fb3c8}.doctor-work-row em{grid-row:1/3;grid-column:3;font-style:normal;color:#dbeafe;font-size:12px;white-space:nowrap}
@media(max-width:760px){.type-pie-wrap{grid-template-columns:1fr;justify-items:center}.type-pie-legend{width:100%}.doctor-work-row{grid-template-columns:82px 1fr}.doctor-work-row small{grid-column:1/3}.doctor-work-row em{grid-column:1/3;grid-row:auto}}


/* V8.5 prova: archivio T-Base + moduli AI/3Shape */
.neo-nav .navlink{display:block;border:1px solid transparent;background:transparent;color:#dbeafe;border-radius:12px;padding:13px 15px;text-transform:uppercase;font-size:13px;letter-spacing:.4px}
.neo-nav .navlink:hover,.neo-nav .active-link{border-color:rgba(247,189,24,.8);background:linear-gradient(90deg,rgba(247,189,24,.28),rgba(247,189,24,.05));box-shadow:0 0 22px rgba(247,189,24,.22);color:#ffd95a}
.tbase-page{padding:18px}
.tbase-search{display:flex;gap:8px}
.tbase-search input{min-width:320px;background:#050a13;border:1px solid rgba(247,189,24,.25);border-radius:12px;color:#fff;padding:12px}
.tbase-search button{border:1px solid rgba(247,189,24,.35);background:#090f1c;color:#ffd95a;border-radius:12px;padding:0 16px}
.tbase-add{margin:16px 0;padding:14px;border:1px solid rgba(247,189,24,.16);border-radius:16px;background:rgba(255,255,255,.025)}
.tbase-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-top:14px}
.tbase-card{border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:14px;background:linear-gradient(160deg,rgba(255,255,255,.065),rgba(255,255,255,.018));box-shadow:inset 0 0 24px rgba(247,189,24,.035)}
.tbase-card strong{display:block;color:#ffd95a;font-size:16px}.tbase-card span{color:#cbd5e1;font-size:12px;text-transform:uppercase}
.tbase-card p{margin:7px 0;color:#dbeafe}.tbase-card small{display:block;color:#9ca3af;margin:8px 0}
.tbase-qty{margin:10px 0;padding:8px 10px;border-radius:10px;background:rgba(247,189,24,.1);color:#ffd95a}
.tbase-card.empty{opacity:.55}.tbase-associa-form{display:grid;grid-template-columns:1fr 80px auto;gap:8px;align-items:center;margin:8px 0 10px}.tbase-associa-form select,.tbase-associa-form input{background:#050a13;border:1px solid rgba(247,189,24,.18);color:#fff;border-radius:10px;padding:10px}.tbase-work-box{border:1px solid rgba(247,189,24,.14);background:rgba(247,189,24,.035);border-radius:14px;padding:12px;margin:16px 0}.mini-action{border:1px solid rgba(247,189,24,.45);background:rgba(247,189,24,.12);color:#ffd95a;border-radius:10px;padding:9px 12px;cursor:pointer}.form-hint{color:#9ca3af}.ai-card .ai-query-box input{min-width:0}
@media(max-width:900px){.tbase-associa-form{grid-template-columns:1fr}.tbase-search{width:100%}.tbase-search input{min-width:0;width:100%}}

/* V8.6 beta: T-Base guidato */
.tbase-guided-form h3{margin:0;color:#ffd95a;letter-spacing:.04em}.tbase-autofill-box{border:1px solid rgba(0,229,255,.22);background:rgba(0,229,255,.055);border-radius:14px;padding:12px;color:#e7f6ff}.tbase-autofill-box span{color:#ffd95a;font-weight:900}.tbase-autofill-box small{display:block;margin-top:4px;color:#9fb3c8}.tbase-manual-box{margin:14px 0;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.025);padding:12px}.tbase-manual-box summary{cursor:pointer;color:#cbd5e1;font-weight:800}.low-stock{box-shadow:0 0 0 1px rgba(255,80,80,.35) inset;color:#ff6b6b!important}.associated-tbase-list{display:grid;gap:8px;margin:8px 0 12px}.associated-tbase-item{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border:1px solid rgba(247,189,24,.18);background:rgba(255,255,255,.035);border-radius:12px;padding:10px}.associated-tbase-item strong{color:#ffd95a}.associated-tbase-item span{color:#9fdcff;font-size:12px;text-transform:uppercase}.associated-tbase-item small{display:block;color:#d6e4f3;margin-top:3px}.mini-danger{border:1px solid rgba(255,80,80,.35);background:rgba(255,80,80,.10);color:#ff8b8b;border-radius:10px;padding:8px 10px;cursor:pointer;font-weight:800}.tbase-card p b{color:#fff}

/* V8.7 T-Base usability fixes */
.tbase-associa-smart{display:grid;grid-template-columns:minmax(180px,1fr) minmax(260px,2fr) 72px auto;gap:8px;align-items:center}
.tbase-associa-smart .tbase-filter{min-width:0;background:rgba(255,255,255,.06);border:1px solid rgba(212,175,55,.30);color:#fff;border-radius:10px;padding:10px}
.tbase-associa-smart .tbase-select-smart{min-width:0}
.tbase-associa-smart optgroup{font-weight:800;color:#d4af37;background:#101722}
.tbase-associa-smart option{color:#fff;background:#101722}
@media(max-width:900px){.tbase-associa-smart{grid-template-columns:1fr}.tbase-associa-smart input,.tbase-associa-smart select,.tbase-associa-smart button{width:100%}}
.tbase-autofill-box{border:1px solid rgba(212,175,55,.35);background:rgba(212,175,55,.08);border-radius:12px;padding:12px}


/* === V9.3 PRE-PRODUCTION === */
/* Login più nitido: meno effetto nebbia e più contrasto */
.login-page{
  background:radial-gradient(circle at top left,rgba(168,73,255,.16),transparent 28%),
             radial-gradient(circle at bottom right,rgba(0,247,255,.10),transparent 30%),
             #060711 !important;
}
.login-card{
  backdrop-filter: blur(4px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(4px) saturate(120%) !important;
  border-color:rgba(247,189,24,.55) !important;
  box-shadow:0 0 42px rgba(247,189,24,.16),0 22px 70px rgba(0,0,0,.68) !important;
}
.login-card img,.login-logo,.login-brand img{
  image-rendering:auto;
  filter:drop-shadow(0 0 10px rgba(247,189,24,.30)) contrast(1.12) saturate(1.08) !important;
}

/* Logo agenda più nitido */
.neo-logo,.brand-logo,.neo-logo-3d{
  filter:drop-shadow(0 0 8px rgba(247,189,24,.28)) contrast(1.16) saturate(1.10) !important;
  image-rendering:auto;
}

/* Attività operatori live */
.live-activity strong{font-size:12px;letter-spacing:.03em}
.live-activity span{font-size:11px;opacity:.88}

/* Semaforo produzione discreto */
.risk-dot{
  width:8px;height:8px;border-radius:50%;
  display:inline-block;margin-right:5px;vertical-align:middle;
  box-shadow:0 0 10px currentColor;
  flex:0 0 auto;
}
.risk-green{background:#24e36d;color:#24e36d}
.risk-yellow{background:#f7bd18;color:#f7bd18}
.risk-red{background:#ff3150;color:#ff3150}
.risk-standby{background:#9ca3af;color:#9ca3af}

/* T-Base codice rapido */
.tbase-code-form{
  margin-bottom:16px;
  border:1px solid rgba(247,189,24,.30);
  background:linear-gradient(180deg,rgba(247,189,24,.08),rgba(255,255,255,.025));
}
.help-text{color:#9ca3af;margin:0;font-size:12px}

/* === V9.3.1 CIUSKY === */
/* Login più nitido */
.login-page{filter:none!important;}
.login-card{
  backdrop-filter: blur(2px) saturate(132%)!important;
  -webkit-backdrop-filter: blur(2px) saturate(132%)!important;
  background:rgba(5,10,19,.86)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 28px rgba(247,189,24,.14)!important;
}
.login-card img,.login-logo,.login-brand img{
  filter:drop-shadow(0 0 6px rgba(247,189,24,.28)) contrast(1.28) saturate(1.14)!important;
  opacity:1!important;
}
.neo-logo,.brand-logo,.neo-logo-3d{
  filter:drop-shadow(0 0 6px rgba(247,189,24,.22)) contrast(1.30) saturate(1.16)!important;
  opacity:1!important;
}
/* Card calendario compatta: stato + paziente + semaforo sulla stessa riga, tipo sotto */
.neon-event{padding:6px 8px!important;min-height:42px!important;}
.neon-event .state{display:none!important;}
.evt-row{display:flex;align-items:center;gap:5px;min-width:0;width:100%;}
.state-inline{flex:0 0 auto;filter:drop-shadow(0 0 5px var(--doc));line-height:1;}
.evt-row .evt-main{display:block;flex:1 1 auto;min-width:0;font-size:12px;font-weight:900;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.15;}
.evt-row .risk-dot{margin:0 0 0 4px;flex:0 0 auto;}
.neon-event .evt-sub{display:block;margin-top:3px;font-size:11px;font-weight:800;text-transform:uppercase;color:#ecf2fb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.risk-none{display:none!important;}
/* Attività recenti più compatte */
.live-activity{padding:8px 9px!important;margin-bottom:6px!important;}
.live-activity strong{font-size:11px!important;}
.live-activity span{font-size:10px!important;}


/* V9.4.1 T-Base Tree Colors - archivio collassabile più leggibile */
.tbase-archive-tree{display:flex;flex-direction:column;gap:16px;margin-top:18px}
.tbase-tree-node.tbase-prod{border:1px solid rgba(255,210,90,.42)!important;border-radius:20px!important;background:linear-gradient(135deg,rgba(255,210,90,.10),rgba(10,24,44,.70))!important;box-shadow:0 14px 34px rgba(0,0,0,.24),0 0 20px rgba(255,210,90,.08)!important;overflow:hidden}
.tbase-tree-node.tbase-prod>summary{cursor:pointer;list-style:none;padding:15px 18px!important;color:#ffe28a!important;font-weight:950!important;display:flex!important;justify-content:space-between!important;align-items:center!important;letter-spacing:.04em!important;background:linear-gradient(90deg,rgba(255,196,70,.22),rgba(255,196,70,.05))!important}
.tbase-tree-node.tbase-prod>summary::after{content:'PRODUTTORE';margin-left:10px;padding:3px 8px;border-radius:999px;font-size:10px;color:#1a1404;background:#ffd45e}
.tbase-tree-node.tbase-casa{margin:12px 16px!important;border:1px solid rgba(0,210,255,.38)!important;border-radius:17px!important;background:linear-gradient(135deg,rgba(0,210,255,.09),rgba(5,16,31,.72))!important;box-shadow:0 8px 22px rgba(0,0,0,.18)!important}
.tbase-tree-node.tbase-casa>summary{padding:13px 16px!important;color:#8ff0ff!important;font-weight:900!important;background:linear-gradient(90deg,rgba(0,210,255,.18),rgba(0,210,255,.04))!important}
.tbase-tree-node.tbase-casa>summary::after{content:'CASA';margin-left:10px;padding:3px 8px;border-radius:999px;font-size:10px;color:#02141a;background:#8ff0ff}
.tbase-tree-node.tbase-sistema{margin:10px 16px 14px 28px!important;border:1px solid rgba(165,110,255,.38)!important;border-radius:15px!important;background:linear-gradient(135deg,rgba(165,110,255,.10),rgba(4,12,24,.74))!important}
.tbase-tree-node.tbase-sistema>summary{padding:12px 15px!important;color:#d5b7ff!important;font-weight:900!important;background:linear-gradient(90deg,rgba(165,110,255,.18),rgba(165,110,255,.04))!important}
.tbase-tree-node.tbase-sistema>summary::after{content:'SISTEMA';margin-left:10px;padding:3px 8px;border-radius:999px;font-size:10px;color:#12051f;background:#d5b7ff}
.tbase-tree-node>summary::-webkit-details-marker{display:none!important}
.tbase-tree-node>summary:before{content:'▶';display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-right:10px;border-radius:8px;color:#071223;background:rgba(255,255,255,.75);font-size:12px;font-weight:950;flex:0 0 auto}
.tbase-tree-node[open]>summary:before{content:'▼'}
.tbase-tree-node>summary span{margin-left:auto;font-size:12px;font-weight:800;color:rgba(255,255,255,.82);background:rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.10);padding:4px 9px;border-radius:999px}
.compact-tbase-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))!important;padding:14px!important;gap:12px!important}
.compact-tbase-card{min-height:auto!important;padding:13px!important;border:1px solid rgba(255,255,255,.10)!important;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(0,0,0,.18))!important}
.compact-tbase-card strong{font-size:13px!important;line-height:1.25!important}.compact-tbase-card p{margin:5px 0!important;font-size:12px!important;opacity:.92}
.tbase-qty{margin-top:8px!important;padding:7px 9px!important;border-radius:10px!important;background:rgba(255,210,90,.09)!important;border:1px solid rgba(255,210,90,.18)!important}
@media(max-width:760px){.tbase-tree-node.tbase-casa{margin:10px 8px!important}.tbase-tree-node.tbase-sistema{margin:10px 8px 12px 16px!important}.tbase-tree-node.tbase-prod>summary,.tbase-tree-node.tbase-casa>summary,.tbase-tree-node.tbase-sistema>summary{padding:12px!important;font-size:13px!important}.tbase-tree-node>summary::after{display:none!important}}

/* V9.4.3 Update-ready: avviso aggiornamenti admin */
.update-banner{margin:0 0 12px;padding:13px 16px;border:1px solid rgba(247,189,24,.55);border-radius:14px;background:linear-gradient(90deg,rgba(247,189,24,.18),rgba(0,216,255,.06));box-shadow:0 0 24px rgba(247,189,24,.14),inset 0 0 18px rgba(247,189,24,.05);color:#f8fbff}
.update-banner strong{display:block;color:#ffd95a;font-size:14px;text-transform:uppercase;letter-spacing:.05em}
.update-banner span{display:block;margin-top:4px;color:#e8eef9;font-size:13px}
.update-banner small{display:block;margin-top:4px;color:#aeb9ca;font-size:12px}
.update-banner form{margin-top:9px}
.update-banner button{min-height:34px;padding:7px 14px;border:1px solid rgba(255,217,90,.7);border-radius:6px;background:#d8a51f;color:#07101d;font-weight:800;cursor:pointer}

/* V9.5.4 - associazione T-Base multi-impianto piu leggibile */
.tbase-work-box .tbase-associa-guided{display:none!important}
.tbase-multi-assoc{
  margin:12px 0 10px;
  border:1px solid rgba(0,210,255,.22);
  background:linear-gradient(180deg,rgba(0,210,255,.055),rgba(255,255,255,.025));
  border-radius:14px;
  padding:12px;
}
.tbase-multi-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.tbase-multi-head strong{display:block;color:#ffd95a;text-transform:uppercase;font-size:12px;letter-spacing:.05em}
.tbase-multi-head small{display:block;color:#aeb9ca;font-size:11px;margin-top:3px}
.tbase-multi-list{display:grid;gap:9px}
.tbase-multi-row{
  display:grid;
  grid-template-columns:34px 112px minmax(120px,.7fr) minmax(150px,.9fr) minmax(150px,.9fr) 82px auto;
  gap:8px;
  align-items:center;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
  border-radius:12px;
  padding:9px;
}
.tbase-row-num{
  width:28px;height:28px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;
  color:#05101b;background:#ffd95a;font-weight:950;font-size:12px;
}
.tbase-row-search,.tbase-row-select,.tbase-row-qty,.tbase-row-prod,.tbase-row-casa,.tbase-row-sistema,.tbase-row-tooth{
  min-width:0;background:#050a13;border:1px solid rgba(247,189,24,.18);color:#fff;border-radius:10px;padding:10px;
}
.tbase-row-num{grid-row:1/3;grid-column:1}
.tbase-row-tooth{grid-row:1;grid-column:2}
.tbase-row-prod{grid-row:1;grid-column:3}
.tbase-row-casa{grid-row:1;grid-column:4}
.tbase-row-sistema{grid-row:1;grid-column:5}
.tbase-row-qty{grid-row:1;grid-column:6}
.tbase-row-remove{grid-row:1;grid-column:7}
.tbase-row-search{grid-row:2;grid-column:2/5}
.tbase-row-select{grid-row:2;grid-column:5/8}
.tbase-row-select option{background:#101722;color:#fff}
.tbase-row-preview{grid-row:3;grid-column:2/8;color:#9fdcff;font-size:11px;line-height:1.3}
.tbase-submit-multi{margin-top:10px;width:100%}
.tbase-row-remove:disabled{opacity:.35;cursor:not-allowed}
.implant-tbase-locked{margin:12px 0 8px;border:1px dashed rgba(0,216,255,.32);background:rgba(0,216,255,.045);border-radius:14px;padding:13px}
.implant-tbase-locked strong{display:block;color:#ffd95a;text-transform:uppercase;font-size:12px;letter-spacing:.05em}
.implant-tbase-locked span{display:block;color:#d7e7f7;font-size:12px;margin-top:4px}
@media(max-width:900px){
  .tbase-multi-head{display:grid}
  .tbase-multi-row{grid-template-columns:30px 1fr 76px;align-items:start}
  .tbase-row-num{grid-row:1/7;grid-column:1}
  .tbase-row-tooth,.tbase-row-prod,.tbase-row-casa,.tbase-row-sistema,.tbase-row-search,.tbase-row-select,.tbase-row-remove,.tbase-row-preview{grid-column:2/4;grid-row:auto}
  .tbase-row-qty{grid-column:2/3;grid-row:auto}
}

/* V9.5 Smart Ingest + admin lessico */
.smart-mic-btn,.smart-new-glow{
  border:1px solid rgba(247,189,24,.45)!important;
  background:linear-gradient(180deg,rgba(247,189,24,.20),rgba(0,210,255,.08))!important;
  color:#ffe8a4!important;
  border-radius:10px!important;
  padding:10px 12px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  cursor:pointer!important;
  box-shadow:0 0 18px rgba(247,189,24,.12)!important;
}
.smart-header-mic{margin-left:10px;align-self:center}
.smart-ingest-lock{overflow:hidden}
.smart-ingest-modal{
  position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;
  background:rgba(0,0,0,.72);backdrop-filter:blur(8px);padding:18px;
}
.smart-ingest-modal.open{display:flex}
.smart-ingest-sheet{
  width:min(640px,96vw);border:1px solid rgba(247,189,24,.42);border-radius:18px;
  background:linear-gradient(180deg,rgba(9,15,27,.98),rgba(3,8,16,.98));
  box-shadow:0 24px 80px rgba(0,0,0,.70),0 0 38px rgba(247,189,24,.15);
  padding:18px;color:#eff6ff;
}
.smart-ingest-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.smart-ingest-head strong{display:block;color:#ffd95a;text-transform:uppercase;letter-spacing:.08em}
.smart-ingest-head span{display:block;margin-top:4px;color:#9fb3c8;font-size:12px}
.smart-close{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;border-radius:10px;width:34px;height:34px;cursor:pointer;font-size:20px}
.smart-ingest-sheet textarea{
  width:100%;resize:vertical;min-height:120px;border-radius:14px;border:1px solid rgba(0,210,255,.28);
  background:rgba(255,255,255,.055);color:#fff;padding:13px;font-size:14px;line-height:1.45;
}
.smart-ingest-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.smart-ingest-actions button{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#fff;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:800}
.smart-ingest-actions .primary{background:linear-gradient(180deg,#ffd66a,#b88722);color:#101010;border-color:rgba(255,214,106,.75)}
.smart-ingest-status{margin-top:12px;color:#9fdcff;font-size:12px;font-weight:800}
.smart-ingest-result{margin-top:10px}
.smart-result-ok,.smart-result-warn{
  border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;background:rgba(255,255,255,.045);
}
.smart-result-ok strong{display:block;color:#a7f3d0;margin-bottom:4px}
.smart-result-ok span,.smart-result-warn{color:#dbeafe;font-size:13px}
.smart-recognized{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:7px;margin-top:10px}
.smart-recognized span{display:block;border:1px solid rgba(0,210,255,.18);border-radius:10px;background:rgba(0,210,255,.055);padding:7px 8px;color:#f8fbff!important;font-size:12px!important}
.smart-recognized b{display:block;color:#9fdcff;text-transform:uppercase;font-size:10px;letter-spacing:.05em;margin-bottom:2px}
.smart-result-ok ul{margin:8px 0 0 18px;color:#ffd98a;font-size:12px}
.smart-result-ok button{margin-top:8px;border:1px solid rgba(0,210,255,.35);background:rgba(0,210,255,.10);color:#bff7ff;border-radius:10px;padding:8px 10px;cursor:pointer;font-weight:800}
.admin-row{align-items:end;border-bottom:1px solid rgba(255,255,255,.08);padding:12px 0}
.admin-list input,.admin-list select{min-width:0}
.lessico-bulk-box{
  margin-top:18px;
  border:1px solid rgba(0,210,255,.20);
  background:rgba(0,210,255,.04);
  border-radius:14px;
  padding:14px;
}
.lessico-bulk-box h3{margin:0 0 10px;color:#ffd95a;text-transform:uppercase;font-size:13px;letter-spacing:.06em}
.lessico-preset-row{display:flex;gap:8px;flex-wrap:wrap}
.lessico-preset-row button{
  border:1px solid rgba(247,189,24,.34);
  background:rgba(247,189,24,.09);
  color:#ffd95a;
  border-radius:10px;
  padding:8px 10px;
  font-weight:900;
  cursor:pointer;
}
@media(max-width:780px){
  .smart-ingest-modal{align-items:flex-end;padding:0}
  .smart-ingest-sheet{width:100vw;border-radius:18px 18px 0 0;max-height:92vh;overflow:auto}
  .smart-header-mic{margin-left:0}
}

/* V9.5.13 - ritardi meno invasivi: lampeggia solo il bordo */
.neon-event.overdue-blink{
  border-color:#ff1638!important;
  box-shadow:0 0 0 1px rgba(255,22,56,.45),0 0 8px rgba(255,22,56,.22)!important;
  animation:overdueBorderPulse 1.05s steps(1,end) infinite!important;
}
.neon-event.overdue-blink::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:9px;
  pointer-events:none;
  z-index:3;
  border:2px solid #ff1638;
  background:transparent!important;
  box-shadow:0 0 10px rgba(255,22,56,.42);
  animation:overdueBorderLayer 1.05s steps(1,end) infinite;
}
.neon-event.overdue-blink .evt-row,
.neon-event.overdue-blink .evt-sub{
  position:relative;
  z-index:2;
}
.neon-event.overdue-blink .evt-main::after{
  content:"  ⚠";
  color:#ff6b7d;
  text-shadow:0 0 6px rgba(255,22,56,.72);
}
@keyframes overdueBorderLayer{
  0%,49%{border-color:#ff1638;box-shadow:0 0 12px rgba(255,22,56,.48)}
  50%,100%{border-color:var(--doc);box-shadow:0 0 10px color-mix(in srgb,var(--doc) 55%,transparent)}
}
@keyframes overdueBorderPulse{
  0%,49%{border-color:#ff1638;box-shadow:0 0 0 1px rgba(255,22,56,.55),0 0 10px rgba(255,22,56,.28)}
  50%,100%{border-color:var(--doc);box-shadow:0 0 0 1px color-mix(in srgb,var(--doc) 45%,transparent),0 0 8px color-mix(in srgb,var(--doc) 35%,transparent)}
}

/* V9.5.12 - correzioni rapide T-Base e blocchi dinamici */
.is-hidden{display:none!important}
.tbase-qty-admin-row{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.tbase-qty-admin-row span{min-width:0}
.tbase-qty-actions{
  display:inline-grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
  flex:0 0 auto;
}
.tbase-qty-actions form{margin:0}
.tbase-qty-actions button{
  width:34px;
  height:30px;
  border-radius:10px;
  border:1px solid rgba(247,189,24,.38);
  background:rgba(247,189,24,.10);
  color:#ffd95a;
  font-weight:950;
  font-size:18px;
  cursor:pointer;
}
.tbase-qty-actions button:hover{
  border-color:rgba(0,216,255,.65);
  color:#9fdcff;
}

/* V9.5.18 - Admin Ultra control room */
body.admin-ultra{
  min-height:100vh;
  color:#f4f8ff;
  background:
    linear-gradient(90deg,rgba(72,114,150,.12) 1px,transparent 1px),
    linear-gradient(180deg,rgba(72,114,150,.10) 1px,transparent 1px),
    linear-gradient(135deg,#02050b 0%,#06111d 46%,#020408 100%)!important;
  background-size:44px 44px,44px 44px,auto!important;
  overflow-x:hidden;
}
body.admin-ultra::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(180deg,rgba(0,216,255,.055),transparent 17%,transparent 83%,rgba(247,189,24,.045)),
    repeating-linear-gradient(180deg,rgba(255,255,255,.025) 0,rgba(255,255,255,.025) 1px,transparent 1px,transparent 7px);
  opacity:.75;
}
body.admin-ultra::after{
  content:"";
  position:fixed;
  left:0;
  right:0;
  top:-30%;
  height:26%;
  pointer-events:none;
  z-index:1;
  background:linear-gradient(180deg,transparent,rgba(0,216,255,.14),transparent);
  animation:adminScan 7.5s linear infinite;
}
.admin-ultra .app-shell,
.admin-ultra .admin-page{
  position:relative;
  z-index:2;
}
.admin-ultra-shell{
  grid-template-columns:286px minmax(0,1fr);
}
.admin-ultra .sidebar{
  position:relative;
  min-height:100vh;
  padding:22px 18px;
  border-right:1px solid rgba(0,216,255,.28);
  background:
    linear-gradient(180deg,rgba(3,9,17,.96),rgba(5,17,28,.92) 48%,rgba(2,6,12,.96)),
    linear-gradient(90deg,rgba(247,189,24,.09),transparent 34%);
  box-shadow:22px 0 55px rgba(0,0,0,.42),inset -1px 0 0 rgba(247,189,24,.18);
}
.admin-ultra .sidebar::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:22px;
  height:118px;
  border:1px solid rgba(0,216,255,.18);
  border-radius:14px;
  background:
    linear-gradient(90deg,rgba(0,216,255,.16),transparent 38%,rgba(247,189,24,.11)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 18px);
  opacity:.65;
  pointer-events:none;
}
.admin-ultra .brand-block{
  position:relative;
  padding:14px 10px 18px;
  border:1px solid rgba(247,189,24,.22);
  border-radius:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  box-shadow:inset 0 0 26px rgba(0,216,255,.055),0 14px 28px rgba(0,0,0,.25);
}
.admin-ultra .brand-logo{
  width:92px;
  height:92px;
  object-fit:contain;
  filter:drop-shadow(0 0 15px rgba(247,189,24,.42)) drop-shadow(0 0 18px rgba(0,216,255,.22));
}
.admin-ultra .brand-block h1{
  margin-top:6px!important;
  font-size:24px;
}
.admin-ultra .brand-block p,
.admin-ultra .version-badge{
  color:#9eefff;
}
.admin-ultra .nav{
  position:relative;
  z-index:2;
  margin-top:16px;
  display:grid;
  gap:8px;
}
.admin-ultra .navlink{
  border:1px solid rgba(255,255,255,.10);
  border-radius:8px;
  background:linear-gradient(90deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  color:#dcecff;
  text-transform:uppercase;
  font-size:13px;
  font-weight:900;
  letter-spacing:0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018);
}
.admin-ultra .navlink:hover,
.admin-ultra .active-link{
  border-color:rgba(0,216,255,.72)!important;
  background:linear-gradient(90deg,rgba(0,216,255,.20),rgba(247,189,24,.10))!important;
  box-shadow:0 0 20px rgba(0,216,255,.17),inset 0 0 18px rgba(0,216,255,.055)!important;
  color:#fff7c9!important;
}
.admin-ultra .user-card{
  position:relative;
  z-index:2;
  margin-top:18px;
  border-color:rgba(46,213,115,.24);
  border-radius:8px;
  background:rgba(3,11,20,.72);
}
.admin-ultra .neo-main,
.admin-ultra-page{
  padding:26px;
}
.admin-ultra .neo-card,
.admin-ultra .admin-card,
.admin-ultra .lessico-bulk-box{
  position:relative;
  border:1px solid rgba(0,216,255,.20)!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(9,24,38,.90),rgba(3,10,18,.94))!important;
  box-shadow:0 22px 58px rgba(0,0,0,.36),inset 0 0 38px rgba(0,216,255,.045)!important;
}
.admin-ultra .neo-card::before,
.admin-ultra .admin-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(90deg,rgba(247,189,24,.24),transparent 18%,transparent 82%,rgba(0,216,255,.18)),
    linear-gradient(180deg,rgba(255,255,255,.07),transparent 82%);
  opacity:.42;
}
.admin-ultra .calendar-head,
.admin-ultra .admin-head{
  position:relative;
  margin-bottom:18px;
  padding:16px 18px;
  border:1px solid rgba(247,189,24,.25);
  border-radius:8px;
  background:linear-gradient(90deg,rgba(247,189,24,.11),rgba(0,216,255,.065),transparent);
}
.admin-ultra .calendar-head h2,
.admin-ultra .admin-head h1,
.admin-ultra .neo-card h2,
.admin-ultra .admin-card h2,
.admin-ultra .lessico-bulk-box h3{
  color:#fff7ca;
  text-shadow:0 0 18px rgba(247,189,24,.18);
  letter-spacing:0;
}
.admin-ultra .calendar-head p,
.admin-ultra .admin-head p{
  color:#a7c2dc;
}
.admin-ultra .admin-head a{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:8px 12px;
  border:1px solid rgba(0,216,255,.30);
  border-radius:8px;
  color:#9eefff;
  background:rgba(0,216,255,.06);
}
.admin-ultra input,
.admin-ultra select,
.admin-ultra textarea{
  border-radius:8px!important;
  border-color:rgba(0,216,255,.22)!important;
  background:#030a12!important;
  color:#f7fbff!important;
  box-shadow:inset 0 0 16px rgba(0,216,255,.055)!important;
}
.admin-ultra input:focus,
.admin-ultra select:focus,
.admin-ultra textarea:focus{
  border-color:rgba(247,189,24,.70)!important;
  box-shadow:0 0 0 3px rgba(247,189,24,.12),0 0 18px rgba(0,216,255,.20)!important;
}
.admin-ultra label{
  color:#a9c9df;
  letter-spacing:0;
}
.admin-ultra .primary,
.admin-ultra .mini-action,
.admin-ultra .inline-form button{
  border:1px solid rgba(247,189,24,.42)!important;
  border-radius:8px!important;
  background:linear-gradient(90deg,rgba(247,189,24,.85),rgba(0,216,255,.45))!important;
  color:#031019!important;
  font-weight:950;
  box-shadow:0 0 20px rgba(247,189,24,.15),inset 0 1px 0 rgba(255,255,255,.25);
}
.admin-ultra .danger-mini,
.admin-ultra .danger{
  border-color:rgba(255,62,84,.55)!important;
  background:rgba(255,62,84,.18)!important;
  color:#ffd8de!important;
}
.admin-ultra .work-list,
.admin-ultra .admin-list,
.admin-ultra .user-list-cards{
  position:relative;
}
.admin-ultra .admin-row,
.admin-ultra .user-edit-card,
.admin-ultra .user-table tr{
  border-color:rgba(0,216,255,.12)!important;
  background:linear-gradient(90deg,rgba(255,255,255,.042),rgba(0,216,255,.025))!important;
}
.admin-ultra .user-edit-card{
  border-radius:8px!important;
}
.admin-ultra .user-table th{
  color:#fff0a8;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:0;
}
.admin-holo-tooth{
  position:fixed;
  right:34px;
  top:78px;
  z-index:1;
  width:310px;
  height:310px;
  display:grid;
  place-items:center;
  pointer-events:none;
  opacity:.20;
}
.admin-holo-tooth::before,
.admin-holo-tooth::after{
  content:"";
  position:absolute;
  inset:32px;
  border:1px solid rgba(0,216,255,.35);
  border-radius:50%;
  transform:rotateX(62deg);
  box-shadow:0 0 28px rgba(0,216,255,.12);
}
.admin-holo-tooth::after{
  inset:58px;
  border-color:rgba(247,189,24,.32);
  animation:adminRing 6s linear infinite;
}
.admin-holo-tooth img{
  width:165px;
  height:165px;
  object-fit:contain;
  filter:drop-shadow(0 0 20px rgba(0,216,255,.42)) drop-shadow(0 0 22px rgba(247,189,24,.28));
  animation:adminToothFloat 5.5s ease-in-out infinite;
}
@keyframes adminScan{
  to{top:108%}
}
@keyframes adminRing{
  to{transform:rotateX(62deg) rotateZ(360deg)}
}
@keyframes adminToothFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-10px)}
}
@media(max-width:1100px){
  .admin-ultra-shell{grid-template-columns:1fr}
  .admin-ultra .sidebar{min-height:auto;border-right:0;border-bottom:1px solid rgba(0,216,255,.22)}
  .admin-ultra .sidebar::after{display:none}
  .admin-holo-tooth{right:-30px;top:120px;width:220px;height:220px}
  .admin-holo-tooth img{width:118px;height:118px}
}
@media(max-width:760px){
  .admin-ultra .neo-main,
  .admin-ultra-page{padding:16px}
  .admin-ultra .calendar-head,
  .admin-ultra .admin-head{padding:14px}
  .admin-holo-tooth{display:none}
}
@media(prefers-reduced-motion:reduce){
  body.admin-ultra::after,
  .admin-holo-tooth::after,
  .admin-holo-tooth img{animation:none}
}

/* V9.5.19 - Admin Ultra HUD spinto */
body.admin-ultra{
  font-family:Consolas,Inter,Segoe UI,Arial,sans-serif;
  background:
    linear-gradient(90deg,rgba(0,216,255,.10) 1px,transparent 1px),
    linear-gradient(180deg,rgba(0,216,255,.075) 1px,transparent 1px),
    linear-gradient(90deg,transparent 0 49%,rgba(255,62,84,.045) 50%,transparent 51%),
    linear-gradient(135deg,#01040a 0%,#04101a 42%,#02050b 100%)!important;
  background-size:36px 36px,36px 36px,100% 100%,auto!important;
}
body.admin-ultra::before{
  background:
    linear-gradient(180deg,rgba(0,216,255,.065),transparent 14%,transparent 82%,rgba(247,189,24,.05)),
    repeating-linear-gradient(180deg,rgba(255,255,255,.030) 0,rgba(255,255,255,.030) 1px,transparent 1px,transparent 6px),
    linear-gradient(90deg,rgba(0,216,255,.11),transparent 16%,transparent 84%,rgba(0,216,255,.10));
}
.admin-command-strip{
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:58px minmax(190px,1fr) auto minmax(190px,auto) auto;
  gap:12px;
  align-items:center;
  min-height:70px;
  margin:0 0 16px;
  padding:10px 14px;
  color:#dff8ff;
  border:1px solid rgba(0,216,255,.32);
  border-radius:6px;
  background:
    linear-gradient(90deg,rgba(0,216,255,.14),rgba(255,62,84,.09) 48%,rgba(247,189,24,.08)),
    linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
  box-shadow:0 0 28px rgba(0,216,255,.12),inset 0 0 24px rgba(0,216,255,.06);
  overflow:hidden;
}
.admin-command-strip::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:2px;
  background:linear-gradient(90deg,transparent,#00d8ff,#ff3e54,#f7bd18,transparent);
  opacity:.88;
}
.admin-command-strip::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent 28px);
  opacity:.42;
}
.admin-command-strip span,
.admin-command-strip b,
.admin-command-strip em,
.admin-command-strip time{
  position:relative;
  z-index:1;
  white-space:nowrap;
}
.admin-command-logo{
  position:relative;
  z-index:1;
  width:46px;
  height:46px;
  object-fit:contain;
  padding:5px;
  border:1px solid rgba(0,216,255,.30);
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,216,255,.18),rgba(247,189,24,.08) 48%,rgba(0,0,0,.18));
  filter:drop-shadow(0 0 12px rgba(0,216,255,.48)) drop-shadow(0 0 10px rgba(247,189,24,.28));
  opacity:.94;
  animation:adminLogoPulse 3.8s ease-in-out infinite;
}
.admin-command-strip span{
  color:#e9fbff;
  font-size:20px;
  font-weight:950;
  text-transform:uppercase;
  text-shadow:0 0 16px rgba(0,216,255,.30);
}
.admin-command-strip b{
  padding:7px 12px;
  border:1px solid rgba(0,216,255,.45);
  border-radius:999px;
  color:#8dfcff;
  background:rgba(0,216,255,.10);
  font-size:12px;
  text-transform:uppercase;
  box-shadow:0 0 18px rgba(0,216,255,.16);
}
.admin-command-strip em{
  font-style:normal;
  color:#ffd95a;
  font-size:12px;
  text-transform:uppercase;
}
.admin-command-strip time{
  justify-self:end;
  color:#8dfcff;
  font-size:16px;
  font-weight:950;
  text-shadow:0 0 12px rgba(0,216,255,.35);
}
.admin-ultra .sidebar{
  border-right-color:rgba(0,216,255,.42);
  background:
    linear-gradient(180deg,rgba(1,6,12,.98),rgba(4,15,25,.94) 48%,rgba(1,5,10,.98)),
    repeating-linear-gradient(180deg,rgba(0,216,255,.04) 0,rgba(0,216,255,.04) 1px,transparent 1px,transparent 18px);
}
.admin-ultra .brand-block,
.admin-ultra .neo-card,
.admin-ultra .admin-card,
.admin-ultra .lessico-bulk-box,
.admin-ultra .calendar-head,
.admin-ultra .admin-head,
.admin-ultra .user-edit-card,
.admin-ultra .admin-row{
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));
}
.admin-ultra .brand-block::before,
.admin-ultra .calendar-head::before,
.admin-ultra .admin-head::before{
  content:"SECURE NODE";
  position:absolute;
  right:12px;
  top:8px;
  color:#62e8ff;
  font-size:10px;
  font-weight:950;
  opacity:.72;
}
.admin-ultra .brand-block::before{
  content:"MMD ADMIN";
}
.admin-ultra .brand-block h1{
  color:#f8fdff;
  text-shadow:0 0 18px rgba(0,216,255,.20);
}
.admin-ultra .navlink{
  position:relative;
  padding-left:38px;
  border-color:rgba(0,216,255,.16);
  background:linear-gradient(90deg,rgba(0,216,255,.08),rgba(255,255,255,.018));
}
.admin-ultra .navlink::before{
  content:"›";
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  color:#00d8ff;
  font-size:23px;
  line-height:1;
  text-shadow:0 0 12px rgba(0,216,255,.55);
}
.admin-ultra .active-link::before{
  color:#ffd95a;
}
.admin-ultra .neo-card,
.admin-ultra .admin-card,
.admin-ultra .lessico-bulk-box{
  background:
    linear-gradient(180deg,rgba(4,17,29,.94),rgba(1,7,13,.96))!important;
  border-color:rgba(0,216,255,.30)!important;
}
.admin-ultra .neo-card::after,
.admin-ultra .admin-card::after{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  bottom:10px;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(0,216,255,.46),rgba(247,189,24,.32),transparent);
}
.admin-ultra .calendar-head,
.admin-ultra .admin-head{
  background:
    linear-gradient(90deg,rgba(0,216,255,.11),rgba(255,62,84,.06),rgba(247,189,24,.06)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent 26px);
  border-color:rgba(0,216,255,.34);
}
.admin-ultra .calendar-head h2,
.admin-ultra .admin-head h1{
  font-size:28px;
  color:#eafcff;
  text-shadow:0 0 16px rgba(0,216,255,.26);
}
.admin-ultra .neo-card h2,
.admin-ultra .admin-card h2,
.admin-ultra .lessico-bulk-box h3{
  color:#ffd95a;
  text-transform:uppercase;
}
.admin-ultra input,
.admin-ultra select,
.admin-ultra textarea{
  min-height:44px;
  border-color:rgba(0,216,255,.30)!important;
  background:
    linear-gradient(180deg,rgba(1,9,16,.95),rgba(0,4,9,.96))!important;
}
.admin-ultra input[type="color"]{
  padding:5px!important;
}
.admin-ultra .primary,
.admin-ultra .mini-action,
.admin-ultra .inline-form button{
  min-height:44px;
  text-transform:uppercase;
}
.admin-ultra .user-table{
  position:relative;
  z-index:1;
}
.admin-ultra .user-table th,
.admin-ultra .user-table td{
  border-bottom-color:rgba(0,216,255,.13);
}
.admin-ultra .user-state{
  border:1px solid rgba(0,216,255,.16);
  border-radius:6px;
  background:rgba(0,216,255,.055);
}
.admin-holo-tooth{
  opacity:.28;
  mix-blend-mode:screen;
}
.admin-holo-tooth::before{
  border-radius:0;
  transform:rotate(45deg);
}
.admin-holo-tooth::after{
  transform:rotateX(62deg) rotateZ(0);
}
@media(max-width:900px){
  .admin-command-strip{
    grid-template-columns:1fr 1fr;
  }
  .admin-command-strip time{
    justify-self:start;
  }
}
@media(max-width:640px){
  .admin-command-strip{
    grid-template-columns:1fr;
  }
  .admin-command-strip span,
  .admin-command-strip b,
  .admin-command-strip em,
  .admin-command-strip time{
    white-space:normal;
  }
}

/* V9.5.20 - M.M.D Dental Intelligence identity */
.admin-command-strip{
  grid-template-columns:58px minmax(190px,1fr) auto minmax(190px,auto) auto!important;
  min-height:70px!important;
}
.admin-command-logo{
  position:relative;
  z-index:1;
  width:46px;
  height:46px;
  object-fit:contain;
  padding:5px;
  border:1px solid rgba(0,216,255,.30);
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,216,255,.18),rgba(247,189,24,.08) 48%,rgba(0,0,0,.18));
  filter:drop-shadow(0 0 12px rgba(0,216,255,.48)) drop-shadow(0 0 10px rgba(247,189,24,.28));
  opacity:.94;
  animation:adminLogoPulse 3.8s ease-in-out infinite;
}
.admin-command-strip span{
  font-size:20px!important;
  text-shadow:0 0 16px rgba(0,216,255,.30);
}
.admin-command-strip b{
  border-color:rgba(0,216,255,.45)!important;
  color:#8dfcff!important;
  background:rgba(0,216,255,.10)!important;
  box-shadow:0 0 18px rgba(0,216,255,.16)!important;
}
.admin-ultra .brand-block{
  background:
    radial-gradient(circle at 50% 36%,rgba(0,216,255,.16),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.060),rgba(255,255,255,.016))!important;
}
.admin-ultra .brand-logo{
  border-radius:50%;
  padding:6px;
  border:1px solid rgba(0,216,255,.28);
  background:radial-gradient(circle,rgba(0,216,255,.13),rgba(247,189,24,.06),transparent 70%);
  filter:drop-shadow(0 0 18px rgba(0,216,255,.45)) drop-shadow(0 0 18px rgba(247,189,24,.30))!important;
  mix-blend-mode:screen;
}
.admin-ultra .brand-block::before{
  content:"M.M.D NODE"!important;
}
.admin-ultra .calendar-head::before,
.admin-ultra .admin-head::before{
  content:"DENTAL INTELLIGENCE"!important;
}
.admin-ultra .brand-block h1::after{
  content:"DENTAL INTELLIGENCE SYSTEM";
  display:block;
  margin-top:6px;
  color:#8dfcff;
  font-size:10px;
  font-weight:900;
  letter-spacing:0;
}
.admin-ultra .calendar-head h2::after,
.admin-ultra .admin-head h1::after{
  content:" // HOLOGRAPHIC CONSOLE";
  color:#62e8ff;
  font-size:11px;
  vertical-align:middle;
  margin-left:10px;
  opacity:.78;
}
.admin-ultra .neo-card h2::before,
.admin-ultra .admin-card h2::before,
.admin-ultra .lessico-bulk-box h3::before{
  content:"// ";
  color:#62e8ff;
}
@keyframes adminLogoPulse{
  0%,100%{box-shadow:0 0 0 rgba(0,216,255,0);transform:scale(1)}
  50%{box-shadow:0 0 24px rgba(0,216,255,.18);transform:scale(1.035)}
}
@media(max-width:900px){
  .admin-command-strip{
    grid-template-columns:52px 1fr 1fr!important;
  }
  .admin-command-strip time{
    justify-self:start;
  }
}
@media(max-width:640px){
  .admin-command-strip{
    grid-template-columns:46px 1fr!important;
  }
  .admin-command-strip span,
  .admin-command-strip b,
  .admin-command-strip em,
  .admin-command-strip time{
    white-space:normal;
  }
  .admin-command-strip b,
  .admin-command-strip em,
  .admin-command-strip time{
    grid-column:1 / -1;
  }
}
@media(prefers-reduced-motion:reduce){
  .admin-command-logo{animation:none}
}

/* V9.5.21 - Admin compact agenda layout */
.admin-compact-card{
  padding:18px!important;
}
.admin-compact-card .calendar-head{
  margin-bottom:14px;
}
.admin-compact-card .calendar-head h2{
  margin-bottom:4px;
}
.admin-add-strip{
  display:grid;
  grid-template-columns:minmax(240px,1fr) 150px 170px;
  gap:10px;
  align-items:end;
  margin:0 0 16px;
  padding:12px;
  border:1px solid rgba(0,216,255,.18);
  border-radius:8px;
  background:linear-gradient(90deg,rgba(0,216,255,.07),rgba(247,189,24,.035),rgba(0,216,255,.045));
}
.admin-add-strip label,
.doctor-compact-row label,
.lessico-compact-row label,
.lessico-bulk-form label{
  gap:4px;
  font-size:10px;
  line-height:1.1;
  text-transform:uppercase;
  letter-spacing:0;
  color:#9aefff;
}
.admin-ultra .admin-compact-card input,
.admin-ultra .admin-compact-card select,
.admin-ultra .admin-compact-card textarea{
  min-height:36px;
  padding:8px 10px!important;
  font-size:13px;
}
.admin-ultra .admin-compact-card textarea{
  min-height:92px;
}
.admin-ultra .admin-compact-card input[type="color"]{
  height:36px;
  min-height:36px;
  padding:3px!important;
  border-radius:7px;
}
.admin-ultra .admin-compact-card .primary,
.admin-ultra .admin-compact-card .mini-action{
  min-height:36px!important;
  padding:8px 12px!important;
  font-size:12px;
}
.doctor-compact-list,
.lessico-compact-list{
  display:grid;
  gap:8px;
}
.doctor-compact-row,
.lessico-compact-row{
  position:relative;
  display:grid;
  gap:10px;
  align-items:end;
  padding:10px 12px;
  border:1px solid rgba(0,216,255,.16);
  border-radius:8px;
  background:
    linear-gradient(90deg,rgba(0,216,255,.055),rgba(255,255,255,.018)),
    rgba(1,9,16,.72);
}
.doctor-compact-row{
  grid-template-columns:30px minmax(220px,1fr) 140px 145px 94px;
}
.lessico-compact-row{
  grid-template-columns:minmax(210px,1fr) 150px minmax(210px,1fr) 130px 88px;
}
.doctor-compact-row::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:8px 0 0 8px;
  background:var(--doctor-color,#d4af37);
  box-shadow:0 0 12px var(--doctor-color,#d4af37);
}
.doctor-color-dot{
  width:22px;
  height:22px;
  align-self:center;
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  background:var(--doctor-color,#d4af37);
  box-shadow:0 0 14px var(--doctor-color,#d4af37);
}
.color-mini-field input{
  width:100%;
}
.doctor-compact-row.is-off,
.lessico-compact-row.is-off{
  opacity:.58;
  filter:saturate(.65);
}
.lessico-add-form{
  grid-template-columns:minmax(220px,1.15fr) 165px minmax(220px,1.15fr) 150px;
}
.lessico-compact-bulk{
  margin:0 0 16px;
  padding:0!important;
  overflow:hidden;
}
.lessico-compact-bulk>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:42px;
  padding:0 14px;
  color:#ffd95a;
  cursor:pointer;
  font-weight:950;
  text-transform:uppercase;
}
.lessico-compact-bulk>summary::after{
  content:"+";
  color:#62e8ff;
  font-size:22px;
  line-height:1;
}
.lessico-compact-bulk[open]>summary::after{
  content:"-";
}
.lessico-bulk-form{
  display:grid;
  grid-template-columns:160px minmax(210px,1fr) minmax(260px,1.4fr) 135px;
  gap:10px;
  align-items:end;
  padding:0 12px 12px;
}
.lessico-bulk-form .bulk-lines{
  grid-row:span 2;
}
.lessico-preset-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  grid-column:1 / 3;
}
.lessico-preset-row button{
  border:1px solid rgba(0,216,255,.28);
  border-radius:7px;
  padding:8px 10px;
  color:#eafcff;
  background:rgba(0,216,255,.08);
  cursor:pointer;
  font-weight:850;
}
.lessico-preset-row button:hover{
  border-color:rgba(247,189,24,.55);
  color:#ffd95a;
}
@media(max-width:1180px){
  .doctor-compact-row,
  .lessico-compact-row,
  .admin-add-strip,
  .lessico-add-form,
  .lessico-bulk-form{
    grid-template-columns:1fr 1fr;
  }
  .doctor-color-dot{
    grid-column:1 / -1;
  }
  .lessico-preset-row,
  .lessico-bulk-form .bulk-lines{
    grid-column:1 / -1;
  }
}
@media(max-width:720px){
  .doctor-compact-row,
  .lessico-compact-row,
  .admin-add-strip,
  .lessico-add-form,
  .lessico-bulk-form{
    grid-template-columns:1fr;
  }
  .admin-compact-card{
    padding:12px!important;
  }
}

/* V9.5.27 - ripristino segnali agenda: ritardi e semaforo rosso */
.neon-event{
  position:relative!important;
}
.neon-event.overdue-blink{
  position:relative!important;
  overflow:visible!important;
  border:1px solid #ff1638!important;
  animation:mmdOverdueBorderPulse 1s steps(1,end) infinite!important;
}
.neon-event.overdue-blink::before{
  content:""!important;
  position:absolute!important;
  inset:-2px!important;
  border-radius:10px!important;
  border:2px solid #ff1638!important;
  background:transparent!important;
  pointer-events:none!important;
  z-index:5!important;
  box-shadow:0 0 12px rgba(255,22,56,.55)!important;
  animation:mmdOverdueBorderRing 1s steps(1,end) infinite!important;
}
.neon-event.overdue-blink .evt-row,
.neon-event.overdue-blink .evt-sub,
.neon-event.overdue-blink .bang{
  position:relative!important;
  z-index:6!important;
}
@keyframes mmdOverdueBorderPulse{
  0%,49%{
    border-color:#ff1638!important;
    box-shadow:0 0 0 1px rgba(255,22,56,.58),0 0 12px rgba(255,22,56,.33)!important;
  }
  50%,100%{
    border-color:var(--doc)!important;
    box-shadow:0 0 0 1px rgba(255,255,255,.10),0 0 8px rgba(255,255,255,.08)!important;
  }
}
@keyframes mmdOverdueBorderRing{
  0%,49%{
    opacity:1;
    border-color:#ff1638;
    box-shadow:0 0 14px rgba(255,22,56,.62);
  }
  50%,100%{
    opacity:.38;
    border-color:var(--doc);
    box-shadow:0 0 8px rgba(255,255,255,.10);
  }
}
.evt-row .risk-dot,
.risk-dot{
  display:inline-flex!important;
  width:12px!important;
  height:12px!important;
  min-width:12px!important;
  border-radius:50%!important;
  margin:0 0 0 6px!important;
  border:1px solid rgba(255,255,255,.68)!important;
  box-shadow:0 0 0 2px rgba(0,0,0,.30),0 0 14px currentColor!important;
  position:relative!important;
  z-index:7!important;
}
.risk-red{
  background:#ff1638!important;
  color:#ff1638!important;
  animation:mmdRiskRedPulse .95s ease-in-out infinite alternate!important;
}
@keyframes mmdRiskRedPulse{
  from{
    transform:scale(.95);
    box-shadow:0 0 0 2px rgba(0,0,0,.30),0 0 8px rgba(255,22,56,.55);
  }
  to{
    transform:scale(1.18);
    box-shadow:0 0 0 2px rgba(0,0,0,.30),0 0 18px rgba(255,22,56,.95);
  }
}

/* V9.5.28 - comando manuale richiesta CP Dental */
.cp-mail-inline{
  margin:10px 0 12px!important;
}
.cp-mail-inline .mini-action{
  width:100%!important;
  border-color:rgba(247,189,24,.55)!important;
  background:linear-gradient(90deg,rgba(247,189,24,.20),rgba(0,216,255,.10))!important;
  color:#ffe8a4!important;
}

/* V9.5.31 - semaforo rosso ripristinato e T-Base admin a zero */
.neon-event.risk-red-card{
  border-color:#ff1638!important;
  box-shadow:0 0 0 1px rgba(255,22,56,.35),0 0 14px rgba(255,22,56,.18),inset 0 0 10px rgba(255,22,56,.06)!important;
}
.neon-event.risk-red-card .evt-row::after{
  content:"";
  width:14px;
  height:14px;
  min-width:14px;
  border-radius:50%;
  margin-left:6px;
  background:#ff1638;
  border:2px solid rgba(255,255,255,.78);
  box-shadow:0 0 0 2px rgba(0,0,0,.38),0 0 18px rgba(255,22,56,.95);
  animation:mmdRiskRedPulse .85s ease-in-out infinite alternate;
}
.neon-event.risk-red-card .risk-dot{
  width:14px!important;
  height:14px!important;
  min-width:14px!important;
  background:#ff1638!important;
  color:#ff1638!important;
}
.tbase-row-preview.is-zero-stock{
  color:#ffd95a!important;
}

/* V9.5.32 - ritardi piu visibili: bordo rosso / colore medico */
.neon-event.overdue-blink{
  border:2px solid #ff1638!important;
  animation:mmdOverdueStrongCard .82s steps(1,end) infinite!important;
}
.neon-event.overdue-blink::before{
  inset:-4px!important;
  border-radius:12px!important;
  border:3px solid #ff1638!important;
  z-index:8!important;
  box-shadow:0 0 22px rgba(255,22,56,.78),0 0 0 1px rgba(255,255,255,.10)!important;
  animation:mmdOverdueStrongRing .82s steps(1,end) infinite!important;
}
.neon-event.overdue-blink::after{
  content:""!important;
  position:absolute!important;
  left:4px!important;
  top:6px!important;
  bottom:6px!important;
  width:5px!important;
  border-radius:999px!important;
  background:#ff1638!important;
  pointer-events:none!important;
  z-index:9!important;
  box-shadow:0 0 16px rgba(255,22,56,.86)!important;
  animation:mmdOverdueSidePulse .82s steps(1,end) infinite!important;
}
.neon-event.overdue-blink .evt-row,
.neon-event.overdue-blink .evt-sub,
.neon-event.overdue-blink .bang{
  position:relative!important;
  z-index:10!important;
}
@keyframes mmdOverdueStrongCard{
  0%,49%{
    border-color:#ff1638!important;
    box-shadow:0 0 0 2px rgba(255,22,56,.58),0 0 18px rgba(255,22,56,.38)!important;
  }
  50%,100%{
    border-color:var(--doc)!important;
    box-shadow:0 0 0 2px var(--doc),0 0 18px rgba(255,255,255,.16)!important;
  }
}
@keyframes mmdOverdueStrongRing{
  0%,49%{
    opacity:1;
    border-color:#ff1638;
    box-shadow:0 0 24px rgba(255,22,56,.82),0 0 0 1px rgba(255,255,255,.10);
  }
  50%,100%{
    opacity:.95;
    border-color:var(--doc);
    box-shadow:0 0 24px var(--doc),0 0 0 1px rgba(255,255,255,.10);
  }
}
@keyframes mmdOverdueSidePulse{
  0%,49%{
    background:#ff1638;
    box-shadow:0 0 16px rgba(255,22,56,.86);
  }
  50%,100%{
    background:var(--doc);
    box-shadow:0 0 16px var(--doc);
  }
}

/* V9.5.33 - semaforo unico e ritardo leggero per evitare rallentamenti */
.neon-event.risk-red-card{
  border-color:var(--doc)!important;
  box-shadow:0 0 18px color-mix(in srgb,var(--doc) 34%,transparent),inset 0 0 18px rgba(255,255,255,.035)!important;
}
.neon-event.risk-red-card .evt-row::after{
  content:none!important;
  display:none!important;
}
.risk-dot,
.risk-red,
.neon-event.risk-red-card .risk-dot{
  width:14px!important;
  height:14px!important;
  min-width:14px!important;
  animation:none!important;
  transform:none!important;
}
.risk-red,
.neon-event.risk-red-card .risk-dot{
  background:#ff1638!important;
  color:#ff1638!important;
  box-shadow:0 0 0 2px rgba(0,0,0,.34),0 0 12px rgba(255,22,56,.85)!important;
}
.neon-event.overdue-blink{
  border:3px solid #ff1638!important;
  outline:2px solid #ff1638!important;
  outline-offset:1px!important;
  box-shadow:0 0 12px rgba(255,22,56,.30),inset 0 0 16px rgba(255,255,255,.035)!important;
  animation:mmdOverdueLeanBorder .95s steps(1,end) infinite!important;
}
.neon-event.overdue-blink::before,
.neon-event.overdue-blink::after{
  content:none!important;
  display:none!important;
  animation:none!important;
}
@keyframes mmdOverdueLeanBorder{
  0%,49%{
    border-color:#ff1638!important;
    outline-color:#ff1638!important;
  }
  50%,100%{
    border-color:var(--doc)!important;
    outline-color:var(--doc)!important;
  }
}

/* V9.5.34 - prestazioni agenda piena */
body.mmd-heavy-calendar .neon-event{
  filter:none!important;
  box-shadow:0 0 8px color-mix(in srgb,var(--doc) 22%,transparent)!important;
}
body.mmd-heavy-calendar .neon-event.dark-doc{
  box-shadow:0 0 8px rgba(163,64,255,.20)!important;
}
body.mmd-heavy-calendar .neon-event.overdue-blink{
  animation:mmdOverdueLeanBorder 1.35s steps(1,end) infinite!important;
  box-shadow:none!important;
}
body.mmd-heavy-calendar .mmd-tooltip-global{
  transition:none!important;
  box-shadow:0 12px 34px rgba(0,0,0,.55)!important;
}

/* V9.5.36 - ritardo: un solo bordo neon, rosso / colore medico */
.neon-event.overdue-blink,
body.mmd-heavy-calendar .neon-event.overdue-blink{
  --mmd-overdue-border:#ff1638;
  --mmd-overdue-glow:#ff1638;
  border:2px solid var(--mmd-overdue-border)!important;
  outline:0!important;
  outline-offset:0!important;
  box-shadow:0 0 14px var(--mmd-overdue-glow)!important;
  animation:mmdOverdueSingleBorder .92s steps(1,end) infinite!important;
}
.neon-event.overdue-blink::before,
.neon-event.overdue-blink::after,
body.mmd-heavy-calendar .neon-event.overdue-blink::before,
body.mmd-heavy-calendar .neon-event.overdue-blink::after{
  content:none!important;
  display:none!important;
  border:0!important;
  box-shadow:none!important;
  animation:none!important;
}
@keyframes mmdOverdueSingleBorder{
  0%,49%{
    --mmd-overdue-border:#ff1638;
    --mmd-overdue-glow:#ff1638;
  }
  50%,100%{
    --mmd-overdue-border:var(--doc);
    --mmd-overdue-glow:var(--doc);
  }
}
.mmd-offscreen,
.mmd-offscreen::before,
.mmd-offscreen::after,
.mmd-offscreen *{
  animation-play-state:paused!important;
}

.right-panel .side-card,
.doctor-work-group{
  content-visibility:auto;
  contain-intrinsic-size:auto 180px;
}
