:root{--swg-void: #0b1020;--swg-void-2: #161d35;--swg-panel: #1f2744;--swg-crest: #f5c518;--swg-crest-dark: #b88c06;--swg-steel: #9fb0d4;--swg-paper: #fbfaf5;--swg-cream: #f4f1e6;--swg-line: #ddd8c4;--swg-text: #1b2033;--swg-muted: #5f6680;--swg-jedi: #1f6fb2;--swg-sith: #b02230;--swg-rebel: #c2561a;--swg-empire: #4a5570;--swg-mando: #2d7a63;--swg-radius: 16px;--swg-shadow: 0 18px 40px rgba(11, 16, 32, 0.22);--primary: #1f2744;--primary-dark: #0b1020;--border: #ddd8c4;--surface: #ffffff;--shadow-soft: 0 10px 28px rgba(11, 16, 32, 0.10);--surface-muted: #f4f1e6;--text-main: #1b2033;--text-muted: #5f6680;}
.swg-bench{display: grid;grid-template-columns: minmax(400px, 560px) minmax(0, 1fr);gap: 28px;align-items: start;margin: 8px 0 56px;}
.swg-console{position: sticky;top: 88px;background: var(--swg-void);color: #fff;border-radius: var(--swg-radius);padding: 22px 20px 20px;box-shadow: var(--swg-shadow);background-image: radial-gradient(ellipse at 88% -14%, rgba(245, 197, 24, 0.20) 0, rgba(245, 197, 24, 0) 58%),radial-gradient(circle at 18% 86%, rgba(31, 111, 178, 0.22) 0, rgba(31, 111, 178, 0) 48%);}
.swg-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 4px 12px;font-size: 12.5px;color: rgba(255, 255, 255, 0.7);padding-bottom: 14px;margin-bottom: 16px;border-bottom: 1px dashed rgba(255, 255, 255, 0.22);}
.swg-byline .author-link{color: var(--swg-crest);font-weight: 700;text-decoration: underline;text-underline-offset: 3px;}
.swg-console fieldset{border: 0;padding: 0;margin: 0 0 16px;min-width: 0;}
.swg-console legend,.swg-toggle small{float: none;width: auto;padding: 0;margin-bottom: 8px;font-size: 11.5px;font-weight: 800;letter-spacing: .12em;text-transform: uppercase;color: rgba(255, 255, 255, 0.64);}
.swg-reel{display: grid;grid-template-columns: 1fr 1fr;gap: 6px;padding: 10px;background: #060a16;border-radius: 10px;border: 1px solid rgba(159, 176, 212, 0.18);}
.swg-era-stop{margin: 0;min-width: 0;}
.swg-era-stop input,.swg-chip input,.swg-seg input,.swg-toggle input{position: absolute;opacity: 0;pointer-events: none;}
.swg-era-stop span{display: grid;grid-template-columns: 1fr auto;column-gap: 6px;padding: 8px 10px;height: 100%;border-radius: 8px;background: var(--swg-panel);border: 1px solid rgba(159, 176, 212, 0.16);cursor: pointer;transition: background .15s, border-color .15s;}
.swg-era-stop b{font-size: 13.5px;line-height: 1.25;font-weight: 700;color: #fff;}
.swg-era-stop small{grid-column: 1;font-size: 11px;color: rgba(255, 255, 255, 0.58);}
.swg-era-stop em{grid-column: 2;grid-row: 1 / span 2;align-self: center;font-style: normal;font-size: 12px;font-weight: 800;color: var(--swg-crest);}
.swg-era-stop span:hover{border-color: rgba(245, 197, 24, 0.7);}
.swg-era-stop input:checked + span{background: var(--swg-crest);border-color: var(--swg-crest);}
.swg-era-stop input:checked + span b,.swg-era-stop input:checked + span em{color: var(--swg-void);}
.swg-era-stop input:checked + span small{color: rgba(11, 16, 32, 0.72);}
.swg-era-stop input:focus-visible + span,.swg-chip input:focus-visible + span,.swg-seg input:focus-visible + span,.swg-toggle input:focus-visible + .swg-switch{outline: 3px solid #9fc2ff;outline-offset: 2px;}
.swg-chips{display: flex;flex-wrap: wrap;gap: 6px;}
.swg-chip{margin: 0;}
.swg-chip span{display: inline-flex;align-items: center;gap: 6px;padding: 6px 12px;border-radius: 999px;border: 1px solid rgba(255, 255, 255, 0.26);font-size: 13px;font-weight: 600;cursor: pointer;}
.swg-chip span i{font-style: normal;font-size: 11px;font-weight: 800;opacity: .62;}
.swg-chip-jedi span::before,.swg-chip-sith span::before,.swg-chip-rebel span::before,.swg-chip-empire span::before,.swg-chip-mandalorian span::before,.swg-chip-republic span::before,.swg-chip-separatist span::before,.swg-chip-first-order span::before,.swg-chip-resistance span::before,.swg-chip-unaligned span::before{content: "";width: 8px;height: 8px;border-radius: 50%;background: var(--dot);}
.swg-chip-jedi{--dot: #5fa8e6;}
.swg-chip-sith{--dot: #e8566b;}
.swg-chip-republic{--dot: #9bb7e8;}
.swg-chip-separatist{--dot: #b98ae0;}
.swg-chip-empire{--dot: #a8b4cc;}
.swg-chip-rebel{--dot: #f08a3c;}
.swg-chip-mandalorian{--dot: #4fc79f;}
.swg-chip-first-order{--dot: #e0e4ee;}
.swg-chip-resistance{--dot: #f5c518;}
.swg-chip-unaligned{--dot: #8d93a8;}
.swg-chip span:hover{border-color: #fff;}
.swg-chip input:checked + span{background: #fff;color: var(--swg-void);border-color: #fff;}
.swg-chip input:checked + span i{opacity: .72;}
.swg-row{display: flex;flex-wrap: wrap;align-items: flex-end;gap: 16px 22px;margin-bottom: 18px;}
.swg-row fieldset{margin: 0;}
.swg-seg{display: grid;grid-template-columns: repeat(3, 46px);background: rgba(255, 255, 255, 0.1);border-radius: 10px;padding: 4px;}
.swg-seg label{margin: 0;}
.swg-seg span{display: block;text-align: center;padding: 6px 0;border-radius: 7px;font-weight: 700;cursor: pointer;}
.swg-seg input:checked + span{background: var(--swg-crest);color: var(--swg-void);}
.swg-toggle{display: flex;align-items: center;gap: 10px;margin: 0;cursor: pointer;font-weight: 700;font-size: 14px;}
.swg-toggle small{display: block;margin: 2px 0 0;letter-spacing: .05em;}
.swg-switch{position: relative;flex: 0 0 auto;width: 44px;height: 24px;border-radius: 999px;background: rgba(255, 255, 255, 0.22);transition: background .15s;}
.swg-switch::after{content: "";position: absolute;top: 3px;left: 3px;width: 18px;height: 18px;border-radius: 50%;background: #fff;transition: transform .15s;}
.swg-toggle input:checked + .swg-switch{background: var(--swg-crest);}
.swg-toggle input:checked + .swg-switch::after{transform: translateX(20px);}
.swg-actions-bar{display: flex;flex-wrap: wrap;align-items: center;gap: 10px 14px;}
.swg-go{flex: 1 1 100%;display: inline-flex;align-items: center;justify-content: center;gap: 10px;padding: 12px 26px;border: 0;border-radius: 12px;background: var(--swg-crest);color: var(--swg-void);font-size: 16px;font-weight: 800;letter-spacing: .02em;cursor: pointer;box-shadow: 0 5px 0 var(--swg-crest-dark);transition: transform .1s, box-shadow .1s;}
.swg-go:hover{background: #ffd333;}
.swg-go:active{transform: translateY(4px);box-shadow: 0 1px 0 var(--swg-crest-dark);}
.swg-go.is-busy{opacity: .75;cursor: wait;}
.swg-go.is-busy i{animation: swgSpin .8s linear infinite;}
.swg-ghost{flex: 1 1 100%;display: inline-flex;align-items: center;justify-content: center;gap: 8px;padding: 11px 18px;border-radius: 12px;border: 1px solid rgba(255, 255, 255, 0.35);background: transparent;color: #fff;font-weight: 700;cursor: pointer;}
.swg-ghost:hover,.swg-ghost.is-done{background: rgba(255, 255, 255, 0.12);border-color: #fff;}
.swg-status{flex: 1 1 100%;margin: 0;font-size: 13.5px;color: rgba(255, 255, 255, 0.72);}
.swg-status.is-error{color: #ffb4b4;font-weight: 700;}
.swg-stage{min-width: 0;}
.swg-cards{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));gap: 18px;}
.swg-card{--side: var(--swg-empire);position: relative;display: flex;flex-direction: column;background: var(--swg-paper);border: 1px solid var(--swg-line);border-radius: var(--swg-radius);padding: 20px 20px 16px 26px;box-shadow: var(--shadow-soft);overflow: hidden;animation: swgIn .35s ease both;}
.swg-card::before{content: "";position: absolute;left: 0;top: 0;bottom: 0;width: 7px;background: var(--side);}
.swg-card:only-child{grid-column: 1 / -1;justify-self: center;width: 100%;max-width: 660px;padding: 28px 30px 22px 36px;}
.swg-side-jedi{--side: var(--swg-jedi);}
.swg-side-sith{--side: var(--swg-sith);}
.swg-side-rebel,.swg-side-resistance{--side: var(--swg-rebel);}
.swg-side-empire,.swg-side-first-order{--side: var(--swg-empire);}
.swg-side-mandalorian{--side: var(--swg-mando);}
.swg-side-separatist{--side: #7b4fa8;}
.swg-side-republic{--side: #2b86c7;}
.swg-side-unaligned{--side: #8d7a52;}
.swg-card-top{display: flex;justify-content: space-between;align-items: baseline;gap: 10px;flex-wrap: wrap;}
.swg-card-era{font-size: 11.5px;font-weight: 800;letter-spacing: .12em;text-transform: uppercase;color: var(--side);}
.swg-card-span{font-family: Georgia, "Times New Roman", serif;font-size: 13.5px;color: var(--swg-muted);}
.swg-card-faction{margin: 12px 0 2px;font-size: 13px;font-weight: 700;color: var(--swg-text);}
.swg-card-faction span{color: var(--swg-muted);font-weight: 600;}
.swg-card-faction span::before{content: "\00b7";margin: 0 5px;}
.swg-card-name{margin: 0;font-family: Georgia, "Times New Roman", serif;font-size: 29px;font-weight: 700;color: var(--swg-void);line-height: 1.12;transition: filter .2s;}
.swg-card:only-child .swg-card-name{font-size: 37px;}
.swg-card-title{margin: 5px 0 14px;font-style: italic;color: var(--swg-muted);font-size: 15px;transition: filter .2s;}
.swg-card-meta{display: grid;grid-template-columns: 1fr 1fr;gap: 10px 14px;margin: 0 0 12px;padding: 11px 0;border-top: 1px solid var(--swg-line);border-bottom: 1px solid var(--swg-line);}
.swg-card-meta dt{font-size: 10.5px;font-weight: 800;letter-spacing: .1em;text-transform: uppercase;color: var(--swg-muted);}
.swg-card-meta dd{margin: 2px 0 0;font-weight: 600;font-size: 14px;color: var(--swg-text);}
.swg-card-debut{margin: 0 0 10px;font-size: 13.5px;color: var(--swg-muted);transition: filter .2s;}
.swg-card-debut span{display: block;font-size: 10.5px;font-weight: 800;letter-spacing: .1em;text-transform: uppercase;}
.swg-card-fact{margin: 0 0 14px;font-size: 14.5px;line-height: 1.55;color: var(--swg-text);transition: filter .2s;}
.swg-card-actions{display: flex;gap: 8px;margin-top: auto;position: relative;z-index: 1;}
.swg-mini{display: inline-flex;align-items: center;gap: 6px;padding: 6px 12px;border-radius: 8px;border: 1px solid var(--swg-line);background: #fff;color: var(--swg-void);font-size: 13px;font-weight: 700;cursor: pointer;}
.swg-mini:hover{border-color: var(--swg-void);}
.swg-mini.is-done{background: var(--swg-mando);border-color: var(--swg-mando);color: #fff;}
.swg-reveal{display: none;background: var(--swg-void);border-color: var(--swg-void);color: #fff;}
.swg-cards.is-guess .swg-card:not(.is-revealed) .swg-hide{filter: blur(8px);user-select: none;}
.swg-cards.is-guess .swg-card:not(.is-revealed) .swg-reveal{display: inline-flex;}
.swg-history{margin-top: 18px;padding: 14px 16px;background: var(--swg-cream);border: 1px dashed var(--swg-line);border-radius: 12px;}
.swg-history h3{margin: 0 0 8px;font-size: 12px;font-weight: 800;letter-spacing: .1em;text-transform: uppercase;color: var(--swg-muted);}
.swg-history ol{list-style: none;display: flex;flex-wrap: wrap;gap: 6px;margin: 0;padding: 0;}
.swg-history li{padding: 3px 10px;border-radius: 999px;background: #fff;border: 1px solid var(--swg-line);font-size: 13px;color: var(--swg-text);}
.swg-read{margin: 0 auto 52px;color: var(--swg-text);}
.swg-read h2,.swg-limits h2{font-family: Georgia, "Times New Roman", serif;font-size: 28px;font-weight: 700;color: var(--swg-void);margin-bottom: 12px;}
.swg-read > p{font-size: 16.5px;line-height: 1.7;}
.swg-timeline{list-style: none;margin: 22px 0 0;padding: 0 0 0 26px;border-left: 3px solid var(--swg-line);}
.swg-timeline li{position: relative;padding: 0 0 22px;}
.swg-timeline li::before{content: "";position: absolute;left: -35px;top: 5px;width: 15px;height: 15px;border-radius: 50%;background: var(--swg-crest);border: 3px solid var(--swg-paper);box-shadow: 0 0 0 2px var(--swg-crest-dark);}
.swg-timeline li[data-era="old-republic"]::before,.swg-timeline li[data-era="high-republic"]::before{background: var(--swg-jedi);box-shadow: 0 0 0 2px var(--swg-jedi);}
.swg-timeline li[data-era="empire-reign"]::before,.swg-timeline li[data-era="first-order"]::before{background: var(--swg-sith);box-shadow: 0 0 0 2px var(--swg-sith);}
.swg-timeline h3{font-size: 19px;font-weight: 700;margin: 0 0 6px;color: var(--swg-void);}
.swg-timeline h3 span{display: block;margin-top: 2px;font-size: 13px;font-weight: 600;color: var(--swg-muted);}
.swg-timeline p{margin: 0;line-height: 1.65;}
.swg-canon-grid{display: grid;grid-template-columns: minmax(0, 1fr) 230px;gap: 26px;align-items: start;margin-top: 14px;}
.swg-canon-grid p{line-height: 1.7;font-size: 16px;}
.swg-split{list-style: none;margin: 0;padding: 0;display: grid;gap: 10px;}
.swg-split li{display: flex;flex-direction: column;padding: 14px 16px;background: var(--swg-void);border-radius: 12px;color: #fff;}
.swg-split b{font-family: Georgia, "Times New Roman", serif;font-size: 30px;line-height: 1;color: var(--swg-crest);}
.swg-split span{margin-top: 4px;font-size: 12px;font-weight: 700;letter-spacing: .08em;text-transform: uppercase;color: rgba(255, 255, 255, 0.66);}
.swg-table-wrap{overflow-x: auto;margin: 16px 0 12px;border: 1px solid var(--swg-line);border-radius: 12px;}
.swg-table{width: 100%;border-collapse: collapse;background: #fff;font-size: 15px;}
.swg-table th,.swg-table td{padding: 11px 14px;border-bottom: 1px solid var(--swg-line);text-align: left;vertical-align: top;}
.swg-table thead th{background: var(--swg-void);color: #fff;font-size: 12.5px;letter-spacing: .06em;text-transform: uppercase;}
.swg-table tbody th{white-space: nowrap;color: var(--swg-void);}
.swg-table tbody tr:last-child th,.swg-table tbody tr:last-child td{border-bottom: 0;}
.swg-swatch{display: inline-block;width: 6px;height: 20px;margin-right: 9px;border-radius: 3px;vertical-align: -4px;background: #9aa3b8;box-shadow: 0 0 7px rgba(154, 163, 184, 0.9);}
.swg-swatch[data-blade="red"]{background: #e23b4c;box-shadow: 0 0 7px rgba(226, 59, 76, 0.9);}
.swg-swatch[data-blade="blue"]{background: #3d9ae8;box-shadow: 0 0 7px rgba(61, 154, 232, 0.9);}
.swg-swatch[data-blade="green"]{background: #3fc07a;box-shadow: 0 0 7px rgba(63, 192, 122, 0.9);}
.swg-swatch[data-blade="purple"]{background: #9a5fe0;box-shadow: 0 0 7px rgba(154, 95, 224, 0.9);}
.swg-swatch[data-blade="violet"]{background: #7d57d6;box-shadow: 0 0 7px rgba(125, 87, 214, 0.9);}
.swg-swatch[data-blade="yellow"]{background: #f5c518;box-shadow: 0 0 7px rgba(245, 197, 24, 0.9);}
.swg-swatch[data-blade="orange"]{background: #f08a3c;box-shadow: 0 0 7px rgba(240, 138, 60, 0.9);}
.swg-swatch[data-blade="white"]{background: #f3f6ff;box-shadow: 0 0 7px rgba(243, 246, 255, 0.95);}
.swg-swatch[data-blade="magenta"]{background: #e050a8;box-shadow: 0 0 7px rgba(224, 80, 168, 0.9);}
.swg-swatch[data-blade="darksaber"]{background: #1b1f2e;box-shadow: 0 0 7px rgba(190, 200, 225, 0.85);}
.swg-aside{font-size: 15px;line-height: 1.65;color: var(--swg-muted);}
.swg-uses{display: grid;grid-template-columns: repeat(2, 1fr);gap: 16px;margin-top: 18px;}
.swg-use{background: var(--swg-paper);border: 1px solid var(--swg-line);border-radius: 14px;padding: 18px 20px;}
.swg-use-tag{display: inline-block;margin: 0 0 8px;padding: 3px 10px;border-radius: 999px;background: var(--swg-void);color: var(--swg-crest);font-size: 12px;font-weight: 700;}
.swg-use h3{font-size: 19px;font-weight: 700;color: var(--swg-void);margin: 0 0 6px;}
.swg-use p{line-height: 1.6;margin-bottom: 8px;}
.swg-use-tip{margin: 0 !important;padding-top: 8px;border-top: 1px dashed var(--swg-line);font-size: 14px;color: var(--swg-muted);}
.swg-legend{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 14px;margin: 18px 0 0;}
.swg-legend > div{padding: 14px 16px;background: var(--swg-cream);border-left: 4px solid var(--swg-crest);border-radius: 10px;}
.swg-legend dt{font-size: 12px;font-weight: 800;letter-spacing: .09em;text-transform: uppercase;color: var(--swg-void);}
.swg-legend dd{margin: 5px 0 0;font-size: 14.5px;line-height: 1.6;color: var(--swg-text);}
.swg-limits{max-width: 900px;margin: 0 auto 52px;padding: 24px 26px;background: var(--swg-cream);border: 1px solid var(--swg-line);border-left: 6px solid var(--swg-sith);border-radius: 14px;}
.swg-limits ul{margin: 0;padding-left: 18px;}
.swg-limits li{margin-bottom: 10px;line-height: 1.6;}
.swg-limits a{color: var(--swg-jedi);font-weight: 600;}
.swg-disclaimer{margin: 14px 0 0;font-size: 13px;color: var(--swg-muted);}
@keyframes swgIn{from{opacity: 0;transform: translateY(8px);}to{opacity: 1;transform: none;}}
@keyframes swgSpin{to{transform: rotate(360deg);}}
@media (max-width: 1199px){.swg-bench{grid-template-columns: minmax(360px, 460px) minmax(0, 1fr);}}
@media (max-width: 991px){.swg-bench{grid-template-columns: 1fr;}.swg-console{position: static;}.swg-canon-grid{grid-template-columns: 1fr;}.swg-split{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 860px){.swg-uses,.swg-legend{grid-template-columns: 1fr;}}
@media (max-width: 576px){.swg-console{padding: 18px 16px;}.swg-reel{grid-template-columns: 1fr;}.swg-card:only-child{padding: 22px 20px 18px 26px;}.swg-card:only-child .swg-card-name{font-size: 30px;}.swg-card-meta{grid-template-columns: 1fr;}.swg-read h2,.swg-limits h2{font-size: 24px;}.swg-limits{padding: 20px 18px;}.swg-split{grid-template-columns: 1fr;}}
@media (prefers-reduced-motion: reduce){.swg-card{animation: none;}.swg-go.is-busy i{animation: none;}}