/* StudySpire v3.90. Clean home dashboard; old tools and custom themes remain available. */
body.ss-brand-ready {
  --ss-home-blue:#4b8efe;
  --ss-home-violet:#9b87ef;
  --ss-home-border:#293b57;
  background:radial-gradient(circle at 65% -17%,rgba(53,105,201,.16),transparent 38%),#0a1424;
  color:#edf4ff;
}
body.ss-brand-ready .sidebar{
  background:linear-gradient(180deg,#101f35,#0d192c 80%);
  border-color:#29405c;
  box-shadow:none;
}
body.ss-brand-ready .brand .logo{
  flex-shrink:0;display:grid;place-items:center;width:49px;height:53px;
  background:transparent!important;border:0!important;border-radius:0;box-shadow:none!important;
}
body.ss-brand-ready .brand .logo img{width:100%!important;height:100%!important;max-width:none!important;object-fit:contain;border-radius:0!important}
body.ss-brand-ready .brandname{font-size:18px;font-weight:850;letter-spacing:-.65px;color:#f4f8ff}
body.ss-brand-ready .brandname .ss-word-spire{
  background:linear-gradient(110deg,#4caefe 10%,#8581f5 68%,#f3afbc);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
body.ss-brand-ready .brandsub{color:#abc2e5;letter-spacing:1.7px;font-weight:700;font-size:9px}
body.ss-brand-ready .sidebar .nav button{
  color:#aec1dd;border-radius:10px;
  transition:background-color .14s ease,color .14s ease;
}
body.ss-brand-ready .sidebar .nav button.active{
  color:#f6faff;background:#244d8a;border:1px solid #3d6dc2;
  box-shadow:none;
}
body.ss-brand-ready .sidebar .nav button:hover{background:#1b3456;color:#f1f7ff}
body.ss-brand-ready .main{max-width:1750px}
body.ss-brand-ready .topbar{
  border:1px solid #2b4161;border-radius:13px;
  background:#12243e;box-shadow:none;min-height:58px;
}
body.ss-brand-ready .topbar .crumb{color:#a8c0e3}
body.ss-brand-ready .topbar .crumb b{color:#f2f7ff}
body.ss-brand-ready #ssHelpTopButton{border-color:#385a8c;background:#1b365c}
body.ss-brand-ready .sd-mobile-brand{color:#eaf2ff}
body.ss-brand-ready .page:not(#page-home) .hero{
  background:linear-gradient(110deg,#172b4b,#24365c)!important;border-color:#31517b!important;
}
#page-home{min-width:0}
#page-home .ss-home-hero{
  min-height:270px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(180px,.6fr);
  position:relative;overflow:hidden;align-items:center;gap:18px;
  padding:35px clamp(25px,4.5vw,65px);
  border:1px solid #9ab9eb;border-radius:18px;
  background:radial-gradient(circle at 82% 41%,#f6e9ef 0,transparent 35%),
             linear-gradient(118deg,#d7e7ff 1%,#e5efff 54%,#ecedff 100%);
  color:#102852;
}
#page-home .ss-home-hero::after{
  content:"";position:absolute;pointer-events:none;bottom:-95px;right:-120px;
  width:560px;height:260px;border-radius:50%;transform:rotate(-11deg);
  background:linear-gradient(90deg,#5c96f40a,#4d8efa1f);
}
#page-home .ss-home-hero-copy{position:relative;z-index:1;max-width:580px}
#page-home .ss-hero-eyebrow{
  display:block;font-size:12px;letter-spacing:2px;font-weight:800;color:#31568f;margin-bottom:5px
}
#page-home .ss-home-hero h1{
  margin:0 0 10px;font-size:clamp(38px,5.1vw,66px);
  letter-spacing:-2px;line-height:1.1;font-weight:870;color:#0d2c5d
}
#page-home .ss-word-spire{
  background:linear-gradient(115deg,#168bee,#4e73f3 58%,#aa7aea 90%);
  background-clip:text;-webkit-background-clip:text;color:transparent
}
#page-home .ss-home-hero h2{
  font-size:clamp(17px,2vw,23px);line-height:1.3;font-weight:820;color:#173965;
  max-width:460px;margin:0 0 10px;
}
#page-home .ss-home-hero p{margin:0;max-width:520px;font-size:13px;line-height:1.65;color:#415b7c}
#page-home .ss-home-art{
  position:relative;z-index:1;display:flex;justify-content:center;
  align-items:center;min-width:0;max-height:230px
}
#page-home .ss-home-art::before{
  content:"";width:200px;height:200px;border-radius:50%;position:absolute;
  background:#bdd7fc60;box-shadow:0 0 0 35px #e6eeff60
}
#page-home .ss-home-art img{
  position:relative;z-index:1;display:block;
  width:min(100%,215px);max-height:240px;object-fit:contain;
  filter:drop-shadow(0 10px 10px #5284cf28)
}
#page-home .ss-home-section-label{
  margin:25px 1px 12px;font-size:13px;font-weight:800;letter-spacing:.1px;color:#c8d8f3
}
#page-home .ss-home-tools{
  display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px
}
#page-home .ss-tool-card{
  display:flex;flex-direction:column;align-items:flex-start;text-align:left;
  min-width:0;min-height:160px;padding:17px 13px 15px;gap:8px;
  border-radius:14px;border:1px solid #2c4262;
  background:linear-gradient(145deg,#182a45,#142238);
  color:#f0f5ff;box-shadow:none;cursor:pointer;
}
#page-home .ss-tool-card:hover,#page-home .ss-tool-card:focus-visible{
  outline:none;border-color:#759bed;background:#1b3455;
  transform:translateY(-1px)
}
#page-home .ss-tool-icon{
  width:36px;height:36px;display:grid;place-items:center;
  background:#1d3f6e;border:1px solid #456a9b;
  border-radius:11px;font-size:20px;line-height:1;color:#97cbff;margin-bottom:4px;
}
#page-home .ss-tool-card:nth-child(3n+2) .ss-tool-icon{
  color:#b9a7ff;background:#35305d;border-color:#60578a
}
#page-home .ss-tool-card:nth-child(5) .ss-tool-icon{
  color:#edc889;background:#51402e;border-color:#82684d
}
#page-home .ss-tool-card strong{
  font-size:13px;font-weight:790;color:#eef5ff;line-height:1.3
}
#page-home .ss-tool-card small{
  font-size:11px;font-weight:450;line-height:1.48;color:#a9bad2
}
#page-home .ss-home-lower{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr) minmax(0,.85fr);
  align-items:stretch;gap:12px;margin-top:14px
}
#page-home .ss-home-panel{
  background:#14243b;border:1px solid #2b4161;border-radius:14px;
  padding:18px 18px 17px;min-width:0;min-height:235px;box-shadow:none
}
#page-home .ss-panel-header{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px
}
#page-home .ss-panel-title{margin:0;font-size:15px;font-weight:800;color:#eaf1fe}
#page-home .ss-panel-meta{font-size:11px;color:#95b5ea}
#page-home .ss-home-plan-list{display:grid;gap:5px}
#page-home .ss-plan-row{display:flex;gap:11px;align-items:flex-start;padding:9px 0;border-bottom:1px solid #293c55}
#page-home .ss-plan-row:last-child{border-bottom:0}
#page-home .ss-plan-row input{margin:3px 0 0;flex:none;accent-color:#5596f8;width:16px;height:16px}
#page-home .ss-plan-title{font-size:12px;font-weight:650;line-height:1.4;color:#e8effc;overflow-wrap:anywhere}
#page-home .ss-plan-row:has(input:checked) .ss-plan-title{text-decoration:line-through;color:#8399b7}
#page-home .ss-plan-date{font-size:10px;color:#8da6c6;margin-left:auto;text-align:right;min-width:46px}
#page-home .ss-home-empty{
  margin:0;font-size:12px;line-height:1.65;color:#a6bbd8
}
#page-home .ss-focus-link,#page-home .ss-friends-link{
  width:100%;height:calc(100% - 40px);border:0;background:none;color:inherit;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:10px 0;cursor:pointer;border-radius:12px
}
#page-home .ss-focus-link:hover,#page-home .ss-friends-link:hover{background:#1c3351}
#page-home .ss-focus-dial{
  width:140px;height:140px;display:grid;place-items:center;
  background:radial-gradient(circle,#14243b 60%,transparent 62%);
  border:8px solid #33496d;border-top-color:#66a4ff;border-right-color:#7594ee;
  border-radius:50%;
}
#page-home .ss-focus-dial strong{font-size:28px;letter-spacing:-1px}
#page-home .ss-focus-dial small{font-size:11px;color:#9dafc8}
#page-home .ss-panel-hint{margin-top:12px;text-align:center;font-size:11px;color:#a8b9d4}
#page-home .ss-friends-link{
  height:auto;min-height:74px;align-items:flex-start;text-align:left;justify-content:center;
  gap:5px;padding:10px 12px;
}
#page-home .ss-friends-link strong{color:#dae8ff;font-size:13px}
#page-home .ss-friends-link span{color:#9fb5d5;font-size:12px}
#page-home .ss-home-drive{border-top:1px solid #2c405e;padding-top:13px;margin-top:15px}
#page-home .ss-home-drive strong{display:block;font-size:13px}
#page-home .ss-home-drive p{font-size:11px;line-height:1.5;color:#9fb5d5;margin:5px 0 0}
#page-home .ss-home-panel-link{
  border:0;background:none;color:#88b9fc;
  font-size:11px;cursor:pointer;padding:4px 0;line-height:1.3;
}
#page-home .ss-home-panel-link:hover{text-decoration:underline}
body.ss-brand-ready #miniLauncher,body.ss-brand-ready #miniLauncher.enabled{
  display:grid!important;place-items:center!important;
  width:52px!important;height:52px!important;
  right:23px!important;bottom:22px!important;
  min-width:52px!important;min-height:52px!important;padding:0!important;
  border-radius:50%!important;border:1px solid #78a7ff!important;
  background:linear-gradient(155deg,#4c91fa,#4155b9)!important;
  box-shadow:0 8px 28px #030d22a8,0 0 0 4px #4b8ffe21!important;
  color:#fff!important;z-index:100020;
}
body.ss-brand-ready #miniLauncher .mini-launcher-icon{display:block!important;font-size:24px!important}
body.ss-brand-ready #miniLauncher .mini-launcher-label,
body.ss-brand-ready #miniLauncher .mini-launcher-arrow{display:none!important}
body.ss-brand-ready #miniPanel{z-index:100021}
@media(max-width:1300px){
  #page-home .ss-home-tools{grid-template-columns:repeat(4,minmax(0,1fr))}
  #page-home .ss-tool-card{min-height:135px}
  #page-home .ss-home-lower{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
  #page-home .ss-home-panel:last-child{grid-column:1/-1;min-height:120px}
}
@media(max-width:820px){
  #page-home .ss-home-hero{min-height:215px;padding:27px 24px;grid-template-columns:minmax(0,1fr) 135px}
  #page-home .ss-home-hero h1{font-size:41px}
  #page-home .ss-home-art img{width:135px}
  #page-home .ss-home-tools{grid-template-columns:repeat(2,minmax(0,1fr))}
  #page-home .ss-home-lower{grid-template-columns:1fr}
  #page-home .ss-home-panel:last-child{grid-column:auto}
  #page-home .ss-tool-card{min-height:130px}
}
@media(max-width:540px){
  #page-home .ss-home-hero{display:block;padding:27px 21px;min-height:190px}
  #page-home .ss-home-hero h1{font-size:36px}
  #page-home .ss-home-hero h2{font-size:17px}
  #page-home .ss-home-hero p{font-size:12px}
  #page-home .ss-home-art{display:none}
  #page-home .ss-home-tools{gap:9px}
  #page-home .ss-tool-card{padding:14px 12px;min-height:132px}
  #page-home .ss-home-panel{padding:15px}
  body.ss-brand-ready #miniLauncher,body.ss-brand-ready #miniLauncher.enabled{
    right:15px!important;bottom:15px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important
  }
}
@media(prefers-reduced-motion:reduce){#page-home .ss-tool-card{transition:none!important;transform:none!important}}
