.fps-calc-shell{max-width:1400px;margin-inline:auto;padding-inline:clamp(1rem,3vw,1.5rem);display:flex;flex-direction:column;gap:var(--fps-rhythm)}.fps-calc-shell>*{margin-block:0}.fps-dashboard{display:grid;grid-template-columns:1fr;gap:var(--fps-rhythm);align-items:start}.fps-dashboard__console,.fps-dashboard__readout{min-width:0}.fps-dashboard__readout{display:flex;flex-direction:column;gap:var(--fps-gap)}@media(min-width:960px){.fps-dashboard{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1rem,2vw,1.5rem)}.fps-dashboard__console{position:sticky;top:clamp(.75rem,2vh,1.25rem);align-self:start}}.fps-calc-card{position:relative;display:flex;flex-direction:column;gap:var(--fps-pad);background:var(--bg-secondary);border:1px solid color-mix(in srgb,var(--accent) 10%,var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm),0 12px 30px -16px color-mix(in srgb,var(--accent) 24%,transparent);padding:var(--fps-pad)}.fps-calc-card:before{content:"";position:absolute;top:0;left:clamp(.75rem,3vw,1.5rem);right:clamp(.75rem,3vw,1.5rem);height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 55%,transparent),transparent);pointer-events:none}.fps-calc-card .fps-settings{padding-top:var(--fps-pad);border-top:1px solid var(--border)}.fps-sys{display:flex;flex-direction:column;gap:var(--fps-gap)}.fps-sys__head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm)}.fps-sys__title{margin:0;font-family:var(--font-display);font-size:var(--fps-fs-lg);font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.fps-gameswitch{display:inline-flex;align-items:center;gap:.375rem;max-width:100%;padding:.3125rem .6875rem;background:color-mix(in srgb,var(--accent) 8%,var(--bg-tertiary));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--fps-fs-sm);font-weight:600;cursor:pointer;transition:border-color .15s ease,color .15s ease,box-shadow .15s ease}.fps-gameswitch:hover,.fps-gameswitch:focus-visible{border-color:var(--accent);color:var(--text-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.fps-gameswitch svg{color:var(--accent);flex-shrink:0}.fps-gameswitch__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fps-gameswitch__action{flex-shrink:0;color:var(--accent);font-weight:700}.fps-sys__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:var(--fps-gap)}.fps-field{display:flex;flex-direction:column;gap:.375rem;min-width:0}.fps-field__label{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:1.25rem}.fps-field__label-text{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--fps-fs-eyebrow);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.fps-field__label-text svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}.fps-field__links{position:relative;display:inline-flex;align-items:center;gap:.375rem}.fps-field .hardware-dropdown,.fps-field .ram-dropdown-wrapper{width:100%}.fps-calc-card .dropdown-trigger{min-height:var(--fps-control-h);border-radius:var(--radius-md)}.fps-field .hardware-dropdown:focus-within .dropdown-trigger,.fps-field .ram-dropdown-wrapper:focus-within .dropdown-trigger{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.fps-field__hint{display:flex;flex-wrap:wrap;gap:.375rem;font-size:var(--fps-fs-xs);color:var(--text-muted)}.fps-field__hint strong{color:var(--text-secondary);font-weight:600}.fps-dashboard__console .dropdown-trigger{min-height:var(--fps-control-h);border-radius:var(--radius-md);background:var(--bg-secondary);border-color:var(--border);box-shadow:none;font-weight:500;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.fps-dashboard__console .dropdown-trigger:hover{border-color:color-mix(in srgb,var(--accent) 34%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--bg-secondary));box-shadow:none}.fps-dashboard__console .dropdown-trigger.is-open{border-radius:var(--radius-md);border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.fps-dashboard__console .dropdown-menu{top:calc(100% + 6px);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden}.fps-dashboard__console .dropdown-option.is-selected{background:color-mix(in srgb,var(--accent) 12%,transparent)}.fps-dashboard__console .config-select{border-radius:var(--radius-md)}.fps-dashboard__console .config-select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}@media(prefers-reduced-motion:reduce){.fps-dashboard__console .dropdown-trigger{transition:none}}.fps-settings{display:flex;flex-direction:column;gap:var(--fps-gap)}.fps-set-block{display:flex;flex-direction:column;gap:.5rem}.fps-set-block__head{display:flex;align-items:center;gap:.5rem}.fps-set-block__label{position:relative;padding-left:.75rem;font-size:var(--fps-fs-eyebrow);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.fps-set-block__label:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:.6875rem;border-radius:2px;background:var(--accent)}.fps-set-block__info-wrap{position:relative;display:inline-flex}.fps-set-block__info{display:inline-flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:var(--text-muted);cursor:pointer;transition:color .15s ease}.fps-set-block__info:hover{color:var(--accent)}.fps-preset__segments{display:flex;flex-wrap:wrap;gap:3px;padding:3px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--border) 55%,transparent)}.fps-preset__btn{flex:1 1 4rem;min-width:3.75rem;min-height:var(--fps-segment-h);padding:.375rem .5rem;background:transparent;border:none;border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--fps-fs-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;touch-action:manipulation;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.fps-preset__btn:hover:not(.is-active){color:var(--text-primary);background:color-mix(in srgb,var(--accent) 10%,transparent)}.fps-preset__btn.is-active{background:var(--accent);color:var(--bg-primary);font-weight:700;box-shadow:0 1px 4px color-mix(in srgb,var(--accent) 32%,transparent)}.fps-controls__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--fps-gap);align-items:start}.fps-ctrl--wide{grid-column:1 / -1}.fps-ctrl{display:flex;flex-direction:column;gap:.375rem;min-width:0}.fps-ctrl__label{display:flex;align-items:center;gap:.375rem;min-height:1.125rem}.fps-ctrl__label-text{font-size:var(--fps-fs-eyebrow);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fps-ctrl__info-wrap{position:relative;display:inline-flex;margin-left:auto}.fps-ctrl__control{min-width:0}.fps-ctrl__control .config-select{width:100%;min-height:var(--fps-control-h)}.fps-ctrl__control .resolution-dropdown-wrapper,.fps-ctrl__control .upscaling-dropdown-wrapper{position:relative;width:100%}.fps-ctrl__control .dropdown-trigger{width:100%}.fps-ctrl__control .resolution-dropdown-wrapper:focus-within .dropdown-trigger,.fps-ctrl__control .upscaling-dropdown-wrapper:focus-within .dropdown-trigger{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.fps-ctrl__control .gscat-pill-toggle{display:flex;width:100%}.fps-ctrl__control .gscat-pill-toggle__btn{flex:1 1 0;min-width:0}.fps-ctrl .upscaling-v6-wrapper{display:flex;flex-wrap:wrap;gap:.375rem;width:100%}.fps-ctrl .upscaling-v6-wrapper .config-select{width:auto;flex:1 1 7.5rem;min-width:6rem}.fps-ctrl .upscaling-v6-version{flex:1 1 100%;color:var(--text-muted);font-size:.8rem;line-height:1.45}.fps-ctrl__absent-note{grid-column:1 / -1;margin:.15rem 0 0;color:var(--text-muted);font-size:.8rem;line-height:1.45}.fps-advanced{display:flex;flex-direction:column;align-items:flex-start}.fps-advanced__toggle{display:inline-flex;align-items:center;gap:.375rem;width:auto;min-height:var(--fps-control-h);padding:.375rem .875rem;background:transparent;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--fps-fs-sm);font-weight:600;cursor:pointer;touch-action:manipulation;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.fps-advanced__toggle:hover{color:var(--text-primary);border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 6%,transparent)}.fps-advanced__chevron{flex-shrink:0;color:var(--text-muted);transition:transform .2s ease,color .2s ease}.fps-advanced__toggle.is-open .fps-advanced__chevron{transform:rotate(90deg);color:var(--accent)}.fps-advanced__count{color:var(--text-muted);font-weight:600}.fps-advanced__body{display:flex;flex-direction:column;gap:var(--fps-gap);width:100%;margin-top:.625rem;padding:var(--fps-pad-sm);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md)}.fps-advanced__group{display:flex;flex-direction:column;gap:.25rem}.fps-advanced__group-label{padding-top:.25rem;font-size:var(--fps-fs-eyebrow);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.fps-advanced__row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem .75rem;padding:.5rem 0}.fps-advanced__row+.fps-advanced__row{border-top:1px solid var(--border)}.fps-advanced__row-left{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.fps-advanced__name{font-size:var(--fps-fs-base);color:var(--text-primary)}.fps-advanced__row-control{margin-left:auto;display:flex;align-items:center}.fps-advanced__row-control .config-select{min-width:9rem;min-height:var(--fps-control-h)}.fps-calc-card .btn-calculate{min-height:var(--fps-control-h);padding:.5rem 1.25rem;border-radius:var(--radius-md);font-size:var(--fps-fs-base);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 85%,white),var(--accent));color:var(--bg-primary);box-shadow:var(--shadow-sm),0 4px 12px -6px color-mix(in srgb,var(--accent) 40%,transparent);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.fps-calc-card .btn-calculate:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 92%,white),color-mix(in srgb,var(--accent) 96%,white));box-shadow:var(--shadow-sm),0 8px 22px -6px color-mix(in srgb,var(--accent) 48%,transparent);transform:translateY(-1px)}.fps-calc-card .btn-calculate:active:not(:disabled){transform:translateY(0) scale(.99);box-shadow:var(--shadow-sm),0 3px 10px -6px color-mix(in srgb,var(--accent) 40%,transparent)}.fps-calc-card .btn-calculate:disabled{background:var(--bg-secondary);color:var(--text-muted);box-shadow:none}@media(prefers-reduced-motion:reduce){.fps-gameswitch,.fps-preset__btn,.fps-advanced__toggle,.fps-advanced__chevron,.fps-set-block__info,.fps-calc-card .btn-calculate{transition:none}.fps-calc-card .btn-calculate:hover:not(:disabled),.fps-calc-card .btn-calculate:active:not(:disabled){transform:none}}