*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f3f8ff;--bg-alt:#e9f2ff;--surface:#fff;--surface-2:#fbfdff;--border:#e2ecf8;--border-strong:#cddcef;--text:#0b2545;--text-muted:#5a7290;--text-faint:#94a8c2;--purple:#1f7ae0;--purple-light:#e3efff;--purple-dark:#0f4fa3;--purple-soft:#f0f6ff;--teal:#19b6d9;--teal-light:#dff6fc;--teal-dark:#0c7a93;--red:#e02f4f;--red-light:#fdeef0;--amber:#d97706;--amber-light:#fff7e6;--green:#18a957;--green-light:#e6faee;--radius:10px;--radius-lg:16px;--radius-xl:22px;--shadow-sm:0 1px 2px #0f4fa30f;--shadow:0 6px 18px #0f4fa314;--shadow-lg:0 18px 40px -12px #0f4fa340;--ring:0 0 0 4px #1f7ae02e;--grad-brand:linear-gradient(135deg,#1f7ae0,#19b6d9);--grad-brand-deep:linear-gradient(135deg,#0f4fa3,#1f7ae0 50%,#19b6d9);--grad-brand-soft:linear-gradient(135deg,#e3efff,#dff6fc);--grad-night:linear-gradient(135deg,#0b2545,#0f4fa3 60%,#1f7ae0);--grad-app:radial-gradient(1200px 600px at -10% -20%,#e3efff 0%,#0000 60%),radial-gradient(900px 500px at 110% 10%,#dff6fc 0%,#0000 55%),linear-gradient(180deg,#f3f8ff,#fff)}body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(1200px 600px at -10% -20%,#e3efff 0,#0000 60%),radial-gradient(900px 500px at 110% 10%,#dff6fc 0,#0000 55%),linear-gradient(180deg,#f3f8ff,#fff);background:var(--grad-app);background-attachment:fixed;color:#0b2545;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.6}.layout,.sidebar{display:flex;min-height:100vh}.sidebar{background:linear-gradient(180deg,#fff,#f7fbff);border-right:1px solid #e2ecf8;border-right:1px solid var(--border);box-shadow:1px 0 0 #1f7ae00a,8px 0 24px -16px #0f4fa32e;flex-direction:column;flex-shrink:0;padding:1.25rem 0 1rem;position:-webkit-sticky;position:sticky;top:0;width:240px}.sidebar-logo{align-items:center;border-bottom:1px solid #e2ecf8;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:center;margin-bottom:.5rem;min-width:0;padding:.25rem 1.1rem .85rem}.sidebar-logo .brand-logo{display:block;height:auto;max-height:130px;max-width:220px;object-fit:contain;width:100%}.sidebar-logo .brand-name{display:flex;flex:1 1;flex-direction:column;line-height:1.15;min-width:0}.sidebar-logo .brand-name strong{color:#0f4fa3;color:var(--purple-dark);font-size:16px;font-weight:700;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-logo .brand-name span{color:#5a7290;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.06em;margin-top:2px;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.logo-role-bar{display:flex;justify-content:center;margin:0 1.1rem .6rem}.logo-role-bar span{background:linear-gradient(135deg,#e3efff,#dff6fc);background:var(--grad-brand-soft);border:1px solid #1f7ae02e;border-radius:999px;color:#0f4fa3;color:var(--purple-dark);font-size:10.5px;font-weight:700;letter-spacing:.12em;padding:4px 12px;text-transform:uppercase}.sidebar-nav{padding:0 .6rem}.sidebar-nav,.sidebar-nav li{list-style:none}.sidebar-nav a{align-items:center;border-radius:10px;color:#5a7290;color:var(--text-muted);display:flex;font-size:14px;font-weight:500;gap:11px;margin:2px 0;padding:10px 14px;position:relative;text-decoration:none;transition:background .15s ease,color .15s ease,transform .15s ease}.sidebar-nav a:hover{background:#f0f6ff;background:var(--purple-soft);color:#0f4fa3;color:var(--purple-dark)}.sidebar-nav a.active{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);box-shadow:0 8px 18px -8px #1f7ae0a6;color:#fff;font-weight:600}.sidebar-nav a.active:hover{color:#fff}.sidebar-nav .nav-icon{align-items:center;background:#1f7ae01a;border-radius:7px;color:#1f7ae0;color:var(--purple);display:inline-flex;flex-shrink:0;height:26px;justify-content:center;transition:background .15s ease,color .15s ease;width:26px}.sidebar-nav .nav-icon svg{height:15px;width:15px}.sidebar-nav a.active .nav-icon{background:#ffffff38;color:#fff}.sidebar-nav a:hover .nav-icon{background:#1f7ae02e}.sidebar-nav .nav-section{color:#94a8c2;color:var(--text-faint);font-size:11px;font-weight:700;letter-spacing:.08em;list-style:none;margin:1.1rem 0 .35rem;padding:0 14px;text-transform:uppercase}.sidebar-bottom{border-top:1px solid #e2ecf8;border-top:1px solid var(--border);margin-left:.6rem;margin-right:.6rem;margin-top:auto;padding:.85rem .6rem .4rem}.sidebar-user{align-items:center;background:#f0f6ff;background:var(--purple-soft);border-radius:12px;color:#5a7290;color:var(--text-muted);display:flex;font-size:13px;gap:10px;margin-bottom:10px;min-width:0;overflow:hidden;padding:10px 12px}.sidebar-user .su-avatar{align-items:center;background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);border-radius:50%;box-shadow:0 6px 14px -4px #1f7ae08c;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:34px;justify-content:center;letter-spacing:.5px;width:34px}.sidebar-user .su-info{display:flex;flex:1 1;flex-direction:column;line-height:1.25;min-width:0}.sidebar-user .su-info strong{color:#0b2545;color:var(--text);font-size:13px;font-weight:600}.sidebar-user .su-email,.sidebar-user .su-info strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user .su-email{color:#5a7290;color:var(--text-muted);font-size:11.5px}.btn-logout{gap:8px;justify-content:center;width:100%}.btn-logout svg{height:14px;width:14px}.main{flex:1 1;overflow-y:auto}.main-content{box-sizing:border-box;margin:0 auto;max-width:1100px;padding:2.25rem 2.5rem}.page-header{margin-bottom:1.75rem;padding-bottom:1rem;position:relative}.page-header:after{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);border-radius:3px;bottom:0;box-shadow:0 4px 10px -2px #1f7ae066;content:"";height:3px;left:0;position:absolute;width:80px}.page-header h1{align-items:center;color:#0b2545;color:var(--text);display:flex;font-size:26px;font-weight:700;gap:10px;letter-spacing:-.01em}.page-header p{color:#5a7290;color:var(--text-muted);font-size:14px;margin-top:6px}.card{background:#fff;background:var(--surface);border:1px solid #e2ecf8;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f4fa30f;box-shadow:var(--shadow-sm);padding:1.6rem;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}.card:hover{box-shadow:0 6px 18px #0f4fa314;box-shadow:var(--shadow)}.card+.card{margin-top:1.1rem}.card-title{align-items:center;color:#0b2545;color:var(--text);display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:1.25rem}.card-title:before{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);border-radius:3px;content:"";height:18px;width:4px}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:5px;letter-spacing:.01em;padding:3px 10px}.badge-nobis{background:#e3efff;background:var(--purple-light);color:#0f4fa3;color:var(--purple-dark)}.badge-lloyd{background:#dff6fc;background:var(--teal-light);color:#0c7a93;color:var(--teal-dark)}.badge-rinnovo{background:#fff1d6;color:#92400e}.badge-nuova{background:#d6e8ff;color:#0f4fa3}.badge-bozza{background:#e9f2ff;background:var(--bg-alt);border:1px solid #e2ecf8;border:1px solid var(--border);color:#5a7290;color:var(--text-muted)}.badge-documenti{background:#fff1d6;color:#92400e}.badge-in_invio,.badge-in_processamento{background:#e3efff;background:var(--purple-light);color:#0f4fa3;color:var(--purple-dark)}.badge-ordine{background:#fff1d6;color:#92400e}.badge-completata{background:#e6faee;background:var(--green-light);color:#18a957;color:var(--green)}.form-group{margin-bottom:1.25rem}.form-group label{color:#0b2545;color:var(--text);display:block;font-size:13px;font-weight:600;letter-spacing:.01em;margin-bottom:6px}.form-group label .req{color:#e02f4f;color:var(--red);margin-left:2px}.form-group input,.form-group select,.form-group textarea{background:#fff;background:var(--surface);border:1px solid #cddcef;border:1px solid var(--border-strong);border-radius:10px;border-radius:var(--radius);color:#0b2545;color:var(--text);font-family:inherit;font-size:14px;padding:11px 14px;transition:border-color .15s,box-shadow .15s,background .15s;width:100%}.form-group input::placeholder,.form-group textarea::placeholder{color:#94a8c2;color:var(--text-faint)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#1f7ae0;border-color:var(--purple)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fbfdff;background:var(--surface-2);border-color:#1f7ae0;border-color:var(--purple);box-shadow:0 0 0 4px #1f7ae02e;box-shadow:var(--ring);outline:none}.form-group .hint{color:#5a7290;color:var(--text-muted);font-size:12px;margin-top:5px}.form-group .hint.warn{color:#d97706;color:var(--amber)}.form-group .error-msg{color:#e02f4f;color:var(--red);display:none;font-size:12px;font-weight:500;margin-top:5px}.form-group .error-msg.show{display:block}.radio-group{display:flex;flex-wrap:wrap;gap:10px}.radio-btn{background:#fff;background:var(--surface);border:1px solid #cddcef;border:1px solid var(--border-strong);border-radius:10px;border-radius:var(--radius);color:#5a7290;color:var(--text-muted);cursor:pointer;flex:1 1;font-size:14px;font-weight:500;min-width:110px;padding:11px 16px;text-align:center;transition:all .18s ease;-webkit-user-select:none;user-select:none}.radio-btn:hover{box-shadow:0 1px 2px #0f4fa30f;box-shadow:var(--shadow-sm);color:#0f4fa3;color:var(--purple-dark);transform:translateY(-1px)}.radio-btn.selected,.radio-btn:hover{border-color:#1f7ae0;border-color:var(--purple)}.radio-btn.selected{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);box-shadow:0 8px 18px -8px #1f7ae099;color:#fff;font-weight:600}.radio-btn.selected.teal{background:linear-gradient(135deg,#19b6d9,#1f7ae0);background:linear-gradient(135deg,var(--teal) 0,var(--purple) 100%);border-color:#19b6d9;border-color:var(--teal);color:#fff}.check-row{align-items:center;background:#fff;background:var(--surface);border:1px solid #cddcef;border:1px solid var(--border-strong);border-radius:10px;border-radius:var(--radius);cursor:pointer;display:flex;gap:12px;padding:12px 14px;transition:all .15s;-webkit-user-select:none;user-select:none}.check-row.checked,.check-row:hover{background:#f0f6ff;background:var(--purple-soft);border-color:#1f7ae0;border-color:var(--purple)}.check-row.checked{box-shadow:inset 3px 0 0 #1f7ae0;box-shadow:inset 3px 0 0 var(--purple)}.check-row input[type=checkbox]{accent-color:#1f7ae0;accent-color:var(--purple);cursor:pointer;flex-shrink:0;height:18px;width:18px}.check-row label{color:#0b2545;color:var(--text);cursor:pointer;font-size:14px;font-weight:500}.slider-row{align-items:center;display:flex;gap:14px}.slider-row input[type=range]{accent-color:#1f7ae0;accent-color:var(--purple);flex:1 1;height:6px}.slider-val{background:#f0f6ff;background:var(--purple-soft);border-radius:8px;color:#0f4fa3;color:var(--purple-dark);font-size:14px;font-weight:700;min-width:40px;padding:4px 10px;text-align:right}.btn{align-items:center;background:#fff;background:var(--surface);border:1px solid #cddcef;border:1px solid var(--border-strong);border-radius:10px;border-radius:var(--radius);color:#0b2545;color:var(--text);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 22px;transition:transform .12s ease,box-shadow .18s ease,background .15s ease,border-color .15s ease;white-space:nowrap}.btn:hover{background:#f0f6ff;background:var(--purple-soft);border-color:#1f7ae0;border-color:var(--purple);box-shadow:0 1px 2px #0f4fa30f;box-shadow:var(--shadow-sm);color:#0f4fa3;color:var(--purple-dark)}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);border-color:#0000;box-shadow:0 10px 22px -10px #1f7ae0b3;color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#1768c4,#14a3c3);box-shadow:0 14px 28px -10px #1f7ae0cc;transform:translateY(-1px)}.btn-primary:hover,.btn-teal{border-color:#0000;color:#fff}.btn-teal{background:linear-gradient(135deg,#19b6d9,#6bc8df);background:linear-gradient(135deg,var(--teal) 0,#6bc8df 100%);box-shadow:0 10px 22px -10px #19b6d999}.btn-teal:hover{background:linear-gradient(135deg,#0c7a93,#19b6d9);background:linear-gradient(135deg,var(--teal-dark) 0,var(--teal) 100%);border-color:#0000;color:#fff}.btn-danger{background:#e02f4f;background:var(--red);border-color:#e02f4f;border-color:var(--red);box-shadow:0 8px 18px -8px #e02f4f8c;color:#fff}.btn-danger:hover{background:#b81f3c;border-color:#b81f3c;color:#fff}.btn-sm{font-size:13px;padding:7px 14px}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.5rem}.btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.progress-bar{background:#fff;background:var(--surface);border:1px solid #e2ecf8;border:1px solid var(--border);border-radius:999px;box-shadow:0 1px 2px #0f4fa30f;box-shadow:var(--shadow-sm);display:flex;margin-bottom:1.75rem;padding:4px}.progress-step{height:8px;transition:background .3s ease,transform .3s ease}.progress-step.active{background:linear-gradient(90deg,var(--purple) 0,var(--teal) 100%);overflow:hidden;position:relative}.progress-step.active:after{animation:shimmer 1.6s infinite;background:linear-gradient(90deg,#0000,#ffffff80,#0000);content:"";inset:0;position:absolute}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.table-wrap{background:#fff;background:var(--surface);border:1px solid #e2ecf8;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f4fa30f;box-shadow:var(--shadow-sm);overflow-x:auto}table{border-collapse:collapse;font-size:14px;width:100%}th{background:#fbfdff;background:var(--surface-2);color:#5a7290;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;white-space:nowrap}td,th{border-bottom:1px solid #e2ecf8;border-bottom:1px solid var(--border);padding:13px 16px}td{color:#0b2545;color:var(--text);vertical-align:middle}tr:last-child td{border-bottom:none}tbody tr{transition:background .12s ease}.info-box,tbody tr:hover td{background:#f0f6ff;background:var(--purple-soft)}.info-box{border:1px solid #d8e7fb;border-left:4px solid #1f7ae0;border-left:4px solid var(--purple);border-radius:10px;border-radius:var(--radius);color:#0f4fa3;color:var(--purple-dark);font-size:13px;line-height:1.7;padding:13px 16px}.info-box.teal{background:#dff6fc;background:var(--teal-light);border-color:#c4ecf4 #c4ecf4 #c4ecf4 #19b6d9;border-left-color:var(--teal);color:#0c7a93;color:var(--teal-dark)}.info-box.amber{background:#fff7e6;background:var(--amber-light);border-color:#fde6b6 #fde6b6 #fde6b6 #d97706;border-left-color:var(--amber);color:#92400e}.stat-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:1.5rem}.stat-card{background:#fff;background:var(--surface);border:1px solid #e2ecf8;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);overflow:hidden;padding:1.1rem 1.2rem;position:relative;transition:transform .18s ease,box-shadow .18s ease}.stat-card:hover{box-shadow:0 6px 18px #0f4fa314;box-shadow:var(--shadow);transform:translateY(-2px)}.stat-card:before{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);content:"";height:3px;left:0;position:absolute;right:0;top:0}.stat-card .sl{color:#5a7290;color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.05em;margin-bottom:6px;text-transform:uppercase}.stat-card .sv{color:#0f4fa3;color:var(--purple-dark);font-size:26px;font-weight:700;letter-spacing:-.01em}.total-box{border-radius:22px;border-radius:var(--radius-xl);margin:1.25rem 0;overflow:hidden;padding:1.75rem 1.5rem;position:relative;text-align:center}.total-box.purple{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);box-shadow:0 22px 44px -18px #1f7ae080;color:#fff}.total-box.purple:after{background:radial-gradient(400px 200px at 100% 0,#ffffff40,#0000 60%);content:"";inset:0;pointer-events:none;position:absolute}.total-box.teal{background:linear-gradient(135deg,#19b6d9,#6bc8df);background:linear-gradient(135deg,var(--teal) 0,#6bc8df 100%);box-shadow:0 22px 44px -18px #19b6d980;color:#fff}.total-box .tl{color:#ffffffe0;font-size:13px;font-weight:600;letter-spacing:.04em;margin-bottom:6px;position:relative;text-transform:uppercase}.total-box .tv{color:#fff;font-size:38px;font-weight:700;letter-spacing:-.02em;position:relative}hr{border:none;border-top:1px solid #e2ecf8;border-top:1px solid var(--border);margin:1.5rem 0}.section-title{align-items:center;color:#5a7290;color:var(--text-muted);display:flex;font-size:11px;font-weight:700;gap:10px;letter-spacing:.08em;margin-bottom:.85rem;margin-top:1.5rem;text-transform:uppercase}.section-title:after{background:linear-gradient(90deg,#e2ecf8,#0000);background:linear-gradient(90deg,var(--border) 0,#0000 100%);content:"";flex:1 1;height:1px}.alert{align-items:center;border-radius:10px;border-radius:var(--radius);display:flex;font-size:13px;font-weight:500;gap:10px;margin-bottom:1rem;padding:13px 16px}.alert-error{background:#fdeef0;background:var(--red-light);border:1px solid #fbd1d8;color:#e02f4f;color:var(--red)}.alert-success{background:#e6faee;background:var(--green-light);border:1px solid #c0eed1;color:#18a957;color:var(--green)}.login-page{align-items:center;background:radial-gradient(800px 500px at 15% 20%,#1f7ae02e,#0000 60%),radial-gradient(700px 500px at 85% 80%,#19b6d92e,#0000 60%),linear-gradient(180deg,#eaf3ff,#fff);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.login-page:after,.login-page:before{border-radius:50%;content:"";filter:blur(60px);opacity:.55;pointer-events:none;position:absolute}.login-page:before{background:#1f7ae0;background:var(--purple);height:320px;left:-80px;top:-80px;width:320px}.login-page:after{background:#19b6d9;background:var(--teal);bottom:-120px;height:380px;right:-120px;width:380px}.login-card{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:#ffffffd9;border:1px solid #ffffffb3;border-radius:22px;border-radius:var(--radius-xl);box-shadow:0 18px 40px -12px #0f4fa340;box-shadow:var(--shadow-lg);max-width:420px;padding:2.5rem 2.25rem;position:relative;width:100%}.login-logo{display:flex;justify-content:center;margin-bottom:.75rem}.login-brand-logo{display:block;height:auto;margin:0 auto;max-height:160px;max-width:360px;object-fit:contain;width:100%}.login-tagline{color:#0c7a93;color:var(--teal-dark);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:4px;text-align:center;text-transform:uppercase}.login-bg-car{bottom:0;color:#1f7ae0;color:var(--purple);height:auto;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);width:min(900px,95vw);z-index:0}.login-sub{color:#5a7290;color:var(--text-muted);font-size:14px}.login-sub,.tabs{margin-bottom:1.75rem}.tabs{border-bottom:1px solid #e2ecf8;border-bottom:1px solid var(--border);display:flex;gap:4px;overflow-x:auto}.tab{border-bottom:2px solid #0000;color:#5a7290;color:var(--text-muted);cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-1px;padding:10px 18px;transition:all .15s;white-space:nowrap}.tab:hover{background:#f0f6ff;background:var(--purple-soft);border-radius:8px 8px 0 0;color:#0f4fa3;color:var(--purple-dark)}.tab.active{border-bottom-color:#1f7ae0;border-bottom-color:var(--purple);color:#1f7ae0;color:var(--purple);font-weight:600}.loading{align-items:center;color:#5a7290;color:var(--text-muted);display:flex;font-size:14px;gap:12px;justify-content:center;padding:3rem}.loading:before{animation:spin .7s linear infinite;border:2px solid #cddcef;border-top-color:#1f7ae0;border:2px solid var(--border-strong);border-radius:50%;border-top-color:var(--purple);content:"";height:18px;width:18px}@keyframes spin{to{transform:rotate(1turn)}}.text-muted{color:#5a7290;color:var(--text-muted)}.text-small{font-size:13px}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.flex{display:flex}.flex-between{align-items:center;display:flex;gap:1rem;justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.comp-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.comp-card{background:#fff;background:var(--surface);border:1px solid #e2ecf8;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:8px;overflow:hidden;padding:1.2rem 1.25rem;position:relative;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.comp-card:hover{box-shadow:0 6px 18px #0f4fa314;box-shadow:var(--shadow);transform:translateY(-3px)}.comp-card.selected,.comp-card:hover{border-color:#1f7ae0;border-color:var(--purple)}.comp-card.selected{background:#f0f6ff;background:var(--purple-soft);box-shadow:0 0 0 3px #1f7ae02e,0 6px 18px #0f4fa314;box-shadow:0 0 0 3px #1f7ae02e,var(--shadow)}.comp-card.selected:before{align-items:center;background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);border-radius:50%;box-shadow:0 4px 10px -2px #1f7ae099;color:#fff;content:"✓";display:flex;font-size:13px;font-weight:700;height:24px;justify-content:center;position:absolute;right:12px;top:12px;width:24px}.comp-card.unavailable{background:#f3f8ff;background:var(--bg);cursor:not-allowed;opacity:.5}.comp-card .comp-name{color:#0b2545;color:var(--text);font-size:15px;font-weight:700}.comp-card .comp-total{color:#0f4fa3;color:var(--purple-dark);font-size:26px;font-weight:700;letter-spacing:-.01em}.comp-card .comp-month{color:#5a7290;color:var(--text-muted);font-size:13px}.comp-card .comp-tag{align-self:flex-start;background:#f0f6ff;background:var(--purple-soft);border-radius:999px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.04em;padding:3px 10px;text-transform:uppercase}.total-box.eir{background:linear-gradient(135deg,#ff8a47,#ff5e5e);box-shadow:0 22px 44px -18px #ff5e5e8c;color:#fff}.total-box.eir .tl{color:#ffffffe6}.total-box.eir .tv{color:#fff}.btn-eir{background:linear-gradient(135deg,#ff8a47,#ff5e5e);box-shadow:0 10px 22px -10px #ff5e5e8c}.btn-eir,.btn-eir:hover{border-color:#0000;color:#fff}.btn-eir:hover{background:linear-gradient(135deg,#f0732e,#ed3f3f)}.badge-eir{background:#ffe7d4;color:#c2410c}@media (max-width:900px){.layout{flex-direction:column}.sidebar{border-bottom:1px solid #e2ecf8;border-bottom:1px solid var(--border);border-right:none;box-shadow:none;min-height:auto;padding:1rem 0;position:relative;width:100%}.sidebar-nav{display:flex;flex-wrap:wrap}.sidebar-nav .nav-section{width:100%}.sidebar-bottom{margin-top:.75rem}.main-content{padding:1.25rem}.page-header h1{font-size:22px}.total-box .tv{font-size:30px}}@media (hover:none){.sidebar-nav a:hover{background:#0000;color:inherit}.sidebar-nav a:hover .nav-icon{background:#1f7ae01a}.sidebar-nav a.active:hover{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);color:#fff}.check-row:hover,.comp-card:hover{background:#fff;background:var(--surface);border-color:#e2ecf8;border-color:var(--border)}.comp-card:hover{transform:none}.btn:hover{background:#fff;background:var(--surface)}.btn-primary:hover{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand)}.btn-danger:hover{background:#e02f4f;background:var(--red)}}*{-webkit-tap-highlight-color:transparent}@media (prefers-reduced-motion:no-preference){.card,.comp-card,.stat-card,.total-box{animation:rise .35s ease both}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#cddcef;background:var(--border-strong);border:2px solid #f3f8ff;border:2px solid var(--bg);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#1f7ae0;background:var(--purple)}.hero-auto{grid-gap:1.5rem;align-items:center;background:linear-gradient(135deg,#0b2545,#0f4fa3 60%,#1f7ae0);background:var(--grad-night);border-radius:24px;box-shadow:0 30px 60px -25px #0f4fa38c;color:#fff;display:grid;gap:1.5rem;grid-template-columns:1fr 1.15fr;isolation:isolate;margin-bottom:1.75rem;min-height:280px;overflow:hidden;padding:2.25rem 2.5rem;position:relative}.hero-auto:before{background:radial-gradient(600px 240px at 20% 0,#19b6d973,#0000 60%),radial-gradient(500px 200px at 100% 100%,#1f7ae099,#0000 60%);content:"";inset:0;position:absolute;z-index:-1}.hero-auto:after{background:repeating-linear-gradient(90deg,#ffffff8c 0 24px,#0000 24px 56px) 50%/100% 3px no-repeat,linear-gradient(180deg,#00000026,#0006);bottom:0;content:"";height:38px;left:0;opacity:.85;position:absolute;right:0;z-index:0}.hero-auto .hero-text{position:relative;z-index:2}.hero-auto .hero-brand-logo{display:block;height:auto;margin-bottom:14px;max-height:44px;max-width:160px;opacity:.95;width:auto}.hero-auto .hero-eyebrow{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;color:#b9e1ff;display:inline-flex;font-size:11px;font-weight:700;gap:8px;letter-spacing:.14em;padding:6px 12px;text-transform:uppercase}.hero-auto .hero-eyebrow:before{animation:pulseDot 1.6s ease-in-out infinite;background:#19b6d9;border-radius:50%;box-shadow:0 0 0 3px #19b6d959,0 0 12px #19b6d9;content:"";height:8px;width:8px}@keyframes pulseDot{50%{box-shadow:0 0 0 6px #19b6d926,0 0 16px #19b6d9}}.hero-auto h1{color:#fff;font-size:32px;font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:14px 0 8px}.hero-auto h1 span{color:#8fd6ff}.hero-auto p{color:#ffffffd1;font-size:14.5px;max-width:46ch}.hero-auto .hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;position:relative;z-index:3}.hero-auto .hero-cta .btn-primary{background:#fff;border:none;box-shadow:0 14px 28px -10px #0006;color:#0f4fa3;color:var(--purple-dark)}.hero-auto .hero-cta .btn-primary:hover{background:#eaf3ff;color:#0f4fa3;color:var(--purple-dark);transform:translateY(-2px)}.hero-auto .hero-cta .btn-ghost{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff4d;color:#fff}.hero-auto .hero-cta .btn-ghost:hover{background:#ffffff2e;border-color:#ffffff80;color:#fff}.hero-auto .hero-car{animation:heroFloat 5s ease-in-out infinite;filter:drop-shadow(0 28px 32px rgba(0,0,0,.4));height:auto;justify-self:end;max-width:560px;position:relative;width:100%;z-index:1}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.hero-auto .hero-car .head-glow{filter:drop-shadow(0 0 8px #fff7c2)}.hero-kpis{border-top:1px dashed #ffffff40;display:flex;flex-wrap:wrap;gap:22px;margin-top:18px;padding-top:16px;position:relative;z-index:2}.hero-kpi{display:flex;flex-direction:column;gap:2px}.hero-kpi .k-l{color:#ffffffb3;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.hero-kpi .k-v{font-feature-settings:"tnum";color:#fff;font-size:22px;font-variant-numeric:tabular-nums;font-weight:700}@media (max-width:820px){.hero-auto{grid-template-columns:1fr;min-height:auto;padding:1.75rem 1.5rem}.hero-auto .hero-car{justify-self:center;max-width:320px}.hero-auto h1{font-size:26px}}.stat-card.gauge{display:flex;flex-direction:column;gap:8px;padding:1.25rem 1.25rem 1.1rem}.stat-card.gauge:before{display:none}.stat-card.gauge .gauge-arc{--pct:60;aspect-ratio:2/1;background:conic-gradient(from 220deg,#1f7ae0 0,#19b6d9 calc(var(--pct)*1%),#1f7ae01a calc(var(--pct)*1%),#1f7ae01a 50%,#0000 50%);background:conic-gradient(from 220deg,var(--purple) 0,var(--teal) calc(var(--pct)*1%),#1f7ae01a calc(var(--pct)*1%),#1f7ae01a 50%,#0000 50%);border-radius:100% 100% 0 0/200% 200% 0 0;-webkit-mask:radial-gradient(closest-side,#0000 58%,#000 60%);mask:radial-gradient(closest-side,#0000 58%,#000 60%);position:relative;width:100%}.stat-card.gauge .gauge-val{bottom:6px;color:#0f4fa3;color:var(--purple-dark);font-size:22px;font-weight:700;left:0;position:absolute;right:0;text-align:center}.stat-card.gauge .sl{text-align:center}.road-strip{background:linear-gradient(180deg,#1a3252,#0b2545);border-radius:999px;box-shadow:inset 0 1px 2px #00000059;height:8px;margin:0 1.1rem .85rem;overflow:hidden;position:relative}.road-strip>span{animation:roadMove 1.4s linear infinite;background-image:linear-gradient(90deg,#fff 50%,#0000 0);background-repeat:repeat-x;background-size:28px 100%;height:2px;left:0;opacity:.85;position:absolute;right:0;top:50%;transform:translateY(-50%);will-change:background-position}@keyframes roadMove{0%{background-position:0 50%}to{background-position:-28px 50%}}@media (prefers-reduced-motion:reduce){.road-strip>span{animation:none}}.progress-bar{background:#0000;border:none;border-radius:0;box-shadow:none;gap:8px;overflow:visible;padding:0;position:relative}.progress-step{background:#e9f2ff;background:var(--bg-alt);border:1px solid #e2ecf8;border:1px solid var(--border);border-radius:999px;box-shadow:inset 0 1px 2px #0f4fa30d;flex:1 1;height:10px;position:relative;z-index:1}.progress-step.done{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);border-color:#0000;box-shadow:0 4px 10px -3px #1f7ae073}.progress-step.active{background:linear-gradient(90deg,#1f7ae0,#19b6d9);background:linear-gradient(90deg,var(--purple),var(--teal));border-color:#0000;box-shadow:0 0 0 4px #1f7ae02e,0 6px 14px -3px #1f7ae08c}.total-box.purple,.total-box.teal{position:relative}.total-box.purple:before,.total-box.teal:before{background:radial-gradient(220px 90px at 18% 100%,#fff7c273,#0000 60%),radial-gradient(220px 90px at 82% 100%,#fff7c273,#0000 60%);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.loading:before{content:none}.loading{flex-direction:column;gap:14px}.loading:after{animation:carBounce .5s ease-in-out infinite alternate;background:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 80 22%27><g fill=%27none%27 stroke=%27%231f7ae0%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27><path d=%27M8 16h64M6 16v-4l4-7h54l6 7v4M16 16v3M62 16v3%27/><circle cx=%2718%27 cy=%2714%27 r=%272.2%27 fill=%27%231f7ae0%27/><circle cx=%2760%27 cy=%2714%27 r=%272.2%27 fill=%27%231f7ae0%27/></g></svg>") 50%/contain no-repeat;content:"";height:22px;width:80px}@keyframes carBounce{to{transform:translateY(-3px)}}.empty-auto{background:#fff;background:var(--surface);border:1px dashed #cddcef;border:1px dashed var(--border-strong);border-radius:16px;border-radius:var(--radius-lg);padding:3rem 1.5rem;text-align:center}.empty-auto svg{color:#1f7ae0;color:var(--purple);display:block;height:auto;margin:0 auto 14px;opacity:.85;width:110px}.empty-auto h3{color:#0b2545;color:var(--text);font-size:18px;font-weight:700;margin-bottom:6px}.empty-auto p{color:#5a7290;color:var(--text-muted);font-size:14px;margin-bottom:16px}.card-title.with-car:before{background:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%231f7ae0%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27><path d=%27M5 17h14M3 17V12l2-5h14l2 5v5M7 17v2M17 17v2%27/><circle cx=%277.5%27 cy=%2714.5%27 r=%271.5%27 fill=%27%231f7ae0%27 stroke=%27none%27/><circle cx=%2716.5%27 cy=%2714.5%27 r=%271.5%27 fill=%27%231f7ae0%27 stroke=%27none%27/></svg>") 50%/contain no-repeat;background-color:initial!important;border-radius:0;content:"";height:22px;width:22px}.main{position:relative}.main:before{background:radial-gradient(circle at 80% 20%,#1f7ae00f,#0000 60%),radial-gradient(circle at 50% 80%,#19b6d90f,#0000 55%);bottom:0;content:"";pointer-events:none;position:fixed;right:0;top:0;width:240px;z-index:0}.main-content{position:relative;z-index:1}.login-page{perspective:800px}.login-road{animation:roadDrive 1.6s linear infinite;background:repeating-linear-gradient(0deg,#ffffffd9 0 30px,#0000 30px 70px) 50%/8px 100% no-repeat,linear-gradient(180deg,#0000,#1f7ae02e 60%,#19b6d940);bottom:-10px;filter:blur(.4px);height:280px;left:50%;opacity:.55;pointer-events:none;position:absolute;transform:translateX(-50%) rotateX(72deg);transform-origin:bottom center;width:220%;z-index:0}@keyframes roadDrive{to{background-position-y:70px,0}}.login-card{z-index:2}.login-bg-car{z-index:1}.btn-primary .btn-arrow,.btn-teal .btn-arrow{transition:transform .2s ease}.btn-primary:hover .btn-arrow,.btn-teal:hover .btn-arrow{transform:translateX(3px)}.comp-card .comp-tag{background:linear-gradient(135deg,#f0f6ff,#dff6fc);background:linear-gradient(135deg,var(--purple-soft),var(--teal-light));border:1px solid #1f7ae02e;color:#0f4fa3;color:var(--purple-dark)}.comp-card:before{background:linear-gradient(135deg,#1f7ae0,#19b6d9);background:var(--grad-brand);border-radius:16px 16px 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;content:"";height:4px;left:-1px;opacity:0;position:absolute;right:-1px;top:-1px;transition:opacity .18s ease}.comp-card.selected:before,.comp-card:hover:before{opacity:1}
/*# sourceMappingURL=main.c52be647.css.map*/