*{box-sizing:border-box}body{font-family:system-ui,sans-serif;max-width:560px;margin:0 auto;padding:1.5rem}h1{margin-top:0}ul{list-style:none;padding:0;margin:0}.portfolio-row{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;padding:.5rem 0;border-bottom:1px solid #eee}.portfolio-row-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .75rem}.portfolio-row-main{display:flex;align-items:baseline;gap:.65rem;flex:1;min-width:0}.portfolio-name{font-weight:500;min-width:0}.strategy-signals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.15rem .35rem;font-size:.8125rem;line-height:1.2}.strategy-signals-caption{grid-column:1 / -1;font-size:.75rem;font-weight:500;color:#555;margin:0;padding:0}.strategy-signals label{display:flex;align-items:center;gap:.3rem;margin:0;cursor:pointer;white-space:nowrap}.strategy-signals label input[type=checkbox]{margin:0;flex-shrink:0;width:.85rem;height:.85rem}.strategy-signals-disabled label{cursor:default;opacity:.75}.portfolio-last-run{font-size:.75rem;line-height:1.35;color:#555}.portfolio-last-run-item:not(:first-child):before{content:" · ";color:#bbb}.portfolio-last-run-detail{margin-top:.35rem}.portfolio-manual-run{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.55rem}.portfolio-manual-run button{padding:.35rem .6rem;font-size:.875rem;cursor:pointer}.portfolio-detail-meta{margin-bottom:1rem}.portfolio-tradier-account-hint{font-size:.9rem;color:#555;margin:-.2rem 0 .35rem}.portfolio-detail-tradier{margin:-.2rem 0 .75rem}.portfolio-detail-tradier>button{margin-top:.35rem;padding:.35rem .6rem;font-size:.875rem;cursor:pointer}.tradier-account-panel{margin-top:.65rem;padding:.65rem .75rem;border:1px solid #ddd;border-radius:6px;background:#fafafa}.tradier-account-panel-status{font-size:.875rem;margin:0;color:#555}.tradier-account-panel-label{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;font-size:.875rem}.tradier-connect-account-label{margin-top:.65rem}.tradier-account-select{min-width:12rem;max-width:100%;padding:.35rem .5rem;font-size:.875rem}.tradier-account-panel-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.65rem}.tradier-account-panel-actions button{padding:.35rem .6rem;font-size:.875rem;cursor:pointer}.tradier-connect-form{margin-top:.5rem;padding:.65rem .75rem;border:1px solid #ccc;border-radius:6px}.tradier-form-note{font-size:.85rem;margin:0 0 .5rem;color:#444}.tradier-connect-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.tradier-api-key-input{min-width:10rem;flex:1 1 10rem;max-width:100%;padding:.4rem .5rem;font-size:.875rem}.tradier-sandbox-label{font-size:.875rem;white-space:nowrap}.tradier-connect-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.65rem}.tradier-connect-actions button{padding:.35rem .6rem;font-size:.875rem;cursor:pointer}.tradier-connect-error{margin-top:0}@media(max-width:380px){.strategy-signals{grid-template-columns:repeat(2,minmax(0,1fr))}}.status{font-size:.875rem;min-width:5rem}.status.connected{color:#0a0}.status.disconnected{color:#888}.portfolio-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .5rem;justify-content:flex-end}.portfolio-actions button{padding:.35rem .6rem;font-size:.875rem;cursor:pointer}.portfolio-actions button:disabled{opacity:.6;cursor:not-allowed}.verify-msg{font-size:.875rem;min-width:2.5rem}.add-form{display:flex;gap:.5rem;margin-top:1rem}.add-form input{flex:1;padding:.5rem;font-size:1rem}.error-msg{color:#c00;font-size:.875rem;margin-top:.5rem}.app-nav{display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #eee}.app-nav a{color:#06c;text-decoration:none}.app-nav a:hover{text-decoration:underline}.app-nav a.active{font-weight:600;color:#000}.stats-section{margin-bottom:1.5rem}.stats-section h2,.dashboard-portfolios h2{font-size:1rem;font-weight:600;margin-bottom:.5rem}.stats-list{list-style:none;padding:0;margin:0}.stats-list li{padding:.25rem 0}.dashboard-portfolios{margin-bottom:1.5rem}.portfolio-actions a{color:#06c;text-decoration:none;font-size:.875rem}.portfolio-actions a:hover{text-decoration:underline}.breadcrumb{font-size:.875rem;color:#666;margin-bottom:.5rem}.breadcrumb a{color:#06c;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.positions-table{width:100%;border-collapse:collapse;margin-top:.75rem}.positions-table th,.positions-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #eee}.positions-table th{font-weight:600;font-size:.875rem}.positions-table .pl-positive{color:#0a0}.positions-table .pl-negative{color:#c00}
