.pnl-root{--pnl-radius:14px;--pnl-radius-sm:10px;--pnl-ease:cubic-bezier(.16, 1, .3, 1);color:var(--color-text);max-width:100%;overflow-x:clip}.pnl-hero{border-radius:var(--pnl-radius);background:radial-gradient(680px 300px at 92% -30%, #6366f133, transparent 62%), radial-gradient(460px 220px at 2% 130%, #ec48991a, transparent 60%), linear-gradient(140deg, var(--surface2), var(--surface) 72%);box-shadow:0 0 0 1px var(--ring-hairline);margin-bottom:20px;padding:clamp(28px,4vw,40px) clamp(22px,4vw,36px);position:relative;overflow:hidden}.pnl-brand{letter-spacing:-.035em;color:var(--color-text);align-items:baseline;gap:.14em;font-size:clamp(1.7rem,4vw,2.3rem);font-weight:800;line-height:1.05;display:inline-flex}.pnl-brand .pnl-brand-mark{background:var(--gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.pnl-tagline{color:var(--text-muted);text-wrap:balance;max-width:560px;margin:12px 0 0;font-size:clamp(.95rem,2.4vw,1.1rem);line-height:1.5}.pnl-hero-trust{flex-wrap:wrap;gap:8px 10px;margin-top:20px;display:flex}.pnl-trust-chip{color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border);background:#ffffff0a;border-radius:999px;align-items:center;gap:6px;padding:5px 12px 5px 10px;font-size:.78rem;font-weight:500;display:inline-flex}.pnl-trust-chip svg{width:13px;height:13px;color:var(--success);flex:none}.pnl-asset-classes{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px;display:grid}.pnl-asset-card{background:var(--surface);border-radius:var(--pnl-radius);font:inherit;text-align:left;cursor:pointer;box-shadow:0 0 0 1px var(--border);transition:transform .32s var(--pnl-ease), box-shadow .32s var(--pnl-ease), background-color .32s var(--pnl-ease);flex-direction:column;align-items:flex-start;gap:6px;padding:16px;display:flex}@media (hover:hover){.pnl-asset-card:not(.is-disabled):hover{background:var(--surface2);box-shadow:0 0 0 1px var(--border-hover), var(--shadow-lg);transform:translateY(-2px)}}.pnl-asset-card.is-active{background:radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 70%), var(--surface2);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 55%, transparent)}.pnl-asset-card.is-disabled{cursor:not-allowed;opacity:.55}.pnl-asset-icon{width:34px;height:34px;color:var(--accent);background:linear-gradient(135deg,#6366f11f,#6366f138);border-radius:10px;justify-content:center;align-items:center;font-size:1.05rem;font-weight:800;display:inline-flex;box-shadow:inset 0 0 0 1px #6366f133}.pnl-asset-card.is-active .pnl-asset-icon{background:var(--gradient);color:#fff;box-shadow:0 3px 10px #6366f159}.pnl-asset-name{letter-spacing:-.01em;color:var(--color-text);font-size:1.02rem;font-weight:700}.pnl-asset-status{border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.pnl-asset-status.is-live{background:var(--success-tint);color:var(--success)}.pnl-asset-status.is-live:before{content:"";background:var(--success);width:6px;height:6px;box-shadow:0 0 0 3px var(--success-soft);border-radius:50%}.pnl-asset-status.is-soon{background:var(--surface3);color:var(--text-dim)}.pnl-asset-card.is-disabled .pnl-asset-icon{color:var(--text-dim);box-shadow:inset 0 0 0 1px var(--border);background:#ffffff0a}.pnl-panel{background:var(--surface);border-radius:var(--pnl-radius);box-shadow:0 0 0 1px var(--border);margin-bottom:22px;padding:clamp(16px,3vw,26px)}.pnl-panel h2{letter-spacing:-.015em;color:var(--color-text);margin:0 0 16px;font-size:1.22rem}.pnl-panel-head{margin-bottom:22px}.pnl-panel-head h2{letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:700}.pnl-panel-sub{color:var(--text-muted);max-width:52ch;margin:5px 0 0;font-size:.88rem}.pnl-howto-steps{grid-template-columns:1fr 1fr;gap:16px 24px;margin:0;padding:0;list-style:none;display:grid}.pnl-step{align-items:flex-start;gap:14px;display:flex}.pnl-step-num{font-variant-numeric:tabular-nums;width:28px;height:28px;color:var(--accent);background:var(--accent-soft);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:inset 0 0 0 1px #6366f147}.pnl-step-body{flex-direction:column;gap:3px;min-width:0;display:flex}.pnl-step-body strong{color:var(--color-text);letter-spacing:-.01em;font-size:.94rem}.pnl-step-body span{color:var(--text-muted);font-size:.88rem;line-height:1.5}.pnl-form-row{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.pnl-form-row label{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);flex-direction:column;gap:6px;font-size:.72rem;font-weight:700;display:flex}.pnl-form-row .pnl-input,.pnl-form-row .pnl-field-error{text-transform:none;letter-spacing:normal}.pnl-form-row .pnl-field-error{font-weight:500}.pnl-input{font:inherit;border-radius:var(--pnl-radius-sm);background:var(--surface2);color:var(--color-text);box-shadow:0 0 0 1px var(--border);transition:box-shadow .14s var(--pnl-ease), background-color .14s var(--pnl-ease);border:none;padding:11px 13px;font-size:.92rem}.pnl-input.is-error{box-shadow:0 0 0 1px var(--error), 0 0 0 3px var(--error-soft)}.pnl-field-error{color:var(--error);margin:6px 0 0;font-size:.8rem;font-weight:500}.pnl-input::placeholder{color:var(--text-dim)}.pnl-input:hover{box-shadow:0 0 0 1px var(--border-hover)}.pnl-input:focus{box-shadow:0 0 0 1px var(--accent), 0 0 0 3px var(--accent-soft);outline:none}.pnl-cselect{position:relative}.pnl-cselect-trigger{width:100%;font:inherit;text-align:left;border-radius:var(--pnl-radius-sm);background:var(--surface2);color:var(--color-text);box-shadow:0 0 0 1px var(--border);cursor:pointer;transition:box-shadow .14s var(--pnl-ease), background-color .14s var(--pnl-ease);border:none;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;font-size:.92rem;display:flex}.pnl-cselect-trigger:hover:not(:disabled){box-shadow:0 0 0 1px var(--border-hover)}.pnl-cselect-trigger:disabled{opacity:.5;cursor:not-allowed}.pnl-mini-select .pnl-cselect-trigger{text-transform:none;letter-spacing:normal;min-width:150px;padding:8px 12px;font-size:.9rem;font-weight:500}.pnl-mini-select .pnl-cselect-menu{min-width:max-content}.pnl-cselect-trigger:focus-visible{box-shadow:0 0 0 1px var(--accent), 0 0 0 3px var(--accent-soft);outline:none}.pnl-cselect-trigger svg{color:var(--text-muted);transition:transform .2s var(--pnl-ease);flex:none}.pnl-cselect-trigger svg[data-open]{transform:rotate(180deg)}.pnl-cselect-menu{z-index:20;border-radius:var(--pnl-radius-sm);background:var(--surface2);box-shadow:var(--float-shadow-dropdown);animation:pnl-menu-in .12s var(--pnl-ease);margin:0;padding:5px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0}@keyframes pnl-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pnl-cselect-item{color:var(--color-text);cursor:pointer;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;font-size:.9rem;display:flex}.pnl-cselect-item svg{color:var(--accent);flex:none}.pnl-cselect-item.is-active{background:var(--accent-soft)}.pnl-cselect-item.is-disabled{color:var(--text-dim);cursor:not-allowed}@media (prefers-reduced-motion:reduce){.pnl-cselect-menu{animation:none}.pnl-cselect-trigger svg{transition:none}}.pnl-drop-zone{border:1.5px dashed var(--border-strong);border-radius:var(--pnl-radius);text-align:center;cursor:pointer;background:radial-gradient(320px 120px at 50% 0%, #6366f10d, transparent 70%), var(--surface2);transition:border-color .2s var(--pnl-ease), background-color .2s var(--pnl-ease), box-shadow .2s var(--pnl-ease);flex-direction:column;align-items:center;gap:4px;padding:clamp(26px,5vw,38px) 16px;display:flex}.pnl-drop-zone:hover:not(.is-disabled){border-color:var(--accent);background:var(--surface3)}.pnl-drop-zone.is-dragover{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent), 0 0 0 4px var(--accent-soft);border-style:solid}.pnl-drop-zone.is-disabled{opacity:.55;cursor:default;pointer-events:none}.pnl-drop-reject{color:var(--error);margin:6px 0 0;font-size:.8rem;font-weight:500}.pnl-drop-icon{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);transition:transform .2s var(--pnl-ease);border-radius:12px;justify-content:center;align-items:center;margin-bottom:6px;display:inline-flex;box-shadow:inset 0 0 0 1px #6366f13d}.pnl-drop-zone:hover .pnl-drop-icon,.pnl-drop-zone.is-dragover .pnl-drop-icon{transform:translateY(-2px)}.pnl-drop-title{color:var(--color-text);letter-spacing:-.01em;margin:0;font-size:.96rem;font-weight:600}.pnl-drop-link{color:var(--accent);font-weight:600}.pnl-drop-zone p{margin:0}.pnl-hint{color:var(--text-muted);font-size:.84rem}.pnl-file-list{text-align:left;cursor:default;scrollbar-width:thin;scrollbar-color:#ffffff24 transparent;flex-direction:column;gap:2px;width:100%;max-height:176px;margin:14px 0 0;padding:0 0 20px;list-style:none;display:flex;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 22px),#0000);mask-image:linear-gradient(#000 calc(100% - 22px),#0000)}.pnl-file-list::-webkit-scrollbar{width:8px}.pnl-file-list::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:99px}.pnl-file-list::-webkit-scrollbar-track{background:0 0}.pnl-file-list li{border-radius:var(--pnl-radius-sm);color:var(--color-text);transition:background-color .12s;transition:box-shadow .14s var(--pnl-ease);background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px 9px 11px;font-size:.9rem;display:flex}.pnl-file-list li:hover{box-shadow:0 0 0 1px var(--border-hover)}.pnl-file-meta{align-items:center;gap:9px;min-width:0;display:flex}.pnl-file-icon{color:var(--success);flex:none}.pnl-file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pnl-file-size{font-variant-numeric:tabular-nums;color:var(--text-dim);flex:none;font-size:.78rem}.pnl-file-remove{color:var(--text-muted);cursor:pointer;transition:color .14s var(--pnl-ease), background-color .14s var(--pnl-ease);background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:5px;display:inline-flex}.pnl-file-remove:hover{background:var(--error-soft);color:var(--error)}.pnl-primary{font:inherit;letter-spacing:-.01em;background:var(--gradient);color:#fff;border-radius:var(--pnl-radius-sm);cursor:pointer;transition:transform .16s var(--pnl-ease), filter .16s var(--pnl-ease), box-shadow .16s var(--pnl-ease);border:none;justify-content:center;align-items:center;gap:8px;padding:12px 26px;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #6366f159}@media (hover:hover){.pnl-primary:not(:disabled):hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 20px #6366f16b}}.pnl-primary:not(:disabled):active{transform:translateY(0)}.pnl-primary:disabled{color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border);cursor:not-allowed;background:#6366f124}.pnl-run-bar{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding-top:18px;display:flex}.pnl-run-hint{color:var(--text-muted);margin:0;font-size:.85rem}.pnl-run-btn{padding:12px 30px}.pnl-ghost{font:inherit;color:var(--accent);border-radius:var(--pnl-radius-sm);box-shadow:0 0 0 1px var(--border);cursor:pointer;background:0 0;border:none;padding:7px 13px;font-size:.85rem;font-weight:600;transition:background .12s,box-shadow .12s}.pnl-ghost:hover{background:var(--accent-soft);box-shadow:0 0 0 1px var(--border-hover)}.pnl-report-issue{justify-content:center;margin-top:4px;display:flex}.pnl-report-issue .pnl-ghost{color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.pnl-root :where(button,select,input,summary):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pnl-advanced{margin:16px 0}.pnl-advanced>summary{cursor:pointer;color:var(--color-text);align-items:center;gap:7px;font-size:.92rem;font-weight:600;list-style:none;display:flex}.pnl-advanced>summary::-webkit-details-marker{display:none}.pnl-adv-chevron{color:var(--text-muted);transition:transform .2s var(--pnl-ease), color .12s ease;flex:none}.pnl-advanced[open] .pnl-adv-chevron{transform:rotate(90deg)}.pnl-quarters-rows{flex-direction:column;gap:8px;margin:12px 0;display:flex}.pnl-quarter-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) 32px;align-items:center;gap:8px;display:grid}.pnl-quarter-row .pnl-input{width:100%;min-width:0;padding:9px 11px}.pnl-quarter-row .q-remove{color:var(--error);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;padding:4px 8px;font-size:1.1rem}.pnl-quarter-row .q-remove:hover{background:var(--error-soft)}.pnl-quarters-actions{flex-wrap:wrap;gap:8px;display:flex}.pnl-quarters-warning{color:var(--error);margin-top:10px;font-size:.85rem}.pnl-run-status{margin-top:12px;font-size:.9rem}.pnl-run-status.is-error{color:var(--error);font-weight:600}.pnl-progress-track{background:var(--surface3);border-radius:99px;height:8px;overflow:hidden}.pnl-progress-fill{background:linear-gradient(90deg, var(--accent), var(--brand-pink));border-radius:99px;height:100%;transition:width .5s}.pnl-progress-text{color:var(--text-muted);align-items:center;gap:8px;margin-top:7px;font-size:.84rem;font-weight:600;display:flex}.pnl-progress-text:before{content:"";border:2px solid var(--accent);border-right-color:#0000;border-radius:50%;flex:none;width:11px;height:11px;animation:.8s linear infinite pnl-spin;display:inline-block}@keyframes pnl-spin{to{transform:rotate(360deg)}}.pnl-results-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.pnl-results-head h2{margin:0}.pnl-results-meta{color:var(--text-muted);overflow-wrap:anywhere;margin-top:2px;font-size:.85rem;font-weight:400}.pnl-mini-select{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;flex-direction:column;gap:4px;font-size:.72rem;font-weight:700;display:inline-flex}.pnl-net-hero{border-radius:var(--pnl-radius);background:var(--surface2);box-shadow:0 0 0 1px var(--border);grid-column:1/-1;padding:18px 22px}.pnl-net-hero.is-pos{background:var(--success-soft);box-shadow:0 0 0 1px var(--success-tint)}.pnl-net-hero.is-neg{background:var(--error-soft);box-shadow:0 0 0 1px var(--error-tint)}.pnl-net-hero-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.72rem;font-weight:700}.pnl-net-hero-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text-muted);margin-top:2px;font-size:clamp(1.5rem,5vw,2.2rem);font-weight:800}.pnl-net-hero.is-pos .pnl-net-hero-value{color:var(--success)}.pnl-net-hero.is-neg .pnl-net-hero-value{color:var(--error)}.pnl-stat-cards{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;margin-bottom:18px;display:grid}.pnl-stat-card{border-radius:var(--pnl-radius-sm);background:var(--surface2);box-shadow:0 0 0 1px var(--border);min-width:0;padding:10px 12px;transition:box-shadow .12s,transform .12s}@media (hover:hover){.pnl-stat-card:hover{box-shadow:0 0 0 1px var(--border-hover);transform:translateY(-1px)}}.pnl-stat-card .pnl-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;font-weight:700;overflow:hidden}.pnl-stat-card .pnl-stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.01em;text-overflow:ellipsis;color:var(--color-text);margin-top:2px;font-size:clamp(.9rem,1.6vw,1.05rem);font-weight:800;overflow:hidden}.pnl-stat-value.is-profit{color:var(--success)}.pnl-stat-value.is-loss{color:var(--error)}.pnl-summary-detail{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:18px;display:grid}.pnl-summary-block{border-radius:var(--pnl-radius-sm);background:var(--surface2);box-shadow:0 0 0 1px var(--border);min-width:0;padding:14px 16px}.pnl-summary-block h3{color:var(--color-text);margin:0 0 8px;font-size:.95rem}.pnl-summary-block table{border-collapse:collapse;width:100%;font-size:.86rem}.pnl-summary-block td{border-bottom:1px solid var(--border);color:var(--text-muted);padding:5px 0}.pnl-summary-block tr:last-child td{border-bottom:none}.pnl-summary-block td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-text);font-weight:600}.pnl-chart-panel{border-radius:var(--pnl-radius);background:var(--surface);box-shadow:0 0 0 1px var(--border);margin-bottom:18px;padding:clamp(12px,2.5vw,18px)}.pnl-chart-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.pnl-chart-toolbar-right{flex-wrap:wrap;gap:10px;display:flex}.pnl-chart-window{align-items:center;gap:10px;display:flex}.pnl-win-label{border-radius:var(--pnl-radius-sm);background:var(--surface2);min-width:10ch;height:38px;box-shadow:0 0 0 1px var(--border);letter-spacing:-.01em;color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;justify-content:center;align-items:center;padding:0 16px;font-size:.95rem;font-weight:700;display:inline-flex}.pnl-nav-btn{font:inherit;background:var(--surface2);width:38px;height:38px;box-shadow:0 0 0 1px var(--border);border-radius:var(--pnl-radius-sm);cursor:pointer;color:var(--color-text);border:none;font-size:1.25rem;line-height:1;transition:box-shadow .12s,color .12s,background .12s}.pnl-nav-btn:hover:not(:disabled){box-shadow:0 0 0 1px var(--accent);color:var(--accent)}.pnl-nav-btn:disabled{opacity:.35;cursor:not-allowed}.pnl-control-group{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.pnl-control-group button{font:inherit;background:var(--surface2);box-shadow:0 0 0 1px var(--border);cursor:pointer;color:var(--text-muted);border:none;border-radius:99px;padding:7px 15px;font-size:.83rem;font-weight:600;transition:all .12s}.pnl-control-group button:hover{box-shadow:0 0 0 1px var(--border-hover);color:var(--accent)}.pnl-control-group button.is-selected{background:color-mix(in srgb, var(--accent) 16%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent);color:var(--color-text)}.pnl-chart{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.pnl-chart.as-tiles{overflow-x:visible}.pnl-chart svg{display:block}.pnl-bar-profit{fill:var(--success)}.pnl-bar-loss{fill:var(--error)}.pnl-bar-profit,.pnl-bar-loss{fill-opacity:.88;transition:fill-opacity .12s}.pnl-bar-profit:hover,.pnl-bar-loss:hover{fill-opacity:1}.pnl-axis{stroke:var(--border-strong);stroke-width:1px}.pnl-grid-line{stroke:var(--border);stroke-width:1px;opacity:.55}.pnl-tick-label{fill:var(--text-muted);font-size:10px}.pnl-chart-empty{color:var(--text-muted);text-align:center;padding:24px 0}.pnl-tile-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));align-items:start;gap:8px;display:grid}.pnl-tile-grid.g-day{grid-template-columns:repeat(7,1fr)}.pnl-tile-grid.g-month{grid-template-columns:repeat(4,1fr)}.pnl-tile-grid.g-row{grid-template-columns:repeat(var(--pnl-tile-cols,4), 1fr)}.pnl-tile{font:inherit;text-align:left;box-shadow:0 0 0 1px var(--border);border-radius:var(--pnl-radius-sm);background:var(--surface2);cursor:pointer;min-width:0;transition:transform .16s var(--pnl-ease), box-shadow .12s ease;border:none;padding:8px 10px}.pnl-tile:hover{box-shadow:0 0 0 1px var(--border-hover);transform:translateY(-1px)}.pnl-tile.is-expanded{box-shadow:0 0 0 2px var(--accent)}.pnl-tile-head{text-transform:uppercase;letter-spacing:.07em;color:var(--text-alpha-55);white-space:nowrap;text-overflow:ellipsis;font-size:.62rem;font-weight:600;overflow:hidden}.pnl-tile-net{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;color:var(--text-muted);margin-top:2px;font-size:.85rem;font-weight:700;overflow:hidden}.pnl-tile.is-pos .pnl-tile-net{color:color-mix(in srgb, var(--success) 55%, #fff)}.pnl-tile.is-neg .pnl-tile-net{color:color-mix(in srgb, var(--error) 55%, #fff)}.pnl-tile.is-empty{opacity:.4;box-shadow:inset 0 0 0 1px var(--border);background:0 0}.pnl-tile.is-empty:hover{opacity:.7}.pnl-tile.is-empty .pnl-tile-net{color:var(--text-dim);font-weight:500}.pnl-tile-detail-panel{border-radius:var(--pnl-radius-sm);background:var(--surface2);box-shadow:0 0 0 1px var(--accent);flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:10px;padding:12px 16px;display:flex}.pnl-tdp-title{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);flex-basis:100%;font-size:.72rem;font-weight:800}.pnl-tdp-item{align-items:baseline;gap:6px;font-size:.85rem;display:flex}.pnl-tdp-item span{color:var(--text-muted)}.pnl-tdp-item b{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-text);font-weight:700}.pnl-tdp-item b.p{color:var(--success)}.pnl-tdp-item b.l{color:var(--error)}.pnl-chart-tooltip{pointer-events:none;background:var(--surface2);color:var(--color-text);z-index:10;white-space:nowrap;box-shadow:var(--float-shadow-popover);border-radius:8px;padding:7px 11px;font-size:.8rem;position:fixed}.pnl-downloads.is-cta{border-radius:var(--pnl-radius);background:var(--surface2);box-shadow:0 0 0 1px var(--ring-hairline);margin-top:18px;padding:20px 22px}.pnl-downloads h3{color:var(--color-text);margin:0 0 4px}.pnl-download-row{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:12px;display:flex}.pnl-download-row .pnl-primary{padding:10px 24px}.pnl-console-panel{margin-top:20px}.pnl-console-panel>summary{cursor:pointer;color:var(--color-text);font-size:.92rem;font-weight:600}.pnl-console-output{background:var(--surface3);color:var(--text-muted);border-radius:var(--pnl-radius-sm);font-family:var(--font-mono,Consolas, "Cascadia Mono", monospace);white-space:pre-wrap;word-break:break-word;max-height:260px;margin:10px 0 0;padding:12px 14px;font-size:.78rem;line-height:1.5;overflow:auto}.pnl-run-receipt{margin-top:18px}.pnl-run-receipt>summary{cursor:pointer;color:var(--text-muted);align-items:center;gap:10px;font-size:.88rem;font-weight:500;list-style:none;transition:color .12s;display:flex}.pnl-run-receipt>summary:hover{color:var(--color-text)}.pnl-advanced>summary:hover .pnl-adv-chevron,.pnl-run-receipt>summary:hover .pnl-adv-chevron{color:var(--accent)}.pnl-console-panel>summary{transition:color .12s}.pnl-console-panel>summary:hover{color:var(--accent)}@media (hover:hover){.pnl-file-list li:hover{background:var(--surface3)}}.pnl-run-receipt>summary::-webkit-details-marker{display:none}.pnl-run-receipt[open] .pnl-adv-chevron{transform:rotate(90deg)}.pnl-run-receipt>.pnl-activity{margin-top:12px;padding-left:26px}.pnl-activity-marker.is-receipt{background:var(--success-soft);box-shadow:inset 0 0 0 1px var(--success-tint)}.pnl-activity-marker.is-receipt:after{content:"";border:solid var(--success);border-width:0 1.5px 1.5px 0;width:4px;height:7px;position:absolute;top:3.5px;left:5px;transform:rotate(45deg)}.pnl-activity-list{flex-direction:column;gap:8px;margin:0 0 4px;padding:0;list-style:none;display:flex}.pnl-activity-list li{color:var(--text-muted);align-items:center;gap:10px;font-size:.88rem;display:flex}.pnl-activity-list li.is-current{color:var(--color-text)}.pnl-activity-marker{border-radius:50%;flex:none;width:16px;height:16px;position:relative}.pnl-activity-list li.is-done .pnl-activity-marker{background:var(--success-soft);box-shadow:inset 0 0 0 1px var(--success-tint)}.pnl-activity-list li.is-done .pnl-activity-marker:after{content:"";border:solid var(--success);border-width:0 1.5px 1.5px 0;width:4px;height:7px;position:absolute;top:3.5px;left:5px;transform:rotate(45deg)}.pnl-activity-list li.is-current .pnl-activity-marker:after{content:"";border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:.9s linear infinite pnl-spin;position:absolute;inset:2px}@media (prefers-reduced-motion:reduce){.pnl-activity-list li.is-current .pnl-activity-marker:after{animation:none}}.pnl-footer{text-align:center;color:var(--text-muted);padding:24px;font-size:.85rem}@media (max-width:720px){.pnl-howto-steps{grid-template-columns:1fr}}@media (max-width:640px){.pnl-hero{padding:22px 18px}.pnl-hero-trust{gap:6px 8px;margin-top:16px}.pnl-trust-chip{padding:4px 10px 4px 8px;font-size:.72rem}.pnl-asset-classes{gap:8px}.pnl-asset-card{gap:5px;padding:12px 10px}.pnl-asset-name{font-size:.88rem}.pnl-asset-status{padding:2px 7px;font-size:.64rem}.pnl-asset-status.is-live:before{width:5px;height:5px;box-shadow:0 0 0 2px var(--success-soft)}.pnl-asset-icon{border-radius:8px;width:30px;height:30px;font-size:.9rem}.pnl-form-row{grid-template-columns:1fr}.pnl-drop-zone{padding:22px 14px}.pnl-drop-icon{width:40px;height:40px}.pnl-drop-title{font-size:.92rem}.pnl-quarters-rows{gap:12px;margin:16px 0}.pnl-quarter-row{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) 30px;gap:8px}.pnl-quarter-row .pnl-input{padding:10px;font-size:.85rem}.pnl-quarter-row .q-remove{justify-self:center;padding:5px}.pnl-quarters-actions{gap:10px;margin-top:16px}.pnl-quarters-actions .pnl-ghost{text-align:center;flex:1;justify-content:center;padding:9px 13px}.pnl-file-remove{padding:9px}.pnl-stat-cards{grid-template-columns:repeat(3,1fr);gap:6px}.pnl-summary-detail{grid-template-columns:1fr;gap:10px}.pnl-tile-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px}.pnl-tile-grid.g-day{grid-template-columns:repeat(4,1fr);gap:5px}.pnl-chart-toolbar{flex-direction:column;align-items:stretch}.pnl-chart-window{justify-content:center}.pnl-chart-toolbar-right .pnl-mini-select{flex:1}.pnl-chart-toolbar-right .pnl-mini-select .pnl-cselect{width:100%}.pnl-results-head{flex-direction:column;align-items:stretch}.pnl-results-head .pnl-mini-select .pnl-cselect{width:100%}.pnl-download-row{flex-direction:column;align-items:stretch}.pnl-download-row .pnl-mini-select .pnl-cselect,.pnl-download-row .pnl-primary,.pnl-primary{width:100%}.pnl-run-bar{flex-direction:column;align-items:stretch}.pnl-run-hint{text-align:center}.pnl-net-hero{padding:14px 16px}.pnl-stat-card{border-radius:8px;padding:8px 9px}.pnl-stat-card .pnl-stat-label{font-size:.58rem}.pnl-stat-card .pnl-stat-value{font-size:.82rem}.pnl-tile{padding:7px 8px}.pnl-tile-head{font-size:.6rem}.pnl-tile-net{font-size:.82rem}.pnl-tile-grid.g-day .pnl-tile{border-radius:7px;padding:5px 7px}.pnl-tile-grid.g-day .pnl-tile-head{letter-spacing:0;font-size:.56rem}.pnl-tile-grid.g-day .pnl-tile-net{font-size:.74rem}.pnl-tile-detail-panel{gap:5px 14px;padding:10px 12px}.pnl-console-output{max-height:200px;font-size:.72rem}.pnl-root{padding-bottom:84px}}@media (max-width:380px){.pnl-stat-cards{grid-template-columns:repeat(2,1fr)}.pnl-tile-grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}.pnl-asset-name{font-size:.8rem}.pnl-brand{font-size:1.5rem}.pnl-trust-chip{font-size:.68rem}.pnl-summary-block{padding:12px}.pnl-summary-block table{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.pnl-asset-card,.pnl-primary,.pnl-stat-card,.pnl-tile{transition:none}}.pnl-ai{border-radius:var(--pnl-radius-sm);box-shadow:inset 0 0 0 1px var(--border);background:#ffffff05;margin:18px 0;padding:16px 18px}.pnl-ai-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pnl-ai-head h2{align-items:center;gap:8px;margin:0;font-size:1.02rem;display:inline-flex}.pnl-ai-head h2 svg{color:var(--accent)}.pnl-ai-sub{color:var(--text-muted);max-width:58ch;margin:6px 0 0;font-size:.88rem}.pnl-ai-cta{margin-top:16px}.pnl-ai-privacy{color:var(--text-dim);max-width:58ch;margin:12px 0 0;font-size:.75rem}.pnl-ai-badges{flex-wrap:wrap;gap:6px;display:inline-flex}.pnl-ai-badge{letter-spacing:.02em;color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border);white-space:nowrap;background:#ffffff0d;border-radius:999px;padding:3px 10px;font-size:.68rem;font-weight:600}.pnl-ai-badge.is-verified{color:#34d399e6;background:#34d39914;box-shadow:inset 0 0 0 1px #34d39940}.pnl-ai.is-analysing{position:relative}.pnl-ai.is-analysing:after{content:"";border-radius:var(--pnl-radius-sm);-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(110deg,#0000 15%,#8b93f8a6 45%,#6366f159 55%,#0000 85%) 0 0/250% 100%;padding:1px;animation:1.8s linear infinite pnl-ai-sweep;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.pnl-ai-skeletons{flex-direction:column;gap:10px;margin-top:16px;display:flex}.pnl-ai-skel{border-radius:var(--pnl-radius-sm);background:linear-gradient(100deg,#ffffff0a 40%,#ffffff17 50%,#ffffff0a 60%) 0 0/200% 100%;height:46px;animation:1.6s linear infinite pnl-ai-sweep}@keyframes pnl-ai-sweep{0%{background-position:200% 0}to{background-position:-100% 0}}.pnl-ai-headline{border-radius:var(--pnl-radius-sm);background:#6366f112;align-items:center;gap:16px;margin-top:16px;padding:15px 18px;display:flex;box-shadow:inset 0 0 0 1px #6366f138}.pnl-ai-headline>strong{letter-spacing:-.02em;color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.45rem;font-weight:700}.pnl-ai-headline-title{color:var(--color-text);font-size:.9rem;font-weight:600}.pnl-ai-headline-sub{color:var(--text-muted);margin-top:3px;font-size:.76rem}.pnl-ai-cards{flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.pnl-ai-card{border-radius:var(--pnl-radius-sm);box-shadow:inset 0 0 0 1px var(--border);opacity:0;animation:pnl-ai-card-in .42s var(--pnl-ease) forwards;background:#ffffff08;align-items:flex-start;gap:12px;padding:13px 15px;display:flex}@keyframes pnl-ai-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.pnl-ai-card-icon{color:#8b93f8e6;background:#6366f11a;border-radius:8px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.pnl-ai-card.is-warning .pnl-ai-card-icon{color:#facc15d9;background:#facc1514}.pnl-ai-card.is-positive .pnl-ai-card-icon{color:#34d399e6;background:#34d39914}.pnl-ai-card-content{min-width:0}.pnl-ai-card-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.pnl-ai-card-top h3{letter-spacing:-.01em;color:var(--color-text);margin:0;font-size:.92rem;font-weight:600}.pnl-ai-chip{letter-spacing:.03em;color:var(--text-muted);white-space:nowrap;background:#6366f11a;border-radius:999px;padding:2px 9px;font-size:.66rem;font-weight:600}.pnl-ai-card-content p{color:var(--text-muted);max-width:68ch;margin:5px 0 0;font-size:.85rem;line-height:1.55}.pnl-ai-action{opacity:.75;align-items:baseline;gap:6px;display:flex;color:var(--color-text)!important;margin:8px 0 0!important;font-size:.8rem!important}.pnl-ai-action svg{color:var(--accent);flex:none;position:relative;top:1px}.pnl-ai-hero{text-align:right;flex:none;min-width:84px;margin-left:auto}.pnl-ai-hero strong{letter-spacing:-.01em;color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.05rem;font-weight:700;display:block}.pnl-ai-hero span{color:var(--text-dim);max-width:14ch;margin-top:2px;margin-left:auto;font-size:.66rem;display:block}@media (max-width:640px){.pnl-ai-card{flex-wrap:wrap}.pnl-ai-hero{text-align:left;order:3;width:100%;margin-left:40px}.pnl-ai-hero span{margin-left:0}.pnl-ai-headline{flex-direction:column;align-items:flex-start;gap:6px}}.pnl-ai-footer{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.pnl-ai-footer .pnl-ghost{align-items:center;gap:6px;display:inline-flex}.pnl-ai-footer .pnl-report-issue{margin:0}.pnl-ai-disclaimer{color:var(--text-dim);max-width:68ch;margin:12px 0 0;font-size:.75rem;line-height:1.5}.pnl-ai-error{color:var(--text-muted);max-width:58ch;margin:10px 0 0;font-size:.88rem}@media (prefers-reduced-motion:reduce){.pnl-ai.is-analysing:after,.pnl-ai-skel{animation:none}.pnl-ai-card{opacity:1;animation:none}}
