*,*:before,*:after{box-sizing:border-box}:root{--color-primary: #1a73e8;--color-primary-dark: #1558b0;--color-danger: #d93025;--color-success: #1e8e3e;--color-warning: #f29900;--color-bg: #f8f9fa;--color-surface: #ffffff;--color-border: #dadce0;--color-text: #202124;--color-text-secondary: #5f6368;--radius: 8px;--shadow: 0 1px 3px rgba(0,0,0,.12), 0 1px 2px rgba(0,0,0,.08)}body{margin:0;font-family:Segoe UI,Roboto,Arial,sans-serif;font-size:14px;color:var(--color-text);background:var(--color-bg)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 16px;font-weight:500}.card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin-bottom:16px}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:4px;border:none;cursor:pointer;font-size:14px;font-weight:500;transition:background .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark)}.btn-danger{background:var(--color-danger);color:#fff}.btn-outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn-outline:hover{background:#f1f3f4}.btn:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:4px;font-weight:500;color:var(--color-text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.form-control{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;outline:none;transition:border-color .15s}.form-control:focus{border-color:var(--color-primary)}.form-control.ng-invalid.ng-touched{border-color:var(--color-danger)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{position:sticky;top:0;z-index:1;background:#f1f3f4;text-align:left;padding:10px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}td{padding:10px 12px;border-bottom:1px solid var(--color-border);vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:#f8f9fa}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.badge-buy{background:#e8f0fe;color:#1a73e8}.badge-sell{background:#fce8e6;color:#d93025}.badge-interest{background:#e6f4ea;color:#1e8e3e}.badge-dividend{background:#fef7e0;color:#f29900}.badge-transfer{background:#f1f3f4;color:#5f6368}.badge-transfer_in{background:#e8f0fe;color:#1a73e8}.badge-transfer_out{background:#fce8e6;color:#d93025}.pl-positive{color:var(--color-success);font-weight:500}.pl-negative{color:var(--color-danger);font-weight:500}.page{padding:24px;max-width:1280px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}@media (max-width: 767px){.page{padding:16px 12px}.page-header{flex-wrap:wrap;gap:10px;margin-bottom:16px}}.alert{padding:12px 16px;border-radius:4px;margin-bottom:16px}.alert-error{background:#fce8e6;color:#d93025;border:1px solid #f28b82}.alert-success{background:#e6f4ea;color:#1e8e3e;border:1px solid #81c995}.alert-info{background:#e8f0fe;color:#1a73e8;border:1px solid #8ab4f8}
