.portfolio-hero{padding-block:var(--space-6) var(--space-4);padding-inline:var(--space-4);text-align:center}.portfolio-hero-inner{max-width:760px;margin-inline:auto}.portfolio-hero-title{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-2);line-height:1.12}.portfolio-hero-sub{font-size:var(--text-base);color:var(--color-text-muted);margin:0 auto var(--space-4);max-width:60ch}.portfolio-spot-badge{justify-content:center;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-1);font-size:var(--text-sm);flex-wrap:wrap;display:inline-flex}.portfolio-spot-text{font-weight:var(--weight-semibold);color:var(--color-text)}.portfolio-spot-text #portfolio-spot-label{color:var(--color-text-muted);font-weight:var(--weight-bold);margin-inline-end:var(--space-1)}.portfolio-fresh{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted);font-weight:var(--weight-semibold);display:inline-flex}.portfolio-fresh-dot{background:var(--color-live,var(--color-up));border-radius:50%;block-size:.5rem;inline-size:.5rem}.portfolio-fresh[data-state=delayed] .portfolio-fresh-dot,.portfolio-fresh[data-state=cached] .portfolio-fresh-dot{background:var(--color-warning,var(--color-amber))}.portfolio-fresh[data-state=stale] .portfolio-fresh-dot,.portfolio-fresh[data-state=fallback] .portfolio-fresh-dot,.portfolio-fresh[data-state=unavailable] .portfolio-fresh-dot{background:var(--color-down)}.portfolio-trust-note{font-size:var(--text-xs);color:var(--color-text-muted);justify-content:center;gap:var(--space-1) var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-3);display:flex}.portfolio-trust-note a{color:var(--color-gold-dark,var(--color-gold));font-weight:var(--weight-semibold)}.portfolio-toolbar{max-width:1080px;padding-inline:var(--space-4);justify-content:space-between;align-items:end;gap:var(--space-3);flex-wrap:wrap;margin-inline:auto;display:flex}.portfolio-toolbar-group{gap:var(--space-1);flex-direction:column;display:flex}.portfolio-toolbar-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.portfolio-currency-select{font-family:inherit;font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);min-inline-size:120px}.portfolio-toolbar-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.portfolio-btn{font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);cursor:pointer;transition:background var(--transition-fast,.15s ease), color var(--transition-fast,.15s ease), border-color var(--transition-fast,.15s ease)}.portfolio-btn:hover{border-color:var(--color-gold-dark);color:var(--color-gold-dark)}.portfolio-btn-primary{background:var(--color-gold-dark);border-color:var(--color-gold-dark);color:var(--color-surface,#fff)}.portfolio-btn-primary:hover{background:var(--color-gold-deep,var(--color-gold-dark));color:var(--color-surface,#fff)}.portfolio-btn-danger:hover{border-color:var(--color-down);color:var(--color-down)}.portfolio-summary{max-width:1080px;padding-inline:var(--space-4);gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-block-start:var(--space-4);margin-inline:auto;display:grid}.portfolio-card{border:1px solid var(--color-border-subtle,var(--color-border));border-radius:var(--radius-lg);background:var(--color-surface-1);padding:var(--space-3) var(--space-4);gap:var(--space-1);flex-direction:column;display:flex}.portfolio-card-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.portfolio-card-value{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text-primary);font-variant-numeric:tabular-nums}.portfolio-card-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.portfolio-gain-up{color:var(--price-up,var(--color-move-up))}.portfolio-gain-down{color:var(--price-down,var(--color-move-down))}.portfolio-chart-section{max-width:1080px;padding-inline:var(--space-4);margin-block-start:var(--space-6);margin-inline:auto}.portfolio-chart-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary);margin:0 0 var(--space-3)}.portfolio-chart{border:1px solid var(--color-border-subtle,var(--color-border));border-radius:var(--radius-lg);background:var(--color-surface-1);padding:var(--space-3)}.portfolio-spark,.portfolio-spark-labels{direction:ltr}.portfolio-spark{block-size:auto;inline-size:100%;display:block}.portfolio-spark-line{stroke:var(--color-gold-dark);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.portfolio-spark-area{fill:var(--color-gold-bg,#b07d1f1a);stroke:none}.portfolio-spark-dot{fill:var(--color-gold-dark)}.portfolio-spark-labels{justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-block-start:var(--space-2);display:flex}.portfolio-spark-range{font-weight:var(--weight-semibold)}.portfolio-chart-note{font-size:var(--text-xs);color:var(--color-text-muted);margin-block-start:var(--space-2)}.portfolio-chart-empty{padding-block:var(--space-4);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.portfolio-holdings-section{max-width:1080px;padding-inline:var(--space-4);margin-block-start:var(--space-6);margin-inline:auto}.portfolio-holdings-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary);margin:0 0 var(--space-3)}.portfolio-table-wrap{border:1px solid var(--color-border-subtle,var(--color-border));border-radius:var(--radius-lg);background:var(--color-surface-1);overflow-x:auto}.portfolio-table{border-collapse:collapse;inline-size:100%;font-size:var(--text-sm);min-inline-size:720px}.portfolio-table th,.portfolio-table td{padding:var(--space-2) var(--space-3);text-align:start;border-block-start:1px solid var(--color-border-subtle,var(--color-border));font-variant-numeric:tabular-nums}.portfolio-table thead th{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);border-block-start:none}.portfolio-table-label{font-weight:var(--weight-semibold)}.portfolio-table-actions{white-space:nowrap}.portfolio-row-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:2px var(--space-3);font:inherit;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted);cursor:pointer;background:0 0;margin-inline-end:var(--space-1)}.portfolio-row-btn:hover{color:var(--color-gold-dark);border-color:var(--color-gold-dark)}.portfolio-row-btn-danger:hover{color:var(--color-down);border-color:var(--color-down)}.portfolio-muted{color:var(--color-text-muted)}.portfolio-empty{border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-1);padding:var(--space-8) var(--space-4);text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.portfolio-empty-title{font-size:var(--text-lg);color:var(--text-primary);margin:0}.portfolio-empty-body{max-width:48ch;color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.portfolio-dialog{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface,#fff);color:var(--color-text);padding:var(--space-5);inline-size:min(480px, calc(100vw - var(--space-6)));box-shadow:var(--shadow-xl)}.portfolio-dialog::backdrop{background:#0607088c}.portfolio-dialog-title{margin:0 0 var(--space-3);font-size:var(--text-lg);color:var(--text-primary)}.portfolio-dialog-body{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.portfolio-form{gap:var(--space-3);flex-direction:column;display:flex}.portfolio-field{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.portfolio-field-row{gap:var(--space-3);display:flex}.portfolio-field-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.portfolio-input{font-family:inherit;font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);inline-size:100%}.portfolio-input:focus-visible{outline:2px solid var(--color-gold-dark);outline-offset:1px}.portfolio-form-error{font-size:var(--text-xs);color:var(--color-down);font-weight:var(--weight-semibold);margin:0}.portfolio-form-actions{justify-content:end;gap:var(--space-2);margin-block-start:var(--space-2);display:flex}.portfolio-how{max-width:760px;padding-inline:var(--space-4);margin-block-start:var(--space-6);margin-inline:auto}.portfolio-how-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary);margin:0 0 var(--space-2)}.portfolio-how-list{gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);flex-direction:column;margin:0;padding-inline-start:var(--space-4);display:flex}.portfolio-disclaimer{max-width:760px;margin:var(--space-6) auto var(--space-8);padding-inline:var(--space-4);font-size:var(--text-xs);color:var(--color-text-faint,var(--color-text-muted));text-align:center}@media (width<=640px){.portfolio-hero-title{font-size:var(--text-3xl)}.portfolio-toolbar{flex-direction:column;align-items:stretch}.portfolio-toolbar-actions{justify-content:start}.portfolio-field-row{gap:var(--space-3);flex-direction:column}}.portfolio-hero{background:radial-gradient(120% 90% at 50% -10%, var(--color-gold-tint) 0%, transparent 60%), var(--color-bg);border-bottom:1px solid var(--color-gold-glow)}.portfolio-hero-title{font-family:var(--gtl-serif);letter-spacing:-.01em;color:var(--color-gold-antique);font-size:clamp(1.9rem,4.5vw,2.9rem);font-weight:600;line-height:1.05}.portfolio-spot-badge{border:1px solid var(--color-gold-glow);background:var(--color-surface);box-shadow:var(--shadow-sm);font-variant-numeric:tabular-nums;border-radius:999px}.portfolio-summary{gap:1rem}.portfolio-card{background:var(--color-surface);border:1px solid var(--color-gold-glow);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .18s,transform .18s}.portfolio-card:hover{box-shadow:var(--shadow-md)}.portfolio-card-label{color:var(--color-gold-deep);text-transform:uppercase;letter-spacing:.06em;font-size:.76rem;font-weight:700}.portfolio-card-value{font-family:var(--gtl-num);color:var(--color-ink-data);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,3.5vw,2.1rem);font-weight:800;line-height:1.1}.portfolio-card-hint{color:var(--text-secondary,#55493a)}.portfolio-holdings-title,.portfolio-holdings-heading,.portfolio-chart-heading,.portfolio-how-heading{font-family:var(--gtl-serif);color:var(--color-ink,#1a140a);font-weight:600}.portfolio-holdings-section,.portfolio-chart-section{background:var(--color-surface);border:1px solid var(--color-gold-glow);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.portfolio-toolbar button{border-radius:999px;transition:background .16s,border-color .16s}.portfolio-toolbar button:focus-visible,.portfolio-holdings-section :is(button,a,input,select):focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.portfolio-holdings-section input,.portfolio-holdings-section select{border-radius:var(--radius-md);border:1px solid var(--border-muted,#d9cdb2)}.portfolio-holdings-section input:focus-visible,.portfolio-holdings-section select:focus-visible{border-color:var(--color-gold);box-shadow:0 0 0 3px var(--color-gold-glow);outline:none}@media (width<=640px){.portfolio-summary{gap:.7rem}}
