*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f7fa;color:#1a1a1a;min-height:100vh}nav{background:#fff;border-bottom:1px solid #e1e4e8;padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}.nav-logo{font-size:16px;font-weight:700;color:#1763b6;letter-spacing:-.02em}.nav-links{display:flex;gap:24px;font-size:13px}.nav-links a{text-decoration:none;color:#586069;transition:color .15s}.nav-links a:hover{color:#1763b6}.nav-links a.active{color:#1763b6;font-weight:500}.layout{display:grid;grid-template-columns:280px 1fr;gap:0;min-height:calc(100vh - 56px);padding:0 350px}.sidebar{background:#fff;border-right:1px solid #e1e4e8;padding:20px;overflow-y:auto}.sidebar-title{font-size:11px;font-weight:600;letter-spacing:.08em;color:#8b949e;text-transform:uppercase;margin-bottom:16px}.input-group{margin-bottom:14px}.input-label{font-size:12px;color:#586069;margin-bottom:5px;font-weight:500}.input-wrap{display:flex;align-items:center;border:1px solid #e1e4e8;border-radius:8px;padding:8px 12px;background:#f5f7fa;gap:6px}.input-wrap:focus-within{border-color:#1763b6;background:#fff}.input-wrap span{font-size:13px;color:#8b949e}.input-wrap input{border:none;background:transparent;color:#1a1a1a;font-size:14px;font-weight:500;width:100%;outline:none}.usd-val{font-size:11px;color:#8b949e;margin-top:3px;padding-left:4px}.cagr-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:14px}.cagr-btn{border:1px solid #e1e4e8;border-radius:8px;padding:8px;text-align:center;cursor:pointer;background:#f5f7fa;transition:all .15s}.cagr-btn:hover{border-color:#1763b6}.cagr-btn.active{background:#1763b6;border-color:#1763b6;color:#fff}.cagr-btn .cname{font-size:12px;font-weight:600}.cagr-btn .cval{font-size:10px;color:#8b949e}.cagr-btn.active .cval{color:#ffffffbf}.custom-row{display:none;gap:8px;margin-bottom:14px;align-items:center}.custom-row.show{display:flex}.custom-row input{flex:1;border:1px solid #e1e4e8;border-radius:8px;padding:8px 12px;font-size:13px;outline:none}.custom-row input:focus{border-color:#1763b6}.custom-row span{font-size:13px;color:#586069}.cagr-info{background:#f0f5ff;border:1px solid #b8d4f4;border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:12px;color:#1763b6;line-height:1.5}.btc-price-box{background:#f5f7fa;border:1px solid #e1e4e8;border-radius:8px;padding:12px;margin-bottom:14px}.btc-price-label{font-size:11px;color:#8b949e;margin-bottom:4px}.btc-price-val{font-size:20px;font-weight:700;color:#1763b6}.btc-price-change{font-size:11px;margin-top:2px}.btc-price-change.up{color:#1a7a4a}.btc-price-change.down{color:#c0392b}.score-box{background:#f0f5ff;border-radius:8px;padding:12px;margin-bottom:14px;text-align:center}.score-val{font-size:28px;font-weight:700;color:#1763b6}.score-label{font-size:11px;color:#586069;margin-top:2px}.score-sub{font-size:11px;color:#8b949e;margin-top:4px}.main{padding:20px;overflow-y:auto}.main-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e1e4e8}.main-header-left{font-size:13px;color:#586069}.main-header-right{font-size:12px;font-weight:600;color:#1763b6}.milestone-card{background:#fff;border:1px solid #e1e4e8;border-radius:12px;padding:14px 16px;margin-bottom:10px;display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:start;transition:border-color .15s}.milestone-card:hover{border-color:#1763b6}.milestone-card.reached{border-color:#1a7a4a;background:#f0faf5}.milestone-card.next{border-color:#1763b6;border-width:2px}.m-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;background:#f5f7fa;flex-shrink:0}.m-title{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:2px}.m-desc{font-size:12px;color:#586069;margin-bottom:8px}.m-progress-track{height:4px;background:#e1e4e8;border-radius:2px;overflow:hidden}.m-progress-bar{height:100%;border-radius:2px;transition:width .5s ease}.m-meta{text-align:right;flex-shrink:0;min-width:90px}.m-date{font-size:11px;font-weight:600;background:#f0f5ff;color:#1763b6;padding:3px 8px;border-radius:4px;margin-bottom:4px;display:inline-block}.m-time{font-size:10px;color:#8b949e;margin-bottom:2px}.m-portfolio{font-size:11px;color:#586069}.reached-badge{background:#1a7a4a;color:#fff;font-size:10px;font-weight:600;padding:3px 8px;border-radius:4px;display:inline-block}.next-badge{background:#1763b6;color:#fff;font-size:10px;font-weight:600;padding:3px 8px;border-radius:4px;display:inline-block}.recs{margin-top:20px}.recs-title{font-size:12px;font-weight:600;letter-spacing:.08em;color:#8b949e;text-transform:uppercase;margin-bottom:12px}.rec-card{background:#fff;border:1px solid #e1e4e8;border-radius:10px;padding:14px;margin-bottom:8px;display:flex;gap:12px;align-items:flex-start}.rec-icon{font-size:20px;flex-shrink:0;margin-top:2px}.rec-body .rec-title{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.rec-body .rec-desc{font-size:12px;color:#586069;line-height:1.5}.rec-badge{display:inline-block;margin-top:8px;font-size:11px;font-weight:600;padding:3px 10px;border-radius:4px}.badge-high{background:#fdf3e3;color:#854f0b}.badge-med{background:#f0f5ff;color:#1763b6}.disclaimer{margin-top:20px;padding:14px;background:#fafbfc;border:1px solid #e1e4e8;border-radius:8px;font-size:11px;color:#8b949e;line-height:1.6}.disclaimer strong{color:#586069}.no-stack-msg{text-align:center;padding:60px 20px;color:#8b949e}.no-stack-msg .big{font-size:40px;margin-bottom:12px}.no-stack-msg p{font-size:14px}
