@import "https://fonts.googleapis.com/css2?family=Inter:wght@300..600&display=swap";.seg{isolation:isolate;background:#f0ece4;border:1px solid #e7e2d9;border-radius:999px;grid-auto-columns:1fr;grid-auto-flow:column;padding:3px;display:inline-grid;position:relative}.seg-thumb{width:calc((100% - 6px) / var(--seg-count));transform:translateX(calc(var(--seg-index) * 100%));z-index:0;background:#111;border-radius:999px;transition:transform .32s cubic-bezier(.32,.72,0,1);position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 1px 3px #00000040}.seg-btn{z-index:1;font:inherit;text-align:center;white-space:nowrap;color:#555;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:500;transition:color .22s;position:relative}.seg-btn:hover{color:#111}.seg-btn[aria-pressed=true],.seg-btn[aria-pressed=true]:hover{color:#fff}.seg-btn:focus-visible{outline-offset:2px;outline:2px solid #111}@media (prefers-reduced-motion:reduce){.seg-thumb,.seg-btn{transition:none}}.pc{background:#fff;border:1px solid #e7e2d9;border-radius:16px;margin-top:24px;padding:20px}.pc-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.pc-coins,.pc-ranges{gap:6px;display:flex}.pc-coins{max-width:100%;overflow-x:auto}.pc-pill{font:inherit;color:#555;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #e7e2d9;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500}.pc-pill:hover{color:#111;border-color:#111}.pc-pill[aria-pressed=true]{color:#fff;background:#111;border-color:#111}.pc-headline{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.pc-price{letter-spacing:-.02em;color:#111;font-size:28px;font-weight:300}.pc-change{font-size:14px;font-weight:500}.pc-change.up{color:#15803d}.pc-change.down{color:#b91c1c}.pc-when{color:#777;min-height:18px;margin:2px 0 12px;font-size:13px}.pc-body{aspect-ratio:600/220;justify-content:center;align-items:center;display:flex}.pc-svg{cursor:crosshair;touch-action:pan-y;width:100%;height:100%;display:block}.pc-line{fill:none;stroke:#111;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.pc-area{fill:#1111110f;stroke:none}.pc-cursor{stroke:#bbb;stroke-width:1px;stroke-dasharray:3 3}.pc-dot{fill:#111;stroke:#fff;stroke-width:2px}.pc-msg{text-align:center;color:#777;margin:0;font-size:14px}.pc-msg .pc-pill{margin-top:10px}.pc-meta{color:#777;justify-content:space-between;margin-top:10px;font-size:12px;display:flex}.pc-note{color:#999;margin:8px 0 0;font-size:12px}.theme-toggle{box-sizing:border-box;cursor:pointer;background:#f0ece4;border:1px solid #e7e2d9;border-radius:999px;flex-shrink:0;width:56px;height:30px;padding:0;position:relative}.theme-toggle:focus-visible{outline-offset:2px;outline:2px solid #111}.theme-toggle-thumb{color:#fff;background:#111;border-radius:50%;place-items:center;width:24px;height:24px;transition:transform .32s cubic-bezier(.32,.72,0,1);display:grid;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.theme-toggle[aria-checked=true] .theme-toggle-thumb{transform:translate(26px)}.theme-toggle-icon{grid-area:1/1;width:14px;height:14px;transition:opacity .22s,transform .32s cubic-bezier(.32,.72,0,1)}.theme-toggle-sun{opacity:1;transform:rotate(0)scale(1)}.theme-toggle-moon{opacity:0;transform:rotate(-90deg)scale(.5)}.theme-toggle[aria-checked=true] .theme-toggle-sun{opacity:0;transform:rotate(90deg)scale(.5)}.theme-toggle[aria-checked=true] .theme-toggle-moon{opacity:1;transform:rotate(0)scale(1)}@media (prefers-reduced-motion:reduce){.theme-toggle-thumb,.theme-toggle-icon{transition:none}}.brand{align-items:center;gap:8px;display:inline-flex}.brand-mark{flex-shrink:0;display:block}.brand-name{letter-spacing:-.02em;color:#111;font-weight:600}.site-header{border-bottom:1px solid #e7e2d9;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:18px 0;display:flex}.site-header .brand-name{font-size:18px}.site-header-actions{flex-shrink:0;align-items:center;display:flex}.site-footer{color:#777;border-top:1px solid #e7e2d9;margin-top:56px;padding:24px 0 32px;font-size:13px;line-height:1.6}.site-footer-top{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:14px;display:flex}.site-footer-tagline{color:#777;margin:0}.site-footer-trust{color:#555;margin:0 0 8px}.site-footer-small{color:#999;margin:0 0 4px;font-size:12px}.site-footer a{color:inherit;text-underline-offset:2px;text-decoration:underline}.site-footer a:hover{color:#111}.portfolio-page{--nl-canvas:#f7f5f2;--nl-surface:#fff;--nl-border:#e6e4df;--nl-ink:#0f0d0b;--nl-ink-soft:#2b2723;--nl-muted:#71706b;--nl-error:#b3261e;--nl-up:#4e7a5c;background:var(--nl-canvas);flex-direction:column;gap:24px;max-width:640px;min-height:100vh;margin:0 auto;padding:48px 24px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;display:flex}.portfolio-page h1{letter-spacing:-.01em;color:var(--nl-ink);margin:0;font-size:1.75rem;font-weight:300}.portfolio-page .total-value{background:var(--nl-surface);border-radius:20px;margin:0;padding:32px 28px;box-shadow:inset 0 0 0 .5px #4e32170f,0 0 0 1px #4e32170b,0 4px 16px #4e32170d}.portfolio-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.currency-toggle{background:var(--nl-surface);box-shadow:inset 0 0 0 1px var(--nl-border);border-radius:9999px;padding:3px;display:flex}.currency-toggle button{color:var(--nl-muted);cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:6px 14px;font-family:inherit;font-size:.78rem;font-weight:500;transition:background-color .15s,color .15s}.currency-toggle button[aria-pressed=true]{background:var(--nl-ink);color:#fdfcfa}.currency-toggle button:focus-visible{outline:2px solid var(--nl-ink);outline-offset:2px}.total-value-label{color:var(--nl-muted);margin:0 0 4px;font-size:.8rem;font-weight:500}.currency-note{color:var(--nl-muted);margin:10px 0 0;font-size:.75rem;line-height:1.4}.total-value-amount{letter-spacing:-.02em;color:var(--nl-ink);margin:0;font-size:2.25rem;font-weight:300}.total-value-pl{margin:8px 0 0;font-size:.95rem;font-weight:500}.allocation-bar-wrap{margin-top:14px}.allocation-bar{border-radius:9999px;width:100%;height:8px;display:flex;overflow:hidden}.allocation-legend{color:var(--nl-ink);flex-wrap:wrap;gap:6px 14px;margin-top:12px;font-size:.78rem;display:flex}.allocation-legend-item{align-items:center;gap:6px;display:flex}.allocation-swatch{border-radius:2px;flex-shrink:0;width:8px;height:8px}.portfolio-page .loading-text,.portfolio-page .page-error{margin:0;font-size:.85rem}.portfolio-page .loading-text{color:var(--nl-muted)}.portfolio-page .page-error{color:var(--nl-error)}.add-holding-form{background:var(--nl-surface);border-radius:20px;flex-direction:column;gap:16px;padding:24px;display:flex;box-shadow:inset 0 0 0 .5px #4e32170f,0 0 0 1px #4e32170b,0 4px 16px #4e32170d}.add-holding-form h3{color:var(--nl-ink);margin:0;font-size:1rem;font-weight:500}.add-holding-form .form-row{flex-direction:column;gap:6px;display:flex}.add-holding-form .form-row label{color:var(--nl-ink);font-size:.8rem;font-weight:500}.add-holding-form select,.add-holding-form input{color:var(--nl-ink);background:var(--nl-canvas);box-shadow:inset 0 0 0 1px var(--nl-border);border:none;border-radius:12px;outline:none;padding:12px 14px;font-family:inherit;font-size:.95rem;transition:box-shadow .15s}.add-holding-form select:focus-visible,.add-holding-form input:focus-visible{box-shadow:inset 0 0 0 1.5px var(--nl-ink)}.add-holding-form .error{color:var(--nl-error);font-size:.8rem}.add-holding-form .add-holding-submit{color:#fdfcfa;background:var(--nl-ink);cursor:pointer;border:none;border-radius:9999px;padding:13px;font-family:inherit;font-size:.9rem;font-weight:500;transition:background-color .15s}.add-holding-form .add-holding-submit:hover{background:var(--nl-ink-soft)}.add-holding-form .add-holding-submit:focus-visible{outline:2px solid var(--nl-ink);outline-offset:2px}.coin-search{position:relative}.coin-search input{box-sizing:border-box;width:100%}.coin-results{z-index:10;background:var(--nl-surface);border-radius:14px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:inset 0 0 0 .5px #4e32170f,0 0 0 1px #4e32170b,0 8px 24px #4e32171a}.add-holding-form .coin-result{width:100%;color:var(--nl-ink);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;font-family:inherit;font-size:.9rem;display:flex}.add-holding-form .coin-result:hover,.add-holding-form .coin-result:focus-visible{background:var(--nl-canvas);outline:none}.coin-result-symbol,.selected-coin-symbol{color:var(--nl-muted);margin-left:4px;font-size:.78rem}.coin-result-meta{color:var(--nl-muted);font-size:.75rem}.coin-search-status{color:var(--nl-muted);margin:0;padding:10px 12px;font-size:.85rem}.selected-coin{background:var(--nl-canvas);box-shadow:inset 0 0 0 1px var(--nl-border);color:var(--nl-ink);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:.95rem;display:flex}.add-holding-form .link-button{color:var(--nl-muted);cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:4px 8px;font-family:inherit;font-size:.8rem}.add-holding-form .link-button:hover{color:var(--nl-ink);background:#0f0d0b0f}.add-holding-form .link-button:focus-visible{outline:2px solid var(--nl-ink);outline-offset:2px}.portfolio-page ul{background:var(--nl-surface);border-radius:20px;margin:0;padding:8px 24px;list-style:none;box-shadow:inset 0 0 0 .5px #4e32170f,0 0 0 1px #4e32170b,0 4px 16px #4e32170d}.portfolio-page li{color:var(--nl-ink);border-bottom:1px solid var(--nl-border);flex-direction:column;gap:6px;padding:16px 0;font-size:.9rem;display:flex}.portfolio-page li:last-child{border-bottom:none}.holding-main{justify-content:space-between;align-items:baseline;gap:12px;font-weight:500;display:flex}.holding-symbol{color:var(--nl-muted);font-size:.8rem;font-weight:400}.holding-details{color:var(--nl-muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:.8rem;display:flex}.holding-up{color:var(--nl-up)}.holding-down{color:var(--nl-error)}.holding-actions{gap:2px;margin-left:auto;display:flex}.holding-actions button,.holding-edit button{color:var(--nl-muted);cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:4px 8px;font-family:inherit;font-size:.8rem;transition:color .15s,background-color .15s}.holding-actions button:hover,.holding-edit button:hover:not(:disabled){color:var(--nl-ink);background:#0f0d0b0f}.holding-actions .holding-remove:hover{color:var(--nl-error);background:#b3261e14}.holding-actions button:focus-visible,.holding-edit button:focus-visible{outline:2px solid var(--nl-ink);outline-offset:2px}.holding-edit{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.holding-edit input{width:130px;color:var(--nl-ink);background:var(--nl-canvas);box-shadow:inset 0 0 0 1px var(--nl-border);border:none;border-radius:10px;outline:none;padding:8px 10px;font-family:inherit;font-size:.85rem}.holding-edit input:focus-visible{box-shadow:inset 0 0 0 1.5px var(--nl-ink)}.holding-edit button:disabled{opacity:.4;cursor:not-allowed}@media (width<=480px){.portfolio-page{padding:32px 16px}.portfolio-page .total-value{padding:24px 20px}.total-value-amount{font-size:1.75rem}}html{transition:filter .35s,background-color .35s}html[data-theme=dark]{filter:invert(.92)hue-rotate(180deg);background-color:#fff}@media (prefers-reduced-motion:reduce){html{transition:none}}:root{--ease-out:cubic-bezier(.32, .72, 0, 1)}button:not(:disabled):active{transition:transform 80ms;transform:scale(.96)}.total-value-pl,.holding-up,.holding-down{transition:color .4s}.allocation-bar>div{transform-origin:0;animation:seg-grow .7s var(--ease-out) backwards;transition:width .5s var(--ease-out)}.allocation-bar>div:nth-child(2){animation-delay:60ms}.allocation-bar>div:nth-child(3){animation-delay:.12s}.allocation-bar>div:nth-child(4){animation-delay:.18s}.allocation-bar>div:nth-child(5){animation-delay:.24s}.allocation-bar>div:nth-child(6){animation-delay:.3s}.allocation-bar>div:nth-child(7){animation-delay:.36s}.allocation-bar>div:nth-child(8){animation-delay:.42s}@keyframes seg-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.holding-list>*{animation:holding-in .38s var(--ease-out) backwards}@keyframes holding-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.pc-reveal{animation:pc-reveal .9s var(--ease-out)}@keyframes pc-reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (prefers-reduced-motion:reduce){.allocation-bar>div,.holding-list>*,.pc-reveal{animation:none}.allocation-bar>div,.total-value-pl,.holding-up,.holding-down{transition:none}button:not(:disabled):active{transform:none}}
