:root{--bg:#0f1115;--bg-elevated:#161922;--bg-card:#1b1f2a;--bg-card-hover:#212635;--border:#2a2f3d;--border-strong:#3a4055;--text:#e9eaee;--text-muted:#8b90a0;--text-faint:#5b6072;--accent:#35d0a0;--accent-strong:#22b587;--accent-bg:#35d0a01f;--danger:#ef5a5f;--danger-bg:#ef5a5f1f;--warning:#e8a33d;--warning-bg:#e8a33d1f;--role-p:#5b8def;--role-d:#35d0a0;--role-c:#e8a33d;--role-a:#ef5a5f;--radius:10px;--radius-lg:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.45;overflow-x:hidden}h1,h2,h3,h4{letter-spacing:-.01em;margin:0 0 .5em;font-weight:600}h1{font-size:1.6rem}h2{font-size:1.2rem}h3{font-size:1rem}p{color:var(--text-muted);margin:0 0 .75em}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--border-strong);background:var(--bg-card);color:var(--text);border-radius:var(--radius);padding:.55em 1em;transition:background .15s,border-color .15s,transform 50ms}button:hover{background:var(--bg-card-hover);border-color:var(--accent)}button:active{transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed}button:disabled:hover{background:var(--bg-card);border-color:var(--border-strong)}button.primary{background:var(--accent);border-color:var(--accent);color:#06231a;font-weight:600}button.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}button.danger{border-color:var(--danger);color:var(--danger);background:0 0}button.danger:hover{background:var(--danger-bg)}button.ghost{background:0 0;border-color:#0000}button.ghost:hover{background:var(--bg-card);border-color:var(--border)}input,select,textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);outline:none;max-width:100%;padding:.55em .8em}input:focus,select:focus,textarea:focus{border-color:var(--accent)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem}.badge{letter-spacing:.02em;border-radius:999px;align-items:center;gap:.3em;padding:.15em .55em;font-size:.75rem;font-weight:700;display:inline-flex}.badge.role-P{color:var(--role-p);background:#5b8def26}.badge.role-D{color:var(--role-d);background:#35d0a026}.badge.role-C{color:var(--role-c);background:#e8a33d26}.badge.role-A{color:var(--role-a);background:#ef5a5f26}.badge.interesse-basso{background:var(--bg-elevated);color:var(--text-faint)}.badge.interesse-medio{background:var(--warning-bg);color:var(--warning)}.badge.interesse-alto{background:var(--accent-bg);color:var(--accent)}.badge.trappola{background:var(--danger-bg);color:var(--danger)}.badge.prezzo-in_linea{background:var(--accent-bg);color:var(--accent)}.badge.prezzo-margine{background:var(--warning-bg);color:var(--warning)}.badge.prezzo-fuori{background:var(--danger-bg);color:var(--danger)}.pill-btn{border:1px solid var(--border-strong);background:var(--bg-elevated);border-radius:999px;padding:.25em .7em;font-size:.78rem}.pill-btn.active{background:var(--accent);color:#06231a;border-color:var(--accent);font-weight:700}.progress-bar{background:var(--bg-elevated);border-radius:999px;height:6px;overflow:hidden}.progress-bar>div{background:var(--accent);height:100%}.progress-bar.tight>div{background:var(--warning)}.progress-bar.over>div{background:var(--danger)}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.5em .7em}th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}tr:hover td{background:var(--bg-elevated)}.table-wrap{overflow-x:auto}.listone-table-wrap{max-height:75vh;overflow-y:auto}.listone-table-wrap thead th{background:var(--bg-card);z-index:1;position:sticky;top:0}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.mono{font-variant-numeric:tabular-nums}.app-header{border-bottom:1px solid var(--border);background:var(--bg-elevated);z-index:20;align-items:center;gap:1.25rem;padding:.9rem 1.5rem;display:flex;position:sticky;top:0;overflow:hidden}.app-header .brand{letter-spacing:-.02em;color:var(--accent);white-space:nowrap;flex-shrink:0;align-items:center;gap:.5em;font-size:1.1rem;font-weight:800;display:flex}.app-header nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.4rem;min-width:0;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 20px calc(100% - 20px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 20px calc(100% - 20px),#0000 100%)}.app-header nav::-webkit-scrollbar{display:none}.app-header nav a,.app-header nav button{color:var(--text-muted);border-radius:var(--radius);white-space:nowrap;background:0 0;border-color:#0000;flex-shrink:0;padding:.4em .85em;font-size:.92rem;font-weight:600}.app-header nav a:hover,.app-header nav button:hover{color:var(--text);background:var(--bg-card);text-decoration:none}.app-header nav a.active{color:var(--accent);background:var(--accent-bg)}.app-header nav .nav-sep{background:var(--border);flex-shrink:0;align-self:stretch;width:1px;margin:.2em .3em}.app-main{max-width:1200px;margin:0 auto;padding:1.75rem 1.5rem 4rem}@media (width<=640px){.reparto-bar{left:0;right:0;box-shadow:0 -4px 14px #0006;width:100%!important;padding-bottom:calc(.6rem + env(safe-area-inset-bottom))!important;margin:0!important;position:fixed!important;top:auto!important;bottom:0!important}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.grid{gap:1rem;display:grid}.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem}.toast{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius);z-index:100;padding:.7em 1.2em;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0006}.toast.error{border-color:var(--danger);color:var(--danger)}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#06080cb3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:100%;max-width:640px;max-height:85vh;padding:1.5rem;overflow-y:auto}.modal-close{float:right;position:sticky;top:0}.help-content h3{margin-top:1em}.help-content h3:first-child{margin-top:0}.help-content ul,.help-content ol{margin:0 0 .9em;padding-left:1.2em}.help-content li{margin-bottom:.35em}.help-content strong{color:var(--text)}.auth-page{justify-content:center;align-items:center;min-height:calc(100vh - 4rem);padding:1.5rem;display:flex}.auth-card{flex-direction:column;gap:.9rem;width:100%;max-width:360px;display:flex}.auth-card label{color:var(--text-muted);flex-direction:column;gap:.35em;font-size:.85rem;display:flex}.auth-card input{width:100%}.auth-error{color:var(--danger);margin:0}.nav-user{white-space:nowrap}.strategy-slider-row{flex-wrap:wrap;align-items:center;gap:.6em;margin-bottom:.5em;display:flex}.strategy-slider-row .ssr-label{flex:100px;min-width:100px}.strategy-slider-row .ssr-number{text-align:right;flex-shrink:0;width:76px}.strategy-slider-row .ssr-credits{text-align:right;flex-shrink:0;width:100px;font-size:.85rem}
