h2{font-size:1.1rem;margin-bottom:.3rem}
.center{text-align:center;margin:1rem 0}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem}
.stats .card{padding:.7rem;text-align:center;display:grid}
.stats b{font-size:1.5rem}
.stats .warn{color:var(--warn)}
.toolbar{display:flex;gap:.6rem;margin-bottom:1rem}
.toolbar input{flex:1;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem;color:#fff;font:inherit;min-width:0}
.toolbar input:focus,.sheet input:focus{outline:2px solid var(--primary);border-color:transparent}

.list{list-style:none;display:grid;gap:.6rem;margin:1rem 0}
.item{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem;display:grid;grid-template-columns:1fr auto;gap:.5rem .8rem;align-items:center}
.item.low{border-color:rgba(251,146,60,.6)}
.item.out{border-color:rgba(248,113,113,.7)}
.item .name{font-weight:700;background:none;border:0;text-align:left;padding:0}
.item .meta{font-size:.78rem;color:var(--muted)}
.item .bar{grid-column:1 / -1;height:6px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden}
.item .bar i{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .3s}
.item.low .bar i{background:var(--warn)}.item.out .bar i{background:var(--danger)}
.qty{display:flex;align-items:center;gap:.5rem}
.qty button{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--bg-alt);font-size:1.2rem;font-weight:700}
.qty button:active{background:var(--primary);color:#06101f}
.qty output{min-width:2ch;text-align:center;font-weight:800;font-size:1.1rem}
.badge{font-size:.7rem;font-weight:700;border-radius:99px;padding:.1rem .5rem;margin-left:.4rem;vertical-align:middle}
.badge.low{background:rgba(251,146,60,.2);color:var(--warn)}
.badge.out{background:rgba(248,113,113,.2);color:var(--danger)}
.row-actions{grid-column:1 / -1;display:flex;gap:.5rem}
.row-actions .btn{padding:.45rem .8rem;font-size:.85rem}

.log{display:flex;justify-content:space-between;gap:1rem;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:.7rem .9rem;font-size:.9rem}
.log .d-in{color:var(--accent);font-weight:700}.log .d-out{color:var(--warn);font-weight:700}

dialog{border:1px solid var(--border);border-radius:18px 18px 0 0;background:var(--bg-alt);color:#fff;width:100%;max-width:480px;margin:auto auto 0;padding:1.2rem;overflow:auto;max-height:88vh}
dialog::backdrop{background:rgba(0,0,0,.6)}
.sheet h3{margin-bottom:.8rem;display:flex;justify-content:space-between;align-items:center}
.sheet label{display:grid;gap:.25rem;font-size:.85rem;margin-bottom:.8rem;color:var(--muted)}
.sheet input{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem;color:#fff;font:inherit;width:100%}
.sheet .two{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.sheet .actions{display:flex;gap:.6rem;margin-top:.5rem}
.sheet .actions .btn{flex:1}
.x{background:none;border:0;font-size:1.4rem;color:var(--muted)}
.danger{color:var(--danger);background:none;border:0;font-size:.85rem;margin-top:.8rem}

/* Resultados */
.profit{text-align:center;display:grid;gap:.3rem;margin:1rem 0;padding:1.3rem}
.profit b{font-size:2.4rem;color:var(--accent);line-height:1.1}
.profit b.neg{color:var(--danger)}
.pill{justify-self:center;background:rgba(45,212,191,.15);color:var(--accent);font-weight:700;font-size:.8rem;border-radius:99px;padding:.15rem .7rem}
.hbar{margin-bottom:.9rem}.hbar:last-child{margin-bottom:0}
.hl{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:.3rem}
.ht{height:10px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden}
.ht i{display:block;height:100%;border-radius:99px;transition:width .4s}
.ht .in{background:var(--accent)}.ht .out{background:var(--warn)}.ht .cost{background:var(--violet)}
.two-cards{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.8rem}
.two-cards .card{display:grid;gap:.2rem}.two-cards b{font-size:1.4rem}
#view-results .btn{margin-top:1rem}

/* Buy / Sell */
.item .stock{text-align:right;display:grid;line-height:1.1}
.item .stock output{font-size:1.5rem;font-weight:800}
.item .stock span{font-size:.7rem;color:var(--muted)}
.row-actions{grid-column:1 / -1;display:flex;gap:.5rem;flex-wrap:wrap}
.row-actions .btn{flex:1;min-width:90px;padding:.55rem .6rem;font-size:.88rem;cursor:pointer}
.row-actions .btn[disabled]{opacity:.35;cursor:not-allowed}
.calc{margin:.2rem 0 .8rem;line-height:1.6}
.calc .pos{color:var(--accent)}.calc .neg2{color:var(--warn)}
.formula{margin-top:.8rem;font-size:.9rem;line-height:1.7}
