.ipo-countdown{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-xs);border:1px solid #0000;line-height:1;display:inline-flex}.ipo-countdown__header{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.ipo-countdown--danger{background-color:var(--error-bg);border-color:color-mix(in srgb, var(--error) 20%, transparent);color:var(--error)}.ipo-countdown--danger .ipo-countdown__icon,.ipo-countdown--danger .ipo-countdown__label,.ipo-countdown--danger .ipo-countdown__box{color:var(--error)}.ipo-countdown--success{background-color:var(--success-bg);border-color:color-mix(in srgb, var(--success) 20%, transparent);color:var(--success)}.ipo-countdown--success .ipo-countdown__icon,.ipo-countdown--success .ipo-countdown__label,.ipo-countdown--success .ipo-countdown__box{color:var(--success)}.ipo-countdown__icon{font-size:var(--icon-xs);flex-shrink:0}.ipo-countdown__label{font-size:var(--font-xxs);font-weight:var(--font-semibold);white-space:nowrap}.ipo-countdown__boxes{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.ipo-countdown__box{background:var(--card);border-radius:var(--radius-xs);min-width:24px;padding:var(--space-1) var(--space-1);box-shadow:var(--card-shadow);justify-content:center;align-items:baseline;gap:1px;display:inline-flex}.ipo-countdown__box strong{font-size:var(--font-xxs);font-weight:var(--font-bold);line-height:1}.ipo-countdown__box small{font-size:var(--font-xxs);font-weight:var(--font-bold);opacity:.85}.ipo-search{width:300px;max-width:100%}.ipo-search svg{left:var(--space-3);color:var(--text-muted);pointer-events:none;z-index:1;transition:color var(--transition-fast);position:absolute;top:50%;transform:translateY(-50%)}.ipo-search .form-control{width:100%;height:44px;padding-left:var(--space-8);padding-right:var(--space-3);border:1px solid var(--border2);border-radius:var(--radius-base);background:var(--card);font-size:var(--font-sm);color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.ipo-search .form-control:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light);outline:none}.ipo-search:focus-within svg{color:var(--brand-primary)}.filter-chip{height:44px;padding:0 var(--space-4);border:1px solid var(--border2);background:var(--card);color:var(--text-secondary);white-space:nowrap}.filter-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.filter-chip.is-active{border-color:var(--brand-primary);background:var(--brand-primary-light);color:var(--brand-primary)}@media (max-width:576px){.ipo-search{flex:1;width:100%}}.ipo-header-logo{background:var(--card)}.timeline{width:100%;padding-bottom:var(--space-1);align-items:flex-start;display:flex;overflow:auto hidden}.timeline-item{text-align:center;flex-direction:column;flex:1 1 0;align-items:center;min-width:92px;display:flex}.timeline-marker{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.timeline-icon{z-index:2;border-radius:var(--radius-full);background:var(--card);border:2px solid var(--border2);width:30px;height:30px;color:var(--text-muted);transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.timeline-line{background:var(--border2);z-index:1;width:100%;height:2px;transition:background var(--transition-fast);position:absolute;top:50%;left:50%;transform:translateY(-50%)}.timeline-item--completed .timeline-icon{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-inverse)}.timeline-item--completed .timeline-line{background:var(--brand-primary)}.timeline-item--current .timeline-icon{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-inverse);box-shadow:0 0 0 4px var(--brand-primary-light)}.timeline-item--upcoming .timeline-icon{background:var(--card);border-color:var(--border2);color:var(--text-muted)}.timeline-content{margin-top:var(--space-3);flex-direction:column;gap:2px;display:flex}.timeline-label{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--text-muted)}.timeline-item--completed .timeline-label,.timeline-item--current .timeline-label{color:var(--brand-primary)}.timeline-date{font-size:var(--font-xs);color:var(--text-muted)}@media (max-width:576px){.timeline-item{min-width:84px}.timeline-icon{width:32px;height:32px}.timeline-label{font-size:var(--font-xs)}.timeline-date{font-size:var(--font-xxs)}}.breakup-bar-track{border-radius:var(--radius-full);background:var(--divider);width:100%;height:8px;overflow:hidden}.breakup-bar-fill{height:100%;width:var(--bar-width,0%);border-radius:var(--radius-full);transition:width var(--transition-slow)}.breakup-bar-fill-1{background:var(--brand-primary)}.breakup-bar-fill-2{background:var(--brand-primary);opacity:.65}.breakup-bar-fill-3{background:var(--brand-primary);opacity:.4}.breakup-bar-fill-4{background:var(--brand-primary);opacity:.25}.reservation-chart-wrapper{justify-content:center;align-items:center;gap:var(--space-8);flex-wrap:wrap;display:flex}.reservation-chart-donut{flex-shrink:0;justify-content:center;align-items:center;display:flex}.reservation-legend{gap:var(--space-4);flex-direction:column;min-width:160px;display:flex}.reservation-legend-item{align-items:center;gap:var(--space-2);display:flex}.reservation-legend-dot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.reservation-legend-label{font-size:var(--font-sm);color:var(--text-secondary);flex:1}.reservation-legend-value{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.reservation-chart-tooltip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);box-shadow:0 4px 6px -1px var(--chart-tooltip-shadow)}@media (max-width:576px){.reservation-chart-wrapper{gap:var(--space-4);flex-direction:column}.reservation-legend{width:100%}}.lot-tile{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);height:100%;padding:var(--space-4);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);position:relative;overflow:hidden}.lot-tile:hover{border-color:var(--border2);box-shadow:0 4px 6px -1px #0000000d}.lot-tile:before{content:"";height:3px;position:absolute;top:0;left:0;right:0}.lot-tile-accent-1:before{background:var(--success)}.lot-tile-accent-2:before{background:var(--warning)}.lot-tile-accent-3:before{background:var(--brand-primary)}.lot-tile-app{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.lot-tile-amount-label{font-size:var(--font-xs);color:var(--text-muted);margin-bottom:2px;display:block}.lot-tile-amount{font-size:var(--font-2xl);font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.02em;margin-bottom:var(--space-3);display:block}.lot-tile-divider{background:var(--divider);height:1px;margin-bottom:var(--space-3)}.lot-tile-sub-label{font-size:var(--font-xs);color:var(--text-muted)}.lot-tile-sub-value{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.gmp-history-table-wrap{max-height:260px;overflow-y:auto}.chart-tooltip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);box-shadow:0 4px 6px -1px var(--chart-tooltip-shadow)}.kpi-tile{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-base);height:100%;padding:var(--space-4);flex-direction:column;gap:4px;display:flex}.kpi-tile-label{font-size:var(--font-xs);color:var(--text-muted)}.kpi-tile-value{font-size:var(--font-xl);font-weight:var(--font-bold);color:var(--text-primary)}.kpi-tile--highlight{background:var(--brand-primary-light);border-color:var(--brand-primary-light)}.kpi-tile--highlight .kpi-tile-value{color:var(--brand-primary)}.chart-wrapper{width:100%}.tooltip-dot{border-radius:var(--radius-full);flex-shrink:0;width:8px;height:8px}.account-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);padding:var(--space-3);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.account-card.selected{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light)}.account-card.disabled{opacity:.5;cursor:not-allowed}.account-checkbox{border:1px solid var(--border2);background:var(--card);width:18px;height:18px;transition:all var(--transition-fast);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.account-checkbox.checked{background:var(--brand-primary);border-color:var(--brand-primary)}.btn-select-all{padding:var(--space-1) var(--space-3);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--brand-primary);font-size:var(--font-xs);font-weight:var(--font-semibold);font-family:var(--font-family);cursor:pointer;transition:background var(--transition-fast);background:0 0}.btn-select-all:hover:not(:disabled){background:var(--brand-primary-light)}.btn-select-all:disabled{opacity:.5;cursor:not-allowed}.lot-stepper{align-items:center;gap:var(--space-2);display:flex}.lot-stepper-btn{border-radius:var(--radius-sm);border:1px solid var(--border2);background:var(--card);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.lot-stepper-btn:hover:not(:disabled){border-color:var(--brand-primary);color:var(--brand-primary)}.lot-stepper-btn:disabled{opacity:.5;cursor:not-allowed}.lot-input{text-align:center;border:1px solid var(--border2);border-radius:var(--radius-sm);width:56px;height:32px;font-family:var(--font-family);font-weight:var(--font-semibold);font-size:var(--font-sm);color:var(--text-primary);background:var(--card)}.lot-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light);outline:none}.lot-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.lot-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lot-input[type=number]{-moz-appearance:textfield}
