Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Join the Playtest on Steam Now: SpiritVale

Module:GameInfo/styles.css: Difference between revisions

From SpiritVale Wiki
No edit summary
Tags: Mobile edit Mobile web edit
No edit summary
Tags: Mobile edit Mobile web edit
 
(73 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* Module:GameInfo/styles.css */
/* SpiritVale Wiki — Module:GameInfo/styles.css */
/* GameInfo Box v1 — TemplateStyles-safe (no CSS vars / no var()) */
/* GameInfo-family layout and skill-specific presentation.
/* Phase 4.1 — Unified + Reusable (Layout restored, scoped, mobile-safe) */
  Surface hierarchy:
  - bg1 = outer card / inactive neutral base
  - bg2 = grouped section surface
  - bg3 = inner framed block / pill surface
*/
/* -------------------------------------------------------------------------- */
/* Canonical ownership map                                                    */
/* -------------------------------------------------------------------------- */
/* This sheet owns GameInfo-family presentation only. That includes:          */
/* - GameInfo card shells and internal layout                                  */
/* - skill card presentation and module-local responsive changes              */
/* - module-local pills, panels, tabs, metadata blocks, and reference blocks  */
/*                                                                            */
/* It does NOT own:                                                            */
/* - shared site tokens / utilities / slider anatomy (Common.css)              */
/* - skin and chrome theme logic (Citizen.css)                                 */
/* - definitions-only token styling (Definitions stylesheet)                   */
/*                                                                            */
/* Responsive cleanup note: GameInfo now maps its legacy mobile cutoffs into  */
/* the canonical six-viewpoint ladder. The module still uses descending range  */
/* queries for parity, but the breakpoints themselves are now canonical.      */
/* -------------------------------------------------------------------------- */
/* Canonical ladder                                                            */
/* -------------------------------------------------------------------------- */
/* - default: <640px                                                          */
/* - sm:      >=640px                                                          */
/* - md:      >=768px                                                          */
/* - lg:      >=1024px                                                        */
/* - xl:      >=1280px                                                        */
/* - 2xl:    >=1536px                                                        */
/* -------------------------------------------------------------------------- */


/* ----------------------------------------------------------------------------
 
  1) BASE CARD + SAFETY
/* -------------------------------------------------------------------------- */
---------------------------------------------------------------------------- */
/* 1) Base card and safety                                                    */
/* -------------------------------------------------------------------------- */


.sv-gi-card,
.sv-gi-card,
Line 11: Line 42:
   max-width:600px;
   max-width:600px;
   margin:18px auto;
   margin:18px auto;
   border-radius:22px;
   border-radius:22px;
   border:1px solid rgba(75,99,136,0.55);
   overflow:visible;


   background-color:#0f172a;
   background:var(--sv-ui-bg1);
   background-image:
   background-image:none;
    radial-gradient(900px 360px at 40% -10%, rgba(106,166,255,0.18), rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02)),
    linear-gradient(180deg, #0f172a, #0b1324);


  box-shadow:0 16px 38px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.05);
   color:var(--sv-ui-text2);
  overflow:visible;
 
   color:rgba(245,249,255,0.94);
   font-size:15px;
   font-size:15px;
   line-height:1.35;
   line-height:1.35;
}
}


/* Locked split zones */
.sv-gi-top,
.sv-gi-top,
.sv-skill-top{
.sv-skill-top{ padding:14px 18px 4px; }
  padding:14px 18px 4px;
}


.sv-gi-bottom,
.sv-gi-bottom,
.sv-skill-bottom{
.sv-skill-bottom{ padding:10px 18px 12px; }
  padding:10px 18px 12px;
}


/* Predictable sizing */
.sv-gi-card,
.sv-gi-card,
.sv-gi-card *,
.sv-gi-card *,
.sv-skill-card,
.sv-skill-card,
.sv-skill-card *{
.sv-skill-card *{ box-sizing:border-box; }
  box-sizing:border-box;
}
 
.sv-gi-card a,
.sv-skill-card a{
  color:rgba(106,166,255,0.95);
  text-decoration:none;
}
 
.sv-gi-card a:hover,
.sv-skill-card a:hover{
  text-decoration:underline;
}


.sv-gi-error{
.sv-gi-error{
Line 63: Line 68:
   margin:18px auto;
   margin:18px auto;
   padding:10px 12px;
   padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(75,99,136,0.55);
  background:#1f2937;
  color:rgba(245,249,255,0.92);
}


 
  overflow-wrap:anywhere;
/* Ensure source popup nodes are hidden even without sitewide .sv-hidden */
  word-break:break-word;
.sv-gi-card .sv-hidden,
.sv-skill-card .sv-hidden{
  display:none;
}
}


/* Remove default details marker */
.sv-gi-card summary,
.sv-gi-card summary,
.sv-skill-card summary{
.sv-skill-card summary{ list-style:none; }
  list-style:none;
}


/* ----------------------------------------------------------------------------
/* -------------------------------------------------------------------------- */
  2) ICON-TEXT HARDENING (prevents clipped link/text inside icon squares)
/* 2) Icons and fallback badges                                                */
---------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */


.sv-skill-icon,
.sv-skill-icon,
.sv-meta-icon,
.sv-meta-icon,
.sv-ref-ico{
.sv-ref-ico,
.sv_skill_scaling__stat-icon{
   font-size:0;
   font-size:0;
   line-height:0;
   line-height:0;
Line 95: Line 90:
.sv-skill-icon a,
.sv-skill-icon a,
.sv-meta-icon a,
.sv-meta-icon a,
.sv-ref-ico a{
.sv-ref-ico a,
  text-decoration:none;
.sv_skill_scaling__stat-icon a{ text-decoration:none; }
}


/* Size bumps for “?” badge inside icon boxes */
.sv-skill-icon .sv-miss{
.sv-skill-icon .sv-miss{
   width:22px;
   width:22px;
Line 115: Line 108:
}
}


/* Card image enhancement (global .sv-img handles rounding) */
/* -------------------------------------------------------------------------- */
.sv-gi-card .sv-img img,
/* 2b) Interactive link treatment                                              */
.sv-skill-card .sv-img img{
/* -------------------------------------------------------------------------- */
   box-shadow:0 10px 18px rgba(0,0,0,0.30);
 
.sv-disclose-pop a,
.sv-disclose-pop-title a,
.sv-tip-pop a,
.sv-tip-pop-title a,
.sv-def-pop a,
.sv-def-pop-title a,
.sv-pop a,
.sv-pop-title a,
.sv-gi-card .sv-ref-title a,
.sv-skill-card .sv-ref-title a{
   color:var(--sv-ui-link, #8fc7ff);
  text-decoration-line:underline;
  text-decoration-color:currentColor;
}
 
.sv-disclose-pop a:hover,
.sv-disclose-pop-title a:hover,
.sv-tip-pop a:hover,
.sv-tip-pop-title a:hover,
.sv-def-pop a:hover,
.sv-def-pop-title a:hover,
.sv-pop a:hover,
.sv-pop-title a:hover,
.sv-gi-card .sv-ref-title a:hover,
.sv-skill-card .sv-ref-title a:hover,
.sv-disclose-pop a:focus,
.sv-disclose-pop-title a:focus,
.sv-tip-pop a:focus,
.sv-tip-pop-title a:focus,
.sv-def-pop a:focus,
.sv-def-pop-title a:focus,
.sv-pop a:focus,
.sv-pop-title a:focus,
.sv-gi-card .sv-ref-title a:focus,
.sv-skill-card .sv-ref-title a:focus{
  color:var(--sv-ui-link-hover, #b8ddff);
}
}


/* Focus outline (no markup changes required) */
.sv-disclose-pop-title a,
.sv-gi-card .sv-tip-btn:focus,
.sv-tip-pop-title a,
.sv-skill-card .sv-tip-btn:focus,
.sv-def-pop-title a,
.sv-gi-card .sv-disclose-btn:focus,
.sv-pop-title a{
.sv-skill-card .sv-disclose-btn:focus,
   font:inherit;
.sv-gi-card .sv-tab:focus,
.sv-skill-card .sv-tab:focus,
.sv-gi-card .sv-level-range--custom:focus,
.sv-skill-card .sv-level-range--custom:focus{
   outline:2px solid rgba(106,166,255,0.85);
  outline-offset:2px;
}
}


/* ----------------------------------------------------------------------------
/* -------------------------------------------------------------------------- */
  3) SKILL HEADER (ICON + TITLE + NOTES + DESCRIPTION)
/* 3) Skill header                                                            */
---------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */


.sv-skill-head{
.sv-skill-head{
Line 149: Line 172:
   width:64px;
   width:64px;
   height:64px;
   height:64px;
  border-radius:16px;
 
  border:1px solid rgba(75,99,136,0.55);
  background:#1f2937;
   display:flex;
   display:flex;
   align-items:center;
   align-items:center;
   justify-content:center;
   justify-content:center;
   overflow:hidden;
   overflow:hidden;
  border-radius:16px;
}
}


Line 170: Line 193:


.sv-skill-title{
.sv-skill-title{
  min-width:0;
  word-wrap:break-word;
   font-weight:900;
   font-weight:900;
  letter-spacing:0.2px;
   font-size:22px;
   font-size:22px;
   line-height:1.10;
   line-height:1.10;
   color:rgba(245,249,255,0.98);
   letter-spacing:0.2px;
   min-width:0;
   color:var(--sv-ui-text1);
  word-wrap:break-word;
}
}


.sv-skill-desc{
.sv-skill-desc{
   margin-top:6px;
   margin-top:6px;
   color:rgba(215,226,244,0.92);
   word-wrap:break-word;
 
   font-size:14px;
   font-size:14px;
   line-height:1.35;
   line-height:1.35;
   word-wrap:break-word;
   color:var(--sv-ui-text2);
}
}


/* ----------------------------------------------------------------------------
/* -------------------------------------------------------------------------- */
  4) NOTES TIP BUTTON (source pop is hidden; Universal Popups renders UI)
/* 4) Meta and requirements block                                              */
---------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */


.sv-gi-card .sv-tip,
.sv-skill-meta-block{
.sv-skill-card .sv-tip{
   margin:8px 0 10px;
   position:relative;
  flex:0 0 auto;
}


.sv-gi-card .sv-tip-btn,
   display:grid;
.sv-skill-card .sv-tip-btn{
   grid-template-columns:repeat(2, minmax(0, 1fr));
   display:inline-flex;
   align-items:stretch;
   align-items:center;
   gap:10px;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  border:1px solid rgba(75,99,136,0.55);
   background:#273449;
   cursor:pointer;
}
}


.sv-gi-card .sv-tip-btn:hover,
.sv-skill-meta-block--single{
.sv-skill-card .sv-tip-btn:hover{
   grid-template-columns:minmax(0, 1fr);
   background:#2e3f59;
}
}


.sv-gi-card .sv-tip-btn[aria-expanded="true"],
.sv-skill-meta-block__bubble{
.sv-skill-card .sv-tip-btn[aria-expanded="true"]{
  min-width:0;
   background:#2e3f59;
   min-height:108px;
   border-color:rgba(106,166,255,0.70);
   max-height:108px;
}
  padding:10px 12px;


.sv-gi-card .sv-ico,
   display:flex;
.sv-skill-card .sv-ico{
   display:inline-flex;
   align-items:center;
   align-items:center;
   justify-content:center;
   justify-content:center;
   width:18px;
   overflow:hidden;
  height:18px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
  line-height:1;
  color:rgba(245,249,255,0.96);
  background:rgba(15,23,42,0.35);
  border:1px solid rgba(75,99,136,0.55);
}


/* Source pop styles retained for safety (normally hidden via .sv-hidden) */
.sv-gi-card .sv-tip-pop,
.sv-skill-card .sv-tip-pop{
  display:block;
  position:absolute;
  z-index:50;
  top:34px;
  right:0;
  width:340px;
  max-width:92vw;
   border-radius:16px;
   border-radius:16px;
   border:1px solid rgba(75,99,136,0.55);
   background:var(--sv-ui-bg2);
  background:#0f172a;
   background-image:none;
   background-image:radial-gradient(900px 260px at 35% 0, rgba(106,166,255,0.14), rgba(0,0,0,0) 60%);
   box-shadow:none;
   box-shadow:0 18px 40px rgba(0,0,0,0.45);
  overflow:hidden;
}
}


.sv-gi-card .sv-tip-pop-head,
.sv-skill-meta-block__bubble--meta .sv-skill-meta,
.sv-skill-card .sv-tip-pop-head{
.sv-skill-meta-block__bubble--req .sv-reqrow{
  display:flex;
   width:100%;
  align-items:center;
   margin:0;
  justify-content:space-between;
   padding:10px 12px;
   border-bottom:1px solid rgba(59,75,99,0.85);
  background:#1f2937;
}
}


.sv-gi-card .sv-tip-pop-title,
/* -------------------------------------------------------------------------- */
.sv-skill-card .sv-tip-pop-title{
/* 5) Meta row                                                                */
  font-weight:900;
/* -------------------------------------------------------------------------- */
  font-size:13px;
  letter-spacing:0.2px;
  color:rgba(245,249,255,0.96);
}
 
.sv-gi-card .sv-tip-pop-body,
.sv-skill-card .sv-tip-pop-body{
  padding:10px 12px;
  font-size:13px;
  color:rgba(215,226,244,0.92);
  line-height:1.4;
  word-wrap:break-word;
}
 
/* ----------------------------------------------------------------------------
  5) META ROW
---------------------------------------------------------------------------- */


.sv-skill-meta{
.sv-skill-meta{
   display:grid;
   display:grid;
   grid-template-columns:repeat(4, minmax(0, 1fr));
   grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:6px;
   justify-items:center;
  margin:8px 0 10px;
}
 
/* If meta row uses global .sv-pill */
.sv-skill-card .sv-skill-meta .sv-pill,
.sv-gi-card .sv-skill-meta .sv-pill{
  width:100%;
   justify-content:center;
  gap:6px;
  padding:0;
  min-height:34px;
   align-items:center;
   align-items:center;
   text-align:center;
   gap:8px;
  border-radius:999px;
  border:1px solid rgba(59,75,99,0.85);
  background:#273449;
  background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
 
  font-weight:900;
  font-size:12px;
  line-height:1.02;
  text-transform:none;
  letter-spacing:0.08px;
  color:rgba(245,249,255,0.96);
}
}


/* If meta row uses .sv-meta-card */
.sv-gi-card .sv-meta-card,
.sv-gi-card .sv-meta-card,
.sv-skill-card .sv-meta-card{
.sv-skill-card .sv-meta-card{
   position:relative; /* for full-pill def hitbox */
   position:relative;
 
   display:flex;
   display:flex;
   align-items:center;
   align-items:center;
  justify-content:center;
   gap:6px;
   gap:6px;
   padding:0;
 
   min-height:34px;
   width:100%;
   justify-content:center;
   min-height:36px;
   border-radius:999px;
   padding:0 8px;
   border:1px solid rgba(59,75,99,0.85);
 
   background:#273449;
   border-radius:14px;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
   border:1px solid var(--sv-ui-line2);
   box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
   background:var(--sv-ui-bg3);
   background-image:none;
   color:var(--sv-ui-text1);
}
}


.sv-gi-card .sv-meta-card:hover,
.sv-gi-card .sv-meta-card:hover,
.sv-skill-card .sv-meta-card:hover{
.sv-skill-card .sv-meta-card:hover{ background:var(--sv-ui-bg3); }
  background:#2e3f59;
}


.sv-gi-card .sv-meta-icon,
.sv-gi-card .sv-meta-icon,
Line 344: Line 292:
   width:20px;
   width:20px;
   height:20px;
   height:20px;
  border-radius:999px;
 
  border:1px solid rgba(75,99,136,0.55);
  background:#0f172a;
   display:flex;
   display:flex;
   align-items:center;
   align-items:center;
   justify-content:center;
   justify-content:center;
   overflow:hidden;
   overflow:hidden;
  border-radius:14px;
  background:var(--sv-ui-bg3);
  background-image:none;
}
}


Line 361: Line 311:
.sv-gi-card .sv-meta-text,
.sv-gi-card .sv-meta-text,
.sv-skill-card .sv-meta-text{
.sv-skill-card .sv-meta-text{
  min-width:0;
  word-wrap:break-word;
  text-align:center;
   font-weight:900;
   font-weight:900;
  color:rgba(245,249,255,0.96);
   font-size:12px;
   font-size:12px;
   line-height:1.02;
   line-height:1.02;
   letter-spacing:0.08px;
   letter-spacing:0.08px;
   min-width:0;
   color:var(--sv-ui-text1);
  word-wrap:break-word;
  text-align:center;
}
}


.sv-gi-card .sv-meta-lines span,
.sv-gi-card .sv-meta-lines span,
.sv-skill-card .sv-meta-lines span{
.sv-skill-card .sv-meta-lines span{ display:block; }
  display:block;
}


/* Visible meta text should look like plain label text (interaction is on pill hitbox) */
.sv-gi-card .sv-meta-text .sv-def,
.sv-gi-card .sv-meta-text .sv-def,
.sv-skill-card .sv-meta-text .sv-def{
.sv-skill-card .sv-meta-text .sv-def{ cursor:default; }
  cursor:default;
}


.sv-gi-card .sv-meta-text .sv-def-text,
.sv-gi-card .sv-meta-text .sv-def-text,
Line 388: Line 334:
}
}


/* Second line (qualifier) smaller + softer */
.sv-gi-card .sv-meta-text .sv-meta-lines span + span,
.sv-gi-card .sv-meta-text .sv-meta-lines span + span,
.sv-skill-card .sv-meta-text .sv-meta-lines span + span{
.sv-skill-card .sv-meta-text .sv-meta-lines span + span{
   margin-top:1px;
   margin-top:1px;
   font-size:10px;
   font-size:10px;
   font-weight:800;
   font-weight:800;
  opacity:0.90;
   letter-spacing:0.12px;
   letter-spacing:0.12px;
  color:var(--sv-ui-text3);
}
}


/* Full-pill Definitions interaction overlay (rendered by Skills.lua) */
.sv-gi-card .sv-meta-hit,
.sv-gi-card .sv-meta-hit,
.sv-skill-card .sv-meta-hit{
.sv-skill-card .sv-meta-hit{
Line 417: Line 362:
}
}


/* ----------------------------------------------------------------------------
/* -------------------------------------------------------------------------- */
  6) REQUIREMENTS / USERS ROW
/* 6) Requirements and users row                                              */
  - Compact, meta-like sizing for the triggers
/* -------------------------------------------------------------------------- */
  - Popup content is styled sitewide (Common.css)
---------------------------------------------------------------------------- */


.sv-gi-card .sv-reqrow,
.sv-gi-card .sv-reqrow,
.sv-skill-card .sv-reqrow{
.sv-skill-card .sv-reqrow{
   display:flex;
   display:flex;
  flex-direction:column;
   justify-content:center;
   justify-content:center;
   gap:8px;
   gap:8px;
  flex-wrap:wrap;
  margin:6px 0 10px;
}
}


.sv-gi-card .sv-disclose,
.sv-gi-card .sv-disclose,
.sv-skill-card .sv-disclose{
.sv-skill-card .sv-disclose{
   flex:0 1 190px;
   min-width:0;
   max-width:205px;
   max-width:none;
  width:100%;
}
}


/* Make disclose buttons match meta pill style (slightly larger) */
.sv-gi-card .sv-reqrow .sv-disclose-btn,
.sv-gi-card .sv-disclose-btn,
.sv-skill-card .sv-reqrow .sv-disclose-btn{
.sv-skill-card .sv-disclose-btn{
  display:flex;
  align-items:center;
  justify-content:space-between;
 
   width:100%;
   width:100%;
   min-height:36px;
   min-height:36px;
   padding:0 12px;
   padding:0 12px;
  border-radius:14px;
  background:var(--sv-ui-bg3);
  background-image:none;
  box-shadow:none;
}


   border-radius:999px;
/* -------------------------------------------------------------------------- */
   border:1px solid rgba(59,75,99,0.85);
/* 7) Level selector wrapper                                                  */
   background:#273449;
/* -------------------------------------------------------------------------- */
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
 
   box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
.sv-skill-level{
   margin:8px 0 10px;
   padding:10px 12px;
 
   display:flex;
   flex-direction:column;
   gap:8px;


   cursor:pointer;
   border-radius:16px;
  background:var(--sv-ui-bg2);
  background-image:none;
  box-shadow:none;
}
}


.sv-gi-card .sv-disclose-btn:hover,
.sv-skill-level:not([data-sv-level-hide-ticks="0"]) .sv-level-ticklabels{ display:none; }
.sv-skill-card .sv-disclose-btn:hover{
 
   background:#2e3f59;
/* -------------------------------------------------------------------------- */
/* 8) Skill scaling                                                            */
/* -------------------------------------------------------------------------- */
 
.sv_skill_scaling{
  margin:8px 0 10px;
  padding:10px 12px 12px;
 
  border-radius:18px;
  background:var(--sv-ui-bg2);
  background-image:none;
   box-shadow:none;
}
}


.sv-gi-card .sv-disclose-label,
.sv_skill_scaling .sv-skill-level,
.sv-skill-card .sv-disclose-label{
.sv_skill_scaling__level{
   font-weight:900;
   margin:0 0 10px;
   font-size:12px;
  padding:0 0 10px;
   letter-spacing:0.08px;
 
   color:rgba(245,249,255,0.96);
  border:0;
  border-radius:0;
   background:transparent;
   box-shadow:none;
   border-bottom:1px solid var(--sv-ui-line1);
}
}


.sv-gi-card .sv-disclose-count,
.sv_skill_scaling__body{
.sv-skill-card .sv-disclose-count{
  display:grid;
   font-weight:900;
  grid-template-columns:minmax(0, 1fr) minmax(0, 252px);
   font-size:12px;
  column-gap:16px;
   color:rgba(182,198,224,0.95);
   row-gap:12px;
   align-items:stretch;
   justify-items:stretch;
}
}


/* ----------------------------------------------------------------------------
.sv_skill_scaling__group{
  7) LEVEL SELECTOR (module-owned)
  width:100%;
---------------------------------------------------------------------------- */
  min-width:0;
  min-height:116px;
  max-height:116px;
  padding:10px 12px;
 
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;


.sv-skill-level{
  margin:8px 0 10px;
  padding:10px 12px;
   border-radius:16px;
   border-radius:16px;
   border:1px solid rgba(59,75,99,0.85);
   background:var(--sv-ui-bg3);
   background:#1f2937;
  background-image:none;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
  box-shadow:none;
   box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}
 
.sv_skill_scaling__group--primary-stats{
  grid-column:1;
  grid-row:1;
}
 
.sv_skill_scaling__group--core{
  grid-column:2;
  grid-row:1;
}
 
.sv_skill_scaling__cluster{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
 
  flex-wrap:wrap;
  width:100%;
  height:100%;
  max-width:100%;
  margin:0 auto;
 
  min-width:0;
}
 
.sv_skill_scaling__column{
  min-width:0;
  padding:0;
  border:0;
  border-radius:0;
   background:transparent;
   background-image:none;
  box-shadow:none;
}
 
.sv_skill_scaling__column--stats,
.sv_skill_scaling__column--core{
  display:flex;
  align-items:center;
  justify-content:center;
}
 
.sv_skill_scaling__column--core{
  width:100%;
   min-width:0;
  min-height:100%;
}
}


.sv-gi-card .sv-level-ui,
.sv_skill_scaling__column--primary{
.sv-skill-card .sv-level-ui{
   display:flex;
   display:flex;
   align-items:baseline;
   flex-direction:column;
   justify-content:center;
   justify-content:center;
   gap:6px;
   align-items:center;
   margin-bottom:8px;
   text-align:center;
}
}


.sv-gi-card .sv-level-label,
.sv_skill_scaling__primary-value{
.sv-skill-card .sv-level-label{
  word-wrap:break-word;
  overflow-wrap:anywhere;
 
   font-weight:900;
   font-weight:900;
   color:rgba(245,249,255,0.94);
  font-size:34px;
  line-height:0.95;
  letter-spacing:-0.50px;
   color:var(--sv-ui-text1);
}
}


.sv-gi-card .sv-level-num,
.sv_skill_scaling__primary-label{
.sv-skill-card .sv-level-num{
  margin-top:6px;
 
   font-weight:900;
   font-weight:900;
   color:rgba(245,249,255,0.98);
  font-size:10px;
  line-height:1.05;
  letter-spacing:0.22px;
  text-transform:uppercase;
   color:var(--sv-ui-text3);
}
}


.sv-gi-card .sv-level-slider,
.sv_skill_scaling__stats-grid{
.sv-skill-card .sv-level-slider{
  display:grid;
   position:relative;
  grid-template-columns:repeat(2, max-content);
  justify-content:center;
  justify-items:center;
  align-content:center;
 
  row-gap:8px;
  column-gap:10px;
  margin:0 auto;
 
   grid-template-areas:
    "str agi"
    "vit int"
    "dex luk";
}
}


.sv-gi-card .sv-level-range,
.sv_skill_scaling__stat-pill--str{ grid-area:str; }
.sv-skill-card .sv-level-range{
.sv_skill_scaling__stat-pill--vit{ grid-area:vit; }
  width:100%;
.sv_skill_scaling__stat-pill--dex{ grid-area:dex; }
  margin:0;
.sv_skill_scaling__stat-pill--agi{ grid-area:agi; }
}
.sv_skill_scaling__stat-pill--int{ grid-area:int; }
.sv_skill_scaling__stat-pill--luk{ grid-area:luk; }


.sv-gi-card .sv-level-range--custom,
.sv_skill_scaling__pill{
.sv-skill-card .sv-level-range--custom{
  display:block;
   position:relative;
   position:relative;
   height:26px;
   min-width:0;
   border-radius:999px;
 
   border:1px solid rgba(75,99,136,0.55);
   border-radius:14px;
   background:#0f172a;
   border:1px solid var(--sv-ui-line2);
   cursor:pointer;
  background:var(--sv-ui-bg3);
   background-image:none;
   box-shadow:none;
}
}


.sv-gi-card .sv-level-track,
.sv_skill_scaling__stat-pill{
.sv-skill-card .sv-level-track{
  position:absolute;
  left:8px;
  right:8px;
  top:50%;
  margin-top:-4px;
  height:8px;
   border-radius:999px;
   border-radius:999px;
   background:#273449;
 
   overflow:hidden;
  width:50px;
  min-width:50px;
  min-height:22px;
  padding:4px 6px;
 
  display:inline-flex;
  align-items:center;
   justify-content:center;
   white-space:nowrap;
}
}


.sv-gi-card .sv-level-fill,
.sv_skill_scaling__stat-main{
.sv-skill-card .sv-level-fill{
   min-width:0;
   display:block;
   display:flex;
   height:100%;
   align-items:center;
   width:0%;
   justify-content:center;
   border-radius:999px;
  background:linear-gradient(90deg, rgba(106,166,255,0.85), rgba(245,249,255,0.22));
}
}


.sv-gi-card .sv-level-thumb,
.sv_skill_scaling__stat-visual{
.sv-skill-card .sv-level-thumb{
   min-width:0;
   position:absolute;
   display:flex;
  left:0%;
   align-items:center;
   top:50%;
   justify-content:center;
   margin-top:-9px;
   gap:6px;
  margin-left:-9px;
  width:18px;
  height:18px;
   border-radius:999px;
  border:2px solid rgba(75,99,136,0.55);
   background:rgba(245,249,255,0.92);
  box-shadow:0 10px 18px rgba(0,0,0,0.35);
}
}


.sv-gi-card .sv-level-ticklabels,
.sv_skill_scaling__stat-label{ display:none; }
.sv-skill-card .sv-level-ticklabels{
 
.sv_skill_scaling__stat-icon{
  width:12px;
  height:12px;
 
   display:flex;
   display:flex;
   justify-content:space-between;
  align-items:center;
   gap:10px;
   justify-content:center;
   margin-top:7px;
}
 
.sv_skill_scaling__stat-icon .sv-img img{
  width:12px;
  height:12px;
  box-shadow:none;
}
 
.sv_skill_scaling__stat-icon .sv-miss{
  width:12px;
  height:12px;
   font-size:9px;
   line-height:1;
}
 
.sv_skill_scaling__stat-value{
   font-weight:900;
   font-weight:900;
   font-size:12px;
   font-size:12px;
   color:rgba(182,198,224,0.95);
   line-height:1;
   line-height:1.1;
   letter-spacing:-0.10px;
   min-height:12px;
   color:var(--sv-ui-text1);
}
}


/* ----------------------------------------------------------------------------
.sv_skill_scaling__stat-hit,
  8) SCALING TOP
.sv_skill_scaling__core-hit{
---------------------------------------------------------------------------- */
  position:absolute;
 
  top:0;
.sv-skill-scaling{
  right:0;
   margin:10px 0 10px;
  bottom:0;
  left:0;
  z-index:5;
   opacity:0;
}
}


.sv-gi-card .sv-scaling-row,
.sv_skill_scaling__stat-hit .sv-def,
.sv-skill-card .sv-scaling-row{
.sv_skill_scaling__core-hit .sv-def{
   padding:10px 12px;
   display:block;
  border-radius:16px;
   width:100%;
  border:1px solid rgba(59,75,99,0.85);
   height:100%;
  background:#1f2937;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
   box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}
}


.sv-gi-card .sv-scaling-grid,
.sv_skill_scaling__stat-pill.is-inactive{
.sv-skill-card .sv-scaling-grid{
  background:var(--sv-ui-bg1);
  display:grid;
   background-image:none;
   grid-template-columns:1fr 1fr;
   box-shadow:none;
  gap:10px;
   align-items:start;
}
}


.sv-gi-card .sv-scaling-col--scaling,
.sv_skill_scaling__stat-pill.is-inactive .sv_skill_scaling__stat-icon,
.sv-skill-card .sv-scaling-col--scaling{
.sv_skill_scaling__stat-pill.is-inactive .sv_skill_scaling__stat-value{ display:none; }
  grid-column:1 / -1;
}


.sv-gi-card .sv-scaling-value,
.sv_skill_scaling__stat-pill.is-inactive::before{
.sv-skill-card .sv-scaling-value{
  content:"—";
   font-weight:900;
   font-weight:900;
   font-size:18px;
   font-size:12px;
   line-height:1.10;
   line-height:1;
   color:rgba(245,249,255,0.98);
   color:var(--sv-ui-text3);
  word-wrap:break-word;
}
}


.sv-gi-card .sv-scaling-label,
.sv_skill_scaling__stat-pill--str.is-active{
.sv-skill-card .sv-scaling-label{
   border-color:rgba(145,63,82,0.96);
   margin-top:3px;
   background:#32131d;
  font-size:12px;
   background-image:none;
  font-weight:900;
  letter-spacing:0.25px;
   text-transform:uppercase;
   color:rgba(182,198,224,0.95);
}
}
.sv_skill_scaling__stat-pill--str.is-active .sv_skill_scaling__stat-value{ color:#ffdce5; }


.sv-gi-card .sv-scaling-list,
.sv_skill_scaling__stat-pill--vit.is-active{
.sv-skill-card .sv-scaling-list{
   border-color:rgba(158,112,22,0.96);
   display:grid;
   background:#352609;
   gap:6px;
   background-image:none;
   margin-top:2px;
}
}
.sv_skill_scaling__stat-pill--vit.is-active .sv_skill_scaling__stat-value{ color:#ffefc9; }


.sv-gi-card .sv-scaling-item,
.sv_skill_scaling__stat-pill--dex.is-active{
.sv-skill-card .sv-scaling-item{
   border-color:rgba(118,146,24,0.96);
  padding:8px 10px;
   background:#243208;
   border-radius:14px;
   background-image:none;
  border:1px solid rgba(59,75,99,0.85);
   background:#273449;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
  color:rgba(215,226,244,0.92);
  font-weight:800;
  font-size:13px;
}
}
.sv_skill_scaling__stat-pill--dex.is-active .sv_skill_scaling__stat-value{ color:#edf8cc; }


/* ----------------------------------------------------------------------------
.sv_skill_scaling__stat-pill--agi.is-active{
  9) CORE STATS GRID
  border-color:rgba(125,62,152,0.96);
---------------------------------------------------------------------------- */
  background:#2b1438;
  background-image:none;
}
.sv_skill_scaling__stat-pill--agi.is-active .sv_skill_scaling__stat-value{ color:#f0dcff; }


.sv-skill-core{
.sv_skill_scaling__stat-pill--int.is-active{
   margin:10px 0 10px;
   border-color:rgba(45,118,191,0.96);
  background:#11263d;
  background-image:none;
}
}
.sv_skill_scaling__stat-pill--int.is-active .sv_skill_scaling__stat-value{ color:#d8eeff; }


.sv-gi-card .sv-core-row,
.sv_skill_scaling__stat-pill--luk.is-active{
.sv-skill-card .sv-core-row{
   border-color:rgba(183,150,22,0.96);
  padding:10px 12px;
   background:#3a2f07;
   border-radius:16px;
   background-image:none;
  border:1px solid rgba(59,75,99,0.85);
   background:#1f2937;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}
}
.sv_skill_scaling__stat-pill--luk.is-active .sv_skill_scaling__stat-value{ color:#fff2ba; }


.sv-gi-card .sv-core-grid,
.sv_skill_scaling__core-grid{
.sv-skill-card .sv-core-grid{
   display:grid;
   display:grid;
   grid-template-columns:repeat(3, minmax(0, 1fr));
   grid-template-columns:repeat(3, minmax(0, 1fr));
   gap:10px;
   gap:8px;
  justify-items:center;
  justify-content:center;
  align-content:center;
  width:100%;
  max-width:228px;
  margin:0 auto;
}
}


.sv-gi-card .sv-core-cell,
.sv_skill_scaling__core-pill{
.sv-skill-card .sv-core-cell{
  padding:10px 10px 9px;
   border-radius:14px;
   border-radius:14px;
   border:1px solid rgba(59,75,99,0.85);
   min-height:25px;
   background:#273449;
  min-width:70px;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
  padding:8px 6px;
   box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
 
   min-width:0;
  display:flex;
  flex-direction:column;
   justify-content:center;
   align-items:center;
  text-align:center;
}
 
.sv_skill_scaling__core-pill.is-active{
   background:var(--sv-ui-bg3);
   background-image:none;
}
}


.sv-gi-card .sv-core-top,
.sv_skill_scaling__core-main{
.sv-skill-card .sv-core-top{
  min-width:0;
   display:flex;
   display:flex;
   align-items:baseline;
   align-items:baseline;
   gap:6px;
   justify-content:center;
   min-width:0;
   flex-wrap:wrap;
  gap:4px;
}
}


.sv-gi-card .sv-core-num,
.sv_skill_scaling__core-value{
.sv-skill-card .sv-core-num{
  font-weight:900;
  font-size:17px;
  line-height:1.10;
  color:rgba(245,249,255,0.98);
   min-width:0;
   min-width:0;
   word-wrap:break-word;
   word-wrap:break-word;
  font-weight:900;
  font-size:14px;
  line-height:1.02;
  color:var(--sv-ui-text1);
}
}


.sv-gi-card .sv-core-unit,
.sv_skill_scaling__core-unit{
.sv-skill-card .sv-core-unit{
   font-weight:900;
   font-weight:900;
   font-size:12px;
   font-size:10px;
   color:rgba(182,198,224,0.95);
  line-height:1.05;
   color:var(--sv-ui-text3);
}
}


.sv-gi-card .sv-core-label,
.sv_skill_scaling__core-label{
.sv-skill-card .sv-core-label{
   margin-top:5px;
   margin-top:6px;
 
  font-size:12px;
   font-weight:900;
   font-weight:900;
   letter-spacing:0.25px;
  font-size:10px;
  line-height:1.10;
   letter-spacing:0.14px;
   text-transform:uppercase;
   text-transform:uppercase;
   color:rgba(182,198,224,0.95);
   color:var(--sv-ui-text3);
}
 
.sv_skill_scaling__core-pill.is-inactive{
  background:var(--sv-ui-bg1);
}
}


.sv-gi-card .sv-core-label--tight,
.sv_skill_scaling__core-pill.is-inactive .sv_skill_scaling__core-value,
.sv-skill-card .sv-core-label--tight{
.sv_skill_scaling__core-pill.is-inactive .sv_skill_scaling__core-unit,
   letter-spacing:0.12px;
.sv_skill_scaling__core-pill.is-inactive .sv_skill_scaling__core-label{
   color:var(--sv-ui-text3);
}
}


/* ----------------------------------------------------------------------------
/* -------------------------------------------------------------------------- */
  10) TABS + PANELS (tabs component is global; content layouts are module-owned)
/* 9) Tab panels and content                                                   */
---------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */


.sv-skill-tabs{
.sv-skill-tabs{
Line 739: Line 801:
}
}


/* Mechanics grid (tabpanel content) */
.sv-skill-tabs .sv-tabs-panels{
.sv-gi-card .sv-kw-grid,
  margin-top:10px;
.sv-skill-card .sv-kw-grid{
}
 
.sv-skill-tabs .sv-tabpanel{
  min-width:0;
  background-image:none;
  box-shadow:none;
}
 
.sv-skill-tabs .sv-tab-empty{
  padding:14px 12px;
  text-align:center;
 
  border-radius:14px;
  background:var(--sv-ui-bg2);
 
  font-weight:900;
  font-size:13px;
  color:var(--sv-ui-text3);
}
 
.sv-skill-tabs .sv-tab-section + .sv-tab-section{
  margin-top:12px;
}
 
.sv-skill-tabs .sv-tab-section-title{
  width:100%;
  margin:0 0 8px;
  text-align:center;
 
  font-weight:900;
  font-size:11px;
  line-height:1.05;
  letter-spacing:0.22px;
  text-transform:uppercase;
  color:var(--sv-ui-text3);
}
 
/* -------------------------------------------------------------------------- */
/* 10) Mechanics tab                                                          */
/* -------------------------------------------------------------------------- */
/* Mechanics stays two-column through sm / md / lg. It only collapses into a  */
/* single-column stack in the default viewpoint (<640px).                      */
 
.sv-skill-tabs .sv-mech-panel{
   display:grid;
   display:grid;
   grid-template-columns:repeat(2, minmax(0, 1fr));
   grid-template-columns:repeat(2, minmax(0, 1fr));
   gap:10px;
   column-gap:14px;
  row-gap:12px;
  align-items:start;
}
 
.sv-skill-tabs .sv-mech-panel__group{
  min-width:0;
  max-width:100%;
  min-height:0;
  padding:10px 12px 12px;
 
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  align-self:start;
 
  border:0;
  border-radius:16px;
  background:var(--sv-ui-bg2);
  background-image:none;
  box-shadow:none;
}
 
.sv-skill-tabs .sv-mech-panel__mods,
.sv-skill-tabs .sv-mech-panel__keywords{
  grid-column:auto;
  margin-top:0;
  min-height:0;
}
 
.sv-skill-tabs .sv-mech-panel__mods{
  overflow:visible;
}
 
.sv-skill-tabs .sv-mech-panel__keywords{
  justify-content:flex-start;
}
 
.sv-skill-tabs .sv-mech-panel .sv-tab-section-title{
  margin:0 0 8px;
  text-align:center;
}
 
/* Modifiers --------------------------------------------------------------- */
 
.sv-skill-tabs .sv-mech-mod-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px;
  align-content:start;
  justify-items:stretch;
}
}


.sv-gi-card .sv-kw-cell,
.sv-skill-tabs .sv-mech-mod-pill{
.sv-skill-card .sv-kw-cell{
  position:relative;
   padding:10px 10px 9px;
  min-width:0;
  width:100%;
  min-height:56px;
  padding:6px 8px;
 
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
   text-align:center;
 
   border-radius:14px;
   border-radius:14px;
   border:1px solid rgba(59,75,99,0.85);
   border:1px solid var(--sv-ui-line2);
   background:#273449;
   background:var(--sv-ui-bg3);
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
   background-image:none;
   box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
   box-shadow:none;
}
}


.sv-gi-card .sv-kw-label,
.sv-skill-tabs .sv-mech-mod-pill__label{
.sv-skill-card .sv-kw-label{
  min-width:0;
   font-size:12px;
  word-wrap:break-word;
   overflow-wrap:anywhere;
 
   font-weight:900;
   font-weight:900;
   letter-spacing:0.25px;
  font-size:10px;
  line-height:1.02;
   letter-spacing:0.10px;
   text-transform:uppercase;
   text-transform:uppercase;
   color:rgba(182,198,224,0.95);
   color:var(--sv-ui-text3);
}
}


.sv-gi-card .sv-kw-value,
.sv-skill-tabs .sv-mech-mod-pill__value{
.sv-skill-card .sv-kw-value{
   margin-top:3px;
   margin-top:6px;
  min-width:0;
   font-size:15px;
   word-wrap:break-word;
  overflow-wrap:anywhere;
 
   font-weight:900;
   font-weight:900;
   color:rgba(245,249,255,0.96);
  font-size:12px;
  line-height:1.02;
   color:var(--sv-ui-text1);
}
 
.sv-skill-tabs .sv-mech-mod-pill__hit{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  z-index:5;
  opacity:0;
}
 
.sv-skill-tabs .sv-mech-mod-pill__hit .sv-def{
  display:block;
  width:100%;
  height:100%;
}
 
/* Keywords ---------------------------------------------------------------- */
 
.sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  align-content:start;
  justify-items:stretch;
  margin:0;
}
 
.sv-skill-tabs .sv-mech-keyword-pill{
  position:relative;
  min-width:0;
  width:100%;
  min-height:56px;
  padding:6px 10px;
 
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
 
  border-radius:16px;
  border:1px solid var(--sv-ui-line2);
  background:var(--sv-ui-bg3);
  background-image:none;
  box-shadow:none;
}
 
.sv-skill-tabs .sv-mech-keyword-pill__label{
  display:block;
  min-width:0;
  width:100%;
   word-wrap:break-word;
   word-wrap:break-word;
  overflow-wrap:anywhere;
  font-weight:900;
  font-size:12px;
  line-height:1.08;
  color:var(--sv-ui-text1);
  text-align:center;
}
.sv-skill-tabs .sv-mech-keyword-pill__hit{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  z-index:5;
  opacity:0;
}
.sv-skill-tabs .sv-mech-keyword-pill__hit .sv-def{
  display:block;
  width:100%;
  height:100%;
}
}


/* Keyword pills panel */
/* Larger keyword mode. */
.sv-gi-card .sv-tab-pills,
.sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills.sv-tab-pills--xl .sv-mech-keyword-pill,
.sv-skill-card .sv-tab-pills{
.sv-skill-tabs .sv-mech-keyword-pill.sv-pill--xl{
   display:flex;
   min-height:60px;
   flex-wrap:wrap;
  padding:8px 12px;
   gap:8px;
  border-radius:999px;
}
 
.sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills.sv-tab-pills--xl .sv-mech-keyword-pill__label,
.sv-skill-tabs .sv-mech-keyword-pill.sv-pill--xl .sv-mech-keyword-pill__label{
   font-size:13px;
   line-height:1.12;
}
}


/* ----------------------------------------------------------------------------
/* -------------------------------------------------------------------------- */
  11) EFFECT / EVENT CARDS
/* 11) Effect cards                                                            */
---------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */


.sv-gi-card .sv-ref-grid,
.sv-gi-card .sv-ref-grid,
Line 796: Line 1,051:
.sv-gi-card .sv-ref-card,
.sv-gi-card .sv-ref-card,
.sv-skill-card .sv-ref-card{
.sv-skill-card .sv-ref-card{
  min-width:0;
   display:flex;
   display:flex;
  align-items:flex-start;
   gap:10px;
   gap:10px;
  align-items:flex-start;
   padding:10px 10px;
   padding:10px 10px;
   border-radius:16px;
   border-radius:16px;
   border:1px solid rgba(59,75,99,0.85);
   background:var(--sv-ui-bg2);
  background:#1f2937;
   background-image:none;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
   box-shadow:none;
   box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
 
   color:rgba(245,249,255,0.94);
   color:var(--sv-ui-text2);
  min-width:0;
}
}


Line 814: Line 1,070:
   width:52px;
   width:52px;
   height:52px;
   height:52px;
  border-radius:16px;
 
  border:1px solid rgba(75,99,136,0.55);
  background:#273449;
   display:flex;
   display:flex;
   align-items:center;
   align-items:center;
   justify-content:center;
   justify-content:center;
   overflow:hidden;
   overflow:hidden;
  border-radius:16px;
}
}


Line 831: Line 1,087:
.sv-gi-card .sv-ref-title,
.sv-gi-card .sv-ref-title,
.sv-skill-card .sv-ref-title{
.sv-skill-card .sv-ref-title{
  word-wrap:break-word;
   font-weight:900;
   font-weight:900;
   font-size:15px;
   font-size:15px;
   line-height:1.15;
   line-height:1.15;
   color:rgba(245,249,255,0.98);
   color:var(--sv-ui-text1);
  word-wrap:break-word;
}
}


Line 841: Line 1,098:
.sv-skill-card .sv-ref-stats{
.sv-skill-card .sv-ref-stats{
   display:flex;
   display:flex;
  flex-wrap:wrap;
   gap:8px;
   gap:8px;
   margin-top:8px;
   margin-top:8px;
  flex-wrap:wrap;
}
}


.sv-gi-card .sv-ref-stat,
.sv-gi-card .sv-ref-stat,
.sv-skill-card .sv-ref-stat{
.sv-skill-card .sv-ref-stat{
  display:inline-flex;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(59,75,99,0.85);
  background:#273449;
  background-image:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.00));
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
   font-weight:900;
   font-weight:900;
   font-size:12px;
   font-size:12px;
   color:rgba(215,226,244,0.92);
   color:var(--sv-ui-text1);
}
}


Line 866: Line 1,115:
   font-weight:900;
   font-weight:900;
   font-size:13px;
   font-size:13px;
   color:rgba(182,198,224,0.95);
   color:var(--sv-ui-text3);
}
}


/* ----------------------------------------------------------------------------
/* -------------------------------------------------------------------------- */
  12) THEME OVERRIDES (Citizen only)
/* 12) Responsive                                                              */
---------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- */
 
@media (max-width:1023px){
  .sv-gi-card,
  .sv-skill-card{
    margin:14px 10px;
    border-radius:20px;
  }
 
  .sv-gi-top,
  .sv-skill-top{ padding:12px 16px 4px; }
 
  .sv-gi-bottom,
  .sv-skill-bottom{ padding:10px 16px 12px; }
 
  .sv-skill-title{ font-size:20px; }
 
  .sv_skill_scaling__body{
    grid-template-columns:minmax(0, 1fr) minmax(0, 236px);
  }
 
  .sv_skill_scaling__primary-value{ font-size:32px; }
 
  .sv_skill_scaling__core-pill{
    min-height:25px;
    min-width:70px;
  }
 
  .sv_skill_scaling__core-value{ font-size:13px; }
  .sv_skill_scaling__core-label{ font-size:9px; }
 
  .sv-gi-card .sv-ref-grid,
  .sv-skill-card .sv-ref-grid{ grid-template-columns:1fr; }
 
  .sv-skill-tabs .sv-mech-panel{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    column-gap:12px;
    row-gap:12px;
    align-items:start;
  }
 
  .sv-skill-tabs .sv-mech-panel__group{
    min-height:0;
    max-height:none;
    padding:9px 10px 10px;
    align-self:start;
  }
 
  .sv-skill-tabs .sv-mech-mod-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:8px;
  }


:root.skin-theme-clientpref-day .sv-gi-card,
  .sv-skill-tabs .sv-mech-mod-pill{
:root.skin-theme-clientpref-day .sv-skill-card{
    min-height:48px;
  border-color:#9fc4ff;
     padding:6px 8px;
  background-color:#dbeaff;
   }
  background-image:
    radial-gradient(900px 360px at 40% -10%, rgba(11,99,240,0.14), rgba(0,0,0,0) 60%),
     linear-gradient(180deg, rgba(255,255,255,0.70), rgba(255,255,255,0.20)),
    linear-gradient(180deg, #cfe3ff, #f3f8ff);
  box-shadow:0 16px 38px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.85);
   color:#1f3556;
}


:root.skin-theme-clientpref-day .sv-gi-card a,
  .sv-skill-tabs .sv-mech-mod-pill__label{
:root.skin-theme-clientpref-day .sv-skill-card a{
    font-size:10px;
   color:#0b63f0;
    line-height:1.03;
}
   }


:root.skin-theme-clientpref-day .sv-skill-title{
  .sv-skill-tabs .sv-mech-mod-pill__value{ font-size:12px; }
  color:#0b1a33;
}


:root.skin-theme-clientpref-day .sv-skill-desc{
  .sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills{
  color:#1f3556;
    gap:8px;
}
  }


/* Light surfaces */
  .sv-skill-tabs .sv-mech-keyword-pill{
:root.skin-theme-clientpref-day .sv-skill-icon,
    min-height:44px;
:root.skin-theme-clientpref-day .sv-gi-card .sv-meta-card,
    padding:7px 9px;
:root.skin-theme-clientpref-day .sv-skill-card .sv-meta-card,
   }
:root.skin-theme-clientpref-day .sv-skill-level,
:root.skin-theme-clientpref-day .sv-gi-card .sv-scaling-row,
:root.skin-theme-clientpref-day .sv-skill-card .sv-scaling-row,
:root.skin-theme-clientpref-day .sv-gi-card .sv-core-row,
:root.skin-theme-clientpref-day .sv-skill-card .sv-core-row,
:root.skin-theme-clientpref-day .sv-gi-card .sv-ref-card,
:root.skin-theme-clientpref-day .sv-skill-card .sv-ref-card,
:root.skin-theme-clientpref-day .sv-gi-card .sv-tabpanel,
:root.skin-theme-clientpref-day .sv-skill-card .sv-tabpanel{
  border-color:#bdd7ff;
  background-color:#e8f2ff;
   background-image:linear-gradient(180deg, rgba(255,255,255,0.65), rgba(255,255,255,0.15));
  color:#1f3556;
}


:root.skin-theme-clientpref-day .sv-skill-card .sv-skill-meta .sv-pill,
  .sv-skill-tabs .sv-mech-keyword-pill__label{
:root.skin-theme-clientpref-day .sv-gi-card .sv-skill-meta .sv-pill{
    font-size:12px;
  border-color:#bdd7ff;
    line-height:1.10;
  background:#f3f8ff;
   }
   color:#0b1a33;
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-core-cell,
  .sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills.sv-tab-pills--xl .sv-mech-keyword-pill,
:root.skin-theme-clientpref-day .sv-skill-card .sv-core-cell,
  .sv-skill-tabs .sv-mech-keyword-pill.sv-pill--xl{
:root.skin-theme-clientpref-day .sv-gi-card .sv-kw-cell,
    min-height:48px;
:root.skin-theme-clientpref-day .sv-skill-card .sv-kw-cell,
    padding:9px 10px;
:root.skin-theme-clientpref-day .sv-gi-card .sv-scaling-item,
   }
:root.skin-theme-clientpref-day .sv-skill-card .sv-scaling-item,
:root.skin-theme-clientpref-day .sv-gi-card .sv-ref-stat,
:root.skin-theme-clientpref-day .sv-skill-card .sv-ref-stat{
  border-color:#bdd7ff;
  background:#f3f8ff;
   color:#1f3556;
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-core-num,
  .sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills.sv-tab-pills--xl .sv-mech-keyword-pill__label,
:root.skin-theme-clientpref-day .sv-skill-card .sv-core-num,
  .sv-skill-tabs .sv-mech-keyword-pill.sv-pill--xl .sv-mech-keyword-pill__label{
:root.skin-theme-clientpref-day .sv-gi-card .sv-scaling-value,
    font-size:13px;
:root.skin-theme-clientpref-day .sv-skill-card .sv-scaling-value,
   }
:root.skin-theme-clientpref-day .sv-gi-card .sv-kw-value,
:root.skin-theme-clientpref-day .sv-skill-card .sv-kw-value,
:root.skin-theme-clientpref-day .sv-gi-card .sv-ref-title,
:root.skin-theme-clientpref-day .sv-skill-card .sv-ref-title,
:root.skin-theme-clientpref-day .sv-gi-card .sv-meta-text,
:root.skin-theme-clientpref-day .sv-skill-card .sv-meta-text{
   color:#0b1a33;
}
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-core-label,
@media (max-width:767px){
:root.skin-theme-clientpref-day .sv-skill-card .sv-core-label,
  .sv-skill-meta-block{
:root.skin-theme-clientpref-day .sv-gi-card .sv-scaling-label,
    grid-template-columns:minmax(0, 1fr);
:root.skin-theme-clientpref-day .sv-skill-card .sv-scaling-label,
   }
:root.skin-theme-clientpref-day .sv-gi-card .sv-kw-label,
:root.skin-theme-clientpref-day .sv-skill-card .sv-kw-label,
:root.skin-theme-clientpref-day .sv-gi-card .sv-ref-sub,
:root.skin-theme-clientpref-day .sv-skill-card .sv-ref-sub{
   color:#456083;
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-level-range--custom,
  .sv-skill-meta-block__bubble{
:root.skin-theme-clientpref-day .sv-skill-card .sv-level-range--custom{
    min-height:auto;
  border-color:#bdd7ff;
    max-height:none;
  background:#e8f2ff;
  }
}
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-level-track,
@media (max-width:639px){
:root.skin-theme-clientpref-day .sv-skill-card .sv-level-track{
  .sv-skill-head{ gap:10px; }
  background:#cfe3ff;
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-level-fill,
  .sv-skill-icon{
:root.skin-theme-clientpref-day .sv-skill-card .sv-level-fill{
    width:56px;
  background:#0b63f0;
    height:56px;
}
    border-radius:14px;
  }


:root.skin-theme-clientpref-day .sv-gi-card .sv-level-thumb,
  .sv-skill-title{ font-size:19px; }
:root.skin-theme-clientpref-day .sv-skill-card .sv-level-thumb{
  border-color:#9fc4ff;
  background:#0b1a33;
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-level-ticklabels,
  .sv-skill-desc{
:root.skin-theme-clientpref-day .sv-skill-card .sv-level-ticklabels{
    font-size:14px;
   color:#456083;
    line-height:1.40;
}
   }


:root.skin-theme-clientpref-day .sv-gi-card .sv-tip-btn,
  .sv_skill_scaling{ padding:9px 10px 10px; }
:root.skin-theme-clientpref-day .sv-skill-card .sv-tip-btn{
  border-color:#bdd7ff;
  background:#cfe3ff;
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-ico,
  .sv_skill_scaling .sv-skill-level,
:root.skin-theme-clientpref-day .sv-skill-card .sv-ico{
  .sv_skill_scaling__level{ padding:0 0 9px; }
  border-color:#bdd7ff;
  background:#e8f2ff;
  color:#0b1a33;
}


:root.skin-theme-clientpref-day .sv-gi-card .sv-tab:focus,
  .sv_skill_scaling__body{
:root.skin-theme-clientpref-day .sv-skill-card .sv-tab:focus,
    grid-template-columns:1fr;
:root.skin-theme-clientpref-day .sv-gi-card .sv-disclose-btn:focus,
    row-gap:12px;
:root.skin-theme-clientpref-day .sv-skill-card .sv-disclose-btn:focus,
   }
:root.skin-theme-clientpref-day .sv-gi-card .sv-tip-btn:focus,
:root.skin-theme-clientpref-day .sv-skill-card .sv-tip-btn:focus,
:root.skin-theme-clientpref-day .sv-gi-card .sv-level-range--custom:focus,
:root.skin-theme-clientpref-day .sv-skill-card .sv-level-range--custom:focus{
   outline-color:#0b63f0;
}


/* Citizen OS: follow system */
   .sv_skill_scaling__group{
@media (prefers-color-scheme: light){
     min-height:auto;
   :root.skin-theme-clientpref-os .sv-gi-card,
     max-height:none;
  :root.skin-theme-clientpref-os .sv-skill-card{
     padding:10px 11px;
     border-color:#9fc4ff;
    background-color:#dbeaff;
     background-image:
      radial-gradient(900px 360px at 40% -10%, rgba(11,99,240,0.14), rgba(0,0,0,0) 60%),
      linear-gradient(180deg, rgba(255,255,255,0.70), rgba(255,255,255,0.20)),
      linear-gradient(180deg, #cfe3ff, #f3f8ff);
    box-shadow:0 16px 38px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.85);
     color:#1f3556;
   }
   }
  :root.skin-theme-clientpref-os .sv-gi-card a,
  :root.skin-theme-clientpref-os .sv-skill-card a{ color:#0b63f0; }
}


@media (prefers-color-scheme: dark){
   .sv_skill_scaling__group--core{
   :root.skin-theme-clientpref-os .sv-gi-card,
     grid-column:1;
  :root.skin-theme-clientpref-os .sv-skill-card{
     grid-row:2;
     border-color:rgba(75,99,136,0.55);
     background-color:#0f172a;
    background-image:
      radial-gradient(900px 360px at 40% -10%, rgba(106,166,255,0.18), rgba(0,0,0,0) 60%),
      linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02)),
      linear-gradient(180deg, #0f172a, #0b1324);
    color:rgba(245,249,255,0.94);
   }
   }
  :root.skin-theme-clientpref-os .sv-gi-card a,
  :root.skin-theme-clientpref-os .sv-skill-card a{ color:rgba(106,166,255,0.95); }
}


/* ----------------------------------------------------------------------------
  .sv_skill_scaling__cluster{ height:auto; }
  13) RESPONSIVE (layout tightening)
 
---------------------------------------------------------------------------- */
  .sv_skill_scaling__primary-value{ font-size:32px; }


@media (max-width:720px){
   .sv_skill_scaling__primary-label{
  .sv-gi-card,
     font-size:11px;
   .sv-skill-card{
     line-height:1.08;
     margin:14px 10px;
     border-radius:20px;
   }
   }


   .sv-gi-top,
   .sv_skill_scaling__core-grid{
  .sv-skill-top{
    grid-template-columns:repeat(2, minmax(0, 1fr));
     padding:12px 16px 4px;
    width:100%;
     align-items:stretch;
   }
   }


   .sv-gi-bottom,
   .sv_skill_scaling__core-pill{
  .sv-skill-bottom{
    width:100%;
     padding:10px 16px 12px;
    min-width:0;
    min-height:30px;
    padding:8px 7px;
    justify-self:stretch;
    justify-content:center;
    align-items:center;
     text-align:center;
   }
   }


   .sv-skill-title{ font-size:20px; }
   .sv_skill_scaling__core-value{ font-size:14px; }
  .sv_skill_scaling__core-unit{ font-size:11px; }
  .sv_skill_scaling__core-label{ font-size:10px; }


   .sv-skill-meta{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
   .sv_skill_scaling__core-value,
  .sv_skill_scaling__core-unit,
  .sv_skill_scaling__core-label{
    width:100%;
    text-align:center;
  }


   .sv-gi-card .sv-core-grid,
   .sv-skill-tabs .sv-tab-section-title{
  .sv-skill-card .sv-core-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
    margin:0 0 9px;
    font-size:12px;
    line-height:1.08;
  }


   .sv-gi-card .sv-ref-grid,
   .sv-skill-tabs .sv-mech-panel{
   .sv-skill-card .sv-ref-grid{ grid-template-columns:1fr; }
    grid-template-columns:1fr;
    row-gap:12px;
  }
 
  .sv-skill-tabs .sv-mech-panel__mods,
   .sv-skill-tabs .sv-mech-panel__keywords{ grid-column:1; }


  .sv-gi-card .sv-tip-pop,
   .sv-skill-tabs .sv-mech-panel__group{
   .sv-skill-card .sv-tip-pop{
     min-height:auto;
     right:0;
     max-height:none;
    left:auto;
     padding:10px 11px 11px;
     width:92vw;
     max-width:520px;
   }
   }
}


@media (max-width:520px){
   .sv-skill-tabs .sv-mech-mod-grid{
   .sv-skill-head{ gap:10px; }
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:9px;
  }


   .sv-skill-icon{
   .sv-skill-tabs .sv-mech-mod-pill{
     width:56px;
     min-height:50px;
     height:56px;
     padding:8px 8px 7px;
     border-radius:14px;
     border-radius:14px;
   }
   }


   .sv-skill-title{ font-size:18px; }
   .sv-skill-tabs .sv-mech-mod-pill__label{
  .sv-skill-desc{ font-size:13px; }
    font-size:10px;
    line-height:1.06;
  }


   .sv-gi-card .sv-scaling-grid,
   .sv-skill-tabs .sv-mech-mod-pill__value{
  .sv-skill-card .sv-scaling-grid{ grid-template-columns:1fr; }
    margin-top:4px;
    font-size:14px;
    line-height:1.05;
  }


   .sv-gi-card .sv-kw-grid,
   .sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills{ gap:8px; }
  .sv-skill-card .sv-kw-grid{ grid-template-columns:1fr; }


  /* Requirements/Users strict edge padding */
   .sv-skill-tabs .sv-mech-keyword-pill{
   .sv-gi-card .sv-reqrow,
     min-height:40px;
  .sv-skill-card .sv-reqrow{
     padding:8px 10px;
     padding-left:16px;
    border-radius:14px;
     padding-right:16px;
   }
   }


   .sv-gi-card .sv-disclose,
   .sv-skill-tabs .sv-mech-keyword-pill__label{
   .sv-skill-card .sv-disclose{
    font-size:13px;
     flex:1 1 170px;
    line-height:1.12;
     max-width:190px;
  }
 
  .sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills.sv-tab-pills--xl .sv-mech-keyword-pill,
   .sv-skill-tabs .sv-mech-keyword-pill.sv-pill--xl{
     min-height:46px;
    padding:10px 12px;
    border-radius:14px;
  }
 
  .sv-skill-tabs .sv-mech-panel__keywords .sv-tab-pills.sv-tab-pills--xl .sv-mech-keyword-pill__label,
  .sv-skill-tabs .sv-mech-keyword-pill.sv-pill--xl .sv-mech-keyword-pill__label{
     font-size:14px;
   }
   }


  /* META ROW (mobile-tight) */
   .sv-skill-card .sv-skill-meta,
   .sv-skill-card .sv-skill-meta,
   .sv-gi-card .sv-skill-meta{
   .sv-gi-card .sv-skill-meta{
     grid-template-columns:repeat(2, minmax(0, 1fr));
     gap:8px;
     gap:6px;
     width:100%;
     max-width:200px;
     max-width:none;
     margin-left:auto;
     margin-left:auto;
     margin-right:auto;
     margin-right:auto;
     justify-content:center;
     justify-content:center;
    align-items:stretch;
   }
   }


   .sv-skill-card .sv-meta-card,
   .sv-skill-card .sv-meta-card,
   .sv-gi-card .sv-meta-card{
   .sv-gi-card .sv-meta-card{
     min-height:32px;
    flex:1 1 calc(50% - 4px);
     gap:7px;
    min-width:0;
     min-height:36px;
     gap:8px;
    padding:7px 9px;
    justify-content:center;
    align-items:center;
    text-align:center;
   }
   }


Line 1,140: Line 1,394:
   .sv-skill-card .sv-meta-text,
   .sv-skill-card .sv-meta-text,
   .sv-gi-card .sv-meta-text{
   .sv-gi-card .sv-meta-text{
     font-size:10px;
    flex:1 1 auto;
     line-height:1.05;
    min-width:0;
     font-size:11px;
     line-height:1.08;
     letter-spacing:0;
     letter-spacing:0;
    text-align:center;
   }
   }


   .sv-skill-card .sv-meta-text .sv-meta-lines span + span,
   .sv-skill-card .sv-meta-text .sv-meta-lines span + span,
   .sv-gi-card .sv-meta-text .sv-meta-lines span + span{
   .sv-gi-card .sv-meta-text .sv-meta-lines span + span{
    font-size:9px;
     margin-top:1px;
     margin-top:1px;
    font-size:10px;
   }
   }


   /* If meta row ever renders the global .sv-pill variant */
   .sv-skill-level{ padding:10px 11px; }
  .sv-skill-card .sv-skill-meta .sv-pill,
  .sv-gi-card .sv-skill-meta .sv-pill{
    min-height:24px;
    font-size:10px;
    line-height:1.05;
    letter-spacing:0;
    gap:5px;
  }
}


@media (max-width:360px){
   /* Absorbed former micro-phone layout compaction into the default viewpoint. */
  .sv-gi-card .sv-disclose,
   .sv-skill-card .sv-disclose{
    flex:1 1 100%;
    max-width:100%;
  }
}
}