*{box-sizing:border-box}body.cp-body{margin:0;background:#050a12;color:#c1d2e4;font:14px/1.5 'Segoe UI',system-ui,sans-serif;color-scheme:dark}a{color:#84c7f4;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #84d7ff;outline-offset:3px}button:disabled,input:disabled,select:disabled{opacity:.5;cursor:wait}.planner.cp-app{max-width:none;padding:0;margin:0;display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}.cp-app .build-sidebar{background:linear-gradient(180deg,#101b2b,#060c16 70%);border-right:1px solid #354c67;padding:24px 18px;display:flex;flex-direction:column;gap:16px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;align-items:center;gap:12px;color:#eff4fc;font-size:17px;letter-spacing:2px}.brand:hover{text-decoration:none}.brand b{color:#e5b567}.brand small{display:block;font-size:9px;letter-spacing:2.2px;color:#8dacca;margin-top:3px}.brand-mark{font-size:34px;color:#d7ae6b}.build-sidebar nav{display:grid;gap:8px;margin:8px 0 12px}.build-sidebar nav a{padding:10px 12px;border:1px solid #2d4059;border-radius:4px;background:#0a121e;font-size:12px}.sidebar-title{font-size:11px;color:#84bce5;font-weight:700;letter-spacing:1.4px;display:flex;justify-content:space-between}.sidebar-title span{border:1px solid #375373;border-radius:4px;padding:0 6px}.cp-app .new-build{border-style:dashed;border-color:#38516e;color:#9bb9d2;background:#101c2b}.cp-app #saved{display:grid;gap:8px}.cp-app #saved button{margin:0;padding:12px;font-size:13px;white-space:normal}.cp-app #saved button.active{border-color:#71b9ec;background:#162c43;box-shadow:inset 3px 0 #71b9ec}.cp-app #saved button small{display:block;font-size:11px;color:#7f9ab5;margin-top:4px}.sidebar-bottom{margin-top:auto;padding-top:24px;font-size:11px;color:#8298af}.sidebar-bottom p{font-size:11px;line-height:1.7}.sidebar-bottom button{width:100%;font-size:11px}.local-dot{display:inline-block;width:6px;height:6px;background:#7cbca9;border-radius:50%;margin-right:5px}.cp-app .workspace{min-width:0;max-width:1500px;width:100%;padding:22px 24px;margin:0 auto}.cp-app .panel{border:1px solid #38516d;background:linear-gradient(155deg,#101c2d 0%,#090f1a 70%,#060b13);border-radius:4px;box-shadow:inset 0 0 0 1px #8cbde00a,0 3px 12px #0002;padding:18px}.cp-app .page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.cp-app .eyebrow{font-size:9px;letter-spacing:2px;color:#7195b5}.cp-app h1{font-size:25px;font-weight:500;color:#a0cce9;margin:3px 0 0;letter-spacing:.4px}.version-chip{font-size:11px;white-space:nowrap;padding:4px 10px;border:1px solid #304960;border-radius:3px;color:#7fa9c6}.cp-app h2{font-size:11px;font-weight:650;letter-spacing:1.3px;color:#81b7dd;margin:0 0 14px}.cp-app h2 small{font-size:10px;float:right;color:#738ba3;font-weight:400;letter-spacing:0}.cp-app label{font-size:11px;color:#93adc4;display:grid;gap:4px;min-width:0}.cp-app input,.cp-app select,.cp-app textarea{border:1px solid #314861;border-radius:3px;background:#09121f;color:#c6daeb;padding:8px 9px;font:12px 'Segoe UI',sans-serif;min-width:0;width:100%;outline-offset:2px}.cp-app input:focus,.cp-app select:focus{outline:1px solid #82b9e5;border-color:#82b9e5}.cp-app button{font-size:12px;padding:7px 11px;background:linear-gradient(#172a40,#102035);border:1px solid #3b5773;border-radius:3px;color:#b6d2e8}.cp-app button:hover{background:#1b354f;border-color:#72aedb}.cp-app button.primary{background:linear-gradient(#375c79,#203e58);border-color:#638bad;color:#e1f1ff}.setup-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:12px;margin-bottom:13px}.setup-row.compact{grid-template-columns:1.2fr 1fr 1fr 1fr 1fr}.bonus-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:9px;border-top:1px solid #263950;padding:14px 0 0;margin-top:17px}.stim-control{display:flex;align-items:center;gap:9px;color:#7795b1;font-size:10px;letter-spacing:1px}.cp-app #stims{display:flex;gap:5px}.cp-app .stim{padding:3px;width:35px;height:35px;line-height:1;border-color:#263c52;position:relative}.stim img{width:27px;height:27px;opacity:.55}.cp-app .stim[aria-pressed=true]{border-color:#95d4ff;box-shadow:0 0 8px #5baee62b}.stim[aria-pressed=true] img{opacity:1}.bonus-menu{position:relative;font-size:11px}.bonus-menu summary{list-style:none;cursor:pointer;border:1px solid #304960;border-radius:3px;padding:8px 10px;background:#0d1b2b;color:#a4c4dc}.bonus-menu summary::after{content:' ▾';color:#6e91af}.bonus-menu summary span{color:#6c9dc5;margin-left:4px}.bonus-menu[open] summary{border-color:#78b2df}.bonus-popover{position:absolute;z-index:15;top:calc(100% + 8px);left:0;width:290px;background:#0d1928;border:1px solid #547393;border-radius:5px;padding:16px;box-shadow:0 14px 40px #000b}.bonus-popover.wide{width:330px;left:auto;right:0}.bonus-popover small{display:block;color:#819cb5;font-size:11px;line-height:1.6;margin-top:12px}.popover-head{display:flex;justify-content:space-between;align-items:center;color:#c0dcef;margin-bottom:12px}.cp-app .popover-head button{padding:3px 7px;font-size:10px}.cp-app .check{display:flex;align-items:center;gap:9px;line-height:1.5;cursor:pointer;margin:10px 0}.cp-app input[type=checkbox]{width:14px;height:14px;flex:0 0 14px;padding:0;accent-color:#76b6e6}.cp-app .guild{font-size:11px;margin:0;padding:5px 9px;display:flex;flex-wrap:wrap;border:1px solid #304960;border-radius:3px;gap:5px}.guild small{font-size:9px;color:#779ab7}.cp-app .action-bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #21354b;margin-top:14px;padding-top:12px;gap:8px}.cp-app .actions{margin:0;gap:6px}.cp-app #autosave{color:#79bba3;font-size:10px}.cp-app #status{margin:0;min-height:0;font-size:11px;line-height:1.5;color:#e7c689}.cp-app #status:not(:empty){margin-top:10px}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;margin-top:18px}.stat-column{display:grid;gap:16px;align-content:start;min-width:0}.cp-app .stat-grid{gap:8px;margin:0}.cp-app .stat{padding:12px 5px;background:#060d16;border-color:#263c51}.cp-app .stat b{font:600 29px 'Segoe UI',sans-serif;color:#c58989;line-height:1.3}.cp-app .stat:nth-child(2) b{color:#e2ca71}.cp-app .stat:nth-child(3) b{color:#8fc49b}.cp-app .stat span{font-size:9px;letter-spacing:.9px;text-transform:uppercase}.stat small{display:block;font-size:11px;margin-top:7px;color:#95acc1}.target-row{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:10px;margin-top:12px;color:#8eabc1}.target-row .met{color:#86c4a3}.cp-app .augment-summary{padding:15px 18px}.augment-summary h2{display:flex;justify-content:space-between}.augment-summary h2 span{color:#ccdeed}.cp-app .augment-summary p{font-size:10px;margin:10px 0 0;color:#7692aa}.augment-summary #augment-summary{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#acc9e1}.derived-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-bottom:16px}.cp-app .stats-row{font-size:11px;padding:7px 0;border-bottom-color:#1b2c40;gap:10px}.stats-row span{color:#8ca8be}.stats-row strong{color:#d0dfeb;font-weight:500;text-align:right;white-space:nowrap}.base-stats{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding-top:12px;border-top:1px solid #365069}.cp-app .model-hint{font-size:10px;line-height:1.7;color:#6f8ba3;margin:16px 0 0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:10px;white-space:nowrap}th,td{text-align:right;padding:9px 6px;border-bottom:1px solid #213347}th{font-size:9px;color:#7da1bd;font-weight:500}th:first-child,td:first-child{text-align:left;padding-left:0}td{font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:0;color:#d7e9f7;font-weight:600}.model-details summary{cursor:pointer;color:#8fb5d2;font-size:11px}.model-details p{font-size:11px;line-height:1.8}.model-details .setup-row{grid-template-columns:repeat(3,1fr)}.gear-title{display:flex;align-items:center;justify-content:space-between;padding:2px 0 12px}.gear-title h2{margin:0}.gear-title span{font-size:10px;color:#6f8ba3}.cp-app #slots{display:grid;gap:12px}.cp-app .gear-group{padding:14px 14px 12px}.gear-group h2{text-align:center;font-size:10px;letter-spacing:2px;margin-bottom:12px}.gear-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px;align-items:start}.gear-grid.weapons{grid-template-columns:repeat(2,minmax(0,1fr));max-width:200px;margin:auto;gap:22px}.slot-wrap{text-align:center;min-width:0}.slot-wrap.head,.slot-wrap.tactical{grid-column:2}.slot-wrap.wrists,.slot-wrap.relic1{grid-column:1}.slot-wrap.relic2{grid-column:3}.cp-app .slot{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;padding:4px;width:63px;height:63px;min-height:0;background:linear-gradient(140deg,#192f49,#091421);border:1px solid #375c7c;box-shadow:inset 0 0 0 3px #7bb7df09;position:relative;overflow:visible;border-radius:4px}.cp-app .slot.equipped{border-color:#a27ad7;box-shadow:inset 0 0 0 3px #ac84f019,0 0 9px #7660cc12}.slot img{width:50px;height:50px;object-fit:contain}.slot:not(.equipped) img{opacity:.65}.slot .slot-rating{position:absolute;right:3px;bottom:1px;font-size:10px;background:#070c17d9;color:#d6c6f0;padding:0 3px;border-radius:2px}.slot-label{font-size:9px;display:block;color:#90aac2;margin:5px 0 3px}.slot-item-name{display:block;font-size:9px;color:#bfa4dd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px;max-width:100%}.cp-app .slot-wrap select{padding:4px 2px;font-size:9px;width:100%;color:#8eafc9;max-width:88px}.cp-app .rating-panel{text-align:center;margin-top:12px;padding:12px}.rating-panel>span{font-size:9px;letter-spacing:2px;color:#87a8c2}.rating-panel b{display:block;font-size:28px;font-weight:500;color:#c5daeb}.rating-panel small{font-size:9px;color:#68869f}.cp-app .gear-help{font-size:10px;text-align:center;line-height:1.8;color:#7895ac}.planner-footer{padding:26px 0 2px;font-size:9px;color:#536f88;letter-spacing:1px}.planner-footer span{margin:0 8px}.cp-app dialog{width:min(760px,95vw);padding:22px;background:#0b1523;border-color:#4d7496}.cp-app dialog h2{font-size:17px;letter-spacing:0;margin:0}.cp-app .dialog-head{align-items:center}.cp-app .results{max-height:55vh}.cp-app .result .item-card{font-size:13px;padding:13px}.cp-app .item-card strong{font-size:15px}.cp-app .result{grid-template-columns:minmax(0,1fr) auto}.cp-app #import-error{color:#f0a89c}.cp-app textarea{min-height:180px}.cp-app dialog p{font-size:12px}.cp-app .empty-builds{padding:28px 5px;text-align:center;font-size:12px;color:#6785a1}.empty-builds b{font-size:25px;color:#375873;display:block;margin-bottom:10px}.cp-app .notice{font-size:12px}.cp-app .bonus-popover input[type=number]{margin-bottom:8px}
@media(min-width:1500px){.dashboard{grid-template-columns:minmax(0,1fr) 350px}.cp-app .slot{width:69px;height:69px}.gear-grid{gap:14px}.cp-app .workspace{padding:26px 32px}.derived-grid,.base-stats{gap:0 30px}.cp-app .stats-row{font-size:12px}}
@media(max-width:1150px){.planner.cp-app{grid-template-columns:215px minmax(0,1fr)}.cp-app .workspace{padding:18px}.dashboard{grid-template-columns:minmax(0,1fr) 270px;gap:13px}.cp-app .panel{padding:14px}.setup-row{grid-template-columns:1fr 1fr}.setup-row.compact{grid-template-columns:repeat(3,1fr)}.derived-grid,.base-stats{grid-template-columns:1fr}.cp-app .slot{width:57px;height:57px}.slot img{width:45px;height:45px}.bonus-popover.wide{right:auto;left:0}}
@media(max-width:850px){.planner.cp-app{grid-template-columns:1fr}.cp-app .build-sidebar{position:static;height:auto;display:block;padding:16px;border-right:0;border-bottom:1px solid #354c67}.build-sidebar .brand{font-size:15px}.build-sidebar nav{display:flex;margin:12px 0}.sidebar-title{margin-bottom:8px}.cp-app .new-build{width:auto}.cp-app #saved{display:flex;flex-wrap:wrap;margin-top:10px}.cp-app #saved button{width:auto}.cp-app .empty-builds{padding:4px;text-align:left;margin:0}.empty-builds b{display:none}.sidebar-bottom{padding-top:10px}.sidebar-bottom p{margin:6px 0}.sidebar-bottom button{width:auto}.dashboard{grid-template-columns:minmax(0,1fr) 270px}.derived-grid,.base-stats{grid-template-columns:1fr}.cp-app .workspace{padding:14px}}
@media(max-width:600px){.dashboard{grid-template-columns:1fr}.gear-column{grid-row:1}.gear-title{margin-top:5px}.cp-app #slots{grid-template-columns:1fr 1fr;align-items:start}.gear-group.weapons-panel{grid-column:1/-1}.gear-grid.weapons{max-width:none;grid-template-columns:repeat(2,1fr);gap:20px}.gear-grid{gap:10px 4px}.cp-app .slot{width:46px;height:46px}.slot img{width:37px;height:37px}.cp-app .gear-group{padding:12px 6px}.cp-app .slot-wrap select{font-size:8px}.cp-app h1{font-size:22px}.setup-row.compact{grid-template-columns:1fr 1fr}.bonus-toolbar{gap:8px}.bonus-popover{position:fixed;left:16px!important;right:16px!important;top:20vh;width:auto!important;max-height:65vh;overflow:auto}.bonus-menu[open]::before{content:'';position:fixed;inset:0;background:#0009;z-index:14;pointer-events:none}.cp-app .action-bar{align-items:flex-start;flex-direction:column}.cp-app .actions{width:100%;flex-wrap:wrap}.derived-grid,.base-stats{grid-template-columns:1fr 1fr;gap:0 12px}.cp-app .stats-row{font-size:10px}.version-chip{font-size:9px}.cp-app .result{grid-template-columns:1fr}.cp-app .stat b{font-size:26px}.cp-app .page-heading{gap:10px}.stim-control{width:100%}}
.cp-app .optimizer-controls{display:flex;align-items:end;gap:12px;margin-top:15px;border-top:1px solid #2d4259;padding-top:14px}.cp-app .optimizer-controls label{flex:0 1 240px}.cp-app .optimizer-controls label:first-child{flex:0 1 100px}.cp-app .optimize-button{padding:9px 23px;background:linear-gradient(135deg,#715730,#3d301e);border-color:#b38c4d;color:#ffe2a5;font-weight:600;min-height:35px}.cp-app .optimize-button:hover{background:#614a28;border-color:#eac175}.cp-app .optimizer-help{font-size:10px;line-height:1.7;color:#8ba3b9;margin:9px 0 0}.cp-app .optimization-result{margin-top:18px;border-color:#8e7547}.optimization-heading{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.optimization-heading h2{margin:0;color:#e3bf7d}.optimization-heading>span{color:#c5b289;font-size:11px}.optimization-heading button{margin-left:auto}.cp-app .optimization-result p{font-size:12px}.optimization-result summary{cursor:pointer;font-size:12px;color:#caaf7c;margin-top:14px}.optimization-result table{white-space:normal;table-layout:fixed;margin-top:10px}.optimization-result th,.optimization-result td{text-align:left;vertical-align:top;font-size:10px}.optimization-result th:first-child{width:15%}.cp-app .optimized-slot .slot{border-color:#edbd68;box-shadow:0 0 0 2px #c6944933,0 0 14px #e9b65733}.change-badge{display:block;font-size:9px;color:#edc785;margin:4px 0}.cp-app .equivalent-badge{display:block;font-size:9px;padding:2px 5px;margin:5px auto;max-width:100%;color:#7dcccd;background:#10282c;border-color:#2e565b;white-space:nowrap}.cp-app .equivalent-badge:hover{background:#1c393e;border-color:#79c8cc}.equivalent-result .item-card{border-color:#477c7f}.item-card .equivalent-label{color:#86d3c4;font-size:11px;margin-bottom:8px}.equivalent-filter{padding:8px 0}.result .item-card img{float:right;width:56px;height:56px;image-rendering:auto}.slot img{image-rendering:auto}@media(max-width:600px){.cp-app .optimizer-controls{flex-wrap:wrap}.cp-app .optimizer-controls label{flex:1}.cp-app .optimize-button{width:100%}.optimization-heading button{margin-left:0}.cp-app .equivalent-badge{font-size:8px;padding:2px}.optimization-result table{table-layout:auto}}

.effect-protected{display:block;font-size:9px;color:#e3bf7d;margin:4px 0}.item-card .item-effect-title{font-size:12px;color:#e9c173;margin-top:12px}.item-card .item-effect{color:#a7d99a;font-size:13px;line-height:1.6}.cp-app [hidden]{display:none!important}

/* Keep hover cards from intercepting equipment-slot clicks. */
.cp-body .swtor-tooltip{pointer-events:none}

/* Image-based augment selection, usable with mouse, keyboard and touch. */
.cp-app .augment-select{display:flex;align-items:center;gap:4px;width:100%;max-width:130px;margin:3px auto 0;padding:4px;font-size:9px;text-align:left;line-height:1.3;min-height:32px}.augment-select img{width:24px;height:24px;object-fit:contain;flex-shrink:0}.augment-select span{overflow-wrap:anywhere}.augment-empty{display:inline-grid;place-items:center;min-width:24px;height:24px;color:#7895ac;border:1px dashed #476887;border-radius:3px}.cp-app .augment-dialog{width:min(440px,94vw)}.augment-options{display:grid;gap:7px}.augment-options p{margin:0 0 8px}.cp-app .augment-choice{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:8px 12px}.augment-choice img{width:36px;height:36px;object-fit:contain}.augment-choice[aria-pressed=true]{border-color:#c69af4;background:#302342}.augment-choice[aria-pressed=true]::after{content:'✓';margin-left:auto;color:#d1b6f0}
